← Back to issue list

chore(deps): update dependency black to v24.3.0 [security]

View original Github issue

Metadata

Project
snapcraft
Number
#4686
Type
pull request
State
merged
Author
renovate[bot]
Labels
Created
Updated
Closed

Current evaluation

Merged automated dependency update upgrading black from v24.1.1 to v24.3.0 to patch CVE-2024-21503, a ReDoS vulnerability. The change passed CI checks and code coverage before being merged.

Suggested action:

No scores available.

Issue body

[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [black](https://togithub.com/psf/black) ([changelog](https://togithub.com/psf/black/blob/main/CHANGES.md)) | `==24.1.1` -> `==24.3.0` | [![age](https://developer.mend.io/api/mc/badges/age/pypi/black/24.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/black/24.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/black/24.1.1/24.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/black/24.1.1/24.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | ### GitHub Vulnerability Alerts #### [CVE-2024-21503](https://nvd.nist.gov/vuln/detail/CVE-2024-21503) Versions of the package black before 24.3.0 are vulnerable to Regular Expression Denial of Service (ReDoS) via the lines_with_leading_tabs_expanded function in the strings.py file. An attacker could exploit this vulnerability by crafting a malicious input that causes a denial of service. Exploiting this vulnerability is possible when running Black on untrusted input, or if you habitually put thousands of leading tab characters in your docstrings. --- ### Release Notes <details> <summary>psf/black (black)</summary> ### [`v24.3.0`](https://togithub.com/psf/black/blob/HEAD/CHANGES.md#2430) [Compare Source](https://togithub.com/psf/black/compare/24.2.0...24.3.0) ##### Highlights This release is a milestone: it fixes Black's first CVE security vulnerability. If you run Black on untrusted input, or if you habitually put thousands of leading tab characters in your docstrings, you are strongly encouraged to upgrade immediately to fix [CVE-2024-21503](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-21503). This release also fixes a bug in Black's AST safety check that allowed Black to make incorrect changes to certain f-strings that are valid in Python 3.12 and higher. ##### Stable style - Don't move comments along with delimiters, which could cause crashes ([#&#8203;4248](https://togithub.com/psf/black/issues/4248)) - Strengthen AST safety check to catch more unsafe changes to strings. Previous versions of Black would incorrectly format the contents of certain unusual f-strings containing nested strings with the same quote type. Now, Black will crash on such strings until support for the new f-string syntax is implemented. ([#&#8203;4270](https://togithub.com/psf/black/issues/4270)) - Fix a bug where line-ranges exceeding the last code line would not work as expected ([#&#8203;4273](https://togithub.com/psf/black/issues/4273)) ##### Performance - Fix catastrophic performance on docstrings that contain large numbers of leading tab characters. This fixes [CVE-2024-21503](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-21503). ([#&#8203;4278](https://togithub.com/psf/black/issues/4278)) ##### Documentation - Note what happens when `--check` is used with `--quiet` ([#&#8203;4236](https://togithub.com/psf/black/issues/4236)) ### [`v24.2.0`](https://togithub.com/psf/black/blob/HEAD/CHANGES.md#2420) [Compare Source](https://togithub.com/psf/black/compare/24.1.1...24.2.0) ##### Stable style - Fixed a bug where comments where mistakenly removed along with redundant parentheses ([#&#8203;4218](https://togithub.com/psf/black/issues/4218)) ##### Preview style - Move the `hug_parens_with_braces_and_square_brackets` feature to the unstable style due to an outstanding crash and proposed formatting tweaks ([#&#8203;4198](https://togithub.com/psf/black/issues/4198)) - Fixed a bug where base expressions caused inconsistent formatting of \*\* in tenary expression ([#&#8203;4154](https://togithub.com/psf/black/issues/4154)) - Checking for newline before adding one on docstring that is almost at the line limit ([#&#8203;4185](https://togithub.com/psf/black/issues/4185)) - Remove redundant parentheses in `case` statement `if` guards ([#&#8203;4214](https://togithub.com/psf/black/issues/4214)). ##### Configuration - Fix issue where *Black* would ignore input files in the presence of symlinks ([#&#8203;4222](https://togithub.com/psf/black/issues/4222)) - *Black* now ignores `pyproject.toml` that is missing a `tool.black` section when discovering project root and configuration. Since *Black* continues to use version control as an indicator of project root, this is expected to primarily change behavior for users in a monorepo setup (desirably). If you wish to preserve previous behavior, simply add an empty `[tool.black]` to the previously discovered `pyproject.toml` ([#&#8203;4204](https://togithub.com/psf/black/issues/4204)) ##### Output - Black will swallow any `SyntaxWarning`s or `DeprecationWarning`s produced by the `ast` module when performing equivalence checks ([#&#8203;4189](https://togithub.com/psf/black/issues/4189)) ##### Integrations - Add a JSONSchema and provide a validate-pyproject entry-point ([#&#8203;4181](https://togithub.com/psf/black/issues/4181)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "" in timezone Etc/UTC, Automerge - "every weekend" in timezone Etc/UTC. 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/canonical/snapcraft). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjEuMCIsInVwZGF0ZWRJblZlciI6IjM3LjI2MS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Merged automated dependency update upgrading black from v24.1.1 to v24.3.0 to patch CVE-2024-21503, a ReDoS vulnerability. The change passed CI checks and code coverage before being merged.
qwen3.6-35b-a3b-mtp-q6 Merged dependency update upgrading black from v24.1.1 to v24.3.0 to patch CVE-2024-21503 ReDoS vulnerability. Changes passed test coverage checks and were successfully merged into main.
qwen3.6-35b-a3b-mtp-q6 Merged automated update upgrading black from 24.1.1 to 24.3.0. This resolves CVE-2024-21503, a ReDoS vulnerability in string processing. CI tests passed and project coverage remained stable.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#176 chore(deps): update dependency black to v24 starbase merged Merged automated dependency update upgrading black from v23.3.0 to v24.1.1. The change passed CI, maintained 100% test coverage, received reviewer approval, and was successfully merged.
92%
#227 chore(deps): update dependency lint/black to v24 craft-cli merged Merged an automated dependency update for black from v23.12.1 to v24.1.1. The pull request passed CI checks, received two approvals, and maintained existing code coverage before being merged to main.
89%
#1166 chore(deps): update dependency black to v23.7.0 charmcraft merged Merged automated dependency update upgrading black from v23.3.0 to v23.7.0. The change passed CI checks and received reviewer approval before being merged into the main branch.
87%
#49 chore(deps): update dependency black to v23.3.0 starbase merged Merged automated dependency update for black from v23.1.0 to v23.3.0. Approved by a reviewer, passed CI checks, and successfully merged into the main branch via the Renovate bot.
86%
#1443 chore(deps): update dependency black to v23.12.1 charmcraft merged Merged automated dependency update for black from v23.11.0 to v23.12.1. Approved by two reviewers, passed CI checks, and successfully merged.
86%
#385 chore(deps): update dependency black to v23.10.0 rockcraft merged Automated dependency update for black from v23.9.1 to v23.10.0. Approved by three reviewers, passed CI checks, and successfully merged.
85%
#1017 chore(deps): update dependency black to v23 charmcraft merged Automated dependency update upgraded black from 22.12.0 to 23.1.0. The request passed CI checks, received approval, and was merged to keep the project's code formatter current.
85%
#1343 chore(deps): update dependency black to v23.10.0 charmcraft merged Merged automated dependency update upgrading black from v23.9.1 to v23.10.0. Approved by three reviewers, passed CI checks, and successfully integrated into the main branch.
85%
#38 chore(deps): update dependency black to v23 starbase merged Automatically updated the black dependency from v22.12.0 to v23.1.0. The change was reviewed, passed CI checks, and successfully merged.
84%
#1393 chore(deps): update dependency black to v23.11.0 charmcraft merged The black dependency update to v23.11.0 was successfully merged. Automated by Renovate, it received reviewer approval and was merged despite unrelated test failures, completing the routine dependency update.
84%