digitalmars.D - Release planning for 2.063
- Johannes Pfau (39/39) Feb 25 2013 As there were complaints about not having a release schedule for 2.062
- Andrea Fontana (2/55) Feb 25 2013 April, 1st sounds like a joke :)
- Nick Sabalausky (18/31) Feb 25 2013 I'm not sure where people are getting that idea. There's *always* prior
- Jacob Carlborg (7/10) Feb 25 2013 Well, Walter decides at random that there's time for a new release and a...
- Steven Schveighoffer (6/15) Feb 26 2013 That is more of a factor of the moratorium on changes while the release ...
- Dicebot (5/10) Feb 26 2013 According to approved release process in wiki we already are
- Andrei Alexandrescu (3/14) Feb 26 2013 It has happened for the past 2-3 cycles already.
- Dicebot (3/5) Feb 26 2013 Glad to hear it. Was not sure thus "supposed".
- Jacob Carlborg (4/5) Feb 26 2013 Then why is it always such a rush to get form beta to release?
- Andrei Alexandrescu (3/6) Feb 26 2013 So much to do, so little time...
- deadalnix (3/11) Feb 26 2013 So much to break.
- Johannes Pfau (14/32) Mar 01 2013 That's not the same thing though.
- Johannes Pfau (16/45) Mar 01 2013 Yeah I didn't describe that very well. There usually is a "Shall we
- Russel Winder (74/81) Feb 25 2013 I have yet to find an organization that used this sort of scheduling
- deadalnix (3/30) Feb 25 2013 +2
- Nick Sabalausky (3/20) Feb 26 2013 *cough* DVM
- Russel Winder (18/19) Feb 26 2013 1. I had forgotten about that :-(
- Jacob Carlborg (4/9) Feb 27 2013 Yes, unfortunately. Do GDC or LDC have pre-compiled binaries as DMD?
- David Nadlinger (4/8) Feb 27 2013 There are »DMD-style« binary packages for LDC releases.
- Jacob Carlborg (9/10) Feb 27 2013 Right, I noticed that. Thanks, it would be a pain in the ass to have the...
- Russel Winder (13/22) Feb 27 2013 It would be really great if LDC and GDC had packages in D-Apt, along
- Iain Buclaw (7/19) Feb 27 2013 Not built by myself, but there are many ways you can do it. Eg: launchp...
- Jacob Carlborg (6/8) Feb 27 2013 Are you referring to https://launchpad.net/gdc ?
- Johannes Pfau (15/28) Mar 01 2013 Sorry for this late answer, I couldn't answer the last few days.
- Maxim Fomin (8/14) Feb 25 2013 That's fine and long overdue thing.
- Jonathan M Davis (9/26) Feb 25 2013 Aiming to make releases (particularly bug-fix releases) at some specific...
- Maxim Fomin (4/18) Feb 26 2013 Agree, planning beta and making release date to depend on it and
- Jonathan M Davis (5/9) Feb 26 2013 LOL. I mean "particularly if we stop ever doing releases with any new
- Jesse Phillips (15/20) Feb 25 2013 It looks like you just replaced the staging branch with a branch
- Brad Roberts (2/5) Feb 26 2013 You're somewhat out of touch / date. The auto testing system has been m...
- Johannes Pfau (4/16) Mar 01 2013 Does it automatically pick up new branches or does it require manual
- Dmitry Olshansky (16/32) Feb 26 2013 [snip]
- Johannes Pfau (10/27) Mar 01 2013 Maybe this is useful if used additionally, but it can't replace betas
- Dmitry Olshansky (9/36) Mar 01 2013 Yes, see below. Betas are nightlies published from frozen branches like
As there were complaints about not having a release schedule for 2.062 and releases being made suddenly without no prior announcement, how about planning the 2.063 release now? 2.062 was released ~7 weeks after 2.061. I think targeting 6 weeks between 2.062 and 2.063 might be a good idea. The proposed days are always Mondays. It doesn't really matter if the release is exactly on that day but we should try to release in the week starting that Monday. I propose to do the feature freeze next Monday (no more new features after that). At the same time the first beta is released. Then 2 weeks later first release candidate, one week later the next release candidate and one more week to the final release: Feature freeze 4 mar 2013 Beta 1 4 mar 2013 RC 1 18 mar 2013 RC 2 25 mar 2013 Final release 1 apr 2013 If we decide to do minor releases after that release the dates could look like this: 2.063.1 RC 1 5 apr 2013 RC 2 10 apr 2013 Final release 15 apr 2013 (2 weeks after 2.063.0) 2.063.2 RC 1 19 apr 2013 RC 2 24 apr 2013 Final release 29 apr 2013 (2 weeks after 2.063.1) (and 2 weeks before 2.064.0) A long term release plan could then look like this: http://wiki.dlang.org/User:Jpf/Release_Schedule Let's also try to switch to the new release process completely. As the staging branch was criticized a lot and had only minor benefits I updated the wiki page to remove the concept of the staging branch. Most things stay the same, some get simpler. (If it's considered rude to just edit the wiki page or if we want to keep staging branch I'm sorry, just revert my changes) http://wiki.dlang.org/Development_and_Release_Process This would mean the next step is to create the 2.063 branch next Monday: http://wiki.dlang.org/Development_and_Release_Process#Preparing_a_new_major_release
Feb 25 2013
On Monday, 25 February 2013 at 18:47:21 UTC, Johannes Pfau wrote:As there were complaints about not having a release schedule for 2.062 and releases being made suddenly without no prior announcement, how about planning the 2.063 release now? 2.062 was released ~7 weeks after 2.061. I think targeting 6 weeks between 2.062 and 2.063 might be a good idea. The proposed days are always Mondays. It doesn't really matter if the release is exactly on that day but we should try to release in the week starting that Monday. I propose to do the feature freeze next Monday (no more new features after that). At the same time the first beta is released. Then 2 weeks later first release candidate, one week later the next release candidate and one more week to the final release: Feature freeze 4 mar 2013 Beta 1 4 mar 2013 RC 1 18 mar 2013 RC 2 25 mar 2013 Final release 1 apr 2013 If we decide to do minor releases after that release the dates could look like this: 2.063.1 RC 1 5 apr 2013 RC 2 10 apr 2013 Final release 15 apr 2013 (2 weeks after 2.063.0) 2.063.2 RC 1 19 apr 2013 RC 2 24 apr 2013 Final release 29 apr 2013 (2 weeks after 2.063.1) (and 2 weeks before 2.064.0) A long term release plan could then look like this: http://wiki.dlang.org/User:Jpf/Release_Schedule Let's also try to switch to the new release process completely. As the staging branch was criticized a lot and had only minor benefits I updated the wiki page to remove the concept of the staging branch. Most things stay the same, some get simpler. (If it's considered rude to just edit the wiki page or if we want to keep staging branch I'm sorry, just revert my changes) http://wiki.dlang.org/Development_and_Release_Process This would mean the next step is to create the 2.063 branch next Monday: http://wiki.dlang.org/Development_and_Release_Process#Preparing_a_new_major_releaseApril, 1st sounds like a joke :)
Feb 25 2013
On Mon, 25 Feb 2013 19:47:19 +0100 Johannes Pfau <nospam example.com> wrote:As there were complaints about not having a release schedule for 2.062 and releases being made suddenly without no prior announcementI'm not sure where people are getting that idea. There's *always* prior notice: http://forum.dlang.org/post/5114B7A5.40102 digitalmars.com And that's been a regular thing for a least a couple years. Granted, there probably *should* be an additional announcement made on D.announce when a beta period starts. And the dmd-beta list *really* needs to be converted to a proper newsgroup. Having it as a mailing list is just ridiculous. But even things are, there certainly isn't "no prior announcement".I propose to do the feature freeze next Monday (no more new features after that). At the same time the first beta is released. Then 2 weeks later first release candidate, one week later the next release candidate and one more week to the final release: Feature freeze 4 mar 2013 Beta 1 4 mar 2013 RC 1 18 mar 2013 RC 2 25 mar 2013 Final release 1 apr 2013Scheduling RCs and finals is a bad idea, and so is locking the number of RCs. RCs and finals need to come *as* problems found with the beta and subsequent RCs are fixed. If that ends up taking more or less time than some completely arbitrary predetermined "fits all sizes" length of time, then so be it. What you're proposing is just scheduling for sake of scheduling. It's just arbitrary red tape, it doesn't help anything.
Feb 25 2013
On 2013-02-26 01:23, Nick Sabalausky wrote:I'm not sure where people are getting that idea. There's *always* prior notice: http://forum.dlang.org/post/5114B7A5.40102 digitalmars.comWell, Walter decides at random that there's time for a new release and a beta is created. Then Walter needs to rush the release so much that it's like our lives depends on it and we get yet another release with regressions. -- /Jacob Carlborg
Feb 25 2013
On Tue, 26 Feb 2013 02:33:09 -0500, Jacob Carlborg <doob me.com> wrote:On 2013-02-26 01:23, Nick Sabalausky wrote:That is more of a factor of the moratorium on changes while the release is being tested. I think if we branch the new development while a release is in progress, we shouldn't have this problem. -SteveI'm not sure where people are getting that idea. There's *always* prior notice: http://forum.dlang.org/post/5114B7A5.40102 digitalmars.comWell, Walter decides at random that there's time for a new release and a beta is created. Then Walter needs to rush the release so much that it's like our lives depends on it and we get yet another release with regressions.
Feb 26 2013
On Tuesday, 26 February 2013 at 15:29:55 UTC, Steven Schveighoffer wrote:That is more of a factor of the moratorium on changes while the release is being tested. I think if we branch the new development while a release is in progress, we shouldn't have this problem. -SteveAccording to approved release process in wiki we already are supposed to do it. (Only other way around, branching new release without freezing master).
Feb 26 2013
On 2/26/13 10:34 AM, Dicebot wrote:On Tuesday, 26 February 2013 at 15:29:55 UTC, Steven Schveighoffer wrote:It has happened for the past 2-3 cycles already. AndreiThat is more of a factor of the moratorium on changes while the release is being tested. I think if we branch the new development while a release is in progress, we shouldn't have this problem. -SteveAccording to approved release process in wiki we already are supposed to do it. (Only other way around, branching new release without freezing master).
Feb 26 2013
On Tuesday, 26 February 2013 at 17:41:24 UTC, Andrei Alexandrescu wrote:It has happened for the past 2-3 cycles already. AndreiGlad to hear it. Was not sure thus "supposed".
Feb 26 2013
On 2013-02-26 18:41, Andrei Alexandrescu wrote:It has happened for the past 2-3 cycles already.Then why is it always such a rush to get form beta to release? -- /Jacob Carlborg
Feb 26 2013
On 2/26/13 3:09 PM, Jacob Carlborg wrote:On 2013-02-26 18:41, Andrei Alexandrescu wrote:So much to do, so little time... AndreiIt has happened for the past 2-3 cycles already.Then why is it always such a rush to get form beta to release?
Feb 26 2013
On Tuesday, 26 February 2013 at 22:39:13 UTC, Andrei Alexandrescu wrote:On 2/26/13 3:09 PM, Jacob Carlborg wrote:So much to break.On 2013-02-26 18:41, Andrei Alexandrescu wrote:So much to do, so little time... AndreiIt has happened for the past 2-3 cycles already.Then why is it always such a rush to get form beta to release?
Feb 26 2013
Am Tue, 26 Feb 2013 12:41:27 -0500 schrieb Andrei Alexandrescu <SeeWebsiteForEmail erdani.org>:On 2/26/13 10:34 AM, Dicebot wrote:That's not the same thing though. The important part is the time span _between_ feature freeze and release. This is the time where the release is being prepared, regressions get fixed and no new features are accepted. More time between feature freeze and release should therefore lead to better tested releases and less stress for developers. According to the wiki process that time span would have been date of new release - date of old release = 7 weeks. The last pull request pushed to master included in the beta was https://github.com/D-Programming-Language/dmd/pull/1342 that was only 11 days before the actual release date so our feature freeze period was only 11 days.On Tuesday, 26 February 2013 at 15:29:55 UTC, Steven Schveighoffer wrote:It has happened for the past 2-3 cycles already. AndreiThat is more of a factor of the moratorium on changes while the release is being tested. I think if we branch the new development while a release is in progress, we shouldn't have this problem. -SteveAccording to approved release process in wiki we already are supposed to do it. (Only other way around, branching new release without freezing master).
Mar 01 2013
Am Mon, 25 Feb 2013 19:23:35 -0500 schrieb Nick Sabalausky <SeeWebsiteToContactMe semitwist.com>:On Mon, 25 Feb 2013 19:47:19 +0100 Johannes Pfau <nospam example.com> wrote:Yeah I didn't describe that very well. There usually is a "Shall we start a new beta" thread, then a new beta is started or sometimes not. But you only know at max 1 week before the feature freeze when it will happen and it also tells you nothing about the final release date. That is kind of "suddenly". Do you know _right now_ when 2.063 will be released or when there is a feature freeze? In 7 weeks as the timespan between 2.061 and 2.062? In 5 months (2.060/2.061) or 3 months (2.059/2.060) or when shared libraries are ready(feature based)?As there were complaints about not having a release schedule for 2.062 and releases being made suddenly without no prior announcementBut even things are, there certainly isn't "no prior announcement".Granted scheduling RCs might be a bad idea. Having a _rough_ schedule for the release date (e.g. feature freeze + ~4weeks) can still be useful though to avoid blocking a release for months. Of course if new regressions are found another RC and postponing a release for 2 weeks wouldn't be bad.I propose to do the feature freeze next Monday (no more new features after that). At the same time the first beta is released. Then 2 weeks later first release candidate, one week later the next release candidate and one more week to the final release: Feature freeze 4 mar 2013 Beta 1 4 mar 2013 RC 1 18 mar 2013 RC 2 25 mar 2013 Final release 1 apr 2013Scheduling RCs and finals is a bad idea, and so is locking the number of RCs. RCs and finals need to come *as* problems found with the beta and subsequent RCs are fixed. If that ends up taking more or less time than some completely arbitrary predetermined "fits all sizes" length of time, then so be it. What you're proposing is just scheduling for sake of scheduling. It's just arbitrary red tape, it doesn't help anything.
Mar 01 2013
On Mon, 2013-02-25 at 19:47 +0100, Johannes Pfau wrote: [=E2=80=A6]Feature freeze 4 mar 2013 Beta 1 4 mar 2013 RC 1 18 mar 2013 RC 2 25 mar 2013 Final release 1 apr 2013=20I have yet to find an organization that used this sort of scheduling successfully. Feature freeze fine, beta 1 fine. RC is a release candidate not a beta. If no-one finds a problem with a release candidate it is relabelled the final release. Thus scheduling an RC2 is a failure of RC1 to be an RC at all. Successful releases will schedule a feature freeze and release a beta and push people to use it and report bugs. This entails getting is packaged and out via places like the D release page and the Debian package archive as snapshot releases. There might be a series of betas 2, 3, 4,=E2=80=A6 as required bug fixes are made, each getting a full snaps= hot release. Then an RC is declared which is a real RC not a wrongly labelled beta. Make the final release when it is ready to an approximate schedule not to a mandated day. Obviously the Debian model is one extreme: declare a freeze and then take well over a year to fiddle around and not update the rolling release thereby pissing off many people who ship over to Fedora. I am close to this point myself. Another extreme is to do what Eclipse does which is to simply release on a given date and then patch until the following year. This has a habit of annoying a lot of people as a release ends up having masses of annoying bugs that do not get fixed. Leading people to ship over to IntelliJ IDEA, Wing IDE, Code::Blocks, MonoDevelop. So schedule the freeze/beta then specify a date for the release candidate sequence to start and a moratorium period for an RC to be relabeled unless a problem is found. [=E2=80=A6]A long term release plan could then look like this: http://wiki.dlang.org/User:Jpf/Release_ScheduleI would suggest that having a schedule such as this is to lead to problems. It is overcomplicated and over-bureaucratic. If the intention is to move to timeboxing of the minor releases, just allow bug fix releases on an as needed basis. Allowing for s.XXX.Y is a good thing as it means there is a route for fixing trivial things instantly rather than waiting for the next minor release, but no need to schedule them. [=E2=80=A6] Moving to a timebox minor release program really necessitated putting effort into a Debian/Ubuntu/Mint repository, a Fedora repository, and a MacPorts/Brew repository, as well as Windows and OSX installers, ensuring the numbering scheme is monotonic increasing. If people can sign up to the programme using the systems packaging then take up is more likely(*). The point here is to be able to make it as easy as possible for *new* people to sign up. The current folks are hardcore people who will do stuff no matter how painful. The intention has to be to increase the D using community and this requires triviality of signup. Groovy/Grails/Gradle/Griffon (Gr8) community has gone a different route, necessitated by the slowness of the official Debian and Fedora release system and the unwillingness to support the variety of systems (though the MacPorts stuff always worked well). An individual "scratched an itch" and created a Bash/Vert.x based release and distribution system, called GVM. This has swept through the community (even Windows people) and is now the standard mechanism. New releases are available to all within hours and roll-back to any earlier release is trivial, as is having multiple releases co-resident. I strike me that a D/vibe.d system modelled on GVM, must be relatively straightforward. The question is not so much can vibe.d compete with vert.x in that part of the functionality, but can D compete with Bash in the client functionality. In particular can the client self update?(**) (*) I know Windows users do not understand having a system packaging infrastructure. (**) My irritation over GVM's use of bash is that it breaks my Bash initialization, so I have to hack it. But I am now happy my hack is sustainable so use GVM over Debian packaging for these Gr8 systems. --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
Feb 25 2013
On Tuesday, 26 February 2013 at 04:46:12 UTC, Russel Winder wrote:On Mon, 2013-02-25 at 19:47 +0100, Johannes Pfau wrote: […]+1Feature freeze 4 mar 2013 Beta 1 4 mar 2013 RC 1 18 mar 2013 RC 2 25 mar 2013 Final release 1 apr 2013I have yet to find an organization that used this sort of scheduling successfully. Feature freeze fine, beta 1 fine. RC is a release candidate not a beta. If no-one finds a problem with a release candidate it is relabelled the final release. Thus scheduling an RC2 is a failure of RC1 to be an RC at all.I would suggest that having a schedule such as this is to lead to problems. It is overcomplicated and over-bureaucratic. If the intention is to move to timeboxing of the minor releases, just allow bug fix releases on an as needed basis. Allowing for s.XXX.Y is a good thing as it means there is a route for fixing trivial things instantly rather than waiting for the next minor release, but no need to schedule them.+2
Feb 25 2013
On Tue, 26 Feb 2013 04:45:56 +0000 Russel Winder <russel winder.org.uk> wrote:Groovy/Grails/Gradle/Griffon (Gr8) community has gone a different route, necessitated by the slowness of the official Debian and Fedora release system and the unwillingness to support the variety of systems (though the MacPorts stuff always worked well). An individual "scratched an itch" and created a Bash/Vert.x based release and distribution system, called GVM. This has swept through the community (even Windows people) and is now the standard mechanism. New releases are available to all within hours and roll-back to any earlier release is trivial, as is having multiple releases co-resident. I strike me that a D/vibe.d system modelled on GVM, must be relatively straightforward. The question is not so much can vibe.d compete with vert.x in that part of the functionality, but can D compete with Bash in the client functionality. In particular can the client self update?(**)*cough* DVM
Feb 26 2013
On Tue, 2013-02-26 at 13:36 -0500, Nick Sabalausky wrote: [=E2=80=A6]*cough* DVM1. I had forgotten about that :-( 2. Doesn't it only support DMD? 3. In moving from BitBucket to Git, support for 64-bit Linux appears to have been dropped. :-((((((((((( 4. Jordi's Debian repository is working well for 64-bit Debian just now for all the things he supports. --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
Feb 26 2013
On 2013-02-26 21:05, Russel Winder wrote:On Tue, 2013-02-26 at 13:36 -0500, Nick Sabalausky wrote: […]Yes, unfortunately. Do GDC or LDC have pre-compiled binaries as DMD? -- /Jacob Carlborg*cough* DVM1. I had forgotten about that :-( 2. Doesn't it only support DMD?
Feb 27 2013
On Wednesday, 27 February 2013 at 12:50:57 UTC, Jacob Carlborg wrote:On 2013-02-26 21:05, Russel Winder wrote:There are »DMD-style« binary packages for LDC releases. David2. Doesn't it only support DMD?Yes, unfortunately. Do GDC or LDC have pre-compiled binaries as DMD?
Feb 27 2013
On 2013-02-27 20:34, David Nadlinger wrote:There are »DMD-style« binary packages for LDC releases.Right, I noticed that. Thanks, it would be a pain in the ass to have the tool building LDC/GDC. * Is there a central location for these releases? * Can I count on it being a new pre-compiled package there for every new release? * For which platform is the pre-compiled package available -- /Jacob Carlborg
Feb 27 2013
On Wed, 2013-02-27 at 20:34 +0100, David Nadlinger wrote:On Wednesday, 27 February 2013 at 12:50:57 UTC, Jacob Carlborg=20 wrote:It would be really great if LDC and GDC had packages in D-Apt, along with DMD, Vibe.d, etc. --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winderOn 2013-02-26 21:05, Russel Winder wrote:=20 There are =C2=BBDMD-style=C2=AB binary packages for LDC releases.2. Doesn't it only support DMD?Yes, unfortunately. Do GDC or LDC have pre-compiled binaries as=20 DMD?
Feb 27 2013
On Feb 27, 2013 12:56 PM, "Jacob Carlborg" <doob me.com> wrote:On 2013-02-26 21:05, Russel Winder wrote:Not built by myself, but there are many ways you can do it. Eg: launchpad repository. Regards --=20 Iain Buclaw *(p < e ? p++ : p) =3D (c & 0x0f) + '0';On Tue, 2013-02-26 at 13:36 -0500, Nick Sabalausky wrote: [=85]Yes, unfortunately. Do GDC or LDC have pre-compiled binaries as DMD?*cough* DVM1. I had forgotten about that :-( 2. Doesn't it only support DMD?
Feb 27 2013
On 2013-02-27 22:17, Iain Buclaw wrote:Not built by myself, but there are many ways you can do it. Eg: launchpad repository.Are you referring to https://launchpad.net/gdc ? It would be nice to have pre-compiled self contained releases for all supported platforms. In the same style as DMD. -- /Jacob Carlborg
Feb 27 2013
Am Tue, 26 Feb 2013 04:45:56 +0000 schrieb Russel Winder <russel winder.org.uk>:On Mon, 2013-02-25 at 19:47 +0100, Johannes Pfau wrote: [=E2=80=A6]Sorry for this late answer, I couldn't answer the last few days. You're probably right, my proposal is probably overzealous. I think we should at least schedule feature freeze but we should also try to schedule the final release. Of course if we find unexpected regressions the release can always be delayed, we might also release earlier if no issues pop up in the RC. I think scheduling the release date is important because if we do not schedule this we can get into similar situations as with the 2.061 release which was 5 months after 2.060 according to the changelog. If someone is just waiting for a minor fix which is already applied in git master it is unacceptable to wait 5 months for that fix only because there is no release date or because some other feature is not ready yet.Feature freeze 4 mar 2013 Beta 1 4 mar 2013 RC 1 18 mar 2013 RC 2 25 mar 2013 Final release 1 apr 2013=20=20 I have yet to find an organization that used this sort of scheduling successfully. Feature freeze fine, beta 1 fine. RC is a release candidate not a beta. If no-one finds a problem with a release candidate it is relabelled the final release. Thus scheduling an RC2 is a failure of RC1 to be an RC at all.
Mar 01 2013
On Monday, 25 February 2013 at 18:47:21 UTC, Johannes Pfau wrote:As there were complaints about not having a release schedule for 2.062 and releases being made suddenly without no prior announcement, how about planning the 2.063 release now? (rest skipped)That's fine and long overdue thing. Judging by how D project is inertive (I believe Walter contributed mostly to this) I suggest that planning only release day (perhaps += beta) is enough and even such limited decision would be a significant step. The greater the plan is, the more likely it would not be followed. I can hadrly imagine Walter agreeing to release beta at specific day let alone some RC.
Feb 25 2013
On Tuesday, February 26, 2013 07:27:36 Maxim Fomin wrote:On Monday, 25 February 2013 at 18:47:21 UTC, Johannes Pfau wrote:Aiming to make releases (particularly bug-fix releases) at some specific interval makes some sense, but all you can reasonably do with that is plan for when the next beta starts. When it makes sense for the actual release to happen depends entirely on what bugs there are - particularly if we stop ever doing a release with no regressions (which Brad keeps insisting on but Walter pretty much never does). Planning on how many RCs there will be or when they'll be or anything like that makes no sense at all. - Jonathan M DavisAs there were complaints about not having a release schedule for 2.062 and releases being made suddenly without no prior announcement, how about planning the 2.063 release now? (rest skipped)That's fine and long overdue thing. Judging by how D project is inertive (I believe Walter contributed mostly to this) I suggest that planning only release day (perhaps += beta) is enough and even such limited decision would be a significant step. The greater the plan is, the more likely it would not be followed. I can hadrly imagine Walter agreeing to release beta at specific day let alone some RC.
Feb 25 2013
On Tuesday, 26 February 2013 at 06:39:56 UTC, Jonathan M Davis wrote:Aiming to make releases (particularly bug-fix releases) at some specific interval makes some sense, but all you can reasonably do with that is plan for when the next beta starts. When it makes sense for the actual release to happen depends entirely on what bugs there are - particularly if we stop ever doing a release with no regressions (which Brad keeps insisting on but Walter pretty much never does). Planning on how many RCs there will be or when they'll be or anything like that makes no sense at all. - Jonathan M DavisAgree, planning beta and making release date to depend on it and opened bugs does make more sense.
Feb 26 2013
On Monday, February 25, 2013 22:39:42 Jonathan M Davis wrote:When it makes sense for the actual release to happen depends entirely on what bugs there are - particularly if we stop ever doing a release with no regressions (which Brad keeps insisting on but Walter pretty much never does).LOL. I mean "particularly if we stop ever doing releases with any new regressions." What I typed was backwards. I really need to reread my posts more before posting them... - Jonathan M Davis
Feb 26 2013
On Monday, 25 February 2013 at 18:47:21 UTC, Johannes Pfau wrote:As there were complaints about not having a release schedule for 2.062 and releases being made suddenly without no prior announcement, how about planning the 2.063 release now?It looks like you just replaced the staging branch with a branch named after the release version. This is good as the current release should get patches until the next release anyway. I like the staging concept and that looks to be preserved. Onto the bad news. The automated test suite isn't really prepared for these changes, and I would consider it too valuable to move into a branching model where the release candidate isn't getting run. I did request the new processing be used on the beta announcement, but having remembered this I've changed slightly on pushing this. What we may want to do is bite the bullet for a single release so those involved can get a better understanding/feel for what is being proposed. But that is probably bad as there won't be followup to really iron out kinks.
Feb 25 2013
On 2/25/2013 11:41 PM, Jesse Phillips wrote:Onto the bad news. The automated test suite isn't really prepared for these changes, and I would consider it too valuable to move into a branching model where the release candidate isn't getting run. I did request the new processing be used on the beta announcement, but having remembered this I've changed slightly on pushing this.You're somewhat out of touch / date. The auto testing system has been multi-branch aware for the last 2 releases.
Feb 26 2013
Am Tue, 26 Feb 2013 11:02:44 -0800 schrieb Brad Roberts <braddr puremagic.com>:On 2/25/2013 11:41 PM, Jesse Phillips wrote:Does it automatically pick up new branches or does it require manual work?Onto the bad news. The automated test suite isn't really prepared for these changes, and I would consider it too valuable to move into a branching model where the release candidate isn't getting run. I did request the new processing be used on the beta announcement, but having remembered this I've changed slightly on pushing this.You're somewhat out of touch / date. The auto testing system has been multi-branch aware for the last 2 releases.
Mar 01 2013
25-Feb-2013 22:47, Johannes Pfau пишет:As there were complaints about not having a release schedule for 2.062 and releases being made suddenly without no prior announcement, how about planning the 2.063 release now? 2.062 was released ~7 weeks after 2.061. I think targeting 6 weeks between 2.062 and 2.063 might be a good idea. The proposed days are always Mondays. It doesn't really matter if the release is exactly on that day but we should try to release in the week starting that Monday. I propose to do the feature freeze next Monday (no more new features after that). At the same time the first beta is released. Then 2 weeks later first release candidate, one week later the next release candidate and one more week to the final release: Feature freeze 4 mar 2013 Beta 1 4 mar 2013 RC 1 18 mar 2013 RC 2 25 mar 2013 Final release 1 apr 2013[snip] The more I see topics on release process the more I feel uneasy. Can't we just make releases more stable by doing 2 things instead: a) Provide nightly builds - same package as beta/release but as a weekly from Git master. b) List links to these and betas somewhere *prominent* damn it. *Separate* beta mailing list is *not* good enough. Post it on D, D.announce and somewhere else as well. Let people use them! The benefit is that both of these can be fully automated. What is already done is staging branch to avoid freezing the master. Betas are then just nightly builds for the staging branch and are provided few weeks before the release. So all of this already fits the current scenario. -- Dmitry Olshansky
Feb 26 2013
Am Tue, 26 Feb 2013 21:46:45 +0400 schrieb Dmitry Olshansky <dmitry.olsh gmail.com>:The more I see topics on release process the more I feel uneasy. Can't we just make releases more stable by doing 2 things instead: a) Provide nightly builds - same package as beta/release but as a weekly from Git master.Maybe this is useful if used additionally, but it can't replace betas or minor releases.b) List links to these and betas somewhere *prominent* damn it. *Separate* beta mailing list is *not* good enough. Post it on D, D.announce and somewhere else as well. Let people use them!Sure, this should be done anyway.The benefit is that both of these can be fully automated. What is already done is staging branch to avoid freezing the master. Betas are then just nightly builds for the staging branch and are provided few weeks before the release. So all of this already fits the current scenario.We currently don't use release/version branches as it was described on the old wiki page though. At some point we'd have to start using those anyway and the staging branch is not really necessary anymore as the release branches can take the role of master. So I hoped those changes to the wiki page would make it easier to switch to the new process.
Mar 01 2013
01-Mar-2013 18:18, Johannes Pfau пишет:Am Tue, 26 Feb 2013 21:46:45 +0400 schrieb Dmitry Olshansky <dmitry.olsh gmail.com>:Yes, see below. Betas are nightlies published from frozen branches like staging.The more I see topics on release process the more I feel uneasy. Can't we just make releases more stable by doing 2 things instead: a) Provide nightly builds - same package as beta/release but as a weekly from Git master.Maybe this is useful if used additionally, but it can't replace betas or minor releases.I posted these not to discourage the whole "wiki thing" but to illustrate a point that perhaps aiming for one step at a time changes (tweaks) is better. Then we can improve release process significantly without adding extra complication. -- Dmitry Olshanskyb) List links to these and betas somewhere *prominent* damn it. *Separate* beta mailing list is *not* good enough. Post it on D, D.announce and somewhere else as well. Let people use them!Sure, this should be done anyway.The benefit is that both of these can be fully automated. What is already done is staging branch to avoid freezing the master. Betas are then just nightly builds for the staging branch and are provided few weeks before the release. So all of this already fits the current scenario.We currently don't use release/version branches as it was described on the old wiki page though. At some point we'd have to start using those anyway and the staging branch is not really necessary anymore as the release branches can take the role of master. So I hoped those changes to the wiki page would make it easier to switch to the new process.
Mar 01 2013