[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#38208] [PATCH] gnu: Add python-3.8.
From: |
Marius Bakke |
Subject: |
[bug#38208] [PATCH] gnu: Add python-3.8. |
Date: |
Fri, 15 Nov 2019 18:28:56 +0100 |
User-agent: |
Notmuch/0.29.1 (https://notmuchmail.org) Emacs/26.3 (x86_64-pc-linux-gnu) |
Hello Tanguy,
Tanguy Le Carrour <address@hidden> writes:
> * gnu/packages/python.scm (python-3.8): New public variable.
> [source]: Add patches to skip four tests.
> * gnu/packages/patches/python-3.8-search-paths.patch: New file.
> * gnu/packages/patches/python-3.8-fix-tests.patch: New file.
Thank you for this!
> ++ @unittest.skipIf(True, "This fails for unknown reasons on Guix")
> + def test_keyboard_interrupt_exit_code(self):
> + """KeyboardInterrupt triggers exit via SIGINT."""
> + process = subprocess.run(
I'm fairly confident that these failures are because stdin is not a
TTY. Can you try changing to this?
@unittest.skipUnless(sys.stdin.isatty(), "KeyboardInterrupts require a TTY
device")
It would be good to submit a patch along these lines upstream if that
works.
> +(define-public python-3.8
> + (package
> + (inherit python-3.7)
> + (version "3.8.0")
> + (source
> + (origin
> + (inherit (package-source python-3.7))
> + (uri (string-append "https://www.python.org/ftp/python/"
> + version "/Python-" version ".tar.xz"))
> + (sha256 (base32
> "110d0did9rxn7rg85kf2fwli5hqq44xv2d8bi7d92m7v2d728mmk"))
> + (patches (search-patches
> + "python-3.8-search-paths.patch"
> + "python-3-fix-tests.patch"
> + "python-3.8-fix-tests.patch"
> + "python-3-deterministic-build-info.patch"))
> + (snippet
> + '(begin
> + ;; Delete the bundled copy of libexpat.
> + (delete-file-recursively "Modules/expat")
> + (substitute* "Modules/Setup"
> + ;; Link Expat instead of embedding the bundled one.
> + (("^#pyexpat.*") "pyexpat pyexpat.c -lexpat\n"))
> + #t))))))
One final question... Do you know how stable the Python ABI is? Are
packages compiled with 3.7 guaranteed to work with 3.8?
I wonder if we should 1) rename it to 'python-next', and 2) override
'native-search-paths' so that it searches 'lib/python3.8/site-packages'.
My concern is that e.g. 'guix environment --ad-hoc python python-numpy'
might stop working unless we rename it, and/or adjust search paths.
If Python 3.8 is fully backwards compatible, we probably don't have to
do anything, otherwise we should adjust accordingly.
Thoughts?
signature.asc
Description: PGP signature