mirror of
https://github.com/astral-sh/ruff.git
synced 2026-10-28 19:00:26 +08:00
## Summary 1. Manually update various functions in `crates/ruff_python_stdlib/src/builtins.rs` to reflect new APIs added in Python 3.15. 2. Manually remove the incorrect inclusion of `frozenset` from `is_immutable_non_generic_type` in `crates/ruff_python_stdlib/src/typing.rs`. `frozenset` is a generic type. 3. Manually add `frozendict` to `is_immutable_generic_type` and `is_immutable_return_type` in `crates/ruff_python_stdlib/src/typing.rs` 4. Manually updates to `scripts/generate_builtin_modules.py`: use uv to invoke Python rather than relying on many different Python versions all being on `PATH`, drop support for Python 3.7 from the script (it can't be installed using uv), and apply various other simplifications. 5. Regenerate `is_builtin_module` in `crates/ruff_python_stdlib/src/sys/builtin_modules.rs` following the changes made in (4). Note that switching to uv-managed Python installs (PBS) appears to mean that quite a few more stdlib modules are recognised as being builtin modules, which is interesting. I also ran `scripts/generate_known_standard_library.py`, but it didn't make any changes to the Rust function generated by that script. ## Test Plan `cargo test`