Aquesta és una versió anterior. La versió actual és la 0.0.87. ty 0.0.87 · Data de publicació:
Fitxers d’instal·lació 0.0.15
| Arquitectura | Tipus | Àmbit | Mida del fitxer | Baixa | SHA256 |
|---|---|---|---|---|---|
| 64 bits | ZIP → Portable | — | — | github.com | VirusTotal |
| ARM64 | ZIP → Portable | — | — | github.com | VirusTotal |
| 32 bits | ZIP → Portable | — | — | github.com | VirusTotal |
L’enllaç i l’SHA256 provenen del manifest comunitari del Gestor de paquets del Windows. Convé comparar el hash del fitxer baixat abans d’executar-lo.
Notes de la versió
Release Notes
Released on 2026-02-04.
Bug fixes
- Add support for resolving imports of packages installed into Debian/Ubuntu dist-packages directories (#22466)
- Avoid not-iterable false positives when iterating over an instance of an intersection type with only negated elements (#22089)
- Fix support for stringized annotations in very large files (#22913)
- Don't emit Liskov diagnostics for methods with mangled names (#23062)
- Enforce that a Final symbol cannot be reassigned even after a conditional binding (#22986)
- Fix TypedDict construction from existing TypedDict values (#22904)
- Fix Self resolution for classes nested within methods (#22964)
- Fix bidirectional inference with PEP 695 union type aliases (#22988)
- Fix edge-case bugs when narrowing tagged unions in match statements (#22870)
- Fix false-positive diagnostics when iterating over an instance of an intersection that includes a TypeVar of which the upper bound is a union where the union includes a non-iterable type (#22117)
- Fix lookup of __contains__ to respect descriptors (#23056)
- Fix narrowing of nonlocal variables with conditional assignments (#22966)
- Fix several bugs that could affect NewTypes of NewTypes of float (#22997)
- Fix several type narrowing bugs involving PEP-695 type aliases (#22894)
- Fix spurious query cycles in decorated functions with parameter defaults, for improved performance and improved determinism (#23014)
- Fix unary and comparison operators for TypeVars with union bounds (#22925)
- Understand functions as method descriptors even if they are decorated with a decorator annotated as returning a PEP-695 alias to a Callable type (#22902)
- dataclass_transform: Fix visibility of field specifiers when models are nested inside methods (#23069)
LSP server
- Fix hover showing Unknown for bare Final instance attributes (#23003)
- Improve support for goto-type, goto-declaration, hover, and highlighting of string annotations (#22878)
- Include setters and deleters when renaming properties (#22999)
- Show type qualifiers like Final in on-hover hints (#23005)
Configuration
- Add new unused-type-ignore-comment rule (#22790)
- Add a mechanism to ignore/warn/select all rules (#22832)
- Support multiple workspace folders in a single ty LSP server instance (#22953)
- Only add ./src as a search path if ./src/__init__.py(i) does not exist (#22851)
Type checking
- Add a diagnostic detecting if a variable is declared as Final but never has any bindings (#23001)
- Add a diagnostic detecting overridden comparison dunder methods on order=True dataclasses (#22689)
- Add a hint to invalid-argument-type and invalid-assignment diagnostics if a variable is annotated with a type from the numbers module (#22931, #22938)
- Add diagnostic hint on unresolved-reference to suggest using "list" instead of "List" (#22827)
- Add new diagnostic for invalid dataclass field orders (#19825)
- Allow a subclass method with a positional-only parameter to override a superclass method without that parameter if the parameter in the subclass method has a default value (#23037)
- Allow self-referential imports outside the global scope (#22963)
- Ban ... in odd places inside tuple specializations (#22889)
- Ban Required, NotRequired and ReadOnly in parameter annotations (#22888)
- Ban legacy TypeVar bounds or constraints from containing type variables (#22949)
- Ban multiple unpacked variadic tuples in a tuple specialization (#22884)
- Detect generic Callables in the return type of function signatures (#22954)
- Detect invalid isinstance() and issubclass() calls against TypedDict classes (#22887)
- Detect invalid issubclass() calls against Protocol classes with non-method members (#22896)
- Detect invalid attempts to subclass Protocol[] and Generic[] simultaneously (#22948)
- Emit a diagnostic on incorrect applications of the legacy convention for specifying positional-only parameters (#22943)
- Emit an error if a TypeVarTuple is used to subscript Generic or Protocol without being unpacked (#22952)
- Fallback to metaclass __getattr__ or __getattribute__ when looking up attributes on class objects (#22985)
- Fix a bug where an overridden type in a dataclass subclass would not be respected if the dataclass subclass field had a default value but the superclass field did not (#22965)
- Improve bidirectional type inference involving PEP-695 type aliases (#22989)
- Improve detection of invalid NewTypes with generic bases (#22961)
- Improve reachability analysis when evaluating the truthiness of expressions that involve variables that may not be bound in all code paths (#22971)
- Improve the error message if ** is used with a non-mapping in the context of a call to an overloaded function (#22921)
- Infer ParamSpec from class constructors for callable protocols (#22853)
- Move the location of some invalid-overload diagnostics (#22933)
- Point to an overload with an invalid @final decorator when emitting invalid-overload errors for invalid @final decorators (#22893)
- Avoid false positives when iterating over an instance of an intersection with only negated elements by preserving "pure negation" types in descriptor lookups (#22907)
- Promote Literal types when inferring elements for very large unannotated tuples, for improved performance (#22841)
- Recognize functions with stub bodies in Protocol classes as implicitly abstract (#22838)
- Reduce false positives involving heterogeneous dicts by tracking dictionary literal keys as individual places (#22882)
- Reduce false positives when subscripting classes generic over TypeVarTuples (#22950)
- Remove special handling for Any() in match class patterns (#23011)
- Support type[None] in type expressions (#22892)
- Support legacy namespace packages declared using pkg_resources.declare_namespace (#22987)
- Sync vendored typeshed stubs (#23006), Typeshed diff
- Validate signatures of dataclass __post_init__ methods (#22730)
Contributors
- @charliermarsh
- @stefanvanburen
- @ibraheemdev
- @abhijeetbodas2001
- @MichaReiser
- @dcreager
- @PrettyWood
- @sharkdp
- @oconnor663
- @Feiyang472
- @denyszhak
- @mtshiba
- @AlexWaygood
- @11happy
- @BurntSushi
- @carljm
- @Gankra
- @MentalMegalodon
- @thejchap
Install ty 0.0.15
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/ty/releases/download/0.0.15/ty-installer.sh | sh
Install prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/astral-sh/ty/releases/download/0.0.15/ty-installer.ps1 | iex"
Download ty 0.0.15
─────────────────────────────────────────────┬────────────────────────────┬─────────────
File │Platform │Checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-aarch64-apple-darwin.tar.gz │Apple Silicon macOS │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-x86_64-apple-darwin.tar.gz │Intel macOS │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-aarch64-pc-windows-msvc.zip │ARM64 Windows │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-i686-pc-windows-msvc.zip │x86 Windows │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-x86_64-pc-windows-msvc.zip │x64 Windows │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-aarch64-unknown-linux-gnu.tar.gz │ARM64 Linux │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-i686-unknown-linux-gnu.tar.gz │x86 Linux │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-powerpc64-unknown-linux-gnu.tar.gz │PPC64 Linux │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-powerpc64le-unknown-linux-gnu.tar.gz │PPC64LE Linux │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-s390x-unknown-linux-gnu.tar.gz │S390x Linux │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-x86_64-unknown-linux-gnu.tar.gz │x64 Linux │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-armv7-unknown-linux-gnueabihf.tar.gz │ARMv7 Linux │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-aarch64-unknown-linux-musl.tar.gz │ARM64 MUSL Linux │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-i686-unknown-linux-musl.tar.gz │x86 MUSL Linux │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-x86_64-unknown-linux-musl.tar.gz │x64 MUSL Linux │checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-arm-unknown-linux-musleabihf.tar.gz │ARMv6 MUSL Linux (Hardfloat)│checksum
─────────────────────────────────────────────┼────────────────────────────┼─────────────
ty-armv7-unknown-linux-musleabihf.tar.gz │ARMv7 MUSL Linux │checksum
─────────────────────────────────────────────┴────────────────────────────┴─────────────