On Friday, 11 January 2013 at 18:03:33 UTC, mist wrote:
My understanding is that your understanding is somewhat different from initial proposal but that is where discussion has flow to since then and that makes me sad :)

They very reason to have staging is to have better replacement to beta process which simply does not work good enough currently. Is good to have a single branch all the time, which some obscure project maintainer can check from time to time to make sure his stuff still compiles and fire regression bug reports if needed. He may even have add this test to own continuous integration suite (I'd do this if I had a serious D project) to be notified when stuff goes wrong without paying any constant attention.

Attention is a key here. How many D projects are out there? How many of their maintainers pay close attention to newsgroup and read beta mail list? Compare this to being able to check your stuff on very next release at any moment you have time and want to.

I stand at the point that for open source projects release and development processes should care most about end users and developers and least - about maintainers. Maintainers should have perfect git and process knowledge anyway, or at some scales thing are doomed to be crewed (2.061 anyone?).

Thus I vote for a persistent staging branch.


My understanding was that staging is worked on only during the (short) time span from initiating a new release and finalizing that release.

Andrei

I don't understand the problem you seem to see in the process.

I've been away from the PC so couldn't respond earlier but I did manage to read most of the wiki page and I think Johnathan did a very good job explaining the various concepts. The only thing missing IMO is CI: It's already agreed that master is the development channel in the proposed process. The next logical step would be to generate nightly builds off of that branch. The staging branch is the "beta" channel - and also makes sense to have a periodical beta build. This depends on the release time span but something like fortnight or monthly beta builds makes sense to me. the additional manual builds described on the wiki on staging or even before an official release on the version branch will be something like RCs.

Regarding pull requests targeting master, the current model *is* geared around that. Most contributions _should_ go to master (aka devel) and go through the full process. pull-requests for staging are meant for fixing regressions and critical bugs only, where there is _higher urgency_ for the fix that justifies the short-cut. Regular "bug fixes" should simply go through the regular process and will be released in the _next_ release.

Reply via email to