[Zope-dev] the Zope Framework project
Stephan Richter
srichter at cosmos.phy.tufts.edu
Tue Mar 3 10:57:52 EST 2009
On Tuesday 03 March 2009, Gary Poster wrote:
> My mild counter proposal was this.
>
> - The ZF formally institutes an easy way for people to start "Zope"
> projects
>
> - Hopefully, Martijn F. starts something like the project he described
>
> - Hopefully, people follow it.
>
> In other words, I suppose, Just Do It.
Actually Martijn tried to be better than that. :-) Instead of just forming a
steering group (which I would interpret as a Zope project) and announcing it
to the community, he asked for feedback first. :-)
I probably agree he should have just done it by gathering the various release
managers. BTW, in one of my original responses, I proposed to Martijn that
the steering group should be mostly the release managers plus one or two
strong developers so that the group reaches an odd number.
> Beyond that, I didn't say my other smaller thought, which was that I
> think the KGS should ideally be looser and more flexible than what
> Martijn described. If you have a project that wants in on the KGS,
> great, you can add it.
That is the case right now and I think a steering group would be pretty open
to additions.
However, I think Martijn made a much more important point. What he wants, if I
understood him correctly, is more of an organization around a hierarchy of
KGSs. The reason for this is that Zope/Plone, grok, and Zope 3 AS all share a
common core and maybe a coreplus set. Then each sub-project maintains a KGS
on top of that with their specific extensions.
(1) This will make interoperability much easier, since I could potentially use
grok X.Y in Zope 2.Z without worrying about version conflicts.
(2) If the steering group contains all of the release managers, then releases
can be synced effectively.
> Institute a "nightly" KGS for an upcoming
> release (and maybe the most recent release).
We do have this system today.
http://zope3.afpy.org/buildbot/waterfall
> It stays around forever
> at a specific URL. Include only the projects whose tests pass in the
> nightly KGS. Have a list elsewhere of the ones for which the tests
> fail. If the tests don't pass for some period of time, apparently the
> maintainers and users don't exist or don't care, and they get taken
> off the list to be tested.
That statement is a massive over-simplification of what's going on. ;-) There
are several problems:
(1) Tests that pass in isolation might not pass in a complete run. This might
be due to this or another packages incomplete teardown. (Several people spent
weeks getting this right for the 3.4 KGS.)
(2) A new release of one package might break 5 others. Who is responsible for
updating the 5 breaking packages. The author that just released the new
package or the ones from the 5 others? What if those other packages do not
have clear, single maintainers (e.g. zope.*)?
I am not making up these cases. They are real and they exist today. The idea
that one package has 1 or more concrete and devoted authors is simply not
real in the Zope world of 200+ packages.
> The "Zope Framework" team leader then
> decides some time to make a release, so people might shuffle around
> versions more than usual, but it's just another KGS.
Yep, this is basically what happens today. For example, at Keas we use
different versions (even trunk) of at least 20 packages. The point is that
people have a stable point to start with. I think that would not change.
Regards,
Stephan
--
Stephan Richter
Web Software Design, Development and Training
Google me. "Zope Stephan Richter"
More information about the Zope-Dev
mailing list