On Fri, Apr 26, 2019 at 3:13 AM Peter Robinson <[email protected]> wrote:
> On Thu, Apr 25, 2019 at 7:20 PM Walter Bender <[email protected]> > wrote: > >> gives us a year.. hopefully we'll make great strides during GSoC 2019 >> > > Except it doesn't really. There are other things that are being actively > removed. For example the python2 bindings for xapian, which is used by > sugar-datastore, fails to build because one of it's build deps rebased to a > new major version that dropped python2 support. > Obviously this is in the critical path. > > We really need to have the core sugar running as python3 in Fedora 31, in > time for Beta which freezes late August, and core Activities moved over > with just the stragglers and cleanup for for Fedora 32. > > So it gives us a year to complete it all, we really need to have the major > pieces done by late summer. > > To begin this how many of the Activities that care about the old GTK2 > sugar-toolkit do we care about: > > # dnf repoquery --whatrequires sugar-toolkit > sugar-castle-0:23-12.fc29.noarch > sugar-connect-0:22-23.fc30.noarch > sugar-countries-0:33-16.fc30.noarch > sugar-deducto-0:9-13.fc29.noarch > sugar-flipsticks-0:13-13.fc30.noarch > sugar-kuku-0:5-8.fc29.noarch > sugar-labyrinth-0:16-11.fc30.noarch > sugar-playgo-0:5-20.fc30.noarch > sugar-srilanka-0:3-8.fc29.noarch > sugar-starchart-0:16-9.fc29.noarch > sugar-view-slides-0:8-20.fc30.noarch > sugar-xomail-0:0-0.19.20090128.fc30.noarch > > Most of these should be pretty straight-forward to migrate. With the exception of labyrinth, none seem mission critical. But all of them would be nice. > If there's ones there we don't think will be migrated to gtk3 we should > just retire them now in Fedora 31 and cross them off the list. > > Peter > > [1] https://fedoraproject.org/wiki/Releases/31/Schedule > > On Thu, Apr 25, 2019 at 2:09 PM Alex Perez <[email protected]> wrote: >> >>> FYI >>> >>> >>> -------- Forwarded Message -------- >>> Subject: Fedora 32 System-Wide Change proposal: Retire Python 2 >>> Date: Wed, 24 Apr 2019 17:04:39 -0400 >>> From: Ben Cotton <[email protected]> <[email protected]> >>> Reply-To: [email protected] >>> To: Development discussions related to Fedora >>> <[email protected]> <[email protected]>, >>> [email protected] >>> >>> https://fedoraproject.org/wiki/Changes/RetirePython2 >>> >>> == Summary == >>> The {{package|python2}} package and all its subpackages will be >>> removed from Fedora 32. >>> A legacy {{package|python27}} package for developers and users will >>> be provided. >>> All packages in Fedora that need Python 2 to run will be removed from >>> Fedora 32 regardless of their dependencies. >>> All packages in Fedora that need Python 2 to build will be removed >>> from Fedora 32 regardless of their dependencies. >>> Exceptions can be granted by FESCo. >>> >>> == Owner == >>> * Name: [[User:Churchyard|Miro HronĨok]] >>> * Email: <[email protected]> <[email protected]> >>> <[email protected]> >>> <[email protected]> >>> >>> == Detailed Description == >>> Python 2 is unsupported upstream since 2020-01-01. Packages dependent >>> on Python 2 are being removed from Fedora for several releases >>> already: >>> >>> * [[Changes/Mass_Python_2_Package_Removal|Fedora 30 Mass Python 2 >>> Package Removal]] >>> * [[Changes/F31_Mass_Python_2_Package_Removal|Fedora 31 Mass Python 2 >>> Package Removal]] >>> >>> Now, the Python maintainers have decided to pull the plug. The >>> {{package|python2}} package and all its subpackages will be retired >>> (read: removed) from Fedora 32 (Rawhide) as soon as Fedora 31 is >>> branched. >>> >>> All packages depending on any python2 package will be removed. The >>> removal starts 2 weeks before the planned Fedora 32 Mass Rebuild. >>> Broken dependencies will not stop the removals. >>> Packages that Fail to Build From Source and prevent to remove Python 2 >>> subpackages may end up with broken dependencies, >>> in cases where it is not desired, those packages will be retired instead. >>> >>> The rules also apply to modules built for Fedora 32+. >>> >>> The package removal will be executed in an automated fashion. >>> >>> Removed packages that would block the upgrades to Fedora 32 will be >>> obsoleted from {{package|fedora-obsolete-packages}}. >>> >>> === The python27 package === >>> >>> Similarly to existing {{package|python36}}, {{package|python37}} etc. >>> packages, a {{package|python27}} package will be created. >>> This package is indented for Python developers who still need to >>> support the legacy version of Python. >>> This package is indented for users, who still need to use some >>> software depending on the legacy version of Python. >>> This package is not intended for other Fedora packages to be depended upon. >>> >>> The {{package|python27}} package has several drawbacks compared to the >>> original {{package|python2}} package: >>> >>> * it is "flat" - there are no subpackages, everything lives in one package >>> * there is no debug build (previously available as >>> {{package|python2-debug}}) >>> * there is no <code>/usr/bin/python</code> (note: there might be >>> already the case before this change) >>> * any special backwards compatible Provides are removed (this package >>> is not intended to be depended upon) >>> >>> === FESCo exceptions === >>> >>> We realize that there are some packages whose removal could seriously >>> hurt Fedora. FESCo can grant exceptions for packages to use the >>> {{package|python27}} as a runtime or build dependency. >>> >>> The package maintainer is responsible to check the entire dependency >>> chain and they need to request exceptions for the entire list of >>> packages. For example, when seeking exception for the >>> {{package|chromium}} package, the request should contain >>> {{package|python-psutil}} and other dependent packages. (Yes, this is >>> tedious. Maintaining a Python 2 dependent package is a burden.) >>> >>> The exception request must include a plan for migrating to Python 3. >>> >>> Any non-essential dependency must be dropped. That includes optional >>> dependencies, test dependencies, optional subpackages etc. >>> >>> Package that fail to get an exception when the removal starts (see >>> above) will be removed. Their importance for Fedora Release >>> Engineering, Fedora Infrastructure or any other body will not be >>> automagically respected; every package that needs Python 2 needs an >>> exception. >>> >>> The change owners will send regular reminders to the package owners. >>> >>> == Benefit to Fedora == >>> Python 2 is past upstream End of Life since 2020-01-01. This changes >>> is generally crafted in a way that: >>> >>> * it leaves Python developers an option to use it in case they still >>> need to support it >>> * it leaves Fedora users an option to use it in case they still need >>> it to run their (3rd party) software >>> * it leaves Fedora packagers an option to keep using it (complicated, >>> but possible) >>> >>> While: >>> >>> * it removes Python 2 software from Fedora that was only preserved so >>> far by inaction >>> >>> Using Python 2 is dangerous. While the Fedora Python maintainers will >>> try to fix as many security bugs as possible, without the upstream >>> involvement this will be hard. >>> >>> Python 2 is deprecated since Fedora 30. This change moves Python 2 >>> from second class citizen to third class citizen. >>> >>> == Scope == >>> * Proposal owners: >>> ** retire {{package|python2}} >>> ** introduce {{package|python27}} >>> ** remove all {{package|python2}} dependent packages that do not have >>> FESCo exceptions >>> ** obsolete removed packages that break the upgrade path via >>> {{package|fedora-obsolete-packages}} >>> * Other developers: >>> ** remove their {{package|python2}} dependent packages without exceptions >>> ** get exceptions if needed >>> ** fix broken dependencies >>> * Release engineering: [https://pagure.io/releng/issue/8306 #8306] >>> easeBlocking/Fedora{{FedoraVersionNumber|next}}|List of >>> deliverables]]: none >>> * Policies and guidelines: Python 2 packaging is against the >>> guidelines since Fedora 30. Python 2 packaging guidelines will be >>> removed from >>> [https://docs.fedoraproject.org/en-US/packaging-guidelines/Python_Appendix/ >>> Python Appendix] (unless the FPC wants to keep them around until F31 >>> EOL). >>> * Trademark approval: not needed for this Change >>> >>> == Upgrade/compatibility impact == >>> The majority of removed packages will be obsoleted and removed on upgrade. >>> >>> Users needing Python 2 libraries will not find these packaged as RPMs. >>> They may install upstream versions using pip and virtualenv. >>> >>> == How To Test == >>> Try to update Fedora 30 or 31 to 32. No python2 packages should block >>> the upgrade. >>> Try to run Python 2 software via the {{package|python27}} package. >>> >>> == User Experience == >>> There will be close to zero Python 2 RPMs in Fedora repos. Users are >>> encouraged to switch to Python 3 and/or use Python 2 virtual >>> environments and pip for development. >>> >>> == Dependencies == >>> Ideally, all programs that use python2 would be switched to use >>> python3. Although we don't expect everything to be switched over, as >>> much as possible should be, so that the ripped remaining python2 set >>> is small as possible. >>> >>> == Contingency Plan == >>> * Contingency mechanism: >>> ** In case of serious issues, FESCo can issue a general exception for >>> packages that would otherwise prevent Fedora 32 from being composed. >>> ** If someone steps up to maintain Python 2 (including the full >>> ecosystem of packages now in Fedora), they can decide to discontinue >>> removing packages, revert this Change, or come up with another plan. >>> (Note that in this case, current maintainers will most likely orphan >>> many fundamental python2 packages.) >>> * Contingency deadline: Fedora 32 Beta >>> * Blocks release? in theory it should not, in practice, it may break >>> the release and hence it will block it until fixed >>> * Blocks product? all of them? >>> >>> == Documentation == >>> This page should serve as the documentation. >>> >>> == Release Notes == >>> TBD. >>> >>> -- >>> Ben Cotton >>> Fedora Program Manager >>> TZ=America/Indiana/Indianapolis >>> Pronouns: he/him >>> _______________________________________________ >>> devel-announce mailing list -- [email protected] >>> To unsubscribe send an email to [email protected] >>> Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html >>> List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines >>> List Archives: >>> https://lists.fedoraproject.org/archives/list/[email protected] >>> >>> _______________________________________________ >>> SoaS mailing list >>> [email protected] >>> http://lists.sugarlabs.org/listinfo/soas >>> >> >> >> -- >> Walter Bender >> Sugar Labs >> http://www.sugarlabs.org >> <http://www.sugarlabs.org> >> _______________________________________________ >> SoaS mailing list >> [email protected] >> http://lists.sugarlabs.org/listinfo/soas >> > _______________________________________________ > SoaS mailing list > [email protected] > http://lists.sugarlabs.org/listinfo/soas > -- Walter Bender Sugar Labs http://www.sugarlabs.org <http://www.sugarlabs.org>
_______________________________________________ SoaS mailing list [email protected] http://lists.sugarlabs.org/listinfo/soas

