Features/Python3
Summary
Migration from Python 2 to Python 3, while continuing to support Python 2 where possible.
Owner
- Name: James Cameron
- Email: quozl@laptop.org
Current status
- Targeted release: 0.115
- Last updated: 2019-08-29
- Percentage of completion: 10%
Detailed Description
Port to Python 3 via the Six environment.
Security updates and upstream support for Python 2 are due to be withdrawn, and this will prevent running Sugar on Linux.
Downstream distributions are removing Python 2 packages.
Benefit to Sugar
Benefit to the platform is continued availability. Activities will have access to Python 3 language features. Systems with Python 2 available will continue to run Python 2 activities.
Scope
Components to be changed include datastore (carquinyol), toolkit (sugar3), gwebsockets, artwork, shell (jarabe), and Sucrose activities.
Specific changes are tracked at https://github.com/orgs/sugarlabs/projects/1
UI Design
No UI impact.
How To Test
https://github.com/sugarlabs/sugar/blob/master/docs/development-environment.md#native-sugar
User Experience
Systems without Python 2 available will have a severe reduction in available activities.
Dependencies
None.
Contingency Plan
None. Sugar will be in jeopardy.
Documentation
https://github.com/sugarlabs/sugar-docs/blob/master/src/python-porting-guide.md
Release Notes
Sugar is ported to Python 3.
Comments and Discussion
- No coordinated mailing list discussion has occurred.
- See the discussion tab for this feature.