diff options
author | 2022-02-12 20:42:05 +0200 | |
---|---|---|
committer | 2022-02-12 20:42:05 +0200 | |
commit | 7b01884e92ba6879cc23a6572272a4eeef2f52e1 (patch) | |
tree | 315d2b5e5f70761e700b7d415b3b833fe7486cef | |
parent | merge default (diff) | |
parent | make sure OpenSSL<1.1.1m is still supported (issue 3671), backport test changes (diff) | |
download | pypy-7b01884e92ba6879cc23a6572272a4eeef2f52e1.tar.gz pypy-7b01884e92ba6879cc23a6572272a4eeef2f52e1.tar.bz2 pypy-7b01884e92ba6879cc23a6572272a4eeef2f52e1.zip |
merge default
-rw-r--r-- | .hgtags | 4 | ||||
-rw-r--r-- | lib_pypy/_cffi_ssl/_stdssl/__init__.py | 4 | ||||
-rw-r--r-- | pypy/doc/release-v7.3.8.rst | 7 | ||||
-rw-r--r-- | pypy/tool/release/check_versions.py | 11 | ||||
-rw-r--r-- | pypy/tool/release/repackage.sh | 21 | ||||
-rw-r--r-- | pypy/tool/release/versions.json | 159 |
6 files changed, 189 insertions, 17 deletions
@@ -133,3 +133,7 @@ cc3911ab8fcd509143c64012cc7067d75ab4b6ac release-pypy3.7-v7.3.6 0e322cb44401d19c73b3c3862bcd86bf56ff69ae release-pypy3.7-v7.3.8rc1 67f1b98040bad2f1241e4e1ebde6051a505f628a release-pypy3.8-v7.3.8rc1 307e102d7222131fee14073e8856df773627186c release-pypy3.9-v7.3.8rc1 +a7534a4d50852c8405687fc62112401cf8b11485 release-pypy2.7-v7.3.8rc2 +11d3d95ae917dba9ba375c3ad4e831ed5d97fb6b release-pypy3.7-v7.3.8rc2 +e093771497da708d5a1bacad367a0d515fde610b release-pypy3.8-v7.3.8rc2 +59025807f35a8a6b2fa7c033836b5949001a6c2a release-pypy3.9-v7.3.8rc2 diff --git a/lib_pypy/_cffi_ssl/_stdssl/__init__.py b/lib_pypy/_cffi_ssl/_stdssl/__init__.py index d2bb68adf1..1ee540c65f 100644 --- a/lib_pypy/_cffi_ssl/_stdssl/__init__.py +++ b/lib_pypy/_cffi_ssl/_stdssl/__init__.py @@ -336,8 +336,8 @@ class _SSLSocket(object): # bpo43522 and OpenSSL < 1.1.1l: copy hostflags manually if OPENSSL_VERSION_INFO < (1, 1, 1, 12): # 12 == 'l' - params = lib.SSL_CTX_get0_param(ctx); - lib.X509_VERIFY_PARAM_set_hostflags(params, ctx.hostflags); + params = lib.SSL_CTX_get0_param(ctx) + lib.X509_VERIFY_PARAM_set_hostflags(params, sslctx.hostflags); self._app_data_handle = ffi.new_handle(self) lib.SSL_set_app_data(ssl, ffi.cast("char*", self._app_data_handle)) diff --git a/pypy/doc/release-v7.3.8.rst b/pypy/doc/release-v7.3.8.rst index 332eb8e99b..56a72494ef 100644 --- a/pypy/doc/release-v7.3.8.rst +++ b/pypy/doc/release-v7.3.8.rst @@ -32,7 +32,11 @@ wish to share. The release includes four different interpreters: release of this interpreter, we relate to this as "beta" quality. We welcome testing of this version, if you discover incompatibilities, please report them so we can gain confidence in the version. There is still a known - `speed regression`_ around ``**kwargs`` handling in 3.9. + `speed regression`_ around ``**kwargs`` handling in 3.9, and we slightly + modified the concurrent future's ``ProcessExcecutorPool`` to start all the + worker processes when the first task is recieved (like on Python3.8) to + avoid an apparent race condition when using ``fork`` and threads (issue + 3650_). The interpreters are based on much the same codebase, thus the multiple release. This is a micro release, all APIs are compatible with the other 7.3 @@ -291,6 +295,7 @@ Python 3.8 C-API .. _3644: https://foss.heptapod.net/pypy/pypy/-/issues/3644 .. _3642: https://foss.heptapod.net/pypy/pypy/-/issues/3642 .. _3652: https://foss.heptapod.net/pypy/pypy/-/issues/3652 +.. _3650: https://foss.heptapod.net/pypy/pypy/-/issues/3650 .. _3656: https://foss.heptapod.net/pypy/pypy/-/issues/3656 .. _3661: https://foss.heptapod.net/pypy/pypy/-/issues/3661 .. _bpo35883: https://bugs.python.org/issue35883 diff --git a/pypy/tool/release/check_versions.py b/pypy/tool/release/check_versions.py index 29f39433ea..7be8bd6fee 100644 --- a/pypy/tool/release/check_versions.py +++ b/pypy/tool/release/check_versions.py @@ -33,6 +33,9 @@ def assert_in(a, b): pypy_versions = { + '7.3.8rc2': {'python_version': ['3.9.10', '3.8.12', '3.7.12', '2.7.18'], + 'date': '2022-02-11', + }, '7.3.8rc1': {'python_version': ['3.9.10', '3.8.12', '3.7.12', '2.7.18'], 'date': '2022-01-26', }, @@ -118,6 +121,8 @@ arch_map={('aarch64', 'linux'): 'aarch64', def check_versions(data, url, verbose=0): for d in data: + if verbose > 0: + print(f"checking {d['pypy_version']} {d['python_version']}") assert_in(d['pypy_version'], pypy_versions) v = pypy_versions[d['pypy_version']] assert_in(d['python_version'], v['python_version']) @@ -139,7 +144,7 @@ def check_versions(data, url, verbose=0): for f in d['files']: download_url = f['download_url'] if verbose > 0: - print(f'checking {download_url}') + print(f' checking {download_url}', end='') if 'rc' not in d['pypy_version']: assert_in(f['filename'], download_url) assert_in(d['pypy_version'], download_url) @@ -161,6 +166,10 @@ def check_versions(data, url, verbose=0): except error.HTTPError as e: raise ValueError(f"could not open {f['download_url']}") from None assert_equal(r.getcode(), 200) + if verbose > 0: + print(f' ok') + if verbose > 0: + print(f"{d['pypy_version']} {d['python_version']} ok") if __name__ == '__main__': if len(sys.argv) > 1: diff --git a/pypy/tool/release/repackage.sh b/pypy/tool/release/repackage.sh index 7d6d9c3d7d..3bd34a0c9e 100644 --- a/pypy/tool/release/repackage.sh +++ b/pypy/tool/release/repackage.sh @@ -2,11 +2,11 @@ # Edit these appropriately before running this script pmaj=3 # python main version: 2 or 3 -pmin=8 # python minor version +pmin=9 # python minor version maj=7 min=3 rev=8 -rc=rc1 # comment this line for actual release +rc=rc2 # comment this line for actual release function maybe_exit { if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then @@ -45,10 +45,17 @@ if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then fi fi +if [ -v rc ] +then + wanted="\"$maj.$min.$rev${rc/rc/-candidate}\"" +else + wanted="\"$maj.$min.$rev\"" +fi + function repackage_builds { # Download latest builds from the buildmaster, rename the top # level directory, and repackage ready to be uploaded - for plat in linux linux64 osx64 # s390x aarch64 linux-armhf-raspbian linux-armel + for plat in linux linux64 osx64 s390x # aarch64 linux-armhf-raspbian linux-armel do echo downloading package for $plat if wget -q --show-progress http://buildbot.pypy.org/nightly/$branchname/pypy-c-jit-latest-$plat.tar.bz2 @@ -77,10 +84,10 @@ function repackage_builds { else actual_ver=$(grep PYPY_VERSION pypy-c-jit-*-$plat/include/pypy$pmaj.$pmin/patchlevel.h |cut -f3 -d' ') fi - if [ $actual_ver != "\"$maj.$min.$rev\"" ] + if [ $actual_ver != $wanted ] then echo xxxxxxxxxxxxxxxxxxxxxx - echo version mismatch, expected "\"$maj.$min.$rev\"", got $actual_ver for $plat + echo version mismatch, expected $wanted, got $actual_ver for $plat echo xxxxxxxxxxxxxxxxxxxxxx exit -1 rm -rf pypy-c-jit-*-$plat @@ -110,10 +117,10 @@ function repackage_builds { unzip -q pypy-c-jit-latest-$plat.zip rm pypy-c-jit-latest-$plat.zip actual_ver=$(grep PYPY_VERSION pypy-c-jit-*-$plat/include/patchlevel.h |cut -f3 -d' ') - if [ $actual_ver != "\"$maj.$min.$rev\"" ] + if [ $actual_ver != $wanted ] then echo xxxxxxxxxxxxxxxxxxxxxx - echo version mismatch, expected "\"$maj.$min.$rev\"", got $actual_ver for $plat + echo version mismatch, expected $wanted, got $actual_ver for $plat echo xxxxxxxxxxxxxxxxxxxxxx rm -rf pypy-c-jit-*-$plat continue diff --git a/pypy/tool/release/versions.json b/pypy/tool/release/versions.json index b77e667561..23886f8bed 100644 --- a/pypy/tool/release/versions.json +++ b/pypy/tool/release/versions.json @@ -1,5 +1,158 @@ [ { + "pypy_version": "7.3.8rc2", + "python_version": "3.9.10", + "stable": false, + "latest_pypy": false, + "date": "2022-02-11", + "files": [ + { + "filename": "pypy3.9-v7.3.8rc2-linux32.tar.bz2", + "arch": "i686", + "platform": "linux", + "download_url": "https://downloads.python.org/pypy/pypy3.9-v7.3.8rc2-linux32.tar.bz2" + }, + { + "filename": "pypy3.9-v7.3.8rc2-linux64.tar.bz2", + "arch": "x64", + "platform": "linux", + "download_url": "https://downloads.python.org/pypy/pypy3.9-v7.3.8rc2-linux64.tar.bz2" + }, + { + "filename": "pypy3.9-v7.3.8rc2-osx64.tar.bz2", + "arch": "x64", + "platform": "darwin", + "download_url": "https://downloads.python.org/pypy/pypy3.9-v7.3.8rc2-osx64.tar.bz2" + }, + { + "filename": "pypy3.9-v7.3.8rc2-s390x.tar.bz2", + "arch": "s390x", + "platform": "linux", + "download_url": "https://downloads.python.org/pypy/pypy3.9-v7.3.8rc2-s390x.tar.bz2" + }, + { + "filename": "pypy3.9-v7.3.8rc2-win64.zip", + "arch": "x64", + "platform": "win64", + "download_url": "https://downloads.python.org/pypy/pypy3.9-v7.3.8rc2-win64.zip" + } + ] + }, { + "pypy_version": "7.3.8rc2", + "python_version": "3.8.12", + "stable": false, + "latest_pypy": false, + "date": "2022-02-11", + "files": [ + { + "filename": "pypy3.8-v7.3.8rc2-linux32.tar.bz2", + "arch": "i686", + "platform": "linux", + "download_url": "https://downloads.python.org/pypy/pypy3.8-v7.3.8rc2-linux32.tar.bz2" + }, + { + "filename": "pypy3.8-v7.3.8rc2-linux64.tar.bz2", + "arch": "x64", + "platform": "linux", + "download_url": "https://downloads.python.org/pypy/pypy3.8-v7.3.8rc2-linux64.tar.bz2" + }, + { + "filename": "pypy3.8-v7.3.8rc2-osx64.tar.bz2", + "arch": "x64", + "platform": "darwin", + "download_url": "https://downloads.python.org/pypy/pypy3.8-v7.3.8rc2-osx64.tar.bz2" + }, + { + "filename": "pypy3.8-v7.3.8rc2-s390x.tar.bz2", + "arch": "s390x", + "platform": "linux", + "download_url": "https://downloads.python.org/pypy/pypy3.8-v7.3.8rc2-s390x.tar.bz2" + }, + { + "filename": "pypy3.8-v7.3.8rc2-win64.zip", + "arch": "x64", + "platform": "win64", + "download_url": "https://downloads.python.org/pypy/pypy3.8-v7.3.8rc2-win64.zip" + } + ] + },{ + "pypy_version": "7.3.8rc2", + "python_version": "3.7.12", + "stable": false, + "latest_pypy": false, + "date": "2022-02-11", + "files": [ + { + "filename": "pypy3.7-v7.3.8rc2-linux32.tar.bz2", + "arch": "i686", + "platform": "linux", + "download_url": "https://downloads.python.org/pypy/pypy3.7-v7.3.8rc2-linux32.tar.bz2" + }, + { + "filename": "pypy3.7-v7.3.8rc2-linux64.tar.bz2", + "arch": "x64", + "platform": "linux", + "download_url": "https://downloads.python.org/pypy/pypy3.7-v7.3.8rc2-linux64.tar.bz2" + }, + { + "filename": "pypy3.7-v7.3.8rc2-osx64.tar.bz2", + "arch": "x64", + "platform": "darwin", + "download_url": "https://downloads.python.org/pypy/pypy3.7-v7.3.8rc2-osx64.tar.bz2" + }, + { + "filename": "pypy3.7-v7.3.8rc2-s390x.tar.bz2", + "arch": "s390x", + "platform": "linux", + "download_url": "https://downloads.python.org/pypy/pypy3.7-v7.3.8rc2-s390x.tar.bz2" + }, + { + "filename": "pypy3.7-v7.3.8rc2-win64.zip", + "arch": "x64", + "platform": "win64", + "download_url": "https://downloads.python.org/pypy/pypy3.7-v7.3.8rc2-win64.zip" + } + ] + },{ + "pypy_version": "7.3.8rc2", + "python_version": "2.7.18", + "stable": false, + "latest_pypy": false, + "date": "2022-02-11", + "files": [ + { + "filename": "pypy2.7-v7.3.8rc2-linux32.tar.bz2", + "arch": "i686", + "platform": "linux", + "download_url": "https://downloads.python.org/pypy/pypy2.7-v7.3.8rc2-linux32.tar.bz2" + }, + { + "filename": "pypy2.7-v7.3.8rc2-linux64.tar.bz2", + "arch": "x64", + "platform": "linux", + "download_url": "https://downloads.python.org/pypy/pypy2.7-v7.3.8rc2-linux64.tar.bz2" + }, + { + "filename": "pypy2.7-v7.3.8rc2-osx64.tar.bz2", + "arch": "x64", + "platform": "darwin", + "download_url": "https://downloads.python.org/pypy/pypy2.7-v7.3.8rc2-osx64.tar.bz2" + }, + { + "filename": "pypy2.7-v7.3.8rc2-s390x.tar.bz2", + "arch": "s390x", + "platform": "linux", + "download_url": "https://downloads.python.org/pypy/pypy2.7-v7.3.8rc2-s390x.tar.bz2" + }, + { + "filename": "pypy2.7-v7.3.8rc2-win64.zip", + "arch": "x64", + "platform": "win64", + "download_url": "https://downloads.python.org/pypy/pypy2.7-v7.3.8rc2-win64.zip" + } + ] + }, + { "pypy_version": "7.3.8rc1", "python_version": "3.9.10", "stable": false, @@ -2014,12 +2167,6 @@ "latest_pypy": false, "files": [ { - "filename": "pypy-c-jit-latest-aarch64.tar.bz2", - "arch": "aarch64", - "platform": "linux", - "download_url": "http://buildbot.pypy.org/nightly/py3.9/pypy-c-jit-latest-aarch64.tar.bz2" - }, - { "filename": "pypy-c-jit-latest-linux.tar.bz2", "arch": "i686", "platform": "linux", |