Skip to content

chore(deps-dev): Bump the linters group with 5 updates - #167

Merged
jodal merged 1 commit into
mainfrom
dependabot/pip/linters-873967a4e2
Sep 1, 2026
Merged

chore(deps-dev): Bump the linters group with 5 updates#167
jodal merged 1 commit into
mainfrom
dependabot/pip/linters-873967a4e2

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 1, 2026

Copy link
Copy Markdown
Contributor

Bumps the linters group with 5 updates:

Package From To
mypy 2.3.0 2.3.1
basedpyright 1.39.9 1.39.10
ruff 0.16.0 0.16.4
ty 0.0.63 0.0.74
zizmor 1.28.0 1.29.0

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 basedpyright from 1.39.9 to 1.39.10

Release notes

Sourced from basedpyright's releases.

v1.39.10 (pyright 1.1.412)

What's Changed

New Contributors

Full Changelog: DetachHead/basedpyright@v1.39.9...v1.39.10

Commits
  • 6d830ba 1.39.10
  • a34496c fix redundant workspace/configuration request
  • b3074fe fix links in tsp docs
  • 979a3fc add nodejs-wheel back as a dev dependency
  • 2852250 ignore mypy_primer/build in bpr
  • 5c4427f baseline type errors from new upstream python file
  • ae420b5 try to fix primer
  • 0e5c88e fixes from merge
  • 78adf4f don't support TSP
  • eff463d Merge tag '1.1.412' into merge-1.1.412
  • Additional commits viewable in compare view

Updates ruff from 0.16.0 to 0.16.4

Release notes

Sourced from ruff's releases.

0.16.4

Release Notes

Released on 2026-08-20.

Preview features

  • [flake8-use-pathlib] Add autofix for PTH116 (#26460)
  • [refurb] Restrict delete-full-slice to lists (FURB131) (#27711)
  • [refurb] Skip FURB101 and FURB103 when the open argument is a file descriptor (#27643)

Bug fixes

  • Fix InvalidInstruction on Windows CPUs that do not support POPCNT (#27803)
  • [pyflakes] Emit semantic syntax errors in string type definitions as F722 (#27835)
  • [pylint] Allow os._exit imports in import-private-name (PLC2701) (#27738)

Rule changes

  • [syntax-errors] Align mixed t-string/bytes error message with CPython 3.14 (#27766)
  • [ruff] Add ctypes.LittleEndianStructure and related types to existing exception (RUF012) (#27753)
  • [syntax-errors] Detect duplicate keyword arguments (#17804)
  • [syntax-errors] Detect parameters declared nonlocal (#27628)

Server

  • Offer display-only fixes and mark safe fixes preferred (#27807)
  • Support pull diagnostics for notebook cells (#27779)

Documentation

  • Add default indicator to rules table (#27724)
  • Fix broken link to Python docs (#27757)

Other changes

  • Fix s390x stacker assembly in release builds (#27776)
  • Guarantee minimum stack size when parsing a module, standalone expression, and suites (#25464)
  • Reduce configuration deserialization code size (#27924)
  • Check packed AST index bounds (#27849)

Contributors

... (truncated)

Changelog

Sourced from ruff's changelog.

0.16.4

Released on 2026-08-20.

Preview features

  • [flake8-use-pathlib] Add autofix for PTH116 (#26460)
  • [refurb] Restrict delete-full-slice to lists (FURB131) (#27711)
  • [refurb] Skip FURB101 and FURB103 when the open argument is a file descriptor (#27643)

Bug fixes

  • Fix InvalidInstruction on Windows CPUs that do not support POPCNT (#27803)
  • [pyflakes] Emit semantic syntax errors in string type definitions as F722 (#27835)
  • [pylint] Allow os._exit imports in import-private-name (PLC2701) (#27738)

Rule changes

  • [syntax-errors] Align mixed t-string/bytes error message with CPython 3.14 (#27766)
  • [ruff] Add ctypes.LittleEndianStructure and related types to existing exception (RUF012) (#27753)
  • [syntax-errors] Detect duplicate keyword arguments (#17804)
  • [syntax-errors] Detect parameters declared nonlocal (#27628)

Server

  • Offer display-only fixes and mark safe fixes preferred (#27807)
  • Support pull diagnostics for notebook cells (#27779)

Documentation

  • Add default indicator to rules table (#27724)
  • Fix broken link to Python docs (#27757)

Other changes

  • Fix s390x stacker assembly in release builds (#27776)
  • Guarantee minimum stack size when parsing a module, standalone expression, and suites (#25464)
  • Reduce configuration deserialization code size (#27924)
  • Check packed AST index bounds (#27849)

Contributors

... (truncated)

Commits

Updates ty from 0.0.63 to 0.0.74

Release notes

Sourced from ty's releases.

0.0.74

Release Notes

Released on 2026-08-22.

Bug fixes

  • Avoid duplicate bindings in multi-target assignments (#27938)
  • Avoid panic on unpacked kwargs in string annotations (#27963)
  • Fix stack overflow in recursive TypedDict dictionary compatibility (#27951)
  • Handle assignment expressions in string annotations (#27921)
  • Handle dynamic classes in string annotations (#27883)
  • Preserve string annotation context in lambda defaults and TypedDict types (#27914)
  • Skip invalid subscript arguments in string annotations (#27917)
  • Skip invalid subscript operands in string annotations (#27882)

LSP server

  • Add untrustedWorkspace option to the LSP (#27828)
  • Add executable discovery to the server command (#27806)
  • Handle file-valued workspace folders from Zed (#27836)
  • Skip scripts with an invalid PEP 723 configuration (#27505)
  • Support pull diagnostics for notebook cells (#27778)

Documentation

  • Update mypy/pyright comparison table (#4165)

Diagnostics

  • Add an opt-in unsound-assignment rule for variables (#27874)
  • Fix variadic signature display (#27869)
  • Highlight declarations in invalid-assignment diagnostics (#27872)
  • Improve LiteralString suggestions in string annotations (#27931)
  • Use invalid-type-form for non-generic class annotations (#27889)

Core type checking

  • Add bounded constraint solution projections (#27949)
  • Fix invariant gradual tuple materialization ranges (#27946)
  • Guard recursive constructor bindings by receiver (#27958)
  • Preserve all alternatives in bounded intersections (#27898)
  • Preserve keyword safety for unpacked callables (#27517)
  • Preserve source protocol members and classify finite aliases (#27772)
  • Preserve type-variable order when reloading constraints (#27904)
  • Propagate narrowing through statically known branches (#27752)
  • Recognize ABC metaclass methods on protocols (#27897)
  • Support __slots__ (#27730)

Performance

... (truncated)

Changelog

Sourced from ty's changelog.

0.0.74

Released on 2026-08-22.

Bug fixes

  • Avoid duplicate bindings in multi-target assignments (#27938)
  • Avoid panic on unpacked kwargs in string annotations (#27963)
  • Fix stack overflow in recursive TypedDict dictionary compatibility (#27951)
  • Handle assignment expressions in string annotations (#27921)
  • Handle dynamic classes in string annotations (#27883)
  • Preserve string annotation context in lambda defaults and TypedDict types (#27914)
  • Skip invalid subscript arguments in string annotations (#27917)
  • Skip invalid subscript operands in string annotations (#27882)

LSP server

  • Add untrustedWorkspace option to the LSP (#27828)
  • Add executable discovery to the server command (#27806)
  • Handle file-valued workspace folders from Zed (#27836)
  • Skip scripts with an invalid PEP 723 configuration (#27505)
  • Support pull diagnostics for notebook cells (#27778)

Documentation

  • Update mypy/pyright comparison table (#4165)

Diagnostics

  • Add an opt-in unsound-assignment rule for variables (#27874)
  • Fix variadic signature display (#27869)
  • Highlight declarations in invalid-assignment diagnostics (#27872)
  • Improve LiteralString suggestions in string annotations (#27931)
  • Use invalid-type-form for non-generic class annotations (#27889)

Core type checking

  • Add bounded constraint solution projections (#27949)
  • Fix invariant gradual tuple materialization ranges (#27946)
  • Guard recursive constructor bindings by receiver (#27958)
  • Preserve all alternatives in bounded intersections (#27898)
  • Preserve keyword safety for unpacked callables (#27517)
  • Preserve source protocol members and classify finite aliases (#27772)
  • Preserve type-variable order when reloading constraints (#27904)
  • Propagate narrowing through statically known branches (#27752)
  • Recognize ABC metaclass methods on protocols (#27897)
  • Support __slots__ (#27730)

Performance

... (truncated)

Commits

Updates zizmor from 1.28.0 to 1.29.0

Release notes

Sourced from zizmor's releases.

v1.29.0

New Features 🌈🔗

  • zizmor now has experimental support for auditing pre-commit inputs, meaning both pre-commit configuration and hook definitions (#2209)

  • New audit: insecure-url-scheme detects usages of insecure (i.e. plaintext) protocols when making network requests. The initial version of this audit is limited to pre-commit inputs only (#2228)

  • zizmor now supports GitHub's "self-repository" reference syntax for local actions, e.g. uses: $/foo/bar instead of a manual checkout and uses: ./foo/bar (#2248)

Changes ⚠️🔗

Removals 🌅🔗

  • --collect=workflows-only and --collect=actions-only have been fully removed. Use --collect=workflows and --collect=actions for the replacement behavior (#2242)

Bug Fixes 🐛🔗

  • Fixed a bug where zizmor would reject a valid workflow definition for containing a literal jobs..outputs. value for being a non-string (#2220)

  • Fixed a bug where the github-app audit would incorrectly flag some usages as needing a repositories: key, despite requesting organization-level-only permissions (#2227)

  • Fixed a class of bugs where zizmor would discover the user's configuration in unintuitive ways. When auditing from a Git repository, zizmor now uses the repository root to discover configuration consistently (#2234)

Changelog

Sourced from zizmor's changelog.

1.29.0

New Features 🌈

  • zizmor now has experimental support for auditing pre-commit inputs, meaning both pre-commit configuration and hook definitions (#2209)

  • New audit: [insecure-url-scheme] detects usages of insecure (i.e. plaintext) protocols when making network requests. The initial version of this audit is limited to pre-commit inputs only (#2228)

  • zizmor now supports GitHub's "self-repository" reference syntax for local actions, e.g. #!yaml uses: $/foo/bar instead of a manual checkout and #!yaml uses: ./foo/bar (#2248)

Changes ⚠️

  • The [unpinned-uses] and [unpinned-images] audits have been separated more cleanly: [unpinned-uses] is now principally responsible for Git-style #!yaml uses: clauses, whereas [unpinned-images] is now responsible for docker://-style #!yaml uses: clauses (in addition to already checking other image references) (#2222)

Removals 🌅

  • --collect=workflows-only and --collect=actions-only have been fully removed. Use --collect=workflows and --collect=actions for the replacement behavior (#2242)

Bug Fixes 🐛

  • Fixed a bug where zizmor would reject a valid workflow definition for containing a literal jobs.<job>.outputs.<name> value for being a non-string (#2220)

  • Fixed a bug where the [github-app] audit would incorrectly flag some usages as needing a #!yaml repositories: key, despite requesting organization-level-only permissions (#2227)

  • Fixed a class of bugs where zizmor would discover the user's configuration in unintuitive ways. When auditing from a Git repository, zizmor now uses the repository root to discover configuration consistently (#2234)

Commits

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

Bumps the linters group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [mypy](https://github.com/python/mypy) | `2.3.0` | `2.3.1` |
| [basedpyright](https://github.com/detachhead/basedpyright) | `1.39.9` | `1.39.10` |
| [ruff](https://github.com/astral-sh/ruff) | `0.16.0` | `0.16.4` |
| [ty](https://github.com/astral-sh/ty) | `0.0.63` | `0.0.74` |
| [zizmor](https://github.com/zizmorcore/zizmor) | `1.28.0` | `1.29.0` |


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 `basedpyright` from 1.39.9 to 1.39.10
- [Release notes](https://github.com/detachhead/basedpyright/releases)
- [Commits](DetachHead/basedpyright@v1.39.9...v1.39.10)

Updates `ruff` from 0.16.0 to 0.16.4
- [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.0...0.16.4)

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

Updates `zizmor` from 1.28.0 to 1.29.0
- [Release notes](https://github.com/zizmorcore/zizmor/releases)
- [Changelog](https://github.com/zizmorcore/zizmor/blob/main/docs/release-notes.md)
- [Commits](zizmorcore/zizmor@v1.28.0...v1.29.0)

---
updated-dependencies:
- dependency-name: mypy
  dependency-version: 2.3.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: linters
- dependency-name: basedpyright
  dependency-version: 1.39.10
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: linters
- dependency-name: ruff
  dependency-version: 0.16.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: linters
- dependency-name: ty
  dependency-version: 0.0.74
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: linters
- dependency-name: zizmor
  dependency-version: 1.29.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: linters
...

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 Sep 1, 2026
@codecov

codecov Bot commented Sep 1, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (d909019) to head (df20f61).

Additional details and impacted files
@@            Coverage Diff            @@
##              main      #167   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files            8         8           
  Lines          318       318           
  Branches         9         9           
=========================================
  Hits           318       318           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@jodal
jodal merged commit 144c5af into main Sep 1, 2026
16 checks passed
@jodal
jodal deleted the dependabot/pip/linters-873967a4e2 branch September 1, 2026 15:35
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

Development

Successfully merging this pull request may close these issues.

1 participant