[Zope3-dev] Release numbering

Jim Fulton jim at zope.com
Thu Apr 21 07:35:26 EDT 2005


Martijn Faassen wrote:
> Hey Jim,
> 
> I'm not pointing out inconsistencies in our message and expectations set 
>  for no reason; I think it's important to fix this aspect of our 
> marketing. Please read the comments here in this light; I want to 
> demonstrate how confused our message seems to be.
> 
> Jim Fulton wrote:
> 
>> Martijn Faassen wrote:
>>
>>> Jim Fulton wrote:
>>> [snip]
>>>
>>>> 2. The X in Zope 3X means that there is not yet support for
>>>>    Zope 2 transition.  It's about setting expectations.
> 
> 
>>>
>>> But we're setting the expectation that one day there will be a 
>>> version of Zope 3 that supports Zope 2.
>>
>>
>>
>> No. We are setting the expectation that we will provide a supported
>> transition process.  That *could* be backwward compatibility, but it
>> might be much less.
> 
> 
> That's not the expectation that has been raised until quite recently, 

Huh?  This is what I've always said.

> and since you're changing the expectation,

I have limited control over expectations.  I certainly haven't changed
my message. I've always said that we will provide support for transitioning
to Zope 3, being careful to say "transition support" rather than
backward compatibility.  We may only provide conversion tools.  We may provide
backward compatibility.  I don't know.  We won't know till we learn more.
Of course, I've also said a likely strategy is to narrow the gap
between Zope 2 and Zope 3.  Of course, your Five work is a critical part
of that.

...

>  From an older roadmap document (found on Jeffrey Shell's weblog):
> 
>     * Zope X3 first. The X stands for experimental. It has no support 
> for migration from Zope 2. Zope 2 will continue development for some 
> time. Zope 2.7.0 alpha 1 was recently released. And there has been talk 
> of a Zope 2 variation inside Zope Corp that incorporates some Zope 3 
> features that is expected to be released later this year.
> 
>     * Zope 3 (no X) later. This one will include support for Zope 2 
> products and content, probably through a conversion utility.

While this is not an official statement, it is certainly consistent with the
message I've given and stated above.

> When we released Zope X3.0, Stephan wrote:
> 
> """
> Zope X3 is the next major Zope release and has been written
> from scratch based on the latest software design patterns and
> the experiences of Zope 2. The "X" in the name stands for
> "experimental", since this release does not try to provide
> any backward-compatibility to Zope 2.
> """

Yes

> The Zope wiki says this:
> 
> "Zope X3 is the first release of Zope3. The X signifies that it is not 
> backwards compatible with Zope 2. A Zope 3 release with migration 
> support will come later. See Zope3 for links, etc."

Yes, still consistent.

> What are we implying here?

We are implying what I said above and what all of these statements
say.  What do you find inconsistent?

 > We've been telling the whole world that the X
> is there because there is no backwards compatibility for Zope 2, in the 
> release notes for Zope X3.0 even. In this light, it's not unreasonable 
> for people to expect that we will add this compatibility.

We are careful to say that we will someday at least provide transition
support.  We may provide backward compatibility someday. We will if
it is feasible to do so.  We certainly aren't providing it now and we
aren't even providing transition tools.

The "X" in Zope 3 means that it's for new applications. You can't
move your existing applications to it without substatially rewriting
them.

If you want to suggest different wording for this plan, I'm open
to suggestions.


> People observing the project from a distance might rightfully start 
> thinking things like this:
> 
> """
> This doesn't seem to make too much sense. Zope 3X is still far from
> being Zope 3. Schooltool has been "developing a framework" for more than
> a year now - and now you are going to rip out all that plumbing and
> rewrite it anyway for another platform that will probably also require a
> lot of rewrite as Zope 3x "is a milestone" to Zope 3. What was "the
> hedge" against? Why don't you rather use the time to make schooltool a
> world class app and migrate to Z3 later?
> """
> 
> http://lists.schooltool.org/pipermail/schooltool/2004-December/000883.html

I agree that it is a missconception to assume that there will be a major
change for Zope 3 developers when we drop the X.  The Zope 3 platform will
be fully backward compatibly with Zope X3.  I can see that people might think
that Zope X3 is a different platform, given the thoughts that we would restart
numbering.


>>  > Is this a realistic expectation? Stephan
>>
>>> doesn't seem to think so, for one. 
>>
>>
>> I think it is reasonable.
> 
> 
> You are saying it's reasonable to set the expectation that there is a 
> supported transition process right?

Right


> I mean, you just said Zope 3 won't 
> support Zope 2 necessarily, just that we are setting the expectation for 
> a transition process.

Yup

 > In fact I've been involved in building such a
> transition process for about a year now, but it has nothing to do in my 
> mind with the X in Zope X3.

That's fine. In *my* mind, it is connected. Narrowing the gap between
Z2 and Z3 *may* ultimately make the transition easier.

> We better have some clearer communication on this topic between Zope 3 
> core developers,

Sorry, my mind control skills are lacking. ;)

I can't tell Stephan what to think.  I guess I'd prefer that
he support the "party line", but heck, who said there was
a party.


 > as Stephan himself seems to distinguish between a still
> official "public plan" and his doubts it will be like that. At least, 
> this is what I conclude from this statement earlier in this discussion:

Yup. I wish he wouldn't say things like this, especially as the release
manager.

There are people in the Zope 3 community who don't consider Zope 2
top be important.  I'm not one of them.  I consider Zope 2 to
be a valuable and important platform that deserves care and feeding
for some time to come.

I greatly appreciate the assistence you and others have provided in
helping to bring some of the benefits of Zope 3 to Zope 2.

>  > - I do not believe that there will be ever a Zope 2 compatibility
>  > layer in Zope X3. The other way around seems more pragmatic and is
>  > currently done in Five.
> 
> while at the same time, Stephan's been making the implication that this 
> *is* the official plan in the release notes:
> 
>  > The "X" in the name stands for "experimental", since this release 
> does > not try to provide any backward-compatibility to Zope 2."

Sorry, I can't figure out which "this" you mean in your sentance above.

>>>>    I'm OK with dropping the X is someone else wants to manage
>>>>    this communication another way, but I'd rather not drop it.
>>>
>>>
>>> You could just say "Zope 3 is not compatible with Zope 2".
>>
>>  
>> This is not acceptable in the long term.
> 
> 
> Well, but you're saying yourself Zope 3 will likely never be compatible 
> with Zope 2, just that there will be a supported transition process. It 
> therefore sounds not unreasonable to me to actually say "Zope 3 is not 
> compatible with Zope 2". If you want to add a note about a transition 
> process, that's your call; I cannot commit to building such a transition 
> process myself right now besides the Five work already done.

The problem is that I can't predict the future.  Maybe you think you can.
I know Stephan does. ;)  Zope 3 is still maturing and thanks to efforts
like yours with Five and thanks to experience Ive gained, I'm more
optimistic than ever about a smooth transition.  My *hope* is that someday,
Zope 2 will be a configuration of Zope 3 and that the two platforms
will merge in some sense.

> Anyway, my message here is to get a bit clearer on the message. I've 
> clearly gained a very different idea about what the X means than you do, 
> and that's not for lack of observing the Zope 3 process. Let's get our 
> marketing straightened out.

I certainly want to be clear about what I say.

The bottom line though is that we don't know.  We will continue to
support Zope 2 at least until we do know how the transition will work.

I'll note that, related to all of this is the new philosophy of controlled
evolution using deprecation.  To stay healthy, Zope 2 and Zope 3
both need to evolve in a controlled way.  Ultimately, this may simply
evolve the 2 platforms in a direction where they meet at some point.
I suspect that there will be a point sometime where we have releases
2.N and 3.M, such that:

- 2.N and 3.M are "compatible", meaning that applications that run in one
   can run in the other

- 2.N is backward compatible with 2.N-1 and 2.N-1, but not 2.N-3,  and

- 3.M is backward compatible with 3.M-1 and 3.M-1, but not 3.M-3.

I certainly appreciate any help in communicating this more clearly.

Jim

-- 
Jim Fulton           mailto:jim at zope.com       Python Powered!
CTO                  (540) 361-1714            http://www.python.org
Zope Corporation     http://www.zope.com       http://www.zope.org


More information about the Zope3-dev mailing list