Commit Graph
17641 Commits
Author SHA1 Message Date
dependabot[bot] 6712156e00 Bump libz-rs-sys from 0.6.3 to 0.6.4 (#8193)
Bumps [libz-rs-sys](https://github.com/trifectatechfoundation/zlib-rs) from 0.6.3 to 0.6.4.
- [Release notes](https://github.com/trifectatechfoundation/zlib-rs/releases)
- [Changelog](https://github.com/trifectatechfoundation/zlib-rs/blob/main/docs/release.md)
- [Commits](https://github.com/trifectatechfoundation/zlib-rs/compare/v0.6.3...v0.6.4)

---
updated-dependencies:
- dependency-name: libz-rs-sys
  dependency-version: 0.6.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-30 23:41:44 +09:00
dependabot[bot] 2d8a60b240 Bump rustyline in the unix group across 1 directory (#8192)
Bumps the unix group with 1 update in the / directory: [rustyline](https://github.com/kkawakam/rustyline).


Updates `rustyline` from 18.0.0 to 18.0.1
- [Release notes](https://github.com/kkawakam/rustyline/releases)
- [Changelog](https://github.com/kkawakam/rustyline/blob/master/History.md)
- [Commits](https://github.com/kkawakam/rustyline/compare/v18.0.0...v18.0.1)

---
updated-dependencies:
- dependency-name: rustyline
  dependency-version: 18.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: unix
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-30 23:41:35 +09:00
dependabot[bot] 174afd1639 Bump phf from 0.13.1 to 0.14.0 in the phf group across 1 directory (#8191)
Bumps the phf group with 1 update in the / directory: [phf](https://github.com/rust-phf/rust-phf).


Updates `phf` from 0.13.1 to 0.14.0
- [Release notes](https://github.com/rust-phf/rust-phf/releases)
- [Changelog](https://github.com/rust-phf/rust-phf/blob/main/RELEASE_PROCESS.md)
- [Commits](https://github.com/rust-phf/rust-phf/compare/v0.13.1...v0.14.0)

---
updated-dependencies:
- dependency-name: phf
  dependency-version: 0.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: phf
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-30 23:41:25 +09:00
dependabot[bot] 7e75d415c9 Bump libffi from 5.1.0 to 5.1.1 in the libffi group across 1 directory (#8190)
Bumps the libffi group with 1 update in the / directory: [libffi](https://github.com/libffi-rs/libffi-rs).


Updates `libffi` from 5.1.0 to 5.1.1
- [Commits](https://github.com/libffi-rs/libffi-rs/compare/libffi-v5.1.0...libffi-v5.1.1)

---
updated-dependencies:
- dependency-name: libffi
  dependency-version: 5.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: libffi
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-30 23:41:13 +09:00
dependabot[bot] 07c4701dbb Bump zizmorcore/zizmor-action from 0.5.6 to 0.5.7 (#8189)
Bumps [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action) from 0.5.6 to 0.5.7.
- [Release notes](https://github.com/zizmorcore/zizmor-action/releases)
- [Commits](https://github.com/zizmorcore/zizmor-action/compare/5f14fd08f7cf1cb1609c1e344975f152c7ee938d...192e21d79ab29983730a13d1382995c2307fbcaa)

---
updated-dependencies:
- dependency-name: zizmorcore/zizmor-action
  dependency-version: 0.5.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-30 23:41:02 +09:00
Shahar Naveh 85ba1df3b1 Add more clippy rules (#8183)
* clippy `assigning_clones`

* string_lit_as_bytes

* tuple_array_conversions

* while_float

* manual_assert

* Revert "string_lit_as_bytes"

This reverts commit f40f756440.
2026-06-30 23:40:29 +09:00
Shahar Naveh e39c791e06 FutureFeature enum (#8185) 2026-06-30 23:39:13 +09:00
Shahar Naveh e7800603cf clippy iter_over_hash_type (#8182) 2026-06-30 23:34:08 +09:00
Shahar Naveh a588a64572 Uncomment codegen crashing tests (#8175)
* Update `test_patma.py` to 3.14.6

* Update `test_listcomps.py`

* Align patches of `test_super.py`

* Align `test_grammar.py`

* Align patches for `test_pep646_syntax.py`
2026-06-30 23:32:30 +09:00
Bas Schoenmaeckers d1792fd2ce Add more int functions to the c-api (#8159)
* Add more int functions to the c-api

* Simplify as_mask logic

* Add `PyLong_FromNativeBytes` & `PyLong_FromUnsignedNativeBytes`
2026-06-30 23:31:15 +09:00
Shahar Naveh dd9a477c87 Fix all clippy suggestions in ir.rs (#8162)
* Fix all clippy suggestions in `ir.rs`

* remove some `idx()` calls
2026-06-30 23:28:23 +09:00
Jeong, YunWon 8e598a68ea Clean up compiler parity leftovers (#8174) 2026-06-26 22:14:08 +09:00
Bas Schoenmaeckers 4421ac89a1 Add more object c-api's (#8170) 2026-06-26 20:42:01 +09:00
Shahar Naveh 9c027d4f67 Update test/signalinterproctester.py to 3.14.6 (#8173)
* Update `test/signalinterproctester.py` to 3.14.6

* Add `signalinterproctester.py` as a test dependency of `test_signal.py`
2026-06-26 18:24:20 +09:00
Shahar Naveh 8cb96ebcbb Update test_subprocess.py to 3.14.6 (#8171) 2026-06-26 18:23:54 +09:00
Jeong, YunWon a1ba6a662c Align compiler and AST behavior with CPython (#8138)
* Align compiler and AST behavior with CPython

Update the compiler pipeline, AST module support, and related VM compile/eval paths toward CPython 3.14 behavior.

Use upstream Ruff parser crates directly and keep RustPython-specific syntax preflight handling in the compile path.

Refresh opcode metadata, snapshots, and targeted tests for the aligned bytecode and AST behavior.

* fix

* Fix PR 8138 CI failures

* Fix match mapping wildcard scan complexity

* fixes

* Use Ruff runtime AST fields

* Minimize residual patch diff

* refactor error handling

* Remove _ast conversion context wrappers

* Clean up _ast conversion glue and compiler warning escalation

Rename the Node conversion parameter `ctx` to `vm` throughout the _ast
module.

Remove the unused compile_program, compile_program_single,
compile_block_expression, and compile_expression forwarders; compile_top
stays as the entry point.

Stash an escalated compiler SyntaxWarning so a non-SyntaxWarning category
propagates unchanged instead of being rewritten to SyntaxError, matching
PyErr_ExceptionMatches(SyntaxWarning) in compiler_warn. Drop the now-unused
CompileWarningError::into_codegen_error.

Replace the PositionalArguments two-variant enum with a struct holding a
shared range and a PositionalArgumentsKind enum.

Assisted-by: Claude

* Represent compiler flags as a CompilerFlags bitflags

Replace the loose PY_CF_*/CO_* i32 constants in compile_mode with a
CompilerFlags bitflags covering the PyCF_* flags and __future__
CO_FUTURE_* bits. The Python-visible ast.PyCF_* attribute values are
derived from it via bits(); parser input modes stay plain consts.

builtins::compile and the compile_string flag handling test flags
through CompilerFlags::contains instead of raw bit math.

Assisted-by: Claude

* Fix PR 8138 test regressions

* Fix PR 8138 CI failures

* Avoid shell interpolation in Linux deps action

* Fix review findings in compiler/AST changes

- frame.rs: compute the MATCH_CLASS class name lazily so a successful
  match no longer takes the type name lock or allocates; the
  __match_args__-not-a-tuple branch reuses it instead of recomputing.
- _ast/constant.rs: add the missing leading space to the with_recursion
  label ("maximum recursion depth exceeded during compilation").
- sys.set_int_max_str_digits: restore the "maxdigits must be 0 or larger
  than {n}" error text.
- codegen: set CO_MAXBLOCKS to 20 in both ir.rs and compile.rs.
- _ast/exception.rs: extract the duplicated excepthandler node guard
  into ensure_excepthandler_node.
- codegen: correct the validate_keywords doc comment.
- Drop redundant "CPython" qualifiers from comments added in this branch.

Assisted-by: Claude
2026-06-26 18:22:08 +09:00
Bas Schoenmaeckers 473ba7391a Add more mapping functions to c-api (#8169) 2026-06-25 22:35:04 +09:00
Bas Schoenmaeckers ab3d050485 Add allocator functions to c-api (#8168) 2026-06-25 22:34:14 +09:00
Shahar Naveh b28f29313f Update some tests to 3.14.6 (#8167)
* Add `test_fileutils.py` from 3.14.6

* Align patch for `test_zipimport_support.py`

* Update `test_bigmem.py` to 3.14.6

* Update `test_exception_group.py`

* Align patches for `test_baseexception.py`

* Update `test_exceptions.py`

* Update `test_dtrace.py`

* Remove patch from `string_tests.py`
2026-06-25 22:33:51 +09:00
Shahar Naveh 7edb4fb016 Update test_ssl.py to 3.1.46 (#8166)
* Update `test_ssl.py` to 3.14.6

* Add `Lib/test/ssltests.py`

* Mark failing test correctly
2026-06-25 22:33:13 +09:00
Shahar Naveh 7b715541be Update test_tempfile.py to 3.14.6 (#8165) 2026-06-25 22:32:57 +09:00
Shahar Naveh a807620fc1 Update test_repl.py to 3.14.6 (#8164)
* Update `test_repl.py` to 3.14.6

* mark failing tests

* Mark failing test correctly
2026-06-25 22:32:44 +09:00
Shahar Naveh e4814d4893 Update ensurepip to 26.1.2 (cpython 3.14.6) (#8163) 2026-06-25 22:25:32 +09:00
Bas Schoenmaeckers 64feb29094 Add more number functions to c-api (#8158) 2026-06-25 22:20:44 +09:00
Shahar Naveh f81c320281 Move some of free standing functions to be ir::Blocks methods (part 2) (#8155)
* mark_except_handlers

* mark_warm

* mark_cold

* push_cold_blocks_to_end

* check_cfg

* jump thread

* basicblock_add_jump

* convert_pseudo_conditional_jumps

* normalize_jumps_in_block

* basicblock_inline_small_or_no_lineno_blocks

* inline_small_or_no_lineno_blocks

* basicblock_remove_redundant_nops

* remove_redundant_nops

* no_redundant_nops

* remove_redundant_jumps

* no_redundant_jumps

* remove_redundant_nops_and_jumps

* blocks_new_block

* clippy
2026-06-25 14:21:11 +09:00
dependabot[bot] c76190ad36 Bump taiki-e/install-action from 2.81.8 to 2.81.11 (#8147)
Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action) from 2.81.8 to 2.81.11.
- [Release notes](https://github.com/taiki-e/install-action/releases)
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/install-action/compare/0631aa6515c7d545823c67cfae7ef4fc7f490154...15449e3094499af05d8d964a1c884208e4b8b595)

---
updated-dependencies:
- dependency-name: taiki-e/install-action
  dependency-version: 2.81.11
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-25 14:00:42 +09:00
Bas Schoenmaeckers c57a986c7c Add remaining float functions to c-apo (#8157) 2026-06-25 14:00:32 +09:00
Joshua Megnauth a7aebe645b unicodedata: Remove UnicodeVersion struct (#8131) 2026-06-24 21:58:57 +09:00
Shahar Naveh 5f6605c7c4 Move some of free standing functions to be ir::Blocks method (#8154) 2026-06-23 22:50:53 +09:00
Shahar Naveh 4009560fff Use stable toolchain when updating caches (#8153) 2026-06-23 22:49:58 +09:00
dependabot[bot] c81f5c2fba Bump which from 8.0.3 to 8.0.4 (#8151)
Bumps [which](https://github.com/harryfei/which-rs) from 8.0.3 to 8.0.4.
- [Release notes](https://github.com/harryfei/which-rs/releases)
- [Changelog](https://github.com/harryfei/which-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/harryfei/which-rs/compare/8.0.3...8.0.4)

---
updated-dependencies:
- dependency-name: which
  dependency-version: 8.0.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-23 22:48:17 +09:00
dependabot[bot] eeb4a37ea0 Bump webpki-roots in the webpki-root group across 1 directory (#8150)
Bumps the webpki-root group with 1 update in the / directory: [webpki-roots](https://github.com/rustls/webpki-roots).


Updates `webpki-roots` from 1.0.7 to 1.0.8
- [Release notes](https://github.com/rustls/webpki-roots/releases)
- [Commits](https://github.com/rustls/webpki-roots/compare/v/1.0.7...v/1.0.8)

---
updated-dependencies:
- dependency-name: webpki-roots
  dependency-version: 1.0.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: webpki-root
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-23 22:48:10 +09:00
dependabot[bot] 3a5a1c216c Bump getrandom in the random group across 1 directory (#8149)
Bumps the random group with 1 update in the / directory: [getrandom](https://github.com/rust-random/getrandom).


Updates `getrandom` from 0.4.2 to 0.4.3
- [Changelog](https://github.com/rust-random/getrandom/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-random/getrandom/compare/v0.4.2...v0.4.3)

---
updated-dependencies:
- dependency-name: getrandom
  dependency-version: 0.4.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: random
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-23 22:48:02 +09:00
dependabot[bot] ae09ab195e Bump the malachite group across 1 directory with 3 updates (#8146)
Bumps the malachite group with 2 updates in the / directory: [malachite-bigint](https://github.com/mhogrefe/malachite) and [malachite-q](https://github.com/mhogrefe/malachite).


Updates `malachite-bigint` from 0.9.1 to 0.9.2
- [Release notes](https://github.com/mhogrefe/malachite/releases)
- [Commits](https://github.com/mhogrefe/malachite/compare/v0.9.1...v0.9.2)

Updates `malachite-q` from 0.9.1 to 0.9.2
- [Release notes](https://github.com/mhogrefe/malachite/releases)
- [Commits](https://github.com/mhogrefe/malachite/compare/v0.9.1...v0.9.2)

Updates `malachite-base` from 0.9.1 to 0.9.2
- [Release notes](https://github.com/mhogrefe/malachite/releases)
- [Commits](https://github.com/mhogrefe/malachite/compare/v0.9.1...v0.9.2)

---
updated-dependencies:
- dependency-name: malachite-bigint
  dependency-version: 0.9.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: malachite
- dependency-name: malachite-q
  dependency-version: 0.9.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: malachite
- dependency-name: malachite-base
  dependency-version: 0.9.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: malachite
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-23 22:47:52 +09:00
dependabot[bot] f410bcab32 Bump https://github.com/rbubley/mirrors-prettier from v3.8.3 to 3.8.4 (#8145)
Bumps [https://github.com/rbubley/mirrors-prettier](https://github.com/rbubley/mirrors-prettier) from v3.8.3 to 3.8.4.
- [Commits](https://github.com/rbubley/mirrors-prettier/compare/v3.8.3...v3.8.4)

---
updated-dependencies:
- dependency-name: https://github.com/rbubley/mirrors-prettier
  dependency-version: 3.8.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-23 22:47:46 +09:00
dependabot[bot] 976f00042d Bump github/gh-aw from 0.77.5 to 0.79.9 (#8144)
Bumps [github/gh-aw](https://github.com/github/gh-aw) from 0.77.5 to 0.79.9.
- [Release notes](https://github.com/github/gh-aw/releases)
- [Changelog](https://github.com/github/gh-aw/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/gh-aw/compare/f990bbb7eb83981a203d4b5eccdc24f677e950c7...54ad1f83a833db4de127cf278b00438e19a103a0)

---
updated-dependencies:
- dependency-name: github/gh-aw
  dependency-version: 0.79.9
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-23 22:47:34 +09:00
dependabot[bot] 2c32ad602e Bump https://github.com/astral-sh/ruff-pre-commit (#8143)
Bumps [https://github.com/astral-sh/ruff-pre-commit](https://github.com/astral-sh/ruff-pre-commit) from v0.15.16 to 0.15.17.
- [Release notes](https://github.com/astral-sh/ruff-pre-commit/releases)
- [Commits](https://github.com/astral-sh/ruff-pre-commit/compare/v0.15.16...v0.15.17)

---
updated-dependencies:
- dependency-name: https://github.com/astral-sh/ruff-pre-commit
  dependency-version: 0.15.17
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-23 22:47:28 +09:00
Shahar Naveh 7350a5b709 Implement collections.defaultdict in rust (#8132) 2026-06-23 22:47:10 +09:00
Shahar Naveh 6533a7844a Newtype for [ir::Block] (#8142) 2026-06-22 22:57:48 +09:00
Shahar Naveh c95b48c1b3 Remove duplicated code in compile.rs (#8141) 2026-06-22 22:56:35 +09:00
dependabot[bot] d0390e4fdb Bump webpack-dev-server from 5.2.4 to 5.2.5 in /wasm/demo (#8140)
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 5.2.4 to 5.2.5.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v5.2.4...v5.2.5)

---
updated-dependencies:
- dependency-name: webpack-dev-server
  dependency-version: 5.2.5
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-22 21:57:04 +09:00
Shahar Naveh a70a2bb4b8 Use ast::visitor::Visitor for collection annotations (#8139) 2026-06-22 21:56:50 +09:00
Shahar Naveh 221d95cbbe Run windows tests with -u all (#8134)
* Enable all test resources on windows

* Mark tests

* mark wmi test
2026-06-22 16:46:53 +09:00
Shahar Naveh c6e254fbdc General code nits (#8135)
* General nitpicks

* Move Compiler::constant_truthiness to a ConstantData method

* More code cleanup

* bytecode::CodeFlags -> CodeFlags

* More code clenaups
2026-06-22 16:46:17 +09:00
Shahar Naveh 866f7ca812 Fix symtable type_param_block name (#8137) 2026-06-22 16:44:08 +09:00
Shahar Naveh 619f423084 Replace &String -> &str (#8136) 2026-06-22 16:42:54 +09:00
Bas Schoenmaeckers 2ce6fd0e41 Add stdlib to c-api (#8133) 2026-06-22 16:38:33 +09:00
dependabot[bot] 02a05ee67b Bump insta from 1.47.2 to 1.48.0 (#8130)
Bumps [insta](https://github.com/mitsuhiko/insta) from 1.47.2 to 1.48.0.
- [Release notes](https://github.com/mitsuhiko/insta/releases)
- [Changelog](https://github.com/mitsuhiko/insta/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mitsuhiko/insta/compare/1.47.2...1.48.0)

---
updated-dependencies:
- dependency-name: insta
  dependency-version: 1.48.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-22 16:32:37 +09:00
Shahar Naveh 9f2c4e14a9 More clippy rules (#8127)
* clippy `elidable_lifetime_names`

* large_types_passed_by_value

* trivially_copy_pass_by_ref

* type_repetition_in_bounds

* copy_iterator

* collection_is_never_read

* same_functions_in_if_condition

* unnecessary_struct_initialization

* clippy on windows

* ssl windows
2026-06-22 16:30:51 +09:00
Shahar Naveh 432df16bdd Align patches at test_types.py (#8126)
* Align patches at `test_types.py`

* Add missing methods for `_io.TextIOBase`
2026-06-22 16:30:23 +09:00