brainstorming for UDS-N - Package Selection and Defaults
Matthias Klose
doko at ubuntu.com
Fri Oct 8 08:30:23 BST 2010
On 07.10.2010 21:49, Barry Warsaw wrote:
> On Oct 07, 2010, at 03:02 PM, Matthias Klose wrote:
>
>> On 04.10.2010 01:33, Scott Kitterman wrote:
>
>>> I'd like to see Python 2.7 default when the archive opens and then
>>> assess near feature freeze if we can drop 2.6 support or not.
>>
>> I don't think this is a good idea to start with it as the new
>> default.
>
> I'm afraid that if we don't start with it as the default early in the cycle,
> it won't happen for Natty.
> OTOH, if we make it the default early, I think we
> can more effectively identify and fix lots of ftbfs and .py incompatibilities
> before it affects a large number of users.
starting early is not the same as starting with it as the default, unless you
commit to work on build failures 7x24 for the first week.
> In either case (make it the default now or wait) we do need criteria for
> deciding whether and when to make a change later in the cycle. IOW,
>
> * If we make 2.7 the default asap, what criteria would we use to revert to 2.6
> as the default, and when would we have to make that decision by? Possibly:
> any build or installation failures in main (over and above similar failure
> for 2.6) by the first beta.
>
> * If we keep 2.6 the default, what criteria would we use to make 2.7 the
> default and when would we have to make that by? Possibly: all main packages
> build and install successfully by last alpha.
reverting the default is not an option. plan the work that it can be done.
>> For the last release in the 2.x series it's important to
>> finally get our robust-python-packaging spec implemented. that means:
>>
>> - no symlinking in configure scripts
>
> robust-python-packaging asks whether we should backport PEP 3147 to Python 2,
> and we decided we were not going to do that. Ah, I think you mean this bullet
> item:
>
> * Investigate amount of work to adopt dh_python2 to eliminate symlinks: TODO
yes, this predates lucid.
>> - all .py files distributed in the package, not created at configure
>> time
>
> Do you mean .pyc files in the package? Aren't the .py files already in the
> package?
No, the there is an absurdly high number of __init__.py files created at
installation time.
> Or do you mean running 2to3 at build time for Python 3 compatible
> packages?
no, running 2to3 has nothing to do with our python2.x binary packages.
>> - use of a unique site directory.
>
> This is not currently in the spec.
no, but you found out about different site directories yourself, see #621348.
>> we should start with 2.7 as supported version.
>
> This should be trivial to do. We just have to land my branches. I think
> Scott was going to do this in Debian first.
I doubt it. Debian is frozen for at least one more month.
>>> I'd like to see us support Python3 3.1 and 3.2 with a decision for
>>> what's default near feature freeze.
>>
>> I plan to add the 3.2rc1 to the supported versions (planned for Dec
>> 12), and make 3.2 the default after Jan 16 (the planned 3.2 release).
>
> +1
>
> Just for the record, here is the current Natty spec for
> robust-python-packaging:
>
> https://blueprints.launchpad.net/ubuntu/+spec/other-foundations-n-robust-python-packaging
>
> Note that foundations-m-python-cx-freeze is obsolete; we're not going to do
> it.
>
> Looking at this spec, plus the one from Maverick, and the original Lucid spec,
> we have the following items that are marked TODO. Please respond if you think
> items need to be added, removed, or changed and I will update the Natty spec.
>
> (Maverick spec):
>
> * Update dh_python to support versioned .so files: TODO
I assume this is dh_python3, and already is done.
> * Run 2to3 at build time: TODO
depends, but out of scope of the python(2) specs.
> * Investigate amount of work to adopt dh_python2 to eliminate symlinks: TODO
yes, from my point of view this can only be done when we only ship the last
released python2 version.
> * Add an auto-upgrade test profile that installs all/most of python (including
> universe) and tried to upgrade it and import all modules from 2.6, 2.7: TODO
yes, I had the impression you already did this wit PPA test rebuilds (which got
a lot faster recently).
> * Keep source packages shared b/w 2 and 3 but split if upstream stops shipping
> py2 version: TODO
well, that depends on the packagers decision. what will be do about this?
> (Lucid spec):
>
> * make python-central use "include-links" as default (e.g. in dh_pycentral):
> TODO
obsolete, all these packages should use dh_python2.
> * rebuild all python-central packages in a PPA for testing: TODO
not just these, all.
> * use that PPA and do a test-upgrade (with python-regression test from the
> lts-upgrades spec): TODO
again, all.
> * ensure python applications keep working between --unpack and --configure:
> TODO
yes, I think this is trivial when all symlinks are shipped in the package. just
do it.
Matthias
More information about the ubuntu-devel
mailing list