[Python-bugs-list] [ python-Bugs-410541 ] bdist builds bogus .zips

noreply@sourceforge.net noreply@sourceforge.net
Wed, 06 Mar 2002 12:33:17 -0800


Bugs item #410541, was opened at 2001-03-22 11:31
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=410541&group_id=5470

Category: Distutils
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: A.M. Kuchling (akuchling)
Assigned to: Thomas Heller (theller)
Summary: bdist builds bogus .zips

Initial Comment:
According to Thomas Heller: "... the resulting zip-file
from
'bdist --formats=zip' is unusable because it contains
filenames relative to
the root directory)"

Such paths may be OK for Unix (cd / and unzip it,
perhaps?), 
but isn't much good for Windows, where Python might be
installed anywhere.  


----------------------------------------------------------------------

Comment By: Kurt B. Kaiser (kbk)
Date: 2002-03-06 15:33

Message:
Logged In: YES 
user_id=149084

I'm not sure what is meant by "everyone should install from
source or the native binary for his platform."  My
understanding is that Distutils was created to provide a
uniform way to install third party packages.

It seems that bdist_dumb has problems building a package
distribution which will install properly.  What about
non-Linux or Windows systems? It rather looks like the code
is unfinished....

To quote the TODO (DISTUTILS 1.1 PLANS):

"* bdist_dumb should grow a little intelligence: let
packager choose 
whether to make archive relative to prefix or the root
(prefix is essential for proper Windows support )"

----------------------------------------------------------------------

Comment By: Thomas Heller (theller)
Date: 2002-03-05 16:08

Message:
Logged In: YES 
user_id=11105

I expect nobody will install from a zip-file on windows, 
either.

I suggest making bdist_wininst the default bdist format on 
windows and forget this one: Everyone should (will?) 
install either from source, or from the native binary 
distribution for his platform.


----------------------------------------------------------------------

Comment By: Jeremy Hylton (jhylton)
Date: 2002-03-01 17:54

Message:
Logged In: YES 
user_id=31392

Can you look at this one, Thomas?


----------------------------------------------------------------------

Comment By: Kurt B. Kaiser (kbk)
Date: 2001-05-27 17:33

Message:
Logged In: YES 
user_id=149084

gztar, ztar, tar, and zip appear to create the same install tree rooted at / . Only the compression differs. (I guess wininst is the intended way to create a Windows distribution.)

The Unix tree contains PythonX.X in its paths, so not only is the full tree NG for Windows, but if someone prepares a bdist package on a Unix system running 2.2, it appears that it is not going to install correctly on a Unix system running 2.1. It is impractical to ask developers to update their Tools distributions for each version of Python, so what to do?

It may be that the bdist paths should be rooted at site-packages, with script installation to prefix/bin. If there are extensions to go into lib-dynload, the path is ../lib-dynload from site-packages.

Then the user would unpack the file in the site-package directory. Note that right now the file names for source and 'binary' distribution are very similar, but the method of installation is different, and this has to be made clear to the user.

GvR seems to be interested in making the install trees the same on Linux and Windows, that would help.

Incidently, the distutils docs say the default is to install relative to prefix, but it appears that that has not been implemented, the default is / . Also, though the docs mention Windows installers, rpms, etc., they don't say anything about install files prepared with bdist. Maybe no one uses bdist?

If there is something I can do here, let me know. It seems it may take some discussion on python-dev first, though.

----------------------------------------------------------------------

Comment By: A.M. Kuchling (akuchling)
Date: 2001-05-21 15:39

Message:
Logged In: YES 
user_id=11375

I expect no one will install from a .zip file on Unix.

Options:

1) Make both the .tgz and .zip relative to sys.prefix or 
something.
2) Make only the .zip relative.
3) Document this as being broken and forget about it.




----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=410541&group_id=5470