diff options
-rw-r--r-- | gnu/local.mk | 1 | ||||
-rw-r--r-- | gnu/packages/check.scm | 8 | ||||
-rw-r--r-- | gnu/packages/databases.scm | 100 | ||||
-rw-r--r-- | gnu/packages/glib.scm | 2 | ||||
-rw-r--r-- | gnu/packages/gnome.scm | 13 | ||||
-rw-r--r-- | gnu/packages/golang.scm | 6 | ||||
-rw-r--r-- | gnu/packages/linux.scm | 1 | ||||
-rw-r--r-- | gnu/packages/man.scm | 96 | ||||
-rw-r--r-- | gnu/packages/password-utils.scm | 1 | ||||
-rw-r--r-- | gnu/packages/patches/python2-pyopenssl-openssl-compat.patch | 51 | ||||
-rw-r--r-- | gnu/packages/python-crypto.scm | 193 | ||||
-rw-r--r-- | gnu/packages/python-web.scm | 15 | ||||
-rw-r--r-- | gnu/packages/python-xyz.scm | 84 | ||||
-rw-r--r-- | gnu/packages/time.scm | 21 | ||||
-rw-r--r-- | gnu/packages/unicode.scm | 5 | ||||
-rw-r--r-- | gnu/packages/video.scm | 1 | ||||
-rw-r--r-- | gnu/packages/web-browsers.scm | 1 | ||||
-rw-r--r-- | gnu/packages/web.scm | 4 | ||||
-rw-r--r-- | gnu/packages/wget.scm | 1 | ||||
-rw-r--r-- | gnu/packages/xorg.scm | 1 |
20 files changed, 343 insertions, 262 deletions
diff --git a/gnu/local.mk b/gnu/local.mk index 9bad87710c..d23ea2664a 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1690,6 +1690,7 @@ dist_patch_DATA = \ %D%/packages/patches/python-piexif-fix-tests-with-pillow-7.2.patch \ %D%/packages/patches/python-pyfakefs-remove-bad-test.patch \ %D%/packages/patches/python-pyflakes-test-location.patch \ + %D%/packages/patches/python2-pyopenssl-openssl-compat.patch \ %D%/packages/patches/python-flint-includes.patch \ %D%/packages/patches/python-libxml2-utf8.patch \ %D%/packages/patches/python-magic-python-bytecode.patch \ diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 335ab7ab11..1171d1c28b 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -1150,13 +1150,13 @@ following improvements: (define-public python-pytest-cov (package (name "python-pytest-cov") - (version "2.8.1") + (version "3.0.0") (source (origin (method url-fetch) (uri (pypi-uri "pytest-cov" version)) (sha256 - (base32 "0avzlk9p4nc44k7lpx9109dybq71xqnggxb9f4hp0l64pbc44ryc")))) + (base32 "0w6lfv8gc1lxmnvsz7mq5z9shxac5zz6s9mwrai108kxc6qzbw77")))) (build-system python-build-system) (arguments `(#:phases @@ -2737,13 +2737,13 @@ mocks, stubs and fakes.") (define-public python-flaky (package (name "python-flaky") - (version "3.5.3") + (version "3.7.0") (source (origin (method url-fetch) (uri (pypi-uri "flaky" version)) (sha256 (base32 - "1nm1kjf857z5aw7v642ffsy1vwf255c6wjvmil71kckjyd0mxg8j")))) + "03daz352021211kvdb056f3afrd2gsdq0rd1awgr38910xw01l9s")))) (build-system python-build-system) (arguments ;; TODO: Tests require 'coveralls' and 'genty' which are not in Guix yet. diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 4472677ab3..56d838dd58 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -32,7 +32,7 @@ ;;; Copyright © 2017 Kristofer Buffington <kristoferbuffington@gmail.com> ;;; Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net> ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com> -;;; Copyright © 2018, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2018, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2019 Jack Hill <jackhill@jackhill.us> ;;; Copyright © 2019 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com> @@ -56,6 +56,7 @@ ;;; Copyright © 2021 jgart <jgart@dismail.de> ;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com> ;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com> +;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re> ;;; ;;; This file is part of GNU Guix. ;;; @@ -90,6 +91,7 @@ #:use-module (gnu packages curl) #:use-module (gnu packages cyrus-sasl) #:use-module (gnu packages dbm) + #:use-module (gnu packages docbook) #:use-module (gnu packages emacs) #:use-module (gnu packages flex) #:use-module (gnu packages freedesktop) @@ -1239,38 +1241,43 @@ and high-availability (HA).") (patches (search-patches "postgresql-disable-resolve_symlinks.patch")))) (build-system gnu-build-system) (arguments - `(#:configure-flags '("--with-uuid=e2fs" "--with-openssl" - ;; PostgreSQL installs its own Makefile (should it?). - ;; Prevent it from retaining needless references to - ;; the build tools in order to save size. - "MKDIR_P=mkdir -p" "INSTALL_BIN=install -c" - "LD=ld" "TAR=tar") - #:phases - (modify-phases %standard-phases - (add-before 'configure 'patch-/bin/sh - (lambda _ - ;; Refer to the actual shell. - (substitute* '("src/bin/pg_ctl/pg_ctl.c" - "src/bin/psql/command.c") - (("/bin/sh") (which "sh"))) - #t)) - (add-before 'configure 'set-socket-dir - (lambda _ - (substitute* '("src/include/pg_config_manual.h") - (("DEFAULT_PGSOCKET_DIR[^\n]*") - "DEFAULT_PGSOCKET_DIR \"/var/run/postgresql\"")) - #t)) - (add-after 'build 'build-contrib - (lambda _ - (invoke "make" "-C" "contrib"))) - (add-after 'install 'install-contrib - (lambda _ - (invoke "make" "-C" "contrib" "install")))))) - (inputs - `(("readline" ,readline) - ("libuuid" ,util-linux "lib") - ("openssl" ,openssl) - ("zlib" ,zlib))) + (list + #:configure-flags + #~(list "--with-uuid=e2fs" "--with-openssl" + (string-append "--mandir=" #$output "/share/man") + ;; PostgreSQL installs its own Makefile (should it?). + ;; Prevent it from retaining needless references to + ;; the build tools in order to save size. + "MKDIR_P=mkdir -p" "INSTALL_BIN=install -c" + "LD=ld" "TAR=tar") + #:phases + #~(modify-phases %standard-phases + (add-before 'configure 'patch-/bin/sh + (lambda _ + ;; Refer to the actual shell. + (substitute* '("src/bin/pg_ctl/pg_ctl.c" + "src/bin/psql/command.c") + (("/bin/sh") (which "sh"))))) + (add-before 'configure 'set-socket-dir + (lambda _ + (substitute* '("src/include/pg_config_manual.h") + (("DEFAULT_PGSOCKET_DIR[^\n]*") + "DEFAULT_PGSOCKET_DIR \"/var/run/postgresql\"")))) + (add-after 'build 'build-contrib + (lambda _ + (invoke "make" "-C" "contrib"))) + (add-after 'install 'install-contrib + (lambda _ + (invoke "make" "-C" "contrib" "install"))) + (add-after 'install 'install-manuals + (lambda _ + (with-directory-excursion "doc/src/sgml" + (invoke "make" "install-man") + (invoke "make" "postgres.info") + (install-file "postgres.info" + (string-append #$output "/share/info")))))))) + (native-inputs (list docbook-xml docbook2x libxml2 perl texinfo)) + (inputs (list readline `(,util-linux "lib") openssl zlib)) (home-page "https://www.postgresql.org/") (synopsis "Powerful object-relational database system") (description @@ -1285,36 +1292,15 @@ pictures, sounds, or video.") (define-public postgresql-13 (package (inherit postgresql-14) - (version "13.4") + (version "13.6") (source (origin (inherit (package-source postgresql-14)) (uri (string-append "https://ftp.postgresql.org/pub/source/v" version "/postgresql-" version ".tar.bz2")) (sha256 (base32 - "1kf0gcsrl5n25rjlvkh87aywmn28kbwvakm5c7j1qpr4j01y34za")))) - (arguments - (if (target-riscv64?) - `(,@(substitute-keyword-arguments (package-arguments postgresql-14) - ((#:phases phases) - #~(modify-phases #$phases - (add-after 'unpack 'apply-riscv-spinlock-patch - ;; The patch is applied in this custom phase and not via the - ;; "origin" object above to avoid rebuilding a large number - ;; of packages on other platforms. - (lambda* (#:key inputs #:allow-other-keys) - (let ((patch-file - #$(local-file - (search-patch - "postgresql-riscv-spinlocks.patch")))) - (invoke "patch" "-p1" "-i" patch-file)))))))) - `(,@(package-arguments postgresql-14)))) - (native-inputs - (if (target-riscv64?) - (list - (local-file (search-patch "postgresql-riscv-spinlocks.patch")) - patch) - '())))) + "1z37ix80hb2bqa2smh1hbj9r507ypnl3pil43gkqznnlv6ipzz5s")) + (patches (search-patches "postgresql-riscv-spinlocks.patch")))))) (define-public postgresql-11 (package diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index 30e5433776..7e6acc0984 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2017 Petter <petter@mykolab.ch> ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> -;;; Copyright © 2019, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2019, 2020, 2021 Marius Bakke <marius@gnu.org> ;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index dae6692109..51ce1cd936 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3508,18 +3508,9 @@ for dealing with different structured file formats.") `(,glib "bin") gobject-introspection pkg-config - python-wrapper - ruby vala)) (inputs - (list bzip2 - fontconfig - freetype - harfbuzz - libcroco - libgsf - libxml2 - pango)) + (list freetype harfbuzz libxml2 pango)) (propagated-inputs (list cairo gdk-pixbuf glib)) (synopsis "SVG rendering library") @@ -3610,7 +3601,7 @@ diagrams.") `(,glib "bin") ; glib-mkenums, etc. gobject-introspection)) ; g-ir-compiler, etc. (inputs - (list pango libcroco bzip2 libgsf libxml2)) + (list pango libcroco libxml2)) (propagated-inputs ;; librsvg-2.0.pc refers to all of that. (list cairo gdk-pixbuf glib)) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 820e6b54ab..60ba76b2ea 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -2684,8 +2684,8 @@ packages.") (license license:bsd-3)))) (define-public go-golang-org-x-sys - (let ((commit "05986578812163b26672dabd9b425240ae2bb0ad") - (revision "7")) + (let ((commit "ed5796bab16455f104b6a384d51b7f9990cb9806") + (revision "8")) (package (name "go-golang-org-x-sys") (version (git-version "0.0.0" revision commit)) @@ -2697,7 +2697,7 @@ packages.") (file-name (git-file-name name version)) (sha256 (base32 - "1q2rxb6z5l6pmlckjsz2l0b8lw7bqgk6frhzbmi1dv0y5irb2ka7")))) + "081vs5bg91mwg5bdmlcvy2qyrvg766aicj47smcwfk4bbh0nc0qa")))) (build-system go-build-system) (arguments `(#:import-path "golang.org/x/sys" diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index c67b5922e6..1903dcc669 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -50,6 +50,7 @@ ;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com> ;;; Copyright © 2020 David Dashyan <mail@davie.li> ;;; Copyright © 2020 pukkamustard <pukkamustard@posteo.net> +;;; Copyright © 2021 Solene Rapenne <solene@perso.pw> ;;; Copyright © 2021 B. Wilson <elaexuotee@wilsonb.com> ;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru> ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> diff --git a/gnu/packages/man.scm b/gnu/packages/man.scm index a434c70576..1c1d82758b 100644 --- a/gnu/packages/man.scm +++ b/gnu/packages/man.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com> ;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net> ;;; Copyright © 2021 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> +;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -125,14 +126,14 @@ a flexible and convenient way.") (define-public man-db (package (name "man-db") - (version "2.9.4") + (version "2.10.2") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/man-db/man-db-" version ".tar.xz")) (sha256 (base32 - "0mk7n7yn6scy785jhg1j14b3q9l0cgvpry49r0ldjsnizbnrjv5n")))) + "0kaiymd5lh4dnp6z15fnvfg0ir81kdxp5l690ccp64ra956rb5zf")))) (build-system gnu-build-system) (arguments (list #:phases @@ -145,9 +146,7 @@ a flexible and convenient way.") (substitute* file (("#! /bin/sh") (string-append "#!" (which "sh"))))) - (remove file-is-directory? - (find-files "src/tests" ".*"))) - #t))) + (find-files "src/tests"))))) (add-after 'unpack 'patch-absolute-paths (lambda* (#:key inputs #:allow-other-keys) (substitute* "src/man.c" @@ -160,64 +159,53 @@ a flexible and convenient way.") (("groff_preconv = NULL") (string-append "groff_preconv = \"" (assoc-ref inputs "groff-minimal") - "/bin/preconv\""))) - #t))) + "/bin/preconv\"")))))) #:configure-flags - #~(let ((groff (assoc-ref %build-inputs "groff")) - (groff-minimal (assoc-ref %build-inputs "groff-minimal")) - (less (assoc-ref %build-inputs "less")) - (gzip (assoc-ref %build-inputs "gzip")) - (bzip2 (assoc-ref %build-inputs "bzip2")) - (xz (assoc-ref %build-inputs "xz")) - (util (assoc-ref %build-inputs "util-linux"))) - ;; Invoke groff, less, gzip, bzip2, & xz directly from the store. - (append (list ;; Disable setuid man user. - "--disable-setuid" - ;; Don't constrain ownership of system-wide cache files. - ;; Otherwise creating the manpage database fails with - ;; man-db > 2.7.5. - "--disable-cache-owner" - (string-append "--with-pager=" less "/bin/less") - (string-append "--with-gzip=" gzip "/bin/gzip") - (string-append "--with-bzip2=" bzip2 "/bin/gzip") - (string-append "--with-xz=" xz "/bin/xz") - (string-append "--with-col=" util "/bin/col") - ;; The default systemd directories ignore --prefix. - ;; XXX TODO: Replace with simply #$OUTPUT on staging. - (string-append "--with-systemdsystemunitdir=" - #$(if (%current-target-system) - #~#$output - #~%output) - "/lib/systemd/system") - (string-append "--with-systemdtmpfilesdir=" - #$(if (%current-target-system) - #~#$output - #~%output) - "/lib/tmpfiles.d")) - (map (lambda (prog) - (string-append "--with-" prog "=" groff-minimal - "/bin/" prog)) - '("nroff" "eqn" "neqn" "tbl" "refer" "pic")))) - + #~(cons* + ;; Disable setuid man user. + "--disable-setuid" + ;; Don't constrain ownership of system-wide cache files. + ;; Otherwise creating the manpage database fails with + ;; man-db > 2.7.5. + "--disable-cache-owner" + (string-append "--with-pager=" + (search-input-file %build-inputs "bin/less")) + (string-append "--with-gzip=" + (search-input-file %build-inputs "bin/gzip")) + (string-append "--with-bzip2=" + (search-input-file %build-inputs "bin/bzip2")) + (string-append "--with-xz=" + (search-input-file %build-inputs "bin/xz")) + (string-append "--with-zstd=" + (search-input-file %build-inputs "bin/zstd")) + (string-append "--with-col=" + (search-input-file %build-inputs "bin/col")) + ;; The default systemd directories ignore --prefix. + (string-append "--with-systemdsystemunitdir=" + #$output "/lib/systemd/system") + (string-append "--with-systemdtmpfilesdir=" + #$output "/lib/tmpfiles.d") + (map (lambda (prog) + (string-append + "--with-" prog "=" + #$(this-package-input "groff-minimal") + (string-append "/bin/" prog))) + '("nroff" "eqn" "neqn" "tbl" "refer" "pic"))) ;; At run time we should refer to GROFF-MINIMAL, not GROFF (the latter ;; pulls in Perl.) - #:disallowed-references - (list groff) - - #:modules '((guix build gnu-build-system) - (guix build utils) - (srfi srfi-1)))) + #:disallowed-references (list groff))) (native-inputs - (list pkg-config flex groff)) ;needed at build time (troff, grops, soelim, etc.) + (list pkg-config flex + ;; Groff is needed at build time for troff, grops, soelim, etc. + groff)) (inputs (list gdbm groff-minimal less libpipeline - ;; FIXME: 4.8 and later can use libseccomp, but it causes test - ;; failures in the build chroot. - ;;("libseccomp" ,libseccomp) - util-linux)) + libseccomp + util-linux + zstd)) (native-search-paths (list (search-path-specification (variable "MANPATH") diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index 1891a2cf09..86e80e8328 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -29,6 +29,7 @@ ;;; Copyright © 2020 Jean-Baptiste Note <jean-baptiste.note@m4x.org> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net> +;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at> ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz> ;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com> diff --git a/gnu/packages/patches/python2-pyopenssl-openssl-compat.patch b/gnu/packages/patches/python2-pyopenssl-openssl-compat.patch new file mode 100644 index 0000000000..a185f4172d --- /dev/null +++ b/gnu/packages/patches/python2-pyopenssl-openssl-compat.patch @@ -0,0 +1,51 @@ +Adjust for OpenSSL 1.1.1: + + https://github.com/pyca/pyopenssl/issues/1043 + +Taken from upstream: + + https://github.com/pyca/pyopenssl/commit/cc5c00ae5fd3c19d07fff79b5c4a08f5e58697ad + +diff --git a/src/OpenSSL/SSL.py b/src/OpenSSL/SSL.py +index 59f21cec..fcdee047 100644 +--- a/src/OpenSSL/SSL.py ++++ b/src/OpenSSL/SSL.py +@@ -1421,6 +1421,12 @@ def set_alpn_protos(self, protos): + This list should be a Python list of bytestrings representing the + protocols to offer, e.g. ``[b'http/1.1', b'spdy/2']``. + """ ++ # Different versions of OpenSSL are inconsistent about how they handle empty ++ # proto lists (see #1043), so we avoid the problem entirely by rejecting them ++ # ourselves. ++ if not protos: ++ raise ValueError("at least one protocol must be specified") ++ + # Take the list of protocols and join them together, prefixing them + # with their lengths. + protostr = b"".join( +@@ -2449,6 +2455,12 @@ def set_alpn_protos(self, protos): + This list should be a Python list of bytestrings representing the + protocols to offer, e.g. ``[b'http/1.1', b'spdy/2']``. + """ ++ # Different versions of OpenSSL are inconsistent about how they handle empty ++ # proto lists (see #1043), so we avoid the problem entirely by rejecting them ++ # ourselves. ++ if not protos: ++ raise ValueError("at least one protocol must be specified") ++ + # Take the list of protocols and join them together, prefixing them + # with their lengths. + protostr = b"".join( +diff --git a/tests/test_ssl.py b/tests/test_ssl.py +index ffc505d8..ca363b45 100644 +--- a/tests/test_ssl.py ++++ b/tests/test_ssl.py +@@ -1928,7 +1928,7 @@ def test_alpn_call_failure(self): + protocols list. Ensure that we produce a user-visible error. + """ + context = Context(SSLv23_METHOD) +- with pytest.raises(Error): ++ with pytest.raises(ValueError): + context.set_alpn_protos([]) + + def test_alpn_set_on_connection(self): diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm index 2e16392c9d..d331601c66 100644 --- a/gnu/packages/python-crypto.scm +++ b/gnu/packages/python-crypto.scm @@ -459,13 +459,13 @@ for example, for recording or replaying web content.") (define-public python-certifi (package (name "python-certifi") - (version "2020.12.5") + (version "2021.10.8") (source (origin (method url-fetch) (uri (pypi-uri "certifi" version)) (sha256 (base32 - "177mdbw0livdjvp17sz6wsfrc32838m9y59v871gpgv2888raj8s")))) + "0wl8ln7acd797i1q7mmb430l6hqwhmk4bd37x8ycw02b3my4x23q")))) (build-system python-build-system) (arguments '(#:tests? #f)) ;no tests (home-page "https://certifi.io/") @@ -481,14 +481,14 @@ is used by the Requests library to verify HTTPS requests.") (define-public python-cryptography-vectors (package (name "python-cryptography-vectors") - (version "3.3.1") + (version "36.0.1") (source (origin (method url-fetch) (uri (pypi-uri "cryptography_vectors" version)) (sha256 (base32 - "192wix3sr678x21brav5hgc6j93l7ab1kh69p2scr3fsblq9qy03")))) + "166mvhhmgglqai1sjkkb76mpdkad2yykam11d2w44hs2snpr117w")))) (build-system python-build-system) (home-page "https://github.com/pyca/cryptography") (synopsis "Test vectors for the cryptography package") @@ -497,75 +497,9 @@ is used by the Requests library to verify HTTPS requests.") ;; Distributed under either BSD-3 or ASL2.0 (license (list license:bsd-3 license:asl2.0)))) -(define-public python2-cryptography-vectors - (package-with-python2 python-cryptography-vectors)) - (define-public python-cryptography (package (name "python-cryptography") - (version "3.3.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "cryptography" version)) - (sha256 - (base32 - "1ribd1vxq9wwz564mg60dzcy699gng54admihjjkgs9dx95pw5vy")))) - (build-system python-build-system) - (inputs - (list openssl)) - (propagated-inputs - (list python-asn1crypto python-cffi python-six python-idna - python-iso8601)) - (native-inputs - (list python-cryptography-vectors python-hypothesis python-pretend - python-pytz python-pytest)) - (home-page "https://github.com/pyca/cryptography") - (synopsis "Cryptographic recipes and primitives for Python") - (description - "cryptography is a package which provides cryptographic recipes and -primitives to Python developers. It aims to be the “cryptographic standard -library” for Python. The package includes both high level recipes, and low -level interfaces to common cryptographic algorithms such as symmetric ciphers, -message digests and key derivation functions.") - ;; Distributed under either BSD-3 or ASL2.0 - (license (list license:bsd-3 license:asl2.0)) - (properties `((python2-variant . ,(delay python2-cryptography)))))) - -(define-public python2-cryptography - (let ((crypto (package-with-python2 - (strip-python2-variant python-cryptography)))) - (package/inherit crypto - (arguments - `(#:python ,python-2 - #:phases - (modify-phases %standard-phases - ;; The sanity-check attempts attempts to import the non-existent - ;; modules "_openssl" and "_padding". - (delete 'sanity-check)))) - (propagated-inputs - `(("python2-ipaddress" ,python2-ipaddress) - ("python2-backport-ssl-match-hostname" - ,python2-backport-ssl-match-hostname) - ("python2-enum34" ,python2-enum34) - ,@(package-propagated-inputs crypto)))))) - -;; TODO: Make this the default in the next staging cycle. -(define-public python-cryptography-vectors-next - (package - (inherit python-cryptography-vectors) - (version "36.0.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "cryptography_vectors" version)) - (sha256 - (base32 - "166mvhhmgglqai1sjkkb76mpdkad2yykam11d2w44hs2snpr117w")))))) - -(define-public python-cryptography-next - (package - (inherit python-cryptography) (version "36.0.1") (source (origin @@ -663,50 +597,103 @@ message digests and key derivation functions.") (list python-asn1crypto python-cffi python-six python-idna python-iso8601)) (native-inputs - (list python-cryptography-vectors-next + (list python-cryptography-vectors python-hypothesis python-pretend python-pytz python-pytest python-pytest-subtests python-setuptools-rust - rust `(,rust "cargo"))) - (properties '()))) + rust + `(,rust "cargo"))) + (home-page "https://github.com/pyca/cryptography") + (synopsis "Cryptographic recipes and primitives for Python") + (description + "cryptography is a package which provides cryptographic recipes and +primitives to Python developers. It aims to be the “cryptographic standard +library” for Python. The package includes both high level recipes, and low +level interfaces to common cryptographic algorithms such as symmetric ciphers, +message digests and key derivation functions.") + ;; Distributed under either BSD-3 or ASL2.0 + (license (list license:bsd-3 license:asl2.0)) + (properties `((python2-variant . ,(delay python2-cryptography)))))) + +(define-public python2-cryptography-vectors + (package + (inherit python-cryptography-vectors) + (version "3.3.1") + (source (origin + (method url-fetch) + (uri (pypi-uri "cryptography_vectors" version)) + (sha256 + (base32 + "192wix3sr678x21brav5hgc6j93l7ab1kh69p2scr3fsblq9qy03")))) + (arguments + (list #:python python-2)))) + +(define-public python2-cryptography + (let ((crypto (package-with-python2 + (strip-python2-variant python-cryptography)))) + (package + (inherit crypto) + (version "3.3.1") + (source (origin + (method url-fetch) + (uri (pypi-uri "cryptography" version)) + (sha256 + (base32 + "1ribd1vxq9wwz564mg60dzcy699gng54admihjjkgs9dx95pw5vy")))) + (arguments + `(#:python ,python-2 + #:phases + (modify-phases %standard-phases + ;; The sanity-check attempts attempts to import the non-existent + ;; modules "_openssl" and "_padding". + (delete 'sanity-check)))) + (native-inputs + (list python2-cryptography-vectors python2-hypothesis python2-pretend + python2-pytz python2-pytest)) + (inputs (list openssl)) + (propagated-inputs + (modify-inputs (package-propagated-inputs crypto) + (prepend python2-ipaddress + python2-backport-ssl-match-hostname + python2-enum34)))))) (define-public python-pyopenssl (package (name "python-pyopenssl") - (version "20.0.1") + (version "22.0.0") (source (origin (method url-fetch) (uri (pypi-uri "pyOpenSSL" version)) (sha256 (base32 - "0labcbh2g0jhgisd79wx9kixmi6fip28096d1xb05fj3jmsiq8sc")))) + "1gzihw09sqi71lwx97c69hab7w4rbnl6hhfrl6za3i5a4la1n2v6")))) (build-system python-build-system) (arguments - '(#:phases - (modify-phases %standard-phases - (delete 'check) - (add-after 'install 'check - (lambda* (#:key inputs outputs #:allow-other-keys) - (add-installed-pythonpath inputs outputs) - ;; PyOpenSSL runs tests against a certificate with a fixed - ;; expiry time. To ensure successful builds in the future, - ;; set the time to roughly the release date. - (invoke "faketime" "2021-05-01" "py.test" "-v" "-k" - (string-append - ;; This test tries to look up certificates from - ;; the compiled-in default path in OpenSSL, which - ;; does not exist in the build environment. - "not test_fallback_default_verify_paths " - ;; This test attempts to make a connection to - ;; an external web service. - "and not test_set_default_verify_paths " - ;; Fails on i686-linux and possibly other 32-bit platforms - ;; https://github.com/pyca/pyopenssl/issues/974 - "and not test_verify_with_time"))))))) + (list + #:phases + #~(modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + ;; PyOpenSSL runs tests against a certificate with a fixed + ;; expiry time. To ensure successful builds in the future, + ;; set the time to roughly the release date. + (invoke "faketime" "2022-02-01" "py.test" "-v" "-k" + (string-append + ;; This test tries to look up certificates from + ;; the compiled-in default path in OpenSSL, which + ;; does not exist in the build environment. + "not test_fallback_default_verify_paths " + ;; This test attempts to make a connection to + ;; an external web service. + "and not test_set_default_verify_paths " + ;; Fails on i686-linux and possibly other 32-bit platforms + ;; https://github.com/pyca/pyopenssl/issues/974 + "and not test_verify_with_time")))))))) (propagated-inputs (list python-cryptography python-six)) (inputs @@ -718,10 +705,22 @@ message digests and key derivation functions.") (description "PyOpenSSL is a high-level wrapper around a subset of the OpenSSL library.") + (properties `((python2-variant . ,(delay python2-pyopenssl)))) (license license:asl2.0))) (define-public python2-pyopenssl - (package-with-python2 python-pyopenssl)) + (let ((base (package-with-python2 (strip-python2-variant python-pyopenssl)))) + (package + (inherit base) + (version "21.0.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pyOpenSSL" version)) + (patches (search-patches "python2-pyopenssl-openssl-compat.patch")) + (sha256 + (base32 + "1cqcc20fwl521z3fxsc1c98gbnhb14q55vrvjfp6bn6h8rg8qbay"))))))) (define-public python-ed25519 (package diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 7e333916b6..3ca8041edf 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -2554,17 +2554,19 @@ APIs.") (define-public python-requests (package (name "python-requests") - (version "2.26.0") + (version "2.27.1") (source (origin (method url-fetch) (uri (pypi-uri "requests" version)) (sha256 (base32 - "19q73fq7hip7b74fwls3p9x6zwvfwqcwpn6kha3zsgvrrzw5iamq")))) + "0qcsbi919d689xqlgyhw9zkppp1fs6k09wwffa3ri6d8smpwbmv8")))) (build-system python-build-system) (propagated-inputs - (list python-certifi python-chardet python-charset-normalizer - python-idna python-urllib3)) + (list python-certifi + python-charset-normalizer + python-idna + python-urllib3)) (arguments ;; FIXME: Some tests require network access. '(#:tests? #f)) @@ -2583,6 +2585,7 @@ than Python’s urllib2 library.") ;; The python-charset-normalizer dependency is necessary on Python 3 ;; only. (propagated-inputs (modify-inputs (package-propagated-inputs base) + (append python2-chardet) (delete "python-charset-normalizer")))))) (define-public python-requests-unixsocket @@ -2833,14 +2836,14 @@ addon for removing tracking fields from URLs.") (define-public python-urllib3 (package (name "python-urllib3") - (version "1.26.7") + (version "1.26.8") (source (origin (method url-fetch) (uri (pypi-uri "urllib3" version)) (sha256 (base32 - "1kkf6gi8a1fs0dqkf6kpmdpsy97iirvliz8q1krxp8ppaiawd1s9")))) + "0g18xk7gfm88gr4bp3f58vgvsbzwps3sq2kqhv5xyz9ylvck6z0f")))) (build-system python-build-system) (arguments `(#:tests? #f)) (propagated-inputs diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index f8e599a453..a1e7ca1c0c 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -7598,26 +7598,22 @@ data, and scientific formats.") (define-public python-pycparser (package (name "python-pycparser") - (version "2.20") + (version "2.21") (source (origin (method url-fetch) (uri (pypi-uri "pycparser" version)) (sha256 (base32 - "1w0m3xvlrzq4lkbvd1ngfm8mdw64r1yxy6n7djlw6qj5d0km6ird")))) + "01kjlyn5w2nn2saj8w1rhq7v26328pd91xwgqn32z1zp2bngsi76")))) (outputs '("out" "doc")) (build-system python-build-system) - (native-inputs - (list pkg-config)) (arguments `(#:phases (modify-phases %standard-phases (replace 'check (lambda _ - (with-directory-excursion "tests" - (invoke "python" "all_tests.py")) - #t)) + (invoke "python" "-m" "unittest" "discover"))) (add-after 'install 'install-doc (lambda* (#:key outputs #:allow-other-keys) (let* ((data (string-append (assoc-ref outputs "doc") "/share")) @@ -7628,8 +7624,7 @@ data, and scientific formats.") (copy-file (string-append "." file) (string-append doc file))) '("/README.rst" "/CHANGES" "/LICENSE")) - (copy-recursively "examples" examples) - #t)))))) + (copy-recursively "examples" examples))))))) (home-page "https://github.com/eliben/pycparser") (synopsis "C parser in Python") (description @@ -12336,14 +12331,14 @@ versions of Python.") (define-public python-idna (package (name "python-idna") - (version "2.10") + (version "3.3") (source (origin (method url-fetch) (uri (pypi-uri "idna" version)) (sha256 (base32 - "1xmk3s92d2vq42684p61wixfmh3qpr2mw762w0n6662vhlpqf1xk")))) + "0v8f6qjfi5i7qc5icsbv2pi24qy6k6m8wjqjvdf2sxjvlpq3yr4x")))) (build-system python-build-system) (home-page "https://github.com/kjd/idna") (synopsis "Internationalized domain names in applications") @@ -12355,10 +12350,20 @@ from the earlier standard from 2003. The library is also intended to act as a suitable drop-in replacement for the “encodings.idna” module that comes with the Python standard library but currently only supports the older 2003 specification.") + (properties `((python2-variant . ,(delay python2-idna)))) (license license:bsd-4))) (define-public python2-idna - (package-with-python2 python-idna)) + (let ((base (package-with-python2 (strip-python2-variant python-idna)))) + (package + (inherit base) + (version "2.10") + (source (origin + (method url-fetch) + (uri (pypi-uri "idna" version)) + (sha256 + (base32 + "1xmk3s92d2vq42684p61wixfmh3qpr2mw762w0n6662vhlpqf1xk"))))))) (define-public python-libsass (package @@ -13359,19 +13364,40 @@ simulation, statistical modeling, machine learning and much more.") (define-public python-chardet (package (name "python-chardet") - (version "3.0.4") + (version "4.0.0") (source (origin (method url-fetch) (uri (pypi-uri "chardet" version)) (sha256 (base32 - "1bpalpia6r5x1kknbk11p1fzph56fmmnp405ds8icksd3knr5aw4")))) + "1ykr04qyhgpc0h5b7dhqw4g92b1xv7ki2ky910mhy4mlbnhm6vqd")))) (native-inputs - (list python-hypothesis python-pytest python-pytest-runner)) + (list python-pytest)) (build-system python-build-system) - ;; XXX: Incompatible with Pytest 4: <https://github.com/chardet/chardet/issues/173>. - (arguments `(#:tests? #f)) + (arguments + (list #:phases + #~(modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "pytest" "-vv"))) + ;; This package provides a 'chardetect' executable that only + ;; depends on Python, so customize the wrap phase to avoid + ;; adding pytest and friends in order to save size. + ;; (See also <https://bugs.gnu.org/25235>.) + (replace 'wrap + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((sitedir (site-packages inputs outputs)) + (python (dirname (dirname + (search-input-file + inputs "bin/python")))) + (python-sitedir + (string-append python "/lib/python" + (python-version python) + "/site-packages"))) + (wrap-program (string-append #$output "/bin/chardetect") + `("GUIX_PYTHONPATH" ":" suffix + ,(list sitedir python-sitedir))))))))) (home-page "https://github.com/chardet/chardet") (synopsis "Universal encoding detector for Python 2 and 3") (description @@ -13385,14 +13411,34 @@ automatically detect a wide range of file encodings.") (define-public python-charset-normalizer (package (name "python-charset-normalizer") - (version "2.0.5") + (version "2.0.11") (source (origin (method url-fetch) (uri (pypi-uri "charset-normalizer" version)) (sha256 - (base32 "0rr3iv2xw4rz5ijnfqk229fw85cq6p6rhqqsilm0ldzncblfg63h")))) + (base32 "071pi2kd222rjjrjdllffqv3iz4bfaj93a9bfs65907fd6fqlfcq")))) (build-system python-build-system) + (arguments + (list #:phases + #~(modify-phases %standard-phases + ;; This package provides a 'normalizer' executable that only + ;; depends on Python, so customize the wrap phase to avoid + ;; adding pytest and friends in order to save size. + ;; (See also <https://bugs.gnu.org/25235>.) + (replace 'wrap + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((sitedir (site-packages inputs outputs)) + (python (dirname (dirname + (search-input-file + inputs "bin/python")))) + (python-sitedir + (string-append python "/lib/python" + (python-version python) + "/site-packages"))) + (wrap-program (string-append #$output "/bin/normalizer") + `("GUIX_PYTHONPATH" ":" suffix + ,(list sitedir python-sitedir))))))))) (native-inputs (list python-pytest)) (home-page "https://github.com/ousret/charset_normalizer") diff --git a/gnu/packages/time.scm b/gnu/packages/time.scm index 9b57fe41fb..1b94632c09 100644 --- a/gnu/packages/time.scm +++ b/gnu/packages/time.scm @@ -353,14 +353,14 @@ ISO 8601 dates, time and duration.") (define-public python-iso8601 (package (name "python-iso8601") - (version "0.1.13") + (version "1.0.2") (source (origin (method url-fetch) (uri (pypi-uri "iso8601" version)) (sha256 (base32 - "1cgfj91khil4ii5gb8s6nxwm73vx7hqc2k79dd9d8990ylmc5ppp")))) + "1ccl6plks706hxm35cn1wsvxhqh3bfwi5cjgjpdxjib81qi07x97")))) (build-system python-build-system) (arguments '(#:phases (modify-phases %standard-phases @@ -368,16 +368,27 @@ ISO 8601 dates, time and duration.") (lambda _ (invoke "pytest" "-vv" "iso8601")))))) (native-inputs - (list python-pytest)) - (home-page "https://bitbucket.org/micktwomey/pyiso8601") + (list python-pytest python-pytz)) + (home-page "https://github.com/micktwomey/pyiso8601") (synopsis "Module to parse ISO 8601 dates") (description "This module parses the most common forms of ISO 8601 date strings (e.g. @code{2007-01-14T20:34:22+00:00}) into @code{datetime} objects.") + (properties `((python2-variant . ,(delay python2-iso8601)))) (license expat))) (define-public python2-iso8601 - (package-with-python2 python-iso8601)) + (let ((base (package-with-python2 (strip-python2-variant python-iso8601)))) + (package + (inherit base) + (version "0.1.16") + (source + (origin + (method url-fetch) + (uri (pypi-uri "iso8601" version)) + (sha256 + (base32 + "0ny8dlycapxr8n2m13jxy0r7kbqvgypfshb6y7l981c0rivjylrn"))))))) (define-public python-monotonic (package diff --git a/gnu/packages/unicode.scm b/gnu/packages/unicode.scm index 23c5de195c..bda0de04cc 100644 --- a/gnu/packages/unicode.scm +++ b/gnu/packages/unicode.scm @@ -78,15 +78,14 @@ renderer.") (define-public ucd (package (name "ucd") - (version "12.0.0") + (version "14.0.0") (source (origin (method url-fetch/zipbomb) (uri (string-append "https://www.unicode.org/Public/zipped/" version "/UCD.zip")) (sha256 - (base32 - "1ighy39cjkmqnv1797wrxjz76mv1fdw7zp5j04q55bkwxsdkvrmh")))) + (base32 "001nq9w52ijma0vps40xwy2q6ylpyf1393lzb128ibypnmv54fh3")))) (build-system copy-build-system) (arguments '(#:install-plan diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index e42a696ddd..77b565ede6 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -46,6 +46,7 @@ ;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro> ;;; Copyright © 2020 Ivan Kozlov <kanichos@yandex.ru> ;;; Copyright © 2020 Antoine Côté <antoine.cote@posteo.net> +;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2021 Alexey Abramov <levenson@mmer.org> ;;; Copyright © 2021 Andrew Tropin <andrew@trop.in> ;;; Copyright © 2021 David Wilson <david@daviwil.com> diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm index 645b11e740..b272319b89 100644 --- a/gnu/packages/web-browsers.scm +++ b/gnu/packages/web-browsers.scm @@ -15,6 +15,7 @@ ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz> ;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro> +;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2021, 2022 Cage <cage-dev@twistfold.it> ;;; Copyright © 2021 Benoit Joly <benoit@benoitj.ca> ;;; Copyright © 2021 Alexander Krotov <krotov@iitp.ru> diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index bc913664e3..5eaebd2ced 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -1637,7 +1637,7 @@ used to validate and fix HTML data.") (define-public esbuild (package (name "esbuild") - (version "0.12.9") + (version "0.14.0") (source (origin (method git-fetch) @@ -1646,7 +1646,7 @@ used to validate and fix HTML data.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "10bz1xq2frdja7mbx04m009svg8b5rj7vfq3sc2gc88n31v21b1j")) + (base32 "09r1xy0kk6c9cpz6q0mxr4why373pwxbm439z2ihq3k1d5kk7x4w")) (modules '((guix build utils))) (snippet '(begin diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm index 9d23ecdaef..ec655b95bd 100644 --- a/gnu/packages/wget.scm +++ b/gnu/packages/wget.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2018–2021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> +;;; Copyright © 2021 Michael Rohleder <mike@rohleder.de> ;;; ;;; This file is part of GNU Guix. ;;; diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 75a7bbd01c..ca01cd0b5a 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -26,6 +26,7 @@ ;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020 Jean-Baptiste Note <jean-baptiste.note@m4x.org> +;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org> ;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz> ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org> ;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re> |