Package: pypy / 7.3.3+dfsg-2

Metadata

Package Version Patches format
pypy 7.3.3+dfsg-2 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
pep3147 core | (download)

pypy/config/pypyoption.py | 5 5 + 0 - 0 !
pypy/doc/interpreter.rst | 1 1 + 0 - 0 !
pypy/interpreter/app_main.py | 1 1 + 0 - 0 !
pypy/interpreter/main.py | 1 1 + 0 - 0 !
pypy/interpreter/test/test_main.py | 11 11 + 0 - 0 !
pypy/module/imp/importing.py | 81 78 + 3 - 0 !
pypy/module/imp/interp_imp.py | 12 12 + 0 - 0 !
pypy/module/imp/moduledef.py | 3 3 + 0 - 0 !
pypy/module/imp/test/test_app.py | 7 5 + 2 - 0 !
pypy/module/imp/test/test_import.py | 323 298 + 25 - 0 !
pypy/module/zipimport/test/test_undocumented.py | 23 15 + 8 - 0 !
11 files changed, 430 insertions(+), 38 deletions(-)

 pep3147 support

Tests modified from Barry Warsaw's PEP3147 cpython support.

pep3147 stdlib | (download)

lib-python/2.7/compileall.py | 67 44 + 23 - 0 !
lib-python/2.7/inspect.py | 1 1 + 0 - 0 !
lib-python/2.7/py_compile.py | 35 20 + 15 - 0 !
lib-python/2.7/pydoc.py | 3 2 + 1 - 0 !
lib-python/2.7/runpy.py | 2 2 + 0 - 0 !
lib-python/2.7/site.py | 13 10 + 3 - 0 !
lib-python/2.7/test/support/__init__.py | 47 39 + 8 - 0 !
lib-python/2.7/test/support/script_helper.py | 23 12 + 11 - 0 !
lib-python/2.7/test/test_cmd_line_script.py | 20 12 + 8 - 0 !
lib-python/2.7/test/test_compileall.py | 61 58 + 3 - 0 !
lib-python/2.7/test/test_imp.py | 142 142 + 0 - 0 !
lib-python/2.7/test/test_import.py | 65 38 + 27 - 0 !
lib-python/2.7/test/test_pkg.py | 20 10 + 10 - 0 !
lib-python/2.7/test/test_pkgimport.py | 20 8 + 12 - 0 !
lib-python/2.7/test/test_py_compile.py | 5 3 + 2 - 0 !
lib-python/2.7/test/test_pydoc.py | 3 2 + 1 - 0 !
lib-python/2.7/test/test_runpy.py | 23 16 + 7 - 0 !
lib-python/2.7/test/test_site.py | 47 34 + 13 - 0 !
lib-python/2.7/test/test_traceback.py | 5 2 + 3 - 0 !
lib-python/2.7/test/test_zipfile.py | 9 8 + 1 - 0 !
lib-python/2.7/test/test_zipimport.py | 9 3 + 6 - 0 !
lib-python/2.7/zipfile.py | 43 32 + 11 - 0 !
22 files changed, 498 insertions(+), 165 deletions(-)

 pep3147 changes to lib-python

Backported from cpython's PEP3147 commit

pep3147 issue11254 | (download)

lib-python/2.7/distutils/command/build_py.py | 7 5 + 2 - 0 !
lib-python/2.7/distutils/command/install_lib.py | 7 5 + 2 - 0 !
lib-python/2.7/distutils/tests/test_build_py.py | 76 50 + 26 - 0 !
lib-python/2.7/distutils/tests/test_install_lib.py | 60 37 + 23 - 0 !
lib-python/2.7/distutils/util.py | 17 12 + 5 - 0 !
5 files changed, 109 insertions(+), 58 deletions(-)

 pep3147 distutils patches
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

Backported from cpython.

test_fsync eatmydata | (download)

lib-python/2.7/test/test_os.py | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

 tests: skip fsync tests when building with eatmydata

skip test_multiprocessing | (download)

lib-python/2.7/test/test_multiprocessing.py | 3 3 + 0 - 0 !
1 file changed, 3 insertions(+)

 tests: disable test_multiprocessing

It leaves stray processes.

skip hurd deadlock | (download)

pypy/module/thread/test/test_lock.py | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

 tests: skip test that deadlocks on gnu hurd

Per Samuel Thibault:

> That's probably because pypy uses pthread_mutexes (which per POSIX aren't
> interrupted by signals) instead of semaphores, and I guess that's
> because sem_open isn't supported on Hurd yet.

test_readline invalidterminal | (download)

lib-python/2.7/test/test_readline.py | 6 5 + 1 - 0 !
1 file changed, 5 insertions(+), 1 deletion(-)

 tests: skip readline tests raising invalidterminal

We run the tests under TERM=dumb.
PyPy doesn't emulate the readline module perfectly and throws an
exception here.

test_fcntl | (download)

pypy/module/fcntl/test/test_fcntl.py | 9 7 + 2 - 0 !
1 file changed, 7 insertions(+), 2 deletions(-)

 tests: ignore lease failure in fcntl tests

Fail on tmpfs on Linux 4.19. Fixed in 5.7 possibly earlier (5.3?).

fpic archs | (download)

rpython/translator/platform/__init__.py | 4 3 + 1 - 0 !
1 file changed, 3 insertions(+), 1 deletion(-)

 arch: x32 requires -fpic

x32 detection is currently Debian-specific.

ctypes arm | (download)

lib-python/2.7/ctypes/util.py | 15 13 + 2 - 0 !
1 file changed, 13 insertions(+), 2 deletions(-)

 arch: armhf support
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

Workaround the presentce of hard-float in ldconfig -p output.
Also, handle the wide variety of ARM unames.

s390x z10 | (download)

rpython/translator/platform/arch/s390x.py | 4 1 + 3 - 0 !
1 file changed, 1 insertion(+), 3 deletions(-)

 arch: target z10 on s390x

That's the oldest version that Debian targets.

plat gnukfreebsd | (download)

lib-python/2.7/plat-gnukfreebsd10/DLFCN.py | 118 118 + 0 - 0 !
lib-python/2.7/plat-gnukfreebsd10/IN.py | 809 809 + 0 - 0 !
lib-python/2.7/plat-gnukfreebsd10/TYPES.py | 303 303 + 0 - 0 !
lib-python/2.7/plat-gnukfreebsd11/DLFCN.py | 118 118 + 0 - 0 !
lib-python/2.7/plat-gnukfreebsd11/IN.py | 809 809 + 0 - 0 !
lib-python/2.7/plat-gnukfreebsd11/TYPES.py | 303 303 + 0 - 0 !
lib-python/2.7/plat-gnukfreebsd8/DLFCN.py | 118 118 + 0 - 0 !
lib-python/2.7/plat-gnukfreebsd8/IN.py | 809 809 + 0 - 0 !
lib-python/2.7/plat-gnukfreebsd8/TYPES.py | 303 303 + 0 - 0 !
lib-python/2.7/plat-gnukfreebsd9/DLFCN.py | 118 118 + 0 - 0 !
lib-python/2.7/plat-gnukfreebsd9/IN.py | 809 809 + 0 - 0 !
lib-python/2.7/plat-gnukfreebsd9/TYPES.py | 303 303 + 0 - 0 !
12 files changed, 4920 insertions(+)

 arch: dlfcn.py for kfreebsd

plat linux2 differences | (download)

lib-python/2.7/plat-linux2/DLFCN.py | 88 7 + 81 - 0 !
lib-python/2.7/plat-linux2/DLFCN_default.py | 83 83 + 0 - 0 !
lib-python/2.7/plat-linux2/DLFCN_mips.py | 83 83 + 0 - 0 !
lib-python/2.7/plat-linux2/IN.py | 630 15 + 615 - 0 !
lib-python/2.7/plat-linux2/IN_alpha.py | 615 615 + 0 - 0 !
lib-python/2.7/plat-linux2/IN_default.py | 615 615 + 0 - 0 !
lib-python/2.7/plat-linux2/IN_hppa.py | 615 615 + 0 - 0 !
lib-python/2.7/plat-linux2/IN_mips.py | 615 615 + 0 - 0 !
lib-python/2.7/plat-linux2/IN_sparc.py | 615 615 + 0 - 0 !
9 files changed, 3263 insertions(+), 696 deletions(-)

 arch: plat-linux2's constants vary

Break the affected files up, and import based on platform.machine()

Bug-cpython: http://bugs.python.org/issue3990
distutils link | (download)

lib-python/2.7/distutils/unixccompiler.py | 7 6 + 1 - 0 !
1 file changed, 6 insertions(+), 1 deletion(-)

 stdlib: don't add standard library dirs to library_dirs and
 runtime_library_dirs.

locale module | (download)

lib-python/2.7/locale.py | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 stdlib: don't map 'utf8', 'utf-8' to 'utf'

'utf' is not a known encoding for glibc.

platform lsbrelease | (download)

lib-python/2.7/platform.py | 23 23 + 0 - 0 !
1 file changed, 23 insertions(+)

 stdlib: use /etc/lsb-release to identify the platform

version info | (download)

pypy/module/sys/version.py | 1 1 + 0 - 0 !
rpython/tool/version.py | 10 10 + 0 - 0 !
2 files changed, 11 insertions(+)

 debian: get version details from the debian source package

Rather than VCS.

Return the Debian package version in sys.version.
Return null strings in sys._mercurial.

ensurepip wheels | (download)

lib-python/2.7/ensurepip/__init__.py | 74 54 + 20 - 0 !
1 file changed, 54 insertions(+), 20 deletions(-)

 debian: let ensurepip use the system wheels

Not the ones from the python source.

ensurepip disabled | (download)

lib-python/2.7/ensurepip/__init__.py | 17 17 + 0 - 0 !
lib-python/2.7/test/test_ensurepip.py | 1 1 + 0 - 0 !
2 files changed, 18 insertions(+)

 debian: disable ensurepip in debian for now

multiarch | (download)

lib-python/2.7/sysconfig.py | 3 3 + 0 - 0 !
lib-python/2.7/test/test_sysconfig.py | 5 5 + 0 - 0 !
lib_pypy/_sysconfigdata.py | 5 5 + 0 - 0 !
pypy/module/imp/importing.py | 5 4 + 1 - 0 !
pypy/module/imp/interp_imp.py | 8 6 + 2 - 0 !
pypy/module/imp/test/test_import.py | 3 2 + 1 - 0 !
pypy/module/sys/debian.py | 12 12 + 0 - 0 !
pypy/module/sys/moduledef.py | 4 4 + 0 - 0 !
pypy/module/sys/test/test_sysmodule.py | 5 5 + 0 - 0 !
9 files changed, 46 insertions(+), 4 deletions(-)

 debian: add multiarch tag to c extension file names

Add _multiarch variable to sys, and MULTIARCH to sysconfig variables,
exposing the multiarch tag.

Add the multiarch tag to C extension file names, by default, while still
supporting bare suffixes.

distutils install layout | (download)

lib-python/2.7/distutils/command/install.py | 44 42 + 2 - 0 !
lib-python/2.7/distutils/command/install_egg_info.py | 30 25 + 5 - 0 !
lib-python/2.7/distutils/sysconfig_pypy.py | 6 5 + 1 - 0 !
lib-python/2.7/pydoc.py | 1 1 + 0 - 0 !
lib-python/2.7/site.py | 28 18 + 10 - 0 !
lib-python/2.7/sysconfig.py | 29 27 + 2 - 0 !
lib-python/2.7/test/test_site.py | 10 5 + 5 - 0 !
lib-python/2.7/test/test_sysconfig.py | 3 2 + 1 - 0 !
8 files changed, 125 insertions(+), 26 deletions(-)

 debian: add a distutils option --install-layout=deb

This option:
 - installs into $prefix/dist-packages instead of $prefix/site-packages.
 - doesn't encode the python version into the egg name.

Based on cpython Debian packaging

langpack gettext | (download)

lib-python/2.7/gettext.py | 15 15 + 0 - 0 !
1 file changed, 15 insertions(+)

 debian: support ubuntu langpacks

Support alternative gettext tree in /usr/share/locale-langpack; if a
file is present in both trees, prefer the newer one

atomic pyc rename | (download)

lib-python/2.7/py_compile.py | 21 14 + 7 - 0 !
1 file changed, 14 insertions(+), 7 deletions(-)

 debian: atomically write .pyc files

The mechanism used is not compatible with Windows, so not forwardable.
Python 3.3 eventually implemented this in importlib.

Bug-cPython: https://bugs.python.org/issue13146
bdist wininst notfound | (download)

lib-python/2.7/distutils/command/bdist_wininst.py | 8 7 + 1 - 0 !
1 file changed, 7 insertions(+), 1 deletion(-)

 debian: explain that wininst files are not included in debian

The wininst-* files cannot be built within Debian, needing a zlib mingw
build, which the zlib maintainer isn't going to provide.

tkinter import | (download)

lib-python/2.7/lib-tk/Tkinter.py | 5 4 + 1 - 0 !
1 file changed, 4 insertions(+), 1 deletion(-)

 debian: suggest installation of pypy-tk package

On failing _tkinter import.

noise | (download)

rpython/tool/ansi_print.py | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 debian: always output the mandelbrot

So that our buildds see progress

python3 sphinx | (download)

pypy/doc/conf.py | 10 2 + 8 - 0 !
pypy/doc/config/index.rst | 11 5 + 6 - 0 !
pypy/doc/cpython_differences.rst | 2 1 + 1 - 0 !
pypy/doc/objspace.rst | 12 10 + 2 - 0 !
4 files changed, 18 insertions(+), 17 deletions(-)

 debian: disable some extensions to support python 3 sphinx

Stop building any autodoc and configuration sections, that require
parsing the Python 2 source code.

This supports building the Sphinx docs with Python 3.

no sphinx affiliates | (download)

pypy/doc/conf.py | 3 2 + 1 - 0 !
1 file changed, 2 insertions(+), 1 deletion(-)

 debian: disable sphinx-affiliates search

Not packaged in Debian, yet.