I've tried to send this to the list several times, but it hasn't gone through. I received no responses, but now at least I'm glad to know that it wasn't y'all ignoring me, just lists.ubuntu.com. ;) Let's see if I've cleared up my mail issues...
Rather than resend, I'll just summarize the current state as I know it. Over the last couple of weeks, I did some analysis on the archive, looking for packages that depend on Python, but didn't include Python 2.7 support. I wrote some scripts at lp:~barry/+junk/pydeps and specifically the deps2.py script. While the script isn't perfect, I think it's good enough to determine where we are with main. The script produces a few false positives, but from spot checking the output, I found no false negatives. The summary is that right now, I know of no packages in Natty main that explicitly depend on a Python < 2.7. There are a few that depend on > Python 2.6; that's not ideal, but I think it's fine, and possibly moot (see below). (The first time I tried to send this message on 2011-01-24, there were a few packages that were broken but AFAIK, all have been fixed now.) I have not done a similar analysis on universe. This is just the first level of Python 2.7 support analysis. The next test I ran was to actually install in a Natty VM all main packages that depend on Python, looking for failures-to-install. A recent example was bug 685476 on mgltools-viewerframework. This included an assignment to __debug__ as an attribute of an object, which is not allowed in Python 2.7 (it wasn't strictly legal in 2.6 either, but the interpreter did not prevent it until 2.7). These are the kinds of bugs you can only find when you install the package because they only show up when the modules are byte-compiled. Since my first attempt at emailing this summary, I've fixed a number of packages that had these kinds of install-time failure. Examples included kubuntu-full, python-avogadro, python-qscintilla2, and python-vigra (since demoted by Colin). As of today, all have been fixed and are now installable. It's still possible that packages have incompatibilities with Python 2.7, but you can only find them when you use the code, and that's not something I can reasonably test. So, if you encounter bugs related to Python 2.7 support, please file them as usual against the offending package, and add the official 'python27' tag to the bug. So now that Natty main support for Python 2.7 looks pretty good, the question is: do we drop Python 2.6 from Natty? Pro-removal: * It reduces the CD space requirements by including only one shared library per extension module. I forget exactly how much can be reclaimed, though IIRC doko posted some numbers on that (10MB or thereabouts?). * Makes our life simpler by only having to support one Python 2 version from here on out, and that being the one supported by upstream Python long term. Con-removal: * No overlap in Python 2 versions between LTS, which complicates upgrade plans for server applications such as Launchpad. If necessary, we can solve the LTS upgrade problem similar to the way we solved it for Lucid; we create an official PPA with Python 2.6 and port over the stack required by services such as Launchpad. 3rd parties still requiring Python 2.6, could create their own PPA, dependent on ours, and add whatever packages they need to the former. Of course, we could also keep Python 2.6 and Python 2.7 until after 12.04. There seems to be lots of folks both for and against removal of Python 2.6. It's worth discussion here, but we need to make a final decision for Natty by feature freeze later this month. Cheers, -Barry
signature.asc
Description: PGP signature
-- ubuntu-devel mailing list [email protected] Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel
