From Fedora Project Wiki
m (no impact with Release Engineering)
(no ansible-node change)
Line 26: Line 26:
<!-- A sentence or two summarizing what this change is and what it will do. This information is used for the overall changeset summary page for each release.  
<!-- A sentence or two summarizing what this change is and what it will do. This information is used for the overall changeset summary page for each release.  
Note that motivation for the change should be in the Motivation section below, and this part should answer the question "What?" rather than "Why?". -->
Note that motivation for the change should be in the Motivation section below, and this part should answer the question "What?" rather than "Why?". -->
Change the comps groups python-classroom, engineering-and-scientific, development-libs, ansible-node, cloud-management, font-design, mysql, robotics-suite, authoring-and-publishing and electronic-lab to use python3 packages instead of the python2 ones. Remove python-web group.
Change the comps groups python-classroom, engineering-and-scientific, development-libs, cloud-management, font-design, mysql, robotics-suite, authoring-and-publishing and electronic-lab to use python3 packages instead of the python2 ones. Remove python-web group.


== Owner ==
== Owner ==
Line 80: Line 80:


Replace python-devel with python3-devel. Remove python-ldap and python-ZODB3 (they have python3 ready variants, but so does plenty of others, we don't see a point of those being in the group).
Replace python-devel with python3-devel. Remove python-ldap and python-ZODB3 (they have python3 ready variants, but so does plenty of others, we don't see a point of those being in the group).
=== ansible-node ===
Replace python2-dnf with python3-dnf, libselinux-python with python3-libselinux. See also [[Changes/Ansible_python3_default]].


=== cloud-management ===
=== cloud-management ===
Line 108: Line 104:


Replace python-myhdl with python3-myhdl.
Replace python-myhdl with python3-myhdl.
=== Not changed: ansible-node ===
ansible-node will '''stay python2 based''' as explained in [https://pagure.io/fedora-comps/issue/290 pagure.io/fedora-comps/issue/290]


== Benefit to Fedora ==
== Benefit to Fedora ==

Revision as of 23:07, 10 July 2018


Update comps to use python3

Summary

Change the comps groups python-classroom, engineering-and-scientific, development-libs, cloud-management, font-design, mysql, robotics-suite, authoring-and-publishing and electronic-lab to use python3 packages instead of the python2 ones. Remove python-web group.

Owner

  • Name: Miro Hrončok
  • Email: mhroncok@redhat.com
  • Release notes owner:

Current status

  • Targeted release: Fedora 29
  • Last updated: 2018-07-10
  • Tracker bug: <will be assigned by the Wrangler>

Detailed Description

As the whole distro moves towards Python 3 as "the default" and with the upstream EOL of Python 2 set to 2020-01-01, we want to update comps to use Python 3 packages instead of Python 2 ones.

Here is the list as of 2017-07-09, note that it might slightly change as long as changes in comps are done prior to this change happening.

python-classroom

Remove all python2 packages (except python2-virtualenv as long as it brings the virtualenv command).

python-web

Remove this group. It has weird stuff and the motivation for it is long lost.

engineering-and-scientific

Replace python2-matplotlib, python2-scipy, python2-biopython, python2-cvxopt, python2-networkx, python2-theano with python3 counterparts.

development-libs

Replace python-devel with python3-devel. Remove python-ldap and python-ZODB3 (they have python3 ready variants, but so does plenty of others, we don't see a point of those being in the group).

cloud-management

Replace python-boto with python3-boto; python-libcloud with python3-libcloud; python-openstackclient with python3-openstackclient.

font-design

Replace python-fontMath with python3-fontMath. Remove retired python-compositor, python-robofab, python-ufo2fdk.

mysql

Replace python-mysql with python3-mysql.

robotics-suite

Replace python-bloom, python-catkin_lint, python-catkin_pkg, python-catkin_tools, python-rosdep, python-rosdistro, python-rosinstall, python-rosinstall_generator, python-rospkg, python-vcstools and python-wstool with their python3- counterparts.

authoring-and-publishing

Replace python-docutils with python3-docutils and python-manuel with python3-manuel.

electronic-lab

Replace python-myhdl with python3-myhdl.

Not changed: ansible-node

ansible-node will stay python2 based as explained in pagure.io/fedora-comps/issue/290

Benefit to Fedora

Users won't get legacy Python stuff with comps groups, but new Python 3 stuff. See also Finalizing Fedora's Switch to Python 3.

Scope

  • Proposal owners:

Submit a PR to fedora-comps with the described changes.

  • Other developers: N/A (not a System Wide Change)
  • Policies and guidelines: N/A (not a System Wide Change)
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

N/A (not a System Wide Change)

How To Test

N/A (not a System Wide Change)

User Experience

When installing a group, Python 2 is not pulled in as a dependency unless actually needed.

Dependencies

N/A (not a System Wide Change)

Contingency Plan

  • Contingency mechanism: (What to do? Who will do it?) N/A (not a System Wide Change)
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? No
  • Blocks product? No

Documentation

N/A (not a System Wide Change)

Release Notes

TBD