This is in response to Tom's concerns:

> When I did the 1.8.0 release I had to fix a few failing tests for a
couple of languages, but it was mainly just doing library updates.

I think there will be less trouble with builds if we have separate
releases, but my main motivation is to avoid languages blocking one another
and make it possible to get more releases out. I think we could have had
several JavaScript releases this year if JS could have been released
independently, but the rest of the community isn't moving fast enough for
that. And that's fine; we need to fix bugs in C before we put out a C
release, but we don't want C to prevent other language contributors from
moving forward.

> I'm not at all convinced that splitting the project into per-language pieces
will help. It will be a lot of work and I think we'll just get lots of
orphaned languages that never get released.

Splitting does two positive things: it allows releases to happen
independently and it makes maintenance and contribution easier.

Independent releases are a net positive, in my opinion. It is important to
get contributions into releases so that contributors benefit from their
work. Otherwise, what is the incentive to contribute back? Releasing
implementations independently allows us to get contributions back to the
community faster and decreases the likelihood that someone loses interest
because they don't get to use what they fixed.

I think that a better release cadence for active languages outweighs the
cost of orphaned languages. I agree that it's likely for, say, PHP to not
be released again. But what is the value of releasing code that hasn't
changed? Splitting would no longer push us to periodically fix languages
when they break, but this irregular maintenance isn't substantially
different than having no releases. I think there's a strong case that it is
better for downstream consumers to see that the version number hasn't
changed rather than having one identical release after another that gives a
false sense that the implementation is actively maintained.

The second positive effect of splitting from above is to make maintenance
and contribution easier. A good example is adding more environments to CI
tests. We aren't going to add 3 versions of Ruby to the Docker image, but
it's simple to set up in a CI environment for typical Ruby projects.
Language-specific repositories allow us to take better advantage of
existing tools, while structuring each repository for people familiar with
that language, making it easier for the people most likely to contribute to
do so. I know it isn't horribly difficult today, but I think it's a step in
the right direction to make this easier.

rb

On Wed, Nov 16, 2016 at 8:41 PM, Sean Busbey <bus...@cloudera.com> wrote:

> On Tue, Nov 15, 2016 at 3:45 PM, Doug Cutting <cutt...@gmail.com> wrote:
> > On Mon, Nov 14, 2016 at 8:40 PM, Ryan Blue <rb...@netflix.com.invalid>
> wrote:
> >> we don't have enough votes for a release
> >
> > I don't think that's true.  You might not have gotten enough votes
> > within a few days.  I too have had that problem for several releases.
> > But when that happened I would send personal messages to a few PMC
> > members asking them if they had time to please review a release.  Some
> > PMC members get busy with other things and fall behind on Avro emails.
> > A few reminders never failed to rouse enough reviews & votes.
> >
>
> In HBase we've largely switched away from release votes that have a
> fixed deadline due to the need to corral PMC votes.
>
> Instead, we now state the minimum voting period (almost always 72hrs
> per ASF policy) and set a courtesy notice of when the RM would like to
> close the vote. Then we just keep pinging private@ or individuals
> until we get enough votes for a result, or find something to start
> getting -1s.
>
> We could try something like that for a bit to see if "flog the bushes
> for PMC participation" is enough to keep us on a steady stream of
> releases.
>
> It would also probably help to make explicit to the community that
> showing up to test and vote on RCs is "acting like a PMC" in the eyes
> of some number of current PMC members (it is for me, for example).
>
> --
> busbey
>



-- 
Ryan Blue
Software Engineer
Netflix

Reply via email to