-
Notifications
You must be signed in to change notification settings - Fork 149
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Use setuptools over setuptools._distutils.core #1843
feat: Use setuptools over setuptools._distutils.core #1843
Conversation
Drop all usage of setuptools._distutils in favor of pure setuptools. This effectively solves the problems that were present in the attempt in xrootd#1585 and xrootd#1700. Co-authored-by: Henry Schreiner <henry.fredrick.schreiner@cern.ch>
From the CI we can see this also works with:
|
Note that by this change xrootd/bindings/python/setup.py.in Lines 7 to 16 in 8e1e528
is no longer explicitly true, so I'm inclined to just remove this comment that I originally wrote and move forward with the xrootd/bindings/python/setup.py.in Lines 11 to 16 in 8e1e528
apparently being sufficient. |
b4fdb31
to
b9f63df
Compare
@simonmichal this is ready for review. Reviews welcome from @henryiii, @amadio, and @adriansev as well, as extra eyes and testing configurations are always welcome. Things will get even simpler when Python 3.6 support is dropped. |
@matthewfeickert Thanks a lot for all the work!! I can only test tomorrow (if not later in the night) but one comment that i would have is that as long GRID (and especially WLCG software) is centos 7 based, the python 3.6 compatibility MUST be preserved (IMHO). |
I don't claim to have any idea how difficult it is to try to keep things like WLCG up let alone running as well as it does (I know it is super hard and that people work tirelessly with no thanks to make this happen), but as a field we should not be happy to keep using EOL software indefinitely. $ pipx install norwegianblue
$ eol python
| cycle | release | latest | latest release | eol |
|:------|:----------:|:-------|:--------------:|:----------:|
| 3.11 | 2022-10-24 | 3.11.0 | 2022-10-24 | 2027-10-24 |
| 3.10 | 2021-10-04 | 3.10.8 | 2022-10-11 | 2026-10-04 |
| 3.9 | 2020-10-05 | 3.9.15 | 2022-10-11 | 2025-10-05 |
| 3.8 | 2019-10-14 | 3.8.15 | 2022-10-11 | 2024-10-14 |
| 3.7 | 2018-06-26 | 3.7.15 | 2022-10-10 | 2023-06-27 |
| 3.6 | 2016-12-22 | 3.6.15 | 2021-09-03 | 2021-12-23 |
| 3.5 | 2015-09-12 | 3.5.10 | 2020-09-05 | 2020-09-13 |
| 3.4 | 2014-03-15 | 3.4.10 | 2019-03-18 | 2019-03-18 |
| 3.3 | 2012-09-29 | 3.3.7 | 2017-09-19 | 2017-09-29 |
| 2.7 | 2010-07-03 | 2.7.18 | 2020-04-19 | 2020-01-01 |
| 2.6 | 2008-10-01 | 2.6.9 | 2013-10-29 | 2013-10-29 |
$ eol centos
| cycle | release | latest | support | eol | link |
|:---------|:----------:|:---------|:----------:|:----------:|:----------------------------------------------------------|
| 9 | 2021-09-15 | 9 | 2027-05-31 | 2027-05-31 | |
| stream-8 | 2019-09-24 | 8 | 2024-05-31 | 2024-05-31 | https://wiki.centos.org/Manuals/ReleaseNotes/CentOSStream |
| 8 | 2019-09-24 | 8 (2111) | 2021-12-31 | 2021-12-31 | https://wiki.centos.org/Manuals/ReleaseNotes/CentOS8.2111 |
| 7 | 2014-07-07 | 7 (2009) | 2020-08-06 | 2024-06-30 | https://wiki.centos.org/Manuals/ReleaseNotes/CentOS7.2009 |
| 6 | 2011-07-10 | 6.10 | 2017-05-10 | 2020-11-30 | https://wiki.centos.org/Manuals/ReleaseNotes/CentOS6.10 | But that's all I'll say here, especially as the two of us have discussed these ideas before and this PR does nothing to Python 3.6. :) |
yeah, exactly :) it was just a comment and, for the sake of completeness, i must state that i mentioned that for the sake of generic usage as from experiment point of view we (ALICE) moved already to 3.9 |
* Now that setuptools._distutils.core usage has been dropped, it is possible to go further and drop direct usage of distutils in favor of setuptools. This has already happened with the removal of setuptools._distutils as > from setuptools import setup, Extension should always pass, and so this commit just makes this explicitly clear by removing the try/except block.
b9f63df
to
237708d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me. Thanks.
@matthewfeickert : thanks a lot for the PR, looks good :-) |
Resolves #1830
Drop all usage of
setuptools._distutils
in favor of puresetuptools
. This effectively solves the problems that were present in the attempt in PR #1585 and PR #1700. With this, it is now possible to go further and drop direct usage ofdistutils
in favor ofsetuptools
. This effectively happens with the removal ofsetuptools._distutils
asshould always pass, and so this just makes this explicitly clear by removing the
try/except
block.