Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: sheeeng/rustpython-rustpython
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: RustPython/RustPython
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 17 commits
  • 42 files changed
  • 7 contributors

Commits on Feb 16, 2026

  1. Update test_unpack.py from 3.14.3

    ShaharNaveh authored and youknowone committed Feb 16, 2026
    Configuration menu
    Copy the full SHA
    0832828 View commit details
    Browse the repository at this point in the history
  2. Use shared doctest checker

    ShaharNaveh authored and youknowone committed Feb 16, 2026
    Configuration menu
    Copy the full SHA
    d71ffa6 View commit details
    Browse the repository at this point in the history

Commits on Feb 17, 2026

  1. Bump pyo3 from 0.28.0 to 0.28.1 in the pyo3 group

    Bumps the pyo3 group with 1 update: [pyo3](https://github.com/pyo3/pyo3).
    
    
    Updates `pyo3` from 0.28.0 to 0.28.1
    - [Release notes](https://github.com/pyo3/pyo3/releases)
    - [Changelog](https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md)
    - [Commits](PyO3/pyo3@v0.28.0...v0.28.1)
    
    ---
    updated-dependencies:
    - dependency-name: pyo3
      dependency-version: 0.28.1
      dependency-type: direct:production
      update-type: version-update:semver-patch
      dependency-group: pyo3
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    dependabot[bot] authored and youknowone committed Feb 17, 2026
    Configuration menu
    Copy the full SHA
    1f338ce View commit details
    Browse the repository at this point in the history
  2. Bump bitflags from 2.10.0 to 2.11.0

    Bumps [bitflags](https://github.com/bitflags/bitflags) from 2.10.0 to 2.11.0.
    - [Release notes](https://github.com/bitflags/bitflags/releases)
    - [Changelog](https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md)
    - [Commits](bitflags/bitflags@2.10.0...2.11.0)
    
    ---
    updated-dependencies:
    - dependency-name: bitflags
      dependency-version: 2.11.0
      dependency-type: direct:production
      update-type: version-update:semver-minor
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    dependabot[bot] authored and youknowone committed Feb 17, 2026
    Configuration menu
    Copy the full SHA
    530e4db View commit details
    Browse the repository at this point in the history
  3. Bump actions/cache from 4.3.0 to 5.0.3

    Bumps [actions/cache](https://github.com/actions/cache) from 4.3.0 to 5.0.3.
    - [Release notes](https://github.com/actions/cache/releases)
    - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
    - [Commits](actions/cache@0057852...cdf6c1f)
    
    ---
    updated-dependencies:
    - dependency-name: actions/cache
      dependency-version: 5.0.3
      dependency-type: direct:production
      update-type: version-update:semver-major
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    dependabot[bot] authored and youknowone committed Feb 17, 2026
    Configuration menu
    Copy the full SHA
    3d9480a View commit details
    Browse the repository at this point in the history
  4. Bump actions/download-artifact from 6.0.0 to 7.0.0

    Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 6.0.0 to 7.0.0.
    - [Release notes](https://github.com/actions/download-artifact/releases)
    - [Commits](actions/download-artifact@v6...v7)
    
    ---
    updated-dependencies:
    - dependency-name: actions/download-artifact
      dependency-version: 7.0.0
      dependency-type: direct:production
      update-type: version-update:semver-major
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    dependabot[bot] authored and youknowone committed Feb 17, 2026
    Configuration menu
    Copy the full SHA
    5ca3c28 View commit details
    Browse the repository at this point in the history
  5. Bump actions/setup-python from 5.6.0 to 6.2.0

    Bumps [actions/setup-python](https://github.com/actions/setup-python) from 5.6.0 to 6.2.0.
    - [Release notes](https://github.com/actions/setup-python/releases)
    - [Commits](actions/setup-python@v5.6.0...v6.2.0)
    
    ---
    updated-dependencies:
    - dependency-name: actions/setup-python
      dependency-version: 6.2.0
      dependency-type: direct:production
      update-type: version-update:semver-major
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    dependabot[bot] authored and youknowone committed Feb 17, 2026
    Configuration menu
    Copy the full SHA
    ee6ff22 View commit details
    Browse the repository at this point in the history
  6. Bump github/gh-aw from 0.43.22 to 0.45.0

    Bumps [github/gh-aw](https://github.com/github/gh-aw) from 0.43.22 to 0.45.0.
    - [Release notes](https://github.com/github/gh-aw/releases)
    - [Changelog](https://github.com/github/gh-aw/blob/main/CHANGELOG.md)
    - [Commits](github/gh-aw@fe858c3...58d1d15)
    
    ---
    updated-dependencies:
    - dependency-name: github/gh-aw
      dependency-version: 0.45.0
      dependency-type: direct:production
      update-type: version-update:semver-minor
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    dependabot[bot] authored and youknowone committed Feb 17, 2026
    Configuration menu
    Copy the full SHA
    e3c533a View commit details
    Browse the repository at this point in the history
  7. Update test_fstring from v3.14.3 and impl more (RustPython#7164)

    * Update test_fstring from v3.14.3
    
    * Fix 6 test_fstring expectedFailure tests
    
    - Add Unknown(char) variant to FormatType for proper error messages
      on unrecognized format codes (test_errors)
    - Strip comments from f-string debug text in compile.rs
      (test_debug_conversion)
    - Map ruff SyntaxError messages to match CPython in vm_new.rs:
      InvalidDeleteTarget, LineContinuationError, UnclosedStringError,
      OtherError(bytes mixing), OtherError(keyword identifier),
      FStringError(UnterminatedString/UnterminatedTripleQuotedString),
      and backtick-to-quote replacement for FStringError messages
    
    * Fix clippy::sliced_string_as_bytes warning
    
    ---------
    
    Co-authored-by: CPython Developers <>
    youknowone authored Feb 17, 2026
    Configuration menu
    Copy the full SHA
    b87386f View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    6b46052 View commit details
    Browse the repository at this point in the history
  9. Update test_winsound from v3.14.3

    CPython Developers authored and youknowone committed Feb 17, 2026
    Configuration menu
    Copy the full SHA
    b7643c0 View commit details
    Browse the repository at this point in the history
  10. Implement winsound module

    Add PlaySound, Beep, MessageBeep functions and all SND_*/MB_*
    constants. Uses Windows APIs via winmm.dll, kernel32, user32.
    youknowone committed Feb 17, 2026
    Configuration menu
    Copy the full SHA
    705dd7d View commit details
    Browse the repository at this point in the history
  11. Optimize coroutine exception handling and fix gen_throw traceback (Ru…

    …stPython#7166)
    
    - Replace ExceptionStack linked list with Vec for O(1) push/pop
    - Introduce FramePtr (NonNull<Py<Frame>>) to avoid Arc clone in frame stack
    - Use FramePtr in ThreadSlot for lock-protected cross-thread frame access
    - Add resume_gen_frame for lightweight generator/coroutine resume
    - Replace Coro.exception PyMutex with PyAtomicRef for lock-free swap
    - Add with_frame_exc to support initial exception state for generators
    - Use scopeguard for panic-safe cleanup in with_frame_exc/resume_gen_frame
    - Add traceback entries in gen_throw delegate/close error paths
    - Treat EndAsyncFor and CleanupThrow as reraise in handle_exception
    - Update current_frame()/current_globals() to return owned values
    - Add ThreadSlot with atomic exception field for sys._current_exceptions()
    - Push/pop thread frames in resume_gen_frame for sys._current_frames()
    youknowone authored Feb 17, 2026
    Configuration menu
    Copy the full SHA
    8fa0c66 View commit details
    Browse the repository at this point in the history
  12. Fix unpack_sequence to match CPython behavior (RustPython#7175)

    Add fast path for exact tuple/list (direct length check without
    iterator). General path now iterates only size+1 elements,
    fixing hang on infinite sequences like __getitem__ without
    raising IndexError.
    
    Error messages now include "got N" for tuple, list, and dict.
    Remove 7 expectedFailure/skip markers from test_unpack.
    youknowone authored Feb 17, 2026
    Configuration menu
    Copy the full SHA
    d4d010e View commit details
    Browse the repository at this point in the history
  13. Update csv.py from 3.14.3 (RustPython#7181)

    * Update `csv.py` from 3.14.3
    
    * Don't hardcode error message for `int` class
    ShaharNaveh authored Feb 17, 2026
    Configuration menu
    Copy the full SHA
    f0f3c9c View commit details
    Browse the repository at this point in the history
  14. Optimize redundant bool check (RustPython#7176)

    * Add compile_bool_op_inner and optimize nested opposite-operator BoolOps to avoid redundant __bool__ calls
    
    When a nested BoolOp has the opposite operator (e.g., `And` inside `Or`),
    the inner BoolOp's short-circuit exits are redirected to skip the outer
    BoolOp's redundant truth test. This avoids calling `__bool__()` twice on
    the same value (e.g., `Test() and False or False` previously called
    `Test().__bool__()` twice instead of once).
    
    Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
    
    * Add snapshot test for nested BoolOp bytecode
    
    Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
    
    * Add runtime test for redundant __bool__ check (issue RustPython#3567)
    
    Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
    
    * Apply clippy and rustfmt
    
    * Apply ruff format
    
    * Refactor compile_bool_op: extract emit_short_circuit_test and unify with compile_bool_op_inner
    
    Reduce code duplication by:
    - Extracting the repeated Copy + conditional jump pattern into emit_short_circuit_test
    - Merging compile_bool_op and compile_bool_op_inner into a single
      compile_bool_op_with_target with an optional short_circuit_target parameter
    - Keeping compile_bool_op as a thin wrapper for the public interface
    
    Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
    
    * Relocate redundant __bool__ check test snippet
    
    * Update extra_tests/snippets/syntax_short_circuit_bool.py
    
    * Fix assertion in syntax_short_circuit_bool
    
    ---------
    
    Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
    Co-authored-by: Jeong, YunWon <69878+youknowone@users.noreply.github.com>
    3 people authored Feb 17, 2026
    Configuration menu
    Copy the full SHA
    d07d522 View commit details
    Browse the repository at this point in the history
  15. Merge pull request RustPython#7184 from youknowone/winsound

    Update test_winsound from v3.14.3
    youknowone authored Feb 17, 2026
    Configuration menu
    Copy the full SHA
    ccccaaf View commit details
    Browse the repository at this point in the history
Loading