summaryrefslogtreecommitdiffstats
path: root/zarb-ml/mageia-dev/2011-June/005840.html
diff options
context:
space:
mode:
Diffstat (limited to 'zarb-ml/mageia-dev/2011-June/005840.html')
-rw-r--r--zarb-ml/mageia-dev/2011-June/005840.html290
1 files changed, 290 insertions, 0 deletions
diff --git a/zarb-ml/mageia-dev/2011-June/005840.html b/zarb-ml/mageia-dev/2011-June/005840.html
new file mode 100644
index 000000000..496f30c1c
--- /dev/null
+++ b/zarb-ml/mageia-dev/2011-June/005840.html
@@ -0,0 +1,290 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Mageia-dev] Release cycles proposals, and discussion
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:mageia-dev%40mageia.org?Subject=Re%3A%20%5BMageia-dev%5D%20Release%20cycles%20proposals%2C%20and%20discussion&In-Reply-To=%3C4DFDD21D.3010505%40laposte.net%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="005832.html">
+ <LINK REL="Next" HREF="005841.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Mageia-dev] Release cycles proposals, and discussion</H1>
+ <B>andre999</B>
+ <A HREF="mailto:mageia-dev%40mageia.org?Subject=Re%3A%20%5BMageia-dev%5D%20Release%20cycles%20proposals%2C%20and%20discussion&In-Reply-To=%3C4DFDD21D.3010505%40laposte.net%3E"
+ TITLE="[Mageia-dev] Release cycles proposals, and discussion">andr55 at laposte.net
+ </A><BR>
+ <I>Sun Jun 19 12:40:29 CEST 2011</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="005832.html">[Mageia-dev] Release cycles proposals, and discussion
+</A></li>
+ <LI>Next message: <A HREF="005841.html">[Mageia-dev] Release cycles proposals, and discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#5840">[ date ]</a>
+ <a href="thread.html#5840">[ thread ]</a>
+ <a href="subject.html#5840">[ subject ]</a>
+ <a href="author.html#5840">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>andre999 a &#233;crit :
+&gt;<i> Michael Scherer a &#233;crit :
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> Le samedi 18 juin 2011 &#224; 03:38 -0400, andre999 a &#233;crit :
+</I>&gt;&gt;&gt;<i> Michael Scherer a &#233;crit :
+</I>&gt;&gt;&gt;<i>
+</I>&gt;&gt;&gt;&gt;<i> Proposal 1:
+</I>&gt;&gt;&gt;&gt;<i> 6 months release cycle -&gt; 12 months life cycle
+</I>&gt;&gt;&gt;&gt;<i> ( Fedora, Ubuntu, Mandriva&lt; 2010.1&amp;&amp; Mandriva != 2006.0 )
+</I>&gt;&gt;&gt;&gt;<i>
+</I>&gt;&gt;&gt;&gt;<i> Proposal 2:
+</I>&gt;&gt;&gt;&gt;<i> 9 months release cycle -&gt; 18 months life cycle
+</I>&gt;&gt;&gt;&gt;<i> ( ~ opensuse and the one we used for Mageia 1 )
+</I>&gt;&gt;&gt;&gt;<i>
+</I>&gt;&gt;&gt;&gt;<i> Proposal 3:
+</I>&gt;&gt;&gt;&gt;<i> 12 months release cycle -&gt; 24 months life cycle
+</I>&gt;&gt;&gt;&gt;<i> ( Mandriva&gt; 2010.1 )
+</I>&gt;&gt;&gt;<i>
+</I>&gt;&gt;&gt;<i>
+</I>&gt;&gt;&gt;<i> First, suggest an amended freeze process (idea from recent report of
+</I>&gt;&gt;&gt;<i> another project)
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> you can say the name of the project, even if I suspect it to be Fedora.
+</I>&gt;<i>
+</I>&gt;<i> I suspected that it might have been Fedora, if it wasn't a summary of
+</I>&gt;<i> the new mozilla process, but I couldn't remember. Just the concept
+</I>&gt;<i> intrigued me. Which I reflected on for a few weeks.
+</I>&gt;<i>
+</I>&gt;&gt;&gt;<i> Instead of a freeze on cauldron until everything is ready for the
+</I>&gt;&gt;&gt;<i> release, we do
+</I>&gt;&gt;&gt;<i> 1) short freeze on cauldron
+</I>&gt;&gt;&gt;<i> 2) copy cauldron to pre-release branch, which remains frozen until
+</I>&gt;&gt;&gt;<i> release
+</I>&gt;&gt;&gt;<i> 3) immediately unfreeze cauldron.
+</I>&gt;&gt;&gt;<i>
+</I>&gt;&gt;&gt;<i> - we avoid blocking cauldron, while leaving pre-release frozen for
+</I>&gt;&gt;&gt;<i> bug fixes.
+</I>&gt;&gt;&gt;<i> - updates can continue on cauldron. Bugfixes can be applied to newer
+</I>&gt;&gt;&gt;<i> versions, if present in
+</I>&gt;&gt;&gt;<i> cauldron, at the same time as corresponding bugfixes in pre-release.
+</I>&gt;&gt;&gt;<i> - activities like translation can continue in cauldron, meaning less
+</I>&gt;&gt;&gt;<i> rush for such updates.
+</I>&gt;&gt;&gt;<i> - because cauldron is open to changes (virtually) all the time, they
+</I>&gt;&gt;&gt;<i> don't have to be put off and
+</I>&gt;&gt;&gt;<i> perhaps forgotten.
+</I>&gt;&gt;&gt;<i> - the cauldron cycle is extented by the time of the pre-release
+</I>&gt;&gt;&gt;<i> freeze. e.g. In a release cycle of
+</I>&gt;&gt;&gt;<i> 6 months and a pre-release freeze of 1 month, the cauldron cycle
+</I>&gt;&gt;&gt;<i> would be 7 months.
+</I>&gt;&gt;&gt;<i> This allows more time to iron out the pre-release bugs and more time
+</I>&gt;&gt;&gt;<i> for cauldron.
+</I>&gt;&gt;&gt;<i> - with the longer pre-release freeze, it may be appropriate to modify
+</I>&gt;&gt;&gt;<i> somewhat the policy on what
+</I>&gt;&gt;&gt;<i> is accepted during freeze. (Certain more recent packages or
+</I>&gt;&gt;&gt;<i> translations, for example.)
+</I>&gt;&gt;&gt;<i> - note that we would still have to monitor cauldron to avoid freezing
+</I>&gt;&gt;&gt;<i> partially implemented complex
+</I>&gt;&gt;&gt;<i> changes, such as a major update of kde or gnome or perl, etc. But we
+</I>&gt;&gt;&gt;<i> have to do that now, anyway.
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> So you suggest that in order to help packagers focusing on bug fixing,
+</I>&gt;&gt;<i> that we have them take care of cauldron and the bugfixes for the stable
+</I>&gt;&gt;<i> release ( ie, twice more the load ).
+</I>&gt;<i>
+</I>&gt;<i> I wouldn't quite put it that way ...
+</I>&gt;<i>
+</I>&gt;&gt;&gt;&gt;<i> Proposal 1 :
+</I>&gt;&gt;&gt;&gt;<i> ---------------
+</I>&gt;&gt;&gt;<i> My personal preference
+</I>&gt;&gt;&gt;<i>
+</I>&gt;&gt;&gt;&gt;<i> Pros:
+</I>&gt;&gt;&gt;&gt;<i> - better hardware support
+</I>&gt;&gt;&gt;&gt;<i> - up to date versions / upstream projects (must have for developers)
+</I>&gt;&gt;&gt;<i> - coincides with kde/gnome releases
+</I>&gt;&gt;&gt;<i>
+</I>&gt;&gt;&gt;<i> - amended freeze process (outlined above) would lengthen both
+</I>&gt;&gt;&gt;<i> pre-release freeze time and cauldron
+</I>&gt;&gt;&gt;<i> development time.
+</I>&gt;&gt;&gt;<i> A 1-month pre-release freeze would add 1 month to cauldron
+</I>&gt;&gt;&gt;<i> development time.
+</I>&gt;&gt;&gt;<i> This would tend to alleviate the rush of the 6-month release cycle.
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> Let's do some math, shall we ?
+</I>&gt;<i>
+</I>&gt;<i> great :)
+</I>&gt;<i>
+</I>&gt;&gt;<i> If people work the same amount of time, with work divided on 2 products,
+</I>&gt;&gt;<i> they must share their time, and usually work less than if they focused
+</I>&gt;&gt;<i> only on one product, unless there is twice the ressources. But I doubt
+</I>&gt;&gt;<i> this will happen for us, so let's assume that ressources are fixed.
+</I>&gt;<i>
+</I>&gt;<i> That was my assumption : resources fixed in terms of time spent.
+</I>&gt;<i> And why would that divide a contributor's focus more than now ? They
+</I>&gt;<i> would just have a choice.
+</I>&gt;<i> Now during the freeze, someone that wants to contribute to cauldron, but
+</I>&gt;<i> can't or chooses not to contribute to pre-release bugfix, is not
+</I>&gt;<i> contributing.
+</I>&gt;<i> So in practice, we risk to have more time contributed during the freeze.
+</I>&gt;<i>
+</I>&gt;&gt;<i> Let say :
+</I>&gt;&gt;<i> - the freeze period is Y weeks,
+</I>&gt;&gt;<i> - the time between 2 release is X weeks,
+</I>&gt;&gt;<i> - people divide their time evenly on both products.
+</I>&gt;<i>
+</I>&gt;<i> That wasn't assumed. Rather that as much time would be spent on bug
+</I>&gt;<i> fixes, etc. in pre-release. But having a longer freeze period would
+</I>&gt;<i> likely result in better quality, and certainly less rush.
+</I>&gt;<i>
+</I>&gt;&gt;<i> That's a simplification, but I will come back on that later. Let's also
+</I>&gt;&gt;<i> count the time spent as the metrics for the work, even if man/month is a
+</I>&gt;&gt;<i> wrong unit in software development ( but that's a good enough
+</I>&gt;&gt;<i> approximation for our case, given the highly distributed and
+</I>&gt;&gt;<i> decentralized nature of the work of releasing a distribution ).
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> So when there is the freeze ( at release(n) time - Y weeks ), we will
+</I>&gt;&gt;<i> have Y weeks of work done on both products ( next release, and cauldron
+</I>&gt;&gt;<i> ), so Y/2 weeks on each. We have X -Y weeks once the release(n) is out
+</I>&gt;&gt;<i> ( before the next freeze for release(n+1) ), and then again Y/2 weeks.
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> So for the release (n+1), we spend :
+</I>&gt;&gt;<i> Y/2 + X - Y + Y/2
+</I>&gt;&gt;<i> = 2 * Y/2 - Y + X
+</I>&gt;&gt;<i> = Y - Y + X
+</I>&gt;&gt;<i> = X
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> So that give X weeks of work. Fascinating, isn't it ?
+</I>&gt;<i>
+</I>&gt;<i> Not really. Being my basic assumption :)
+</I>&gt;<i>
+</I>&gt;&gt;<i> Now, of course, we can say &quot;what if people do not divide their work in
+</I>&gt;&gt;<i> 2 ?&quot;
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> So let's call :
+</I>&gt;&gt;<i> - F the time spent on bugfix during the freeze
+</I>&gt;&gt;<i> - C the time spent on cauldron during the freeze
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> We can assume that :
+</I>&gt;&gt;<i> C + F = Y
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> So the equation become :
+</I>&gt;&gt;<i> C + ( X - Y ) + F
+</I>&gt;&gt;<i> = C + F - Y + X
+</I>&gt;&gt;<i> = X
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> So no matter how you divide the time, you still have the same amount of
+</I>&gt;&gt;<i> time spent overall.
+</I>&gt;<i>
+</I>&gt;<i> As I assumed :)
+</I>&gt;<i>
+</I>&gt;&gt;<i> Now, the real important question is &quot;can we really exchange work done as
+</I>&gt;&gt;<i> part of C for work done as part of F&quot;.
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> And so &quot;if I do regular packages updates on cauldron at the begining of
+</I>&gt;&gt;<i> the cycle, does it count as bugfixing for the release in the end of the
+</I>&gt;&gt;<i> cycle&quot; ?
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> To me, the answer is clearly no. If it was somethig we could exchange,
+</I>&gt;&gt;<i> we would not have to make a freeze in the first place to make sure that
+</I>&gt;&gt;<i> only bugfixes are uploaded in cauldron.
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> So the only way to maximize the time spent on bugfixes is to have F = Y,
+</I>&gt;&gt;<i> and so C = 0. Ie, do like we do now.
+</I>&gt;<i>
+</I>&gt;<i> I really don't follow this line of reasoning.
+</I>&gt;<i> The focus on bug fixes starts with the freeze. So a longer freeze would
+</I>&gt;<i> give more time to focus on bug fixes.
+</I>&gt;<i> Sure, there are updates and bug fixes in cauldron before the freeze, as
+</I>&gt;<i> a normal part of any development process. (Even in the non-libre world.)
+</I>&gt;<i>
+</I>&gt;&gt;<i> And unless you show that letting people work on cauldron will bring more
+</I>&gt;&gt;<i> ressources , and more than the one we will lose du to people who do not
+</I>&gt;&gt;<i> want to work on bugfixes and the release, I doubt this will change.
+</I>&gt;<i>
+</I>&gt;<i> Ok. Obviously I need to clarify my point of view.
+</I>&gt;<i> Firstly, my assumption was that at least as much time would be spent on
+</I>&gt;<i> bug fixing during the longer freeze, but being less rushed, would tend
+</I>&gt;<i> to produce better quality results. (And less aggravation for ennael)
+</I>&gt;<i> (That is certainly how it works in the non-libre world.)
+</I>&gt;<i>
+</I>&gt;<i> I don't see how having the choice between contributing to pre-release or
+</I>&gt;<i> cauldron during the freeze will lead to us loosing _any_ contributors.
+</I>&gt;<i>
+</I>&gt;<i> As well, since cauldron would be out of freeze virtually all the time,
+</I>&gt;<i> there would be (virtually) no period where contributions to cauldron are
+</I>&gt;<i> blocked.
+</I>&gt;<i> Packager time is not an ubiquitous resource. Some packagers are perl
+</I>&gt;<i> experts, other python, etc. Each packager is more familiar with some
+</I>&gt;<i> packages than others. Some packagers are excellent developers; others
+</I>&gt;<i> are challenged by basic scripts. There is a wide range of skills and
+</I>&gt;<i> interests.
+</I>&gt;<i>
+</I>&gt;<i> If during freeze, a packager has a choice between attempting to help
+</I>&gt;<i> with a bugfix in pre-release for a package with which s/he is not
+</I>&gt;<i> familiar, or contributing to cauldron for something with which s/he is
+</I>&gt;<i> familiar, it would be evidently more efficient to contribute to cauldron.
+</I>&gt;<i>
+</I>&gt;<i> Similarly, if a packager contributes a bug fix to pre-release, and a
+</I>&gt;<i> newer package already exists in cauldron for which the same bug fix must
+</I>&gt;<i> be applied, it is more efficient to apply the same patch right away,
+</I>&gt;<i> than to wait until freeze is over. (Personnally I've encountered this
+</I>&gt;<i> sort of situation with similar but different software many times. Any
+</I>&gt;<i> experienced programmer should understand this point.)
+</I>&gt;<i>
+</I>&gt;<i> So there are a lot of (admittedly small) synergies which should lead to
+</I>&gt;<i> packager time being more efficiently used.
+</I>&gt;<i> Not counting the likelyhood that some packagers would contribute
+</I>&gt;<i> somewhat more time, being able to contribute to cauldron during freeze.
+</I>&gt;<i> The major benefit in my mind is the longer freeze period.
+</I>&gt;<i>
+</I>&gt;<i> How much this would help, I don't know. But I think it is worth a try.
+</I>&gt;<i> (Even if we end up going for a 9-month release cycle, instead of my
+</I>&gt;<i> preferred 6 months.)
+</I>&gt;<i>
+</I>
+Another thought about the amended freeze process.
+Have you noticed how packagers sometimes set off an exchange of 10 or more emails in attempts to
+get a package into the release during the freeze ?
+The packager wants to submit, but they can't because cauldron is frozen. Maybe if only pre-release
+were frozen, but cauldron open, they would accept submitting to cauldron after only 1 or 2
+exchanges. They would have the at least partial satisfaction of being able to submit their package
+(instead of waiting, and doing something else, probably elsewhere), and others would have been
+releaved of the hassle of dealing with their repeated requests.
+I think that would be more motivating for the packager in question, as well as the others involved.
+And packagers would avoid wasting both time and energy.
+
+--
+Andr&#233;
+</PRE>
+
+
+
+
+
+
+
+
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="005832.html">[Mageia-dev] Release cycles proposals, and discussion
+</A></li>
+ <LI>Next message: <A HREF="005841.html">[Mageia-dev] Release cycles proposals, and discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#5840">[ date ]</a>
+ <a href="thread.html#5840">[ thread ]</a>
+ <a href="subject.html#5840">[ subject ]</a>
+ <a href="author.html#5840">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://www.mageia.org/mailman/listinfo/mageia-dev">More information about the Mageia-dev
+mailing list</a><br>
+</body></html>