[Bug 526126] Review Request: python3 - Python 3.x (backwards incompatible version)
bugzilla at redhat.com
bugzilla at redhat.com
Tue Oct 13 20:48:31 UTC 2009
Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug.
https://bugzilla.redhat.com/show_bug.cgi?id=526126
Dave Malcolm <dmalcolm at redhat.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |ivazqueznet at gmail.com
--- Comment #7 from Dave Malcolm <dmalcolm at redhat.com> 2009-10-13 16:48:29 EDT ---
Adding ivazquez to the CC list. Ignacio: I hope that's OK.
Andrew: thanks for your work on packaging Python 3
I feel a little awkward about reviewing this. As far as I can see based on the
link in comment #3, ivazquez has been packaging Python 3000 since 2007-09-01,
with "3.0-0.a1.1":
Sat Sep 1 2007 Ignacio Vazquez-Abrams <ivazqueznet+rpm at gmail.com> 3.0-0.a1.1
and he's been steadily updating his rpms since then. However, I don't think he
ever filed a package review request on those rpms. (Please correct me if I'm
wrong!) Ignacio: is there a reason you didn't file a review request?
I've posted a proposal on Python 3 in Fedora 13. See this proposed feature
page:
https://fedoraproject.org/wiki/Features/Python3F13
I'm very keen to see a python 3 package in Fedora, either based on Andrew's
srpm, or on Ignacio's. I also tried packaging it, but I'm happy to abandon my
specfile in favor of your work. I would like to be a comaintainer of the
resulting package.
For me, the most important thing is that the python 3 rpms should be
installable in parallel with the python 2 rpms. I hope I captured the other
kinds of expected behavior on the feature page above.
I'd be happy to review your package (though we need to find a sponsor for you),
but I'm worried that Ignacio may feel put out if we use your package rather
than his (and likewise, vice versa). I'm curious why Ignacio never filed a
package review request on his packages.
Thoughts?
I tried generating a pure textual "diff" of the two specfiles (Andrew's vs
Ignacio's), but too much is different for the result to be meaningful.
So I tried comparing individual aspects of the packaging (no doubt omitting
much):
= Name =
"python3" vs "python3000"
I prefer "python3"; I feel that "python 3000" was a good development codename
during the development towards 3.0, but now that it's been released, "3" seems
to be the name. I'd prefer us to use "python3-" as a naming prefix throughout.
= Source and Patches =
ivazquez's srpm makes use of various ".list" source files to control various
parts of the build/install/etc, and I think this approach works well.
amcnabb's patches:
Patch0: python-3.1.1-config.patch
This heavily patches Modules/Setup.dist, like we do on the python 2 rpm. I
haven't gone though and checked the various modules in detail yet, but it looks
reasonable, a "batteries-included" approach.
Patch102: python-3.1.1-lib64.patch
It's only applied on 64-bit archs; it reworks lib to lib64 in many places.
# http://bugs.python.org/issue6999 -- fixed in r75062
Patch200: python-3.1.1-pathfix.patch
Fixes an encoding issue with the pathfix script, used when fixing up shebangs.
Good to see that you upstreamed it.
ivazquez's patches:
Patch0: Python-3.1.1-rpath.patch
Removes standard library path from rpath.
Patch1: Python-3.0a5-libprep.patch
Ignacio's version fix up the shebangs uses sed (see "sedcmd" in the specfile),
rather than fixing the broken "pathfix" tool.
= BuildRequires =
Both have BuildRequires on:
bzip2-devel
db4-devel (amcnabb's has a ">= 4.7" here)
gdbm-devel
openssl-devel
ncurses-devel
readline-devel
sqlite-devel
tk-devel
(alphabetized them for ease of comparison)
amcnabb's has an additional:
BuildRequires: gmp-devel
BuildRequires: zlib-devel, expat-devel
BuildRequires: libGL-devel tk tix gcc-c++ libX11-devel glibc-devel
BuildRequires: bzip2 tar /usr/bin/find pkgconfig tcl-devel
BuildRequires: tix-devel
BuildRequires: autoconf
BuildRequires: libffi-devel
Some of these are implicitly assumed in the buildroot, and don't need to be
explicitly listed. The others presumably reflect the very broad
batteries-included approach taken when patching Modules/Setup.dist
ivazquez's has an additional:
BuildRequires: gdbm-devel
BuildRequires: python
= Description =
amcnabb's seems to be taken directly from our python 2 specfile; I think the
one in ivazquez's specfile is better (although as I said, I feel we should
refer to Python 3 not to Python 3000). In particular, the description in
ivazquez' specfile deprecates the use of TkInter, which I think is wise advice!
= Subpacakages =
amcnabb's specfile has a -test subpackage, whereas ivazquez's is -tests. Our
python 2 specfile uses the singular form, so perhaps we should use the singular
form for consistency (also, the main component of it is the "Lib/test"
directory from the upstream tarball, again a singular)
= Configuration =
Both specfiles have %configure with:
--enable-ipv6
--enable-shared
amcnabb's adds: --with-wide-unicode --with-system-ffi
ivazquez's adds: --enable-unicode=ucs4
I definitely want us to have "--with-system-ffi"
I hope that's a useful start on reviewing this.
Should I begin a formal package review of Andrew's package?
--
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the Fedora-package-review
mailing list