Skip to content

Bump black from 25.12.0 to 26.1.0#65

Merged
docktermj merged 1 commit intomainfrom
dependabot/pip/black-26.1.0
Feb 9, 2026
Merged

Bump black from 25.12.0 to 26.1.0#65
docktermj merged 1 commit intomainfrom
dependabot/pip/black-26.1.0

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Feb 9, 2026

Bumps black from 25.12.0 to 26.1.0.

Release notes

Sourced from black's releases.

26.1.0

Highlights

Introduces the 2026 stable style (#4892), stabilizing the following changes:

  • always_one_newline_after_import: Always force one blank line after import statements, except when the line after the import is a comment or an import statement (#4489)
  • fix_fmt_skip_in_one_liners: Fix # fmt: skip behavior on one-liner declarations, such as def foo(): return "mock" # fmt: skip, where previously the declaration would have been incorrectly collapsed (#4800)
  • fix_module_docstring_detection: Fix module docstrings being treated as normal strings if preceded by comments (#4764)
  • fix_type_expansion_split: Fix type expansions split in generic functions (#4777)
  • multiline_string_handling: Make expressions involving multiline strings more compact (#1879)
  • normalize_cr_newlines: Add \r style newlines to the potential newlines to normalize file newlines both from and to (#4710)
  • remove_parens_around_except_types: Remove parentheses around multiple exception types in except and except* without as (#4720)
  • remove_parens_from_assignment_lhs: Remove unnecessary parentheses from the left-hand side of assignments while preserving magic trailing commas and intentional multiline formatting (#4865)
  • standardize_type_comments: Format type comments which have zero or more spaces between # and type: or between type: and value to # type: (value) (#4645)

The following change was not in any previous stable release:

  • Regenerated the _width_table.py and added tests for the Khmer language (#4253)

This release alo bumps pathspec to v1 and fixes inconsistencies with Git's .gitignore logic (#4958). Now, files will be ignored if a pattern matches them, even if the parent directory is directly unignored. For example, Black would previously format exclude/not_this/foo.py with this .gitignore:

exclude/
!exclude/not_this/

Now, exclude/not_this/foo.py will remain ignored. To ensure exclude/not_this/ and all of it's children are included in formatting (and in Git), use this .gitignore:

*/exclude/*
!*/exclude/not_this/

This new behavior matches Git. The leading */ are only necessary if you wish to ignore matching subdirectories (like the previous behavior did), and not just matching root

... (truncated)

Changelog

Sourced from black's changelog.

26.1.0

Highlights

Introduces the 2026 stable style (#4892), stabilizing the following changes:

  • always_one_newline_after_import: Always force one blank line after import statements, except when the line after the import is a comment or an import statement (#4489)
  • fix_fmt_skip_in_one_liners: Fix # fmt: skip behavior on one-liner declarations, such as def foo(): return "mock" # fmt: skip, where previously the declaration would have been incorrectly collapsed (#4800)
  • fix_module_docstring_detection: Fix module docstrings being treated as normal strings if preceded by comments (#4764)
  • fix_type_expansion_split: Fix type expansions split in generic functions (#4777)
  • multiline_string_handling: Make expressions involving multiline strings more compact (#1879)
  • normalize_cr_newlines: Add \r style newlines to the potential newlines to normalize file newlines both from and to (#4710)
  • remove_parens_around_except_types: Remove parentheses around multiple exception types in except and except* without as (#4720)
  • remove_parens_from_assignment_lhs: Remove unnecessary parentheses from the left-hand side of assignments while preserving magic trailing commas and intentional multiline formatting (#4865)
  • standardize_type_comments: Format type comments which have zero or more spaces between # and type: or between type: and value to # type: (value) (#4645)

The following change was not in any previous stable release:

  • Regenerated the _width_table.py and added tests for the Khmer language (#4253)

This release alo bumps pathspec to v1 and fixes inconsistencies with Git's .gitignore logic (#4958). Now, files will be ignored if a pattern matches them, even if the parent directory is directly unignored. For example, Black would previously format exclude/not_this/foo.py with this .gitignore:

exclude/
!exclude/not_this/

Now, exclude/not_this/foo.py will remain ignored. To ensure exclude/not_this/ and all of it's children are included in formatting (and in Git), use this .gitignore:

*/exclude/*
!*/exclude/not_this/

This new behavior matches Git. The leading */ are only necessary if you wish to ignore

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Resolves #4892
Resolves #4489
Resolves #4800
Resolves #4764
Resolves #4777
Resolves #1879
Resolves #4710
Resolves #4720
Resolves #4865
Resolves #4645
Resolves #4253
Resolves #4958
Resolves #4961
Resolves #4952
Resolves #4919
Resolves #4923
Resolves #4922
Resolves #4957
Resolves #4928
Resolves #4933

Bumps [black](https://github.com/psf/black) from 25.12.0 to 26.1.0.
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](psf/black@25.12.0...26.1.0)

---
updated-dependencies:
- dependency-name: black
  dependency-version: 26.1.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Feb 9, 2026
@dependabot dependabot bot requested a review from a team as a code owner February 9, 2026 01:33
@dependabot dependabot bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Feb 9, 2026
@github-actions
Copy link

github-actions bot commented Feb 9, 2026

🤖 Claude Code Review

Code Review Analysis

Code Quality

Code follows style guide: The change is a simple dependency version bump in a TOML configuration file. No custom code style issues present.

No commented-out code: No commented code in this diff.

Meaningful variable names: N/A - This is a dependency version specification, not code with variables.

DRY principle followed: N/A - This is a configuration file update.

Identify Defects: No bugs, logic errors, or security vulnerabilities detected. This is a straightforward dependency version update for the black code formatter from version 25.12.0 to 26.1.0 for Python versions > 3.11.

Project memory consideration: Reviewed .claude/CLAUDE.md - the file contains appropriate general guidance for working with the codebase. No environment-specific configuration detected. The change aligns with project maintenance practices.

Testing

⚠️ Testing considerations: While this is a dependency update (not requiring new tests), it's worth noting:

  • The black formatter update should be validated by running the linting command: pylint $(git ls-files '*.py' ':!:docs/source/*')
  • Ideally, the project's CI should automatically verify that the new formatter version doesn't introduce formatting conflicts
  • No test coverage impact expected

Documentation

README updated if needed: N/A - Dependency bumps typically don't require README changes unless they affect user-facing installation instructions.

API docs updated: N/A - This is a dev dependency, not an API change.

Inline comments: N/A - No complex logic involved.

CHANGELOG.md updated: The CHANGELOG.md should be updated to document this dependency bump in the appropriate version section, following the project's changelog conventions.

Markdown formatting: N/A - No markdown files modified in this PR.

Security

No hardcoded credentials: No credentials present.

Input validation: N/A - Configuration change only.

Proper error handling: N/A - Configuration change only.

No sensitive data in logs: N/A - Configuration change only.

No license files: No .lic files or AQAAAD strings detected in this change.

Summary

Overall Assessment: ✅ APPROVED with minor suggestion

This is a clean dependency version bump for the black code formatter. The only improvement would be to add an entry to CHANGELOG.md documenting this update.

Action Items:

  1. Consider adding a CHANGELOG.md entry (e.g., "Updated black formatter from 25.12.0 to 26.1.0 for Python > 3.11")
  2. Verify CI passes with the new formatter version
  3. Ensure local development environments can successfully install and use the updated dependency

Files Modified:

  • pyproject.toml:73 - Updated black version constraint

Automated code review analyzing defects and coding standards

@docktermj docktermj merged commit d5a6ada into main Feb 9, 2026
14 checks passed
@docktermj docktermj deleted the dependabot/pip/black-26.1.0 branch February 9, 2026 12:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant