Commit Graph
4439 Commits
Author SHA1 Message Date
Jeong, YunWon ece2cc1c40 mark failing tests 2026-02-27 09:07:23 +09:00
CPython Developers d77c7f2519 Update test_compile from v3.14.3 2026-02-27 09:06:56 +09:00
Jeong, YunWon a059bd2958 impl sys.monitoring 2026-02-27 09:06:55 +09:00
Jeong, YunWon cf2b223c87 patch test_monitoring not to entirely skipped 2026-02-27 04:36:46 +09:00
CPython Developers 70942d3333 Update test_monitoring from CPython 3.14.3 2026-02-27 04:36:46 +09:00
Jeong, YunWon 7311b87c7b Remove PyStr::as_str, use as_wtf8/PyUtf8Str instead (#7218)
- Remove as_str() from PyStr/Py<PyStr> (was panicking on surrogates)
- Add Wtf8Concat trait and concat! macro for WTF-8 formatting
- Add impl From<&str> for &Wtf8 conversion
- Add AsPyStr/DictKey impls for PyUtf8Str types
- Migrate all call sites to as_wtf8(), to_str(), or PyUtf8Str
- Fix exception message APIs to accept Wtf8Buf
- Deduplicate inner-scope imports across modules
2026-02-27 04:20:11 +09:00
Jeong, YunWon 8df1a2b05d Clear frame locals and stack on generator close + Add dir_fd support for rmdir, remove/unlink, scandir (#7222)
* Clear frame locals and stack on generator close

Add Frame::clear_locals_and_stack() to release references held by
closed generators/coroutines, matching _PyFrame_ClearLocals behavior.
Call it from Coro::close() after marking the coroutine as closed.

Update test_generators.py expectedFailure markers accordingly.

* Add dir_fd support for rmdir, remove/unlink, scandir

- rmdir: use unlinkat(fd, path, AT_REMOVEDIR) when dir_fd given
- remove/unlink: use unlinkat(fd, path, 0) when dir_fd given
- scandir: accept fd via fdopendir, add ScandirIteratorFd
- listdir: rewrite fd path to use raw readdir instead of nix::dir::Dir
- DirEntry: add d_type and dir_fd fields for fd-based scandir
- Update supports_fd/supports_dir_fd entries accordingly

* cells_free
2026-02-27 01:58:33 +09:00
Shahar Naveh fbb65cc738 Update compileall.py to 3.14.3 (#7225) 2026-02-25 21:15:55 +09:00
CPython Developers 2abc1386c6 Update annotationlib from v3.14.3 2026-02-24 16:22:44 +09:00
CPython Developers e461a0a7b9 Update zipfile from v3.14.3 2026-02-24 14:23:19 +09:00
Jeong, YunWon 7aa38ebe9f Implement Windows SemLock in _multiprocessing module (#7199)
* Implement Windows SemLock in _multiprocessing module

Add SemLock class using Windows semaphore APIs (CreateSemaphoreW,
WaitForSingleObjectEx, ReleaseSemaphore) so test_multiprocessing
suites are no longer skipped with "lacks a functioning sem_open".
Also add sem_unlink as no-op and flags dict for Windows.

* Fix _multiprocessing recv to return bytes and improve SemLock reliability

- recv() now returns bytes instead of int (matching CPython)
- Remove spurious GetLastError() check after CreateSemaphoreW
- Add signal checking during blocking SemLock acquire

* Include winerror in OSError.__reduce__ on Windows

* Remove expectedFailure for tests now passing with Windows SemLock

* Fix OSError.__reduce__ to preserve winerror when filename is None

When filename is None, __reduce__ was reconstructing a 2-element
(errno, msg) tuple, dropping the winerror at position 3 in the
original args. Use the original args tuple instead, matching CPython.

* Validate maxvalue > 0 in SemLock and document winerror __reduce__ divergence

* Reject embedded null characters in mmap tagname and _winapi file mapping names
2026-02-24 10:12:29 +09:00
Shahar Naveh d412c10e6b Update datetime to 3.14.3 (#7084) 2026-02-24 01:07:30 +00:00
Jeong, YunWon 061c709434 cold block reordering and jump normalization (#7210)
* cold block reordering and jump normalization

Add mark_cold, push_cold_blocks_to_end, and normalize_jumps
passes to the codegen CFG pipeline. Use JumpNoInterrupt for
exception handler exit paths in try-except-finally compilation.

* mark test_peepholer
2026-02-24 08:53:07 +09:00
Jeong, YunWon cb7f19c316 Implement Windows named mmap via CreateFileMappingW (#7207)
Use Win32 CreateFileMappingW + MapViewOfFile when tagname is
provided, enabling inter-process shared memory for
multiprocessing.heap.Arena. Anonymous mmaps without tagname
still use memmap2.

Remove expectedFailure from test_tagname in test_mmap.py.
2026-02-23 23:32:52 +09:00
Jeong, YunWon ab059f963c skip flaky test (#7208) 2026-02-23 22:08:50 +09:00
CPython Developers ce0f9dd057 Update test_gc from v3.14.3 2026-02-23 08:48:18 +09:00
Jeong, YunWon 8a74956590 more algorithm-independent GC infra (#7194)
* mark poluting tests

* GC-infra independent to EBR

* trashcan

* add overflow guard to inc(), #[must_use] on dec()/safe_inc(), trashcan debug_assert, weakref generic re-check
2026-02-22 21:31:42 +09:00
Jeong, YunWon 553c26b64c Move sys.flags thread_inherit_context/context_aware_warnings to getset 2026-02-21 22:58:12 +09:00
Jeong, YunWon b31b66c3d3 Register latin-1 codec and fix stdio bootstrap 2026-02-21 22:58:12 +09:00
Jeong, YunWon 8b7d66f566 Fix WindowsVersionData n_sequence_fields 2026-02-21 22:58:12 +09:00
Jeong, YunWon 423b29c306 Implement sys.call_tracing, sys._current_exceptions
- Add sys.call_tracing as func(*args) dispatch
- Add sys._current_exceptions with per-thread exception tracking
  via thread_exceptions registry synced on push/pop/set_exception
- Fix f_back to use previous_frame pointer and cross-thread lookup
- Add module="sys" to float_info struct sequence
- Fix sys.exit to unpack tuple args
- Set default stdio_errors to surrogateescape
- Remove noisy __del__ warning in object core
2026-02-21 14:12:18 +09:00
CPython Developers f520a7d456 Update test_sys from v3.14.3 2026-02-21 14:12:18 +09:00
Jeong, YunWon 1f1123db75 force_unlock_after_fork (#7186) 2026-02-20 09:53:01 +09:00
wvmscs c7e94dd1a8 Fix re.fullmatch POSSESSIVE_REPEAT (#7187) 2026-02-20 09:51:34 +09:00
Lee Dogeon 550cc44fbd Update test_collections from v3.14.3 (#7189) 2026-02-19 08:48:33 +09:00
Lee DogeonandClaude Opus 4.6 0fdd3a669c Remove expectedFailure from test_types_coroutine_wrapper_state
The types.py upgrade added gi_suspended to _GeneratorWrapper,
fixing this test.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 18:39:56 +09:00
Lee DogeonandClaude Opus 4.6 27a986a843 Mark failing tests
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 18:38:44 +09:00
CPython Developers 04fd0f6b8e Update types from v3.14.3 2026-02-18 17:19:49 +09:00
Jeong, YunWon 6a12c91d61 impl more ctypes
- Add __pointer_type__ getter/setter and StgInfo cache
- Add kept_refs (HashMap-keyed) for c_char_p lifetime
- Simplify ensure_z_null_terminated to 2-value return
- Add RawMemoryBuffer for zero-copy memoryview_at_addr
- Add bitfield support in PyCField with validation
- Add CArgObject offset handling in extract_ptr_from_arg
- Add deprecation warning for _pack_ without _layout_
- Fix comparison TypeError message format
- Fix unsupported binop error message format
- Mark failing CI tests as expectedFailure/skip
2026-02-18 03:10:40 +09:00
CPython Developers 8a543982fe Update ctypes from v3.14.3 2026-02-18 03:09:55 +09:00
Jeong, YunWon 88242301ff Use _print_exception_bltin in excepthook, register source in linecache (#7177)
- excepthook: call traceback._print_exception_bltin instead of
  traceback.print_exception to match PyErr_Display behavior
- run_string: register compiled code in linecache._interactive_cache
  so traceback can display source lines and caret indicators
- Remove test_sys_tracebacklimit expectedFailure
2026-02-18 01:50:27 +09:00
Jeong, YunWon 31aae8ef5c Merge pull request #7184 from youknowone/winsound
Update test_winsound from v3.14.3
2026-02-18 00:47:16 +09:00
Shahar Naveh d454b59291 Update csv.py from 3.14.3 (#7181)
* Update `csv.py` from 3.14.3

* Don't hardcode error message for `int` class
2026-02-18 00:43:49 +09:00
Jeong, YunWon 8cad82e1d5 Fix unpack_sequence to match CPython behavior (#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.
2026-02-18 00:41:53 +09:00
CPython Developers 6c3c015ddb Update test_winsound from v3.14.3 2026-02-17 21:33:54 +09:00
Jeong, YunWonandCPython Developers 680de33572 Update test_fstring from v3.14.3 and impl more (#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 <>
2026-02-17 16:49:59 +09:00
ShaharNaveh 1551db16d7 Use shared doctest checker 2026-02-17 01:31:29 +09:00
ShaharNaveh c52edc3593 Update test_unpack.py from 3.14.3 2026-02-16 23:34:17 +09:00
Jeong, YunWon fb2765b4b6 Merge pull request #7141 from youknowone/execve
Accept any mapping for os.execve env argument
2026-02-16 03:22:51 +09:00
Jeong, YunWon d1f2cdc159 Merge pull request #7151 from youknowone/winconsoleio
_WindowsConsoleIO
2026-02-16 01:51:24 +09:00
ShaharNaveh 23b26afab8 Update test_richcmp.py from 3.14.3 2026-02-16 01:19:57 +09:00
Jeong, YunWon 77ae9daf04 Accept any mapping for os.execve env argument
Change env parameter from PyDictRef to ArgMapping so that
EnvironmentVarGuard and other mapping types are accepted.
2026-02-16 01:03:18 +09:00
CPython Developers 0b0450e7da Update test_winconsoleio from v3.14.3 2026-02-16 00:31:57 +09:00
CPython Developers 13544593b7 Update test_wmi from v3.14.3 2026-02-15 23:44:23 +09:00
Jeong, YunWon 59c851b7c5 Skip flaky test_main_thread_after_fork_from_nonmain_thread 2026-02-15 23:42:09 +09:00
ShaharNaveh b46e440779 Update test_scope.py from 3.14.3 2026-02-15 23:40:14 +09:00
Jeong, YunWon 2837752e33 Merge pull request #7159 from youknowone/hashlib
_hashlib.HMAC and Update hmac from v3.14.3
2026-02-15 23:38:55 +09:00
Shahar Naveh 12c2e489ef Update test_with.py from 3.14.3 (#7158) 2026-02-15 23:38:22 +09:00
Jeong, YunWon a760f337a0 Make __hello_only__ a frozen-only alias of __hello__ (#7160)
Remove __hello_only__.py source file and its symlink. Register
__hello_only__ as a frozen module alias reusing __hello__ bytecode,
matching the behavior where origname is None (no source file).
2026-02-15 22:25:28 +09:00
9aa6f07006 Fix winreg and Update test_launcher from v3.14.3 (#7155)
* Fix winreg SetValueEx and OSError winerror attribute

- SetValueEx: accept None for value_name (default registry value)
- os_error_from_windows_code: use std::io::Error to properly
  set winerror attribute on OSError
- EnumKey: use os_error_from_windows_code for proper error

* Update test_launcher from v3.14.3

* Update test_winreg from v3.14.3

* Update crates/vm/src/stdlib/winreg.rs

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: CPython Developers <>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-02-15 22:11:48 +09:00