8000 [FR] Support for python 3.8.x · Issue #5009 · pypa/setuptools · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

[FR] Support for python 3.8.x #5009

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

Closed
1 task done
prrvchr opened this issue May 23, 2025 · 9 comments
Closed
1 task done

[FR] Support for python 3.8.x #5009

prrvchr opened this issue May 23, 2025 · 9 comments
Labels
enhancement Needs Triage Issues that need to be evaluated for severity and status.

Comments

@prrvchr
Copy link
prrvchr commented May 23, 2025

What's the problem this feature will solve?

It seems that the latest version of SetupTool has dropped support for Python 3.8.

What a shame, especially since version 75.3.2, which supports 3.8, is vulnerable if you use GitHub Dependabot or FuildAttack.

Describe the solution you'd like

Wouldn't it be possible to keep it working under Python 3.8?

Alternative Solutions

No response

Additional context

No response

Code of Conduct

  • I agree to follow the PSF Code of Conduct
@prrvchr prrvchr added enhancement Needs Triage Issues that need to be evaluated for severity and status. labels May 23, 2025
@Avasam
Copy link
Contributor
Avasam commented May 23, 2025

(Please note I am not a maintainer nor do I speak for them)
Python 3.8 codepaths have already been removed from setuptools a while ago (for example: #4718 (comment) )
Python 3.8 is EOL. Meaning it won't receive security fixes either. If you're concerned about vulnerabilities, you should really update to 3.9+

@prrvchr
Copy link
Author
prrvchr commented May 23, 2025

Python 3.8 is EOL. Meaning it won't receive security fixes either.

I understand that Python 3.8, which was released at the end of 2019, is at the end of its life.

But it is still present in LibreOffice 25.2 which is not very old and I have to use the python that LibreOffice provides me in my LO extensions.

I don't think that wanting to go so fast brings much except difficulties.

@jaraco
Copy link
Member
jaraco commented May 28, 2025

What a shame, especially since version 75.3.2, which supports 3.8, is vulnerable if you use GitHub Dependabot or FuildAttack.

For security vulnerabilities, we might consider a patch to 75.3.2 to address vulnerabilities. Can you point to where these vulnerabilities were fixed in later versions of Setuptools? Honestly, though, I'm pretty skeptical. If upstream CPython, with dozens of maintainers, can't be bothered to apply security updates for a version of Python, why should a project like Setuptools, with two primary maintainers and a handful of volunteers be expected to invest in those older versions? We'd need a really compelling case (like a known vulnerability with realistic exploits in the wild) to consider retaining support (for Python 3.8 today and 3.9 later in the year, etc).

Edit: I've closed this issue as not planned, but feel free to provide justification to re-open.

@jaraco jaraco closed this as completed May 28, 2025
@prrvchr
Copy link
Author
prrvchr commented May 28, 2025

For security vulnerabilities, we might consider a patch to 75.3.2 to address vulnerabilities. Can you point to where these vulnerabilities were fixed in later versions of Setuptools?

Here is the Dependabot alert I get with Setuptools 75.3.2.
I don't know if there is really a proven risk, but this seems to have been fixed starting with version 78.1.1.

I am willing to submit a PR to backport the code from 78.1.1 to 75.3.2 if necessary?

@abravalheri
Copy link
Contributor
abravalheri commented May 29, 2025

I don't know if there is really a proven risk

How do you use setuptools?

If you are only using the recommended workflow, e.g. by specifying a pyproject.toml and building your package using python -m build, it is unlikely you are affected.

Moreover you can still create pure-python packages with setuptools on Python 3.9 that will work on Python 3.8 (the system that you package your not necessarily have to be the same where it is going to be installed).

@jaraco
Copy link
Member
jaraco commented May 29, 2025

I see that release links back to #4946, where I can see someone else has requested a backport.

I now regret accepting that security vulnerability. I was on the fence as to whether it was a meaningful exploit, and I've already wasted a lot of my life dealing with a code path that's deprecated and unlikely to be reached.

If you want to create the commits backporting the fix to 78.1.1, I'll create a maintenance branch that you can target in a PR. Look for maint/78.1 .

@prrvchr
Copy link
Author
prrvchr commented May 29, 2025

How do you use setuptools?

I think that for the use I have of setuptools I have no risk, but it is rather in the aim of providing users of my extensions with a security report without possible flaws...

Look for maint/78.1 .

Thank you, I'll take care of that as soon as possible...

If you want to create the commits backporting the fix to 78.1.1

It seems silly, but I prefer to specify that it is necessary to maintain compatibility with Python 3.8, because for me this support was removed after 75.3.2, but maybe I'm wrong?

@jaraco
Copy link
Member
jaraco commented May 30, 2025

If you want to create the commits backporting the fix to 78.1.1

It seems silly, but I prefer to specify that it is necessary to maintain compatibility with Python 3.8, because for me this support was removed after 75.3.2, but maybe I'm wrong?

Yes, I made a mistake. 75.4.0 was where Python 3.8 support was dropped, so 75.3.x is where the changes need to go. I've created the maint/75.3 branch and removed the maint/78.1 branch.

@prrvchr
Copy link
Author
prrvchr commented May 31, 2025

so 75.3.x is where the changes need to go

That's exactly what I wanted to hear... Thanks, I'll be back soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Needs Triage Issues that need to be evaluated for severity and status.
Projects
None yet
Development

No branches or pull requests

4 participants
0