[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Stable repo
From: |
Jaroslav Hajek |
Subject: |
Re: Stable repo |
Date: |
Sat, 25 Apr 2009 07:14:56 +0200 |
On Sat, Apr 25, 2009 at 12:39 AM, Rik <address@hidden> wrote:
>> Development in the main archive takes place in stages, as described
>> here, http://gcc.gnu.org/develop.html, under the heading "Stages". To
>> summarize, the three stages are:
>>
>> stage 1: anything goes; this is the time to merge large new features
>> or do other major restructuring. In Octave, this would be
>> things like rewriting the symbol table to add support for
>> classes
>>
>> stage 2: only smaller changes and bug fixes
>>
>> stage 3: bug fixes or documentation changes only, no new features
>>
>> The goal is to have each stage last for approximately two months, so
>> releases can happen every 6 months or so. We might tweak the
>> durations somewhat, though aiming for two months for each stage
>> doesn't seem unreasonable to me.
>>
>> In addition, development of crazy new features takes place on branches
>> in the main archive, though for Octave I would propose that we use
>> separate archives for experimentation, and they could be hosted
>> anywhere. Even when the main development tree is in stage 2 or 3,
>> major developments may still be taking place in other archives.
>> Changes from those archives can be merged when mainline enters stage 1
>> again. Feature freezes don't last too long
>>
>> What you're describing for the stable archive sounds sort of like the
>> GCC model, with the "main" archive taking on (more or less) the role
>> of the experimental branches.
>>
>> I guess I don't see why we need the main (experimental) archive to be
>> on savannah, or, if it is hosted there, why we would want to restrict
>> ourselves to just one experimental archive.
> If I were trying something really experimental I would be doing it in a
> very private repo on my own computer; I wouldn't want it hosted anywhere
> else. On my own PC I can create as many experimental archives as desired
> so I don't see that we are restricting ourselves.
>
> I do think we need a single canonical repo that people look to for
> changes. I don't
> want to have to pull from 10 different personal developer archives to
> get near the tip
> of development. First, I wouldn't necessarily know which developers
> those 10 are
> and, second, they might not feel like hosting Mercurial access.
>>
>> If there is an "anything goes" attitude toward the main archive, then
>> how does pulling and merging from main to stable help us generate
>> high-quality stable releases? I mean, if you pull every change from
>> main, then aren't you likely to get some half-baked things in the
>> stable archive that will cause trouble for a release?
> Jaroslav might have a different idea but I would pull from main to stable
> only during stage 1 when large changes are expected to be introduced.
> At some point stage 2 is declared and pulling stops and the work
> in the stable repo shifts to making sure newly the introduced code works
> well.
> Development in the main repo continues just as it ever did without regard to
> the schedule for the stable repo.
>
> --Rik
>
No, I think that matches exactly my idea.
--
RNDr. Jaroslav Hajek
computing expert & GNU Octave developer
Aeronautical Research and Test Institute (VZLU)
Prague, Czech Republic
url: www.highegg.matfyz.cz