Skip to content

Bump ty from 0.0.19 to 0.0.75 - #103

Merged
woutervh merged 1 commit into
mainfrom
dependabot/uv/ty-0.0.29
Aug 30, 2026
Merged

woutervh merged 1 commit into
mainfrom
dependabot/uv/ty-0.0.29

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Apr 6, 2026

Copy link
Copy Markdown
Contributor

Bumps ty from 0.0.19 to 0.0.75.

Release notes

Sourced from ty's releases.

0.0.75

Release Notes

Released on 2026-08-26.

Preview features

  • Initialize PEP 723 script environments in the CLI (#27544)
  • Refresh PEP 723 script environments in watch mode (#27617)
  • Run PEP 723 script synchronization on bounded workers (#27615)

Bug fixes

  • Specialize Self bounds of inherited methods (#27990)

LSP server

  • Add "Go to Definition" support for pytest fixtures (#27444)

Documentation

  • Fix documented Python package build command (#4384)
  • Link untyped-call tracking issue in migration guide (#4382)

Library support

  • Resolve imported pytest fixture exposures (#27539)
  • Resolve installed core pytest fixture providers (#27770)
  • Resolve pytest fixtures through conftest (#27540)

Diagnostics

  • Add more autofixes (#28029)
  • Add a dedicated missing-slot diagnostic (#28039)
  • Explain missing storage for declared slotted attributes (#27969)
  • Improve diagnostic spans for unpacked variable assignments (#28041)

Core type checking

  • Account for known subclasses in equality inference (#28005)
  • Expand ParamSpec signatures inferred from bound receivers (#28020)
  • Fix Self binding in ParamSpec protocols (#28016)
  • Fix TypedDict variance inference (#28052)
  • Fix unsound narrowing through branch-assigned conditions (#28006)
  • Ignore inconsistent binding decorators on overloads (#28036)
  • Infer yield from send/return types from the iterator returned by __iter__ (#27987)
  • Infer tuple type parameters from union arguments (#28062)
  • Infer variance through nonrecursive protocol references (#28065)
  • Preserve bounds of non-literal metaclasses (#28046)
  • Preserve correlated generic-call inference (#28043)

... (truncated)

Changelog

Sourced from ty's changelog.

0.0.75

Released on 2026-08-26.

Preview features

  • Initialize PEP 723 script environments in the CLI (#27544)
  • Refresh PEP 723 script environments in watch mode (#27617)
  • Run PEP 723 script synchronization on bounded workers (#27615)

Bug fixes

  • Specialize Self bounds of inherited methods (#27990)

LSP server

  • Add "Go to Definition" support for pytest fixtures (#27444)

Documentation

  • Fix documented Python package build command (#4384)
  • Link untyped-call tracking issue in migration guide (#4382)

Library support

  • Resolve imported pytest fixture exposures (#27539)
  • Resolve installed core pytest fixture providers (#27770)
  • Resolve pytest fixtures through conftest (#27540)

Diagnostics

  • Add more autofixes (#28029)
  • Add a dedicated missing-slot diagnostic (#28039)
  • Explain missing storage for declared slotted attributes (#27969)
  • Improve diagnostic spans for unpacked variable assignments (#28041)

Core type checking

  • Account for known subclasses in equality inference (#28005)
  • Expand ParamSpec signatures inferred from bound receivers (#28020)
  • Fix Self binding in ParamSpec protocols (#28016)
  • Fix TypedDict variance inference (#28052)
  • Fix unsound narrowing through branch-assigned conditions (#28006)
  • Ignore inconsistent binding decorators on overloads (#28036)
  • Infer yield from send/return types from the iterator returned by __iter__ (#27987)
  • Infer tuple type parameters from union arguments (#28062)
  • Infer variance through nonrecursive protocol references (#28065)
  • Preserve bounds of non-literal metaclasses (#28046)
  • Preserve correlated generic-call inference (#28043)
  • Preserve invariant materialization constraints (#28047)

... (truncated)

Commits

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update Python code uv.lock uv.lock dependency update labels Apr 6, 2026
@dependabot
dependabot Bot requested a review from woutervh as a code owner April 6, 2026 11:41
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update Python code labels Apr 6, 2026
@dependabot dependabot Bot mentioned this pull request Apr 6, 2026
@dependabot dependabot Bot added the uv.lock uv.lock dependency update label Apr 6, 2026
woutervh added a commit that referenced this pull request Aug 30, 2026
`about.py` broke the Linting job once `ty` was bumped (Dependabot #103):

- `msg.json` -> ty `unresolved-attribute` (typeshed resolves
  `importlib.metadata.metadata()` as `email.message.Message`).
- `version: str = pkginfo.get("version", "unknown")` -> ty
  `invalid-assignment` (value was `str | list[str]`).
- `# type: ignore[...]` comments do not silence ty.

Materialise the distribution metadata into a plain `dict[str, str]` via
`{key: msg[key] for key in msg}` (only `__iter__`/`__getitem__` are
guaranteed on `PackageMetadata` across 3.9-3.14, unlike `.json` / `.get`),
then read `Author-email` / `License(-Expression)` / `Version` off the dict.
Keep the `# pragma: no cover` fallback branches.

Also bump `ty` 0.0.19 -> 0.0.75 in the lock so CI exercises the new
behaviour; this supersedes Dependabot #103.

Verified locally: ruff, pylint (10/10), mypy (3.10/3.11/3.14), ty,
pre-commit, and pytest w/ coverage (100%) all green.
woutervh added a commit that referenced this pull request Aug 30, 2026
Dependabot #103 (bump `ty` 0.0.19 -> 0.0.29) turns the Linting job red
on every Python version. `ty` rejects two constructs in `about.py` that
older `ty` accepted and that `# type: ignore[...]` does not silence:

- `msg.json` -> `unresolved-attribute` (typeshed resolves
  `importlib.metadata.metadata()` as `email.message.Message`).
- `version: str = pkginfo.get("version", "unknown")` -> `invalid-assignment`
  (the value is `str | list[str]`).

Materialise the distribution metadata into a plain `dict[str, str]` via
`{key: msg[key] for key in msg}` - only `__iter__` (over keys) and
`__getitem__` are guaranteed on `PackageMetadata` across 3.9-3.14, unlike
`.json` / `.get` - then read `Author-email` / `License(-Expression)` /
`Version` off the dict. Fallback branches keep their `# pragma: no cover`.

Verified against `ty` 0.0.75 locally (plus ruff, pylint 10/10, mypy on
3.10/3.11/3.14, pre-commit, pytest+coverage 100%). Merging unblocks #103,
which then only carries the lockfile bump.
woutervh added a commit that referenced this pull request Aug 30, 2026
## Why

Dependabot #103 (bump `ty` 0.0.19 -> 0.0.29) turns the **Linting** job
red on
every Python version. `ty check` rejects two constructs in
`src/autoadd_bindir/about.py` that older `ty` accepted and that
`# type: ignore[...]` comments do **not** silence:

1. `unresolved-attribute` - `msg.json` (typeshed resolves
`importlib.metadata.metadata()` as `email.message.Message`, which has no
`.json`).
2. `invalid-assignment` - `version: str = pkginfo.get("version",
"unknown")`
   (the value is `str | list[str]`).

## What

Materialise the distribution metadata into a plain `dict[str, str]` with
`{key: msg[key] for key in msg}` - only `__iter__` (over keys) and
`__getitem__`
are guaranteed on `importlib.metadata.PackageMetadata` across 3.9-3.14,
unlike
`.json` or `.get` (mypy 1.19 rejects `.get` on 3.10/3.11). Then read
`Author-email` / `License(-Expression)` / `Version` off the dict.
Fallback
branches keep their `# pragma: no cover`.

Single-file change; `uv.lock` is untouched here.

## Verification (local)

Against `ty` **0.0.75** (newer than #103's 0.0.29): `just ruff-check`,
`just pylint` (10/10), `just mypy` (explicitly on 3.10 / 3.11 / 3.14),
`just ty-check`, `pre-commit run --all-files`, and `just
pytest-coverage`
(100%, 7 passed) all pass.

## Follow-up

Merging this unblocks #103; that PR then only carries the `ty` lockfile
bump.
@woutervh

Copy link
Copy Markdown
Contributor

@dependabot rebase

Bumps [ty](https://github.com/astral-sh/ty) from 0.0.19 to 0.0.75.
- [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.19...0.0.75)

---
updated-dependencies:
- dependency-name: ty
  dependency-version: 0.0.29
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot changed the title Bump ty from 0.0.19 to 0.0.29 Bump ty from 0.0.19 to 0.0.75 Aug 30, 2026
@dependabot
dependabot Bot force-pushed the dependabot/uv/ty-0.0.29 branch from d5bfc39 to ea987e7 Compare August 30, 2026 14:41
@woutervh
woutervh merged commit c18bd4f into main Aug 30, 2026
14 checks passed
@woutervh
woutervh deleted the dependabot/uv/ty-0.0.29 branch August 30, 2026 14:47
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 uv.lock uv.lock dependency update

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant