From Fedora Project Wiki
(Documentation)
 
(8 intermediate revisions by 3 users not shown)
Line 53: Line 53:
 
CLOSED as NEXTRELEASE -> change is completed and verified and will be delivered in next release under development
 
CLOSED as NEXTRELEASE -> change is completed and verified and will be delivered in next release under development
 
-->
 
-->
* Tracker bug: <will be assigned by the Wrangler>
+
* Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=1269756 #1269756]
  
 
== Detailed Description ==
 
== Detailed Description ==
Line 119: Line 119:
  
 
== Documentation ==
 
== Documentation ==
[https://docs.python.org/3.6/whatsnew/3.5.html#porting-to-python-3-5 Porting to Python3.5]
+
[https://docs.python.org/3.5/whatsnew/3.5.html#porting-to-python-3-5 Porting to Python3.5]
 +
 
 +
[https://wiki.python.org/moin/PortingToPy3k/34to35 Porting from Python 3.4 to 3.5]
 +
 
 +
[https://lwn.net/Articles/650904/ Python 3.5 is on its way]
  
 
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
 
<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
 
  
 
== Release Notes ==
 
== Release Notes ==
[https://docs.python.org/3.6/whatsnew/3.5.html What's new in Python3.5]
+
[https://docs.python.org/3.5/whatsnew/3.5.html What's new in Python3.5]
 +
 
 +
 
  
[[Category:ChangePageIncomplete]]
+
[[Category:ChangeAcceptedF24]]
 
<!-- When your change proposal page is completed and ready for review and announcement -->
 
<!-- When your change proposal page is completed and ready for review and announcement -->
 
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
 
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->

Latest revision as of 09:27, 13 October 2015



Python 3.5

Summary

Update the Python 3 stack in Fedora from Python 3.4 to Python 3.5.

Owner


Current status

Detailed Description

Python 3.5 adds numerous features and optimizations. See the upstream notes at What's new in 3.5.

Benefit to Fedora

Fedora aims to showcase the latest in free and open source software - we should have the most recent stable release of Python 3.

Scope

As Python3.5 was already released as a final release and Debian had already updated their Python to v3.5 we could expect all the core (most used) Python modules to be already Python3.5 compatible.

There is 973 packages that (Build)Requires python3 (in F24). Also it is important to note that Python3 is now the default interpreter for Fedora therefore it is crucial part of the distribution (anaconda and dnf run on Python).


  • Proposal owners:
    • Make a request to create a f24-python3 side-tag for Python3.5 rebuild.
    • Rebuild gdb without python3 support to have minimal buildroot python3 free as we can't have (currently) simultaneously installed both Python3.4 and Python3.5 versions within the buildroot.
    • Build Python3.5.
    • Rebuild gdb and all the packages marked as core within this tag. We consider all packages shipped by default (and their dependencies) on Fedora DVD to be core packages.
    • Rebuild rest of the packages in mass rebuild


  • Other developers:

Owners of packages that fail to rebuild will be asked using bugzilla to fix or remove their packages from the distribution. They can rebuild their packages themselves if interested using fedpkg build --target f24-python3. We will keep the list of rebuilt packages/packages in queue publicly accessible.


  • Release engineering:

Mass rebuild rest of the packages.


  • Policies and guidelines:

None

Upgrade/compatibility impact

All the packages that depends on Python3 must be rebuild. User written Python 3 scripts/applications may require a small amount of porting, but mostly Python 3.4 is forward compatible with Python 3.5.

How To Test

Interested testers do not need special hardware. If you have a favorite Python 3 script, module, or application, please test it with Python 3.5 and verify that it still works as you expect.

How to get Python3.5:

  • Get mock config

sudo wget -O /etc/mock/python35.cfg https://rkuska.fedorapeople.org/fedora-rebuild.cfg

  • Initialize and test in mock


User Experience

Regular distro users shouldn't notice any change in system behavior other than the Python3 interpreter will be in version v3.5.

Dependencies

See scope section.

Contingency Plan

  • Contingency mechanism: Don't merge f24-python3 side-tag.
  • Contingency deadline: TBD
  • Blocks release? No


Documentation

Porting to Python3.5

Porting from Python 3.4 to 3.5

Python 3.5 is on its way


Release Notes

What's new in Python3.5