Difference between revisions of "StarlingX/Python2"
Austin.sun (talk | contribs) (→Python3 Transition Status) |
Austin.sun (talk | contribs) (→Team Objective / Priorities) |
||
Line 8: | Line 8: | ||
=== Team Objective / Priorities === | === Team Objective / Priorities === | ||
Python 2 support will be ending in the community in 2020. We have a lot of Python2 code that needs to be converted to be 2/3 compatible. | Python 2 support will be ending in the community in 2020. We have a lot of Python2 code that needs to be converted to be 2/3 compatible. | ||
− | Guide for the compatible code: | + | * Guide for the compatible code: |
− | http://python-future.org/compatible_idioms.html | + | http://python-future.org/compatible_idioms.html |
+ | * OpenStack Python3 reference | ||
+ | https://wiki.openstack.org/wiki/Python3#Common_patterns | ||
=== Story Board Tags === | === Story Board Tags === |
Revision as of 00:45, 26 September 2018
Contents
Python2 to Python3 Transition Sub-project
Team Information
- Project Lead: Cindy Xie <cindy.xie@intel.com>
- Technical Lead:
- Contributors: Austin Sun <austin.sun@intel.com>; Yan Chen <yan.chen@intel.com>
Team Objective / Priorities
Python 2 support will be ending in the community in 2020. We have a lot of Python2 code that needs to be converted to be 2/3 compatible.
- Guide for the compatible code:
http://python-future.org/compatible_idioms.html
- OpenStack Python3 reference
https://wiki.openstack.org/wiki/Python3#Common_patterns
Story Board Tags
All story board stories created for this team should use the tag "stx.python2" and the prefix [Python2].
Team Work Items
Stories / Bugs
- Story Board
- Launchpad Bugs
- All
- stx.2018.10
- There is an Etherpad with some notes here.
- There is a Story with a good summary of the work needed here.
Deliverables for this sub-project
- All python code in StarlingX is python 3 compatible
- All python repos have Zuul jobs which check for python 3 compatibility
- All Zuul jobs are made Voting
- Once all the Python 2 code is removed, any python 2 support packages are removed from the build and build mirror
ToDo
- Turn the Notes in the Etherpad into Stories
- Write stories for each of the repos in the table below and list the Links in the table below
- We also use packages that have Python2 code. We need to replace and/or update such packages. Need to identify that list.
- Once all the P2 code is removed we need to remove the P2 dependencies
Python3 Transition Status
Project | Python3 Compatible (Y/N) | Python Version | Links | Zuul checker enabled | Zuul checker made Voting | Comments |
---|---|---|---|---|---|---|
stx-clients | na | No Python Code | N | N | ||
stx-config | N | https://storyboard.openstack.org/#!/story/2003433 | N | N | Risk: 1. grubby-8.28 is used in stx-config/puppet-manifests for system config, Python 2.7 only and no Python 3 version. | |
stx-fault | Y | Python 2/3 compatible | Merged: https://storyboard.openstack.org/#!/story/2003310 | Y | Y | |
stx-gplv2 | na | No Python Code | N | N | ||
stx-gplv3 | N | going to be merged | N | N | stx-gplv3/python-keyring patches, need upgrade srpm and rework the patches. | |
stx-gui | N | https://storyboard.openstack.org/#!/story/2003432 | N | N | ||
stx-ha | N | https://storyboard.openstack.org/#!/story/2003430 | N | N | ||
stx-integ | N | can start working now (10 patches) | https://storyboard.openstack.org/#!/story/2002909 | N | N | Risk: stx-integ/extended/python-cephclient (old cephclient with WRS patches, but no Python 3 version) |
stx-metal | Y | Python 2/3 compatible | Merged:https://storyboard.openstack.org/#!/story/2003426 | Y | Y | |
stx-nfv | N | can start working now (11 patches) | https://storyboard.openstack.org/#!/story/2003427 | N | N | |
stx-update | N | can start working now (7 patches) | Merged:https://storyboard.openstack.org/#!/story/2003429 | Y | Y | Risk: 1. createrepo-0.9.9 is used by cgcs-patch-controller, Python 2.7 only and no Python 3 version |
stx-upstream | Y | Python 2/3 compatible | Merged:https://storyboard.openstack.org/#!/story/2003428 | Y | Y | |
stx-utils | na | No Python Code | N | N | ||
stx-docs | N | N | N | |||
stx-root | na | Build-time enviroment | N | N | ||
stx-tools | na | Build-time enviroment | N | N |
Staging Project | Python3 Compatible (Y/N) | Python Version | Links | Zuul checker enabled | Zuul checker made Voting | Comments |
---|---|---|---|---|---|---|
stx-ceilometer | Y | Python 3.5 | N | N | ||
stx-ceph | Y | Python 3 (minor not specified) | N | N | latest version specified Python 3.4 | |
stx-cinder | Y | Python 2.7 + Python 3 compatible patches | N | N | Latest version has Python 3.5 support. | |
stx-glance | N | Python 2.7 (blocked) | N | N | ||
stx-heat | Y | Python 3.5 | N | N | ||
stx-horizon | Y | Python 3.5 | N | N | ||
stx-ironic | N | Python 2.7 | N | N | Not used now. | |
stx-keystone | Y | Python 3.5 | N | N | ||
stx-kingbird | Y | Python 3.4 | N | N | latest version still Python 3.4 | |
stx-libvirt | Y | Python 3 (minor not specified) | N | N | ||
stx-magnum-ui | Y | Python 3.5 | N | N | ||
stx-murano | Y | Python 3.5 | N | N | ||
stx-murano-dashboard | Y | Python 3.5 | N | N | ||
stx-networking-bgpvpn | Y | Python 3.5 | N | N | ||
stx-networking-odl | Y | Python 3.5 | N | N | ||
stx-networking-sfc | Y | Python 3.5 | N | N | ||
stx-neutron | Y | Python 3.5 | N | N | ||
stx-neutron-dynamic-routing | Y | Python 3.5 | N | N | ||
stx-neutron-lib | Y | Python 3.5 | N | N | ||
stx-nova | Y | Python 3.5 | N | N | ||
stx-openstacksdk | Y | Python 3.5 | N | N | ||
stx-python-ceilometerclient | Y | Python 3.5 | N | N | ||
sx-python-cinderclient | Y | Python 3.5 | N | N | ||
stx-python-glanceclient | Y | Python 3.5 | N | N | ||
stx-python-kingbirdclient | Y | Python 3.4 | N | N | latest version still Python 3.4 | |
stx-python-magnumclient | Y | Python 3.5 | N | N | ||
stx-python-muranoclient | Y | Python 3.5 | N | N | ||
stx-python-neutronclient | Y | Python 3.5 | N | N | ||
stx-python-novaclient | Y | Python 3.5 | N | N | ||
stx-qemu | N | Python 2.7 | N | N | python scripts under folder qemu/scripts and qemu/tests, but only dump-guest-memory.py is packed into the rpm. | |
stx-ryu | Y | Python 3.4 | N | N | latest version still Python 3.4, used by neutron. |