Migrate type checking to ty.
Metadata
Current evaluation
Type checking was migrated from mypy/pyright to ty by merged PR #328, commit fc21f39.
Resolution: closed resolved
Reason: The migration was completed in PR #328, recorded as commit fc21f39, and the Makefile now runs lint-ty for code linting.
Evaluated by: mr-cal-bot
No scores available.
Issue body
### Check existing issues
- [x] I've verified that this request isn't described by any existing issues.
### Request
Stop using the mypy and pyright linters and use ty instead.
The steps to do this (each should be its own commit on the PR):
1. Copy the ty install and lint Makefile options from Starbase into our `common.mk` file: https://github.com/canonical/starbase/commit/c2390f08b633df38b4b1c6edfe48505b50f28391
2. Change the `lint` target in `Makefile` to run `lint-ty` but not `lint-mypy` or `lint-pyright`.
3. Fix any linting errors that are found when running `make lint`. (It may make more sense to make multiple commits for this step.
### The problem it solves
More modern tooling.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Type checking was migrated from mypy/pyright to ty by merged PR #328, commit fc21f39. | |
| stealth/space-bunny-alpha | — | closed stale | Closed without a documented resolution or comments. canonical/rockcraft#1207 separately implemented the same mypy/pyright-to-ty migration, but no direct link to this issue is verified. | |
| qwen/qwen3.6-35b-a3b | — | — | The request to replace mypy and pyright with ty was closed without comments or linked pull requests. No resolution or merge details were provided, indicating the task was abandoned or completed via an untracked PR. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without comments or linked pull requests. The migration from mypy/pyright to ty was not implemented, indicating the task was abandoned or superseded. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without implementation. The request to replace mypy and pyright with ty for type checking was abandoned due to inactivity. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | The migration request to replace mypy and pyright with ty was closed without implementation or a linked pull request. The issue appears abandoned or superseded, leaving the original linting tools in place. |
Update history
No update history recorded yet.
Related work
-
Likely Fixed By:
imagecraft#328
(confidence 100%)
PR #328 is titled "chore: change type checking to use `ty`" and provides the resolving migration commit fc21f39.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #326 fix type checking | craft-providers | closed | Replaced by the move to ty type checking in #885 (28ccfe5); legacy mypy and pyright checks were removed in #1007 (232143d). | |
| #201 style: enable ty as stable type checker | craft-platforms | merged | Merged in craft-platforms#201 (commit 5407de0), enabling ty as the stable type checker in regular checks while retaining pyright and mypy for now. |