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