Changes for F22 -- Python 3 as Default

2013-11-04 Thread Toshio Kuratomi
The Change page for python3 as default has a pretty empty entry for policies
and guidelines.  Just, "discuss with FPC"; no list of what to actually change.
We should start working on fleshing that out.

Here's one that should be fairly easy:

* https://fedoraproject.org/wiki/Packaging:Python#Guidelines : Currently
  reads:

If the executables provide the same functionality independent of whether
they are run on top of Python 2 or Python 3, then only one version of the
executable should be packaged. Currently it will be the python
2 implementation, but once the Python 3 implementation is proven to work,
the executable can be retired from the python 2 build and enabled in the
python 3 package. Be sure to test the new implementation. Transitioning from
python2 to python3 is left to individual package maintainers except for
packages in Fedora's critical path. For these, we want to port to python3
versions in the same Fedora release if possible.

Change that to:

If the executables provide the same functionality independent of whether 
they are run on top of Python 2 or Python 3, then only one version of the
executable should be packaged.  In F22 and later, this should be the Python 3
version.  In F21 and earlier this is left to the individual package
maintainers '''except''' for packages in Fedora's critical path.  Those should
remain on the Python 2 version so that we don't drag in both python2 and
python3 stacks on a minimal system.

I think this change could go into FPC's queue to approve now because the
differences are all per-version so it does not causes problems for packages
which are not yet thinking about F22.

@churchyard, as part of this we should probably come up with another list of
packages that do not have python3 versions for the packages in the critical
path. (btw, I'm much happier with the text of the latest round of bug
reports, thanks).  (Note though -- I think fesco still likes us to pass
anything we're going to mass file bugs for to them (or to the devel mailing
list?) to review first because mass filings can affect a lot of people.

Final note: There were three changes to the python guidelines approved by
FPC in this ticket: https://fedorahosted.org/fpc/ticket/327#comment:9

Unfortunately, both bkabrda and I have been pulled away to work on SCL
drafts so the three changes have not been written up.  If someone would be
willing to write up those changes as a new version of the guidelines page::
  http://fedoraproject.org/wiki/Packaging:Python

I'd be able to make time to review that and merge it into the Guidelines.

Thanks,
-Toshio


pgpYLWrcomEN4.pgp
Description: PGP signature
___
python-devel mailing list
[email protected]
https://admin.fedoraproject.org/mailman/listinfo/python-devel

Removing python-setuptools-devel backwards compat

2013-11-04 Thread Toshio Kuratomi
In November of 2009, in time for Fedora 13, we solved a packaging issue in
the main python package that allowed us to remove a split in our
python-setuptools package.  Instead of needing a separate
python-setuptools-devel subpackage for easy_install the python-setuptools
package could now contain all of the functionality of python-setuptools.
To ease with package migration we added an Obsoletes and Provides tag to the
python-setuptools package at that time so that packages, kickstarts, etc
which required python-setuptools-devel would not break.

Fast forward to the present day:

It's November of 2013.  Rawhide is Fedora 21.  I'd like to drop the
backwards compatibility Provides (and Obsoletes) from the python-setuptools
package.  However, there are currently 166 packages BuildRequire'ing
python-setuptools-devel.  If owners would care to fix them before I remove
the backwards compatibility there shouldn't be any surprises in mass
rebuilds or late-night package updates later.  The changes are easy enough
that provenpackagers could step in if owners don't update.

Changes are simply:

-BuildRequires: python-setuptools-devel
+BuildRequires: python-setuptools

(Same for Requires: lines but AFAICT I fixed the last of those today)

Here's the list:

Listing by package:

| PyOpenGL | fcami, cicku
| TurboGears2 | toshio, lmacken, ralph, vicodan
| antlr | mizdebsk, mjakubicek
| babel | fschwarz, jcollie, nphilipp
| bodhi | lmacken
| bzr-fastimport | dcallagh
| catkin | rmattes
| certmaster | ssalevan, alikins, wakko666
| cloud-init | mattdm, apevec, pbrady, gholms
| clusterPy | volter
| cobbler | jimi, shenson
| django-typepad | lbazan
| euca2ools | gholms
| fedmsg | lmacken, ralph
| fedmsg-notify | lmacken, ralph
| firstaidkit | msivak
| func | gnat, ssalevan, alikins, wakko666
| fuse-python | peter
| gaupol | lucilanga
| geome | pwouters
| gflags | peter
| glances | madko
| gnome-shell-search-fedora-packages | ralph
| gnome-shell-search-github-repositories | ralph
| gnome-shell-search-pinboard | ralph
| grin | terjeros
| hgsvn | terjeros
| libconcord | swt2c, silfreed
| libpfm | wcohen
| nml | heffer
| nwsclient | spot
| openerp | leamas
| ovirt-engine-cli | oschreib, jhernand
| phatch | jcapik
| planet | limb
| protobuf | mizdebsk, jlaska, abbot, konradm
| pss | kushal
| pssh | terjeros
| pycolumnize | kushal
| pykickstart | bcl, clumens
| pymodbus | chkr
| pymol | timfenn
| pyrasite | lmacken
| python-Coherence | hadess, thias
| python-Levenshtein | dwayne
| python-PSI | topdog
| python-TurboMail | fschwarz, toshio, lmacken
| python-altgraph | fab
| python-amara | jamatos
| python-atfork | jlaska
| python-batchhttp | puiterwijk
| python-blivet | bcl, dlehman
| python-boto | robert, gholms
| python-bugzilla | dzickus, crobinso, wwoods
| python-clientform | lmacken
| python-confparser | dougsland, aquini
| python-ctags | kushal
| python-daap | jcollie
| python-decoratortools | toshio, lmacken
| python-demjson | thm
| python-di | msivak
| python-dictclient | ricky
| python-django-ajax-selects | lbazan
| python-django-threadedcomments | lbazan
| python-dotconf | mjakubicek
| python-dtopt | ralph, ricky
| python-editdist | pwouters
| python-elfdata | kushal
| python-enum | maxamillion
| python-fastimport | dcallagh
| python-feedcache | lmacken
| python-flup | till
| python-futures | terjeros
| python-gnutls | gnat, peter
| python-googlevoice | jcollie
| python-guppy | peter
| python-html2text | mschwendt, thl
| python-httplib2 | awjb, dchen
| python-iniparse | timlau
| python-isodate | jmatthews, jlaska
| python-jinja | toshio, thm
| python-kid | toshio, till, lmacken
| python-louie | thias
| python-markupsafe | kylev, lmacken
| python-mechanize | lmacken
| python-meh | clumens, vpodzime
| python-mpd | hguemar
| python-musicbrainz2 | jcollie, alexlan
| python-netifaces | rrix
| python-nss | jdennis
| python-numeric | rstrode, rhughes, alexlan, johnp, alexl, caolanm, ssp,
mbarnes, hadess, mclasen, caillon
| python-oauth | sdz
| python-openid | jcollie
| python-pandas | kushal
| python-peak-rules | kylev, lmacken
| python-peak-util-symbols | lmacken
| python-pmw | timfenn
| python-ptrace | terjeros
| python-pyramid | lmacken, ralph, rossdylan
| python-pysctp | nhorman
| python-rdfextras | pingou
| python-rdflib | dmalcolm, pingou
| python-remoteobjects | bkabrda
| python-repoze-lru | lmacken, ralph
| python-repoze-tm2 | lmacken
| python-repoze-what | lmacken
| python-repoze-what-plugins-sql | lmacken
| python-repoze-what-pylons | spot
| python-repoze-what-quickstart | spot
| python-repoze-who-friendlyform | spot
| python-repoze-who-plugins-sa | lmacken
| python-repoze-who-testutil | spot
| python-rosdep | rmattes
| python-rosinstall | rmattes
| python-rospkg | rmattes
| python-rpmfluff | jhutar
| python-ruledispatch | toshio, lmacken
| python-scripttest | mbacovsk
| python-shapely | volter
| python-shove | lmacken
| python-signalfd | jlaska
| python-simpy | sarantis
| python-sippy | peter
| python-spiffgtkwidge