python compat package change needed

Toshio Kuratomi a.badger at gmail.com
Mon Jan 6 21:49:04 UTC 2014


The new setuptools shipped in F20+ has one change that breaks things for
a subset of python packages.  I'm proposing a very small guideline change
for the Pyhton Eggs guidelines to address that.  Maintainers of backwards
and forward compat packages will likely want to address this as it will
break upgrades of those backwards compat packages from f19 to f20.

When we ship backwards compat pyhton modules we take advantage of a feature
of pythhon eggs to install the multiple versions:
https://fedoraproject.org/wiki/Packaging:Python_Eggs#Multiple_Versions

The guidelines say to use the following command line for performing the
install:

       easy_install -m --prefix $RPM_BUILD_ROOT%{_usr} dist/*.egg

In Fedora 19's setuptools package, this resulted in a new directory being
installed into site-packages that held the versioned egg.

In Fedora 20's setuptools package, this command results in a zipped egg file
being installed into site-packages.  The zipped egg has the same filename as
the previous directory.

This causes problems for rpm as rpm cannot handle replacing a directory with
a file without jumping through hoops.  Because rpm cannot perform that
replacement, we end up with bug reports like this:
  https://bugzilla.redhat.com/show_bug.cgi?id=1047570#c0
where the user is unable to upgrade the F19 package to the F20 package.

The solution is to force easy_install to install unzipped eggs rather than
zipped eggs.  This can be done via a command line switch, -Z.  I've proposed
adding that switch to the Pyhton Eggs guidelines:

https://fedorahosted.org/fpc/ticket/378

If you get similar bug reports to the one menitoned, you can add the switch
to workaround the problem now.  I'll send a new message to this list if (for
some reason I don't know about) adding -Z is deemed unacceptable.

-Toshio
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://lists.fedoraproject.org/pipermail/python-devel/attachments/20140106/9f085bc5/attachment.sig>


More information about the python-devel mailing list