mNo edit summary |
mNo edit summary |
||
(7 intermediate revisions by 3 users not shown) | |||
Line 31: | Line 31: | ||
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: | * Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=1629080 #1629080] | ||
* Release notes tracking: [https://pagure.io/fedora-docs/release-notes/issue/216 #216] | |||
== Detailed Description == | == Detailed Description == | ||
Line 49: | Line 50: | ||
== Benefit to Fedora == | == Benefit to Fedora == | ||
The removal of Python 2 support is in alignment with [[Changes/Mass_Python_2_Package_Removal|Mass Python 2 Package Removal]] change | The removal of Python 2 support is in alignment with [[Changes/Mass_Python_2_Package_Removal|Mass Python 2 Package Removal]] proposal. FreeIPA depends has a large list of dependencies. The change makes it possible to drop more Python 2 packages. | ||
== Scope == | == Scope == | ||
Line 55: | Line 56: | ||
** Release FreeIPA 4.8.0 until mid January 2019 | ** Release FreeIPA 4.8.0 until mid January 2019 | ||
** Build and deliver FreeIPA 4.8.0 packages before 2019-01-29 | ** Build and deliver FreeIPA 4.8.0 packages before 2019-01-29 | ||
** Add removed packages to ''fedora-obsolete-packages''. | |||
* Other developers: | * Other developers: | ||
Line 60: | Line 62: | ||
** Drop Fleet Command's Python 2 desktop profile package | ** Drop Fleet Command's Python 2 desktop profile package | ||
** Port Ipsilion Project to Python 3 and no longer depend on FreeIPA's Python 2 packages. | ** Port Ipsilion Project to Python 3 and no longer depend on FreeIPA's Python 2 packages. | ||
FreeIPA team is willing to help to aforementioned projects with their port to use Python 3 FreeIPA libraries. | |||
* Release engineering: [https://pagure.io/releng/issue/7760 #7760] There is no releng work needed for this change. | * Release engineering: [https://pagure.io/releng/issue/7760 #7760] There is no releng work needed for this change. | ||
Line 106: | Line 110: | ||
FreeIPA no longer supports Python 2. All ''python2-ipa*'' packages and ''python-ipa*'' aliases are discontinued. | FreeIPA no longer supports Python 2. All ''python2-ipa*'' packages and ''python-ipa*'' aliases are discontinued. | ||
[[Category: | [[Category:ChangeAcceptedF30]] | ||
<!-- 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 19:54, 14 September 2018
FreeIPA Python 2 Removal
Summary
FreeIPA 4.8 will require Python 3.6+ and therefore no longer provide Python 2 packages on Fedora 30.
Owner
- Name: Christian Heimes
- Email: cheimes@redhat.com
- Release notes owner:
Current status
- Targeted release: Fedora 30
- Last updated: 2018-09-14
- Tracker bug: #1629080
- Release notes tracking: #216
Detailed Description
On Fedora 27 to 29, FreeIPA client and server packages use Python 3 default. Additionally FreeIPA provides Python 2 packages. The Python 2 packages are not used by FreeIPA, but are merely provided for backwards compatibility, e.g. Python 2 applications that utilize python2-ipaclient to communicate with a FreeIPA server.
The FreeIPA upstream project is going to drop support for Python 2.7 in the upcoming FreeIPA release 4.8.0. Python 2 support is not only causing development and testing overhead. It's also blocking improvements like using new python-based 389-DS installer, use of new Python features, and more. The removal of Python 2 support was announced on the FreeIPA development on 2018-09-03.
Removed packages
- python2-ipalib
- python2-ipaclient
- python2-ipaserver
- python2-ipatests
- python2-ipa-desktop-profile-client (dependency)
Benefit to Fedora
The removal of Python 2 support is in alignment with Mass Python 2 Package Removal proposal. FreeIPA depends has a large list of dependencies. The change makes it possible to drop more Python 2 packages.
Scope
- Proposal owners:
- Release FreeIPA 4.8.0 until mid January 2019
- Build and deliver FreeIPA 4.8.0 packages before 2019-01-29
- Add removed packages to fedora-obsolete-packages.
- Other developers:
- Port Fleet Commander's fc-admin to Python 3 and no longer depend on FreeIPA's Python 2 packages.
- Drop Fleet Command's Python 2 desktop profile package
- Port Ipsilion Project to Python 3 and no longer depend on FreeIPA's Python 2 packages.
FreeIPA team is willing to help to aforementioned projects with their port to use Python 3 FreeIPA libraries.
- Release engineering: #7760 There is no releng work needed for this change.
- List of deliverables: N/A (no new feature, just package removal)
- Policies and guidelines: N/A (not needed for this Change)
- Trademark approval: N/A (not needed for this Change)
Upgrade/compatibility impact
The removal of Python 2 support will not affect FreeIPA server or client systems. However 3rd party applications and scripts may be affected. These applications and scripts must be ported to Python 3.
On upgrade from Fedora 29, previously installed python2-ipa* packages cannot be retained. All python[23]-ipa* packages have a hard version dependency on common files with a requires line like Requires: freeipa-common = %{version}-%{release}. This requires cannot be satisfied for existing python2-ipa*. Therefore python2-ipa* packages have to added to fedora-obsolete-packages package. This will ensure that the Python 2 packages are uninstalled on system upgrade.
How To Test
- A fresh Fedora 30 installation will no longer have python2-ipa* packages available.
- On upgrade from Fedora 29, all python2-ipa* packages are uninstalled.
User Experience
N/A
Dependencies
- fedora-obsolete-packages
- ipsilon-tools-ipa
- python2-ipa-desktop-profile-client
- fleet-commander-admin
Contingency Plan
- Contingency mechanism: Keep shipping FreeIPA 4.7
- Contingency deadline: 2019-01-31
- Blocks release? No
- Blocks product? N/A
Documentation
This page is the main documentation.
Also see https://pythonclock.org/ and Mass Python 2 Package Removal.
Release Notes
FreeIPA no longer supports Python 2. All python2-ipa* packages and python-ipa* aliases are discontinued.