Skip to content

fix(deps): update dependency mypy to v2.3.0#495

Merged
shcheklein merged 1 commit into
mainfrom
renovate/mypy-2.x
Jul 13, 2026
Merged

fix(deps): update dependency mypy to v2.3.0#495
shcheklein merged 1 commit into
mainfrom
renovate/mypy-2.x

Conversation

@renovate

@renovate renovate Bot commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
mypy (changelog) ==2.2.0 β†’ ==2.3.0 age confidence

Release Notes

python/mypy (mypy)

v2.3.0

Compare Source


Configuration

πŸ“… Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

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

πŸ”• Ignore: Close this PR and you won't be reminded about this update again.


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

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

@renovate renovate Bot force-pushed the renovate/mypy-2.x branch from a0f9e64 to 2e5ac80 Compare July 8, 2026 06:57
shcheklein added a commit that referenced this pull request Jul 8, 2026
#497)

Consolidates all open Renovate deps/chore PRs into one change, fixes the
CI breakage on `main`, and moves the supported Python range to
3.10–3.14.

## Why main was red

The weekly runs on `main` have been failing on Python 3.10+ since early
June. Root cause: **typer β‰₯0.26 vendors click** and no longer depends on
it, so fresh installs stopped pulling click in β€” while gto imports
`click` directly (`gto/cli.py`, `gto/utils.py`, `tests/conftest.py`)
without declaring it. pylint failed with `E0401: Unable to import
'click'`.

It's worse than lint: gto's CLI machinery subclasses real-click classes
(`GtoCliMixin(click.Command)`, `@click.pass_context`) and mixes them
into typer's (now vendored-click) `TyperCommand`/`TyperGroup` MROs. With
typer 0.26.x even `gto --help` crashes on startup (`TypeError:
Command.__init__() got an unexpected keyword argument
'rich_markup_mode'`) β€” i.e. a fresh `pip install gto` on Python 3.10+
currently yields a broken CLI. Python 3.9 was unaffected only because it
resolves typer 0.23.2 (0.24+ requires Python β‰₯3.10; all pre-0.26
versions depend on real click).

**Fix:** declare `click>=8,<9` explicitly and pin `typer>=0.4.1,<0.26`.
Migrating to vendored-click typer (β‰₯0.26) requires reworking the CLI
help/exception machinery against `typer._click` and should be tracked as
a separate effort.

## Python support

- Drop Python 3.9 (EOL October 2025): removed from test matrix,
classifiers; `requires-python = ">=3.10"`
- Add Python 3.14 to the test matrix and classifiers
- Remove the `CliRunner` `mix_stderr` shim in `tests/conftest.py` (only
needed for the old click that py3.9 resolved)
- `zip(..., strict=False)` fixes auto-applied by ruff `B905`, which
activates with the 3.10+ target

## Consolidated Renovate updates

| PR | Update | Resolution |
|---|---|---|
| #496 | `actions/checkout` v5 β†’ v7 | taken as-is |
| #493 | `codecov/codecov-action` v4 β†’ v7 | taken as-is |
| #484 | deploy job Python 3.13 β†’ 3.14 | taken, plus 3.14 in test matrix
|
| #487 | pylint 3.3.8 β†’ 4.0.6 | taken (pylint 4 requires β‰₯3.10 β€”
unblocked by the 3.9 drop) |
| #482 | pylint β†’ 3.3.9 | superseded by #487 |
| #495 | mypy β†’ v2 | delivered as `mypy==2.2.0` (the py3.9-only
`<1.11.0` pin is gone with 3.9) |
| #494 | mypy β†’ `<1.20.3` | superseded by #495 |

## Verification

Ran locally on macOS for Python **3.10**, **3.13**, and **3.14**, each
with a fresh venv:

- `pip install -e .[dev]` resolves cleanly (click 8.4.2, typer 0.23.2,
mypy 2.2.0, pylint 4.0.6, pygit2 1.19.3)
- `pre-commit run --all-files` β€” all hooks pass (ruff, ruff-format, mypy
2.2.0, pylint 4.0.6)
- `pytest` β€” 165 passed on each
- `gto --help` / `gto show` / `gto --version` work (broken before on
3.10+ with unpinned typer)
- `python -m build && twine check --strict dist/*` passes on 3.14
(deploy job path)

πŸ€– Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
@renovate renovate Bot changed the title fix(deps): update dependency mypy to v2 fix(deps): update dependency mypy to v2 - autoclosed Jul 8, 2026
@renovate renovate Bot closed this Jul 8, 2026
@renovate renovate Bot deleted the renovate/mypy-2.x branch July 8, 2026 21:45
@renovate renovate Bot changed the title fix(deps): update dependency mypy to v2 - autoclosed fix(deps): update dependency mypy to v2.3.0 Jul 13, 2026
@renovate renovate Bot reopened this Jul 13, 2026
@renovate renovate Bot force-pushed the renovate/mypy-2.x branch 2 times, most recently from 2e5ac80 to d762a7b Compare July 13, 2026 18:03
@shcheklein shcheklein merged commit 4b652c8 into main Jul 13, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant