Skip to content

⬆️ deps: bump Python dev dependencies - #4

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/python-dev-dependencies
Open

renovate[bot] wants to merge 1 commit into
mainfrom
renovate/python-dev-dependencies

Conversation

@renovate

@renovate renovate Bot commented Oct 19, 2026

Copy link
Copy Markdown

This PR contains the following updates:

Package Change Age Confidence
pre-commit >=4.6.2 → >=4.7.0 age confidence
pytest-rerunfailures >=16.6.1 → >=16.7 age confidence
ty (changelog) >=0.0.78 → >=0.0.89 age confidence

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

pre-commit/pre-commit (pre-commit)

v4.7.0

Compare Source

==================

Fixes
pytest-dev/pytest-rerunfailures (pytest-rerunfailures)

v16.7

Compare Source

Features
++++++++

  • Allow configuring only_rerun regular expressions in pytest.ini files.
    (#&#8203;165 <https://github.com/pytest-dev/pytest-rerunfailures/issues/165>_)
  • Show each rerun attempt and its final outcome in the rerun test summary info
    section. (#&#8203;191 <https://github.com/pytest-dev/pytest-rerunfailures/issues/191>_)
  • Allow flaky marker conditions to inspect the exception that caused a failed
    test phase, including when running with pytest-xdist. (#&#8203;230 <https://github.com/pytest-dev/pytest-rerunfailures/issues/230>_)

Bug Fixes
+++++++++

  • Match only_rerun against the full exception chain (__cause__ and
    __context__), not only the outermost exception. Match rerun_except
    against explicit __cause__ links only, so implicit except /
    finally context does not suppress reruns. (#&#8203;353 <https://github.com/pytest-dev/pytest-rerunfailures/issues/353>_)
  • Fix INTERNALERROR when only_rerun or rerun_except is given a bare
    exception class instead of a list. (#&#8203;362 <https://github.com/pytest-dev/pytest-rerunfailures/issues/362>_)
  • Fix subtest reruns with newer pytest versions that use structured NodeId
    values internally. (#&#8203;363 <https://github.com/pytest-dev/pytest-rerunfailures/issues/363>_)
  • Mark teardown failures from an attempt that is rerun as reruns, so a later
    successful attempt is not reported as an error. (#&#8203;366 <https://github.com/pytest-dev/pytest-rerunfailures/issues/366>_)

Misc
++++

  • Keep the test suite passing when pytest-randomly is installed, including when
    the outer pytest is started with -p no:randomly. (#&#8203;218 <https://github.com/pytest-dev/pytest-rerunfailures/issues/218>_)
  • Test the free-threaded Python 3.14 build in CI, via a new py314t tox
    environment and a matching workflow job. (#&#8203;361 <https://github.com/pytest-dev/pytest-rerunfailures/issues/361>_)
astral-sh/ty (ty)

v0.0.89

Compare Source

Released on 2026-10-16.

Core type checking
Bug fixes
  • Avoid a panic when negating dynamic type aliases (#​29427)
  • Widen tuple literal lengths when other collection elements contain nested tuple types (#​29147)
  • Report invalid Generic and Protocol arguments containing nested variadic type variables (#​29146)
Performance
  • Speed up generic class-pattern narrowing by skipping impossible intersection comparisons (#​29240)
Contributors

v0.0.88

Compare Source

Released on 2026-10-15.

Bug fixes
  • Avoid panics and hangs involving recursive type aliases and intersections (#​29057)
  • Fix false invalid-mutable-override errors when overriding object attributes (#​29373)
  • Fix attribute assignment and deletion checks through bounded or constrained type variables (#​29345)
  • Detect instance layout conflicts hidden by additional base classes (#​29372)
  • Fix false missing-argument errors when Pydantic models override inherited attributes with ClassVar (#​29367)
  • Preserve known module owners when uv reports owners outside the resolution (#​29296)
Diagnostic improvements
  • Report assignments to individually frozen Pydantic fields (#​29305)
Core type checking
  • Improve type inference for intersection arguments to generic functions (#​28677)
  • Preserve inherited annotations for unannotated subclass attributes when a base has type Any or Unknown (#​28973)
  • Preserve common return-type structure when gradual arguments match multiple overloads (#​29342)
  • Check upper bounds when inferring type variables from caller type variables (#​29014)
Contributors

v0.0.87

Compare Source

Released on 2026-10-13.

LSP server
  • Clamp notebook cell positions to the end of the cell (#​29307)
  • Fix deadlock when requests arrive before workspace configuration (#​29303)
  • Fix notebook cell lookups after cells with cell magics (#​29308)
  • Fix panic on completions past the end of a notebook's last cell (#​29306)
Diagnostic improvements
  • Add opt-in mismatched-sentinel-name rule (#​27206)
  • Deduplicate identical argument type diagnostics (#​29337)
  • Enable invalid-mutable-override by default (#​29335)
  • Improve display of distinct string literal types (#​29206)
  • Respect suppression of attribute override diagnostics (#​29327)
Core type checking
  • Check overrides of receiver attribute declarations (#​28557)
  • Infer the default for definitely absent keys in closed TypedDict.get calls (#​29136)
  • Leave room for later positional arguments when unpacking a variable-length argument (#​29293)
  • Preserve minimum lengths of unpacked tuple unions (#​29331)
  • Specialize bare generic class name with type[...] type context (#​29248)
Performance
  • Avoid constructing nominal complements (#​29292)
  • Optimize system path equality (#​29340)
Contributors

v0.0.86

Compare Source

Released on 2026-10-09.

The executables in our macOS and Windows release archives and ty wheels are now code-signed.
macOS executables are signed with an Apple Developer ID certificate and notarized by Apple. Windows
executables have timestamped Authenticode signatures from Azure Artifact Signing. This enables
verification of the release publisher and binary integrity, supports publisher-based allowlisting,
and should reduce security warnings and antivirus false positives.

Bug fixes
  • Infer empty collection branches from nonempty literals (#​29131)
  • Invalidate dependency metadata when environments change (#​29126)
  • Preserve final attribute restrictions on composite types (#​29135)
  • Preserve recursive structure in Annotated values (#​29058)
  • Specialize inherited dataclass field converters (#​29192)
LSP server
  • Show documentation for annotation operators on hover (#​29185)
Core type checking
  • Check attribute and property override types (#​28556)
  • Narrow tuple unions through truthiness and type checks (#​29125)
  • Preserve literal types when consuming dictionary literals (#​29145)
  • Preserve non-boolean comparison results for intersections (#​28045)
  • Preserve receiver specializations when calling unions of bound methods (#​29015)
  • Represent uninhabited truthiness explicitly (#​28843)
  • Solve validity type context through constraint sets (#​28909)
Performance
  • Avoid recursion guards for non-generic nominal targets (#​29202)
  • Check exact exclusions before intersection positives (#​29195)
Memory usage improvements
  • Share constraints in retained sequent maps (#​28966)
Other changes
Contributors

v0.0.85

Compare Source

Released on 2026-10-06.

Preview features
  • Refresh uv project metadata when uv files change (#​28529)
Bug fixes
  • Avoid recursive lambda class decorator panics (#​28984)
  • Compare observable notebook state for equality (#​28874)
  • Detect recursive alias cycles through intersections (#​28916)
  • Fix anchoring of include and exclude patterns after the project's root changed (#​28995)
  • Fix stack overflow when inferring dynamic class metaclasses (#​28917)
  • Normalize recursive dataclass transform metadata (#​28920)
  • Normalize recursive TypedDicts during cycle recovery (#​28918)
  • Preserve cycle markers in ParamSpec specialization (#​29024)
CLI
  • Prefer existing @​ paths over response files in Ruff and ty (#​28877)
LSP server
  • Add namespace package support to import completions. (#​28202)
  • Avoid stale I/O diagnostics when closing deleted files (#​28988)
  • Contain rendered code within Markdown fences (#​28869)
  • Refresh Python settings when virtual environments change (#​28650)
Diagnostic improvements
  • Add opt-in truthiness-test-of-none-union rule (#​28889)
  • Avoid disjoint-cast diagnostics in situations where the value could have been inferred as being compatible with the casted type if it had only been inferred with the right type context (#​28851)
  • Bound nested callable signature display (#​29049)
  • Explain outdated uv versions in metadata errors (#​28959)
  • Improve display of string literal types that include unicode characters or double quotes (#​29089)
  • Improve uv metadata diagnostics (#​28990)
  • Preserve constrained type-variable failure diagnostics (#​28768)
  • Preserve generic inference errors during diagnostic recovery (#​28811)
  • Report deprecated overloads in decorator applications (#​28999)
Core type checking
  • Bound methods without a receiver are not callable (#​28981)
  • Fix member lookup on union-bounded type variables (#​29018)
  • Fix type variable inference for final class objects (#​29097)
  • Freshen ParamSpec identities consistently (#​28826)
  • Honor generic property setters in protocol compatibility (#​28562)
  • Infer nominal generic specializations from bounded type variables (#​28812)
  • Inherit annotations for unannotated subclass defaults (#​28575)
  • Keep unresolved TypeIs targets provisional (#​29066)
  • Limit wildcard exports using literal __all__ (#​28972)
  • Narrow later match cases after always-true guards (#​28960)
  • Pass generic context to call inference solver (#​29065)
  • Preserve captured variables in ParamSpec comparisons (#​28827)
  • Preserve intersection receivers in implicit dunder calls (#​28833)
  • Preserve literal unpacking during call analysis (#​28821)
  • Preserve recursive type context during constructor inference (#​28903)
  • Preserve tuple shapes when slicing NewTypes (#​29091)
  • Preserve tuple subclass identity during type expansion (#​29090)
  • Promote bounded type variables to declared constraints (#​28814)
  • Propagate outer type context through cast calls (#​28855)
  • Recognize bare TypeVarTuples in materialization checks (#​28815)
  • Retain individual overload argument expansion outcomes (#​28825)
  • Specialize instance members once (#​29043)
  • Specialize Self bounds through generic type aliases (#​28890)
  • Support slots_default in dataclass_transform (#​28885)
  • Sync vendored typeshed stubs (#​29032). Typeshed diff
  • Sync vendored typeshed stubs (#​29042). Typeshed diff
  • Validate call arguments once after inference (#​28824)
  • Validate union operands involving None (#​28931)
Performance
  • Avoid expanding recursive protocol materializations (#​29026)
  • Avoid repeated work in nested match patterns (#​28926)
  • Cache the flattened module list (#​28932)
  • Index nonlocal bindings when sweeping snapshots (#​28935)
  • Skip descendant searches for leaf modules (#​28845)
  • Skip independent constraint-pair derivation (#​28950)
  • Skip storing default definition states (#​28934)
Memory usage improvements
  • Avoid caching empty sequent maps (#​28949)
  • Avoid retaining docstring literal types (#​28944)
  • Compact bound-method receivers (#​28969)
  • Move ParamSpec signature metadata to extras (#​28970)
  • Release closed module ASTs synchronously during auto-import discovery (#​28714)
  • Skip caching trivially assignable types (#​28936)
Contributors

v0.0.84

Compare Source

Released on 2026-09-24.

This release addresses GHSA-vxvm-j4xq-q7m4, a use-after-free vulnerability during incremental type checking that can result in arbitrary code execution when analyzing a specially crafted Python project. Users who run ty on untrusted code should upgrade to 0.0.84 or newer.

Bug fixes
  • Fix stale diagnostics from the LSP server after toggling showSyntaxErrors (#​28759)
LSP server
  • Complete string keys from dictionary initializers (#​28820)
  • Support LSP requests against closed documents (#​28595)
  • Select projects for external files using import search paths (#​28594)
  • Use workspace editor settings for external files (#​28639)
Performance
  • Avoid repeated subtyping checks for materialized recursive protocols (#​28774)
  • Skip reading notebooks when discovering scripts (#​28781)
Core type checking
  • Avoid incorrect simplification of TypeIs materializations (#​28817)
  • Fix disjointness of generic class types (#​28787)
  • Fix staticmethod shadowing through generic receivers and unions (#​28766)
  • Infer callable signatures from bounded type variables (#​28599)
  • Infer constant membership in inline list and set literals (e.g. "foo" in ["foo"] is now inferred as Literal[True]) (#​28676)
  • Infer through optional generic containers in the legacy solver (#​28791)
  • Preserve call narrowing during cyclic inference (#​28708)
  • Preserve intersections of type guard return types (#​28796)
  • Use subtyping for constraint-set implication (#​28657)
Configuration
  • Disable invalid-legacy-positional-parameter by default (#​28834)
Other changes
  • Only consider reachable definitions when determining whether a condition should be exempted from redundant-condition(-strict) due to the condition being defined relative to sys.version_info, sys.platform, os.name or typing.TYPE_CHECKING (#​28788)
Contributors

v0.0.83

Compare Source

Released on 2026-09-21.

Bug fixes
  • Fix hangs from repeated partial application (#​28754)
  • Preserve PEP 695 bindings across nested classes (#​28723)
LSP server
  • Include required imports in every inlay hint (#​28724)
  • Preserve fast name filtering for normalized Unicode source (#​28701)
  • Refresh diagnostics after workspace configuration changes (#​28755)
Diagnostic improvements
  • Expand unreachable-code annotations for redundant conditions (#​28674)
  • Improve diagnostics for async generator stubs (#​28692)
  • Improve primary diagnostic annotations for redundant-condition(-strict) diagnostics (#​28666)
  • Point misplaced tuple ellipsis diagnostics at each ellipsis (#​28709)
Other changes
  • Add rules that detect suspicious uses of Callable, Iterable, Iterator or Generator types in a boolean context (#​28554)
  • Allow slots to override abstract properties (#​28698)
  • Avoid leaking Unknown from unconstrained collection use-sites (#​28659)
  • Diagnose unguarded cycles in implicit and PEP 613 aliases (#​28704)
  • Eagerly bind unused Self receivers (#​28662)
  • Generalize receiver binding for wrapped callables (#​28725)
  • More faithful representation of bound methods (#​28410)
  • Only classify evidence bounds for constrained type variables (#​28700)
  • Preserve inferred bindings during annotation cycles (#​28717)
  • Preserve quoted aliases during cycle recovery (#​28710)
  • Reject class-scoped type variables in init receivers (#​28706)
  • Reject unsafe TypedDict updates from hidden fields (#​28711)
  • Respect fixed caller type variables when selecting constraints (#​28652)
  • Reuse cached type alias inference for diagnostics (#​28696)
  • Simplify unions of disjoint exclusions (#​28684)
  • Update typing conformance suite (#​28718)
Contributors

v0.0.82

Compare Source

Released on 2026-09-17.

Preview features
  • Ignore Python version from uv metadata (#​28646)
  • Watch script dependencies in CLI watch mode (#​28125)
CLI
  • Only skip uv workspace metadata for a single script (#​28581)
  • Support dependency lints with --config-file (#​28573)
LSP server
  • Filter string literal completions by typed text (#​28612)
  • Find member references across files (#​28669)
  • Find parameter references across files (#​28670)
  • Preserve valid LSP settings when configuration resolution fails (#​28653)
  • Reuse identifier matcher in LSP operations (#​28663)
  • Watch script dependencies in the language server (#​28522)
Diagnostic improvements
  • Add an autofix for unused awaitables (#​28668)
  • Add annotations for unreachable code caused by boolean operands (#​28521)
  • Add subdiagnostics to redundant-condition rules warning about reachability implications (#​28263)
  • Clarify diagnostics for unimplemented abstract members (#​28538)
  • Extend unreachable-code annotations to while, assert, and match statements (#​28290)
Core type checking
  • Allow experimental intersection syntax in PEP 695 aliases (#​28513)
  • Bound aliased intersection expansion during inference (#​28546)
  • Check declared variance against final method bindings (#​28155)
  • Fix recursive protocol checks for decorated methods (#​28293)
  • Freshen constructor-owned Self with class type variables (#​28592)
  • Improve disjointness of functools.partial types (#​28660)
  • Include constraint-set assignability in more checks (#​28642)
  • Infer conditional literals from peers in unspecialized contexts (#​28633)
  • Infer generic elements from gradual tuples (#​28637)
  • Introduce Recursive types and fully support recursive implicit type aliases (#​28425)
  • Narrow type context during tuple inference (#​28658)
  • Preserve field metadata after overload resolution (#​28635)
  • Preserve gradual class assignability in constraint-set checks (#​28638)
  • Preserve gradual tuple lengths during callable inference (#​28588)
  • Preserve tuple shapes during concatenation (#​28617)
  • Reject abstract class instantiation (#​28167)
  • Respect frozen=False overrides on Pydantic subclasses (#​28515)
  • Support type[A & B] (#​27124)
  • Sync vendored typeshed stubs (#​28597). Typeshed diff
  • Treat imports as bindings instead of declarations (#​27325)
Performance
  • Compact reachable binding and declaration histories (#​28349)
  • Compare bound-method receivers before signatures (#​28384)
  • Deduplicate intermediate intersection branches (#​28649)
  • Optimize fuel management in the constraint solver (#​28568)
  • Skip inferring concrete methods during abstract-method discovery (#​28613)
  • Skip legacy namespace parsing for __init__ files without pkg (#​28665)
Memory usage improvements
  • Avoid storing constraint nodes twice (#​28375)
Contributors

v0.0.81

Compare Source

Released on 2026-09-14.

Bug fixes
  • Escape glob characters in anchored directory paths (#​28518)
  • Ignore divergent markers when detecting descriptors (#​28514)
CLI
  • Anchor default exclude patterns at the project root (#​28463)
Core type checking
  • Avoid rebinding extracted method calls (#​28469)
  • Default-specialize class objects in meta-protocol checks (#​28265)
  • Fix MRO ordering for generic bases (#​28172)
  • Fix assignability of bounded typevars to intersection types (#​28479)
  • Fix variadic partial signature reduction (#​28586)
  • Handle gradual metaclass ancestry and conflicts (#​28474)
  • Preserve recursive metadata in union transformations (#​28497)
  • Preserve runtime comparison semantics when narrowing tagged unions (#​28053)
  • Preserve wrapped signatures in nominal descriptor checks (#​28466)
  • Reject reassignment of enum members (#​28462)
  • Report override conflicts introduced by new bases (#​28530)
  • Resolve dependencies within correlated inference alternatives (#​28252)
  • Respect instance dictionary storage for slotted classes (#​27749)
  • Validate explicitly overridden constructor signatures (#​28115)
Performance
  • Avoid redundant superclass member inference (#​28587)
  • Reuse rendered union elements when displaying types (#​28494)
Memory usage improvements
  • Reduce retained AST memory by shrinking expressions (#​28335)
  • Share strings in dependency metadata (#​28141)
Contributors

v0.0.80

Compare Source

Released on 2026-09-09.

Bug fixes
  • Fix --force-exclude for directories with an excluded ancestor (#​28451)
  • Preserve metaclass candidates after conflicts (#​28461)
LSP server
  • Give existing autofixes descriptive titles (#​28456)
  • Prevent LSP hangs during inlay hint bursts (#​28390)
Diagnostic improvements
  • Preserve redundant-condition diagnostics with unreachable operands (#​28374)
Core type checking
  • Check captured receivers when calling wrapped classmethods (#​28467)
  • Fix cached classmethods on generic classes (#​28207)
  • Fix disjointness of type guards and boolean literals (#​28363)
  • Infer tuple variance from the full tuple spec (#​28446)
  • Infer tuple variance more precisely (#​28426)
  • Preserve callable identity across specialized types (#​28409)
  • Preserve callback type context through ParamSpec forwarding (#​28439)
  • Preserve wrapped functions in precise functools.partial relations (#​28460)
  • Respect descriptor protocol for __set__ itself (#​28408)
  • Respect type-variable bounds in argument context (#​28448)
  • Unwrap union alternatives in overload implementations (#​28468)
Performance
  • Distribute len inference over unions (#​28470)
  • Fast-path concrete literal intersections (#​28348)
Memory usage improvements
  • Avoid excess capacity in multi-binding tables (#​28412)
  • Share equivalent place tables within a file (#​28319)
  • Share names in synthesized constructor parameters (#​28398)
Contributors

v0.0.79

Compare Source

Released on 2026-09-07.

Bug fixes
  • Avoid dict keyword-call panics when typing is shadowed (#​28292)
  • Discover configs in models derived from legacy generic classes (#​28397)
  • Normalize recursive collection-use constraints (#​28332)
  • Recover cycles when constructing known class instances (#​28289)
CLI
  • Embed archive checksums in the shell installer (#​4458)
Diagnostic improvements
  • Add Literal fixes for diagnostics flagging invalid type annotations (#​28185)
  • Add await fixes for redundant conditions (#​28169)
  • Add assert_never fixes for redundant final elif branches (#​28178)
  • Add defensive assertion fallback for redundant elif fixes (#​28179)
  • Add rules to detect always-truthy and always-falsy conditions (#​28034)
  • Preserve deprecations on decorated callables (#​28256)
  • Require a direct dependency for reveal_type backport fixes (#​28177)
  • Suggest variable-length tuple annotations for redundant conditions (#​28168)
Core type checking
  • Align TypeIs and isinstance narrowing (#​28193)
  • Avoid falling back to Unknown when collecting type context constraints (#​28297)
  • Ensure f is identity(f) evaluates to Literal[True] (#​28360)
  • Fix callable specialization with union-valued ParamSpec (#​28085)
  • Infer variance through recursive protocols (#​28077)
  • Narrow types with ordered length comparisons (#​28264)
  • Preserve gradual type context during generic call inference (#​28091)
  • Preserve nominal subtyping for top-materialized protocols (#​28271)
  • Preserve outer type variables during ParamSpec inference (#​28306)
  • Preserve protocol intersections when narrowing gradual types (#​28391)
  • Promote literals in nested (non-covariant) positions (#​28389)
  • Reject missing attributes on type[] aliases (#​28267)
  • Solve formal unions using constraint-sets (#​28312)
  • Sync vendored typeshed stubs (#​28331). Typeshed diff
Performance
  • Avoid unnecessary work when building specializations (#​28369)
  • Bypass materialization queries for simple types (#​28367)
  • Cache exception suppression for context managers (#​28376)
  • Intern statement call predicates (#​28373)
  • Lazily compute argument-context specializations (#​28378)
  • Pre-size packed AST index chunks (#​28372)
  • Reduce repeated work in use-def merges (#​28365)
  • Skip decorator flags query for undecorated methods (#​28338)
Memory usage improvements
  • Avoid caching simple type specializations (#​28333)
  • Box cached MRO error details (#​28351)
  • Reuse generic aliases as MRO query keys (#​28350)
  • Reuse interned bound method signatures (#​28346)
  • Reuse stored function signatures without caching duplicates (#​28347)
  • Share retained use-def tables across scopes (#​28313)
  • Store single narrowing operations inline (#​28345)
  • Store uncommon signature metadata out of line (#​28339)
Other changes
  • Declare support for Python 3.15 (#​4476)
Contributors

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • Between 12:00 AM and 03:59 AM, only on Monday (* 0-3 * * 1)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants