-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Open
Labels
A-stdlibC-compatA discrepancy between RustPython and CPythonA discrepancy between RustPython and CPythonC-enhancementNew feature or requestNew feature or requestcpythonCPython source code relatedCPython source code relatedgood first issueGood for newcomersGood for newcomers
Description
Though it will be sometimes blocked by rust side issues, don't worry!
Please just create PR about the broken test and and create issues related to the new bugs.
If you are new to updating cpython libraries, this guide will be useful:
https://github.com/RustPython/RustPython/wiki/How-to-update-test-files
When updating module Lib/X, please don't forget to also update Lib/test/test_X
A few libraries doesn't need to be updated because CPython also kept it same as previous version. In that case, please leave a comment to let us mark it as done. Thank you!
Tips
- To get specific version of CPython source code, e.g. try
git checkout v3.13.1from CPython repository. - Please check Update libraries and tests from CPython 3.10.6 #4064 for example. Not the entire changes but the each commits. One of the middle size example is 17e12de . Sometimes it can be really simple like 9571a68
- Please create one PR for one library+test pair whenever possible. Once you stuck by dependencies, go to one of the dependency first and finish it before restarting the stuck one unless they become simpler to be updated at the same time. Normally adding more libraries make passing tests (a lot) harder.
- To run tests, try
cargo run --features ssl -- -m test -v <test_name>. e.g. If you changedtest_unicode.py,cargo run --features ssl -- -m test -v test_unicode- If it runs too slow, try to add
--releaselikecargo run --release --features ssl -- -m test -v test_unicode
- If it runs too slow, try to add
List of libraries
-
__future__.py- Related test is
test_future_stmt
- Related test is
- _colorize Add _colorize at 3.13.2 #5520 Update
_colorize.pyfrom 3.13.5 #5988 -
_compression.py -
_markupbase.py -
_osx_support.py_osx_support update to 3.13.2 #5596 -
_threading_local.py -
_weakrefset.pyUpdate_weakrefset.pyfrom 3.13.5 #6004 -
abc.pyUpgrade abc.py _py_abc.py to 3.13.5 #5865_collections_abc.py_py_abc.py
-
aifc.pyremoved in 3.13 -
argparse.pyUpdate argparse to 3.13.5 #5874 -
ast.pyUpdateast.pyfrom 3.13.5 #6006 -
asynchat.pyremoved in 3.13 Remove asynchat and asyncore #5688 -
asyncio -
asyncore.pyremoved in 3.13 Remove asynchat and asyncore #5688 -
base64.pyUpdatebase64.pyfrom 3.13.6 #6087 Update base64 3.13.5 #5872 -
bdb.py -
bisect.pynot changed -
bz2.pyFix bz2 module #5605 Updatebz2.pyfrom 3.13.5 #6055 -
calendar.pyUpdate calendar and test_calendar to 3.13.2 #5696 -
cgi.pyremoved in 3.13 Remove cgi module #5597 -
cgitb.pyremoved in 3.13 Remove cgitb module #5609 -
chunk.pyremoved in 3.13 -
cmd.pyUpdate cmd from 3.13.5 #5920 -
code.pytest_code_moduleis related test
-
codecs.pyUpdatecodecsfrom 3.13.7 #6130-
_pycodecs.py
-
-
codeop.pyUpdatecodeop.pyfrom 3.13.5 #6026 -
collectionsUpdatetest_collections.pyfrom 3.13.7 #6136 -
colorsys.pyUpdate some libraries to 3.13.3 #5731 -
compileall.pyUpdate compileall from 3.13.5 #5914 -
concurrent -
configparser.pyUpdateconfigparser.pyfrom 3.13.5 #6062 -
contextlib.pyUpdatecontextlibfrom 3.13.5, #6056-
test/test_contextlib_async.py
-
-
contextvars.pynot changed -
copy.pyUpdate copy from 3.13.5 #5913 -
copyreg.pynot changed -
csv.pyUpdatecsv.pyfrom 3.13.5 #6035 Update struct to 3.13.3 and update parts of test.support #5702 -
ctypes -
dataclasses.pypendingmatchstatement support. -
datetime.pyUpdate test_datetime from 3.13.5 #5911_pydatetime.py
-
dbm -
decimal.pyUpdate{_py,}decimal.pyfrom 3.13.5 #6034 Update struct to 3.13.3 and update parts of test.support #5702-
_pydecimal.py
-
-
difflib.pyUpdatedifflib.pyfrom 3.13.5 #6067 -
dis.pyUpdateopcodefrom 3.13.7 #6156 -
distutils -
doctest.py -
email -
encodingsUpdate{io,encodings}from 3.13.7 #6153 -
ensurepipUpdate ensurepip from CPython 3.13.9 #5740 -
enum.py -
filecmp.py -
fileinput.pyMore stdlib updates #5737 -
fnmatch.pyUpdatefnmatchfrom 3.13.7 #6149 -
fractions.py -
ftplib.py -
functools.pyUpdate functools from 3.13.9 #6205 -
gc.py -
genericpath.pyFix broken CI on windows #6143 Updategenericpath.pyfrom 3.13.5 #6065 -
getopt.pyMore stdlib updates #5737 -
getpass.pyMore stdlib updates #5737 -
gettext.pyUpdategettext.pyfrom 3.13.5 #6063 -
glob.pyUpdateglobfrom 3.13.7 #6152 -
graphlib.pyUpdate some libraries to 3.13.3 #5731 -
gzip.pyUpdate gzip from 3.13.5 #5912 Fix a bunch of zlib tests & update gzip.py to Python 3.13 #5563 -
hashlib.py -
heapq.pyUpdate some libraries to 3.13.3 #5731 -
hmac.py -
htmlUpdatehtml*from 3.13.7 #6133 Updatehtmlfrom 3.13.5 #6031 -
http -
imghdr.pyremoved in 3.13 -
imp.pyremoved in 3.12 Remove imp #5693 -
importlib -
inspect.py -
io.pyUpdate{io,encodings}from 3.13.7 #6153-
_pyio.py - Handle windows test proper way #3960
- See also TextIOWrapper.detach #4072
-
-
ipaddress.pyUpdate ipaddress from 3.13.5 #5878 -
jsonUpdatejsonfrom 3.13.5 #6007 -
keyword.pynot changed -
linecache.pyUpdate some libraries to 3.13.3 #5731 -
locale.pyUpdatelocale.pyfrom 3.13.6 and made_localeavailable on android #6091 -
loggingUseast.unparsefor generating patches withlib_updater.py#6142 Update logging from 3.13.5 #6003 -
mailbox.py -
mimetypes.py -
multiprocessingUpdate multiprocess from 3.13.5 #6000- See also _multiprocessing_SemLock #3965
-
netrc.pyUpdatenetrc.pyfrom 3.13.6 and makepwdaccesible on Android #6083 -
nntplib.pyremoved in 3.13 Remove nntplib #5683 -
ntpath.pyFix broken CI on windows #6143 Update{nt,posix}path.pyfrom 3.13.5 #6070 -
nturl2path.py -
numbers.pynot changed -
opcode.pyUpdateopcodefrom 3.13.7 #6156 -
operator.pyUpdate operator from 3.13.5 #5935 -
optparse.pyUpdate some tests from 3.13.7 #6108 -
os.pyUseast.unparsefor generating patches withlib_updater.py#6142 Updateos.pyfrom 3.13.5 #6076- Blocker: Some tests requires async comprehension
- Handle windows test proper way #3960
- See also Tracking issue of os.utime regression #4053
-
pathlib.py -
pdb.py -
pickle.pyUpdatepickle{tools,}.pyfrom 3.13.5 #6064- See also replace
array.__reduce__toarray.__reduce_ex__#3876 _compat_pickle.py-
test/pickletester.pysupportstest_pickle.py -
test/test_picklebuffer.py
- See also replace
-
pickletools.pyUpdatepickle{tools,}.pyfrom 3.13.5 #6064 -
pkgutil.py -
platform.py -
plistlib.py -
posixpath.pyUpdate{nt,posix}path.pyfrom 3.13.5 #6070 -
pprint.pyUpdate some tests from 3.13.7 #6115 Update some libraries to 3.13.3 #5731 -
pty.py -
py_compile.pyFix broken CI on windows #6143 -
pydoc.py-
pydoc_data
-
-
_pyreplAdd _pyrepl #5540 -
queue.pyUpdate some libraries to 3.13.3 #5731- See also [RFC] _queue is missing #3608
-
quopri.pyUpdate quopri from 3.13.5 #5989 -
random.pyFix a bunch ofrandomtests #5533 -
re.py- Don't forget sre files
sre_compile.py,sre_constants.py,sre_parse.py
- Don't forget sre files
-
reprlib.pyMore stdlib updates #5737 -
rlcompleter.py -
runpy.pyUpdate{runpy,numbers}.pyfrom 3.13.7 #6141 -
sched.pyUpdate some libraries to 3.13.3 #5731 -
secrets.pyUpdate secrets from 3.13.5 #5991 -
selectors.pyUpdateselector.pyfrom 3.13.5 #6002 -
shelve.py -
shlex.pyUpdate shlex from 3.13.5 #5977 -
shutil.pyFix broken CI on windows #6143 -
signal.py -
site.pyUpdateLibwith changed files in3.13.8#6186 Update{site,sysconfig}.pyfrom 3.13.7 #6132- Don't forget
_sitebuiltins.py
- Don't forget
-
smtpd.pyremoved in 3.13 -
smtplib.py -
sndhdr.pyremoved in 3.13 -
socket.pyUpdate socket and test from CPython 3.12.2 #5255 -
socketserver.py -
sqlite3 -
ssl.pyUpdate ssl.py from CPython 3.13.9 #6217 -
stat.pyFix broken CI on windows #6143 Update stat from 3.13.5 #5992 Implement_statmodule #5847 -
statistics.pyUpdate statistics to 3.13.2 #5592 -
string.py -
stringprep.py -
struct.pyUpdate struct to 3.13.3 and update parts of test.support #5702 -
subprocess.py -
sunau.pyremoved in 3.13 -
sysconfig.pyUpdateLibwith changed files in3.13.8#6186 Update{site,sysconfig}.pyfrom 3.13.7 #6132 -
tabnanny.pyUpdatetabnanny.pyfrom 3.13.5 #6021 -
tarfile.pyFix broken CI on windows #6143 Update tarfile to 3.12.3 #5714 -
telnetlib.pyremoved in 3.13 Remove telnetlib #5649 -
tempfile.py -
textwrap.pyUpdate textwrap from 3.13.5 #5952 -
threading.py -
timeit.pyMore stdlib updates #5737 -
token.py -
tokenize.py -
tomllibUpdate tomllib from 3.13.5 #5902 -
trace.pyUpdatetrace.pyfrom 3.13.5 #6029 -
traceback.pyUpdatetest_exception*.pyfrom 3.13.5 #5978 -
tty.py -
types.pyUpgrade Lib/types.py from Python 3.13.5 #5928 -
typing.pytyping upgrade to 3.13.2 #5590 UpdateLibwith changed files in3.13.8#6186 Update test_typing from Python 3.13.5 #6013 -
unittestUpdateunittestpartially #6051 (partial) -
urllib -
uu.pyremoved in 3.13 Remove uu.py and test_uu.py #5607 -
uuid.pyUpdateuuidfrom 3.13.7 #6155 Update uuid from 3.13.5 #5901 -
venv -
warnings.pyUpdatewarningsfrom 3.13.5 #6019 -
weakref.pyUpdatetest_{dict,weakref}.pyfrom 3.13.5 #5963 -
webbrowser.pyUpdate webbrowser and test_webbrowser to 3.13.3 #5724 -
wsgiref -
xdrlib.pyremoved in 3.13 Remove xdrlib #5648 -
xmlUpdate xml from 3.13.7 #6100-
test_xml_etree.pyUseast.unparsefor generating patches withlib_updater.py#6142
-
-
xmlrpc -
zipapp.pyUpdatezipapp.pyfrom 3.13.5 #6075 -
zipfile.py -
zipimport.py -
zoneinfoUpdatezoneinfoand_strptimefrom 3.13.7 #6139 - test.support
List of no-update expected libraries
-
__hello__.pyunchanged -
__phello__ -
antigravity.pynot changed -
this.py
List of tests without python libraries
-
test/test___all__.py -
test/test__locale.py -
test/test__opcode.py -
test/test_abstract_numbers.py -
test/test_array.py -
test/test_asdl_parser.py -
test/test_asyncgen.py -
test/test_atexit.py -
test/test_audioop.pyremoved in 3.13 -
test/test_audit.pyAdded test_audit from 3.13.2 #5637 -
test/test_augassign.pyunchanged -
test/test_baseexception.py -
test/test_bigaddrspace.py -
test/test_bigmem.pyunchanged -
test/test_binascii.pyUpdate some tests from 3.13.7 #6108 -
test/test_binop.py -
test/test_bool.pyunchanged -
test/test_buffer.py -
test/test_bufio.py -
test/test_builtin.py -
test/test_bytes.pyUpdateLibwith changed files in3.13.8#6186 Update str related tests from 3.13.5 #5953 -
test/test_c_locale_coercion.py -
test/test_call.pyUpdate some tests to 3.13.7 #6171 -
test/test_charmapcodec.py -
test/test_check_c_globals.py -
test/test_class.pyUpdate test class to cpython 3.13.2 #5613 -
test/test_clinic.py -
test/test_cmath.pyUpdate some tests from 3.13.7 #6108 -
test/test_cmd_line.py -
test/test_cmd_line_script.py -
test/test_codeccallbacks.py -
test/test_compare.py -
test/test_compile.py -
test/test_complex.pyUpdatetest_{complex,float}.pyfrom 3.13.5 #5961 -
test/test_contains.py -
test/test_context.py -
test/test_coroutines.py -
test/test_crashers.pyUpdate test_crashers from Cpython v3.11.2 #4807 CPython specific -
test/test_decorators.pyUpdate some tests from 3.13.7 #6115 -
test/test_defaultdict.py -
test/test_deque.pyUpdate test_deque from 3.13.5 #5939 -
test/test_descr.pyUpdatetest_{descr,super}.pyfrom 3.13.9 #6314 -
test/test_descrtut.py -
test/test_devpoll.py -
test/test_dict.pyUpdatetest_{dict,weakref}.pyfrom 3.13.5 #5963 -
test/test_dict_version.pyUpdate test_dict_version.py from Cpython v3.11.2 #4809 Not implemented in RustPython -
test/test_dictcomps.py -
test/test_dictviews.py -
test/test_docxmlrpc.py -
test/test_dtrace.pyFix broken CI on windows #6143 -
test/test_dynamic.pyUpdate some tests from 3.13.7 #6115 -
test/test_dynamicclassattribute.py -
test/test_eintr.py -
test/test_embed.py -
test/test_enumerate.pyUpdatetest_enumerate.pyfrom 3.13.5 #6032 -
test/test_eof.pyUpdate some tests from 3.13.7 #6115 -
test/test_epoll.py -
test/test_errno.py -
test/test_except_star.py -
test/test_exception_group.pyUpdatetest_exception*.pyfrom 3.13.5 #5978 -
test/test_exception_hierarchy.pyUpdatetest_exception*.pyfrom 3.13.5 #5978 -
test/test_exception_variations.pyUpdatetest_exception*.pyfrom 3.13.5 #5978 -
test/test_exceptions.pyUpdateLibwith changed files in3.13.8#6186 Updated test_baseexception from 3.13.2 #5638 -
test/test_extcall.py -
test/test_faulthandler.pyUpdatetest_exception*.pyfrom 3.13.5 #5978 -
test/test_fcntl.py -
test/test_file.py -
test/test_file_eintr.pyUpdate some tests from 3.13.7 #6115 -
test/test_fileio.pyUpdate some tests from 3.13.7 #6115 -
test/test_fileutils.py -
test/test_finalization.py -
test/test_float.pyUpdateLib/test/test_float.pyfrom 3.13.7 #6099 Updatetest_{complex,float}.pyfrom 3.13.5 #5961 Update struct to 3.13.3 and update parts of test.support #5702 -
test/test_flufl.pyAdd test_flufl.py from Cpython v3.11.2 #4824 CPython specific -
test/test_fork1.py -
test/test_format.py -
test/test_frame.py -
test/test_frozen.py -
test/test_fstring.pyUpdatetest/test_fstring.pyfrom 3.13.7 #6154 -
test/test_funcattrs.py -
test/test_future.py -
test/test_future3.py -
test/test_future4.py -
test/test_future5.py -
test/test_gdb.py -
test/test_generator_stop.py -
test/test_generators.py -
test/test_genericalias.pyUpdateLibwith changed files in3.13.8#6186 -
test/test_genericclass.py -
test/test_genexps.py -
test/test_getpath.py -
test/test_global.py -
test/test_grammar.pyUpdate some tests from 3.13.7 #6115 -
test/test_grp.py -
test/test_hash.py -
test/test_hashlib.py -
test/test_index.py -
test/test_int.py -
test/test_int_literal.py() -
test/test_interpreters.py -
test/test_ioctl.py -
test/test_isinstance.pyUpdate some tests from 3.13.7 #6115 Align is_instance #5855 -
test/test_iter.py -
test/test_iterlen.py -
test/test_itertools.pyUpdatetest_itertools.pyto 3.13.7 #6122 -
test/test_keywordonlyarg.pyUpdate some tests from 3.13.7 #6115 -
test/test_kqueue.pyUpdate some tests from 3.13.7 #6115 -
test/test_largefile.py -
test/test_launcher.py -
test/test_list.pyAdd tool for easier test updates #6089 Updatetest_{list,listcomps}.pyfrom 3.13.5 #5965 -
test/test_listcomps.pyUpdatetest_{list,listcomps}.pyfrom 3.13.5 #5965 -
test/test_lltrace.py -
test/test_long.pyUpdate some tests from 3.13.7 #6108 -
test/test_longexp.py -
test/test_marshal.py- See also marshal module is imcomplete #3458
-
test/test_math.pyUpdate some tests from 3.13.7 #6108 Now passing test_math from 3.13.2 with some caveat #5610 -
test/test_memoryio.py -
test/test_memoryview.py -
test/test_metaclass.py -
test/test_minidom.py -
test/test_mmap.py- See also mmap module for windows #3847
-
test/test_module.py -
test/test_multibytecodec.py -
test/test_named_expressions.py -
test/test_nis.py -
test/test_numeric_tower.py -
test/test_opcache.pyUpdate some tests from 3.13.7 #6108 -
test/test_openpty.pyunchanged -
test/test_ordered_dict.py -
test/test_ossaudiodev.py -
test/test_osx_env.py -
test/test_patma.pyMore Pattern matching implementation mapping + class #6110 -
test/test_peepholer.py -
test/test_pep646_syntax.py -
test/test_pkg.py -
test/test_poll.py -
test/test_popen.py -
test/test_positional_only_arg.py -
test/test_posix.pyUpdateLibwith changed files in3.13.8#6186 -
test/test_pow.pyUpdate some tests from 3.13.7 #6115 -
test/test_print.pyUpdatetest_printfrom 3.13.9 #6323 -
test/test_property.pyUpdate some tests from 3.13.7 #6108- See also support property name #4067
-
test/test_pulldom.py -
test/test_pwd.py -
test/test_pyexpat.pyUpdateLibwith changed files in3.13.8#6186 -
test/test_raise.py -
test/test_range.py -
test/test_readline.py -
test/test_regrtest.py-
test/libregrtest/__init__.py -
test/libregrtest/cmdline.py -
test/libregrtest/filter.py -
test/libregrtest/findtests.py -
test/libregrtest/logger.py -
test/libregrtest/main.py - (
test/libregrtest/mypy.ini) -
test/libregrtest/parallel_case.py -
test/libregrtest/pgo.py -
test/libregrtest/refleak.py -
test/libregrtest/result.py -
test/libregrtest/results.py -
test/libregrtest/run_workers.py -
test/libregrtest/runtests.py -
test/libregrtest/save_env.py -
test/libregrtest/setup.py -
test/libregrtest/single.py -
test/libregrtest/testresult.py -
test/libregrtest/tsan.py -
test/libregrtest/utils.py -
test/libregrtest/win_utils.py -
test/libregrtest/worker.py
-
-
test/test_repl.py -
test/test_resource.pyUpdate resource from 3.13.5 #5893 -
test/test_richcmp.pyUpdate some tests from 3.13.7 #6115 -
test/test_robotparser.py -
test/test_sax.py -
test/test_scope.py -
test/test_script_helper.py -
test/test_select.py -
test/test_set.py -
test/test_setcomps.py -
test/test_slice.py -
test/test_smtpnet.py -
test/test_sort.py -
test/test_source_encoding.py -
test/test_spwd.py -
test/test_stable_abi_ctypes.py -
test/test_startfile.py -
test/test_strftime.py -
test/test_string.py -
test/test_string_literals.pyUpdatetest_string_literals.pyfrom 3.13.5 #5934 -
test/test_strptime.py -
test/test_strtod.py -
test/test_structseq.py - See also __match_args__ for structseq #4063
-
test/test_subclassinit.py -
test/test_sundry.py -
test/test_super.pyUpdatetest_{descr,super}.pyfrom 3.13.9 #6314 -
test/test_support.py -
test/test_syntax.py -
test.test_sys -
test/test_sys_setprofile.py -
test/test_sys_settrace.py -
test/test_syslog.py -
test/test_tcl.py -
test/test_thread.py -
test/test_threadedtempfile.py -
test/test_threadsignals.py -
test/test_time.py -
test/test_timeout.py -
test/test_tix.py -
test/test_tuple.pyUpdatetest_tuple.pyfrom 3.13.5 #5966 -
test/test_type_annotations.py -
test/test_type_cache.py -
test/test_type_comments.py -
test/test_typechecks.py -
test/test_types.py -
test/test_ucn.pyUpdate some tests from 3.13.7 #6108 -
test/test_unary.py -
test/test_unicode.pyUpdate str related tests from 3.13.5 #5953 Update struct to 3.13.3 and update parts of test.support #5702 -
test/test_unicode_file.py -
test/test_unicode_file_functions.py -
test/test_unicode_identifiers.py -
test/test_unicodedata.py5953 -
test/test_univnewlines.pyUpdate some tests from 3.13.7 #6115 -
test/test_unpack.py -
test/test_unpack_ex.py -
test/test_unparse.py -
test/test_userdict.pyUpdate some tests from 3.13.7 #6115 -
test/test_userlist.py -
test/test_userstring.pyUpdate str related tests from 3.13.5 #5953 -
test/test_utf8_mode.py -
test/test_utf8source.py -
test/test_wait3.py -
test/test_wait4.py -
test/test_weakset.py -
test/test_winapi.pyUpdate struct to 3.13.3 and update parts of test.support #5702 -
test/test_winconsoleio.py -
test/test_winreg.pyRewrite of winreg module and bump to 3.13.2 #5594 -
test/test_winsound.py -
test/test_with.pyUpdate some tests from 3.13.7 #6115 -
test/test_yield_from.pyUpdate some tests to 3.13.7 #6171 -
test/test_zlib.pyUpdate struct to 3.13.3 and update parts of test.support #5702 -
test/test_asyncio -
test/test_capi -
test/test_import -
test/test_tools
Not yet added libraries
These libraris are not added yet. Pure python one will be possible while others are not.
-
_bootsubprocess.py -
cProfile.py -
curses -
idlelib -
imaplib.py -
imp.pyRemove imp #5693- See also correct impl _imp.source_hash #4075
-
lzma.pylzma implementation #5717 -
modulefinder.py -
poplib.py -
pstats.py -
pyclbr.pyAddedpyclbrfrom 3.13.5 #6028 -
symtable.pyAddsymtable.pyfrom 3.13.5 #6048 -
tkinter_tkinter pt. 1 #5583 -
tracemalloc.py -
turtle.py -
wave.pyAdd wave at 3.13.2 #5723
theoparis
Metadata
Metadata
Assignees
Labels
A-stdlibC-compatA discrepancy between RustPython and CPythonA discrepancy between RustPython and CPythonC-enhancementNew feature or requestNew feature or requestcpythonCPython source code relatedCPython source code relatedgood first issueGood for newcomersGood for newcomers