Skip to content

[Snyk] Fix for 15 vulnerabilities - #108

Open
snyk-io[bot] wants to merge 1 commit into
masterfrom
snyk-fix-0988cffcebc3aa42270a360e0f3a3fa5
Open

snyk-io[bot] wants to merge 1 commit into
masterfrom
snyk-fix-0988cffcebc3aa42270a360e0f3a3fa5

Conversation

@snyk-io

@snyk-io snyk-io Bot commented Sep 17, 2026

Copy link
Copy Markdown

snyk-top-banner

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

Snyk changed the following file(s):

  • tested_requirements/requirements_35.txt
⚠️ Warning
equests 2.23.0 requires urllib3, which is not installed.
botocore 1.17.47 requires urllib3, which is not installed.

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:

🦉 Out-of-bounds Read
🦉 Allocation of Resources Without Limits or Throttling
🦉 Access of Resource Using Incompatible Type ('Type Confusion')
🦉 More lessons are available in Snyk Learn

@snyk-io

snyk-io Bot commented Sep 17, 2026

Copy link
Copy Markdown
Author

Merge Risk: High

This upgrade contains multiple major versions with significant breaking changes. Particular attention must be paid to cryptography, urllib3, and pyjwt.

Top 3 Most Impactful Upgrades:

1. cryptography (2.9.2 → 49.0.0) - HIGH RISK

This is a massive upgrade spanning several years of development and introduces numerous breaking changes. The original version supported Python 2, while the target version requires Python 3.9+ and has fundamentally changed its architecture.

  • Python & OpenSSL Support: Support for Python versions below 3.9 has been removed. Support for OpenSSL versions older than 3.0.0 has also been dropped.
  • Build System: Building from source now requires a Rust compiler, a major change introduced in intermediate versions.
  • API Changes: Many APIs have been removed or altered. Notably, the backend argument is no longer used, and support for binary elliptic curves has been removed.

Recommendation: This upgrade is extremely high-risk and will likely require significant code and environment updates. A dedicated effort to upgrade through major versions incrementally is advised.

2. urllib3 (1.25.10 → 2.7.0) - HIGH RISK

The upgrade to version 2.0.0 introduces significant breaking changes focused on modernization and security.

  • Python Support: Support for Python versions older than 3.7 is dropped.
  • TLS/SSL Changes: The default minimum TLS version is now 1.2, and support for OpenSSL older than 1.1.1 is removed. Certificate hostname verification is stricter, no longer using the commonName field.
  • API Removals: Methods like HTTPResponse.getheaders() are deprecated, and modules like urllib3.contrib.pyopenssl are deprecated or removed.

Recommendation: Verify your environment's Python and OpenSSL versions. Review code that uses deprecated methods and test TLS/SSL connections, especially to older services.

3. pyjwt (1.7.1 → 2.13.0) - HIGH RISK

The upgrade to version 2.0.0 is the primary source of breaking changes, dropping legacy support.

  • Python Support: Support for Python 2 and versions below 3.6 has been dropped.
  • Backend Dependencies: Support for PyCrypto and ECDSA backends has been removed in favor of cryptography.
  • API Changes: The command-line interface has been removed. The require_* options in jwt.decode() have been consolidated into a new options dictionary with a require key.

Recommendation: Ensure you are using cryptography as the backend. Update calls to jwt.decode() to use the new options parameter for required claims verification.

Other Upgrades:

  • certifi (2020.6.20 → 2023.7.22) - LOW RISK: This is a routine update to the trusted root certificate bundle and has no documented API breaking changes.

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

@snyk-io

snyk-io Bot commented Sep 17, 2026

Copy link
Copy Markdown
Author

⚠️ Snyk checks are incomplete.

Status Scan Engine Critical High Medium Low Total (0)
⚠️ Open Source Security 0 0 0 0 See details
⚠️ Licenses 0 0 0 0 See details

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

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.

0 participants