python / python/mypy

Will mypy work universally again? Or is the list of supported platforms now more or less set in stone?

Open
#21,460 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

documentation
Dominant language
Python
Stars
20.6k
Forks
3.3k
PR merge metrics
PR metrics pending

Description

Documentation

ERROR: Could not find a version that satisfies the requirement librt>=0.10.0; platform_python_implementation != "PyPy" (from mypy) (from versions: 0.0.1)

Changelog has been less than on the nose on dropped platform support lately, so.. what is changed about that?

Mypy now has an extra dependency on the librt PyPI package

I believe in 1.19 librt became a hard dependency (ImportError) even though as of mypy 2.0.0 it still works without it (sans --incremental). (I created a stub librt/internal.py file; that was all I needed to be able to type check after upgrade, so I know it was not necessary.)

There are still some minor semantic differences between parallel and non-parallel modes, which we will be fixing in future mypy releases.

Relatedly, it looks like the more complex non-python dependency ast-serialize is also not strictly needed right now (other than for --native-parser), but current documentation does clarify whether that is just temporarily so (until parsers reach feature parity). Should users expect that some future mypy version will hard-depend on OpenAI-owned code?

Is there a point in either releasing a stub universal python wheel or try/excepting the optional features so mypy remains usable on platforms that cannot use either or both new non-python dependencies?
Or should the Changelog just enumerate positively what arch/platform list now remain, plus maybe an update to the Does it run on PyPy? section?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review the linked changelog entry and the “Does it run on PyPy?” documentation section first, along with the current notes on librt and ast-serialize. Done means documenting supported platforms and whether these dependencies are optional or required, including any needed changelog clarification.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
devtools, documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.