[Python-Dev] versioned .so files for Python 3.2

Scott Dial scott+python-dev at scottdial.com
Thu Jul 1 13:02:25 CEST 2010


On 6/30/2010 2:53 PM, Barry Warsaw wrote:
> It might be amazing, but it's still a significant overhead.  As I've
> described, multiply that by all the py files in all the distro packages
> containing Python source code, and then still try to fit it on a CDROM.

I decided to prove to myself that it was not a significant issue to have
parallel directory structures in a .tar.bz2, and I was surprised to find
it much worse at that then I had imagined. For example,

# cd /usr/lib/python2.6/site-packages
# tar --exclude="*.pyc" --exclude="*.pyo" \
      -cjf mercurial.tar.bz2 mercurial
# du -h mercurial.tar.bz2
640K    mercurial.tar.bz2

# cp -a mercurial mercurial2
# tar --exclude="*.pyc" --exclude="*.pyo" \
      -cjf mercurial2.tar.bz2 mercurial mercurial2
# du -h mercurial.tar.bz2
1.3M    mercurial2.tar.bz2

So, I was definitely wrong in saying that you do better than doubling.

>> What happens to the distro packaging if a python package splits the
>> codebase between 2.x and 3.x (meaning they have distinct .py files)?
> 
> The Debian/Ubuntu approach to Python 2/3 support is to provide them in
> separate distro packages.  E.g. for Python package foo, you would have Debuntu
> package python-foo (for the Python 2.x version) and python3-foo.  We do not
> share source between Python 2 and 3 versions, at least not yet <wink>.

I had asked this question to point out that you will still need to
accommodate some form of version-specific packages (I am not a debuntu
expert by any means). And, I think your response is an acknowledgment of
that fact, however it's certainly true that there are few examples, as
you said.

I appreciate all your replies. I am not sure a PEP is really needed
here, but to having had all of this discussed and explained on the
mailing list is certainly useful. I trust that yourself and the debuntu
python group will end up chasing down and taking care of any quirks that
this change might cause, so I am not worried about it. :D

-- 
Scott Dial
scott at scottdial.com
scodial at cs.indiana.edu


More information about the Python-Dev mailing list