Closed
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, try
git checkout v3.11.2
from 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
--release
likecargo run --release --features ssl -- -m test -v test_unicode
- If it runs too slow, try to add
List of libraries
-
__future__.py
- maybe related to allow
from __future__ import generator_stop
#4060?
- maybe related to allow
-
__hello__.py
Update __hello__ from cpython #4570 -
__phello__
Update __hello__ from cpython #4570 -
_collections_abc.py
updated _collections_abc.py and test_collections.py to CPython 3.11.2 #5016 -
_compat_pickle.py
-
_compression.py
Update _compression, gzip, and test_gzip for CPython v3.11.2 #4688 -
_markupbase.py
Update _markupbase, html/parser for CPython v3.11.2 #4703 -
unchanged_osx_support.py
-
_py_abc.py
-
_pycodecs.py
-
_pydecimal.py
-
_pyio.py
-
_sitebuiltins.py
-
_threading_local.py
-
_weakrefset.py
-
abc.py
Update abc.py from Python 3.11 #4985 -
aifc.py
-
antigravity.py
— feat(antigravity): update to 3.11 #4591 -
argparse.py
— feat(argparse): update to 3.11 #4592 -
ast.py
-
asynchat.py
-
asyncio
-
asyncore.py
-
base64.py
Commit 185111d -
bdb.py
-
Deprecated.binhex.py
-
bisect.py
Update bisect.py and test_bisect.py from CPython v3.11.2 #4774 -
bz2.py
Unchanged -
calendar.py
Update calendar.py from CPython 3.11 #4669 -
cgi.py
-
cgitb.py
-
chunk.py
-
cmd.py
-
code.py
-
codecs.py
-
codeop.py
-
collections
-
colorsys.py
-
compileall.py
Update compileall to CPython 3.11.5 #5070 -
concurrent
-
configparser.py
feat(configparser): update to 3.11 #4595 -
contextlib.py
Update test/test_contextlib.py from CPython 3.11.2 #4649 Update contextlib.py and test_contextlib from CPython 3.11.2 #4659 -
contextvars.py
-
copy.py
Update copy.py from CPython 3.11 #4674 -
copyreg.py
-
csv.py
-
ctypes
-
dataclasses.py
pendingmatch
statement support. -
datetime.py
-
dbm
-
decimal.py
-
difflib.py
update test_difflib from CPython3.11.2 #5063 -
dis.py
-
distutils
-
doctest.py
-
email
-
encodings
-
ensurepip
Update ensurepip from cpython 3.11.2 #4590 -
enum.py
Update enum to CPython 3.11.5 #5074 -
filecmp.py
-
fileinput.py
Update fileinput to CPython 3.11.5 #5071 -
fnmatch.py
-
Deprecatedformatter.py
-
fractions.py
Update fractions to CPython 3.11.5 #5072 -
ftplib.py
Update ftplib to CPython 3.11.5 #5073 -
functools.py
-
gc.py
-
genericpath.py
-
getopt.py
-
getpass.py
-
gettext.py
-
glob.py
Update glob.py and test/test_glob.py from CPython v3.11.2 #4744 -
graphlib.py
-
gzip.py
Update _compression, gzip, and test_gzip for CPython v3.11.2 #4688 -
hashlib.py
-
heapq.py
-
hmac.py
unchanged -
html
- html/parser Update _markupbase, html/parser for CPython v3.11.2 #4703
- test_html is unchanged
-
http
-
imghdr.py
-
imp.py
-
importlib
Update importlib from CPython 3.11.2 #4561 -
inspect.py
-
io.py
-
ipaddress.py
-
json
-
keyword.py
unchanged -
linecache.py
-
locale.py
Update test.support from CPython 3.11.2 #4537 -
logging
-
mailbox.py
-
mimetypes.py
-
multiprocessing
- See also _multiprocessing_SemLock #3965
-
netrc.py
-
nntplib.py
-
ntpath.py
-
nturl2path.py
-
numbers.py
-
opcode.py
-
unchangedoperator.py
-
optparse.py
unchanged -
os.py
-
pathlib.py
-
pdb.py
-
pickle.py
-
pickletools.py
-
pkgutil.py
-
platform.py
-
plistlib.py
-
posixpath.py
-
pprint.py
-
pty.py
-
py_compile.py
-
pydoc.py
-
pydoc_data
-
-
queue.py
- See also [RFC] _queue is missing #3608
-
quopri.py
-
random.py
Fix int.from_bytes and Update random.py and test/test_random.py from CPython v3.11.2 #4748 -
re.py
-
reprlib.py
-
rlcompleter.py
-
runpy.py
-
sched.py
-
secrets.py
-
selectors.py
-
shelve.py
-
shlex.py
-
shutil.py
-
signal.py
-
site.py
-
smtpd.py
-
smtplib.py
-
sndhdr.py
-
socket.py
-
socketserver.py
-
sqlite3
-
sre_compile.py
-
sre_constants.py
-
sre_parse.py
-
ssl.py
-
stat.py
-
statistics.py
-
string.py
-
stringprep.py
-
struct.py
-
subprocess.py
Update subprocess to CPython 3.11 #4981 -
sunau.py
-
sysconfig.py
Update sysconfig, test_sys and test_syslog from CPython 3.11 #4569 -
tabnanny.py
-
tarfile.py
-
telnetlib.py
-
tempfile.py
-
textwrap.py
-
this.py
-
threading.py
-
timeit.py
-
token.py
-
tokenize.py
-
tomllib
-
trace.py
Update trace from CPython 3.11.2 #4586 -
traceback.py
-
tty.py
-
types.py
-
typing.py
-
unittest
Update unittest from CPython 3.11 #4560 -
urllib
-
uu.py
-
uuid.py
-
venv
-
warnings.py
-
weakref.py
-
webbrowser.py
-
wsgiref
-
xdrlib.py
-
xml
-
xmlrpc
-
zipapp.py
-
zipfile.py
-
zipimport.py
- test.support Update test.support from CPython 3.11.2 #4537
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
Update test_array.py from Cpython v3.11.2 #4745 -
test/test_asdl_parser.py
-
test/test_asyncgen.py
-
test/test_atexit.py
Update test_atexit from cpython 3.11.2 #4621 -
test/test_audioop.py
-
test/test_audit.py
-
unchangedtest/test_augassign.py
-
test/test_baseexception.py
— Update test_baseexception.py from cpython 3.11.2 #4624 -
test/test_bigaddrspace.py
-
test/test_bigmem.py
Update test_bigmem from cpython 3.11.2 #4625 -
test/test_binascii.py
-
unchangedtest/test_binop.py
-
test/test_bool.py
Update test/test_bool from cpython 3.11.2 #4631 -
test/test_buffer.py
Update test/test_buffer from CPython 3.11.2 #4632 -
unchangedtest/test_bufio.py
-
test/test_builtin.py
update test_builtin.py from cpython v3.11.2 #4765 -
test/test_bytes.py
Update test_bytes.py from CPython v3.11.2 #4746 -
test/test_bz2.py
-
test/test_c_locale_coercion.py
-
test/test_call.py
-
unchangedtest/test_charmapcodec.py
-
test/test_check_c_globals.py
-
test/test_class.py
-
test/test_clinic.py
-
unchangedtest/test_cmath.py
-
test/test_cmd_line.py
Update test_cmd_line from Cpython v3.11.2 #4801 -
test/test_cmd_line_script.py
Update test_cmd_line_script from Cpython v3.11.2 #4802 -
unchangedtest/test_code_module.py
-
unchangedtest/test_codeccallbacks.py
-
test/test_compare.py
Update test_compare from Cpython v3.11.2 #4803 -
test/test_compile.py
Update test_compile from Cpython v3.11.2 #4804 -
test/test_complex.py
update test_complex.py from cpython 3.11.2 #4755 -
unchangedtest/test_contains.py
-
test/test_context.py
Update test_context from Cpython v3.11.2 #4805 -
test/test_contextlib_async.py
-
test/test_coroutines.py
-
CPython specifictest/test_crashers.py
Update test_crashers from Cpython v3.11.2 #4807 -
test/test_csv.py
-
test/test_decorators.py
Update test_decorators from Cpython v3.11.2 #4806 -
unchangedtest/test_defaultdict.py
-
test/test_deque.py
updated test_deque.py from CPython v3.11.2 #4761 -
unchangedtest/test_descr.py
-
test/test_descrtut.py
-
test/test_devpoll.py
Update test_devpoll from Cpython v3.11.2 #4808 -
test/test_dict.py
Update test_dict.py from CPython v3.11.2 #4763 -
Not implemented in RustPythontest/test_dict_version.py
Update test_dict_version.py from Cpython v3.11.2 #4809 -
unchangedtest/test_dictcomps.py
-
test/test_dictviews.py
Update test_dictviews.py from Cpython v3.11.2 #4810 -
test/test_docxmlrpc.py
Update test_docxmlrpc.py from Cpython v3.11.2 #4811 -
test/test_dtrace.py
Update test_dtrace.py from Cpython v3.11.2 #4812 -
test/test_dynamic.py
Update test_dynamic.py from Cpython v3.11.2 #4813 -
unchangedtest/test_dynamicclassattribute.py
-
test/test_eintr.py
Update test_eintr.py from Cpython v3.11.2 #4814 -
CPython specific.test/test_embed.py
Update test_embed.py from Cpython v3.11.2 #4815 -
test/test_enumerate.py
-
test/test_eof.py
Add test_eof.py from Cpython v3.11.2 #4753 -
test/test_epoll.py
Update test_epoll.py from Cpython v3.11.2 #4816 -
unchangedtest/test_errno.py
-
test/test_except_star.py
-
test/test_exception_group.py
Add test_exception_group.py from Cpython v3.11.2 #4817 -
test/test_exception_hierarchy.py
Update test_exception_hierarchy.py from Cpython v3.11.2 #4818 -
test/test_exception_variations.py
-
test/test_exceptions.py
Update test_exceptions.py from Cpython v3.11.2 #4819 -
test/test_extcall.py
-
test/test_faulthandler.py
Update test_faulthandler.py from Cpython v3.11.2 #4820 -
unchangedtest/test_fcntl.py
-
unchangedtest/test_file.py
-
test/test_file_eintr.py
-
test/test_fileio.py
Update test_fileio.py from Cpython v3.11.2 #4821 -
CPython specifictest/test_fileutils.py
Add test_fileutils.py from Cpython v3.11.2 #4822 -
test/test_finalization.py
-
test/test_float.py
Update test_float.py from Cpython v3.11.2 #4823 -
CPython specifictest/test_flufl.py
Add test_flufl.py from Cpython v3.11.2 #4824 -
test/test_fork1.py
-
test/test_format.py
Update test_format.py from Cpython v3.11.2 #4825 -
test/test_frame.py
-
test/test_frozen.py
-
test/test_fstring.py
-
test/test_funcattrs.py
Add test_funcattrs.py from Cpython v3.11.2 #4829 -
test/test_future.py
Update test_future.py from Cpython v3.11.2 #4830 -
unchangedtest/test_future3.py
-
unchangedtest/test_future4.py
-
unchangedtest/test_future5.py
-
test/test_gdb.py
-
test/test_generator_stop.py
-
test/test_generators.py
-
test/test_genericalias.py
Update test_genericclass.py from Cpython v3.11.2 #4831 -
test/test_genericclass.py
-
test/test_genexps.py
-
test/test_getpath.py
-
test/test_global.py
Update test_global.py from Cpython v3.11.2 #4832 -
test/test_grammar.py
-
test/test_grp.py
Update test_grp.py from Cpython v3.11.2 #4833 -
test/test_hash.py
Update test_hash.py from Cpython v3.11.2 #4834 -
test/test_hashlib.py
Update test_hashlib.py from Cpython v3.11.2 & refactor hashlib #4835 -
unchangedtest/test_index.py
-
test/test_int.py
-
unchangedtest/test_int_literal.py
-
test/test_interpreters.py
-
unchangedtest/test_ioctl.py
-
unchangedtest/test_isinstance.py
-
test/test_iter.py
-
unchangedtest/test_iterlen.py
-
test/test_itertools.py
Update test_itertools.py from Cpython v3.11.2 #4836 -
unchangedtest/test_keywordonlyarg.py
-
test/test_kqueue.py
Add test_kqueue.py from Cpython v3.11.2 #4837 -
test/test_largefile.py
Add test_largefile.py from Cpython v3.11.2 #4838 -
CPython specifictest/test_launcher.py
-
test/test_list.py
-
test/test_listcomps.py
update test_listcomps.py from cpython 3.11.2 #4757 -
test/test_lltrace.py
-
test/test_long.py
Update test_long.py from Cpython v3.11.2 #4840 -
unchangedtest/test_longexp.py
-
test/test_marshal.py
- See also marshal module is imcomplete #3458
-
test/test_math.py
update test_math.py from cpython 3.11.2 #4754 -
unchangedtest/test_memoryio.py
-
unchangedtest/test_memoryview.py
-
test/test_metaclass.py
-
test/test_minidom.py
-
test/test_mmap.py
-
test/test_module.py
Update test_module.py from Cpython v3.11.2 #4842 -
test/test_multibytecodec.py
-
unchangedtest/test_named_expressions.py
-
test/test_nis.py
-
test/test_numeric_tower.py
Update test_numeric_tower.py from Cpython v3.11.2 #4843 -
test/test_opcache.py
Update test_opcache.py from Cpython v3.11.2 #4844 -
unchangedtest/test_openpty.py
-
test/test_ordered_dict.py
Update test_ordered_dict.py from Cpython v3.11.2 #4846 -
test/test_ossaudiodev.py
-
test/test_osx_env.py
-
test/test_patma.py
-
test/test_peepholer.py
-
test/test_pep646_syntax.py
-
test/test_picklebuffer.py
-
test/test_pkg.py
-
test/test_poll.py
Add test_poll.py from Cpython v3.11.2 #4888 -
test/test_popen.py
Update test_popen.py from Cpython v3.11.2 #4889 -
test/test_positional_only_arg.py
-
test/test_posix.py
Update test_posix.py from Cpython v3.11.2 #4890 -
test/test_pow.py
Update test_pow.py from Cpython v3.11.2 #4891 -
test/test_print.py
added test_print.py and marked TODOs #4778 -
test/test_property.py
Update test_property.py from Cpython v3.11.2 #4892- See also support property name #4067
-
test/test_pulldom.py
Add test_pulldom.py from Cpython v3.11.2 #4893 -
test/test_pwd.py
-
test/test_pyexpat.py
-
test/test_raise.py
-
test/test_range.py
-
test/test_readline.py
-
test/test_regrtest.py
-
test/test_repl.py
-
test/test_resource.py
-
test/test_richcmp.py
-
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
updated test_sort from cpython 3.11.2 #4749 -
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
Update test_string.py from Cpython v3.11.2 #4751 -
test/test_string_literals.py
-
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.py
-
test/test_support.py
-
test/test_syntax.py
Update test_syntax from CPython 3.11.0 #4602 -
test.test_sys
Update sysconfig, test_sys and test_syslog from CPython 3.11 #4569 -
test/test_sys_setprofile.py
-
test/test_sys_settrace.py
-
test/test_syslog.py
Update sysconfig, test_sys and test_syslog from CPython 3.11 #4569 -
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.py
-
test/test_type_annotations.py
-
test/test_type_cache.py
-
test/test_type_comments.py
-
test/test_typechecks.py
-
test/test_types.py
Update test/test_types from CPython 3.11.2 #4683 -
test/test_ucn.py
-
test/test_unary.py
-
test/test_unicode.py
-
test/test_unicode_file.py
-
test/test_unicode_file_functions.py
Update test_unicode_file_functions.py from CPython 3.11.2 #4741 -
test/test_unicode_identifiers.py
-
test/test_unicodedata.py
Update test_unicodedata from CPython 3.11.2 #4678 -
unchangedtest/test_univnewlines.py
-
test/test_unpack.py
Update test/test_unpack.py from CPython 3.11.2 #4676 -
test/test_unpack_ex.py
-
test/test_unparse.py
-
test/test_userdict.py
Update test/test_userlist.py and test_userdict.py from CPython 3.11.2 #4666 -
test/test_userlist.py
Update test/test_userlist.py and test_userdict.py from CPython 3.11.2 #4666 -
test/test_userstring.py
Update test/test_userstring.py from CPython 3.11.2 #4658 -
unchangedtest/test_utf8_mode.py
-
unchangedtest/test_utf8source.py
-
test/test_wait3.py
-
test/test_wait4.py
-
test/test_weakset.py
Update test/test_weakset.py from CPython 3.11.2 #4657 -
test/test_winconsoleio.py
-
test/test_winreg.py
-
test/test_winsound.py
-
test/test_with.py
Update test/test_with.py from CPython 3.11.2 #4648 -
unchangedtest/test_yield_from.py
-
test/test_zlib.py
Update test/test_zlib.py from CPython 3.11.2 #4647 -
test/test_asyncio
-
test/test_capi
-
test/test_import
Add test_import from CPython 3.11.2 #4599 -
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
-
_pycodecs.py
-
cProfile.py
-
crypt.py
-
curses
-
idlelib
-
imaplib.py
-
imp.py
- See also correct impl _imp.source_hash #4075
-
lzma.py
-
mailcap.py
-
modulefinder.py
-
msilib
-
pipes.py
-
poplib.py
-
pstats.py
-
pyclbr.py
-
symtable.py
-
tkinter
-
tracemalloc.py
-
turtle.py
-
wave.py
-
zoneinfo