Skip to content

TYP,TST: Bump mypy from 1.11.1 to 1.13.0 - #27652

Merged
charris merged 2 commits into
numpy:mainfrom
jorenham:typing/mypy-1.13.0
Oct 28, 2024
Merged

charris merged 2 commits into
numpy:mainfrom
jorenham:typing/mypy-1.13.0

Conversation

@jorenham

Copy link
Copy Markdown
Member

@charris

charris commented Oct 28, 2024

Copy link
Copy Markdown
Member

Thanks Joren.

@jorenham
jorenham deleted the typing/mypy-1.13.0 branch October 28, 2024 13:09
@charris

charris commented Oct 28, 2024 •

Copy link
Copy Markdown
Member

Strangely, this fail on 32 bit windows after merge

  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [6 lines of output]
      
      Cargo, the Rust package manager, is not installed or is not on PATH.
      This package requires Rust and Cargo to compile extensions. Install it through
      the system's package manager or via https://rustup.rs/
      
      Checking for Rust toolchain....
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

I think this is a problem with the pyproject.toml parser and unrelated to this PR.

EDIT: Definitely unrelated. Will open an issue.

@jorenham

jorenham commented Oct 28, 2024 •

Copy link
Copy Markdown
Member Author

mypy 1.13 uses orjson to make it a bit faster, which uses rust, so I can see how it could be related 🤔

EDIT: Maybe I'm missing something, but I don't see any manylinux2014_i686 wheels here: https://pypi.org/project/orjson/#files

@ngoldbaum

Copy link
Copy Markdown
Member

@jorenham maybe we should skip the typing tests on the 32 bit linux CI?

@jorenham

Copy link
Copy Markdown
Member Author

@jorenham maybe we should skip the typing tests on the 32 bit linux CI?

Maybe it's easier to skip installing orjson in that case? I think that those dependency specification environment marker thingies should be able to do that:
https://packaging.python.org/en/latest/specifications/dependency-specifiers/#environment-markers

@ngoldbaum

Copy link
Copy Markdown
Member

That would work too! It is a pain to keep the 32 bit linux tests running and eventually we'll turn it off but if we can keep it running it does sometimes help catch bugs.

@rgommers

Copy link
Copy Markdown
Member

We should only be running the Mypy tests in the 3 dedicated GHA CI jobs (e.g, https://github.com/numpy/numpy/actions/runs/11586301285). Or was this changed recently? If not, better to install orjson only in those jobs.

This change also broke the free-threaded wheel builds on Linux and macOS (see latest wheel build log).

Based on both of those things, it looks to me like we should revert the test_requirements change at least, and add a pip install orjson in .github/workflows/mypy.yml instead. Does that sound right @jorenham?

@jorenham

Copy link
Copy Markdown
Member Author

Based on both of those things, it looks to me like we should revert the test_requirements change at least, and add a pip install orjson in .github/workflows/mypy.yml instead. Does that sound right @jorenham?

Yea should work. Locally you could always install orjson manually yourself I suppose

@rgommers

Copy link
Copy Markdown
Member

Based on both of those things, it looks to me like we should revert the test_requirements change at least, and add a pip install orjson in .github/workflows/mypy.yml instead.

Turned out this was already done. I re-triggered the wheel builds and they all passed now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants