Skip to content

[Snyk] Security upgrade setuptools from 40.5.0 to 70.0.0#9

Open
anaconda-security-bot wants to merge 1 commit into
masterfrom
snyk-fix-a9d17c3dab2cda558312492018a67f82
Open

[Snyk] Security upgrade setuptools from 40.5.0 to 70.0.0#9
anaconda-security-bot wants to merge 1 commit into
masterfrom
snyk-fix-a9d17c3dab2cda558312492018a67f82

Conversation

@anaconda-security-bot

Copy link
Copy Markdown

snyk-top-banner

Snyk has created this PR to fix 1 vulnerabilities in the pip dependencies of this project.

Snyk changed the following file(s):

  • requirements.txt

Breaking Change Risk

Merge Risk: High

Notice: This assessment is enhanced by AI.


Important

  • Check the changes in this PR to ensure they won't cause issues with your project.
  • Max score is 1000. Note that the real score may have changed since the PR was raised.
  • This PR was automatically created by Snyk using the credentials of a real user.
  • Some vulnerabilities couldn't be fully fixed and so Snyk will still find them when the project is tested again. This may be because the vulnerability existed within more than one direct dependency, but not all of the affected dependencies could be upgraded.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.

For more information:
🧐 View latest project report
📜 Customise PR templates
🛠 Adjust project settings
📚 Read about Snyk's upgrade logic


Learn how to fix vulnerabilities with free interactive lessons:

🦉 Improper Control of Generation of Code ('Code Injection')

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-SETUPTOOLS-7448482
@anaconda-security-bot

Copy link
Copy Markdown
Author

Merge Risk: High

This is a major version upgrade for setuptools from 40.5.0 to 70.0.0, which includes multiple significant breaking changes and deprecations. Developer action is required to ensure compatibility.

Key Breaking Changes:

  • Python Version Support Dropped:

    • Support for Python 2.7 was completely dropped in version 45.0.0.
    • Support for Python 3.4 was dropped in version 44.0.0.
    • By version 59.7.0, setuptools required Python 3.7 or newer.
  • Removal of easy_install: The easy_install command, deprecated since v42, is removed in later versions within this range. Workflows relying on easy_install or setup.py develop in its old form will break and must be migrated to use pip and other standards-based tools.

  • Deprecation of setup.py install: Direct invocation of setup.py install is deprecated. The recommended approach is to use tools like pip install . to build and install packages.

  • Deprecation of pkg_resources: setuptools has been migrating away from the legacy pkg_resources API in favor of the standard library's importlib.metadata and importlib.resources. Code that relies on pkg_resources for runtime resource access may need to be updated.

  • Stricter setup.cfg Parsing: Starting in version 54.1.0, setuptools deprecated the use of uppercase and dash-separated keys (e.g., install-requires) in setup.cfg files, favoring snake_case (e.g., install_requires). While not strictly enforced as an error until a later version, this change requires configuration updates.

Recommendation:
Given the number of breaking changes, developers must:

  1. Ensure their project is running on a supported Python version (3.7+).
  2. Replace any usage of easy_install with pip.
  3. Update setup.cfg files to use modern, snake_case keys.
  4. Review and refactor any code that depends on the deprecated pkg_resources API.

Source: Setuptools Release History

Notice 🤖: This content was augmented using artificial intelligence. AI-generated content may contain errors and should be reviewed for accuracy before use.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants