Repository navigation
Align regex, dataclasses and typing with Python 3.15 - #9189
youknowdot wants to merge 1 commit into
Conversation
Expose Pattern.prefixmatch and Scanner.prefixmatch and refresh their canonical re consumers, dataclasses annotation handling, typing APIs and regression fixtures from CPython d220409a13b77de7a6c30abe16ea90db01528edc. Assisted-by: OpenAI Codex:model version unavailable
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: true
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Merging this PR will not alter performance
Comparing Footnotes
|
📦 Library DependenciesThe following Lib/ modules were modified. Here are their dependencies: :4: SyntaxWarning: invalid decimal literal dependencies:
dependent tests: (20 tests)
[x] lib: cpython/Lib/dataclasses.py dependencies:
dependent tests: (98 tests)
[ ] test: cpython/Lib/test/test_sys.py (TODO: 4) dependencies: dependent tests: (236 tests)
[ ] test: cpython/Lib/test/test_pyrepl (TODO: 19) dependencies: dependent tests: (no tests depend on pyrepl) [x] lib: cpython/Lib/re dependencies:
dependent tests: (83 tests)
[ ] lib: cpython/Lib/runpy.py dependencies:
dependent tests: (4 tests)
[ ] test: cpython/Lib/test/test_cmd_line.py (TODO: 22) dependencies: dependent tests: (no tests depend on cmd_line) Legend:
|
Summary
Extract the regex/dataclasses/typing compatibility batch from #8954, after #9179 landed.
re.Pattern.prefixmatchandre.Scanner.prefixmatchaliases.scripts/update_libfrom CPython 3.15.0 commitd220409a13b77de7a6c30abe16ea90db01528edc, preserving existing RustPython markers and canonical guards.The independent diff is 15 files: two native method attributes, five production library modules, and their tests/fixtures. No additional local skips, recursion-limit changes, or duplicate snippets were introduced.
Validation
Local validation used this commit on main
9f6f771965e93d0405bd2ab7958e084f82484f38. Main subsequently advanced to3f55cf4af040a053892bec26061a1e472cd49b5fvia #9163; there is no direct file overlap with this batch, and a source-only merge check is clean. Hosted merge CI will validate that newer integration.On this commit:
test_re,test_dataclasses,test_typing,test_type_aliases,test_type_annotations,test_type_params,test_genericalias, andtest_annotationlib.The identical patch on its previous #9179-head base also passed all eight pinned CPython oracle suites, workspace native/doctests (1,394 passed), C-API tests (123 passed), and both strict Clippy gates. Those are prior-checkpoint results, not new full-aggregate claims for this rebased commit.
Local regex coverage excludes only
ReTests.test_regression_gh94675via the external runner because this environment previously denied its forkserver Unix-socket operation. The canonical source has no added local skip, and hosted CI keeps the full suite. Existing skips/expected failures and CPython-only exclusions remain visible; no omitted behavior is claimed as covered.Assisted-by: OpenAI Codex:model version unavailable