F36 Change: Setuptools 58+ (Self-Contained Change proposal)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://fedoraproject.org/wiki/Changes/Setuptools_58%2B

== Summary ==
Update to a new upstream release of python-setuptools that is not
completely compatible with previous releases. Since version 58+
upstream removed support for 2to3 during builds. This is a breaking
change and projects are encouraged to port to a unified codebase.

== Owner ==
* Name: [[User:thrnciar| Tomáš Hrnčiar]]
* Email: thrnciar@xxxxxxxxxx


== Detailed Description ==
Setuptools is a package development process library designed to
facilitate packaging Python projects by enhancing the Python standard
library distutils (distribution utilities). It changes fast and it
often introduces breaking changes such as the removal of support for
2to3 during the builds in version 58.0.0 which was
[https://github.com/pypa/setuptools/blob/main/CHANGES.rst#v4620
deprecated] since version 46.2.0 present in Fedora 33. `use_2to3` used
to help to translate Python 2.x programs to Python 3.x. But since
Python 2 reached its end of life on 1st January 2020 and lib2to3 was
removed from Python 3 in version 3.10, developers are encouraged to
drop support for Python 2 and migrate to Python 3. It is still
possible to use command line `2to3` tool in Python 3.10, but it will
be deprecated in 3.11 and removed in 3.13.

List of packages that will likely fail to build, because they use the
removed use_2to3 option.

Maintainers by package:
* fail2ban             atkac hobbes1069 jgu orion
* playitagainsam       churchyard
* pybluez              limb
* pyp2rpm              gordonmessmer kevin
* python-anyjson       fab mrunge sundaram
* python-behave        pschindl
* python-concurrentloghandler dcallagh
* python-deap          zbyszek
* python-demjson       lmacken thm
* python-flask-openid  frantisekz pjp sundaram
* python-funcparserlib dridi
* python-jsmin         ignatenkobrain
* python-libusb1       jonny
* python-mailer        fab
* python-marathon      apevec dmsimard
* python-nose-cover3   mrunge ngompa pingou
* python-parse_type    ignatenkobrain
* python-proteus       sharkcz
* python-pypng         kevin ralph
* python-pysam         davidsch
* python-relatorio     sharkcz
* python-rnc2rng       ignatenkobrain
* python-simpleeval    sharkcz
* python-speaklater    ondrejj
* python-sphinx-bootstrap-theme besser82 sic
* python-spyking-circus ankursinha
* python-suds          jortel swt2c
* python-tempita       jcapitao kylev
* python-vatnumber     sharkcz
* python-xunitparser   ignatenkobrain lbrabec tflink
* trytond              sharkcz
* trytond-account      sharkcz
* trytond-account-be   sharkcz
* trytond-account-de-skr03 sharkcz
* trytond-account-invoice sharkcz
* trytond-account-invoice-history sharkcz
* trytond-account-invoice-line-standalone sharkcz
* trytond-account-product sharkcz
* trytond-account-statement sharkcz
* trytond-account-stock-anglo-saxon sharkcz
* trytond-account-stock-continental sharkcz
* trytond-analytic-account sharkcz
* trytond-analytic-invoice sharkcz
* trytond-analytic-purchase sharkcz
* trytond-analytic-sale sharkcz
* trytond-company      sharkcz
* trytond-company-work-time sharkcz
* trytond-country      sharkcz
* trytond-currency     sharkcz
* trytond-dashboard    sharkcz
* trytond-google-maps  sharkcz
* trytond-ldap-authentication sharkcz
* trytond-party        sharkcz
* trytond-party-siret  sharkcz
* trytond-product      sharkcz
* trytond-product-cost-fifo sharkcz
* trytond-product-cost-history sharkcz
* trytond-product-price-list sharkcz
* trytond-project      sharkcz
* trytond-project-plan sharkcz
* trytond-project-revenue sharkcz
* trytond-purchase     sharkcz
* trytond-purchase-invoice-line-standalone sharkcz
* trytond-sale         sharkcz
* trytond-sale-opportunity sharkcz
* trytond-sale-price-list sharkcz
* trytond-stock        sharkcz
* trytond-stock-forecast sharkcz
* trytond-stock-inventory-location sharkcz
* trytond-stock-location-sequence sharkcz
* trytond-stock-product-location sharkcz
* trytond-stock-supply sharkcz
* trytond-stock-supply-day sharkcz
* trytond-timesheet    sharkcz


Packages by maintainer:
* ankursinha python-spyking-circus
* apevec     python-marathon
* atkac      fail2ban
* besser82   python-sphinx-bootstrap-theme
* churchyard playitagainsam
* davidsch   python-pysam
* dcallagh   python-concurrentloghandler
* dmsimard   python-marathon
* dridi      python-funcparserlib
* fab        python-anyjson python-mailer
* frantisekz python-flask-openid
* gordonmessmer pyp2rpm
* hobbes1069 fail2ban
* ignatenkobrain python-jsmin python-parse_type python-rnc2rng
python-xunitparser
* jcapitao   python-tempita
* jgu        fail2ban
* jonny      python-libusb1
* jortel     python-suds
* kevin      pyp2rpm python-pypng
* kylev      python-tempita
* lbrabec    python-xunitparser
* limb       pybluez
* lmacken    python-demjson
* mrunge     python-anyjson python-nose-cover3
* ngompa     python-nose-cover3
* ondrejj    python-speaklater
* orion      fail2ban
* pingou     python-nose-cover3
* pjp        python-flask-openid
* pschindl   python-behave
* ralph      python-pypng
* sharkcz    python-proteus python-relatorio python-simpleeval
python-vatnumber trytond trytond-account trytond-account-be
trytond-account-de-skr03 trytond-account-invoice
trytond-account-invoice-history
trytond-account-invoice-line-standalone trytond-account-product
trytond-account-statement trytond-account-stock-anglo-saxon
trytond-account-stock-continental trytond-analytic-account
trytond-analytic-invoice trytond-analytic-purchase
trytond-analytic-sale trytond-company trytond-company-work-time
trytond-country trytond-currency trytond-dashboard trytond-google-maps
trytond-ldap-authentication trytond-party trytond-party-siret
trytond-product trytond-product-cost-fifo trytond-product-cost-history
trytond-product-price-list trytond-project trytond-project-plan
trytond-project-revenue trytond-purchase
trytond-purchase-invoice-line-standalone trytond-sale
trytond-sale-opportunity trytond-sale-price-list trytond-stock
trytond-stock-forecast trytond-stock-inventory-location
trytond-stock-location-sequence trytond-stock-product-location
trytond-stock-supply trytond-stock-supply-day trytond-timesheet
* sic        python-sphinx-bootstrap-theme
* sundaram   python-anyjson python-flask-openid
* swt2c      python-suds
* tflink     python-xunitparser
* thm        python-demjson
* zbyszek    python-deap

== Benefit to Fedora ==
Fedora offers cutting edge technologies for Python and Setuptools is
one of the most important Python packages. By doing this update we
bring users the latest features that Setuptools offers and also we
enable Fedora 36 to receive future updates as well.

== Scope ==
* Proposal owners: update python-setuptools to 58.x.x, provide help

* Other developers: report problems to the upstream and backport patch
to the affected packages. The impact can be tested using
[https://copr.fedorainfracloud.org/coprs/thrnciar/setuptools-impact-check/packages/
copr repository] where Setuptools 58.0.4 has been built.
* Release engineering: N/A
* Policies and guidelines: N/A (not needed for this Change)
* Trademark approval: N/A (not needed for this Change)
* Alignment with Objectives:

== Upgrade/compatibility impact ==
There is a clean upgrade path from current version to
python-setuptools 58.x.x. Fedora users using RPM-packaged Setuptools
will use Setuptools 58.x.x by default.


== How To Test ==
* Find the package you want to update in this
[https://copr.fedorainfracloud.org/coprs/thrnciar/setuptools-impact-check/packages/
copr repository] and check the build logs to determine the fail cause.
* Work with the upstream to resolve the issue or drop the need for
2to3 during the build of the package.
* When updating the package, you can test it using the same copr
repository where the latest version of Setuptools has been built.
* Let us know if something doesn't work as it should.

== User Experience ==
Regular distro users shouldn't notice any change in Setuptools
behaviour, except for packages that use 2to3 to transform Python 2.x
source code into Python 3.x source code. Such packages will fail with
`error in <package name> setup command: use_2to3 is invalid` and
should be fixed by their maintainers.

== Contingency Plan ==
* Contingency mechanism: (What to do?  Who will do it?) N/A (not a
System Wide Change)
* Contingency deadline: N/A (not a System Wide Change)
* Blocks release? N/A (not a System Wide Change)

== Documentation ==
This page is the documentation.




-- 
Ben Cotton
He / Him / His
Fedora Program Manager
Red Hat
TZ=America/Indiana/Indianapolis
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux