Workflow Idea for 4.10
Aaron J. Seigo
aseigo at kde.org
Wed Mar 14 13:38:19 UTC 2012
On Friday, March 9, 2012 00:27:51 Alex Fiestas wrote:
> - Keep the 6 month release period
release periods and development periods are not the same thing. the release
period is, imho, uninteresting in these kinds of dicussions. we're discussing
development process, which is only marginally related to release processes.
regardless of the development process, the release process must continue and
be aided.
> - Keep the current schedule (soft freeze, hard freeze...)
this, however, is very relevant. :) for release coordination it is fine, but
keeping development tied to this is a mistake imo. this should only direct
when merging into master can happen, but not constrain what development is
actually happening.
keep in mind that those who may be creating products around this software, as
we have learned in plasma active, simply can not be tied to kde's release
cycles. on the other hand, kde needs release cycles and can never time those
to match every downstream's needs simultaneously (there are too many
downstream schedule conflicts and variance in needs).
> - Move to a review based workflow before hard freeze (we need gerrit).
for certain components, yes. for other non-critical ones, this will just kill
what development efforts were put into them for no real gain.
every time we raise the bar on development, we shrink the pool of people who
will engage.
so i'm 100% supportive of the idea to ensure core components are more stable
and purposefully developed and less chaotic, but would like to see a process
that keeps additional components more freely developed.
> - Once we are on hard freeze, open merge for everyone so we can
> continue fixing things easily.
review is also important here, of course, as fixes can (and sometimes do) break
things. that said:
> things we have right now and it will allow us to explore the benefits
> of the merge based workflow.
this is what really piques my interest: merge based workflow.
an integration branch would be fantastic. that branch should rebase
periodically off of master and only be used to merge feature branches. this
branch would largely take the place of current master: where development
"happens". feature branches should be merged into integration on a regular
basis and developers and testers should track this integration branch in their
day-to-day usage
integration should always be open to feature branch merging. master should
only be open for feature merge when not in freeze, however.
when in freeze, either a stabilization branch could be made off of master for
this purpose (probably a very good idea for larger fixes) which is then merged
down in master at known good points .. or .. master is opened for bug fixes
directly in those periods. the latter is probably not as "good" from a
stability POV, but may be more reasonable and less of a workload for people
doing the actual work.
so what i'm interested in hearing is what sort of branch management scheme
would work for people. i'm happy to maintain either an integration or the
master branch (but not both).
in any case, i'm personally less interested about the details of the review
process (many different ways to do that) and more interested in the branching
strategy.
note that the methods being (slowly) adopted for frameworks devel are also
moving in the direction noted above.
--
Aaron J. Seigo
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20120314/3372c062/attachment.sig>
More information about the Plasma-devel
mailing list