Skip to content

[CHORE](deps)(deps): Bump the python-dependencies group with 3 updates - #702

Merged
Victor Schappert (vcschapp) merged 2 commits into
mainfrom
dependabot/uv/python-dependencies-b9fc332ba3
Sep 2, 2026
Merged

Victor Schappert (vcschapp) merged 2 commits into
mainfrom
dependabot/uv/python-dependencies-b9fc332ba3

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 26, 2026

Copy link
Copy Markdown
Contributor

Bumps the python-dependencies group with 3 updates: mypy, ruff and packaging.

Updates mypy from 2.3.0 to 2.3.1

Changelog

Sourced from mypy's changelog.

Mypy 2.3.1

  • Fix mypyc crash on double yielding Iterators (Daniël van Noord, PR 21826)
  • Fix mypyc default_factory for inherited dataclass (Daniël van Noord, PR 21785)
  • Clear mypyc coroutine env on coroutine completion (Piotr Sawicki, PR 21734)
  • Fix crash when unpacking return value from overload (Shantanu, PR 21830)

Acknowledgements

Thanks to all mypy contributors who contributed to this release:

  • Agriya Khetarpal
  • Ethan Sarp
  • Ivan Levkivskyi
  • Jingchen Ye
  • Jukka Lehtosalo
  • Piotr Sawicki
  • Shantanu
  • Tom Bannink
  • Viktor Szépe
  • ygale

I'd also like to thank my employer, Dropbox, for supporting mypy development.

Mypy 2.2

We've just uploaded mypy 2.2.0 to the Python Package Index (PyPI). Mypy is a static type checker for Python. This release includes new features, performance improvements and bug fixes. You can install it as follows:

python3 -m pip install -U mypy

You can read the full documentation for this release on Read the Docs.

Support for Closed TypedDicts (PEP 728)

Mypy now supports closed TypedDicts as specified in PEP 728. A closed TypedDict cannot have extra keys beyond those explicitly defined. This allows the type checker to determine that certain operations are safe when they otherwise wouldn't be due to the potential presence of unknown keys.

You can use the closed keyword argument with TypedDict:

HasName = TypedDict("HasName", {"name": str})
HasOnlyName = TypedDict("HasOnlyName", {"name": str}, closed=True)
Movie = TypedDict("Movie", {"name": str, "year": int})
movie: Movie = {"name": "Nimona", "year": 2023}
has_name: HasName = movie  # OK: HasName is open (default)
has_only_name: HasOnlyName = movie  # Error: HasOnlyName is closed and Movie has extra "year" key
</tr></table>

... (truncated)

Commits

Updates ruff from 0.16.2 to 0.16.3

Release notes

Sourced from ruff's releases.

0.16.3

Release Notes

Released on 2026-08-13.

Preview features

  • [pylint] Fix false negatives on negative numbers (PLR6104) (#27251)
  • [pyupgrade] Add rule to replace while 1 with while True (UP048) (#27190)

Bug fixes

  • [flake8-bandit] Also check keyword arguments (S602, S603, S607, S609) (#27687)
  • [pylint] Allow continue in finally on Python 3.8 (#27626)
  • [pylint] Fix PLE1307 false positive with bools (#27651)
  • [pylint] Fix false positives and negatives with %b format character (PLE1300, PLE1307) (#27560)
  • [pylint] Improve handling of concatenated strings (PLE1300) (#27659)

Rule changes

  • [numpy] Make np.chararray autofix backwards-compatible (NPY201) (#27527)

Performance

  • Enable PGO for Linux x86-64 Ruff releases (#27570)
  • Enable PGO for Linux ARM64 Ruff releases (#27574)
  • Enable PGO for Windows x86-64 Ruff releases (#27573)
  • Enable PGO for macOS ARM64 Ruff releases (#27572)
  • Reduce Expr size to 64 bytes (#27591)

CLI

  • Hyperlink rule codes in ruff check --statistics output (#27646)

Documentation

  • [ruff] Also suggest asyncio.TaskGroup (RUF006) (#27461)

Other changes

Contributors

... (truncated)

Changelog

Sourced from ruff's changelog.

0.16.3

Released on 2026-08-13.

Preview features

  • [pylint] Fix false negatives on negative numbers (PLR6104) (#27251)
  • [pyupgrade] Add rule to replace while 1 with while True (UP048) (#27190)

Bug fixes

  • [flake8-bandit] Also check keyword arguments (S602, S603, S607, S609) (#27687)
  • [pylint] Allow continue in finally on Python 3.8 (#27626)
  • [pylint] Fix PLE1307 false positive with bools (#27651)
  • [pylint] Fix false positives and negatives with %b format character (PLE1300, PLE1307) (#27560)
  • [pylint] Improve handling of concatenated strings (PLE1300) (#27659)

Rule changes

  • [numpy] Make np.chararray autofix backwards-compatible (NPY201) (#27527)

Performance

  • Enable PGO for Linux x86-64 Ruff releases (#27570)
  • Enable PGO for Linux ARM64 Ruff releases (#27574)
  • Enable PGO for Windows x86-64 Ruff releases (#27573)
  • Enable PGO for macOS ARM64 Ruff releases (#27572)
  • Reduce Expr size to 64 bytes (#27591)

CLI

  • Hyperlink rule codes in ruff check --statistics output (#27646)

Documentation

  • [ruff] Also suggest asyncio.TaskGroup (RUF006) (#27461)

Other changes

Contributors

... (truncated)

Commits
  • b0e4702 Bump 0.16.3 (#27723)
  • ecdd401 [ty] Separate script and uv modules from project metadata (#27720)
  • 1263524 [ty] Simplify display implementations with std::fmt::from_fn (#27718)
  • 59196ba [ty] Unify polarity-aware relation construction (#27707)
  • b8c5e73 [ty] Disable CodSpeed cycle estimation for instrumented benchmarks (#27706)
  • 2b0d210 [ty] Centralize matched argument relations (#27705)
  • a9130f3 [pyupgrade] Add rule to replace while 1 with while True (while-one, `...
  • c64c7d6 [ty] Model try exception flow with operation checkpoints (#27471)
  • 9dea5ef [ty] Avoid deriving sequents for typevars with concrete bounds (#27587)
  • 9798e88 [ty] Preserve enum exhaustiveness with custom missing methods (#27700)
  • Additional commits viewable in compare view

Updates packaging from 26.2 to 26.3

Release notes

Sourced from packaging's releases.

26.3

What's Changed

Features

  • Add a public VersionRange API and SpecifierSet.to_range(), representing the versions a specifier set accepts as an interval set that supports intersection, union, difference, complement, set relations, membership tests, and filtering. VersionRange.to_specifier_set() converts a range back to a SpecifierSet where a PEP 440 form exists. (#1267, #1270, #1298)
  • PEP 808: accept Metadata-Version: 2.6. (#1194)
  • Add a limit argument to parse_tag() for compressed tag sets. (#1220)
  • Add a prefer_sdist_predicate argument to Pylock.select() to prefer source distributions over wheels for selected packages. (#1334)
  • Add pure_python_tags() to generate the pure-Python tags for a Python version without touching the running platform. (#1346)
  • Add SpecifierSet.is_subset(), SpecifierSet.is_superset(), and SpecifierSet.is_disjoint(), which compare the versions two specifier sets accept. (#1313)

Behavior adaptations

  • Drop support for Python 3.8; packaging now requires Python 3.9 or later. (#1157)
  • Prefer native linux_* platform tags over manylinux and musllinux tags on Linux. (#160)

Fixes for versions and specifiers

  • Raise InvalidVersion instead of TypeError when Version is given a non-string. (#1319)
  • Raise InvalidVersion for non-string pre-release letters passed to Version.from_parts. (#1241)
  • Fix an AttributeError when hashing internally trimmed versions. (#1242)
  • Fix SpecifierSet.is_unsatisfiable for post-release boundary intersections. (#1257)

Fixes for requirements and markers

  • Make Requirement.__hash__ consistent with __eq__ for trailing-zero-equivalent specifiers (e.g. foo==1.0.0 and foo==1.0.0.0), so equal requirements hash equal and deduplicate in sets and dicts. (#1232)
  • Normalize requested extra names before comparing or hashing requirements. (#644)
  • Preserve a Requirement's specifier prereleases override across a pickle round trip. (#1204)
  • Raise InvalidRequirement instead of InvalidSpecifier when a requirement contains an invalid specifier. (#1332)
  • Clarify the error for post-release prefix wildcards like ==1.0.post1.*. (#1299)
  • Preserve quoting semantics when serializing marker values, so round-tripped markers parse back to the same marker. (#1213)
  • Keep the parentheses of a nested group when serializing markers. (#1316)
  • Normalize extra and dependency_groups values in nested markers at parse time. (#1246, #1310)
  • Raise UndefinedComparison when a set-valued variable like extras is used outside the membership form. (#1265)
  • Raise UndefinedEnvironmentName (a KeyError subclass) for missing environment keys during marker evaluation. (#1276)
  • Wrap malformed string literal errors in InvalidMarker / InvalidRequirement instead of leaking a low-level error. (#1249)
  • Reject requirements and markers with a trailing line break. (#1345)

Fixes for metadata and licenses

  • Collect all from_email validation errors into one ExceptionGroup instead of raising the first. (#1268)
  • Accept the UTF-8 charset case-insensitively in email payloads. (#1330)
  • Reject malformed Description-Content-Type values. (#1329)
  • Don't rewrite user values that contain {field} placeholders in error messages. (#1327)
  • Route multipart email payloads to unparsed instead of asserting. (#1247)
  • Make InvalidMetadata and CyclicDependencyGroup picklable. (#1328)
  • Fold every line boundary str.splitlines recognizes when writing a header with RFC822Message. (#1356)

... (truncated)

Changelog

Sourced from packaging's changelog.

26.3 - 2026-08-03


Features:
  • Add a public :class:~packaging.ranges.VersionRange API and
    :meth:SpecifierSet.to_range() &lt;packaging.specifiers.SpecifierSet.to_range&gt;,
    representing the versions a specifier set accepts as an interval set that
    supports intersection, union, difference, complement, set relations,
    membership tests, and filtering.
    :meth:~packaging.ranges.VersionRange.to_specifier_set converts a range back
    to a :class:~packaging.specifiers.SpecifierSet where a PEP 440 form exists.
    (:pull:1267, :pull:1270, :pull:1298)
  • PEP 808: accept Metadata-Version: 2.6. (:pull:1194)
  • Add a limit argument to parse_tag() for compressed tag sets.
    (:issue:1220)
  • Add a prefer_sdist_predicate argument to Pylock.select() to prefer
    source distributions over wheels for selected packages. (:pull:1334)
  • Add :func:~packaging.tags.pure_python_tags to generate the pure-Python
    tags for a Python version without touching the running platform.
    (:pull:1346)
  • Add :meth:SpecifierSet.is_subset() &lt;packaging.specifiers.SpecifierSet.is_subset&gt;, :meth:~packaging.specifiers.SpecifierSet.is_superset,
    and :meth:~packaging.specifiers.SpecifierSet.is_disjoint, which compare the
    versions two specifier sets accept. (:pull:1313)

Behavior adaptations:

  • Drop support for Python 3.8; packaging now requires Python 3.9 or later.
    (:pull:1157)
  • Prefer native linux_* platform tags over manylinux and musllinux
    tags on Linux. (:issue:160)

Fixes for versions and specifiers:

  • Raise InvalidVersion instead of TypeError when Version is given a
    non-string. (:pull:1319)
  • Raise InvalidVersion for non-string pre-release letters passed to
    Version.from_parts. (:pull:1241)
  • Fix an AttributeError when hashing internally trimmed versions.
    (:pull:1242)
  • Fix SpecifierSet.is_unsatisfiable for post-release boundary
    intersections. (:pull:1257)

Fixes for requirements and markers:

  • Make Requirement.__hash__ consistent with __eq__ for
    trailing-zero-equivalent specifiers (e.g. foo==1.0.0 and
    foo==1.0.0.0), so equal requirements hash equal and deduplicate in
    sets and dicts. (:pull:1232)
    </tr></table>

... (truncated)

Commits
  • 929fd4b Bump for release
  • f300ebf chore(deps): bump the pre-commit group with 5 updates (#1357)
  • f91d975 ci(downstream): bump hatchling to 1.31.0 and fix its pytest rootdir (#1361)
  • b1a7124 chore(deps): bump the github-actions group with 7 updates (#1358)
  • 2d873eb fix(metadata): fold every line boundary when writing headers (#1356)
  • 413d006 docs: changelog for 26.3 (#1343)
  • 4eb0753 docs(metadata): explain selective field validation (#1342)
  • 77e9ed4 feat(tags): add pure Python tag generator (#1346)
  • 7cea5e8 ci: drop 3.13t on Windows (3.13.14t may fail to build, run takes 9 minutes) (...
  • 45a8b34 docs: add missing versionadded/versionchanged directives (#1344)
  • Additional commits viewable in compare view

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 <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

@dependabot dependabot Bot added automation 🦾 Change/enhance automation of a process bot labels Aug 26, 2026
@github-actions

github-actions Bot commented Aug 26, 2026 •

Copy link
Copy Markdown

🗺️ Schema reference docs preview is live!

🌍 Preview https://staging.overturemaps.org/schema/pr/702/schema/index.html
🕐 Updated Sep 02, 2026 14:05 UTC
📝 Commit 0d60dee
🔧 env SCHEMA_PREVIEW true

Note

♻️ This preview updates automatically with each push to this PR.

Bumps the python-dependencies group with 3 updates: [mypy](https://github.com/python/mypy), [ruff](https://github.com/astral-sh/ruff) and [packaging](https://github.com/pypa/packaging).


Updates `mypy` from 2.3.0 to 2.3.1
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](python/mypy@v2.3.0...v2.3.1)

Updates `ruff` from 0.16.2 to 0.16.3
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](astral-sh/ruff@0.16.2...0.16.3)

Updates `packaging` from 26.2 to 26.3
- [Release notes](https://github.com/pypa/packaging/releases)
- [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst)
- [Commits](pypa/packaging@26.2...26.3)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 2.3.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: python-dependencies
- dependency-name: ruff
  dependency-version: 0.16.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: python-dependencies
- dependency-name: packaging
  dependency-version: '26.3'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
@vcschapp
Victor Schappert (vcschapp) merged commit df95a53 into main Sep 2, 2026
26 checks passed
@vcschapp
Victor Schappert (vcschapp) deleted the dependabot/uv/python-dependencies-b9fc332ba3 branch September 2, 2026 16:17

This branch was successfully deployed

1 active deployment
staging — 0d60dee2 Deployed Sep 2, 2026 by lowlydba via Deploy #481
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

automation 🦾 Change/enhance automation of a process bot

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants