mirror of https://github.com/pyodide/pyodide.git
Upgrade to Python 3.12.7 (#5149)
This commit is contained in:
parent
1b20dd7374
commit
e37e54c1d7
|
@ -6,7 +6,7 @@ defaults: &defaults
|
|||
# Note: when updating the docker image version,
|
||||
# make sure there are no extra old versions lying around.
|
||||
# (e.g. `rg -F --hidden <old_tag>`)
|
||||
- image: pyodide/pyodide-env:20241028-chrome130-firefox131
|
||||
- image: pyodide/pyodide-env:20241106-chrome130-firefox132
|
||||
environment:
|
||||
- EMSDK_NUM_CORES: 3
|
||||
EMCC_CORES: 3
|
||||
|
@ -339,7 +339,8 @@ jobs:
|
|||
command: |
|
||||
make npm-link
|
||||
pip install -r requirements.txt
|
||||
pytest -s benchmark/stack_usage.py --rt node,chrome,firefox | sed -n 's/## //pg'
|
||||
# TODO(cclauss): Re-add 'firefox' below.
|
||||
pytest -s benchmark/stack_usage.py --rt node,chrome | sed -n 's/## //pg'
|
||||
|
||||
test-js:
|
||||
<<: *defaults
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "Docker",
|
||||
// keep in sync with "run_docker"
|
||||
"image": "pyodide/pyodide-env:20241028-chrome130-firefox131",
|
||||
"image": "pyodide/pyodide-env:20241106-chrome130-firefox132",
|
||||
"remoteUser": "root",
|
||||
"onCreateCommand": ".devcontainer/onCreate-docker.sh"
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
FROM node:20.11-bookworm-slim AS node-image
|
||||
FROM python:3.12.1-slim-bookworm
|
||||
FROM python:3.12.7-slim-bookworm
|
||||
|
||||
# Requirements for building packages
|
||||
RUN apt-get update \
|
||||
|
@ -104,7 +104,7 @@ RUN if [ $CHROME_VERSION = "latest" ]; \
|
|||
then CHROME_VERSION_FULL=$(wget --no-verbose -O - "https://googlechromelabs.github.io/chrome-for-testing/LATEST_RELEASE_STABLE"); \
|
||||
else CHROME_VERSION_FULL=$(wget --no-verbose -O - "https://googlechromelabs.github.io/chrome-for-testing/LATEST_RELEASE_${CHROME_VERSION}"); \
|
||||
fi \
|
||||
&& CHROME_DOWNLOAD_URL="https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${CHROME_VERSION_FULL}-1_amd64.deb" \
|
||||
&& CHROME_DOWNLOAD_URL="https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb." \
|
||||
&& CHROMEDRIVER_DOWNLOAD_URL="https://storage.googleapis.com/chrome-for-testing-public/${CHROME_VERSION_FULL}/linux64/chromedriver-linux64.zip" \
|
||||
&& wget --no-verbose -O /tmp/google-chrome.deb ${CHROME_DOWNLOAD_URL} \
|
||||
&& apt-get update \
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
export PYVERSION ?= 3.12.1
|
||||
export PYVERSION ?= 3.12.7
|
||||
export PYODIDE_EMSCRIPTEN_VERSION ?= 3.1.58
|
||||
export PYODIDE_VERSION ?= 0.27.0.dev0
|
||||
export PYODIDE_ABI_VERSION ?= 2024_0
|
||||
|
||||
export PYTHON_ARCHIVE_SHA256=d01ec6a33bc10009b09c17da95cc2759af5a580a7316b3a446eb4190e13f97b2
|
||||
export PYTHON_ARCHIVE_SHA256=73ac8fe780227bf371add8373c3079f42a0dc62deff8d612cd15a618082ab623
|
||||
|
||||
ifdef CPYTHON_DEBUG
|
||||
export CPYTHON_ABI_FLAGS=d
|
||||
|
|
|
@ -16,6 +16,9 @@ myst:
|
|||
|
||||
## Unreleased
|
||||
|
||||
- {{ Enhancement }} Upgrade to Python 3.12.7.
|
||||
{pr}`5149`
|
||||
|
||||
- {{ Enhancement }} Add unix-timezones module, which installs Unix compatible
|
||||
timezone data in /usr/share/zoneinfo, for use with C/C++ libraries which do
|
||||
timezone handling.
|
||||
|
|
|
@ -22,4 +22,4 @@ pyodide-build>=0.27.3
|
|||
micropip==0.2.2
|
||||
jinja2>=3.0
|
||||
ruamel.yaml
|
||||
sphinx-js @ git+https://github.com/pyodide/sphinx-js-fork@14958086d51939ae4078751abec004e1f3fea1fe
|
||||
sphinx-js @ git+https://github.com/pyodide/sphinx-js-fork@1428f1547b510a1574c227ced4356ba546a21f74
|
||||
|
|
|
@ -31,6 +31,7 @@ build:
|
|||
-sUSE_LIBPNG=1
|
||||
-sUSE_GIFLIB=1
|
||||
-sUSE_HARFBUZZ=1
|
||||
-Wno-unreachable-code-fallthrough
|
||||
ldflags: |
|
||||
-sRELOCATABLE=1
|
||||
-sUSE_SDL=2
|
||||
|
|
|
@ -51,6 +51,7 @@ build:
|
|||
_testcapi/code.c \
|
||||
_testcapi/buffer.c \
|
||||
_testcapi/pyos.c \
|
||||
_testcapi/run.c \
|
||||
_testcapi/file.c \
|
||||
_testcapi/codec.c \
|
||||
_testcapi/immortal.c \
|
||||
|
|
|
@ -1698,7 +1698,7 @@ JsArray_ass_subscript(PyObject* self, PyObject* item, PyObject* pyvalue)
|
|||
slicelength = PySlice_AdjustIndices(length, &start, &stop, step);
|
||||
|
||||
if (pyvalue != NULL) {
|
||||
seq = PySequence_Fast(pyvalue, "can only assign an iterable");
|
||||
seq = PySequence_Fast(pyvalue, "must assign iterable to extended slice");
|
||||
FAIL_IF_NULL(seq);
|
||||
}
|
||||
if (pyvalue != NULL && step != 1 &&
|
||||
|
|
|
@ -57,10 +57,9 @@
|
|||
xfail: slow, sometimes times out
|
||||
- test_array
|
||||
- test_asdl_parser
|
||||
- test_ast:
|
||||
xfail-safari: Stack overflow
|
||||
- test_ast.test_ast:
|
||||
skip:
|
||||
- test_stdlib_validates # incompatible with zipimport
|
||||
- "*_recursion_*"
|
||||
- test_asyncgen:
|
||||
xfail: async
|
||||
- test_asyncio.test_base_events:
|
||||
|
@ -97,6 +96,7 @@
|
|||
xfail: async
|
||||
- test_asyncio.test_ssl
|
||||
- test_asyncio.test_sslproto
|
||||
- test_asyncio.test_staggered
|
||||
- test_asyncio.test_streams:
|
||||
xfail: async
|
||||
- test_asyncio.test_subprocess:
|
||||
|
@ -179,9 +179,12 @@
|
|||
- test_capi.test_misc:
|
||||
skip:
|
||||
- "*subinterpreter*" # Should we disable _xxsubinterpreters in Setup.local?
|
||||
- test_capi.test_number
|
||||
- test_capi.test_run
|
||||
- test_capi.test_set
|
||||
- test_capi.test_structmembers
|
||||
- test_capi.test_sys
|
||||
- test_capi.test_tuple
|
||||
- test_capi.test_unicode
|
||||
- test_capi.test_watchers
|
||||
- test_cgi:
|
||||
|
@ -189,7 +192,9 @@
|
|||
- test_log # OSError: [Errno 70] Invalid seek
|
||||
- test_cgitb
|
||||
- test_charmapcodec
|
||||
- test_class
|
||||
- test_class:
|
||||
skip:
|
||||
- testSFBug532646 # Maximum call stack size exceeded
|
||||
- test_clinic
|
||||
- test_cmath
|
||||
- test_cmd
|
||||
|
@ -216,7 +221,10 @@
|
|||
- test_collections
|
||||
- test_colorsys
|
||||
- test_compare
|
||||
- test_compile
|
||||
- test_compile:
|
||||
skip:
|
||||
- test_compiler_recursion_limit
|
||||
- test_extended_arg
|
||||
- test_compileall:
|
||||
xfail: multiprocessing
|
||||
- test_compiler_assemble
|
||||
|
@ -238,7 +246,11 @@
|
|||
- test_contextlib
|
||||
- test_contextlib_async:
|
||||
xfail: async
|
||||
- test_copy
|
||||
- test_copy:
|
||||
skip:
|
||||
- test_deepcopy_reflexive_dict
|
||||
- test_deepcopy_reflexive_list
|
||||
- test_deepcopy_reflexive_tuple
|
||||
- test_copyreg:
|
||||
xfail: dbm
|
||||
- test_coroutines:
|
||||
|
@ -250,7 +262,9 @@
|
|||
- test_ctypes.test_anon
|
||||
- test_ctypes.test_array_in_pointer
|
||||
- test_ctypes.test_arrays
|
||||
- test_ctypes.test_as_parameter
|
||||
- test_ctypes.test_as_parameter:
|
||||
skip:
|
||||
- test_recursive_as_param
|
||||
- test_ctypes.test_bitfields
|
||||
- test_ctypes.test_buffers
|
||||
- test_ctypes.test_bytes
|
||||
|
@ -293,7 +307,9 @@
|
|||
- test_ctypes.test_struct_fields
|
||||
- test_ctypes.test_structures:
|
||||
skip:
|
||||
- test_array_in_struct
|
||||
- test_array_in_struct_registers # needs https://github.com/libffi/libffi/pull/818
|
||||
- test_issue18060*
|
||||
- test_ctypes.test_unaligned_structures
|
||||
- test_ctypes.test_unicode
|
||||
- test_ctypes.test_values
|
||||
|
@ -320,16 +336,19 @@
|
|||
xfail: stack overflow
|
||||
- test_descrtut
|
||||
- test_devpoll
|
||||
- test_dict
|
||||
- test_dict:
|
||||
skip:
|
||||
- test_repr_deep
|
||||
- test_dict_version
|
||||
- test_dictcomps
|
||||
- test_dictviews
|
||||
- test_dictviews:
|
||||
skip:
|
||||
- test_deeply_nested_repr
|
||||
- test_difflib
|
||||
- test_dis:
|
||||
xfail-safari: safaridriver unexpectedly exited
|
||||
- test_doctest:
|
||||
xfail: subprocess
|
||||
- test_doctest2
|
||||
- test_doctest.test_doctest
|
||||
- test_doctest.test_doctest2
|
||||
- test_docxmlrpc:
|
||||
xfail: socket
|
||||
- test_dtrace:
|
||||
|
@ -367,7 +386,10 @@
|
|||
- test_epoll
|
||||
- test_errno
|
||||
- test_except_star
|
||||
- test_exception_group
|
||||
- test_exception_group:
|
||||
skip:
|
||||
- test_deep_split
|
||||
- test_deep_subgroup
|
||||
- test_exception_hierarchy
|
||||
- test_exception_variations
|
||||
- test_exceptions:
|
||||
|
@ -403,13 +425,15 @@
|
|||
skip:
|
||||
# frozen modules are disabled in runtime
|
||||
- test_unfrozen_submodule_in_frozen_package
|
||||
- test_fstring
|
||||
- test_fstring:
|
||||
xfail-chrome: times out on Python 3.12.7
|
||||
- test_ftplib:
|
||||
xfail: socket
|
||||
- test_funcattrs
|
||||
- test_functools:
|
||||
skip:
|
||||
- "*threaded*"
|
||||
- test_recursive_pickle
|
||||
- test_future_stmt.test_future
|
||||
- test_future_stmt.test_future_flags
|
||||
- test_future_stmt.test_future_multiple_features
|
||||
|
@ -540,7 +564,10 @@
|
|||
# The remaining test_io tests seem to hang too
|
||||
- test_ioctl
|
||||
- test_ipaddress
|
||||
- test_isinstance
|
||||
- test_isinstance:
|
||||
skip:
|
||||
- "*recursion*"
|
||||
- "*infinite*"
|
||||
- test_iter
|
||||
- test_iterlen
|
||||
- test_itertools
|
||||
|
@ -555,7 +582,8 @@
|
|||
- test_json.test_pass1
|
||||
- test_json.test_pass2
|
||||
- test_json.test_pass3
|
||||
- test_json.test_recursion
|
||||
- test_json.test_recursion:
|
||||
xfail: Stack overflow
|
||||
- test_json.test_scanstring
|
||||
- test_json.test_separators
|
||||
- test_json.test_speedups
|
||||
|
@ -588,7 +616,9 @@
|
|||
- test_clearcache
|
||||
- test_getline
|
||||
- test_memoryerror
|
||||
- test_list
|
||||
- test_list:
|
||||
skip:
|
||||
- test_repr_deep
|
||||
- test_listcomps
|
||||
- test_lltrace
|
||||
- test_locale:
|
||||
|
@ -727,8 +757,8 @@
|
|||
skip:
|
||||
- test_stdin # fork
|
||||
- test_pyclbr
|
||||
- test_pydoc:
|
||||
xfail: pydoc_data unvendored
|
||||
- test_pydoc.test_pydoc:
|
||||
xfail: Missing doc data
|
||||
- test_pyexpat
|
||||
- test_queue:
|
||||
# More than half of these make a thread
|
||||
|
@ -873,6 +903,8 @@
|
|||
- test_sly_relative*
|
||||
- test_extractall*
|
||||
- test_parent_symlink*
|
||||
- test_overwrite_broken_file_symlink_as_file
|
||||
- test_overwrite_file_as_implicit_dir
|
||||
- test_tcl
|
||||
- test_telnetlib:
|
||||
xfail: 7/19 fail with sockets
|
||||
|
@ -923,6 +955,7 @@
|
|||
- test_tomllib.test_misc
|
||||
- test_tools.test_freeze
|
||||
- test_tools.test_i18n
|
||||
- test_tools.test_makefile
|
||||
- test_tools.test_reindent
|
||||
- test_tools.test_sundry
|
||||
- test_trace:
|
||||
|
@ -974,6 +1007,7 @@
|
|||
- test_unittest.test_setups
|
||||
- test_unittest.test_skipping
|
||||
- test_unittest.test_suite
|
||||
- test_unittest.test_util
|
||||
- test_univnewlines
|
||||
- test_unpack
|
||||
- test_unpack_ex
|
||||
|
@ -989,8 +1023,10 @@
|
|||
- test_urllib_response
|
||||
- test_urllibnet
|
||||
- test_urlparse
|
||||
- test_userdict
|
||||
- test_userlist
|
||||
- test_userdict:
|
||||
xfail: Stack overflow
|
||||
- test_userlist:
|
||||
xfail: Stack overflow
|
||||
- test_userstring
|
||||
- test_utf8_mode
|
||||
- test_utf8source
|
||||
|
@ -1010,6 +1046,7 @@
|
|||
- test_weakset
|
||||
- test_webbrowser:
|
||||
xfail: replaced
|
||||
- test_winapi
|
||||
- test_winconsoleio
|
||||
- test_winreg
|
||||
- test_winsound
|
||||
|
|
|
@ -280,7 +280,10 @@ def test_relaxed_call():
|
|||
return [a, args, b]
|
||||
|
||||
with pytest.raises(
|
||||
TypeError, match="'a' parameter is positional only, but was passed as a keyword"
|
||||
TypeError,
|
||||
match=re.escape(
|
||||
"test_relaxed_call.<locals>.f4() missing 1 required positional argument: 'a'"
|
||||
),
|
||||
):
|
||||
relaxed_call(f4, a=2, b=7)
|
||||
|
||||
|
@ -342,7 +345,10 @@ def test_relaxed_wrap():
|
|||
return [a, args, b]
|
||||
|
||||
with pytest.raises(
|
||||
TypeError, match="'a' parameter is positional only, but was passed as a keyword"
|
||||
TypeError,
|
||||
match=re.escape(
|
||||
"test_relaxed_wrap.<locals>.f4() missing 1 required positional argument: 'a'"
|
||||
),
|
||||
):
|
||||
f4(a=2, b=7)
|
||||
|
||||
|
|
Loading…
Reference in New Issue