Filing Bugs for Python 3 Switch

Bohuslav Kabrda bkabrda at redhat.com
Thu Jan 29 09:35:14 UTC 2015


----- Original Message -----
> On Wed, 28 Jan 2015 11:09:08 -0500 (EST)
> Bohuslav Kabrda <bkabrda at redhat.com> wrote:
> 
> > Hi,
> > I just filed 2 bugs [A], [B] for the Python 3 switch [C] and I
> > realized that I should probably follow the mass bug filing policy. As
> > I've said previously, we've already had both Python 2 and Python 3 on
> > LiveCDs for few releases, so it makes sense to move as much as
> > possible to Python 3. My intention is to mass file bugs only for
> > "applications" (see the second item in second list at [D]) - in
> > short, these are packages for which it doesn't make sense to
> > introduce python3- subpackage, but it only makes sense to rebuild
> > them with Python 3. The mass bug filing policy suggests providing
> > text of the bug for review, so here it is:
> 
> So, at today's FESCo meeting there was a good deal of discussion about
> python as default:
> http://meetbot.fedoraproject.org/fedora-meeting/2015-01-28/fesco.2015-01-28-18.02.log.html#l-41
> 
> in which we agreed defer this to F23, file bugs against rawhide after
> branch (+6,0,0)

I really don't get this. I was over the log and didn't find a compelling argument as to why this should be postponed. Can someone sum the arguments up, please? (I'm not acting hurt or something like that here. I really don't understand why you decided the way you did and what benefit that decision will bring.)
I've noted several times on this list, that this is a "best effort" change. If package X isn't ported upstream, then we don't need to switch it (be it Anaconda or anything else). Postponing this change won't help anything, or will it? OTOH if we do accept the change for F22, we'll give everyone strong signal that this is something serious and people might start to get really interested and find out why going to Python 3 is better than the current state.

> Not speaking for FESCo, but myself, if you think there is still
> advantage in trumpting the python3 changes that will land in f22,
> please do rescope the change and resubmit. I realize this is a
> process thats going to take a while to complete.
> 
> Now, on to the mass bug filing...
> 
> Do you have a list of packages you intend to file against?

Not a complete one, no. I do have the list of packages that we need to port to have minimal cloud image/workstation LiveCD (these are the ~10 that I mentioned in the previous mail):
cloud image: audit cloud-init heat-cfntools
workstation livecd (audit is in both): audit bind caribou environment-modules gdb gettext gnome-abrt gupnp nfs-utils pidgin sos telepathy-gabble totem

(ok, so it's 15)

> > Since your package requires Python and is considered an application
> > as per [1], I'd like to ask you to rebuild it with Python 3. Please
> > see recommendations and notes at [2]. Note: this switch should only
> > be done assuming you need to do none or very little downstream
> > patching of upstream source. If upstream source doesn't work with
> > Python 3, it's ok to stay with Python 2.
> > 
> > Some general notes:
> > If your package depends on Python because of a Python script that
> > has /usr/bin/python in hashbang, you need to change this
> > to /usr/bin/python3. All "Requires" and "BuildRequires" on Python
> > extension modules have to be changed from "python-foo" to
> > "python3-foo" in order for this change to work. If your package is an
> > "application" (let's call it "foo") and it also generates a
> > subpackage with Python bindings (i.e. "python-foo" or "foo-python"),
> > you should provide a python3 subpackage ("python3-foo" or
> > "foo-python3") and use that as dependency of other subpackages.
> > 
> > [1] http://fedoraproject.org/wiki/Changes/Python_3_as_Default
> > [2] https://fedoraproject.org/wiki/Packaging:Python#Guidelines
> 
> I'd prefer people make these changes after we branch in rawhide, but as
> always it's going to be up to the maintainer(s) what is best for their
> packages.

I'm not sure I understand. So you're saying that the change is deferred but at the same time everyone can move to Python 3 if they wish. Since I've already said that this is "best effort" and I don't mean to *force* anyone to move, I don't see how this is different. Does this mean that I can still ask maintainers of the packages mentioned above to move to Python 3 (and they can move if they wish to do so)?

> > If everyone agrees, I'll send a mail to devel-announce, saying that
> > we're switching to Python 3 and all maintainers should rebuild with
> > it, assuming that upstream sources are Python 3 compatible. After a
> > week or so I'll file bugs for the remaining components. I haven't yet
> > determined the number of affected packages, since I'm mostly
> > interested in packages that are on LiveCD/cloud images - there are
> > ~10 of these that don't have bugs filed.
> 
> Thats a pretty small number.
>  
> kevin

Thanks,
Slavek


More information about the devel mailing list