On Mar 28, 2010, at 1:00 PM, Henri Yandell wrote:

On Sun, Mar 28, 2010 at 10:29 AM, Matt Benson <gudnabr...@gmail.com> wrote:

On Mar 28, 2010, at 11:29 AM, Henri Yandell wrote:

On Sun, Mar 28, 2010 at 6:40 AM, Matt Benson <gudnabr...@gmail.com> wrote:

On Mar 27, 2010, at 4:07 PM, Henri Yandell wrote:

Possibly a query for IO too if it's 2.0 has large changes.

Given the large API changes in Lang 3.0 and Collections 4.0, a beta
release seems like a very useful thing (kudos to pbenedict for
convincing of me that months ago on IM :) ).

I'm interested in what advice and thoughts people might have on the
subject. Areas I can think of are:

1) versioning, does JIRA identify the version as 3.0-beta1; or just have a 3.0 and treat the beta as an invisible release? I'm preferring
the latter.
2) Maven - does the beta go to the main Maven repo, or just tell
people to pull from snapshot (and make sure there are current
snapshots in the snapshot repo)? I'm thinking the latter.
3) Announcements - blogging, announce@ type announcements presumably. 4) Length of time spent in beta. I think we should define this up front.

The intent would be to get early adopters using and finding bugs, but more importantly drive conversation around the API changes and suggest new ones. I want us to be able to change an API without having to say
"Yeah, that was dumb - sadly we have to wait 'til 5.0".

I think both Lang and Collections are ready to have a beta release
asap - once some level of documentation is created, both proto release
documentation and something to define the beta testing period.

Any thoughts are much appreciated,

While we're somewhat on-topic, I would heartily suggest that we give due consideration to switching to the Nexus install at repository.a.o for the Commons release cycles. This is the way the wind is blowing, seems to
make
management easier, and is mostly if not completely already set up as
Ralph
and I have been deploying sandbox snapshots there for some time.  A
formal
PMC vote to do all our releases through Nexus would be best, though we
_could_ continue to do this one component at a time; see
http://issues.apache.org/jira/browse/INFRA-1896.

What would using Nexus change about our release process?


It's pretty well-documented from the JIRA issue I referenced above. AIUI we
would tweak (or, more likely, de-tweak) some things in our parent POM
hierarchy such that the release cycles of snapshot, RC, and release would all be managed through mvn goals. On the whole there should be much less
manual intervention required for the whole process.

There's a lot of documentation there and let's assume I'm too lazy to
go read a chapter of a book to understand your proposal :)

What was the release process for the sandbox component you and Ralph released?


To be precise, Ralph and I had worked with Nexus on separate components, and as those were sandbox components it goes without saying that they've not been through the entire release process. We've only published snapshots, and as far as that's concerned, it's not _that_ huge a difference. I feel that I have had less trouble publishing snapshots to Nexus than I had to p.a.o, though it's been so long I honestly can't recall what precisely my problems were--I have a dim recollection of the whole process going to hell and my having to manually delete stuff from p.a.o to get things working. I also mentioned that "this is the way the wind is blowing": it would appear that the entire ASF is moving toward using repository.a.o and in this case there's not much point in my trying to sell it, particularly as I personally am not known to be a big fan of mvn in general. :P However, I will continue with my stammering attempt to explain the additional benefits of this change, at risk of failure due to my admittedly shallow understanding of the whole process. The primary benefit to the release cycle, as I understand it, is the support of the staging step. From what I can glean from the documentation, it would seem that when Nexus is used as the target repository of a release, a temporary "staging repository" is generated for your release. You then provide the staging repository's URL as the basis for the release vote, and, once the vote is successfully completed, you use the Nexus UI to promote the entire staging repo to public availability. In particular, the best soup-to-nuts detail is to be had from http://maven.apache.org/ developers/release/apache-release.html which purports to be a start- to-finish guide for releasing _any_ Maven-based ASF project. Noting that our own Commons release instructions have never _seemed_ fully- baked (and this is meant with no offense to any of the contributors to said documentation), what's available from the mvn team would presumably be a step forward to making the release process less onerous. The referenced URL also mentions things like cutting the release tag for you, but I am pretty sure this is functionality that has existed in mvn for quite some time; in fact the details of how to support the RC-based approach we use @ Commons would be my only question/concern. As a member of both the Commons and Maven PMCs, and the other "suspect" in this case, I wonder if Ralph would have more useful details for us here; Dennis's input would be similarly welcome.

-Matt

Hen

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to