X Tutup
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: RustPython/RustPython
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main@{1day}
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
  • 10 commits
  • 95 files changed
  • 5 contributors

Commits on Mar 10, 2026

  1. Bump syn from 2.0.114 to 2.0.117 (#7393)

    Bumps [syn](https://github.com/dtolnay/syn) from 2.0.114 to 2.0.117.
    - [Release notes](https://github.com/dtolnay/syn/releases)
    - [Commits](dtolnay/syn@2.0.114...2.0.117)
    
    ---
    updated-dependencies:
    - dependency-name: syn
      dependency-version: 2.0.117
      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>
    dependabot[bot] authored Mar 10, 2026
    Configuration menu
    Copy the full SHA
    5b0fb03 View commit details
    Browse the repository at this point in the history
  2. Base implementation of _tokenize module

    Port from PR #6240 by ShaharNaveh, adapted to current codebase.
    Uses ruff_python_parser for tokenization via TokenizerIter.
    ShaharNaveh authored and youknowone committed Mar 10, 2026
    Configuration menu
    Copy the full SHA
    5c5aff8 View commit details
    Browse the repository at this point in the history
  3. Update tokenize from v3.14.3

    CPython Developers authored and youknowone committed Mar 10, 2026
    Configuration menu
    Copy the full SHA
    bf2b993 View commit details
    Browse the repository at this point in the history
  4. Rewrite _tokenize with 2-phase model

    Replace per-line reparsing with single-pass tokenization:
    - Read all lines via readline, parse once, yield tokens
    - Fix token type values (COMMENT=65, NL=66, OP=55)
    - Fix NEWLINE/NL end positions and implicit newline handling
    - Fix DEDENT positions via look-ahead to next non-DEDENT token
    - Handle FSTRING_MIDDLE brace unescaping ({{ → {, }} → })
    - Emit implicit NL before ENDMARKER when source lacks trailing newline
    - Raise IndentationError from lexer errors
    - Remove 13 expectedFailure marks for now-passing tests
    youknowone committed Mar 10, 2026
    Configuration menu
    Copy the full SHA
    55737ed View commit details
    Browse the repository at this point in the history
  5. Bump insta from 1.46.1 to 1.46.3 (#7394)

    Bumps [insta](https://github.com/mitsuhiko/insta) from 1.46.1 to 1.46.3.
    - [Release notes](https://github.com/mitsuhiko/insta/releases)
    - [Changelog](https://github.com/mitsuhiko/insta/blob/master/CHANGELOG.md)
    - [Commits](mitsuhiko/insta@1.46.1...1.46.3)
    
    ---
    updated-dependencies:
    - dependency-name: insta
      dependency-version: 1.46.3
      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>
    dependabot[bot] authored Mar 10, 2026
    Configuration menu
    Copy the full SHA
    ae8d8c7 View commit details
    Browse the repository at this point in the history
  6. Implement _tokenize and update tokenize from v3.14.3 (#7392)

    * Base implementation of _tokenize module
    
    Port from PR #6240 by ShaharNaveh, adapted to current codebase.
    Uses ruff_python_parser for tokenization via TokenizerIter.
    
    * Update tokenize from v3.14.3
    
    * Rewrite _tokenize with 2-phase model
    
    Replace per-line reparsing with single-pass tokenization:
    - Read all lines via readline, parse once, yield tokens
    - Fix token type values (COMMENT=65, NL=66, OP=55)
    - Fix NEWLINE/NL end positions and implicit newline handling
    - Fix DEDENT positions via look-ahead to next non-DEDENT token
    - Handle FSTRING_MIDDLE brace unescaping ({{ → {, }} → })
    - Emit implicit NL before ENDMARKER when source lacks trailing newline
    - Raise IndentationError from lexer errors
    - Remove 13 expectedFailure marks for now-passing tests
    
    ---------
    
    Co-authored-by: ShaharNaveh <shaharnaveh@users.noreply.github.com>
    Co-authored-by: CPython Developers <>
    youknowone and ShaharNaveh authored Mar 10, 2026
    Configuration menu
    Copy the full SHA
    e645761 View commit details
    Browse the repository at this point in the history
  7. Fix parking lot hash table after fork (#6963)

    * Use patched parking_lot_core with fork-safe HASHTABLE reset
    
    parking_lot_core's global HASHTABLE retains stale ThreadData after
    fork(), causing segfaults when contended locks enter park(). Use the
    patched version from youknowone/parking_lot (rustpython branch) which
    registers a pthread_atfork handler to reset the hash table.
    
    Unskip test_asyncio TestFork. Add Manager+fork integration test.
    
    * Unskip fork-related flaky tests after parking_lot fix
    
    With parking_lot_core's HASHTABLE now properly reset via
    pthread_atfork, fork-related segfaults and connection errors
    in multiprocessing tests should be resolved.
    
    Remove skip/expectedFailure markers from:
    - test_concurrent_futures/test_wait.py (6 tests)
    - test_concurrent_futures/test_process_pool.py (1 test)
    - test_multiprocessing_fork/test_manager.py (all WithManagerTest*)
    - test_multiprocessing_fork/test_misc.py (5 tests)
    - test_multiprocessing_fork/test_threads.py (2 tests)
    - _test_multiprocessing.py (2 shared_memory tests)
    
    Keep test_repr_rlock skipped (flaky thread start latency,
    not fork-related).
    youknowone authored Mar 10, 2026
    Configuration menu
    Copy the full SHA
    0355885 View commit details
    Browse the repository at this point in the history
  8. Save errno inside allow_threads in semaphore acquire (#7391)

    allow_threads may call attach_thread() on return, which
    can invoke syscalls that clobber errno. Capture errno
    inside the closure before it is lost.
    youknowone authored Mar 10, 2026
    Configuration menu
    Copy the full SHA
    45d93f4 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    a854ef2 View commit details
    Browse the repository at this point in the history
  10. Refine specialization caches and extend binary-op coverage (#7386)

    * Align BINARY_OP_EXTEND with CPython descriptor cache model
    
    * Align type _spec_cache and latin1 singleton string paths
    
    * Add specialization differential harness and align init error text
    
    * Tighten CALL_ALLOC_AND_ENTER_INIT stack-space guard
    
    * Align call-init frame flow and spec cache atomic ordering
    
    * Refine call-init recursion guard and cache swap lifetime handling
    
    * Align spec cache write locking with CPython contract
    
    * Align load attr miss cooldown with CPython
    
    * Align CALL descriptor and class-call specialization with CPython
    
    * Extract datastack_frame_size_bytes_for_code, skip monitoring for init_cleanup frames, guard trace dispatch
    
    - Extract datastack_frame_size_bytes_for_code as free function, use it
      to compute init_cleanup stack bytes instead of hardcoded constant
    - Add monitoring_disabled_for_code to skip instrumentation for
      synthetic init_cleanup code object in RESUME and execute_instrumented
    - Add is_trace_event guard so profile-only events skip trace_func dispatch
    youknowone authored Mar 10, 2026
    Configuration menu
    Copy the full SHA
    d248a04 View commit details
    Browse the repository at this point in the history
Loading
X Tutup