8000 update `setuptools` >= 78.1.1 for Safety 76752 by cfm · Pull Request #7506 · freedomofpress/securedrop · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

update setuptools >= 78.1.1 for Safety 76752 #7506

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

Open
wants to merge 6 commits into
base: develop
Choose a base branch
from
Open

Conversation

cfm
Copy link
Member
@cfm cfm commented Apr 21, 2025

Status

Work in progress

Description of Changes

Updates setuptools >= 78.1.1 for Safety 76752. This required updating packaging and, given how fundamental these dependencies are, some manual tweaking instead of just running make update-pip-requirements.

Testing

  • CI passes.

Deployment

No deployment considerations.

Checklist

If you added or updated a reference to a production code dependency:

se one of the following:

Both packaging and setuptools are published by the Python Packaging Authority, so they don't require diff review, per https://github.com/freedomofpress/securedrop-dev-docs/blob/4a42bbb4eb4007edcccb317da5f19998dc3175e0/docs/dependency_updates.rst?plain=1#L52-L53.

  • I would like someone else to do the diff review
  • I am silencing an alert related to a production dependency, because (please explain below):

@cfm cfm self-assigned this Apr 21, 2025
@cfm cfm moved this to In Progress in SecureDrop dev cycle Apr 21, 2025
@cfm
Copy link
Member Author
cfm commented Apr 23, 2025

It turns out that setuptools has required Python >= 3.9 since v75.3.2; Ubuntu Focal only gives us Python 3.8. I'll flag this at tomorrow's team meeting.

@cfm cfm moved this from In Progress to Blocked in SecureDrop dev cycle Apr 23, 2025
@cfm cfm force-pushed the safety-76752 branch 3 times, most recently from 6d49e2c to 734641f Compare April 24, 2025 00:56
@cfm
Copy link
Member Author
cfm commented Apr 24, 2025

The team (and then @legoktm and I) discussed this today and agreed that we need to have a way to update dependencies between Python 3.8 on Ubuntu Focal and Python 3.12 on Ubuntu Noble whether or not this setuptools update is worth the trouble. That's now set up in 5430b44 (compilation step) and 83bf788 (installation step). If we like this, I'll replace 734641f with a commit that fully handles the requirements files I've split from securedrop/requirements/python3/*.insecuredrop/requirements/python3/{focal,noble}/*.txt.

@cfm cfm moved this from Blocked to In Progress in SecureDrop dev cycle Apr 24, 2025
@legoktm
Copy link
Member
legoktm commented Apr 24, 2025

and 83bf788 (installation step). If we like this, I'll replace 734641f with a commit that fully handles the requirements files I've split from securedrop/requirements/python3/*.insecuredrop/requirements/python3/{focal,noble}/*.txt.

Admittedly I had forgotten that doing this would require duplicating the requirements.txt files but it looks solid. I assume the symlinks are just temporary and once they're removed Git will show the focal files as being renamed and not deleted/created?

Also if you want, you could drop the "python3" part of the path, so it's just securedrop/requirements/{focal,noble}/?

@cfm
Copy link
Member Author
cfm commented Apr 24, 2025

Yes, exactly, @legoktm. I'll finish that (in place of 734641f) early next week.

@cfm cfm force-pushed the safety-76752 branch 5 times, most recently from cc5aaa1 to c11b76d Compare April 30, 2025 18:52
@cfm cfm marked this pull request as ready for review April 30, 2025 18:53
@cfm cfm requested a review from a team as a code owner April 30, 2025 18:53
@cfm
Copy link
Member Author
cfm commented Apr 30, 2025

As far as I can tell, admin-tests is failing here because of the 2.12.x tag churn in this repository, unrelated to these changes. So this should be ready for review.

@cfm cfm moved this from In Progress to Ready For Review in SecureDrop dev cycle Apr 30, 2025
@cfm cfm requested a review from zenmonkeykstop April 30, 2025 18:56
@cfm cfm assigned zenmonkeykstop and unassigned cfm Apr 30, 2025
Copy link
Contributor
@zenmonkeykstop zenmonkeykstop left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The update-python3-requirements makefile target isn't working due to path changes. Others seem fine.

cfm added 3 commits May 1, 2025 16:36
…es for (the Python versions available under) Ubuntu Focal versus Noble
Via "make update-python3-requirements", scoped to Python >= 3.9 and
therefore limited to Ubuntu Noble.
cfm added 3 commits May 1, 2025 16:49
Per <pypa/setuptools#4483 (comment)>,
packaging >= 22.0 is necessary to update setuptools >= 74, but we can't
get there without a pinned hash, since "pip3 install" takes "--hash" to
strictly imply "--require-hashes".
@cfm cfm force-pushed the safety-76752 branch from c11b76d to ff0b8ac Compare May 1, 2025 23:52
@cfm cfm moved this from Ready For Review to Under Review in SecureDrop dev cycle May 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Under Review
Development

Successfully merging this pull request may close these issues.

3 participants
0