[Zope3-dev] Makefile and python version number

Fred Drake fdrake at gmail.com
Mon Aug 29 12:20:08 EDT 2005


On 8/29/05, Julien Anguenot <ja at nuxeo.com> wrote:
> http://svn.zope.org/Zope3/trunk/Makefile?rev=37919&r1=37889&r2=37919
> 
> The reason is not explained within the logs ??

That particular change was because I'd managed to add the version
number back accidentally; it had previously been removed (I think by
Stephan Richter).

> The problem is when you have the following installed :
...
> I think this changeset made the problem appear :
> http://svn.zope.org/Zope3/trunk/Makefile?rev=38056&r1=37919&r2=38056

I'm skeptical of that, though.

Regardless of the revision that caused the problem, the problem
specifically is that there's more than one place where the Python
executable is named.  Ideally, there should be only one place, but
that doesn't work well with the sh-bang lines in Unix scripts.  :-(

The "right way" to spell the name of the Python executable has been
discussed extensively at various times, and its not clear to me that
we've ever reached a real conclusion.  There are actually two issues:

1.  How should we spell the Python executable in a checkout?

2.  How should we spell the Python executable in an installation?

The "ideal" way to do the later is likely platform specific (Windows
v. Unix again; I don't know if Mac OS X really introduces a third
variant or not).

The specific case you cite is checkout-specific, however, so platform
is irrelevant; you get what's in the checkout.

The version number was initially added to the spelling of the Python
executable to ensure that the right version was selected; this was
done before Python 2.4 was available.  At this point, there are more
acceptable versions (2.3.5 and 2.4.x), and it's even common for
python2.3 not to be installed by default (which I suspect was why the
Makefile was modified).  Python 2.3 certainly wasn't installed on my
Ubuntu system until I added a local installation fairly recently.

What the right thing is needs to be considered again.  Changing the
Makefile back to specify python2.3 is acceptable, I think, because we
do still require compatibility with Python 2.3.5.  It's not ideal, but
we're not likely to agree on what's ideal for a checkout anyway, even
for Unix users.


  -Fred

-- 
Fred L. Drake, Jr.    <fdrake at gmail.com>
Zope Corporation


More information about the Zope3-dev mailing list