Do you need to cut a vote with something named rc?  Why can't you just use
the version #?

On Mon, Apr 24, 2017 at 4:18 PM Chris Riccomini <criccom...@apache.org>
wrote:

> Hey all,
>
> We've had a question arise in the Airflow project. We're currently cutting
> release candidates (RCs), and voting on those. These RCs contain an
> artifact with the suffix -rc0, -rc1, etc. The problem with this is that the
> final RC that passes the vote still has an -rcX in its version number. To
> get around this, the release manager has just been rebuilding the .asc,
> .sha, etc, and publishing this new artifact as the final release.
>
> Hitesh recently raised the issue that the artifact that passes the vote
> MUST be the one that we actually release. The problem with this is that it
> would force us to publish multiple RCs with the exact same version number.
> This is a terrible experience from a developer and user point of view.
> Airflow is a Python project, and many users pip install various versions of
> Airflow to test things out. Having multiple RCs with the same version
> number is going to make it really difficult to keep things straight, both
> during the VOTE, and afterwards.
>
> Based on a cursory look, it seems that other projects handle this problem
> in one of three ways:
>
> * Double vote (the final RC gets voted AGAIN, this time, with proper
> naming)
> * Rename/rebuild after final vote (This is what Airflow is doing, and Beam
> does this, I believe)
> * All RCs have the exact same version number
>
> Most Java projects are just publishing multiple RCs with the exact same
> version number. This seems bad from a general software engineering
> perspective, since it's going to cause build cache issues (e.g. .mvn
> already contains version 1.2.3, even though a new RC with the same version
> should be installed). Beam does seem to be using -SNAPSHOT releases in Java
> for RCs, which is CLOSER to what we've been doing in Airflow (-rc0, -rc1,
> etc), and they seem to be renaming after the release, just like we were.
>
> What's the guidance here? We seem to have two requirements that are at odds
> with eachtother:
>
> 1) The RC artifact that we vote on is the one that we release
> 2) We have real version numbers for RCs which are independent of one
> another so build systems, dependency managements systems, and package
> management systems can properly handle them.
>
> Any help or thoughts would be appreciated.
>
> Cheers,
> Chris
>

Reply via email to