diff options
238 files changed, 2428 insertions, 1412 deletions
diff --git a/doc/languages-frameworks/python.section.md b/doc/languages-frameworks/python.section.md index 3211ae616a1..09e177c7a48 100644 --- a/doc/languages-frameworks/python.section.md +++ b/doc/languages-frameworks/python.section.md @@ -8,9 +8,9 @@ Several versions of the Python interpreter are available on Nix, as well as a high amount of packages. The attribute `python3` refers to the default -interpreter, which is currently CPython 3.9. The attribute `python` refers to +interpreter, which is currently CPython 3.10. The attribute `python` refers to CPython 2.7 for backwards-compatibility. It is also possible to refer to -specific versions, e.g. `python38` refers to CPython 3.8, and `pypy` refers to +specific versions, e.g. `python39` refers to CPython 3.9, and `pypy` refers to the default PyPy interpreter. Python is used a lot, and in different ways. This affects also how it is @@ -26,10 +26,10 @@ however, are in separate sets, with one set per interpreter version. The interpreters have several common attributes. One of these attributes is `pkgs`, which is a package set of Python libraries for this specific interpreter. E.g., the `toolz` package corresponding to the default interpreter -is `python.pkgs.toolz`, and the CPython 3.8 version is `python38.pkgs.toolz`. +is `python.pkgs.toolz`, and the CPython 3.9 version is `python39.pkgs.toolz`. The main package set contains aliases to these package sets, e.g. -`pythonPackages` refers to `python.pkgs` and `python38Packages` to -`python38.pkgs`. +`pythonPackages` refers to `python.pkgs` and `python39Packages` to +`python39.pkgs`. #### Installing Python and packages {#installing-python-and-packages} @@ -54,7 +54,7 @@ with `python.buildEnv` or `python.withPackages` where the interpreter and other executables are wrapped to be able to find each other and all of the modules. In the following examples we will start by creating a simple, ad-hoc environment -with a nix-shell that has `numpy` and `toolz` in Python 3.8; then we will create +with a nix-shell that has `numpy` and `toolz` in Python 3.9; then we will create a re-usable environment in a single-file Python script; then we will create a full Python environment for development with this same environment. @@ -70,10 +70,10 @@ temporary shell session with a Python and a *precise* list of packages (plus their runtime dependencies), with no other Python packages in the Python interpreter's scope. -To create a Python 3.8 session with `numpy` and `toolz` available, run: +To create a Python 3.9 session with `numpy` and `toolz` available, run: ```sh -$ nix-shell -p 'python38.withPackages(ps: with ps; [ numpy toolz ])' +$ nix-shell -p 'python39.withPackages(ps: with ps; [ numpy toolz ])' ``` By default `nix-shell` will start a `bash` session with this interpreter in our @@ -81,8 +81,8 @@ By default `nix-shell` will start a `bash` session with this interpreter in our ```Python console [nix-shell:~/src/nixpkgs]$ python3 -Python 3.8.1 (default, Dec 18 2019, 19:06:26) -[GCC 9.2.0] on linux +Python 3.9.12 (main, Mar 23 2022, 21:36:19) +[GCC 11.3.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import numpy; import toolz ``` @@ -102,13 +102,16 @@ will still get 1 wrapped Python interpreter. We can start the interpreter directly like so: ```sh -$ nix-shell -p 'python38.withPackages(ps: with ps; [ numpy toolz requests ])' --run python3 -these derivations will be built: - /nix/store/xbdsrqrsfa1yva5s7pzsra8k08gxlbz1-python3-3.8.1-env.drv -building '/nix/store/xbdsrqrsfa1yva5s7pzsra8k08gxlbz1-python3-3.8.1-env.drv'... -created 277 symlinks in user environment -Python 3.8.1 (default, Dec 18 2019, 19:06:26) -[GCC 9.2.0] on linux +$ nix-shell -p "python39.withPackages (ps: with ps; [ numpy toolz requests ])" --run python3 +this derivation will be built: + /nix/store/mpn7k6bkjl41fm51342rafaqfsl10qs4-python3-3.9.12-env.drv +this path will be fetched (0.09 MiB download, 0.41 MiB unpacked): + /nix/store/5gaiacnzi096b6prc6aa1pwrhncmhc8b-python3.9-toolz-0.11.2 +copying path '/nix/store/5gaiacnzi096b6prc6aa1pwrhncmhc8b-python3.9-toolz-0.11.2' from 'https://cache.nixos.org'... +building '/nix/store/mpn7k6bkjl41fm51342rafaqfsl10qs4-python3-3.9.12-env.drv'... +created 279 symlinks in user environment +Python 3.9.12 (main, Mar 23 2022, 21:36:19) +[GCC 11.3.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import requests >>> @@ -147,7 +150,7 @@ Executing this script requires a `python3` that has `numpy`. Using what we learn in the previous section, we could startup a shell and just run it like so: ```ShellSession -$ nix-shell -p 'python38.withPackages(ps: with ps; [ numpy ])' --run 'python3 foo.py' +$ nix-shell -p 'python39.withPackages(ps: with ps; [ numpy ])' --run 'python3 foo.py' The dot product of [1 2] and [3 4] is: 11 ``` @@ -210,12 +213,12 @@ create a single script with Python dependencies, but in the course of normal development we're usually working in an entire package repository. As explained in the Nix manual, `nix-shell` can also load an expression from a -`.nix` file. Say we want to have Python 3.8, `numpy` and `toolz`, like before, +`.nix` file. Say we want to have Python 3.9, `numpy` and `toolz`, like before, in an environment. We can add a `shell.nix` file describing our dependencies: ```nix with import <nixpkgs> {}; -(python38.withPackages (ps: [ps.numpy ps.toolz])).env +(python39.withPackages (ps: [ps.numpy ps.toolz])).env ``` And then at the command line, just typing `nix-shell` produces the same @@ -229,7 +232,7 @@ What's happening here? imports the `<nixpkgs>` function, `{}` calls it and the `with` statement brings all attributes of `nixpkgs` in the local scope. These attributes form the main package set. -2. Then we create a Python 3.8 environment with the `withPackages` function, as before. +2. Then we create a Python 3.9 environment with the `withPackages` function, as before. 3. The `withPackages` function expects us to provide a function as an argument that takes the set of all Python packages and returns a list of packages to include in the environment. Here, we select the packages `numpy` and `toolz` @@ -240,7 +243,7 @@ To combine this with `mkShell` you can: ```nix with import <nixpkgs> {}; let - pythonEnv = python38.withPackages (ps: [ + pythonEnv = python39.withPackages (ps: [ ps.numpy ps.toolz ]); @@ -378,8 +381,8 @@ information. The output of the function is a derivation. An expression for `toolz` can be found in the Nixpkgs repository. As explained in the introduction of this Python section, a derivation of `toolz` is available -for each interpreter version, e.g. `python38.pkgs.toolz` refers to the `toolz` -derivation corresponding to the CPython 3.8 interpreter. +for each interpreter version, e.g. `python39.pkgs.toolz` refers to the `toolz` +derivation corresponding to the CPython 3.9 interpreter. The above example works when you're directly working on `pkgs/top-level/python-packages.nix` in the Nixpkgs repository. Often though, @@ -392,11 +395,11 @@ and adds it along with a `numpy` package to a Python environment. with import <nixpkgs> {}; ( let - my_toolz = python38.pkgs.buildPythonPackage rec { + my_toolz = python39.pkgs.buildPythonPackage rec { pname = "toolz"; version = "0.10.0"; - src = python38.pkgs.fetchPypi { + src = python39.pkgs.fetchPypi { inherit pname version; sha256 = "08fdd5ef7c96480ad11c12d472de21acd32359996f69a5259299b540feba4560"; }; @@ -414,7 +417,7 @@ with import <nixpkgs> {}; ``` Executing `nix-shell` will result in an environment in which you can use -Python 3.8 and the `toolz` package. As you can see we had to explicitly mention +Python 3.9 and the `toolz` package. As you can see we had to explicitly mention for which Python version we want to build a package. So, what did we do here? Well, we took the Nix expression that we used earlier @@ -742,7 +745,7 @@ If we create a `shell.nix` file which calls `buildPythonPackage`, and if `src` is a local source, and if the local source has a `setup.py`, then development mode is activated. -In the following example we create a simple environment that has a Python 3.8 +In the following example we create a simple environment that has a Python 3.9 version of our package in it, as well as its dependencies and other packages we like to have in the environment, all specified with `propagatedBuildInputs`. Indeed, we can just add any package we like to have in our environment to @@ -750,7 +753,7 @@ Indeed, we can just add any package we like to have in our environment to ```nix with import <nixpkgs> {}; -with python38Packages; +with python39Packages; buildPythonPackage rec { name = "mypackage"; @@ -828,9 +831,9 @@ and in this case the `python38` interpreter is automatically used. ### Interpreters {#interpreters} -Versions 2.7, 3.7, 3.8 and 3.9 of the CPython interpreter are available as -respectively `python27`, `python37`, `python38` and `python39`. The -aliases `python2` and `python3` correspond to respectively `python27` and +Versions 2.7, 3.7, 3.8, 3.9 and 3.10 of the CPython interpreter are available +as respectively `python27`, `python37`, `python38`, `python39` and `python310`. +The aliases `python2` and `python3` correspond to respectively `python27` and `python39`. The attribute `python` maps to `python2`. The PyPy interpreters compatible with Python 2.7 and 3 are available as `pypy27` and `pypy3`, with aliases `pypy2` mapping to `pypy27` and `pypy` mapping to `pypy2`. The Nix diff --git a/pkgs/applications/audio/quodlibet/default.nix b/pkgs/applications/audio/quodlibet/default.nix index 6c8ad8225f0..49b320703d1 100644 --- a/pkgs/applications/audio/quodlibet/default.nix +++ b/pkgs/applications/audio/quodlibet/default.nix @@ -9,11 +9,11 @@ let optionals = lib.optionals; in python3.pkgs.buildPythonApplication rec { pname = "quodlibet${tag}"; - version = "4.4.0"; + version = "4.5.0"; src = fetchurl { url = "https://github.com/quodlibet/quodlibet/releases/download/release-${version}/quodlibet-${version}.tar.gz"; - sha256 = "sha256-oDMY0nZ+SVlVF2PQqH+tl3OHr3EmCP5XJxQXaiS782c="; + sha256 = "sha256-MBYVgp9lLLr+2zVTkjcWKli8HucaVn0kn3eJ2SaCRbw="; }; nativeBuildInputs = [ wrapGAppsHook gettext ]; diff --git a/pkgs/applications/finance/odoo/default.nix b/pkgs/applications/finance/odoo/default.nix index bd8b21aa5aa..c755b0fb667 100644 --- a/pkgs/applications/finance/odoo/default.nix +++ b/pkgs/applications/finance/odoo/default.nix @@ -1,14 +1,14 @@ { stdenv , lib , fetchurl -, python3 +, python39 , nodePackages , wkhtmltopdf , nixosTests }: let - python = python3.override { + python = python39.override { packageOverrides = self: super: { click = super.click.overridePythonAttrs (old: rec { version = "7.1.2"; diff --git a/pkgs/applications/misc/privacyidea/default.nix b/pkgs/applications/misc/privacyidea/default.nix index 5c3afc30155..5aabf3d2ddf 100644 --- a/pkgs/applications/misc/privacyidea/default.nix +++ b/pkgs/applications/misc/privacyidea/default.nix @@ -1,9 +1,9 @@ { lib, fetchFromGitHub, cacert, openssl, nixosTests -, python3 +, python39 }: let - python3' = python3.override { + python3' = python39.override { packageOverrides = self: super: { sqlalchemy = super.sqlalchemy.overridePythonAttrs (oldAttrs: rec { version = "1.3.24"; @@ -19,7 +19,7 @@ let }); flask_migrate = super.flask_migrate.overridePythonAttrs (oldAttrs: rec { version = "2.7.0"; - src = python3.pkgs.fetchPypi { + src = self.fetchPypi { pname = "Flask-Migrate"; inherit version; sha256 = "ae2f05671588762dd83a21d8b18c51fe355e86783e24594995ff8d7380dffe38"; diff --git a/pkgs/applications/networking/browsers/firefox/common.nix b/pkgs/applications/networking/browsers/firefox/common.nix index 11946272abe..9e3a08cb666 100644 --- a/pkgs/applications/networking/browsers/firefox/common.nix +++ b/pkgs/applications/networking/browsers/firefox/common.nix @@ -21,6 +21,7 @@ { lib , pkgs , stdenv +, fetchpatch # build time , autoconf @@ -219,6 +220,12 @@ buildStdenv.mkDerivation ({ ]; patches = [ + (fetchpatch { + # https://bugzilla.mozilla.org/show_bug.cgi?id=1773259 + name = "rust-cbindgen-0.24.2-compat.patch"; + url = "https://raw.githubusercontent.com/canonical/firefox-snap/5622734942524846fb0eb7108918c8cd8557fde3/patches/fix-ftbfs-newer-cbindgen.patch"; + hash = "sha256-+wNZhkDB3HSknPRD4N6cQXY7zMT/DzNXx29jQH0Gb1o="; + }) ] ++ lib.optional (lib.versionAtLeast version "86") ./env_var_for_system_dir-ff86.patch ++ lib.optional (lib.versionAtLeast version "90" && lib.versionOlder version "95") ./no-buildconfig-ffx90.patch diff --git a/pkgs/applications/networking/errbot/default.nix b/pkgs/applications/networking/errbot/default.nix index f4a44275b69..d9f02941b43 100644 --- a/pkgs/applications/networking/errbot/default.nix +++ b/pkgs/applications/networking/errbot/default.nix @@ -1,32 +1,12 @@ { lib -, ansi -, buildPythonApplication -, colorlog -, daemonize -, deepmerge -, dulwich , fetchFromGitHub -, flask , glibcLocales -, hypchat -, irc -, jinja2 -, markdown -, mock -, pyasn1 -, pyasn1-modules -, pygments -, pygments-markdown-lexer -, pyopenssl -, pytestCheckHook -, requests -, slackclient -, sleekxmpp -, telegram -, webtest +, python39 }: -buildPythonApplication rec { +let + python3 = python39; +in python3.pkgs.buildPythonApplication rec { pname = "errbot"; version = "6.1.7"; @@ -41,7 +21,7 @@ buildPythonApplication rec { buildInputs = [ glibcLocales ]; - propagatedBuildInputs = [ + propagatedBuildInputs = with python3.pkgs; [ ansi colorlog daemonize @@ -64,7 +44,7 @@ buildPythonApplication rec { webtest ]; - checkInputs = [ + checkInputs = with python3.pkgs; [ mock pytestCheckHook ]; diff --git a/pkgs/applications/networking/instant-messengers/turses/default.nix b/pkgs/applications/networking/instant-messengers/turses/default.nix index 42dd9f835c9..c368c049daf 100644 --- a/pkgs/applications/networking/instant-messengers/turses/default.nix +++ b/pkgs/applications/networking/instant-messengers/turses/default.nix @@ -19,6 +19,10 @@ let rev = "v${version}"; sha256 = "0k4bdlwjna6f1k19jki4xqgckrinkkw8b9wihzymr1l04rwd05nw"; }; + propagatedBuildInputs = oldAttrs.propagatedBuildInputs ++ [ + super.six + super.requests.optional-dependencies.socks + ]; doCheck = false; }); }; diff --git a/pkgs/applications/networking/sync/rsync/base.nix b/pkgs/applications/networking/sync/rsync/base.nix deleted file mode 100644 index 27358c3ef59..00000000000 --- a/pkgs/applications/networking/sync/rsync/base.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ lib, fetchurl, fetchpatch }: - -rec { - version = "3.2.4"; - src = fetchurl { - # signed with key 0048 C8B0 26D4 C96F 0E58 9C2F 6C85 9FB1 4B96 A8C5 - url = "mirror://samba/rsync/src/rsync-${version}.tar.gz"; - sha256 = "sha256-b3YYONCAUrC2V5z39nN9k+R/AfTaBMXSTTRHt/Kl+tE="; - }; - upstreamPatchTarball = fetchurl { - # signed with key 0048 C8B0 26D4 C96F 0E58 9C2F 6C85 9FB1 4B96 A8C5 - url = "mirror://samba/rsync/rsync-patches-${version}.tar.gz"; - sha256 = "sha256-cKWXWQr2xhzz0F1mNCn/n2D/4k5E+cc6TNxp69wTIqQ="; - }; - - meta = with lib; { - description = "Fast incremental file transfer utility"; - homepage = "https://rsync.samba.org/"; - license = licenses.gpl3Plus; - platforms = platforms.unix; - }; -} diff --git a/pkgs/applications/networking/sync/rsync/default.nix b/pkgs/applications/networking/sync/rsync/default.nix index 29016bc14af..f47c9c75367 100644 --- a/pkgs/applications/networking/sync/rsync/default.nix +++ b/pkgs/applications/networking/sync/rsync/default.nix @@ -20,27 +20,32 @@ , nixosTests }: -let - base = import ./base.nix { inherit lib fetchurl fetchpatch; }; -in stdenv.mkDerivation rec { pname = "rsync"; - version = base.version; + version = "3.2.4"; - mainSrc = base.src; + srcs = [ + (fetchurl { + # signed with key 0048 C8B0 26D4 C96F 0E58 9C2F 6C85 9FB1 4B96 A8C5 + url = "mirror://samba/rsync/src/rsync-${version}.tar.gz"; + sha256 = "sha256-b3YYONCAUrC2V5z39nN9k+R/AfTaBMXSTTRHt/Kl+tE="; + }) + ] ++ lib.optional enableCopyDevicesPatch (fetchurl { + # signed with key 0048 C8B0 26D4 C96F 0E58 9C2F 6C85 9FB1 4B96 A8C5 + url = "mirror://samba/rsync/rsync-patches-${version}.tar.gz"; + sha256 = "1wj21v57v135n6fnm2m2dxmb9lhrrg62jgkggldp1gb7d6s4arny"; + }); - patchesSrc = base.upstreamPatchTarball; - - srcs = [ mainSrc ] ++ lib.optional enableCopyDevicesPatch patchesSrc; patches = lib.optional enableCopyDevicesPatch "./patches/copy-devices.diff"; + nativeBuildInputs = [ perl ]; + buildInputs = [ libiconv zlib popt ] ++ lib.optional enableACLs acl ++ lib.optional enableZstd zstd ++ lib.optional enableLZ4 lz4 ++ lib.optional enableOpenSSL openssl ++ lib.optional enableXXHash xxHash; - nativeBuildInputs = [ perl ]; configureFlags = [ "--with-nobody-group=nogroup" @@ -48,12 +53,22 @@ stdenv.mkDerivation rec { # disable the included zlib explicitly as it otherwise still compiles and # links them even. "--with-included-zlib=no" - ]; + ] + # Work around issue with cross-compilation: + # configure.sh: error: cannot run test program while cross compiling + # Remove once 3.2.4 or more recent is released. + # The following PR should fix the cross-compilation issue. + # Test using `nix-build -A pkgsCross.aarch64-multiplatform.rsync`. + # https://github.com/WayneD/rsync/commit/b7fab6f285ff0ff3816b109a8c3131b6ded0b484 + ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "--enable-simd=no"; passthru.tests = { inherit (nixosTests) rsyncd; }; - meta = base.meta // { - description = "A fast incremental file transfer utility"; + meta = with lib; { + description = "Fast incremental file transfer utility"; + homepage = "https://rsync.samba.org/"; + license = licenses.gpl3Plus; + platforms = platforms.unix; maintainers = with lib.maintainers; [ ehmry kampfschlaefer ]; }; } diff --git a/pkgs/applications/networking/sync/rsync/rrsync.nix b/pkgs/applications/networking/sync/rsync/rrsync.nix index bb83a9e3cd4..d1e6b6ad96e 100644 --- a/pkgs/applications/networking/sync/rsync/rrsync.nix +++ b/pkgs/applications/networking/sync/rsync/rrsync.nix @@ -1,13 +1,8 @@ { lib, stdenv, fetchurl, perl, rsync, fetchpatch }: -let - base = import ./base.nix { inherit lib fetchurl fetchpatch; }; -in stdenv.mkDerivation { pname = "rrsync"; - version = base.version; - - src = base.src; + inherit (rsync) version srcs; buildInputs = [ rsync perl ]; @@ -16,6 +11,8 @@ stdenv.mkDerivation { dontConfigure = true; dontBuild = true; + inherit (rsync) patches; + postPatch = '' substituteInPlace support/rrsync --replace /usr/bin/rsync ${rsync}/bin/rsync ''; @@ -26,8 +23,7 @@ stdenv.mkDerivation { chmod a+x $out/bin/rrsync ''; - meta = base.meta // { + meta = rsync.meta // { description = "A helper to run rsync-only environments from ssh-logins"; - maintainers = [ lib.maintainers.kampfschlaefer ]; }; } diff --git a/pkgs/applications/science/biology/MACS2/default.nix b/pkgs/applications/science/biology/MACS2/default.nix index cc398608ce5..868479c48e5 100644 --- a/pkgs/applications/science/biology/MACS2/default.nix +++ b/pkgs/applications/science/biology/MACS2/default.nix @@ -9,6 +9,12 @@ python3.pkgs.buildPythonPackage rec { sha256 = "1rcxj943kgzs746f5jrb72x1cp4v50rk3qmad0m99a02vndscb5d"; }; + postPatch = '' + # remove version check which breaks on 3.10 + substituteInPlace setup.py \ + --replace 'if float(sys.version[:3])<3.6:' 'if False:' + ''; + propagatedBuildInputs = with python3.pkgs; [ numpy ]; # To prevent ERROR: diffpeak_cmd (unittest.loader._FailedTest) for obsolete @@ -21,5 +27,7 @@ python3.pkgs.buildPythonPackage rec { license = licenses.bsd3; maintainers = with maintainers; [ gschwartz ]; platforms = platforms.linux; + # error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘use_tracing’; did you mean ‘tracing’? + broken = true; }; } diff --git a/pkgs/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix index 35d714f9b41..ceba14ef92a 100644 --- a/pkgs/build-support/cc-wrapper/default.nix +++ b/pkgs/build-support/cc-wrapper/default.nix @@ -492,6 +492,8 @@ stdenv.mkDerivation { hardening_unsupported_flags+=" format stackprotector strictoverflow" '' + optionalString cc.langD or false '' hardening_unsupported_flags+=" format" + '' + optionalString cc.langFortran or false '' + hardening_unsupported_flags+=" format" '' + optionalString targetPlatform.isWasm '' hardening_unsupported_flags+=" stackprotector fortify pie pic" '' diff --git a/pkgs/data/misc/mailcap/default.nix b/pkgs/data/misc/mailcap/default.nix index 3519b01f54b..06c8047e1ca 100644 --- a/pkgs/data/misc/mailcap/default.nix +++ b/pkgs/data/misc/mailcap/default.nix @@ -1,23 +1,25 @@ -{ lib, fetchzip }: +{ lib, stdenv, fetchurl }: -let +stdenv.mkDerivation rec { + pname = "mailcap"; version = "2.1.53"; -in fetchzip { - name = "mailcap-${version}"; + src = fetchurl { + url = "https://releases.pagure.org/mailcap/mailcap-${version}.tar.xz"; + sha256 = "sha256-Xuou8XswSXe6PsuHr61DGfoEQPgl5Pb7puj6L/64h4U="; + }; - url = "https://releases.pagure.org/mailcap/mailcap-${version}.tar.xz"; - sha256 = "sha256-6JPj2tZgoTEZ8hNEi9ZZhElBNm9SRTSXifMmCicwiLo="; + installPhase = '' + runHook preInstall - postFetch = '' - tar -xavf $downloadedFile --strip-components=1 substituteInPlace mailcap --replace "/usr/bin/" "" - gzip mailcap.5 sh generate-nginx-mimetypes.sh < mime.types > nginx-mime.types install -D -m0644 nginx-mime.types $out/etc/nginx/mime.types install -D -m0644 -t $out/etc mailcap mime.types - install -D -m0644 -t $out/share/man/man5 mailcap.5.gz + install -D -m0644 -t $out/share/man/man5 mailcap.5 + + runHook postInstall ''; meta = with lib; { diff --git a/pkgs/data/misc/mobile-broadband-provider-info/default.nix b/pkgs/data/misc/mobile-broadband-provider-info/default.nix index 234016175d2..8f5ce0d0202 100644 --- a/pkgs/data/misc/mobile-broadband-provider-info/default.nix +++ b/pkgs/data/misc/mobile-broadband-provider-info/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "mobile-broadband-provider-info"; - version = "20220315"; + version = "20220511"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-H82sctF52xQnl4Nm9wG+HDx1Nf1aZYvFzIKCR8b2RcY="; + sha256 = "sha256-dfk+iGZh8DWYMsPigjyvqG505AgEJbjOCpw7DQqyp3Q="; }; nativeBuildInputs = [ diff --git a/pkgs/development/compilers/dtc/default.nix b/pkgs/development/compilers/dtc/default.nix index f64579dc583..78290cfc423 100644 --- a/pkgs/development/compilers/dtc/default.nix +++ b/pkgs/development/compilers/dtc/default.nix @@ -1,5 +1,15 @@ -{ stdenv, lib, fetchgit, flex, bison, pkg-config, which -, pythonSupport ? false, python ? null, swig, libyaml +{ stdenv +, lib +, fetchgit +, fetchpatch +, flex +, bison +, pkg-config +, which +, pythonSupport ? false +, python ? null +, swig +, libyaml }: stdenv.mkDerivation rec { @@ -12,8 +22,17 @@ stdenv.mkDerivation rec { sha256 = "sha256-gx9LG3U9etWhPxm7Ox7rOu9X5272qGeHqZtOe68zFs4="; }; + patches = [ + # fix python 3.10 compatibility + # based on without requiring the setup.py rework + # https://git.kernel.org/pub/scm/utils/dtc/dtc.git/commit/?id=383e148b70a47ab15f97a19bb999d54f9c3e810f + ./python-3.10.patch + ]; + + nativeBuildInputs = [ flex bison pkg-config which ] + ++ lib.optionals pythonSupport [ python swig ]; + buildInputs = [ libyaml ]; - nativeBuildInputs = [ flex bison pkg-config which ] ++ lib.optionals pythonSupport [ python swig ]; postPatch = '' patchShebangs pylibfdt/ diff --git a/pkgs/development/compilers/dtc/python-3.10.patch b/pkgs/development/compilers/dtc/python-3.10.patch new file mode 100644 index 00000000000..e6725a6831f --- /dev/null +++ b/pkgs/development/compilers/dtc/python-3.10.patch @@ -0,0 +1,28 @@ +diff --git a/pylibfdt/libfdt.i b/pylibfdt/libfdt.i +index 51ee801..075ef70 100644 +--- a/pylibfdt/libfdt.i ++++ b/pylibfdt/libfdt.i +@@ -1044,9 +1044,9 @@ typedef uint32_t fdt32_t; + $result = Py_None; + else + %#if PY_VERSION_HEX >= 0x03000000 +- $result = Py_BuildValue("y#", $1, *arg4); ++ $result = Py_BuildValue("y#", $1, (Py_ssize_t)*arg4); + %#else +- $result = Py_BuildValue("s#", $1, *arg4); ++ $result = Py_BuildValue("s#", $1, (Py_ssize_t)*arg4); + %#endif + } + +diff --git a/pylibfdt/setup.py b/pylibfdt/setup.py +index ef40f15..81e161a 100755 +--- a/pylibfdt/setup.py ++++ b/pylibfdt/setup.py +@@ -42,6 +42,7 @@ def get_version(): + libfdt_module = Extension( + '_libfdt', + sources=[os.path.join(srcdir, 'libfdt.i')], ++ define_macros=[('PY_SSIZE_T_CLEAN', None)], + include_dirs=[os.path.join(srcdir, '../libfdt')], + libraries=['fdt'], + library_dirs=[os.path.join(top_builddir, 'libfdt')], diff --git a/pkgs/development/compilers/gcc/9/default.nix b/pkgs/development/compilers/gcc/9/default.nix index 2ecfa1bb1cf..30ae18e4917 100644 --- a/pkgs/development/compilers/gcc/9/default.nix +++ b/pkgs/development/compilers/gcc/9/default.nix @@ -58,22 +58,12 @@ with lib; with builtins; let majorVersion = "9"; - /* - If you update, please build on aarch64-linux - and check braces adjacent to `cplusplus` lines in file - ./result/lib/gcc/aarch64-unknown-linux-gnu/9.*.0/include/arm_acle.h - */ - version = "${majorVersion}.3.0"; + version = "${majorVersion}.5.0"; inherit (stdenv) buildPlatform hostPlatform targetPlatform; patches = - # Fix ICE: Max. number of generated reload insns per insn is achieved (90) - # - # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96796 - # - # This patch can most likely be removed by a post 9.3.0-release. - [ ./avoid-cycling-subreg-reloads.patch ./gcc9-asan-glibc-2.34.patch ] + [ ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch ++ optional targetPlatform.isNetBSD ../libstdc++-netbsd-ctypes.patch ++ optional noSysDirs ../no-sys-dirs.patch @@ -83,19 +73,13 @@ let majorVersion = "9"; sha256 = ""; # TODO: uncomment and check hash when available. }) */ ++ optional langAda ../gnat-cflags.patch - ++ optional langAda (fetchpatch { - name = "gnat-glibc-234.diff"; - url = "https://github.com/gcc-mirror/gcc/commit/331763de7d4850702a0f67298f36017c73cdb103.diff"; - sha256 = "eS4B7vJasnv2N+5v5yB8/iDpKPX8CJDAy2xabWWj+aU="; - }) ++ optional langD ../libphobos.patch ++ optional langFortran ../gfortran-driving.patch ++ optional (targetPlatform.libc == "musl" && targetPlatform.isPower) ../ppc-musl.patch # Obtain latest patch with ../update-mcfgthread-patches.sh ++ optional (!crossStageStatic && targetPlatform.isMinGW) ./Added-mcf-thread-model-support-from-mcfgthread.patch - - ++ [ ../libsanitizer-no-cyclades-9.patch ]; + ; /* Cross-gcc settings (build == host != target) */ crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt"; @@ -112,7 +96,7 @@ stdenv.mkDerivation ({ src = fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-${version}.tar.xz"; - sha256 = "1la2yy27ziasyf0jvzk58y1i5b5bq2h176qil550bxhifs39gqbi"; + sha256 = "13ygjmd938m0wmy946pxdhz9i1wq7z4w10l6pvidak0xxxj9yxi7"; }; inherit patches; diff --git a/pkgs/development/compilers/go/1.17.nix b/pkgs/development/compilers/go/1.17.nix index a2c0d3d16b9..94d3472ca69 100644 --- a/pkgs/development/compilers/go/1.17.nix +++ b/pkgs/development/compilers/go/1.17.nix @@ -60,11 +60,11 @@ in stdenv.mkDerivation rec { pname = "go"; - version = "1.17.10"; + version = "1.17.11"; src = fetchurl { url = "https://dl.google.com/go/go${version}.src.tar.gz"; - sha256 = "sha256-KZ5VrzDxVpGwFdjc+OyuckEkElaeWy7OIDYXU6RW8vk="; + sha256 = "sha256-rCZJpllExqWr5VBUAA7uPXcZaIDaNqNVX2LgZUDo61Q="; }; strictDeps = true; diff --git a/pkgs/development/compilers/go/1.18.nix b/pkgs/development/compilers/go/1.18.nix index 6f6e690e354..f5659dd92b7 100644 --- a/pkgs/development/compilers/go/1.18.nix +++ b/pkgs/development/compilers/go/1.18.nix @@ -60,11 +60,11 @@ in stdenv.mkDerivation rec { pname = "go"; - version = "1.18.2"; + version = "1.18.3"; src = fetchurl { url = "https://go.dev/dl/go${version}.src.tar.gz"; - sha256 = "sha256-LETQPqLDQJITerkZumAvLCYaA40I60aFKKPzoo5WZ+I="; + sha256 = "sha256-ABI4bdy7XzNQ5AfGeZI4EdvSg/zcQhckkxYUqELsvC0="; }; strictDeps = true; diff --git a/pkgs/development/interpreters/lua-5/CVE-2022-28805.patch b/pkgs/development/interpreters/lua-5/CVE-2022-28805.patch new file mode 100644 index 00000000000..bcf16acbea4 --- /dev/null +++ b/pkgs/development/interpreters/lua-5/CVE-2022-28805.patch @@ -0,0 +1,10 @@ +--- a/src/lparser.c ++++ b/src/lparser.c +@@ -301,6 +301,7 @@ + expdesc key; + singlevaraux(fs, ls->envn, var, 1); /* get environment variable */ + lua_assert(var->k == VLOCAL || var->k == VUPVAL); ++ luaK_exp2anyregup(fs, var); /* but could be a constant */ + codestring(ls, &key, varname); /* key is variable name */ + luaK_indexed(fs, var, &key); /* env[varname] */ + } diff --git a/pkgs/development/interpreters/lua-5/default.nix b/pkgs/development/interpreters/lua-5/default.nix index 5230a46afef..a160ee039f3 100644 --- a/pkgs/development/interpreters/lua-5/default.nix +++ b/pkgs/development/interpreters/lua-5/default.nix @@ -7,7 +7,17 @@ rec { hash = "1yxvjvnbg4nyrdv10bq42gz6dr66pyan28lgzfygqfwy2rv24qgq"; makeWrapper = makeBinaryWrapper; - patches = lib.optional stdenv.isDarwin ./5.4.darwin.patch; + patches = lib.optional stdenv.isDarwin ./5.4.darwin.patch + ++ [ + (fetchpatch { + name = "CVE-2022-28805.patch"; + url = "https://github.com/lua/lua/commit/1f3c6f4534c6411313361697d98d1145a1f030fa.patch"; + sha256 = "sha256-YTwoolSnRNJIHFPVijSO6ZDw35BG5oWYralZ8qOb9y8="; + stripLen = 1; + extraPrefix = "src/"; + excludes = [ "src/testes/*" ]; + }) + ]; }; lua5_4_compat = lua5_4.override({ @@ -32,7 +42,9 @@ rec { sourceVersion = { major = "5"; minor = "2"; patch = "4"; }; hash = "0jwznq0l8qg9wh5grwg07b5cy3lzngvl5m2nl1ikp6vqssmf9qmr"; makeWrapper = makeBinaryWrapper; - patches = lib.optional stdenv.isDarwin ./5.2.darwin.patch; + patches = [ + ./CVE-2022-28805.patch + ] ++ lib.optional stdenv.isDarwin ./5.2.darwin.patch; }; lua5_2_compat = lua5_2.override({ diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix index 0eb06650365..307633fc5d6 100644 --- a/pkgs/development/interpreters/python/default.nix +++ b/pkgs/development/interpreters/python/default.nix @@ -230,7 +230,7 @@ in { enableOptimizations = false; enableLTO = false; mimetypesSupport = false; - } // sources.python39)).overrideAttrs(old: { + } // sources.python310)).overrideAttrs(old: { # TODO(@Artturin): Add this to the main cpython expr strictDeps = true; pname = "python3-minimal"; diff --git a/pkgs/development/interpreters/spidermonkey/78.nix b/pkgs/development/interpreters/spidermonkey/78.nix index f2a68158266..0ce007057a2 100644 --- a/pkgs/development/interpreters/spidermonkey/78.nix +++ b/pkgs/development/interpreters/spidermonkey/78.nix @@ -4,7 +4,7 @@ , autoconf213 , pkg-config , perl -, python3 +, python39 , zip , buildPackages , which @@ -54,7 +54,7 @@ stdenv.mkDerivation rec { rustc.llvmPackages.llvm # for llvm-objdump perl pkg-config - python3 + python39 rust-cbindgen rustc which diff --git a/pkgs/development/libraries/dbus/default.nix b/pkgs/development/libraries/dbus/default.nix index e7852949249..4e41384847d 100644 --- a/pkgs/development/libraries/dbus/default.nix +++ b/pkgs/development/libraries/dbus/default.nix @@ -37,6 +37,10 @@ stdenv.mkDerivation rec { ] ++ (lib.optional stdenv.isSunOS ./implement-getgrouplist.patch); postPatch = '' + # We need to generate the file ourselves. + # https://gitlab.freedesktop.org/dbus/dbus/-/merge_requests/317 + rm doc/catalog.xml + substituteInPlace bus/Makefile.am \ --replace 'install-data-hook:' 'disabled:' \ --replace '$(mkinstalldirs) $(DESTDIR)$(localstatedir)/run/dbus' ':' @@ -98,6 +102,11 @@ stdenv.mkDerivation rec { doCheck = true; + makeFlags = [ + # Fix paths in XML catalog broken by mismatching build/install datadir. + "dtddir=${placeholder "out"}/share/xml/dbus-1" + ]; + installFlags = [ "sysconfdir=${placeholder "out"}/etc" "datadir=${placeholder "out"}/share" diff --git a/pkgs/development/libraries/dbus/make-dbus-conf.nix b/pkgs/development/libraries/dbus/make-dbus-conf.nix index ce5c0b3b577..35b232b2a32 100644 --- a/pkgs/development/libraries/dbus/make-dbus-conf.nix +++ b/pkgs/development/libraries/dbus/make-dbus-conf.nix @@ -1,4 +1,8 @@ -{ runCommand, writeText, libxslt, dbus +{ runCommand +, writeText +, libxslt +, dbus +, findXMLCatalogs , serviceDirectories ? [] , suidHelper ? "/var/setuid-wrappers/dbus-daemon-launch-helper" , apparmor ? "disabled" # one of enabled, disabled, required @@ -14,19 +18,15 @@ runCommand "dbus-1" inherit serviceDirectories suidHelper apparmor; preferLocalBuild = true; allowSubstitutes = false; - XML_CATALOG_FILES = writeText "dbus-catalog.xml" '' - <?xml version="1.0"?> - <!DOCTYPE catalog PUBLIC - "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN" - "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd"> - <catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog"> - <rewriteSystem - systemIdStartString="http://www.freedesktop.org/standards/dbus/1.0/" - rewritePrefix="file://${dbus}/share/xml/dbus-1/"/> - </catalog> - ''; - nativeBuildInputs = [ libxslt.bin ]; + nativeBuildInputs = [ + libxslt + findXMLCatalogs + ]; + + buildInputs = [ + dbus + ]; } '' mkdir -p $out diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix index 2c02bac92d2..29a1f642089 100644 --- a/pkgs/development/libraries/glib/default.nix +++ b/pkgs/development/libraries/glib/default.nix @@ -45,11 +45,11 @@ in stdenv.mkDerivation rec { pname = "glib"; - version = "2.72.1"; + version = "2.72.2"; src = fetchurl { url = "mirror://gnome/sources/glib/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "wH5XFHslTO+SzoCgN43AwCpDWOfeRwLp9AMGl4EJX+I="; + sha256 = "eNWZoTPbp/4gNt+o24+2Exq5ZCeD/JV4sHogmVJS0t4="; }; patches = optionals stdenv.isDarwin [ diff --git a/pkgs/development/libraries/gnu-efi/default.nix b/pkgs/development/libraries/gnu-efi/default.nix index ef8ef7648eb..f331a8f753b 100644 --- a/pkgs/development/libraries/gnu-efi/default.nix +++ b/pkgs/development/libraries/gnu-efi/default.nix @@ -1,24 +1,17 @@ -{ lib, stdenv, buildPackages, fetchurl, fetchpatch, pciutils }: +{ lib, stdenv, buildPackages, fetchurl, pciutils +, gitUpdater }: with lib; stdenv.mkDerivation rec { pname = "gnu-efi"; - version = "3.0.11"; + version = "3.0.14"; src = fetchurl { url = "mirror://sourceforge/gnu-efi/${pname}-${version}.tar.bz2"; - sha256 = "1ffnc4xbzfggs37ymrgfx76j56kk2644c081ivhr2bjkla9ag3gj"; + sha256 = "tztkOg1Wl9HzltdDFEjoht2AVmh4lXjj4aKCd8lShDU="; }; - patches = [ - # Fix build on armv6l - (fetchpatch { - url = "https://sourceforge.net/p/gnu-efi/patches/_discuss/thread/25bb273a18/9c4d/attachment/0001-Fix-ARCH-on-armv6-and-other-32-bit-ARM-platforms.patch"; - sha256 = "0pj03h20g2bbz6fr753bj1scry6919h57l1h86z3b6q7hqfj0b4r"; - }) - ]; - buildInputs = [ pciutils ]; hardeningDisable = [ "stackprotector" ]; @@ -29,6 +22,12 @@ stdenv.mkDerivation rec { "CROSS_COMPILE=${stdenv.cc.targetPrefix}" ]; + passthru.updateScript = gitUpdater { + inherit pname version; + # No nicer place to find latest release. + url = "https://git.code.sf.net/p/gnu-efi/code"; + }; + meta = with lib; { description = "GNU EFI development toolchain"; homepage = "https://sourceforge.net/projects/gnu-efi/"; diff --git a/pkgs/development/libraries/gstreamer/bad/default.nix b/pkgs/development/libraries/gstreamer/bad/default.nix index 758c4b091cd..28bcbe9a74c 100644 --- a/pkgs/development/libraries/gstreamer/bad/default.nix +++ b/pkgs/development/libraries/gstreamer/bad/default.nix @@ -93,6 +93,7 @@ , Foundation , MediaToolbox , enableGplPlugins ? true +, bluezSupport ? stdenv.isLinux }: stdenv.mkDerivation rec { @@ -181,8 +182,9 @@ stdenv.mkDerivation rec { mjpegtools faad2 x265 - ] ++ lib.optionals stdenv.isLinux [ + ] ++ lib.optionals bluezSupport [ bluez + ] ++ lib.optionals stdenv.isLinux [ libva # vaapi requires libva -> libdrm -> libpciaccess, which is Linux-only in nixpkgs wayland wayland-protocols @@ -264,12 +266,12 @@ stdenv.mkDerivation rec { "-Dgs=disabled" # depends on `google-cloud-cpp` "-Donnx=disabled" # depends on `libonnxruntime` not packaged in nixpkgs as of writing "-Dopenaptx=enabled" # since gstreamer-1.20.1 `libfreeaptx` is supported for circumventing the dubious license conflict with `libopenaptx` + "-Dbluez=${if bluezSupport then "enabled" else "disabled"}" ] ++ lib.optionals (!stdenv.isLinux) [ "-Dva=disabled" # see comment on `libva` in `buildInputs` ] ++ lib.optionals stdenv.isDarwin [ - "-Dbluez=disabled" "-Dchromaprint=disabled" "-Ddirectfb=disabled" "-Dflite=disabled" diff --git a/pkgs/development/libraries/jansson/default.nix b/pkgs/development/libraries/jansson/default.nix index 21a697f1e3a..aafbe839bd4 100644 --- a/pkgs/development/libraries/jansson/default.nix +++ b/pkgs/development/libraries/jansson/default.nix @@ -1,18 +1,28 @@ -{lib, stdenv, fetchurl}: +{ lib, stdenv, fetchFromGitHub, cmake }: stdenv.mkDerivation rec { pname = "jansson"; - version = "2.13.1"; + version = "2.14"; - src = fetchurl { - url = "https://digip.org/jansson/releases/${pname}-${version}.tar.gz"; - sha256 = "0ks7gbs0j8p4dmmi2sq129mxy5gfg0z6220i1jk020mi2zd7gwzl"; + src = fetchFromGitHub { + owner = "akheron"; + repo = "jansson"; + rev = "v${version}"; + sha256 = "sha256-FQgy2+g3AyRVJeniqPQj0KNeHgPdza2pmEIXqSyYry4="; }; + nativeBuildInputs = [ cmake ]; + + # networkmanager relies on libjansson.so: + # https://github.com/NixOS/nixpkgs/pull/176302#issuecomment-1150239453 + cmakeFlags = [ "-DJANSSON_BUILD_SHARED_LIBS=ON" ]; + meta = with lib; { - homepage = "http://www.digip.org/jansson/"; + homepage = "https://github.com/akheron/jansson"; description = "C library for encoding, decoding and manipulating JSON data"; + changelog = "https://github.com/akheron/jansson/raw/v${version}/CHANGES"; license = licenses.mit; platforms = platforms.all; + maintainers = [ maintainers.marsam ]; }; } diff --git a/pkgs/development/libraries/json-c/default.nix b/pkgs/development/libraries/json-c/default.nix index 5a77ea789af..d6aac7161d4 100644 --- a/pkgs/development/libraries/json-c/default.nix +++ b/pkgs/development/libraries/json-c/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "json-c"; - version = "0.15"; + version = "0.16"; src = fetchurl { url = "https://s3.amazonaws.com/json-c_releases/releases/${pname}-${version}.tar.gz"; - sha256 = "1im484iz08j3gmzpw07v16brwq46pxxj65i996kkp2vivcfhmn5q"; + sha256 = "sha256-jkWsj5bsd5Hq87t+5Q6cIQC7vIe40PHQMMW6igKI2Ws="; }; outputs = [ "out" "dev" ]; @@ -15,16 +15,15 @@ stdenv.mkDerivation rec { meta = with lib; { description = "A JSON implementation in C"; - homepage = "https://github.com/json-c/json-c/wiki"; - maintainers = with maintainers; [ lovek323 ]; - platforms = platforms.unix; - license = licenses.mit; - longDescription = '' JSON-C implements a reference counting object model that allows you to easily construct JSON objects in C, output them as JSON formatted strings and parse JSON formatted strings back into the C representation of JSON objects. ''; + homepage = "https://github.com/json-c/json-c/wiki"; + maintainers = with maintainers; [ lovek323 ]; + platforms = platforms.unix; + license = licenses.mit; }; } diff --git a/pkgs/development/libraries/libffi/default.nix b/pkgs/development/libraries/libffi/default.nix index 7387a4a1f06..0971091d8a1 100644 --- a/pkgs/development/libraries/libffi/default.nix +++ b/pkgs/development/libraries/libffi/default.nix @@ -7,11 +7,6 @@ , dejagnu }: -# Note: this package is used for bootstrapping fetchurl, and thus -# cannot use fetchpatch! All mutable patches (generated by GitHub or -# cgit) that are needed here should be included directly in Nixpkgs as -# files. - stdenv.mkDerivation rec { pname = "libffi"; version = "3.4.2"; @@ -21,7 +16,13 @@ stdenv.mkDerivation rec { sha256 = "081nx7wpzds168jbr59m34n6s3lyiq6r8zggvqxvlslsc4hvf3sl"; }; - patches = []; + # Note: this package is used for bootstrapping fetchurl, and thus + # cannot use fetchpatch! All mutable patches (generated by GitHub or + # cgit) that are needed here should be included directly in Nixpkgs as + # files. + patches = [ + ./libffi-powerpc64.patch + ]; strictDeps = true; outputs = [ "out" "dev" "man" "info" ]; diff --git a/pkgs/development/libraries/libffi/libffi-powerpc64.patch b/pkgs/development/libraries/libffi/libffi-powerpc64.patch new file mode 100644 index 00000000000..5748ac08498 --- /dev/null +++ b/pkgs/development/libraries/libffi/libffi-powerpc64.patch @@ -0,0 +1,23 @@ +https://github.com/libffi/libffi/issues/668 +--- a/src/powerpc/linux64.S ++++ b/src/powerpc/linux64.S +@@ -29,6 +29,8 @@ + #include <fficonfig.h> + #include <ffi.h> + ++ .machine altivec ++ + #ifdef POWERPC64 + .hidden ffi_call_LINUX64 + .globl ffi_call_LINUX64 +--- a/src/powerpc/linux64_closure.S ++++ b/src/powerpc/linux64_closure.S +@@ -30,6 +30,8 @@ + + .file "linux64_closure.S" + ++ .machine altivec ++ + #ifdef POWERPC64 + FFI_HIDDEN (ffi_closure_LINUX64) + .globl ffi_closure_LINUX64 diff --git a/pkgs/development/libraries/libqmi/default.nix b/pkgs/development/libraries/libqmi/default.nix index 0906d7b967c..fb2d4aa69c9 100644 --- a/pkgs/development/libraries/libqmi/default.nix +++ b/pkgs/development/libraries/libqmi/default.nix @@ -45,8 +45,8 @@ stdenv.mkDerivation rec { configureFlags = [ "--with-udev-base-dir=${placeholder "out"}/lib/udev" - "--enable-gtk-doc" - "--enable-introspection" + "--enable-gtk-doc=${if (stdenv.buildPlatform == stdenv.hostPlatform) then "yes" else "no"}" + "--enable-introspection=${if (stdenv.buildPlatform == stdenv.hostPlatform) then "yes" else "no"}" ]; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/libusb1/default.nix b/pkgs/development/libraries/libusb1/default.nix index 24b147d142d..3b23402fe33 100644 --- a/pkgs/development/libraries/libusb1/default.nix +++ b/pkgs/development/libraries/libusb1/default.nix @@ -13,13 +13,13 @@ stdenv.mkDerivation rec { pname = "libusb"; - version = "1.0.25"; + version = "1.0.26"; src = fetchFromGitHub { owner = "libusb"; repo = "libusb"; rev = "v${version}"; - sha256 = "141wygijjcgka0h31504cdlvih4l2j02j67pcbb2l527p7dbc5pn"; + sha256 = "sha256-LEy45YiFbueCCi8d2hguujMsxBezaTUERHUpFsTKGZQ="; }; outputs = [ "out" "dev" ]; diff --git a/pkgs/development/libraries/mapnik/default.nix b/pkgs/development/libraries/mapnik/default.nix index 14eb3c047e2..13e34bebee6 100644 --- a/pkgs/development/libraries/mapnik/default.nix +++ b/pkgs/development/libraries/mapnik/default.nix @@ -1,12 +1,15 @@ { lib, stdenv, fetchzip , boost, cairo, freetype, gdal, harfbuzz, icu, libjpeg, libpng, libtiff , libwebp, libxml2, proj, python3, python ? python3, sqlite, zlib +, sconsPackages # supply a postgresql package to enable the PostGIS input plugin , postgresql ? null }: -stdenv.mkDerivation rec { +let + scons = sconsPackages.scons_3_0_1; +in stdenv.mkDerivation rec { pname = "mapnik"; version = "3.1.0"; @@ -16,10 +19,16 @@ stdenv.mkDerivation rec { sha256 = "sha256-qqPqN4vs3ZsqKgnx21yQhX8OzHca/0O+3mvQ/vnC5EY="; }; + postPatch = '' + substituteInPlace configure \ + --replace '$PYTHON scons/scons.py' ${scons}/bin/scons + rm -r scons + ''; + # a distinct dev output makes python-mapnik fail outputs = [ "out" ]; - nativeBuildInputs = [ python3 ]; + nativeBuildInputs = [ scons ]; buildInputs = [ boost cairo freetype gdal harfbuzz icu libjpeg libpng libtiff diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix index 8954eae19b4..0e10135d3d3 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -34,7 +34,8 @@ with lib; let # Release calendar: https://www.mesa3d.org/release-calendar.html # Release frequency: https://www.mesa3d.org/releasing.html#schedule - version = "22.0.4"; + # 22.1 on darwin won't build: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6519 + version = if stdenv.isDarwin then "22.0.4" else "22.1.1"; branch = versions.major version; self = stdenv.mkDerivation { @@ -48,7 +49,10 @@ self = stdenv.mkDerivation { "ftp://ftp.freedesktop.org/pub/mesa/${version}/mesa-${version}.tar.xz" "ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz" ]; - sha256 = "1m0y8wgy48hmcidsr7sbk5hcw3v0qr8359fd2x34fvl2z9c1z5y7"; + sha256 = { + "22.1.1" = "1w8fpki67238l4yc92hsnsh4402py9zspirbmirxp577zxjhi526"; + "22.0.4" = "1m0y8wgy48hmcidsr7sbk5hcw3v0qr8359fd2x34fvl2z9c1z5y7"; + }.${version}; }; # TODO: diff --git a/pkgs/development/libraries/nss/esr.nix b/pkgs/development/libraries/nss/esr.nix index a958fa059d6..a789f0306d3 100644 --- a/pkgs/development/libraries/nss/esr.nix +++ b/pkgs/development/libraries/nss/esr.nix @@ -1,4 +1,4 @@ import ./generic.nix { - version = "3.68.3"; - sha256 = "sha256-5NDZsLVhfLM0gSZC7YAfjlH1mVyN2FwN78jMra/Lwzc="; + version = "3.68.4"; + hash = "sha256-K5/T9aG0nzs7KdEgAmdPcEgRViV1b7R3KELsfDm+Fgs="; } diff --git a/pkgs/development/libraries/nss/generic.nix b/pkgs/development/libraries/nss/generic.nix index 3affffda082..9a3d7bdfe27 100644 --- a/pkgs/development/libraries/nss/generic.nix +++ b/pkgs/development/libraries/nss/generic.nix @@ -1,4 +1,4 @@ -{ version, sha256 }: +{ version, hash }: { lib , stdenv , fetchurl @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://mozilla/security/nss/releases/NSS_${underscoreVersion}_RTM/src/${pname}-${version}.tar.gz"; - inherit sha256; + inherit hash; }; depsBuildBuild = [ buildPackages.stdenv.cc ]; diff --git a/pkgs/development/libraries/nss/latest.nix b/pkgs/development/libraries/nss/latest.nix index 622c9fca858..fa99543eb37 100644 --- a/pkgs/development/libraries/nss/latest.nix +++ b/pkgs/development/libraries/nss/latest.nix @@ -5,6 +5,6 @@ # Example: nix-shell ./maintainers/scripts/update.nix --argstr package cacert import ./generic.nix { - version = "3.78"; - sha256 = "sha256-9FXzQeeHwRZzKOgKhPd7mlV9WVBm3aZIahh01y2miAA="; + version = "3.79"; + hash = "sha256-698tapZhO2/nCtV56fmD4OlOARAXHPspmdtjPTOUpRQ="; } diff --git a/pkgs/development/libraries/openldap/default.nix b/pkgs/development/libraries/openldap/default.nix index c57aa560fc2..551a0827eee 100644 --- a/pkgs/development/libraries/openldap/default.nix +++ b/pkgs/development/libraries/openldap/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchurl +, fetchpatch # dependencies , cyrus_sasl @@ -21,6 +22,39 @@ stdenv.mkDerivation rec { hash = "sha256-gdCTRSMutiSG7PWsrNLFbAxFtKbIwGZhLn9CGiOhz4c"; }; + patches = [ + # ITS#9840 - ldif-filter: fix parallel build failure + (fetchpatch { + url = "https://github.com/openldap/openldap/commit/7d977f51e6dfa570a471d163b9e8255bdd3dc12f.patch"; + hash = "sha256:1vid6pj2gmqywbghnd380x19ml241ldc1fyslb6br6q27zpgbdlp"; + }) + # ITS#9840 - libraries/Makefile.in: ignore the mkdir errors + (fetchpatch { + url = "https://github.com/openldap/openldap/commit/71f24015c312171c00ce94c9ff9b9c6664bdca8d.patch"; + hash = "sha256:1a81vv6nkhgiadnj4g1wyzgzdp2zd151h0vkwvv9gzmqvhwcnc04"; + }) + # ITS#7165 back-mdb: check for stale readers on + (fetchpatch { + url = "https://github.com/openldap/openldap/commit/7e7f01c301db454e8c507999c77b55a1d97efc21.patch"; + hash = "sha256:1fc2yck2gn3zlpfqjdn56ar206npi8cmb8yg5ny4lww0ygmyzdfz"; + }) + # ITS#9858 back-mdb: delay indexer task startup + (fetchpatch { + url = "https://github.com/openldap/openldap/commit/ac061c684cc79d64ab4089fe3020921a0064a307.patch"; + hash = "sha256:01f0y50zlcj6n5mfkmb0di4p5vrlgn31zccx4a9k5m8vzxaqmw9d"; + }) + # ITS#9858 back-mdb: fix index reconfig + (fetchpatch { + url = "https://github.com/openldap/openldap/commit/c43c7a937cfb3a781f99b458b7ad71eb564a2bc2.patch"; + hash = "sha256:02yh0c8cyx14iir5qhfam5shrg5d3115s2nv0pmqdj6najrqc5mm"; + }) + # ITS#9157: check for NULL ld + (fetchpatch { + url = "https://github.com/openldap/openldap/commit/6675535cd6ad01f9519ecd5d75061a74bdf095c7.patch"; + hash = "sha256:0dali5ifcwba8400s065f0fizl9h44i0mzb06qgxhygff6yfrgif"; + }) + ]; + # TODO: separate "out" and "bin" outputs = [ "out" @@ -59,7 +93,7 @@ stdenv.mkDerivation rec { "ac_cv_func_memcmp_working=yes" ] ++ lib.optional stdenv.isFreeBSD "--with-pic"; - makeFlags= [ + makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" "STRIP=" # Disable install stripping as it breaks cross-compiling. We strip binaries anyway in fixupPhase. "prefix=${placeholder "out"}" @@ -81,7 +115,7 @@ stdenv.mkDerivation rec { ]; postBuild = '' - for module in ${lib.concatStringsSep " " extraContribModules}; do + for module in $extraContribModules; do make $makeFlags CC=$CC -C contrib/slapd-modules/$module done ''; @@ -105,7 +139,7 @@ stdenv.mkDerivation rec { ]; postInstall = '' - for module in ${lib.concatStringsSep " " extraContribModules}; do + for module in $extraContribModules; do make $installFlags install -C contrib/slapd-modules/$module done chmod +x "$out"/lib/*.{so,dylib} @@ -116,6 +150,6 @@ stdenv.mkDerivation rec { description = "An open source implementation of the Lightweight Directory Access Protocol"; license = licenses.openldap; maintainers = with maintainers; [ ajs124 das_j hexa ]; - platforms = platforms.unix; + platforms = platforms.unix; }; } diff --git a/pkgs/development/libraries/pipewire/default.nix b/pkgs/development/libraries/pipewire/default.nix index 96d8c9c2052..8d28ef5ad74 100644 --- a/pkgs/development/libraries/pipewire/default.nix +++ b/pkgs/development/libraries/pipewire/default.nix @@ -6,7 +6,9 @@ , python3 , meson , ninja +, eudev , systemd +, enableSystemd ? true , pkg-config , docutils , doxygen @@ -127,8 +129,8 @@ let vulkan-headers vulkan-loader webrtc-audio-processing - systemd - ] ++ lib.optionals gstreamerSupport [ gst_all_1.gst-plugins-base gst_all_1.gstreamer ] + ] ++ (if enableSystemd then [ systemd ] else [ eudev ]) + ++ lib.optionals gstreamerSupport [ gst_all_1.gst-plugins-base gst_all_1.gstreamer ] ++ lib.optionals libcameraSupport [ libcamera libdrm ] ++ lib.optional ffmpegSupport ffmpeg ++ lib.optionals bluezSupport [ bluez libfreeaptx ldacbt sbc fdk_aac ] @@ -153,7 +155,9 @@ let "-Dlibpulse=${mesonEnableFeature pulseTunnelSupport}" "-Davahi=${mesonEnableFeature zeroconfSupport}" "-Dgstreamer=${mesonEnableFeature gstreamerSupport}" - "-Dsystemd-system-service=enabled" + "-Dsystemd-system-service=${mesonEnableFeature enableSystemd}" + "-Dudev=${mesonEnableFeature (!enableSystemd)}" + "-Dudevrulesdir=${placeholder "out"}/lib/udev/rules.d" "-Dffmpeg=${mesonEnableFeature ffmpegSupport}" "-Dbluez5=${mesonEnableFeature bluezSupport}" "-Dbluez5-backend-hsp-native=${mesonEnableFeature nativeHspSupport}" @@ -193,8 +197,11 @@ let cp ${buildPackages.pipewire}/nix-support/*.json "$out/nix-support" ''} - moveToOutput "share/systemd/user/pipewire-pulse.*" "$pulse" - moveToOutput "lib/systemd/user/pipewire-pulse.*" "$pulse" + ${lib.optionalString enableSystemd '' + moveToOutput "share/systemd/user/pipewire-pulse.*" "$pulse" + moveToOutput "lib/systemd/user/pipewire-pulse.*" "$pulse" + ''} + moveToOutput "bin/pipewire-pulse" "$pulse" moveToOutput "bin/pw-jack" "$jack" diff --git a/pkgs/development/libraries/portaudio/default.nix b/pkgs/development/libraries/portaudio/default.nix index c1c76a90017..22ff1e450c1 100644 --- a/pkgs/development/libraries/portaudio/default.nix +++ b/pkgs/development/libraries/portaudio/default.nix @@ -3,6 +3,7 @@ , fetchurl , alsa-lib , pkg-config +, which , AudioUnit , AudioToolbox , CoreAudio @@ -18,7 +19,8 @@ stdenv.mkDerivation rec { sha256 = "1vrdrd42jsnffh6rq8ap2c6fr4g9fcld89z649fs06bwqx1bzvs7"; }; - nativeBuildInputs = [ pkg-config ]; + strictDeps = true; + nativeBuildInputs = [ pkg-config which ]; buildInputs = lib.optional (!stdenv.isDarwin) alsa-lib; configureFlags = [ "--disable-mac-universal" "--enable-cxx" ]; @@ -34,6 +36,11 @@ stdenv.mkDerivation rec { # https://github.com/PortAudio/portaudio/commit/28d2781d9216115543aa3f0a0ffb7b4ee0fac551.patch enableParallelBuilding = false; + postPatch = '' + # workaround for the configure script which expects an absolute path + export AR=$(which $AR) + ''; + # not sure why, but all the headers seem to be installed by the make install installPhase = '' make install diff --git a/pkgs/development/libraries/thrift/default.nix b/pkgs/development/libraries/thrift/default.nix index f85e56578bb..f54288b5a3f 100644 --- a/pkgs/development/libraries/thrift/default.nix +++ b/pkgs/development/libraries/thrift/default.nix @@ -1,5 +1,15 @@ -{ lib, stdenv, fetchurl, boost, zlib, libevent, openssl, python3, cmake, pkg-config -, bison, flex +{ lib +, stdenv +, fetchurl +, boost +, zlib +, libevent +, openssl +, python3 +, cmake +, pkg-config +, bison +, flex , static ? stdenv.hostPlatform.isStatic }: @@ -12,15 +22,39 @@ stdenv.mkDerivation rec { sha256 = "sha256-9GC1wcow2JGP+V6j62KRs5Uc9RhVNWYIjz8r6JgfYgk="; }; - # Workaround to make the python wrapper not drop this package: + # Workaround to make the Python wrapper not drop this package: # pythonFull.buildEnv.override { extraLibs = [ thrift ]; } pythonPath = []; - nativeBuildInputs = [ cmake pkg-config bison flex ]; - buildInputs = [ boost zlib libevent openssl ] - ++ lib.optionals (!static) [ (python3.withPackages (ps: [ps.twisted])) ]; + nativeBuildInputs = [ + bison + cmake + flex + pkg-config + ]; + + buildInputs = [ + boost + libevent + openssl + zlib + ] ++ lib.optionals (!static) [ + (python3.withPackages (ps: [ps.twisted])) + ]; + + postPatch = '' + # Python 3.10 related failures: + # SystemError: PY_SSIZE_T_CLEAN macro must be defined for '#' formats + # AttributeError: module 'collections' has no attribute 'Hashable' + substituteInPlace test/py/RunClientServer.py \ + --replace "'FastbinaryTest.py'," "" \ + --replace "'TestEof.py'," "" \ + --replace "'TestFrozen.py'," "" + ''; - preConfigure = "export PY_PREFIX=$out"; + preConfigure = '' + export PY_PREFIX=$out + ''; patches = [ # ToStringTest.cpp is failing from some reason due to locale issue, this @@ -43,12 +77,12 @@ stdenv.mkDerivation rec { disabledTests = [ "PythonTestSSLSocket" ] ++ lib.optionals stdenv.isDarwin [ - # tests that hang up in the darwin sandbox + # Tests that hang up in the Darwin sandbox "SecurityTest" "SecurityFromBufferTest" "python_test" - # tests that fail in the darwin sandbox when trying to use network + # Tests that fail in the Darwin sandbox when trying to use network "UnitTests" "TInterruptTest" "TServerIntegrationTest" @@ -62,6 +96,7 @@ stdenv.mkDerivation rec { ]; doCheck = !static; + checkPhase = '' runHook preCheck @@ -69,6 +104,7 @@ stdenv.mkDerivation rec { runHook postCheck ''; + enableParallelChecking = false; meta = with lib; { @@ -76,6 +112,6 @@ stdenv.mkDerivation rec { homepage = "https://thrift.apache.org/"; license = licenses.asl20; platforms = platforms.linux ++ platforms.darwin; - maintainers = [ maintainers.bjornfor ]; + maintainers = with maintainers; [ bjornfor ]; }; } diff --git a/pkgs/development/libraries/tracker/default.nix b/pkgs/development/libraries/tracker/default.nix index 5cb3dc73daa..8489655dcb6 100644 --- a/pkgs/development/libraries/tracker/default.nix +++ b/pkgs/development/libraries/tracker/default.nix @@ -29,13 +29,13 @@ stdenv.mkDerivation rec { pname = "tracker"; - version = "3.3.0"; + version = "3.3.1"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "Bwb5b+f5XfQqzsgSwd57RZOg1kgyHKg1BqnXHiJBe9o="; + sha256 = "Wtb1vJd4Hr9V7NaUfNSuf/QZJRZYDRC9g4Dx3UcZbtI="; }; nativeBuildInputs = [ @@ -79,11 +79,7 @@ stdenv.mkDerivation rec { doCheck = true; postPatch = '' - patchShebangs utils/g-ir-merge/g-ir-merge patchShebangs utils/data-generators/cc/generate - patchShebangs tests/functional-tests/test-runner.sh.in - patchShebangs tests/functional-tests/*.py - patchShebangs examples/python/endpoint.py ''; preCheck = '' diff --git a/pkgs/development/libraries/unicorn/default.nix b/pkgs/development/libraries/unicorn/default.nix index 30ceba76163..e558bbbbb54 100644 --- a/pkgs/development/libraries/unicorn/default.nix +++ b/pkgs/development/libraries/unicorn/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ lib +, stdenv , fetchFromGitHub , pkg-config , cmake @@ -7,17 +8,23 @@ stdenv.mkDerivation rec { pname = "unicorn"; - version = "2.0.0-rc5"; + version = "2.0.0-rc7"; src = fetchFromGitHub { owner = "unicorn-engine"; repo = pname; rev = version; - sha256 = "1q9k8swnq4qsi54zdfaap69z56w3yj4n4ggm9pscmmmr69nply5f"; + hash = "sha256-qlxtFCJBmouPuUEu8RduZM+rbOr52sGjdb8ZRHWmJ/w="; }; - nativeBuildInputs = [ pkg-config cmake ]; - buildInputs = lib.optionals stdenv.isDarwin [ IOKit ]; + nativeBuildInputs = [ + cmake + pkg-config + ]; + + buildInputs = lib.optionals stdenv.isDarwin [ + IOKit + ]; meta = with lib; { description = "Lightweight multi-platform CPU emulator library"; diff --git a/pkgs/development/libraries/xxHash/default.nix b/pkgs/development/libraries/xxHash/default.nix index f4fa0611281..336dd5b3257 100644 --- a/pkgs/development/libraries/xxHash/default.nix +++ b/pkgs/development/libraries/xxHash/default.nix @@ -1,4 +1,9 @@ -{ lib, stdenv, fetchFromGitHub }: +{ lib +, stdenv +, fetchFromGitHub +, cmake +, fetchurl +}: stdenv.mkDerivation rec { pname = "xxHash"; @@ -11,21 +16,27 @@ stdenv.mkDerivation rec { sha256 = "sha256-2WoYCO6QRHWrbGP2mK04/sLNTyQLOuL3urVktilAwMA="; }; - # Upstream Makefile does not anticipate that user may not want to - # build .so library. - postPatch = lib.optionalString stdenv.hostPlatform.isStatic '' - sed -i 's/lib: libxxhash.a libxxhash/lib: libxxhash.a/' Makefile - sed -i '/LIBXXH) $(DESTDIR/ d' Makefile - ''; + patches = [ + # Merged in https://github.com/Cyan4973/xxHash/pull/649 + # Should be present in next release + (fetchurl { + name = "cmakeinstallfix.patch"; + url = "https://github.com/Cyan4973/xxHash/commit/636f966ecc713c84ddd3b7ccfde2bfb2cc7492a0.patch"; + hash = "sha256-fj+5V5mDhFgWGvrG1E4fEekL4eh7as0ouVvY4wnIHjs="; + }) + ]; - outputs = [ "out" "dev" ]; - makeFlags = [ "PREFIX=$(dev)" "EXEC_PREFIX=$(out)" ]; + nativeBuildInputs = [ + cmake + ]; - # pkgs/build-support/setup-hooks/compress-man-pages.sh hook fails - # to compress symlinked manpages. Avoid compressing manpages until - # it's fixed. - dontGzipMan = true; + # Using unofficial CMake build script to install CMake module files. + cmakeDir = "../cmake_unofficial"; + + cmakeFlags = [ + "-DBUILD_SHARED_LIBS=${if stdenv.hostPlatform.isStatic then "OFF" else "ON"}" + ]; meta = with lib; { description = "Extremely fast hash algorithm"; @@ -39,6 +50,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/Cyan4973/xxHash"; license = with licenses; [ bsd2 gpl2 ]; maintainers = with maintainers; [ orivej ]; - platforms = platforms.unix; + platforms = platforms.all; }; } diff --git a/pkgs/development/libraries/zlib/comprehensive-crc-validation-for-wrong-implementations.patch b/pkgs/development/libraries/zlib/comprehensive-crc-validation-for-wrong-implementations.patch new file mode 100644 index 00000000000..85a6a7e3ab4 --- /dev/null +++ b/pkgs/development/libraries/zlib/comprehensive-crc-validation-for-wrong-implementations.patch @@ -0,0 +1,51 @@ +From ec3df00224d4b396e2ac6586ab5d25f673caa4c2 Mon Sep 17 00:00:00 2001 +From: Mark Adler <madler@alumni.caltech.edu> +Date: Wed, 30 Mar 2022 11:14:53 -0700 +Subject: [PATCH] Correct incorrect inputs provided to the CRC functions. + +The previous releases of zlib were not sensitive to incorrect CRC +inputs with bits set above the low 32. This commit restores that +behavior, so that applications with such bugs will continue to +operate as before. +--- + crc32.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/crc32.c b/crc32.c +index a1bdce5c2..451887bc7 100644 +--- a/crc32.c ++++ b/crc32.c +@@ -630,7 +630,7 @@ unsigned long ZEXPORT crc32_z(crc, buf, len) + #endif /* DYNAMIC_CRC_TABLE */ + + /* Pre-condition the CRC */ +- crc ^= 0xffffffff; ++ crc = (~crc) & 0xffffffff; + + /* Compute the CRC up to a word boundary. */ + while (len && ((z_size_t)buf & 7) != 0) { +@@ -749,7 +749,7 @@ unsigned long ZEXPORT crc32_z(crc, buf, len) + #endif /* DYNAMIC_CRC_TABLE */ + + /* Pre-condition the CRC */ +- crc ^= 0xffffffff; ++ crc = (~crc) & 0xffffffff; + + #ifdef W + +@@ -1077,7 +1077,7 @@ uLong ZEXPORT crc32_combine64(crc1, crc2, len2) + #ifdef DYNAMIC_CRC_TABLE + once(&made, make_crc_table); + #endif /* DYNAMIC_CRC_TABLE */ +- return multmodp(x2nmodp(len2, 3), crc1) ^ crc2; ++ return multmodp(x2nmodp(len2, 3), crc1) ^ (crc2 & 0xffffffff); + } + + /* ========================================================================= */ +@@ -1112,5 +1112,5 @@ uLong crc32_combine_op(crc1, crc2, op) + uLong crc2; + uLong op; + { +- return multmodp(op, crc1) ^ crc2; ++ return multmodp(op, crc1) ^ (crc2 & 0xffffffff); + } diff --git a/pkgs/development/libraries/zlib/default.nix b/pkgs/development/libraries/zlib/default.nix index 6681be3c34c..1527be44f7a 100644 --- a/pkgs/development/libraries/zlib/default.nix +++ b/pkgs/development/libraries/zlib/default.nix @@ -42,6 +42,12 @@ stdenv.mkDerivation (rec { patches = [ ./fix-configure-issue-cross.patch + # Starting zlib 1.2.12, zlib is stricter to incorrect CRC inputs + # with bits set above the low 32. + # see https://github.com/madler/zlib/issues/618 + # TODO: remove the patch if upstream releases https://github.com/madler/zlib/commit/ec3df00224d4b396e2ac6586ab5d25f673caa4c2 + # see https://github.com/NixOS/nixpkgs/issues/170539 for history. + ./comprehensive-crc-validation-for-wrong-implementations.patch ]; strictDeps = true; diff --git a/pkgs/development/python-modules/GitPython/default.nix b/pkgs/development/python-modules/GitPython/default.nix index dc909f5bcee..8d89c1af8d0 100644 --- a/pkgs/development/python-modules/GitPython/default.nix +++ b/pkgs/development/python-modules/GitPython/default.nix @@ -11,14 +11,14 @@ buildPythonPackage rec { pname = "gitpython"; - version = "3.1.25"; + version = "3.1.27"; disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "gitpython-developers"; repo = "GitPython"; rev = version; - sha256 = "sha256-ienc7zvLe6t8rkMtC6wVIewUqQBFdFbLc8iPT6aPVrE="; + sha256 = "sha256-RA+6JFXHUQoXGErV8+aYuJPsfXzNSZK3kTm6eMbQIss="; }; patches = [ diff --git a/pkgs/development/python-modules/Rtree/default.nix b/pkgs/development/python-modules/Rtree/default.nix index eb4dae8e3aa..0c599b18d73 100644 --- a/pkgs/development/python-modules/Rtree/default.nix +++ b/pkgs/development/python-modules/Rtree/default.nix @@ -1,32 +1,36 @@ -{ lib, - stdenv, - buildPythonPackage, - fetchPypi, - libspatialindex, - numpy, - pytestCheckHook +{ lib +, stdenv +, buildPythonPackage +, fetchPypi +, libspatialindex +, numpy +, pytestCheckHook +, pythonOlder }: buildPythonPackage rec { - pname = "Rtree"; - version = "0.9.7"; + pname = "rtree"; + version = "1.0.0"; + disabled = pythonOlder "3.7"; src = fetchPypi { - inherit pname version; - sha256 = "be8772ca34699a9ad3fb4cfe2cfb6629854e453c10b3328039301bbfc128ca3e"; + pname = "Rtree"; + inherit version; + sha256 = "sha256-0Eg0ghITRrCTuaQlGNQPkhrfRFkVt66jB+smdoyDloI="; }; - buildInputs = [ libspatialindex ]; - - patchPhase = '' + postPatch = '' substituteInPlace rtree/finder.py --replace \ - "find_library('spatialindex_c')" "'${libspatialindex}/lib/libspatialindex_c${stdenv.hostPlatform.extensions.sharedLibrary}'" + 'find_library("spatialindex_c")' '"${libspatialindex}/lib/libspatialindex_c${stdenv.hostPlatform.extensions.sharedLibrary}"' ''; + buildInputs = [ libspatialindex ]; + checkInputs = [ numpy pytestCheckHook ]; + pythonImportsCheck = [ "rtree" ]; meta = with lib; { diff --git a/pkgs/development/python-modules/aiomysql/default.nix b/pkgs/development/python-modules/aiomysql/default.nix index b52760d2069..420b3aaf8b9 100644 --- a/pkgs/development/python-modules/aiomysql/default.nix +++ b/pkgs/development/python-modules/aiomysql/default.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "aiomysql"; - version = "0.1.0"; + version = "0.1.1"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -18,7 +18,7 @@ buildPythonPackage rec { owner = "aio-libs"; repo = pname; rev = "v${version}"; - hash = "sha256-TNaQ4EKiHwSmPpUco0pA5SBP3fljWQ/Kd5RLs649fu0="; + hash = "sha256-rYEos2RuE2xI59httYlN21smBH4/fU4uT48FWwrI6Qg="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/aiosteamist/default.nix b/pkgs/development/python-modules/aiosteamist/default.nix index aa7edc001de..785d0f61036 100644 --- a/pkgs/development/python-modules/aiosteamist/default.nix +++ b/pkgs/development/python-modules/aiosteamist/default.nix @@ -32,7 +32,8 @@ buildPythonPackage rec { postPatch = '' substituteInPlace pyproject.toml \ - --replace "--cov=aiosteamist" "" + --replace "--cov=aiosteamist" "" \ + --replace 'xmltodict = "^0.12.0"' 'xmltodict = "*"' ''; pythonImportsCheck = [ diff --git a/pkgs/development/python-modules/ansible-later/default.nix b/pkgs/development/python-modules/ansible-later/default.nix index 39a1d6d1d19..5e7f717634a 100644 --- a/pkgs/development/python-modules/ansible-later/default.nix +++ b/pkgs/development/python-modules/ansible-later/default.nix @@ -63,7 +63,7 @@ buildPythonPackage rec { --replace " --cov=ansiblelater --cov-report=xml:coverage.xml --cov-report=term --cov-append --no-cov-on-fail" "" \ --replace 'PyYAML = "6.0"' 'PyYAML = "*"' \ --replace 'unidiff = "0.7.3"' 'unidiff = "*"' \ - --replace 'jsonschema = "4.6.0"' 'jsonschema = "*"' + --replace 'jsonschema = "' 'jsonschema = "^' ''; postInstall = '' diff --git a/pkgs/development/python-modules/antlr4-python3-runtime/default.nix b/pkgs/development/python-modules/antlr4-python3-runtime/default.nix index 0fade1362c9..d0e8d4fab43 100644 --- a/pkgs/development/python-modules/antlr4-python3-runtime/default.nix +++ b/pkgs/development/python-modules/antlr4-python3-runtime/default.nix @@ -9,8 +9,9 @@ buildPythonPackage rec { sourceRoot = "source/runtime/Python3"; + # in 4.9, test was renamed to tests checkPhase = '' - cd test + cd test* ${python.interpreter} ctest.py ''; diff --git a/pkgs/development/python-modules/apipkg/default.nix b/pkgs/development/python-modules/apipkg/default.nix index 241ddfaa11a..1b6528ab300 100644 --- a/pkgs/development/python-modules/apipkg/default.nix +++ b/pkgs/development/python-modules/apipkg/default.nix @@ -3,11 +3,11 @@ buildPythonPackage rec { pname = "apipkg"; - version = "2.1.0"; + version = "2.1.1"; src = fetchPypi { inherit pname version; - sha256 = "a4be31cf8081e660d2cdea6edfb8a0f39f385866abdcfcfa45e5a0887345cb70"; + sha256 = "sha256-zKNAIkFKE5duM6HjjWoJBWfve2jQNy+SPGmaj4wIivw="; }; nativeBuildInputs = [ setuptools-scm ]; diff --git a/pkgs/development/python-modules/asgiref/default.nix b/pkgs/development/python-modules/asgiref/default.nix index 2ea9f4130f9..4ccbe3175cc 100644 --- a/pkgs/development/python-modules/asgiref/default.nix +++ b/pkgs/development/python-modules/asgiref/default.nix @@ -6,11 +6,10 @@ , pytest-asyncio , pytestCheckHook , pythonOlder -, fetchpatch }: buildPythonPackage rec { - version = "3.5.0"; + version = "3.5.2"; pname = "asgiref"; format = "setuptools"; @@ -20,17 +19,9 @@ buildPythonPackage rec { owner = "django"; repo = pname; rev = version; - sha256 = "sha256-eWDsd8iWK1C/X3t/fKAM1i4hyTM/daGTd8CDSgDTL/U="; + sha256 = "sha256-56suF63ePRDprqODhVIPCEGiO8UGgWrpwg2wYEs6OOE="; }; - patches = [ - (fetchpatch { - name = "remove-sock-nonblock-in-tests.patch"; - url = "https://github.com/django/asgiref/commit/d451a724c93043b623e83e7f86743bbcd9a05c45.patch"; - sha256 = "0whdsn5isln4dqbqqngvsy4yxgaqgpnziz0cndj1zdxim8cdicj7"; - }) - ]; - propagatedBuildInputs = [ async-timeout ]; diff --git a/pkgs/development/python-modules/astroid/default.nix b/pkgs/development/python-modules/astroid/default.nix index 539787403c6..dc28b10d7b9 100644 --- a/pkgs/development/python-modules/astroid/default.nix +++ b/pkgs/development/python-modules/astroid/default.nix @@ -5,17 +5,18 @@ , pythonOlder , isPyPy , lazy-object-proxy -, wrapt +, setuptools +, setuptools-scm , typing-extensions , typed-ast -, pytestCheckHook -, setuptools-scm , pylint +, pytestCheckHook +, wrapt }: buildPythonPackage rec { pname = "astroid"; - version = "2.11.2"; # Check whether the version is compatible with pylint + version = "2.11.5"; # Check whether the version is compatible with pylint disabled = pythonOlder "3.6.2"; @@ -23,7 +24,7 @@ buildPythonPackage rec { owner = "PyCQA"; repo = pname; rev = "v${version}"; - sha256 = "sha256-adnvJCchsMWQxsIlenndUb6Mw1MgCNAanZcTmssmsEc="; + sha256 = "sha256-GKda3hNdOrsd11pi+6NpYodW4TAgSvqbv2hF4GaIvtM="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; @@ -34,19 +35,19 @@ buildPythonPackage rec { propagatedBuildInputs = [ lazy-object-proxy + setuptools wrapt ] ++ lib.optionals (pythonOlder "3.10") [ typing-extensions - ] ++ lib.optional (!isPyPy && pythonOlder "3.8") typed-ast; + ] ++ lib.optionals (!isPyPy && pythonOlder "3.8") [ + typed-ast + ]; checkInputs = [ pytestCheckHook ]; disabledTests = [ - # assert (1, 1) == (1, 16) - "test_end_lineno_string" - ] ++ lib.optionals (pythonAtLeast "3.10") [ # AssertionError: Lists differ: ['ABC[16 chars]yBase', 'Final', 'Generic', 'MyProtocol', 'Protocol', 'object'] != ['ABC[16 chars]yBase', 'Final', 'Generic', 'MyProtocol', 'object'] "test_mro_typing_extensions" ]; @@ -59,7 +60,6 @@ buildPythonPackage rec { description = "An abstract syntax tree for Python with inference support"; homepage = "https://github.com/PyCQA/astroid"; license = licenses.lgpl21Plus; - platforms = platforms.all; - maintainers = with maintainers; [ ]; + maintainers = with maintainers; [ SuperSandro2000 ]; }; } diff --git a/pkgs/development/python-modules/audible/default.nix b/pkgs/development/python-modules/audible/default.nix index 987859fbcdd..2d4f3ac4df0 100644 --- a/pkgs/development/python-modules/audible/default.nix +++ b/pkgs/development/python-modules/audible/default.nix @@ -14,10 +14,12 @@ buildPythonPackage rec { propagatedBuildInputs = [ beautifulsoup4 httpx pbkdf2 pillow pyaes rsa ]; postPatch = '' - substituteInPlace setup.py \ - --replace 'httpx>=0.20.*,<=0.22.*' 'httpx' + sed -i "s/httpx.*/httpx',/" setup.py ''; + # has no tests + doCheck = false; + pythonImportsCheck = [ "audible"]; meta = with lib; { diff --git a/pkgs/development/python-modules/azure-data-tables/default.nix b/pkgs/development/python-modules/azure-data-tables/default.nix new file mode 100644 index 00000000000..7f2933e01a5 --- /dev/null +++ b/pkgs/development/python-modules/azure-data-tables/default.nix @@ -0,0 +1,34 @@ +{ lib +, buildPythonPackage +, fetchPypi +, azure-core +, msrest +}: + +buildPythonPackage rec { + pname = "azure-data-tables"; + version = "12.4.0"; + + src = fetchPypi { + inherit pname version; + extension = "zip"; + sha256 = "sha256-3V/I3pHi+JCO+kxkyn9jz4OzBoqbpCYpjeO1QTnpZlw="; + }; + + propagatedBuildInputs = [ + azure-core + msrest + ]; + + # has no tests + doCheck = false; + + pythonImportsCheck = [ "azure.data.tables" ]; + + meta = with lib; { + description = "NoSQL data storage service that can be accessed from anywhere"; + homepage = "https://github.com/Azure/azure-sdk-for-python"; + license = licenses.mit; + maintainers = with maintainers; [ jonringer ]; + }; +} diff --git a/pkgs/development/python-modules/azure-mgmt-consumption/default.nix b/pkgs/development/python-modules/azure-mgmt-consumption/default.nix index ce17bc60de5..aa9d27e680e 100644 --- a/pkgs/development/python-modules/azure-mgmt-consumption/default.nix +++ b/pkgs/development/python-modules/azure-mgmt-consumption/default.nix @@ -24,6 +24,12 @@ buildPythonPackage rec { azure-mgmt-nspkg ]; + preBuild = '' + rm -f azure_bdist_wheel.py + substituteInPlace setup.cfg \ + --replace "azure-namespace-package = azure-mgmt-nspkg" "" + ''; + pythonNamespaces = [ "azure.mgmt" ]; # has no tests diff --git a/pkgs/development/python-modules/azure-mgmt-containerinstance/default.nix b/pkgs/development/python-modules/azure-mgmt-containerinstance/default.nix index ae6d9755171..83e1163df46 100644 --- a/pkgs/development/python-modules/azure-mgmt-containerinstance/default.nix +++ b/pkgs/development/python-modules/azure-mgmt-containerinstance/default.nix @@ -11,12 +11,12 @@ buildPythonPackage rec { pname = "azure-mgmt-containerinstance"; - version = "9.1.0"; + version = "9.2.0"; src = fetchPypi { inherit pname version; extension = "zip"; - sha256 = "22164b0c59138b37bc48ba6d476bf635152bc428dcb420b521a14b8c25c797ad"; + sha256 = "sha256-3rElVUvbGqF99ppZanUUrwFGtCAXak2zhMVOd6n9bkY="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/azure-mgmt-containerregistry/default.nix b/pkgs/development/python-modules/azure-mgmt-containerregistry/default.nix index fae7318cd48..dc86f5acd73 100644 --- a/pkgs/development/python-modules/azure-mgmt-containerregistry/default.nix +++ b/pkgs/development/python-modules/azure-mgmt-containerregistry/default.nix @@ -6,13 +6,13 @@ }: buildPythonPackage rec { - version = "9.1.0"; + version = "10.0.0"; pname = "azure-mgmt-containerregistry"; disabled = isPy27; src = fetchPypi { inherit pname version; - sha256 = "sha256-jkzGLDqrJgwCnz27lGzFk4d2q+j0P+PU8uUVGQg7MkA="; + sha256 = "sha256-HjejK28Em5AeoQ20o4fucnXTlAwADF/SEpVfHn9anZk="; extension = "zip"; }; diff --git a/pkgs/development/python-modules/azure-mgmt-relay/default.nix b/pkgs/development/python-modules/azure-mgmt-relay/default.nix index a44825b55bd..a49080152ed 100644 --- a/pkgs/development/python-modules/azure-mgmt-relay/default.nix +++ b/pkgs/development/python-modules/azure-mgmt-relay/default.nix @@ -24,6 +24,12 @@ buildPythonPackage rec { azure-mgmt-nspkg ]; + preBuild = '' + rm -f azure_bdist_wheel.py + substituteInPlace setup.cfg \ + --replace "azure-namespace-package = azure-mgmt-nspkg" "" + ''; + pythonNamespaces = [ "azure.mgmt" ]; # has no tests diff --git a/pkgs/development/python-modules/azure-storage-blob/default.nix b/pkgs/development/python-modules/azure-storage-blob/default.nix index a64ba934887..80ce4a49538 100644 --- a/pkgs/development/python-modules/azure-storage-blob/default.nix +++ b/pkgs/development/python-modules/azure-storage-blob/default.nix @@ -11,12 +11,12 @@ buildPythonPackage rec { pname = "azure-storage-blob"; - version = "12.11.0"; + version = "12.12.0"; src = fetchPypi { inherit pname version; extension = "zip"; - sha256 = "sha256-SVNbMZC7adDZ/3o4MkaxTaTSsb3/YMrl+Rc5IMZ8p+4="; + sha256 = "sha256-9trwfRyobRia4VybGFnf9bcSe/JKB6S75B4LgeAdYvc="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/beautifulsoup4/default.nix b/pkgs/development/python-modules/beautifulsoup4/default.nix index 2a59ac00f7a..ee11ead039e 100644 --- a/pkgs/development/python-modules/beautifulsoup4/default.nix +++ b/pkgs/development/python-modules/beautifulsoup4/default.nix @@ -1,6 +1,7 @@ { lib , buildPythonPackage , fetchPypi +, chardet , html5lib , lxml , pytestCheckHook @@ -22,7 +23,12 @@ buildPythonPackage rec { hash = "sha256-rZqlW2XvKAjrQF9Gz3Tff8twRNXLwmSH+W6y7y5DZpM="; }; + nativeBuildInputs = [ + sphinxHook + ]; + propagatedBuildInputs = [ + chardet html5lib lxml soupsieve @@ -31,7 +37,6 @@ buildPythonPackage rec { checkInputs = [ pytestCheckHook ]; - nativeBuildInputs = [ sphinxHook ]; pythonImportsCheck = [ "bs4" diff --git a/pkgs/development/python-modules/billiard/default.nix b/pkgs/development/python-modules/billiard/default.nix index f02bef97ba3..a2aaa1027c5 100644 --- a/pkgs/development/python-modules/billiard/default.nix +++ b/pkgs/development/python-modules/billiard/default.nix @@ -25,6 +25,11 @@ buildPythonPackage rec { pytestCheckHook ]; + disabledTests = [ + # psutil.NoSuchProcess: process no longer exists (pid=168) + "test_set_pdeathsig" + ]; + pythonImportsCheck = [ "billiard" ]; diff --git a/pkgs/development/python-modules/botocore/default.nix b/pkgs/development/python-modules/botocore/default.nix index 52b8d8d37fc..6774189043c 100644 --- a/pkgs/development/python-modules/botocore/default.nix +++ b/pkgs/development/python-modules/botocore/default.nix @@ -4,7 +4,6 @@ , python-dateutil , jmespath , docutils -, ordereddict , simplejson , mock , nose @@ -24,7 +23,6 @@ buildPythonPackage rec { python-dateutil jmespath docutils - ordereddict simplejson urllib3 ]; diff --git a/pkgs/development/python-modules/cachecontrol/default.nix b/pkgs/development/python-modules/cachecontrol/default.nix index bee126fbf16..529975f1080 100644 --- a/pkgs/development/python-modules/cachecontrol/default.nix +++ b/pkgs/development/python-modules/cachecontrol/default.nix @@ -7,12 +7,13 @@ , msgpack , pytestCheckHook , pythonOlder +, redis , requests }: buildPythonPackage rec { pname = "cachecontrol"; - version = "0.12.10"; + version = "0.12.11"; format = "setuptools"; disabled = pythonOlder "3.6"; @@ -21,11 +22,10 @@ buildPythonPackage rec { owner = "ionrock"; repo = pname; rev = "v${version}"; - hash = "sha256-mgvL0q10UbPHY1H3tJprke5p8qNl3HNYoeLAERZTcTs="; + hash = "sha256-uUPIQz/n347Q9G7NDOGuB760B/KxOglUxiS/rYjt5Po="; }; propagatedBuildInputs = [ - lockfile msgpack requests ]; @@ -34,12 +34,17 @@ buildPythonPackage rec { cherrypy mock pytestCheckHook - ]; + ] ++ passthru.optional-dependencies.filecache; pythonImportsCheck = [ "cachecontrol" ]; + passthru.optional-dependencies = { + filecache = [ lockfile ]; + redis = [ redis ]; + }; + meta = with lib; { description = "Httplib2 caching for requests"; homepage = "https://github.com/ionrock/cachecontrol"; diff --git a/pkgs/development/python-modules/cachetools/default.nix b/pkgs/development/python-modules/cachetools/default.nix index f38eb328e3d..9de26ad5339 100644 --- a/pkgs/development/python-modules/cachetools/default.nix +++ b/pkgs/development/python-modules/cachetools/default.nix @@ -7,7 +7,7 @@ buildPythonPackage rec { pname = "cachetools"; - version = "5.0.0"; + version = "5.2.0"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -16,7 +16,7 @@ buildPythonPackage rec { owner = "tkem"; repo = pname; rev = "v${version}"; - hash = "sha256-urTkls1S83m7Eo7chPaQc5gxz0omZBToNYa8upQEiOo="; + hash = "sha256-DheHTD62f1ZxoiS0y0/CzDMHvKGmEiEUAX6oaqTpB78="; }; checkInputs = [ diff --git a/pkgs/development/python-modules/certbot/default.nix b/pkgs/development/python-modules/certbot/default.nix index 72a5d8db39d..b32c3ecd9f8 100644 --- a/pkgs/development/python-modules/certbot/default.nix +++ b/pkgs/development/python-modules/certbot/default.nix @@ -9,13 +9,13 @@ buildPythonPackage rec { pname = "certbot"; - version = "1.24.0"; + version = "1.27.0"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - sha256 = "sha256-XIKFEPQKIV5s6sZ7LRnlTvsb3cF4KIaiVZ36cAN1AwA="; + sha256 = "sha256-3IKRVR1rLpOH22Mp2m0InqcPt85+jQgBSyrRL9/nMxY="; }; sourceRoot = "source/${pname}"; diff --git a/pkgs/development/python-modules/certifi/default.nix b/pkgs/development/python-modules/certifi/default.nix index bc361806d87..bef7c64ea13 100644 --- a/pkgs/development/python-modules/certifi/default.nix +++ b/pkgs/development/python-modules/certifi/default.nix @@ -7,7 +7,7 @@ buildPythonPackage rec { pname = "certifi"; - version = "2021.10.08"; + version = "2022.05.18.1"; disabled = pythonOlder "3.5"; @@ -15,7 +15,7 @@ buildPythonPackage rec { owner = pname; repo = "python-certifi"; rev = version; - sha256 = "sha256-SFb/spVHK15b53ZG1P147DcTjs1dqR0+MBXzpE+CWpo="; + sha256 = "sha256-uDNVzKcT45mz0zXBwPkttKV21fEcgbRamE3+QutNLjA="; }; checkInputs = [ diff --git a/pkgs/development/python-modules/cfn-flip/default.nix b/pkgs/development/python-modules/cfn-flip/default.nix index 105775a4547..f19a6aba260 100644 --- a/pkgs/development/python-modules/cfn-flip/default.nix +++ b/pkgs/development/python-modules/cfn-flip/default.nix @@ -19,7 +19,7 @@ buildPythonPackage rec { owner = "awslabs"; repo = "aws-cfn-template-flip"; rev = version; - hash = "sha256-1cV0mHc6+P0CbnLIMSSwNEzDB+1QzNjioH/EoIo40xU="; + hash = "sha256-lfhTR3+D1FvblhQGF83AB8+I8WDPBTmo+q22ksgDgt4="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/cherrypy/default.nix b/pkgs/development/python-modules/cherrypy/default.nix index f4272f90d62..6690a913beb 100644 --- a/pkgs/development/python-modules/cherrypy/default.nix +++ b/pkgs/development/python-modules/cherrypy/default.nix @@ -8,9 +8,11 @@ , objgraph , path , portend +, pyopenssl , pytest-forked , pytest-services , pytestCheckHook +, python-memcached , pythonAtLeast , pythonOlder , requests-toolbelt @@ -38,15 +40,11 @@ buildPythonPackage rec { ]; propagatedBuildInputs = [ - # required cheroot portend more-itertools zc_lockfile jaraco_collections - # optional - routes - simplejson ]; checkInputs = [ @@ -90,6 +88,15 @@ buildPythonPackage rec { "cherrypy" ]; + passthru.optional-dependencies = { + json = [ simplejson ]; + memcached_session = [ python-memcached ]; + routes_dispatcher = [ routes ]; + ssl = [ pyopenssl ]; + # not packaged yet + xcgi = [ /* flup */ ]; + }; + meta = with lib; { description = "Object-oriented HTTP framework"; homepage = "https://www.cherrypy.org"; diff --git a/pkgs/development/python-modules/cloudpickle/default.nix b/pkgs/development/python-modules/cloudpickle/default.nix index 0e0debe9329..d33f4dbee35 100644 --- a/pkgs/development/python-modules/cloudpickle/default.nix +++ b/pkgs/development/python-modules/cloudpickle/default.nix @@ -1,28 +1,46 @@ -{ lib, buildPythonPackage, fetchPypi, isPy27, pytest, mock }: +{ lib +, buildPythonPackage +, fetchPypi +, psutil +, pytestCheckHook +, pythonOlder +}: buildPythonPackage rec { pname = "cloudpickle"; - version = "2.0.0"; - disabled = isPy27; # abandoned upstream + version = "2.1.0"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "5cd02f3b417a783ba84a4ec3e290ff7929009fe51f6405423cfccfadd43ba4a4"; + hash = "sha256-uyM+h2pYSR2VkKZ2+Tx6VHOgj3R9Wrnff5zlZLPnk44="; }; - buildInputs = [ pytest mock ]; + checkInputs = [ + psutil + pytestCheckHook + ]; + + pythonImportsCheck = [ + "cloudpickle" + ]; - # See README for tests invocation - checkPhase = '' - PYTHONPATH=$PYTHONPATH:'.:tests' py.test - ''; + disabledTestPaths = [ + # ModuleNotFoundError: No module named '_cloudpickle_testpkg' + "tests/cloudpickle_test.py" + ]; - # TypeError: cannot serialize '_io.FileIO' object - doCheck = false; + disabledTests = [ + # TypeError: cannot pickle 'EncodedFile' object + "test_pickling_special_file_handles" + ]; meta = with lib; { description = "Extended pickling support for Python objects"; homepage = "https://github.com/cloudpipe/cloudpickle"; license = with licenses; [ bsd3 ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/python-modules/colorama/default.nix b/pkgs/development/python-modules/colorama/default.nix index 1d472035b2f..f362bbd30b3 100644 --- a/pkgs/development/python-modules/colorama/default.nix +++ b/pkgs/development/python-modules/colorama/default.nix @@ -12,10 +12,13 @@ buildPythonPackage rec { # No tests in archive doCheck = false; + pythonImportsCheck = [ "colorama" ]; + meta = with lib; { + description = "Cross-platform colored terminal text"; homepage = "https://github.com/tartley/colorama"; license = licenses.bsd3; - description = "Cross-platform colored terminal text"; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/python-modules/configobj/default.nix b/pkgs/development/python-modules/configobj/default.nix index 746c5f35f25..3ea89db527e 100644 --- a/pkgs/development/python-modules/configobj/default.nix +++ b/pkgs/development/python-modules/configobj/default.nix @@ -1,29 +1,38 @@ -{ lib, buildPythonPackage +{ lib +, buildPythonPackage , fetchFromGitHub +, mock +, pytestCheckHook +, pythonOlder , six -, mock, pytest }: buildPythonPackage rec { pname = "configobj"; version = "5.0.6"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; - # Pypi archives don't contain the tests src = fetchFromGitHub { owner = "DiffSK"; repo = pname; rev = "v${version}"; - sha256 = "0x97794nk3dfn0i3si9fv7y19jnpnarb34bkdwlz7ii7ag6xihhw"; + hash = "sha256-HMLYzVMnxvMpb3ORsbKy18oU/NkuRT0isK6NaUk6J3U="; }; + propagatedBuildInputs = [ + six + ]; - propagatedBuildInputs = [ six ]; - - checkPhase = '' - pytest --deselect=tests/test_configobj.py::test_options_deprecation - ''; + checkInputs = [ + mock + pytestCheckHook + ]; - checkInputs = [ mock pytest ]; + pythonImportsCheck = [ + "configobj" + ]; meta = with lib; { description = "Config file reading, writing and validation"; diff --git a/pkgs/development/python-modules/constantly/default.nix b/pkgs/development/python-modules/constantly/default.nix index e3a9c642f47..b75eca71636 100644 --- a/pkgs/development/python-modules/constantly/default.nix +++ b/pkgs/development/python-modules/constantly/default.nix @@ -9,6 +9,8 @@ buildPythonPackage rec { sha256 = "0dgwdla5kfpqz83hfril716inm41hgn9skxskvi77605jbmp4qsq"; }; + pythonImportsCheck = [ "constantly" ]; + meta = with lib; { homepage = "https://github.com/twisted/constantly"; description = "symbolic constant support"; diff --git a/pkgs/development/python-modules/cryptography/default.nix b/pkgs/development/python-modules/cryptography/default.nix index b4048366ed5..08314f71308 100644 --- a/pkgs/development/python-modules/cryptography/default.nix +++ b/pkgs/development/python-modules/cryptography/default.nix @@ -12,7 +12,9 @@ , isPyPy , cffi , pytestCheckHook +, pytest-benchmark , pytest-subtests +, pythonOlder , pretend , libiconv , iso8601 @@ -25,18 +27,19 @@ let in buildPythonPackage rec { pname = "cryptography"; - version = "36.0.2"; # Also update the hash in vectors.nix + version = "37.0.2"; # Also update the hash in vectors.nix + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "sha256-cPj097sqyfNAZVy6yJ1oxSevW7Q4dSKoQT6EHj5mKMk="; + sha256 = "sha256-8iStJTzJzqdWj0kHcAfSJj76VzlqLy94EUBm/VS1xo4="; }; cargoDeps = rustPlatform.fetchCargoTarball { inherit src; sourceRoot = "${pname}-${version}/${cargoRoot}"; name = "${pname}-${version}"; - sha256 = "sha256-6C4N445h4Xf2nCc9rJWpSZaNPilR9GfgbmKvNlSIFqg="; + sha256 = "sha256-qvrxvneoBXjP96AnUPyrtfmCnZo+IriHR5HbtWQ5Gk8="; }; cargoRoot = "src/rust"; @@ -63,6 +66,7 @@ buildPythonPackage rec { iso8601 pretend pytestCheckHook + pytest-benchmark pytest-subtests pytz ]; diff --git a/pkgs/development/python-modules/cryptography/vectors.nix b/pkgs/development/python-modules/cryptography/vectors.nix index 99372090726..d2c2beb9aba 100644 --- a/pkgs/development/python-modules/cryptography/vectors.nix +++ b/pkgs/development/python-modules/cryptography/vectors.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "cryptography_vectors"; inherit version; - sha256 = "sha256-KnkkRJoDAl+vf4dUpvQgAAHKshBzSmzmrB9r2s06aOQ="; + sha256 = "sha256-fGXT3lF1b0GBQt9gVBfsLG6WHDZPcMyKEDAwiJ1aMhk="; }; # No tests included diff --git a/pkgs/development/python-modules/cssutils/default.nix b/pkgs/development/python-modules/cssutils/default.nix index 265504938df..39cdd6fb972 100644 --- a/pkgs/development/python-modules/cssutils/default.nix +++ b/pkgs/development/python-modules/cssutils/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "cssutils"; - version = "2.4.0"; + version = "2.4.1"; disabled = pythonOlder "3.7"; @@ -25,7 +25,7 @@ buildPythonPackage rec { src = fetchPypi { inherit pname version; - hash = "sha256-LZchCoOwo/4eRGn1/5pkILB4VyA1GIsbq3EDw6NtyJs="; + hash = "sha256-+Gicb66TTLanB3xwZvLGAmwOkN560wqBaz9tWaE41jg="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/dask-gateway-server/default.nix b/pkgs/development/python-modules/dask-gateway-server/default.nix index f55a2fe7509..5ef21c545fa 100644 --- a/pkgs/development/python-modules/dask-gateway-server/default.nix +++ b/pkgs/development/python-modules/dask-gateway-server/default.nix @@ -1,25 +1,31 @@ { lib -, buildPythonPackage -, fetchPypi , aiohttp +, buildPythonPackage , colorlog , cryptography -, traitlets +, fetchFromGitHub , go -, isPy27 +, pythonOlder +, traitlets }: buildPythonPackage rec { pname = "dask-gateway-server"; # update dask-gateway-server lock step with dask-gateway - version = "0.9.0"; - disabled = isPy27; + version = "2022.4.0"; + format = "setuptools"; - src = fetchPypi { - inherit pname version; - sha256 = "82bca8a98fc1dbda9f67c8eceac59cb92abe07db6227c120a1eb1d040ea40fda"; + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "dask"; + repo = "dask-gateway"; + rev = version; + hash = "sha256-Grjp7gt3Pos4cQSGV/Rynz6W/zebRI0OqDiWT4cTh8I="; }; + sourceRoot = "${src.name}/${pname}"; + nativeBuildInputs = [ go ]; @@ -36,15 +42,17 @@ buildPythonPackage rec { export GO111MODULE=off ''; - # tests requires cluster for testing + # Tests requires cluster for testing doCheck = false; - pythonImportsCheck = [ "dask_gateway_server" ]; + pythonImportsCheck = [ + "dask_gateway_server" + ]; meta = with lib; { description = "A multi-tenant server for securely deploying and managing multiple Dask clusters"; homepage = "https://gateway.dask.org/"; license = licenses.bsd3; - maintainers = [ maintainers.costrouc ]; + maintainers = with maintainers; [ costrouc ]; }; } diff --git a/pkgs/development/python-modules/dask-glm/default.nix b/pkgs/development/python-modules/dask-glm/default.nix index 9072a691c20..bd9b468064d 100644 --- a/pkgs/development/python-modules/dask-glm/default.nix +++ b/pkgs/development/python-modules/dask-glm/default.nix @@ -1,33 +1,63 @@ { lib , buildPythonPackage -, fetchPypi , cloudpickle , dask -, numpy, toolz # dask[array] +, distributed +, fetchPypi , multipledispatch -, setuptools-scm -, scipy -, scikit-learn , pytestCheckHook +, pythonOlder +, scikit-learn +, scipy +, setuptools-scm +, sparse }: buildPythonPackage rec { - version = "0.2.0"; pname = "dask-glm"; + version = "0.2.0"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "58b86cebf04fe5b9e58092e1c467e32e60d01e11b71fdc628baaa9fc6d1adee5"; + hash = "sha256-WLhs6/BP5bnlgJLhxGfjLmDQHhG3H9xii6qp/G0a3uU="; }; - nativeBuildInputs = [ setuptools-scm ]; - checkInputs = [ pytestCheckHook ]; - propagatedBuildInputs = [ cloudpickle dask numpy toolz multipledispatch scipy scikit-learn ]; + nativeBuildInputs = [ + setuptools-scm + ]; + + propagatedBuildInputs = [ + cloudpickle + distributed + multipledispatch + scikit-learn + scipy + sparse + ] ++ dask.optional-dependencies.array; + + checkInputs = [ + sparse + pytestCheckHook + ]; + + pythonImportsCheck = [ + "dask_glm" + ]; + + disabledTestPaths = [ + # Circular dependency with dask-ml + "dask_glm/tests/test_estimators.py" + # Test tries to imort an obsolete method + "dask_glm/tests/test_utils.py" + ]; meta = with lib; { - homepage = "https://github.com/dask/dask-glm/"; description = "Generalized Linear Models with Dask"; + homepage = "https://github.com/dask/dask-glm/"; license = licenses.bsd3; - maintainers = [ maintainers.costrouc ]; + maintainers = with maintainers; [ costrouc ]; }; } diff --git a/pkgs/development/python-modules/dask-ml/default.nix b/pkgs/development/python-modules/dask-ml/default.nix index d069532cffa..ee3365955db 100644 --- a/pkgs/development/python-modules/dask-ml/default.nix +++ b/pkgs/development/python-modules/dask-ml/default.nix @@ -13,7 +13,6 @@ , scikit-learn , scipy , setuptools-scm -, toolz }: buildPythonPackage rec { @@ -33,7 +32,6 @@ buildPythonPackage rec { ]; propagatedBuildInputs = [ - dask dask-glm distributed multipledispatch @@ -43,8 +41,8 @@ buildPythonPackage rec { pandas scikit-learn scipy - toolz - ]; + ] ++ dask.optional-dependencies.array + ++ dask.optional-dependencies.dataframe; # has non-standard build from source, and pypi doesn't include tests doCheck = false; diff --git a/pkgs/development/python-modules/dask/default.nix b/pkgs/development/python-modules/dask/default.nix index 59869efbffd..3aec3e25228 100644 --- a/pkgs/development/python-modules/dask/default.nix +++ b/pkgs/development/python-modules/dask/default.nix @@ -4,6 +4,7 @@ , buildPythonPackage , cloudpickle , distributed +, fastparquet , fetchFromGitHub , fetchpatch , fsspec @@ -12,17 +13,20 @@ , packaging , pandas , partd +, pyarrow , pytest-rerunfailures , pytest-xdist , pytestCheckHook , pythonOlder , pyyaml +, scipy , toolz +, zarr }: buildPythonPackage rec { pname = "dask"; - version = "2022.02.1"; + version = "2022.05.2"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -31,7 +35,7 @@ buildPythonPackage rec { owner = "dask"; repo = pname; rev = version; - hash = "sha256-A8ktvfpow/QKAEEt9SUnkTqYFJCrV1mgnuDIP3gdyrE="; + hash = "sha256-8M70Pf31PhYnBPRhSG55eWg6gK0lxsIFKF+cRCsf0/U="; }; propagatedBuildInputs = [ @@ -41,48 +45,71 @@ buildPythonPackage rec { partd pyyaml toolz - pandas - jinja2 - bokeh - numpy ]; - doCheck = true; + passthru.optional-dependencies = { + array = [ + numpy + ]; + complete = [ + distributed + ]; + dataframe = [ + numpy + pandas + ]; + distributed = [ + distributed + ]; + diagnostics = [ + bokeh + jinja2 + ]; + }; checkInputs = [ + fastparquet + pyarrow pytestCheckHook pytest-rerunfailures pytest-xdist + scipy + zarr ]; dontUseSetuptoolsCheck = true; postPatch = '' - # versioneer hack to set version of github package + # versioneer hack to set version of GitHub package echo "def get_versions(): return {'dirty': False, 'error': None, 'full-revisionid': None, 'version': '${version}'}" > dask/_version.py substituteInPlace setup.py \ --replace "version=versioneer.get_version()," "version='${version}'," \ --replace "cmdclass=versioneer.get_cmdclass()," "" + + substituteInPlace setup.cfg \ + --replace " --durations=10" "" \ + --replace " -v" "" ''; pytestFlagsArray = [ - # rerun failed tests up to three times + # Rerun failed tests up to three times "--reruns 3" - # don't run tests that require network access + # Don't run tests that require network access "-m 'not network'" + # Ignore warning about pyarrow 5.0.0 feautres + "-W" + "ignore::FutureWarning" ]; disabledTests = lib.optionals stdenv.isDarwin [ - # this test requires features of python3Packages.psutil that are + # Test requires features of python3Packages.psutil that are # blocked in sandboxed-builds "test_auto_blocksize_csv" + # AttributeError: 'str' object has no attribute 'decode' + "test_read_dir_nometa" ] ++ [ - # A deprecation warning from newer sqlalchemy versions makes these tests - # to fail https://github.com/dask/dask/issues/7406 - "test_sql" - # Test interrupt fails intermittently https://github.com/dask/dask/issues/2192 - "test_interrupt" + "test_chunksize_files" ]; __darwinAllowLocalNetworking = true; @@ -98,10 +125,6 @@ buildPythonPackage rec { "dask.diagnostics" ]; - passthru.optional-dependencies = { - complete = [ distributed ]; - }; - meta = with lib; { description = "Minimal task scheduling abstraction"; homepage = "https://dask.org/"; diff --git a/pkgs/development/python-modules/databases/default.nix b/pkgs/development/python-modules/databases/default.nix index 518d2066853..05431026ec8 100644 --- a/pkgs/development/python-modules/databases/default.nix +++ b/pkgs/development/python-modules/databases/default.nix @@ -14,7 +14,7 @@ buildPythonPackage rec { pname = "databases"; - version = "0.5.5"; + version = "0.6.0"; format = "setuptools"; disabled = pythonOlder "3.6"; @@ -23,7 +23,7 @@ buildPythonPackage rec { owner = "encode"; repo = pname; rev = version; - hash = "sha256-NOXK1UCQzqvJRfzsgIfpihuD9oF52sMD+BxqUHWF8Rk="; + hash = "sha256-5+x735EFX9B25HgXiqzUJm0nbF7tDF5FOQVnbYQyomE="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/distributed/default.nix b/pkgs/development/python-modules/distributed/default.nix index 2055c9de13e..426ee110790 100644 --- a/pkgs/development/python-modules/distributed/default.nix +++ b/pkgs/development/python-modules/distributed/default.nix @@ -1,57 +1,55 @@ { lib , buildPythonPackage -, fetchPypi , click , cloudpickle , dask +, fetchPypi +, jinja2 +, locket , msgpack +, packaging , psutil +, pythonOlder +, pyyaml , sortedcontainers , tblib , toolz , tornado +, urllib3 , zict -, pyyaml -, mpi4py -, bokeh -, pythonOlder }: buildPythonPackage rec { pname = "distributed"; - version = "2022.2.1"; + version = "2022.5.2"; format = "setuptools"; disabled = pythonOlder "3.7"; - # get full repository need conftest.py to run tests src = fetchPypi { inherit pname version; - hash = "sha256-+2KnWvjvM7vhqoCmjAGjOpPBzVozLdAXq0SVW/fs9ls="; + hash = "sha256-BEqsUfpk/Z4WsaLEMVIg0oHw5cwbBfTT03hSQm8efLY="; }; propagatedBuildInputs = [ - bokeh click cloudpickle dask - mpi4py + jinja2 + locket msgpack + packaging psutil pyyaml sortedcontainers tblib toolz tornado + urllib3 zict ]; - postPatch = '' - substituteInPlace requirements.txt \ - --replace "dask == 2022.02.0" "dask" - ''; - - # when tested random tests would fail and not repeatably + # When tested random tests would fail and not repeatably doCheck = false; pythonImportsCheck = [ diff --git a/pkgs/development/python-modules/fastapi-mail/default.nix b/pkgs/development/python-modules/fastapi-mail/default.nix index 9ce21b79492..8b3c6d0ed05 100644 --- a/pkgs/development/python-modules/fastapi-mail/default.nix +++ b/pkgs/development/python-modules/fastapi-mail/default.nix @@ -31,6 +31,12 @@ buildPythonPackage rec { hash = "sha256-2Nb+FzmhsKvauT/yOCLHCEld8r+6niu9kV6EmjhC6S0="; }; + postPatch = '' + substituteInPlace pyproject.toml \ + --replace 'fastapi = "^0.75.0"' 'fastapi = "*"' \ + --replace 'httpx = "^0.22.0"' 'httpx = "*"' + ''; + nativeBuildInputs = [ poetry-core ]; diff --git a/pkgs/development/python-modules/fastapi/default.nix b/pkgs/development/python-modules/fastapi/default.nix index 3d418d75333..5366745a6f0 100644 --- a/pkgs/development/python-modules/fastapi/default.nix +++ b/pkgs/development/python-modules/fastapi/default.nix @@ -7,7 +7,6 @@ , pytest-asyncio , aiosqlite , databases -, fetchpatch , flask , httpx , passlib @@ -20,7 +19,7 @@ buildPythonPackage rec { pname = "fastapi"; - version = "0.75.2"; + version = "0.78.0"; format = "flit"; disabled = pythonOlder "3.6"; @@ -29,9 +28,14 @@ buildPythonPackage rec { owner = "tiangolo"; repo = pname; rev = version; - hash = "sha256-B4q3Q256Sj4jTQt1TDm3fiEaQKdVxddCF9+KsxkkTWo="; + hash = "sha256-4JS0VLVg67O7VdcDw2k2u+98kiCdCHvCAEGHYGWEIOA="; }; + postPatch = '' + substituteInPlace pyproject.toml \ + --replace "starlette==" "starlette>=" + ''; + propagatedBuildInputs = [ starlette pydantic @@ -51,21 +55,6 @@ buildPythonPackage rec { trio ] ++ passlib.optional-dependencies.bcrypt; - patches = [ - # Bump starlette, https://github.com/tiangolo/fastapi/pull/4483 - (fetchpatch { - name = "support-later-starlette.patch"; - # PR contains multiple commits - url = "https://patch-diff.githubusercontent.com/raw/tiangolo/fastapi/pull/4483.patch"; - sha256 = "sha256-ZWaqAd/QYEYRL1hSQdXdFPgWgdmOill2GtmEn33vz2U="; - }) - ]; - - postPatch = '' - substituteInPlace pyproject.toml \ - --replace "starlette ==" "starlette >=" - ''; - pytestFlagsArray = [ # ignoring deprecation warnings to avoid test failure from # tests/test_tutorial/test_testing/test_tutorial001.py diff --git a/pkgs/development/python-modules/fastparquet/default.nix b/pkgs/development/python-modules/fastparquet/default.nix index 30aa6a2ab76..e11aac39f7e 100644 --- a/pkgs/development/python-modules/fastparquet/default.nix +++ b/pkgs/development/python-modules/fastparquet/default.nix @@ -8,28 +8,50 @@ , cramjam , fsspec , thrift +, python-lzo , pytestCheckHook +, pythonOlder }: buildPythonPackage rec { pname = "fastparquet"; version = "0.8.1"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "dask"; repo = pname; rev = version; - sha256 = "05qb4nz87p9vnrdsyl25hdp5sj35lki64gjza5dahc89fwfdnsmd"; + hash = "sha256-rWrbHHcJMahaUV8+YuKkZUhdboNFUK9btjvdg74lCxc="; }; + propagatedBuildInputs = [ + cramjam + fsspec + numba + numpy + pandas + thrift + ]; + + passthru.optional-dependencies = { + lzo = [ + python-lzo + ]; + }; + + checkInputs = [ + pytestCheckHook + ]; + postPatch = '' substituteInPlace setup.py \ --replace "'pytest-runner'," "" \ --replace "oldest-supported-numpy" "numpy" ''; - propagatedBuildInputs = [ cramjam fsspec numba numpy pandas thrift ]; - checkInputs = [ pytestCheckHook ]; # Workaround https://github.com/NixOS/nixpkgs/issues/123561 preCheck = '' @@ -43,7 +65,9 @@ buildPythonPackage rec { rm "$fastparquet_test" ''; - pythonImportsCheck = [ "fastparquet" ]; + pythonImportsCheck = [ + "fastparquet" + ]; meta = with lib; { description = "A python implementation of the parquet format"; diff --git a/pkgs/development/python-modules/filelock/default.nix b/pkgs/development/python-modules/filelock/default.nix index 16379ef85e1..5fdbd8c441f 100644 --- a/pkgs/development/python-modules/filelock/default.nix +++ b/pkgs/development/python-modules/filelock/default.nix @@ -1,20 +1,21 @@ { lib , buildPythonPackage -, pythonOlder , fetchPypi -, setuptools-scm , pytestCheckHook +, pythonOlder +, setuptools-scm }: buildPythonPackage rec { pname = "filelock"; - version = "3.6.0"; + version = "3.7.1"; format = "pyproject"; - disabled = pythonOlder "3.6"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "sha256-nNVAqTUuQyxyRqSP5OhxKxCssd8q0fMOjAcLgq4f7YU="; + hash = "sha256-Og/YUWatnbq1TJrslnN7dEEG3F8VwLCaZ0SkRSmfzwQ="; }; nativeBuildInputs = [ @@ -26,8 +27,8 @@ buildPythonPackage rec { ]; meta = with lib; { - homepage = "https://github.com/benediktschmitt/py-filelock"; description = "A platform independent file lock for Python"; + homepage = "https://github.com/benediktschmitt/py-filelock"; license = licenses.unlicense; maintainers = with maintainers; [ hyphon81 ]; }; diff --git a/pkgs/development/python-modules/flask-limiter/default.nix b/pkgs/development/python-modules/flask-limiter/default.nix index 41822555016..c593c855c70 100644 --- a/pkgs/development/python-modules/flask-limiter/default.nix +++ b/pkgs/development/python-modules/flask-limiter/default.nix @@ -6,7 +6,6 @@ , hiro , limits , mock -, ordereddict , pymemcache , pytestCheckHook , redis @@ -32,7 +31,6 @@ buildPythonPackage rec { redis flask-restful pymemcache - ordereddict ]; postPatch = '' diff --git a/pkgs/development/python-modules/flickrapi/default.nix b/pkgs/development/python-modules/flickrapi/default.nix index 8ad1071cd24..c13541acd83 100644 --- a/pkgs/development/python-modules/flickrapi/default.nix +++ b/pkgs/development/python-modules/flickrapi/default.nix @@ -4,6 +4,7 @@ , requests , requests-toolbelt , requests-oauthlib +, six , pytestCheckHook , responses , pythonOlder @@ -27,6 +28,7 @@ buildPythonPackage rec { requests requests-toolbelt requests-oauthlib + six ]; checkInputs = [ diff --git a/pkgs/development/python-modules/fonttools/default.nix b/pkgs/development/python-modules/fonttools/default.nix index a667f631eb1..ba9929caacc 100644 --- a/pkgs/development/python-modules/fonttools/default.nix +++ b/pkgs/development/python-modules/fonttools/default.nix @@ -1,19 +1,25 @@ { lib +, stdenv , buildPythonPackage -, fetchFromGitHub , pythonOlder -, brotlipy -, zopfli +, isPyPy +, fetchFromGitHub +, setuptools-scm +, fs , lxml +, brotli +, brotlicffi +, zopfli +, unicodedata2 +, lz4 , scipy , munkres -, unicodedata2 +, matplotlib , sympy -, reportlab -, sphinx +, xattr +, skia-pathops +, uharfbuzz , pytestCheckHook -, glibcLocales -, setuptools-scm }: buildPythonPackage rec { @@ -31,28 +37,32 @@ buildPythonPackage rec { nativeBuildInputs = [ setuptools-scm ]; - # all dependencies are optional, but - # we run the checks with them + passthru.optional-dependencies = let + extras = { + ufo = [ fs ]; + lxml = [ lxml ]; + woff = [ (if isPyPy then brotlicffi else brotli) zopfli ]; + unicode = lib.optional (pythonOlder "3.11") unicodedata2; + graphite = [ lz4 ]; + interpolatable = [ (if isPyPy then munkres else scipy) ]; + plot = [ matplotlib ]; + symfont = [ sympy ]; + type1 = lib.optional stdenv.isDarwin xattr; + pathops = [ skia-pathops ]; + repacker = [ uharfbuzz ]; + }; + in extras // { + all = lib.concatLists (lib.attrValues extras); + }; checkInputs = [ pytestCheckHook - # etree extra - lxml - # woff extra - brotlipy - zopfli - # interpolatable extra - scipy - munkres - # symfont - sympy - # pens - reportlab - sphinx - ] ++ lib.optionals (pythonOlder "3.9") [ - # unicode extra - unicodedata2 - ]; + ] ++ lib.concatLists (lib.attrVals [ + "woff" + "interpolatable" + "pathops" + "repacker" + ] passthru.optional-dependencies); pythonImportsCheck = [ "fontTools" ]; diff --git a/pkgs/development/python-modules/fsspec/default.nix b/pkgs/development/python-modules/fsspec/default.nix index 7ff15774889..844f3968164 100644 --- a/pkgs/development/python-modules/fsspec/default.nix +++ b/pkgs/development/python-modules/fsspec/default.nix @@ -1,29 +1,32 @@ { lib , stdenv +, aiohttp , buildPythonPackage , fetchFromGitHub -, pythonOlder -, pytestCheckHook , numpy -, aiohttp -, pytest-vcr -, pytest-mock +, paramiko , pytest-asyncio +, pytest-mock +, pytest-vcr +, pytestCheckHook +, pythonOlder , requests -, paramiko , smbprotocol +, tqdm }: buildPythonPackage rec { pname = "fsspec"; - version = "2022.3.0"; - disabled = pythonOlder "3.6"; + version = "2022.5.0"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "intake"; repo = "filesystem_spec"; rev = version; - sha256 = "sha256-jTF8R0kaHMsCYg+7YFi21Homn63K+ulp9NDZC/jkIXM="; + hash = "sha256-WOzw9UPF8LZuOhp5p/CJUUJcYpAfixV6GiI8tfnoklc="; }; propagatedBuildInputs = [ @@ -31,13 +34,14 @@ buildPythonPackage rec { paramiko requests smbprotocol + tqdm ]; checkInputs = [ numpy - pytest-vcr - pytest-mock pytest-asyncio + pytest-mock + pytest-vcr pytestCheckHook ]; @@ -58,13 +62,15 @@ buildPythonPackage rec { "test_touch" ]; - pythonImportsCheck = [ "fsspec" ]; + pythonImportsCheck = [ + "fsspec" + ]; meta = with lib; { - homepage = "https://github.com/intake/filesystem_spec"; description = "A specification that Python filesystems should adhere to"; + homepage = "https://github.com/intake/filesystem_spec"; changelog = "https://github.com/fsspec/filesystem_spec/raw/${version}/docs/source/changelog.rst"; license = licenses.bsd3; - maintainers = [ maintainers.costrouc ]; + maintainers = with maintainers; [ costrouc ]; }; } diff --git a/pkgs/development/python-modules/gcsfs/default.nix b/pkgs/development/python-modules/gcsfs/default.nix index 82791db5bcc..85a88dc3d5b 100644 --- a/pkgs/development/python-modules/gcsfs/default.nix +++ b/pkgs/development/python-modules/gcsfs/default.nix @@ -18,7 +18,7 @@ buildPythonPackage rec { pname = "gcsfs"; - version = "2022.3.0"; + version = "2022.5.0"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -27,7 +27,7 @@ buildPythonPackage rec { owner = "fsspec"; repo = pname; rev = version; - hash = "sha256-+Bchwsa8Jj7WBWbzyH+GQuqZki4EltMryumKt4Pm1es="; + hash = "sha256-gIkK1VSg1h04+MQBoxFtXIdn80faJlgQ9ayqV5p0RMU="; }; propagatedBuildInputs = [ @@ -55,7 +55,9 @@ buildPythonPackage rec { "gcsfs/tests/test_retry.py" ]; - pytestFlagsArray = [ "-x" ]; + pytestFlagsArray = [ + "-x" + ]; pythonImportsCheck = [ "gcsfs" diff --git a/pkgs/development/python-modules/gdown/default.nix b/pkgs/development/python-modules/gdown/default.nix index 305fd93c963..7399d141a56 100644 --- a/pkgs/development/python-modules/gdown/default.nix +++ b/pkgs/development/python-modules/gdown/default.nix @@ -26,7 +26,8 @@ buildPythonApplication rec { tqdm setuptools six - ]; + ] + ++ requests.optional-dependencies.socks; checkPhase = '' $out/bin/gdown --help > /dev/null diff --git a/pkgs/development/python-modules/glances-api/default.nix b/pkgs/development/python-modules/glances-api/default.nix index 8394f791832..79f30b89d31 100644 --- a/pkgs/development/python-modules/glances-api/default.nix +++ b/pkgs/development/python-modules/glances-api/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "glances-api"; - version = "0.3.5"; + version = "0.3.6"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "home-assistant-ecosystem"; repo = "python-glances-api"; rev = version; - sha256 = "sha256-8NWrsiiKevIMeD++C2weRdG0FPm5T4fHMUSJM4J+AOo="; + sha256 = "sha256-2H8S08tntCNKwMw553/wuWLXmri7b2tLxFlgCDJWQNQ="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/globus-sdk/default.nix b/pkgs/development/python-modules/globus-sdk/default.nix index 1d2ee112a43..af46b9c675f 100644 --- a/pkgs/development/python-modules/globus-sdk/default.nix +++ b/pkgs/development/python-modules/globus-sdk/default.nix @@ -8,6 +8,7 @@ , pythonOlder , requests , responses +, six , typing-extensions }: @@ -37,6 +38,7 @@ buildPythonPackage rec { mypy pytestCheckHook responses + six ]; postPatch = '' diff --git a/pkgs/development/python-modules/graph-tool/default.nix b/pkgs/development/python-modules/graph-tool/default.nix index c8725dfd116..61545e3a2ec 100644 --- a/pkgs/development/python-modules/graph-tool/default.nix +++ b/pkgs/development/python-modules/graph-tool/default.nix @@ -1,18 +1,34 @@ -{ fetchurl, python, cairomm, sparsehash, pycairo, autoreconfHook -, pkg-config, boost, expat, scipy, cgal, gmp, mpfr -, gobject-introspection, pygobject3, gtk3, matplotlib, ncurses -, buildPythonPackage +{ buildPythonPackage , lib +, fetchurl + +, autoreconfHook +, boost +, cairomm +, cgal +, expat +, gmp +, gobject-introspection +, gtk3 +, matplotlib +, mpfr +, numpy +, pkg-config +, pycairo +, pygobject3 +, python +, scipy +, sparsehash }: buildPythonPackage rec { pname = "graph-tool"; format = "other"; - version = "2.43"; + version = "2.45"; src = fetchurl { url = "https://downloads.skewed.de/graph-tool/graph-tool-${version}.tar.bz2"; - hash = "sha256-XxvuCUIgz7JIaNsPr0f44v/Sb3fdcJmVhC5NnomNqGw="; + hash = "sha256-+S2nrM/aArKXke/k8LPtkzKfJyMq9NOvwHySQh7Ghmg="; }; configureFlags = [ @@ -23,34 +39,35 @@ buildPythonPackage rec { "--enable-openmp" ]; - nativeBuildInputs = [ autoreconfHook pkg-config ]; - buildInputs = [ ncurses ]; + enableParallelBuilding = true; + + nativeBuildInputs = [ + autoreconfHook + pkg-config + ]; + # https://git.skewed.de/count0/graph-tool/-/wikis/installation-instructions#manual-compilation propagatedBuildInputs = [ boost + cairomm cgal expat gmp - mpfr - python - scipy - # optional - sparsehash - # drawing - cairomm gobject-introspection gtk3 - pycairo matplotlib + mpfr + numpy + pycairo pygobject3 + scipy + sparsehash ]; - enableParallelBuilding = false; - meta = with lib; { description = "Python module for manipulation and statistical analysis of graphs"; - homepage = "https://graph-tool.skewed.de/"; - license = licenses.gpl3; - maintainers = [ maintainers.joelmo ]; + homepage = "https://graph-tool.skewed.de"; + license = licenses.lgpl3Plus; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/python-modules/graphite-web/default.nix b/pkgs/development/python-modules/graphite-web/default.nix index 8cbee4bff70..91def6f2886 100644 --- a/pkgs/development/python-modules/graphite-web/default.nix +++ b/pkgs/development/python-modules/graphite-web/default.nix @@ -1,71 +1,73 @@ -{ stdenv -, lib +{ lib +, stdenv , buildPythonPackage -, fetchPypi +, cairocffi , django -, python-memcached -, txamqp , django_tagging +, fetchPypi , gunicorn -, pytz , pyparsing -, cairocffi +, python-memcached +, pythonOlder +, pytz +, six +, txamqp +, urllib3 , whisper , whitenoise -, urllib3 -, six }: buildPythonPackage rec { pname = "graphite-web"; - version = "1.1.8"; + version = "1.1.10"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "54240b0f1e069b53e2ce92d4e534e21b195fb0ebd64b6ad8a49c44284e3eb0b1"; + hash = "sha256-Pxho1QWo2jJZYAMJx999bbELDVMr7Wp7wsssYPkc01o="; }; - patches = [ - ./update-django-tagging.patch - ]; - - postPatch = '' - # https://github.com/graphite-project/graphite-web/pull/2701 - substituteInPlace setup.py \ - --replace "'scandir'" "'scandir; python_version < \"3.5\"'" - ''; - propagatedBuildInputs = [ + cairocffi django - python-memcached - txamqp django_tagging gunicorn - pytz pyparsing - cairocffi + python-memcached + pytz + six + txamqp + urllib3 whisper whitenoise - urllib3 - six ]; + postPatch = '' + substituteInPlace setup.py \ + --replace "Django>=1.8,<3.1" "Django" \ + --replace "django-tagging==0.4.3" "django-tagging" + ''; + # Carbon-s default installation is /opt/graphite. This env variable ensures - # carbon is installed as a regular python module. - GRAPHITE_NO_PREFIX="True"; + # carbon is installed as a regular Python module. + GRAPHITE_NO_PREFIX = "True"; preConfigure = '' substituteInPlace webapp/graphite/settings.py \ --replace "join(WEBAPP_DIR, 'content')" "join('$out', 'webapp', 'content')" ''; - pythonImportsCheck = [ "graphite" ]; + pythonImportsCheck = [ + "graphite" + ]; meta = with lib; { broken = (stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin; - homepage = "http://graphiteapp.org/"; description = "Enterprise scalable realtime graphing"; - maintainers = with maintainers; [ offline basvandijk ]; + homepage = "http://graphiteapp.org/"; license = licenses.asl20; + maintainers = with maintainers; [ offline basvandijk ]; }; } diff --git a/pkgs/development/python-modules/graphite-web/update-django-tagging.patch b/pkgs/development/python-modules/graphite-web/update-django-tagging.patch deleted file mode 100644 index 9774f7e70a7..00000000000 --- a/pkgs/development/python-modules/graphite-web/update-django-tagging.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/setup.py b/setup.py -index a1a21f1..f0d1051 100644 ---- a/setup.py -+++ b/setup.py -@@ -117,7 +117,7 @@ try: - ['templates/*', 'local_settings.py.example']}, - scripts=glob('bin/*'), - data_files=list(webapp_content.items()) + storage_dirs + conf_files + examples, -- install_requires=['Django>=1.8,<3.1', 'django-tagging==0.4.3', 'pytz', -+ install_requires=['Django>=1.8,<3.1', 'django-tagging==0.5.0', 'pytz', - 'pyparsing', 'cairocffi', 'urllib3', 'scandir', 'six'], - classifiers=[ - 'Intended Audience :: Developers', diff --git a/pkgs/development/python-modules/gunicorn/default.nix b/pkgs/development/python-modules/gunicorn/default.nix index ba948a68915..72852ae1f12 100644 --- a/pkgs/development/python-modules/gunicorn/default.nix +++ b/pkgs/development/python-modules/gunicorn/default.nix @@ -1,40 +1,55 @@ -{ lib, buildPythonPackage, fetchPypi, isPy27 -, coverage -, mock -, pytest -, pytest-cov +{ lib +, buildPythonPackage +, fetchFromGitHub +, fetchpatch +, pythonOlder +, eventlet +, gevent +, pytestCheckHook , setuptools }: buildPythonPackage rec { pname = "gunicorn"; version = "20.1.0"; - disabled = isPy27; + disabled = pythonOlder "3.5"; - src = fetchPypi { - inherit pname version; - sha256 = "e0a968b5ba15f8a328fdfd7ab1fcb5af4470c28aaf7e55df02a99bc13138e6e8"; + src = fetchFromGitHub { + owner = "benoitc"; + repo = "gunicorn"; + rev = version; + sha256 = "sha256-xdNHm8NQWlAlflxof4cz37EoM74xbWrNaf6jlwwzHv4="; }; - propagatedBuildInputs = [ setuptools ]; - - checkInputs = [ pytest mock pytest-cov coverage ]; - - prePatch = '' - substituteInPlace requirements_test.txt --replace "==" ">=" \ - --replace "coverage>=4.0,<4.4" "coverage" + patches = [ + (fetchpatch { + # fix eventlet 0.30.3+ compability + url = "https://github.com/benoitc/gunicorn/commit/6a8ebb4844b2f28596ffe7421eb9f7d08c8dc4d8.patch"; + sha256 = "sha256-+iApgohzPZ/cHTGBNb7XkqLaHOVVPF26BnPUsvISoZw="; + }) + ]; + + postPatch = '' + substituteInPlace setup.cfg \ + --replace "--cov=gunicorn --cov-report=xml" "" ''; - # better than no tests - checkPhase = '' - $out/bin/gunicorn --help > /dev/null - ''; + propagatedBuildInputs = [ + setuptools + ]; + + checkInputs = [ + eventlet + gevent + pytestCheckHook + ]; pythonImportsCheck = [ "gunicorn" ]; meta = with lib; { homepage = "https://github.com/benoitc/gunicorn"; - description = "WSGI HTTP Server for UNIX"; + description = "gunicorn 'Green Unicorn' is a WSGI HTTP Server for UNIX, fast clients and sleepy applications"; license = licenses.mit; + maintainers = with maintainers; [ SuperSandro2000 ]; }; } diff --git a/pkgs/development/python-modules/gyp/default.nix b/pkgs/development/python-modules/gyp/default.nix index e98d844a33e..ca9a8dc5a2d 100644 --- a/pkgs/development/python-modules/gyp/default.nix +++ b/pkgs/development/python-modules/gyp/default.nix @@ -1,16 +1,19 @@ -{ lib, stdenv +{ lib +, stdenv , buildPythonPackage , fetchFromGitiles +, six +, python }: buildPythonPackage { pname = "gyp"; - version = "2020-05-12"; + version = "unstable-2022-04-01"; src = fetchFromGitiles { url = "https://chromium.googlesource.com/external/gyp"; - rev = "caa60026e223fc501e8b337fd5086ece4028b1c6"; - sha256 = "0r9phq5yrmj968vdvy9vivli35wn1j9a6iwshp69wl7q4p0x8q2b"; + rev = "9ecf45e37677743503342ee4c6a76eaee80e4a7f"; + hash = "sha256-LUlF2VhRnuDwJLdITgmXIQV/IuKdx1KXQkiPVHKrl4Q="; }; patches = lib.optionals stdenv.isDarwin [ @@ -18,11 +21,16 @@ buildPythonPackage { ./no-xcode.patch ]; + propagatedBuildInputs = [ + six + ]; + + pythonImportsCheck = [ "gyp" "gyp.generator" ]; + meta = with lib; { description = "A tool to generate native build files"; - homepage = "https://chromium.googlesource.com/external/gyp/+/master/README.md"; + homepage = "https://gyp.gsrc.io"; license = licenses.bsd3; maintainers = with maintainers; [ codyopel ]; }; - } diff --git a/pkgs/development/python-modules/hass-nabucasa/default.nix b/pkgs/development/python-modules/hass-nabucasa/default.nix index edf19d0e190..3b053108424 100644 --- a/pkgs/development/python-modules/hass-nabucasa/default.nix +++ b/pkgs/development/python-modules/hass-nabucasa/default.nix @@ -25,11 +25,11 @@ buildPythonPackage rec { }; postPatch = '' - sed -i 's/"acme.*"/"acme"/' setup.py substituteInPlace setup.py \ - --replace "cryptography>=2.8,<4.0" "cryptography" \ + --replace "acme==" "acme>=" \ + --replace "cryptography>=2.8,<37.0" "cryptography" \ + --replace "pycognito==" "pycognito>=" \ --replace "snitun==" "snitun>=" \ - --replace "pycognito==2022.01.0" "pycognito" ''; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/homeconnect/default.nix b/pkgs/development/python-modules/homeconnect/default.nix index b615274416a..3d7c31dc862 100644 --- a/pkgs/development/python-modules/homeconnect/default.nix +++ b/pkgs/development/python-modules/homeconnect/default.nix @@ -4,6 +4,7 @@ , requests , requests-oauthlib , pythonOlder +, six }: buildPythonPackage rec { @@ -21,6 +22,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ requests requests-oauthlib + six ]; # Project has no tests diff --git a/pkgs/development/python-modules/httpbin/default.nix b/pkgs/development/python-modules/httpbin/default.nix index a5a77a82af2..98c50fd1523 100644 --- a/pkgs/development/python-modules/httpbin/default.nix +++ b/pkgs/development/python-modules/httpbin/default.nix @@ -11,6 +11,7 @@ , raven , six , pytestCheckHook +, werkzeug }: buildPythonPackage rec { @@ -34,14 +35,15 @@ buildPythonPackage rec { propagatedBuildInputs = [ brotlipy + decorator flask flask-limiter - markupsafe - decorator itsdangerous + markupsafe raven six - ]; + werkzeug + ] ++ raven.optional-dependencies.flask; checkInputs = [ pytestCheckHook diff --git a/pkgs/development/python-modules/httpcore/default.nix b/pkgs/development/python-modules/httpcore/default.nix index d2286b6b022..5016ece96f2 100644 --- a/pkgs/development/python-modules/httpcore/default.nix +++ b/pkgs/development/python-modules/httpcore/default.nix @@ -1,33 +1,32 @@ { lib -, buildPythonPackage -, pythonOlder -, fetchFromGitHub , anyio +, buildPythonPackage , certifi +, fetchFromGitHub , h11 , h2 , pproxy , pytest-asyncio -, pytestCheckHook -, pytest-cov , pytest-httpbin +, pytest-trio +, pytestCheckHook +, pythonOlder , sniffio , socksio -, trio -, trustme -, uvicorn }: buildPythonPackage rec { pname = "httpcore"; - version = "0.14.7"; - disabled = pythonOlder "3.6"; + version = "0.15.0"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "encode"; repo = pname; rev = version; - sha256 = "sha256-h+3MfP1p/ifN0mF/xxrOKPTjD4Q7WzRh94YO4DYSuXE="; + hash = "sha256-FF3Yzac9nkVcA5bHVOz2ymvOelSfJ0K6oU8UWpBDcmo="; }; postPatch = '' @@ -43,23 +42,30 @@ buildPythonPackage rec { ]; passthru.optional-dependencies = { - http2 = [ h2 ]; - socks = [ socksio ]; + http2 = [ + h2 + ]; + socks = [ + socksio + ]; }; checkInputs = [ pproxy pytest-asyncio - pytestCheckHook - pytest-cov pytest-httpbin - trio - trustme - uvicorn + pytest-trio + pytestCheckHook ] ++ passthru.optional-dependencies.http2 ++ passthru.optional-dependencies.socks; - pythonImportsCheck = [ "httpcore" ]; + pythonImportsCheck = [ + "httpcore" + ]; + + pytestFlagsArray = [ + "--asyncio-mode=strict" + ]; meta = with lib; { description = "A minimal low-level HTTP client"; diff --git a/pkgs/development/python-modules/httpx/default.nix b/pkgs/development/python-modules/httpx/default.nix index 0070d5d04ef..ab5a6820529 100644 --- a/pkgs/development/python-modules/httpx/default.nix +++ b/pkgs/development/python-modules/httpx/default.nix @@ -1,67 +1,74 @@ { lib -, async_generator +, brotli +, brotlicffi , buildPythonPackage -, pythonOlder -, fetchFromGitHub , certifi -, charset-normalizer -, httpcore -, rfc3986 -, sniffio +, chardet +, click +, fetchFromGitHub , h2 -, socksio +, httpcore , isPyPy -, brotli -, brotlicffi -, click -, rich , pygments , python +, pythonOlder +, rfc3986 +, rich +, sniffio +, socksio , pytestCheckHook , pytest-asyncio , pytest-trio -, typing-extensions , trustme , uvicorn }: buildPythonPackage rec { pname = "httpx"; - version = "0.22.0"; + version = "0.23.0"; format = "setuptools"; - disabled = pythonOlder "3.6"; + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "encode"; repo = pname; rev = version; - sha256 = "sha256-hQmQodGpVG23IZSsWV7rB1iB6QAudDao/8YshIgpmas="; + hash = "sha256-s11Yeizm3y3w5D6ACQ2wp/KJ0+1ALY/R71IlTP2pMC4="; }; propagatedBuildInputs = [ certifi - charset-normalizer httpcore rfc3986 sniffio - ] ++ lib.optionals (pythonOlder "3.7") [ - async_generator ]; passthru.optional-dependencies = { - http2 = [ h2 ]; - socks = [ socksio ]; - brotli = if isPyPy then [ brotlicffi ] else [ brotli ]; - cli = [ click rich pygments ]; + http2 = [ + h2 + ]; + socks = [ + socksio + ]; + brotli = if isPyPy then [ + brotlicffi + ] else [ + brotli + ]; + cli = [ + click + rich + pygments + ]; }; checkInputs = [ + chardet pytestCheckHook pytest-asyncio pytest-trio trustme - typing-extensions uvicorn ] ++ passthru.optional-dependencies.http2 ++ passthru.optional-dependencies.brotli @@ -88,9 +95,6 @@ buildPythonPackage rec { # httpcore.ConnectError: [Errno -2] Name or service not known "test_async_proxy_close" "test_sync_proxy_close" - # sensitive to charset_normalizer output - "iso-8859-1" - "test_response_no_charset_with_iso_8859_1_content" ]; disabledTestPaths = [ diff --git a/pkgs/development/python-modules/hyperion-py/default.nix b/pkgs/development/python-modules/hyperion-py/default.nix index 7837deea6db..ed57ad767b0 100644 --- a/pkgs/development/python-modules/hyperion-py/default.nix +++ b/pkgs/development/python-modules/hyperion-py/default.nix @@ -2,6 +2,7 @@ , aiohttp , buildPythonPackage , fetchFromGitHub +, fetchpatch , pytestCheckHook , pythonOlder , pythonAtLeast @@ -13,7 +14,7 @@ buildPythonPackage rec { pname = "hyperion-py"; version = "0.7.5"; - disabled = pythonOlder "3.8" || pythonAtLeast "3.10"; + disabled = pythonOlder "3.8"; format = "pyproject"; src = fetchFromGitHub { @@ -23,6 +24,14 @@ buildPythonPackage rec { sha256 = "sha256-arcnpCQsRuiWCrAz/t4TCjTe8DRDtRuzYp8k7nnjGDk="; }; + patches = [ + (fetchpatch { + # python3.10 compat: Drop loop kwarg in asyncio.sleep call + url = "https://github.com/dermotduffy/hyperion-py/commit/f02af52fcce17888984c99bfc03935e372011394.patch"; + hash = "sha256-4nfsQVxd77VV9INwNxTyFRDlAjwdTYqfSGuF487hFCs="; + }) + ]; + nativeBuildInputs = [ poetry-core ]; diff --git a/pkgs/development/python-modules/hypothesis/default.nix b/pkgs/development/python-modules/hypothesis/default.nix index 8eaa808563e..c92b655fabd 100644 --- a/pkgs/development/python-modules/hypothesis/default.nix +++ b/pkgs/development/python-modules/hypothesis/default.nix @@ -8,27 +8,21 @@ , pytestCheckHook , pytest-xdist , sortedcontainers -, tzdata , pythonOlder }: -buildPythonPackage rec { - # https://hypothesis.readthedocs.org/en/latest/packaging.html - - # Hypothesis has optional dependencies on the following libraries - # pytz fake_factory django numpy pytest - # If you need these, you can just add them to your environment. +buildPythonPackage rec { pname = "hypothesis"; - version = "6.40.0"; + version = "6.46.10"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "HypothesisWorks"; - repo = "hypothesis-python"; + repo = "hypothesis"; rev = "hypothesis-python-${version}"; - hash = "sha256-6BC3CTotkMhguueH4NJM8VjbrYhofHqtZEUytcllMwQ="; + hash = "sha256-eQ7Ns0k1hOVw8/xiINMei6GbQqDHXrBl+1v8YQeFO9Q="; }; postUnpack = "sourceRoot=$sourceRoot/hypothesis-python"; @@ -42,8 +36,6 @@ buildPythonPackage rec { pexpect pytest-xdist pytestCheckHook - ] ++ lib.optional (pythonAtLeast "3.9") [ - tzdata ]; inherit doCheck; diff --git a/pkgs/development/python-modules/ifaddr/default.nix b/pkgs/development/python-modules/ifaddr/default.nix index 35bafd67fa9..82b00d55095 100644 --- a/pkgs/development/python-modules/ifaddr/default.nix +++ b/pkgs/development/python-modules/ifaddr/default.nix @@ -1,8 +1,7 @@ { lib , buildPythonPackage , fetchPypi -, ipaddress -, python +, pytestCheckHook }: buildPythonPackage rec { @@ -14,11 +13,11 @@ buildPythonPackage rec { sha256 = "1f9e8a6ca6f16db5a37d3356f07b6e52344f6f9f7e806d618537731669eb1a94"; }; - propagatedBuildInputs = [ ipaddress ]; + checkInputs = [ + pytestCheckHook + ]; - checkPhase = '' - ${python.interpreter} -m unittest discover - ''; + pythonImportsCheck = [ "ifaddr" ]; meta = with lib; { homepage = "https://github.com/pydron/ifaddr"; diff --git a/pkgs/development/python-modules/imageio/default.nix b/pkgs/development/python-modules/imageio/default.nix index 9c449c69b77..7c3fd87b4af 100644 --- a/pkgs/development/python-modules/imageio/default.nix +++ b/pkgs/development/python-modules/imageio/default.nix @@ -16,11 +16,11 @@ buildPythonPackage rec { pname = "imageio"; - version = "2.16.1"; + version = "2.19.2"; disabled = isPy27; src = fetchPypi { - sha256 = "sha256-fxI8sjp3rFq+jtTnrWpggxqC3ixdEjRj3PHUJ4xHedI="; + sha256 = "sha256-RuHnQSiDfSoevIdHa39zl4tpoSj6I4vJibYlqYGb2bM="; inherit pname version; }; diff --git a/pkgs/development/python-modules/immutables/default.nix b/pkgs/development/python-modules/immutables/default.nix index 83d6336fe59..34a48ed2a1f 100644 --- a/pkgs/development/python-modules/immutables/default.nix +++ b/pkgs/development/python-modules/immutables/default.nix @@ -9,17 +9,19 @@ buildPythonPackage rec { pname = "immutables"; - version = "0.17"; + version = "0.18"; + format = "setuptools"; + disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "MagicStack"; repo = pname; rev = "v${version}"; - sha256 = "sha256-4VuB8eTWHD4hEDj11u/talfv38h2BhogSZmEVyUtnko="; + hash = "sha256-lXCoPTcpTOv9K0xCVjbrP3qlzP9tfk/e3Rk3oOmbS/Y="; }; - propagatedBuildInputs = [ + propagatedBuildInputs = lib.optionals (pythonOlder "3.8") [ typing-extensions ]; @@ -33,10 +35,12 @@ buildPythonPackage rec { "testMypyImmu" ]; - pythonImportsCheck = [ "immutables" ]; + pythonImportsCheck = [ + "immutables" + ]; meta = with lib; { - description = "An immutable mapping type for Python"; + description = "An immutable mapping type"; homepage = "https://github.com/MagicStack/immutables"; license = with licenses; [ asl20 ]; maintainers = with maintainers; [ catern ]; diff --git a/pkgs/development/python-modules/intake/default.nix b/pkgs/development/python-modules/intake/default.nix index 0228ae6bcf2..6f895b45ed0 100644 --- a/pkgs/development/python-modules/intake/default.nix +++ b/pkgs/development/python-modules/intake/default.nix @@ -6,7 +6,6 @@ , entrypoints , fetchFromGitHub , fsspec -, holoviews , hvplot , intake-parquet , jinja2 @@ -27,7 +26,8 @@ buildPythonPackage rec { pname = "intake"; - version = "0.6.4"; + version = "0.6.5"; + format = "setuptools"; disabled = pythonOlder "3.7"; @@ -35,57 +35,75 @@ buildPythonPackage rec { owner = pname; repo = pname; rev = version; - sha256 = "194cdd6lx92zcpkn3wgm490kxvw0c58ziix8hcihsr5ayfr1wdsl"; + hash = "sha256-ABMXWUVptpOSPB1jQ57iXk/UG92puNCICzXo3ZMG2Pk="; }; propagatedBuildInputs = [ appdirs - bokeh dask entrypoints fsspec - holoviews - hvplot - jinja2 msgpack - msgpack-numpy - numpy + jinja2 pandas - panel - pyarrow - python-snappy pyyaml - requests - tornado ]; checkInputs = [ intake-parquet pytestCheckHook - ]; + ] ++ passthru.optional-dependencies.server; + + passthru.optional-dependencies = { + server = [ + msgpack + python-snappy + tornado + ]; + dataframe = [ + msgpack-numpy + pyarrow + ]; + plot = [ + hvplot + bokeh + panel + ]; + remote = [ + requests + ]; + }; postPatch = '' substituteInPlace setup.py \ --replace "'pytest-runner'" "" ''; - # test_discover requires driver_with_entrypoints-0.1.dist-info, which is not included in tarball - # test_filtered_compressed_cache requires calvert_uk_filter.tar.gz, which is not included in tarball preCheck = '' - HOME=$TMPDIR - PATH=$out/bin:$PATH + export HOME=$(mktemp -d); + export PATH="$PATH:$out/bin"; ''; disabledTests = [ - # Disable tests which touch network and are broken + # Disable tests which touch network + "http" + "test_dir" "test_discover" "test_filtered_compressed_cache" + "test_flatten_flag" "test_get_dir" - "test_remote_cat" - "http" + "test_pagination" + "test_read_part_compressed" + "test_read_partition" "test_read_pattern" "test_remote_arr" - "test_flatten_flag" + "test_remote_cat" + # ValueError + "test_mlist_parameter" + # ImportError + "test_dataframe" + "test_ndarray" + "test_python" # Timing-based, flaky on darwin and possibly others "TestServerV1Source.test_idle_timer" ] ++ lib.optionals (stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "10.13") [ diff --git a/pkgs/development/python-modules/ipaddress/default.nix b/pkgs/development/python-modules/ipaddress/default.nix deleted file mode 100644 index 06211470daa..00000000000 --- a/pkgs/development/python-modules/ipaddress/default.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ lib -, buildPythonPackage -, fetchPypi -, pythonAtLeast -, python -}: - -if (pythonAtLeast "3.3") then null else buildPythonPackage rec { - pname = "ipaddress"; - version = "1.0.23"; - - src = fetchPypi { - inherit pname version; - sha256 = "b7f8e0369580bb4a24d5ba1d7cc29660a4a6987763faf1d8a8046830e020e7e2"; - }; - - checkPhase = '' - ${python.interpreter} test_ipaddress.py - ''; - - meta = with lib; { - description = "Port of the 3.3+ ipaddress module to 2.6, 2.7, and 3.2"; - homepage = "https://github.com/phihag/ipaddress"; - license = licenses.psfl; - }; - -} diff --git a/pkgs/development/python-modules/jsonpatch/default.nix b/pkgs/development/python-modules/jsonpatch/default.nix index f77412e4cc1..03060f4e866 100644 --- a/pkgs/development/python-modules/jsonpatch/default.nix +++ b/pkgs/development/python-modules/jsonpatch/default.nix @@ -1,25 +1,45 @@ { lib , buildPythonPackage -, fetchPypi +, fetchFromGitHub , jsonpointer +, pytestCheckHook +, pythonOlder }: buildPythonPackage rec { pname = "jsonpatch"; version = "1.32"; + format = "setuptools"; - src = fetchPypi { - inherit pname version; - sha256 = "b6ddfe6c3db30d81a96aaeceb6baf916094ffa23d7dd5fa2c13e13f8b6e600c2"; + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "stefankoegl"; + repo = "python-json-patch"; + rev = "v${version}"; + hash = "sha256-JMGBgYjnjHQ5JpzDwJcR2nVZfzmQ8ZZtcB0GsJ9Q4Jc="; }; - # test files are missing - doCheck = false; - propagatedBuildInputs = [ jsonpointer ]; + propagatedBuildInputs = [ + jsonpointer + ]; + + checkInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "jsonpatch" + ]; + + pytestFlagsArray = [ + "tests.py" + ]; - meta = { + meta = with lib; { description = "Library to apply JSON Patches according to RFC 6902"; homepage = "https://github.com/stefankoegl/python-json-patch"; - license = lib.licenses.bsd2; # "Modified BSD license, says pypi" + license = licenses.bsd2; # "Modified BSD license, says pypi" + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/python-modules/jsonschema/default.nix b/pkgs/development/python-modules/jsonschema/default.nix index 202e047dd8e..e90ea39132f 100644 --- a/pkgs/development/python-modules/jsonschema/default.nix +++ b/pkgs/development/python-modules/jsonschema/default.nix @@ -2,35 +2,35 @@ , attrs , buildPythonPackage , fetchPypi +, hatch-vcs +, hatchling , importlib-metadata , importlib-resources , pyrsistent , pythonOlder -, setuptools-scm , twisted , typing-extensions }: buildPythonPackage rec { pname = "jsonschema"; - version = "4.5.1"; + version = "4.6.0"; format = "pyproject"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "sha256-fG2IJhk0DDNHob9zFeFH5tPa5DkDOuY4PWrLkIwQHfw="; + sha256 = "sha256-nWOXukpsC/AwBzYFf2SePhLsvAfT6BoNrLct5OmAGVc="; }; postPatch = '' patchShebangs json/bin/jsonschema_suite ''; - SETUPTOOLS_SCM_PRETEND_VERSION = version; - nativeBuildInputs = [ - setuptools-scm + hatch-vcs + hatchling ]; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/libcst/default.nix b/pkgs/development/python-modules/libcst/default.nix index ccd12e4aaae..7d6c185d1cc 100644 --- a/pkgs/development/python-modules/libcst/default.nix +++ b/pkgs/development/python-modules/libcst/default.nix @@ -1,7 +1,6 @@ { lib , stdenv , buildPythonPackage -, dataclasses , fetchFromGitHub , hypothesis , libiconv @@ -18,23 +17,23 @@ buildPythonPackage rec { pname = "libcst"; - version = "0.4.1"; + version = "0.4.3"; format = "pyproject"; - disabled = pythonOlder "3.6"; + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "instagram"; repo = pname; rev = "v${version}"; - sha256 = "sha256-soAlt1KBpCn5JxM1b2LZ3vOpBn9HPGdbm+BBYbyEkfE="; + sha256 = "sha256-Lm62rVL5f+fu4KzOQMroM0Eu27l5v2dkGtRiIVPFNhg="; }; cargoDeps = rustPlatform.fetchCargoTarball { inherit src; sourceRoot = "source/${cargoRoot}"; name = "${pname}-${version}"; - hash = "sha256:1rz1c0dv3f1h2m5hwdisl3rbqnmifbva4f0c4vygk7rh1q27l515"; + hash = "sha256-i5BYYiILadKEPIJOaWdG1lZNSHfNQnwmc5j0D1jg/kc="; }; cargoRoot = "native"; @@ -56,15 +55,13 @@ buildPythonPackage rec { buildInputs = lib.optionals stdenv.isDarwin [ libiconv ]; propagatedBuildInputs = [ - hypothesis typing-extensions typing-inspect pyyaml - ] ++ lib.optional (pythonOlder "3.7") [ - dataclasses ]; checkInputs = [ + hypothesis pytestCheckHook ]; @@ -88,6 +85,6 @@ buildPythonPackage rec { description = "Concrete Syntax Tree (CST) parser and serializer library for Python"; homepage = "https://github.com/Instagram/libcst"; license = with licenses; [ mit asl20 psfl ]; - maintainers = with maintainers; [ ruuda SuperSandro2000 ]; + maintainers = with maintainers; [ SuperSandro2000 ]; }; } diff --git a/pkgs/development/python-modules/limits/default.nix b/pkgs/development/python-modules/limits/default.nix index a79bd445b6b..c2898608583 100644 --- a/pkgs/development/python-modules/limits/default.nix +++ b/pkgs/development/python-modules/limits/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "limits"; - version = "2.6.1"; + version = "2.6.3"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -32,7 +32,7 @@ buildPythonPackage rec { postFetch = '' rm "$out/limits/_version.py" ''; - hash = "sha256-ja+YbRHCcZ5tFnoofdR44jbkkdDroVUdKeDOt6yE0LI="; + hash = "sha256-YAuq8QycQ55emU2S0rQHxdHCD+jSRmzUKeYFdrV9NzM="; }; propagatedBuildInputs = [ @@ -56,9 +56,6 @@ buildPythonPackage rec { substituteInPlace pytest.ini \ --replace "--cov=limits" "" \ --replace "-K" "" - # redis-py-cluster doesn't support redis > 4 - substituteInPlace tests/conftest.py \ - --replace "import rediscluster" "" # Recreate _version.py, deleted at fetch time due to non-reproducibility. echo 'def get_versions(): return {"version": "${version}"}' > limits/_version.py diff --git a/pkgs/development/python-modules/locket/default.nix b/pkgs/development/python-modules/locket/default.nix index fd75a965c52..e416d8dd828 100644 --- a/pkgs/development/python-modules/locket/default.nix +++ b/pkgs/development/python-modules/locket/default.nix @@ -1,21 +1,30 @@ -{ lib, buildPythonPackage, fetchPypi, pytest }: +{ lib +, buildPythonPackage +, fetchPypi +, pythonOlder +}: buildPythonPackage rec { pname = "locket"; - version = "0.2.1"; + version = "1.0.0"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "3e1faba403619fe201552f083f1ecbf23f550941bc51985ac6ed4d02d25056dd"; + hash = "sha256-XA1MBSqLu/dQ4Fao5lzNMJCG9PDxii6sMGqN+kESpjI="; }; - buildInputs = [ pytest ]; - # weird test requirements (spur.local>=0.3.7,<0.4) doCheck = false; + pythonImportsCheck = [ + "locket" + ]; + meta = with lib; { - description = "Locket implements a lock that can be used by multiple processes provided they use the same path."; + description = "Library which provides a lock that can be used by multiple processes"; homepage = "https://github.com/mwilliamson/locket.py"; license = licenses.bsd2; maintainers = with maintainers; [ teh ]; diff --git a/pkgs/development/python-modules/lxml/default.nix b/pkgs/development/python-modules/lxml/default.nix index 3ef230eb8e8..c9d4a7cf961 100644 --- a/pkgs/development/python-modules/lxml/default.nix +++ b/pkgs/development/python-modules/lxml/default.nix @@ -8,13 +8,13 @@ buildPythonPackage rec { pname = "lxml"; - version = "4.8.0"; + version = "4.9.0"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "lxml-${version}"; - sha256 = "sha256-ppyLn8B0YFQivRCOE8TjKGdDDQHbb7UdTUkevznoVC8="; + sha256 = "sha256-3bPyfsiJGDNB0MPw4OhATRnsM3I8ThZwvPWI+easgNo="; }; # setuptoolsBuildPhase needs dependencies to be passed through nativeBuildInputs diff --git a/pkgs/development/python-modules/m2r/default.nix b/pkgs/development/python-modules/m2r/default.nix index fd148382617..526f2b12867 100644 --- a/pkgs/development/python-modules/m2r/default.nix +++ b/pkgs/development/python-modules/m2r/default.nix @@ -1,5 +1,6 @@ { lib , buildPythonPackage +, fetchpatch , fetchPypi , docutils , mistune @@ -15,6 +16,14 @@ buildPythonPackage rec { sha256 = "bf90bad66cda1164b17e5ba4a037806d2443f2a4d5ddc9f6a5554a0322aaed99"; }; + patches = [ + # fix tests in python 3.10 + (fetchpatch { + url = "https://github.com/miyakogi/m2r/commit/58ee9cabdadf5e3deb13037f3052238f0f2bffcd.patch"; + sha256 = "sha256-CN3PWmnk7xsn1wngRHuEWmDTP3HtVNxkFv0xzD2Zjlo="; + }) + ]; + postPatch = '' substituteInPlace tests/test_cli.py \ --replace "optional" "positional" diff --git a/pkgs/development/python-modules/mdx-truly-sane-lists/default.nix b/pkgs/development/python-modules/mdx-truly-sane-lists/default.nix new file mode 100644 index 00000000000..9ea39e27a16 --- /dev/null +++ b/pkgs/development/python-modules/mdx-truly-sane-lists/default.nix @@ -0,0 +1,36 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, markdown +, python +}: + +buildPythonPackage rec { + pname = "mdx_truly_sane_lists"; + version = "1.2"; + + src = fetchFromGitHub { + owner = "radude"; + repo = "mdx_truly_sane_lists"; + rev = version; + sha256 = "1h8403ch016cwdy5zklzp7c6xrdyyhl4z07h97qzbafrbq07jyss"; + }; + + propagatedBuildInputs = [ markdown ]; + + pythonImportsCheck = [ "mdx_truly_sane_lists" ]; + + checkPhase = '' + ${python.interpreter} mdx_truly_sane_lists/tests.py + ''; + + meta = with lib; { + description = "Extension for Python-Markdown that makes lists truly sane."; + longDescription = '' + Features custom indents for nested lists and fix for messy linebreaks and + paragraphs between lists. + ''; + license = licenses.mit; + maintainers = with maintainers; [ kaction ]; + }; +} diff --git a/pkgs/development/python-modules/mkdocs-exclude/default.nix b/pkgs/development/python-modules/mkdocs-exclude/default.nix new file mode 100644 index 00000000000..e959a15e470 --- /dev/null +++ b/pkgs/development/python-modules/mkdocs-exclude/default.nix @@ -0,0 +1,37 @@ +{ lib +, callPackage +, buildPythonPackage +, fetchFromGitHub +, mkdocs +}: + +buildPythonPackage rec { + pname = "mkdocs-exclude"; + version = "1.0.2"; + + # Repository has only 3 commits and no tags. Each of these commits has + # version of 1.0.0, 1.0.1 and 1.0.2 in setup.py, though. + src = fetchFromGitHub { + owner = "apenwarr"; + repo = "mkdocs-exclude"; + rev = "fdd67d2685ff706de126e99daeaaaf3f6f7cf3ae"; + sha256 = "1phhl79xf4xq8w2sb2w5zm4bahcr33gsbxkz7dl1dws4qhcbxrfd"; + }; + + propagatedBuildInputs = [ mkdocs ]; + + # Attempt to import "mkdocs_exclude" module in stand-alone mode fails: + # + # module 'mkdocs.config' has no attribute 'config_options' + # + # It works fine when actually used to build documentation of "pydantic", + # though. This package has no tests. + doCheck = false; + + meta = with lib; { + description = "A mkdocs plugin to exclude files from input using globs or regexes."; + homepage = "https://github.com/apenwarr/mkdocs-exclude"; + license = licenses.asl20; + maintainers = with maintainers; [ kaction ]; + }; +} diff --git a/pkgs/development/python-modules/moto/default.nix b/pkgs/development/python-modules/moto/default.nix index 7f3251a6cc2..fc0e613b249 100644 --- a/pkgs/development/python-modules/moto/default.nix +++ b/pkgs/development/python-modules/moto/default.nix @@ -16,6 +16,7 @@ , idna , jinja2 , jsondiff +, openapi-spec-validator , python-dateutil , python-jose , pytz @@ -35,14 +36,14 @@ buildPythonPackage rec { pname = "moto"; - version = "3.1.3"; + version = "3.1.11"; format = "setuptools"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "sha256-+kgVlfVhHZ/r2vCg0Skwe1433mh2w30DXO7+Rs59isA="; + sha256 = "sha256-GwxHL0t0AXdakuY/vPomESoA4Ie59u3aEiAqOcYsYYE="; }; propagatedBuildInputs = [ @@ -58,6 +59,7 @@ buildPythonPackage rec { idna jinja2 jsondiff + openapi-spec-validator python-dateutil python-jose pytz @@ -95,6 +97,10 @@ buildPythonPackage rec { "--deselect=tests/test_iotdata/test_iotdata.py::test_publish" "--deselect=tests/test_s3/test_server.py::test_s3_server_bucket_versioning" + # Disalbe test that require docker daemon + "--deselect=tests/test_events/test_events_lambdatriggers_integration.py::test_creating_bucket__invokes_lambda" + "--deselect=tests/test_s3/test_s3_lambda_integration.py::test_objectcreated_put__invokes_lambda" + # json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) "--deselect=tests/test_cloudformation/test_cloudformation_stack_integration.py::test_lambda_function" diff --git a/pkgs/development/python-modules/msgpack/default.nix b/pkgs/development/python-modules/msgpack/default.nix index 805d347389c..aa413190d4d 100644 --- a/pkgs/development/python-modules/msgpack/default.nix +++ b/pkgs/development/python-modules/msgpack/default.nix @@ -2,27 +2,37 @@ , buildPythonPackage , fetchPypi , pytestCheckHook +, pythonOlder , setuptools }: buildPythonPackage rec { pname = "msgpack"; - version = "1.0.3"; + version = "1.0.4"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "51fdc7fb93615286428ee7758cecc2f374d5ff363bdd884c7ea622a7a327a81e"; + hash = "sha256-9dhpwY8DAgLrQS8Iso0q/upVPWYTruieIA16yn7wH18="; }; nativeBuildInputs = [ setuptools ]; - checkInputs = [ pytestCheckHook ]; + checkInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "msgpack" + ]; meta = with lib; { + description = "MessagePack serializer implementation"; homepage = "https://github.com/msgpack/msgpack-python"; - description = "MessagePack serializer implementation for Python"; changelog = "https://github.com/msgpack/msgpack-python/blob/master/ChangeLog.rst"; license = licenses.asl20; maintainers = with maintainers; [ SuperSandro2000 ]; diff --git a/pkgs/development/python-modules/netifaces/default.nix b/pkgs/development/python-modules/netifaces/default.nix index 66feb7be026..6d34bc3df4a 100644 --- a/pkgs/development/python-modules/netifaces/default.nix +++ b/pkgs/development/python-modules/netifaces/default.nix @@ -1,25 +1,32 @@ { lib , buildPythonPackage , fetchPypi +, pythonOlder }: buildPythonPackage rec { version = "0.11.0"; pname = "netifaces"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "043a79146eb2907edf439899f262b3dfe41717d34124298ed281139a8b93ca32"; + hash = "sha256-BDp5FG6ykH7fQ5iZ8mKz3+QXF9NBJCmO0oETmouTyjI="; }; - doCheck = false; # no tests implemented + # No tests implemented + doCheck = false; - pythonImportsCheck = [ "netifaces" ]; + pythonImportsCheck = [ + "netifaces" + ]; meta = with lib; { - homepage = "https://alastairs-place.net/projects/netifaces/"; description = "Portable access to network interfaces from Python"; + homepage = "https://github.com/al45tair/netifaces"; license = licenses.mit; + maintainers = with maintainers; [ ]; }; - } diff --git a/pkgs/development/python-modules/networkx/default.nix b/pkgs/development/python-modules/networkx/default.nix index 140eb9bb24c..3fb08348c7f 100644 --- a/pkgs/development/python-modules/networkx/default.nix +++ b/pkgs/development/python-modules/networkx/default.nix @@ -2,26 +2,25 @@ , buildPythonPackage , fetchPypi , nose -, pytest +, pytestCheckHook , decorator , setuptools +, pythonOlder }: buildPythonPackage rec { pname = "networkx"; # upgrade may break sage, please test the sage build or ping @timokau on upgrade - version = "2.7.1"; + version = "2.8.2"; + disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; - sha256 = "sha256-0RlLp1Pl7tB83s0dI8XNejx3IJm9jb0v6jZniM9N57o="; + sha256 = "sha256-rpnJsNNeW0pizxz+oB5bNjPY0C9KDq1paFtufeW4Xqs="; }; propagatedBuildInputs = [ decorator setuptools ]; - checkInputs = [ nose pytest]; - checkPhase = '' - pytest - ''; + checkInputs = [ nose pytestCheckHook ]; meta = { homepage = "https://networkx.github.io/"; diff --git a/pkgs/development/python-modules/nose_progressive/default.nix b/pkgs/development/python-modules/nose_progressive/default.nix index a483b2b7af8..fb9a8e61bda 100644 --- a/pkgs/development/python-modules/nose_progressive/default.nix +++ b/pkgs/development/python-modules/nose_progressive/default.nix @@ -24,11 +24,11 @@ buildPythonPackage rec { doCheck = !isPy3k; meta = with lib; { - broken = (stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin; homepage = "https://github.com/erikrose/nose-progressive"; description = "A testrunner with a progress bar and smarter tracebacks"; license = licenses.mit; maintainers = with maintainers; [ domenkozar ]; + broken = true; # relies on 2to3 conversion, which was removed from setuptools>=58.0 }; } diff --git a/pkgs/development/python-modules/numpy/default.nix b/pkgs/development/python-modules/numpy/default.nix index 2fbe1a7a694..a163ef6449a 100644 --- a/pkgs/development/python-modules/numpy/default.nix +++ b/pkgs/development/python-modules/numpy/default.nix @@ -44,7 +44,7 @@ in buildPythonPackage rec { # Attention! v1.22.0 breaks scipy and by extension scikit-learn, so # build both to verify they don't break. # https://github.com/scipy/scipy/issues/15414 - version = "1.21.5"; + version = "1.21.6"; format = "pyproject.toml"; disabled = pythonOlder "3.7"; @@ -52,7 +52,7 @@ in buildPythonPackage rec { src = fetchPypi { inherit pname version; extension = "zip"; - sha256 = "sha256-alkovGJBJk3OXtUJ5m8zZ2/Jf0ZOepGe3GcvtVMiIe4="; + sha256 = "sha256-7LVSUROXBmaf3sL/BzyY746ahEc+UecWIRtBqg8Y5lY="; }; patches = lib.optionals python.hasDistutilsCxxPatch [ diff --git a/pkgs/development/python-modules/ordereddict/default.nix b/pkgs/development/python-modules/ordereddict/default.nix deleted file mode 100644 index 6ef00640585..00000000000 --- a/pkgs/development/python-modules/ordereddict/default.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ lib -, buildPythonPackage -, fetchPypi -}: - -buildPythonPackage rec { - pname = "ordereddict"; - version = "1.1"; - - src = fetchPypi { - inherit pname version; - sha256 = "07qvy11nvgxpzarrni3wrww3vpc9yafgi2bch4j2vvvc42nb8d8w"; - }; - - meta = with lib; { - description = "A drop-in substitute for Py2.7's new collections.OrderedDict that works in Python 2.4-2.6"; - license = licenses.bsd3; - maintainers = with maintainers; [ ]; - }; - -} diff --git a/pkgs/development/python-modules/osmnx/default.nix b/pkgs/development/python-modules/osmnx/default.nix index 75a2ce44630..4442d2ddee0 100755 --- a/pkgs/development/python-modules/osmnx/default.nix +++ b/pkgs/development/python-modules/osmnx/default.nix @@ -3,14 +3,14 @@ buildPythonPackage rec { pname = "osmnx"; - version = "1.1.2"; - disabled = pythonOlder "3.6"; + version = "1.2.0"; + disabled = pythonOlder "3.8"; src = fetchFromGitHub { owner = "gboeing"; repo = pname; rev = "v${version}"; - sha256 = "sha256-qrTAXZFm88elMrVjvGwfdNwTA/PRdCOHFqpcgoKVGNk="; + sha256 = "sha256-HfgMmPEiKstMXV0rtul8QLxB1FY32Ws7IEonBB+qZOc="; }; propagatedBuildInputs = [ geopandas matplotlib networkx numpy pandas requests Rtree shapely folium scikit-learn scipy gdal rasterio ]; diff --git a/pkgs/development/python-modules/paramiko/default.nix b/pkgs/development/python-modules/paramiko/default.nix index 421d53b5a88..9a004694003 100644 --- a/pkgs/development/python-modules/paramiko/default.nix +++ b/pkgs/development/python-modules/paramiko/default.nix @@ -2,24 +2,25 @@ , bcrypt , buildPythonPackage , cryptography +, fetchpatch , fetchPypi +, gssapi , invoke , mock , pyasn1 , pynacl , pytest-relaxed , pytestCheckHook -, fetchpatch }: buildPythonPackage rec { pname = "paramiko"; - version = "2.10.4"; + version = "2.11.0"; format = "setuptools"; src = fetchPypi { inherit pname version; - sha256 = "sha256-PS5lC2gSzm0WCr/3AdbvRDTsl5NLE+lc8a09pw/7XFg="; + sha256 = "sha256-AD5r7nwDTCH7sFG/g9wKnuQQYgTdPFMFTHFFLMTsOTg="; }; patches = [ @@ -32,11 +33,9 @@ buildPythonPackage rec { ]; propagatedBuildInputs = [ - bcrypt cryptography pyasn1 - pynacl - ]; + ] ++ passthru.optional-dependencies.ed25519; # remove on 3.0 update checkInputs = [ invoke @@ -62,6 +61,12 @@ buildPythonPackage rec { __darwinAllowLocalNetworking = true; + passthru.optional-dependencies = { + gssapi = [ pyasn1 gssapi ]; + ed25519 = [ pynacl bcrypt ]; + invoke = [ invoke ]; + }; + meta = with lib; { homepage = "https://github.com/paramiko/paramiko/"; description = "Native Python SSHv2 protocol library"; diff --git a/pkgs/development/python-modules/pbr/default.nix b/pkgs/development/python-modules/pbr/default.nix index 7a03226b4dd..7fb0574f75a 100644 --- a/pkgs/development/python-modules/pbr/default.nix +++ b/pkgs/development/python-modules/pbr/default.nix @@ -7,13 +7,14 @@ buildPythonPackage rec { pname = "pbr"; - version = "5.8.1"; + version = "5.9.0"; src = fetchPypi { inherit pname version; - sha256 = "sha256-ZrxaNJEvQIuzklvyEjHLb1kgYme39j81A++GXBopLiU="; + sha256 = "sha256-6Nyi9LQ1YO3vWIE5afUqVs7wIxRsu4kxYm24DmwcQwg="; }; + # importlib-metadata could be added here if it wouldn't cause an infinite recursion propagatedBuildInputs = [ setuptools ]; # check in passthru.tests.pytest to escape infinite recursion with fixtures diff --git a/pkgs/development/python-modules/pefile/default.nix b/pkgs/development/python-modules/pefile/default.nix index 1a793644fb2..b1707670e76 100644 --- a/pkgs/development/python-modules/pefile/default.nix +++ b/pkgs/development/python-modules/pefile/default.nix @@ -8,14 +8,16 @@ buildPythonPackage rec { pname = "pefile"; - version = "2021.9.3"; + version = "2022.5.30"; + format = "setuptools"; + disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "erocarrera"; repo = pname; rev = "v${version}"; - sha256 = "0sr17rmqpr874m8rpkp8xdz8kjshhimbfgq13qy4lscaiznmlf0d"; + hash = "sha256-Cv20hJsErHFSuS5Q1kqLNp4DAsPXv/eFhaU9oYECSeI="; }; nativeBuildInputs = [ @@ -29,12 +31,14 @@ buildPythonPackage rec { # Test data encrypted doCheck = false; - pythonImportsCheck = [ "pefile" ]; + pythonImportsCheck = [ + "pefile" + ]; meta = with lib; { description = "Multi-platform Python module to parse and work with Portable Executable (aka PE) files"; homepage = "https://github.com/erocarrera/pefile"; license = licenses.mit; - maintainers = [ maintainers.pamplemousse ]; + maintainers = with maintainers; [ pamplemousse ]; }; } diff --git a/pkgs/development/python-modules/pgpy/default.nix b/pkgs/development/python-modules/pgpy/default.nix index 3c2e2c22a88..a53711a4de6 100644 --- a/pkgs/development/python-modules/pgpy/default.nix +++ b/pkgs/development/python-modules/pgpy/default.nix @@ -25,6 +25,11 @@ buildPythonPackage rec { pytestCheckHook ]; + disabledTests = [ + # assertions contains extra: IDEA has been deprecated + "test_encrypt_bad_cipher" + ]; + meta = with lib; { homepage = "https://github.com/SecurityInnovation/PGPy"; description = "Pretty Good Privacy for Python 2 and 3"; diff --git a/pkgs/development/python-modules/pillow/default.nix b/pkgs/development/python-modules/pillow/default.nix index 47ed191c6d9..e482cd75e1a 100644 --- a/pkgs/development/python-modules/pillow/default.nix +++ b/pkgs/development/python-modules/pillow/default.nix @@ -12,14 +12,14 @@ import ./generic.nix (rec { pname = "pillow"; - version = "9.1.0"; + version = "9.1.1"; disabled = pythonOlder "3.7"; src = fetchPypi { pname = "Pillow"; inherit version; - sha256 = "f401ed2bbb155e1ade150ccc63db1a4f6c1909d3d378f7d1235a44e90d75fb97"; + sha256 = "sha256-dQJTmTm1PXVl89Edh8eOfskA08cpRdTuDi8lDVmDCaA="; }; passthru.tests = { diff --git a/pkgs/development/python-modules/psutil/default.nix b/pkgs/development/python-modules/psutil/default.nix index 581e83ddf1a..197da3c76ce 100644 --- a/pkgs/development/python-modules/psutil/default.nix +++ b/pkgs/development/python-modules/psutil/default.nix @@ -1,18 +1,17 @@ { lib, stdenv, buildPythonPackage, fetchPypi, isPy27, python -, darwin +, IOKit , pytestCheckHook , mock -, ipaddress , unittest2 }: buildPythonPackage rec { pname = "psutil"; - version = "5.9.0"; + version = "5.9.1"; src = fetchPypi { inherit pname version; - sha256 = "869842dbd66bb80c3217158e629d6fceaecc3a3166d3d1faee515b05dd26ca25"; + sha256 = "sha256-V/GBm12elc37DIgailt9VC7Qt8Ui1XVwaoC+3ISMiVQ="; }; # We have many test failures on various parts of the package: @@ -24,7 +23,7 @@ buildPythonPackage rec { # https://github.com/giampaolo/psutil/issues/1912 doCheck = false; checkInputs = [ pytestCheckHook ] - ++ lib.optionals isPy27 [ mock ipaddress unittest2 ]; + ++ lib.optionals isPy27 [ mock unittest2 ]; # In addition to the issues listed above there are some that occure due to # our sandboxing which we can work around by disabling some tests: # - cpu_times was flaky on darwin @@ -42,7 +41,7 @@ buildPythonPackage rec { "cpu_freq" ]; - buildInputs = lib.optionals stdenv.isDarwin [ darwin.IOKit ]; + buildInputs = lib.optionals stdenv.isDarwin [ IOKit ]; pythonImportsCheck = [ "psutil" ]; diff --git a/pkgs/development/python-modules/psycopg2/default.nix b/pkgs/development/python-modules/psycopg2/default.nix index 56cd8fee7f9..8ebba4b0178 100644 --- a/pkgs/development/python-modules/psycopg2/default.nix +++ b/pkgs/development/python-modules/psycopg2/default.nix @@ -34,14 +34,17 @@ buildPythonPackage rec { openssl ]; + sphinxRoot = "doc/src"; + # requires setting up a postgresql database doCheck = false; - sphinxRoot = "doc/src"; + pythonImportsCheck = [ "psycopg2" ]; meta = with lib; { description = "PostgreSQL database adapter for the Python programming language"; homepage = "https://www.psycopg.org"; license = with licenses; [ lgpl3 zpl20 ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/python-modules/pure-eval/default.nix b/pkgs/development/python-modules/pure-eval/default.nix index 866b2bdcadf..ba84c1db5fa 100644 --- a/pkgs/development/python-modules/pure-eval/default.nix +++ b/pkgs/development/python-modules/pure-eval/default.nix @@ -1,6 +1,6 @@ { lib , buildPythonPackage -, isPy3k +, pythonOlder , fetchFromGitHub , setuptools-scm , toml @@ -9,15 +9,16 @@ buildPythonPackage rec { pname = "pure_eval"; - version = "0.2.1"; + version = "0.2.2"; + format = "setuptools"; - disabled = !isPy3k; + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "alexmojaki"; repo = pname; rev = "v${version}"; - sha256 = "sha256-+Vucu16NFPtQ23AbBH/cQU+klxp6DMicSScbnKegLZI="; + hash = "sha256-9N+UcgAv30s4ctgsBrOHiix4BoXhKPgxH/GOz/NIFdU="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; @@ -34,7 +35,9 @@ buildPythonPackage rec { pytestCheckHook ]; - pythonImportsCheck = [ "pure_eval" ]; + pythonImportsCheck = [ + "pure_eval" + ]; meta = with lib; { description = "Safely evaluate AST nodes without side effects"; diff --git a/pkgs/development/python-modules/pyannotate/default.nix b/pkgs/development/python-modules/pyannotate/default.nix index 332a4161fe7..50edda1a7ef 100644 --- a/pkgs/development/python-modules/pyannotate/default.nix +++ b/pkgs/development/python-modules/pyannotate/default.nix @@ -1,34 +1,42 @@ { lib , buildPythonPackage , fetchPypi +, mypy-extensions +, pytestCheckHook , pythonOlder , six -, mypy-extensions -, typing -, pytest }: buildPythonPackage rec { - version = "1.2.0"; pname = "pyannotate"; + version = "1.2.0"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "16bm0mf7wxvy0lgmcs1p8n1ji8pnvj1jvj8zk3am70dkp825iv84"; + hash = "sha256-BO1YBLqzgVPVmB/JLYPc9qIog0U3aFYfBX53flwFdZk="; }; - checkInputs = [ pytest ]; - propagatedBuildInputs = [ six mypy-extensions ] - ++ lib.optionals (pythonOlder "3.5") [ typing ]; + propagatedBuildInputs = [ + six + mypy-extensions + ]; + + checkInputs = [ + pytestCheckHook + ]; - checkPhase = '' - py.test - ''; + pythonImportsCheck = [ + "pyannotate_runtime" + "pyannotate_tools" + ]; meta = with lib; { - homepage = "https://github.com/dropbox/pyannotate"; description = "Auto-generate PEP-484 annotations"; + homepage = "https://github.com/dropbox/pyannotate"; license = licenses.mit; - maintainers = [ maintainers.costrouc ]; + maintainers = with maintainers; [ costrouc ]; }; } diff --git a/pkgs/development/python-modules/pyarrow/default.nix b/pkgs/development/python-modules/pyarrow/default.nix index 85d89424c83..53dde0cd0f6 100644 --- a/pkgs/development/python-modules/pyarrow/default.nix +++ b/pkgs/development/python-modules/pyarrow/default.nix @@ -2,7 +2,7 @@ , stdenv , buildPythonPackage , python -, isPy3k +, pythonOlder , arrow-cpp , cffi , cloudpickle @@ -28,14 +28,28 @@ in buildPythonPackage rec { pname = "pyarrow"; - disabled = !isPy3k; - inherit (_arrow-cpp) version src; + disabled = pythonOlder "3.7"; + sourceRoot = "apache-arrow-${version}/python"; - nativeBuildInputs = [ cmake cython pkg-config setuptools-scm ]; - propagatedBuildInputs = [ numpy six cloudpickle scipy fsspec cffi ]; + nativeBuildInputs = [ + cmake + cython + pkg-config + setuptools-scm + ]; + + propagatedBuildInputs = [ + cffi + cloudpickle + fsspec + numpy + scipy + six + ]; + checkInputs = [ hypothesis pandas @@ -62,6 +76,7 @@ buildPythonPackage rec { ARROW_TEST_DATA = lib.optionalString doCheck _arrow-cpp.ARROW_TEST_DATA; doCheck = true; + dontUseCmakeConfigure = true; preBuild = '' @@ -80,6 +95,9 @@ buildPythonPackage rec { "--deselect=pyarrow/tests/test_fs.py::test_s3_real_aws" "--deselect=pyarrow/tests/test_fs.py::test_s3_real_aws_region_selection" "--deselect=pyarrow/tests/test_fs.py::test_s3_options" + # Flaky test + "--deselect=pyarrow/tests/test_flight.py::test_roundtrip_errors" + "--deselect=pyarrow/tests/test_pandas.py::test_threaded_pandas_import" ] ++ lib.optionals stdenv.isDarwin [ # Requires loopback networking "--deselect=pyarrow/tests/test_ipc.py::test_socket_" @@ -90,6 +108,7 @@ buildPythonPackage rec { ]; dontUseSetuptoolsCheck = true; + preCheck = '' shopt -s extglob rm -r pyarrow/!(tests) @@ -98,7 +117,9 @@ buildPythonPackage rec { ulimit -n 1024 ''; - pythonImportsCheck = [ "pyarrow" ] ++ map (module: "pyarrow.${module}") ([ + pythonImportsCheck = [ + "pyarrow" + ] ++ map (module: "pyarrow.${module}") ([ "compute" "csv" "dataset" @@ -108,7 +129,9 @@ buildPythonPackage rec { "hdfs" "json" "parquet" - ] ++ lib.optionals (!stdenv.isDarwin) [ "plasma" ]); + ] ++ lib.optionals (!stdenv.isDarwin) [ + "plasma" + ]); meta = with lib; { description = "A cross-language development platform for in-memory data"; diff --git a/pkgs/development/python-modules/pyathena/default.nix b/pkgs/development/python-modules/pyathena/default.nix index 7a44cf995e3..78a75817bee 100644 --- a/pkgs/development/python-modules/pyathena/default.nix +++ b/pkgs/development/python-modules/pyathena/default.nix @@ -1,16 +1,16 @@ { lib -, buildPythonPackage -, fetchPypi , boto3 , botocore +, buildPythonPackage +, fetchPypi , pandas -, tenacity , pythonOlder +, tenacity }: buildPythonPackage rec { pname = "pyathena"; - version = "2.5.2"; + version = "2.9.1"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -18,7 +18,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "PyAthena"; inherit version; - sha256 = "sha256-vjoK6lEitvd5vqSEE/ael8q00O05lquKIviFK/bPlVQ="; + hash = "sha256-b1JdJhSe4ezKN4afZexwc/YT7OM9nIXHK7ca6nYRGnY="; }; propagatedBuildInputs = [ @@ -38,9 +38,9 @@ buildPythonPackage rec { ]; meta = with lib; { + description = "Python DB API 2.0 (PEP 249) client for Amazon Athena"; homepage = "https://github.com/laughingman7743/PyAthena/"; license = licenses.mit; - description = "Python DB API 2.0 (PEP 249) client for Amazon Athena"; maintainers = with maintainers; [ turion ]; }; } diff --git a/pkgs/development/python-modules/pybase64/default.nix b/pkgs/development/python-modules/pybase64/default.nix index ea7458f13b6..d4b67f2bb21 100644 --- a/pkgs/development/python-modules/pybase64/default.nix +++ b/pkgs/development/python-modules/pybase64/default.nix @@ -7,13 +7,13 @@ buildPythonPackage rec { pname = "pybase64"; - version = "1.2.1"; + version = "1.2.2"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "d2016a3a487d3d4501d8281f61ee54c25efd65e37a4c7dce8011e0de7183c956"; + sha256 = "sha256-vv2YOlp7ZVE1W2q+VnI/f58SxYDgLxJreIOwdb6/8lw="; }; checkInputs = [ pytestCheckHook ]; diff --git a/pkgs/development/python-modules/pycryptodome/default.nix b/pkgs/development/python-modules/pycryptodome/default.nix index e3e4e6c3a03..ef7b571170f 100644 --- a/pkgs/development/python-modules/pycryptodome/default.nix +++ b/pkgs/development/python-modules/pycryptodome/default.nix @@ -1,28 +1,43 @@ { lib , buildPythonPackage -, fetchPypi -, pycryptodome-test-vectors +, callPackage +, fetchFromGitHub +, cffi +, gmp }: +let + test-vectors = callPackage ./vectors.nix { }; +in buildPythonPackage rec { pname = "pycryptodome"; version = "3.14.1"; format = "setuptools"; - src = fetchPypi { - inherit pname version; - hash = "sha256-4E5Ap/jBZpGVU2o3l53YfaLDLb3HPW/jXwB3sMF8gDs="; + src = fetchFromGitHub { + owner = "Legrandin"; + repo = "pycryptodome"; + rev = "v${version}"; + hash = "sha256-0GjpKNyALe2Q1R3dEjeAEn6E8hxYDic/vbN1YkVaUfs="; }; + postPatch = '' + substituteInPlace lib/Crypto/Math/_IntegerGMP.py \ + --replace 'load_lib("gmp"' 'load_lib("${gmp}/lib/libgmp.so.10"' + ''; + + checkInputs = [ + test-vectors + ]; + pythonImportsCheck = [ "Crypto" ]; meta = with lib; { - description = "Python Cryptography Toolkit"; - homepage = "https://www.pycryptodome.org/"; + description = "Self-contained cryptographic library"; + homepage = "https://github.com/Legrandin/pycryptodome"; license = with licenses; [ bsd2 /* and */ asl20 ]; maintainers = with maintainers; [ fab ]; - platforms = platforms.unix; }; } diff --git a/pkgs/development/python-modules/pycryptodome-test-vectors/default.nix b/pkgs/development/python-modules/pycryptodome/vectors.nix index f6a2b715ad9..f6a2b715ad9 100644 --- a/pkgs/development/python-modules/pycryptodome-test-vectors/default.nix +++ b/pkgs/development/python-modules/pycryptodome/vectors.nix diff --git a/pkgs/development/python-modules/pycryptodomex/default.nix b/pkgs/development/python-modules/pycryptodomex/default.nix index 934c021ed90..9d476ea4728 100644 --- a/pkgs/development/python-modules/pycryptodomex/default.nix +++ b/pkgs/development/python-modules/pycryptodomex/default.nix @@ -1,27 +1,13 @@ -{ lib -, buildPythonPackage -, fetchPypi -, pycryptodome-test-vectors -}: +{ pycryptodome }: -buildPythonPackage rec { +(pycryptodome.overrideAttrs (oldAttrs: rec { pname = "pycryptodomex"; - version = "3.14.1"; - format = "setuptools"; - src = fetchPypi { - inherit pname version; - hash = "sha256-LOdu0Agf1qyMdO3HW50U7KIGQXOveYQ8JPpiVzJjwfI="; - }; + postPatch = '' + touch .separate_namespace + ''; pythonImportsCheck = [ "Cryptodome" ]; - - meta = with lib; { - description = "A self-contained cryptographic library for Python"; - homepage = "https://www.pycryptodome.org"; - license = with licenses; [ bsd2 /* and */ asl20 ]; - maintainers = with maintainers; [ fab ]; - }; -} +})) diff --git a/pkgs/development/python-modules/pydantic/default.nix b/pkgs/development/python-modules/pydantic/default.nix index aac95982cea..a886b5ba78c 100644 --- a/pkgs/development/python-modules/pydantic/default.nix +++ b/pkgs/development/python-modules/pydantic/default.nix @@ -9,11 +9,23 @@ , python-dotenv , pythonOlder , typing-extensions +# dependencies for building documentation. +, ansi2html +, markdown-include +, mkdocs +, mkdocs-exclude +, mkdocs-material +, mdx-truly-sane-lists +, sqlalchemy +, ujson +, orjson +, hypothesis }: buildPythonPackage rec { pname = "pydantic"; version = "1.9.0"; + outputs = [ "out" "doc" ]; disabled = pythonOlder "3.7"; src = fetchFromGitHub { @@ -23,8 +35,24 @@ buildPythonPackage rec { sha256 = "sha256-C4WP8tiMRFmkDkQRrvP3yOSM2zN8pHJmX9cdANIckpM="; }; + postPatch = '' + sed -i '/flake8/ d' Makefile + ''; + nativeBuildInputs = [ cython + + # dependencies for building documentation + ansi2html + markdown-include + mdx-truly-sane-lists + mkdocs + mkdocs-exclude + mkdocs-material + sqlalchemy + ujson + orjson + hypothesis ]; propagatedBuildInputs = [ @@ -43,6 +71,18 @@ buildPythonPackage rec { export HOME=$(mktemp -d) ''; + # Must include current directory into PYTHONPATH, since documentation + # building process expects "import pydantic" to work. + preBuild = '' + PYTHONPATH=$PWD:$PYTHONPATH make docs + ''; + + # Layout documentation in same way as "sphinxHook" does. + postInstall = '' + mkdir -p $out/share/doc/$name + mv ./site $out/share/doc/$name/html + ''; + enableParallelBuilding = true; pythonImportsCheck = [ "pydantic" ]; diff --git a/pkgs/development/python-modules/pyelftools/default.nix b/pkgs/development/python-modules/pyelftools/default.nix index ef9a7f1368e..cec999bf999 100644 --- a/pkgs/development/python-modules/pyelftools/default.nix +++ b/pkgs/development/python-modules/pyelftools/default.nix @@ -1,19 +1,23 @@ { lib +, stdenv , buildPythonPackage , fetchFromGitHub , python -, stdenv +, pythonOlder }: buildPythonPackage rec { pname = "pyelftools"; - version = "0.27"; + version = "0.28"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "eliben"; repo = pname; rev = "v${version}"; - sha256 = "09igdym2qj2fvfcazbz25qybmgz7ccrn25xn3havfkdkka0z0i3p"; + hash = "sha256-+T5C0ah2oj5E8fWaQbuzYRVgD5bSiUbaArrlxNLojvw="; }; doCheck = stdenv.hostPlatform.system == "x86_64-linux"; @@ -23,7 +27,9 @@ buildPythonPackage rec { ${python.interpreter} test/all_tests.py ''; - pythonImportsCheck = [ "elftools" ]; + pythonImportsCheck = [ + "elftools" + ]; meta = with lib; { description = "Python library for analyzing ELF files and DWARF debugging information"; diff --git a/pkgs/development/python-modules/pygal/default.nix b/pkgs/development/python-modules/pygal/default.nix index ae7277202bb..ae5274944af 100644 --- a/pkgs/development/python-modules/pygal/default.nix +++ b/pkgs/development/python-modules/pygal/default.nix @@ -1,59 +1,45 @@ { lib , buildPythonPackage , fetchPypi -, fetchpatch -, isPyPy -, flask -, pyquery -, pytest -, pytest-runner -, cairosvg -, tinycss -, cssselect , lxml +, cairosvg +, pyquery +, pytestCheckHook }: buildPythonPackage rec { pname = "pygal"; version = "3.0.0"; - doCheck = !isPyPy; # one check fails with pypy - src = fetchPypi { inherit pname version; sha256 = "sha256-KSP5XS5RWTCqWplyGdzO+/PZK36vX8HJ/ruVsJk1/bI="; }; - buildInputs = [ - flask - pyquery + postPatch = '' + substituteInPlace setup.py \ + --replace pytest-runner "" + ''; - # Should be a check input, but upstream lists it under "setup_requires". - # https://github.com/Kozea/pygal/issues/430 - pytest-runner - ]; + passthru.optional-dependencies = { + lxml = [ lxml ]; + png = [ cairosvg ]; + }; checkInputs = [ - pytest - ]; + pyquery + pytestCheckHook + ] ++ passthru.optional-dependencies.png; preCheck = '' # necessary on darwin to pass the testsuite export LANG=en_US.UTF-8 ''; - postPatch = '' - substituteInPlace setup.cfg --replace "[pytest]" "[tool:pytest]" - ''; - - propagatedBuildInputs = [ cairosvg tinycss cssselect ] - ++ lib.optionals (!isPyPy) [ lxml ]; - meta = with lib; { description = "Sexy and simple python charting"; homepage = "http://www.pygal.org"; license = licenses.lgpl3Plus; maintainers = with maintainers; [ sjourdois ]; }; - } diff --git a/pkgs/development/python-modules/pyjwt/default.nix b/pkgs/development/python-modules/pyjwt/default.nix index 8212d097aa8..500f46b0240 100644 --- a/pkgs/development/python-modules/pyjwt/default.nix +++ b/pkgs/development/python-modules/pyjwt/default.nix @@ -2,30 +2,26 @@ , buildPythonPackage , fetchPypi , cryptography -, ecdsa -, pytest-cov , pytestCheckHook , pythonOlder }: buildPythonPackage rec { pname = "pyjwt"; - version = "2.3.0"; + version = "2.4.0"; disabled = pythonOlder "3.6"; src = fetchPypi { pname = "PyJWT"; inherit version; - sha256 = "sha256-uIi01W8G9tzXdyEMM05pxze+dHVdPl6e4/5n3Big7kE="; + sha256 = "sha256-1CkIIIxpmzuXPL6wGpabpqlsgh7vscW/5MOQwB1nq7o="; }; propagatedBuildInputs = [ cryptography - ecdsa ]; checkInputs = [ - pytest-cov pytestCheckHook ]; diff --git a/pkgs/development/python-modules/pylink-square/default.nix b/pkgs/development/python-modules/pylink-square/default.nix index 287e8c338a8..7da521ef48f 100644 --- a/pkgs/development/python-modules/pylink-square/default.nix +++ b/pkgs/development/python-modules/pylink-square/default.nix @@ -6,44 +6,35 @@ , psutil , six , future +, pytestCheckHook }: -let - mock' = mock.overridePythonAttrs (old: rec { - version = "2.0.0"; - src = fetchPypi { - inherit (old) pname; - inherit version; - sha256 = "1flbpksir5sqrvq2z0dp8sl4bzbadg21sj4d42w3klpdfvgvcn5i"; - }; - }); -in buildPythonPackage rec { +buildPythonPackage rec { pname = "pylink-square"; - version = "0.8.1"; + version = "0.13.0"; + + format = "setuptools"; src = fetchFromGitHub { owner = "square"; repo = "pylink"; rev = "v${version}"; - sha256 = "1q5sm1017pcqcgwhsliiiv1wh609lrjdlc8f5ihlschk1d0qidpd"; + hash = "sha256-SH2oxOlsX5dE8wMXpWPA/rEVrJwxJzizsOiYbwaGjLw="; }; - buildInputs = [ mock' ]; propagatedBuildInputs = [ psutil six future ]; - preCheck = '' - # For an unknown reason, `pylink --version` output is different - # inside the nix build environment across different python versions - substituteInPlace tests/unit/test_main.py --replace \ - "expected = 'pylink %s' % pylink.__version__" \ - "return" - ''; + checkInputs = [ + mock + pytestCheckHook + ]; pythonImportsCheck = [ "pylink" ]; meta = with lib; { description = "Python interface for the SEGGER J-Link"; - homepage = "https://github.com/Square/pylink"; + homepage = "https://github.com/square/pylink"; + changelog = "https://github.com/square/pylink/blob/${src.rev}/CHANGELOG.md"; maintainers = with maintainers; [ dump_stack ]; license = licenses.asl20; }; diff --git a/pkgs/development/python-modules/pylint/default.nix b/pkgs/development/python-modules/pylint/default.nix index 9bb6cdf900d..5fa39298cb5 100644 --- a/pkgs/development/python-modules/pylint/default.nix +++ b/pkgs/development/python-modules/pylint/default.nix @@ -2,7 +2,6 @@ , lib , buildPythonPackage , fetchFromGitHub -, pythonAtLeast , pythonOlder , installShellFiles , astroid @@ -11,6 +10,7 @@ , mccabe , platformdirs , tomli +, tomlkit , typing-extensions , GitPython , pytest-timeout @@ -20,16 +20,16 @@ buildPythonPackage rec { pname = "pylint"; - version = "2.13.5"; + version = "2.14.1"; format = "setuptools"; - disabled = pythonOlder "3.6.2"; + disabled = pythonOlder "3.7.2"; src = fetchFromGitHub { owner = "PyCQA"; repo = pname; rev = "v${version}"; - sha256 = "sha256-FB99vmUtoTc0cTjDUSbx80Tesh0vASigSpPktrDYk08="; + sha256 = "sha256-rtyqHRDywv3l8bDgEjQlsh8lvwWbLswOPujFakaLWOw="; }; nativeBuildInputs = [ @@ -42,6 +42,7 @@ buildPythonPackage rec { isort mccabe platformdirs + tomlkit ] ++ lib.optionals (pythonOlder "3.11") [ tomli ] ++ lib.optionals (pythonOlder "3.9") [ @@ -65,9 +66,7 @@ buildPythonPackage rec { dontUseSetuptoolsCheck = true; - # calls executable in one of the tests preCheck = '' - export PATH=$PATH:$out/bin export HOME=$TEMPDIR ''; @@ -78,7 +77,15 @@ buildPythonPackage rec { "tests/pyreverse/test_writer.py" ]; - disabledTests = lib.optionals stdenv.isDarwin [ + disabledTests = [ + # AssertionError when self executing and checking output + # expected output looks like it should match though + "test_invocation_of_pylint_config" + "test_generate_rcfile" + "test_generate_toml_config" + "test_help_msg" + "test_output_of_callback_options" + ] ++ lib.optionals stdenv.isDarwin [ "test_parallel_execution" "test_py3k_jobs_option" ]; @@ -96,6 +103,6 @@ buildPythonPackage rec { - epylint: Emacs and Flymake compatible Pylint ''; license = licenses.gpl1Plus; - maintainers = with maintainers; [ totoroot ]; + maintainers = with maintainers; [ SuperSandro2000 ]; }; } diff --git a/pkgs/development/python-modules/pymemcache/default.nix b/pkgs/development/python-modules/pymemcache/default.nix index 81c05f4e97c..c9d3ef94d77 100644 --- a/pkgs/development/python-modules/pymemcache/default.nix +++ b/pkgs/development/python-modules/pymemcache/default.nix @@ -1,22 +1,24 @@ { lib , buildPythonPackage , fetchFromGitHub -, six -, future , mock +, six , pytestCheckHook +, pythonOlder }: buildPythonPackage rec { pname = "pymemcache"; - version = "3.5.1"; + version = "3.5.2"; format = "setuptools"; + disabled = pythonOlder "3.7"; + src = fetchFromGitHub { owner = "pinterest"; repo = pname; rev = "v${version}"; - sha256 = "sha256-DKqfv5gf9gzbnEPQSzy2mAaVYJZL9jmTKyGWVzj40T4="; + hash = "sha256-bsiFWZHGJO/07w6mFXzf0JwftJWClE2mTv86h8zT1K0="; }; propagatedBuildInputs = [ @@ -24,7 +26,6 @@ buildPythonPackage rec { ]; checkInputs = [ - future mock pytestCheckHook ]; @@ -38,7 +39,9 @@ buildPythonPackage rec { "TestClientSocketConnect" ]; - pythonImportsCheck = [ "pymemcache" ]; + pythonImportsCheck = [ + "pymemcache" + ]; meta = with lib; { description = "Python memcached client"; diff --git a/pkgs/development/python-modules/pyscss/default.nix b/pkgs/development/python-modules/pyscss/default.nix index 3b91236a6cc..5153663c6e8 100644 --- a/pkgs/development/python-modules/pyscss/default.nix +++ b/pkgs/development/python-modules/pyscss/default.nix @@ -1,11 +1,10 @@ { lib , buildPythonPackage , fetchFromGitHub -, pytest +, pytestCheckHook , six , enum34 , pathlib -, ordereddict , pythonOlder }: @@ -20,23 +19,19 @@ buildPythonPackage rec { sha256 = "sha256-z0y4z+/JE6rZWHAvps/taDZvutyVhxxs2gMujV5rNu4="; }; - checkInputs = [ pytest ]; + checkInputs = [ pytestCheckHook ]; propagatedBuildInputs = [ six ] - ++ (lib.optionals (pythonOlder "3.4") [ enum34 pathlib ]) - ++ (lib.optionals (pythonOlder "2.7") [ ordereddict ]); + ++ lib.optionals (pythonOlder "3.4") [ enum34 pathlib ]; # Test suite is broken. # See https://github.com/Kronuz/pyScss/issues/415 doCheck = false; - checkPhase = '' - py.test - ''; meta = with lib; { description = "A Scss compiler for Python"; homepage = "https://pyscss.readthedocs.org/en/latest/"; license = licenses.mit; + maintainers = with maintainers; [ ]; }; - } diff --git a/pkgs/development/python-modules/pyserial/default.nix b/pkgs/development/python-modules/pyserial/default.nix index b45b031fb84..92ef636932f 100644 --- a/pkgs/development/python-modules/pyserial/default.nix +++ b/pkgs/development/python-modules/pyserial/default.nix @@ -1,12 +1,21 @@ -{ stdenv, lib, fetchPypi, buildPythonPackage }: +{ lib +, stdenv +, buildPythonPackage +, fetchPypi +, python +, pythonOlder +}: buildPythonPackage rec { pname = "pyserial"; - version="3.5"; + version = "3.5"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "1nyd4m4mnrz8scbfqn4zpq8gnbl4x42w5zz62vcgpzqd2waf0xrw"; + hash = "sha256-PHfgFBcN//vYFub/wgXphC77EL6fWOwW0+hnW0klzds="; }; patches = [ @@ -14,13 +23,22 @@ buildPythonPackage rec { ./002-rfc2217-timeout-setter-for-rfc2217.patch ]; - checkPhase = "python -m unittest discover -s test"; doCheck = !stdenv.hostPlatform.isDarwin; # broken on darwin + checkPhase = '' + runHook preCheck + ${python.interpreter} -m unittest discover -s test + runHook postCheck + ''; + + pythonImportsCheck = [ + "serial" + ]; + meta = with lib; { - homepage = "https://github.com/pyserial/pyserial"; - license = licenses.psfl; description = "Python serial port extension"; + homepage = "https://github.com/pyserial/pyserial"; + license = licenses.bsd3; maintainers = with maintainers; [ makefu ]; }; } diff --git a/pkgs/development/python-modules/pytest-annotate/default.nix b/pkgs/development/python-modules/pytest-annotate/default.nix index bb4089c7536..d73e3b8f8e6 100644 --- a/pkgs/development/python-modules/pytest-annotate/default.nix +++ b/pkgs/development/python-modules/pytest-annotate/default.nix @@ -1,5 +1,5 @@ -{ stdenv -, lib +{ lib +, stdenv , buildPythonPackage , fetchPypi , pyannotate @@ -13,7 +13,7 @@ buildPythonPackage rec { src = fetchPypi { inherit pname version; - sha256 = "09269320f8d218728247436f7ade96f33cf3fe85840b40632142d9f8968c1fd0"; + hash = "sha256-CSaTIPjSGHKCR0Nvet6W8zzz/oWEC0BjIULZ+JaMH9A="; }; buildInputs = [ @@ -24,6 +24,11 @@ buildPythonPackage rec { pyannotate ]; + postPatch = '' + substituteInPlace setup.py \ + --replace "pytest>=3.2.0,<7.0.0" "pytest>=3.2.0" + ''; + # Module has no tests doCheck = false; diff --git a/pkgs/development/python-modules/pytest-httpbin/default.nix b/pkgs/development/python-modules/pytest-httpbin/default.nix index 7dc70c49280..c83724fa803 100644 --- a/pkgs/development/python-modules/pytest-httpbin/default.nix +++ b/pkgs/development/python-modules/pytest-httpbin/default.nix @@ -4,19 +4,23 @@ , httpbin , pytest , pytestCheckHook +, pythonOlder , requests , six }: buildPythonPackage rec { pname = "pytest-httpbin"; - version = "1.0.1"; + version = "1.0.2"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "kevin1024"; repo = "pytest-httpbin"; rev = "v${version}"; - hash = "sha256-Vngd8Vum96+rdG8Nz1+aHrO6WZjiAz+0CeIovaH8N+s="; + hash = "sha256-S4ThQx4H3UlKhunJo35esPClZiEn7gX/Qwo4kE1QMTI="; }; buildInputs = [ diff --git a/pkgs/development/python-modules/pytest-httpx/default.nix b/pkgs/development/python-modules/pytest-httpx/default.nix index 1fb4023b2d9..6a66727b1eb 100644 --- a/pkgs/development/python-modules/pytest-httpx/default.nix +++ b/pkgs/development/python-modules/pytest-httpx/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "pytest-httpx"; - version = "0.20.0"; + version = "0.21.0"; format = "setuptools"; disabled = pythonOlder "3.6"; @@ -19,7 +19,7 @@ buildPythonPackage rec { owner = "Colin-b"; repo = "pytest_httpx"; rev = "v${version}"; - sha256 = "sha256-9LDbVZgTmfyYAWylUy6Q4KH2gKpAa/o4IhqQV31BVgY="; + hash = "sha256-mUzmtZCguaab4fAE7VcUhv+NQVYiPpxxHpiVVlzwrIo="; }; buildInputs = [ diff --git a/pkgs/development/python-modules/pytest-localserver/default.nix b/pkgs/development/python-modules/pytest-localserver/default.nix index e3823c18d89..b64f3365dd6 100644 --- a/pkgs/development/python-modules/pytest-localserver/default.nix +++ b/pkgs/development/python-modules/pytest-localserver/default.nix @@ -1,20 +1,25 @@ { lib +, aiosmtpd , buildPythonPackage , fetchPypi , werkzeug +, pythonOlder }: buildPythonPackage rec { pname = "pytest-localserver"; - version = "0.5.1.post0"; + version = "0.6.0"; format = "setuptools"; + disabled = pythonOlder "3.6"; + src = fetchPypi { inherit pname version; - sha256 = "5ec7f8e6534cf03887af2cb59e577f169ac0e8b2fd2c3e3409280035f386d407"; + sha256 = "sha256-3cR5q6lqfaDnocx9OjA+UFgtbVBYA+j2e4JyGPn+D2U="; }; propagatedBuildInputs = [ + aiosmtpd werkzeug ]; diff --git a/pkgs/development/python-modules/pytest-randomly/default.nix b/pkgs/development/python-modules/pytest-randomly/default.nix index 5aae59bc605..8bb8c6d0637 100644 --- a/pkgs/development/python-modules/pytest-randomly/default.nix +++ b/pkgs/development/python-modules/pytest-randomly/default.nix @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "pytest-randomly"; - version = "3.11.0"; + version = "3.12.0"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -21,7 +21,7 @@ buildPythonPackage rec { repo = pname; owner = "pytest-dev"; rev = version; - hash = "sha256-NoYpMpFWz52Z0+KIUumUFp3xMPA1jGw8COojU+bsgHc="; + hash = "sha256-n/Xp/HghqcQUreez+QbR3Mi5hE1U4zoOJCdFqD+pVBk="; }; propagatedBuildInputs = lib.optionals (pythonOlder "3.10") [ diff --git a/pkgs/development/python-modules/pytest-subtests/default.nix b/pkgs/development/python-modules/pytest-subtests/default.nix index b1df1ceaad6..4b88991bb74 100644 --- a/pkgs/development/python-modules/pytest-subtests/default.nix +++ b/pkgs/development/python-modules/pytest-subtests/default.nix @@ -8,14 +8,14 @@ buildPythonPackage rec { pname = "pytest-subtests"; - version = "0.7.0"; + version = "0.8.0"; format = "setuptools"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "sha256-lcRMd+P77emEi7iMqQs4SBX8uoCQ75qfVWWasWOxaBw="; + sha256 = "sha256-Rus3YCLpJpUIFszCNQLeMnetzBOWZS3bMyjOAokFLE0="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/python-slugify/default.nix b/pkgs/development/python-modules/python-slugify/default.nix index 2f22a20afb3..5f985f0fafd 100644 --- a/pkgs/development/python-modules/python-slugify/default.nix +++ b/pkgs/development/python-modules/python-slugify/default.nix @@ -1,6 +1,6 @@ { lib , buildPythonPackage -, fetchPypi +, fetchFromGitHub , pytestCheckHook , pythonOlder , text-unidecode @@ -9,14 +9,16 @@ buildPythonPackage rec { pname = "python-slugify"; - version = "6.1.1"; + version = "6.1.2"; format = "setuptools"; disabled = pythonOlder "3.6"; - src = fetchPypi { - inherit pname version; - hash = "sha256-AAAzl/TjFBTpIs5WezpNoozxQ2pT0zLJrutRx9jEaf0="; + src = fetchFromGitHub { + owner = "un33k"; + repo = pname; + rev = "v${version}"; + hash = "sha256-JGjUNBEMuICsaClQGDSGX4qFRjecVKzmpPNRUTvfwho="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/pyzmq/default.nix b/pkgs/development/python-modules/pyzmq/default.nix index 60fcce9442a..62de8e72b4c 100644 --- a/pkgs/development/python-modules/pyzmq/default.nix +++ b/pkgs/development/python-modules/pyzmq/default.nix @@ -1,46 +1,68 @@ -{ buildPythonPackage +{ lib +, buildPythonPackage , fetchPypi +, py , pytestCheckHook +, python +, pythonOlder , tornado , zeromq -, py -, python }: buildPythonPackage rec { pname = "pyzmq"; - version = "22.3.0"; + version = "23.0.0"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "8eddc033e716f8c91c6a2112f0a8ebc5e00532b4a6ae1eb0ccc48e027f9c671c"; + hash = "sha256-pF9cBHfRLfBe8uKSK0m3wK6dD0/5trsNZmVY3w7zcSI="; }; + buildInputs = [ + zeromq + ]; + + propagatedBuildInputs = [ + py + ]; + checkInputs = [ pytestCheckHook tornado ]; - buildInputs = [ zeromq ]; - propagatedBuildInputs = [ py ]; - # failing tests - disabledTests = [ - "test_socket" # hangs - "test_current" - "test_instance" - "test_callable_check" - "test_on_recv_basic" - "test_on_recv_wake" - "test_monitor" # https://github.com/zeromq/pyzmq/issues/1272 - "test_cython" - "test_asyncio" # hangs - "test_mockable" # fails + pythonImportsCheck = [ + "zmq" ]; pytestFlagsArray = [ "$out/${python.sitePackages}/zmq/tests/" # Folder with tests ]; + disabledTests = [ + # Tests hang + "test_socket" + "test_monitor" + # https://github.com/zeromq/pyzmq/issues/1272 + "test_cython" + # Test fails + "test_mockable" + # Issues with the sandbox + "TestFutureSocket" + "TestIOLoop" + "TestPubLog" + ]; + # Some of the tests use localhost networking. __darwinAllowLocalNetworking = true; + + meta = with lib; { + description = "Python bindings for ØMQ"; + homepage = "https://pyzmq.readthedocs.io/"; + license = with licenses; [ bsd3 /* or */ lgpl3Only ]; + maintainers = with maintainers; [ ]; + }; } diff --git a/pkgs/development/python-modules/qiling/default.nix b/pkgs/development/python-modules/qiling/default.nix index 72995432814..fcceaa3d007 100644 --- a/pkgs/development/python-modules/qiling/default.nix +++ b/pkgs/development/python-modules/qiling/default.nix @@ -16,14 +16,14 @@ buildPythonPackage rec { pname = "qiling"; - version = "1.4.2"; + version = "1.4.3"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-myUGzNP4bf90d2gY5ZlYbVlTG640dj/Qha8/aMydvuw="; + hash = "sha256-sndRKknfY3LgqUf6FOobwczIStjzZkudVgUR1EQSyeU="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/qutip/default.nix b/pkgs/development/python-modules/qutip/default.nix index 75c186fc835..e99deef489f 100644 --- a/pkgs/development/python-modules/qutip/default.nix +++ b/pkgs/development/python-modules/qutip/default.nix @@ -1,70 +1,91 @@ -{ lib, stdenv, fetchFromGitHub, buildPythonPackage, python, packaging, numpy -, cython, scipy, matplotlib, pytestCheckHook, pytest-rerunfailures -, doCheck ? false +{ lib +, stdenv +, buildPythonPackage +, cvxopt +, cvxpy +, cython +, doCheck ? true +, fetchFromGitHub +, matplotlib +, numpy +, packaging +, pytest-rerunfailures +, pytestCheckHook +, python +, pythonOlder +, scipy }: -let - self = buildPythonPackage rec { - pname = "qutip"; - version = "4.6.3"; +buildPythonPackage rec { + pname = "qutip"; + version = "4.7.0"; + format = "setuptools"; - src = fetchFromGitHub { - owner = pname; - repo = pname; - rev = "v${version}"; - sha256 = "sha256-11K7Tl7PE98nM2vGsa+OKIJYu0Wmv8dT700PDt9RRVk="; - }; + disabled = pythonOlder "3.7"; - # QuTiP says it needs specific (old) Numpy versions. We overwrite them here - # as the tests work perfectly fine with up-to-date packages. - postPatch = '' - substituteInPlace setup.cfg --replace "numpy>=1.16.6,<1.20" "numpy>=1.16.6" - ''; + src = fetchFromGitHub { + owner = pname; + repo = pname; + rev = "v${version}"; + hash = "sha256-wGr6uTM6pFL2nvN4zdqPdEO8O3kjrRtKWx8luL1t9Sw="; + }; - # Disabling OpenMP support on Darwin. - setupPyGlobalFlags = lib.optional (!stdenv.isDarwin) "--with-openmp"; + nativeBuildInputs = [ + cython + ]; - propagatedBuildInputs = [ - packaging - numpy - cython - scipy - matplotlib - ]; + propagatedBuildInputs = [ + numpy + packaging + scipy + ]; - checkInputs = [ - pytestCheckHook - pytest-rerunfailures - ]; + checkInputs = [ + pytestCheckHook + pytest-rerunfailures + ] ++ passthru.optional-dependencies.graphics; + + # Disabling OpenMP support on Darwin. + setupPyGlobalFlags = lib.optional (!stdenv.isDarwin) [ + "--with-openmp" + ]; - # test suite is very cpu intensive - inherit doCheck; - # - QuTiP tries to access the home directory to create an rc file for us. - # This of course fails and therefore, we provide a writable temp dir as HOME. - # - We need to go to another directory to run the tests from there. - # This is due to the Cython-compiled modules not being in the correct location - # of the source tree. - # - For running tests, see: - # https://qutip.org/docs/latest/installation.html#verifying-the-installation - checkPhase = '' - export OMP_NUM_THREADS=$NIX_BUILD_CORES - export HOME=$(mktemp -d) - mkdir -p test && cd test - ${python.interpreter} -c "import qutip.testing; qutip.testing.run()" - ''; + # QuTiP tries to access the home directory to create an rc file for us. + # We need to go to another directory to run the tests from there. + # This is due to the Cython-compiled modules not being in the correct location + # of the source tree. + preCheck = '' + export HOME=$(mktemp -d); + export OMP_NUM_THREADS=$NIX_BUILD_CORES + mkdir -p test && cd test + ''; - pythonImportsCheck = [ "qutip" ]; + # For running tests, see https://qutip.org/docs/latest/installation.html#verifying-the-installation + checkPhase = '' + runHook preCheck + ${python.interpreter} -c "import qutip.testing; qutip.testing.run()" + runHook postCheck + ''; - passthru.tests = { - all-tests = self.override { doCheck = true; }; - }; + pythonImportsCheck = [ + "qutip" + ]; + + passthru.optional-dependencies = { + graphics = [ + matplotlib + ]; + semidefinite = [ + cvxpy + cvxopt + ]; + }; - meta = with lib; { - broken = (stdenv.isLinux && stdenv.isAarch64); - description = "Open-source software for simulating the dynamics of closed and open quantum systems"; - homepage = "https://qutip.org/"; - license = licenses.bsd3; - maintainers = [ maintainers.fabiangd ]; - }; + meta = with lib; { + broken = (stdenv.isLinux && stdenv.isAarch64); + description = "Open-source software for simulating the dynamics of closed and open quantum systems"; + homepage = "https://qutip.org/"; + license = licenses.bsd3; + maintainers = with maintainers; [ fabiangd ]; }; -in self +} diff --git a/pkgs/development/python-modules/raven/default.nix b/pkgs/development/python-modules/raven/default.nix index 45a408640b5..cdcec2bf249 100644 --- a/pkgs/development/python-modules/raven/default.nix +++ b/pkgs/development/python-modules/raven/default.nix @@ -1,5 +1,8 @@ -{ lib, buildPythonPackage, fetchFromGitHub, isPy3k -, contextlib2, blinker +{ lib +, buildPythonPackage +, fetchFromGitHub +, blinker +, flask }: buildPythonPackage rec { @@ -13,14 +16,17 @@ buildPythonPackage rec { sha256 = "16x9ldl8cy7flw5kh7qmgbmflqyf210j3q6ac2lw61sgwajsnvw8"; }; - # way too many dependencies to run tests - # see https://github.com/getsentry/raven-python/blob/master/setup.py + # requires outdated dependencies which have no official support for python 3.4 doCheck = false; - propagatedBuildInputs = [ blinker ] ++ lib.optionals (!isPy3k) [ contextlib2 ]; + pythonImportsCheck = [ "raven" ]; + + passthru.optional-dependencies = { + flask = [ blinker flask ]; + }; meta = { - description = "A Python client for Sentry (getsentry.com)"; + description = "Legacy Python client for Sentry (getsentry.com) — replaced by sentry-python"; homepage = "https://github.com/getsentry/raven-python"; license = [ lib.licenses.bsd3 ]; maintainers = with lib.maintainers; [ primeos ]; diff --git a/pkgs/development/python-modules/repoze_lru/default.nix b/pkgs/development/python-modules/repoze_lru/default.nix index e986f47e6e0..cfe19f6b637 100644 --- a/pkgs/development/python-modules/repoze_lru/default.nix +++ b/pkgs/development/python-modules/repoze_lru/default.nix @@ -12,11 +12,12 @@ buildPythonPackage rec { sha256 = "0429a75e19380e4ed50c0694e26ac8819b4ea7851ee1fc7583c8572db80aff77"; }; + pythonImportsCheck = [ "repoze.lru" ]; + meta = with lib; { description = "A tiny LRU cache implementation and decorator"; homepage = "http://www.repoze.org/"; license = licenses.bsd0; maintainers = with maintainers; [ domenkozar ]; }; - } diff --git a/pkgs/development/python-modules/requests/default.nix b/pkgs/development/python-modules/requests/default.nix index 559ce70533c..be996151f98 100644 --- a/pkgs/development/python-modules/requests/default.nix +++ b/pkgs/development/python-modules/requests/default.nix @@ -1,5 +1,6 @@ { lib , stdenv +, pythonOlder , brotli , brotlicffi , buildPythonPackage @@ -21,6 +22,8 @@ buildPythonPackage rec { pname = "requests"; version = "2.27.1"; + disabled = pythonOlder "3.7"; + src = fetchPypi { inherit pname version; hash = "sha256-aNfFb9WomZiHco7zBKbRLtx7508c+kdxT8i0FFJcmmE="; @@ -32,23 +35,29 @@ buildPythonPackage rec { ]; propagatedBuildInputs = [ + brotlicffi certifi + charset-normalizer idna urllib3 - chardet - ] ++ lib.optionals isPy3k [ - brotlicffi - charset-normalizer - ] ++ lib.optionals isPy27 [ - brotli ]; + passthru.optional-dependencies = { + security = []; + socks = [ + pysocks + ]; + use_chardet_on_py3 = [ + chardet + ]; + }; + checkInputs = [ - pysocks pytest-mock pytest-xdist pytestCheckHook - ]; + ] + ++ passthru.optional-dependencies.socks; # AttributeError: 'KeywordMapping' object has no attribute 'get' doCheck = !isPy27; diff --git a/pkgs/development/python-modules/responses/default.nix b/pkgs/development/python-modules/responses/default.nix index 7f9372dcdb7..1343aa6cfd0 100644 --- a/pkgs/development/python-modules/responses/default.nix +++ b/pkgs/development/python-modules/responses/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "responses"; - version = "0.20.0"; + version = "0.21.0"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -19,7 +19,7 @@ buildPythonPackage rec { owner = "getsentry"; repo = pname; rev = version; - hash = "sha256-dhIKMQXBJfZGIanJN1bFmlr/FYL1UYgYKGYaSznKhZs="; + hash = "sha256-qYohrXrQkUBPo7yC+ZOwidDaCg/2nteXKAOCUvR4k2Q="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/rokuecp/default.nix b/pkgs/development/python-modules/rokuecp/default.nix index fefec51c2bc..23c113bc46d 100644 --- a/pkgs/development/python-modules/rokuecp/default.nix +++ b/pkgs/development/python-modules/rokuecp/default.nix @@ -8,6 +8,7 @@ , fetchFromGitHub , poetry-core , pytest-asyncio +, pytest-freezegun , pytestCheckHook , pythonOlder , xmltodict @@ -43,8 +44,9 @@ buildPythonPackage rec { checkInputs = [ aresponses - pytestCheckHook pytest-asyncio + pytest-freezegun + pytestCheckHook ]; postPatch = '' @@ -59,6 +61,9 @@ buildPythonPackage rec { "test_get_dns_state" # Assertion issue "test_guess_stream_format" + "test_update_tv" + "test_get_apps_single_app" + "test_get_tv_channels_single_channel" ]; pythonImportsCheck = [ diff --git a/pkgs/development/python-modules/routes/default.nix b/pkgs/development/python-modules/routes/default.nix index 1176fcb4eb0..ea548fcfe56 100644 --- a/pkgs/development/python-modules/routes/default.nix +++ b/pkgs/development/python-modules/routes/default.nix @@ -5,30 +5,29 @@ , six , soupsieve , webob -, coverage -, webtest }: buildPythonPackage rec { - pname = "Routes"; + pname = "routes"; version = "2.5.1"; src = fetchPypi { - inherit pname version; + pname = "Routes"; + inherit version; sha256 = "b6346459a15f0cbab01a45a90c3d25caf980d4733d628b4cc1952b865125d053"; }; propagatedBuildInputs = [ repoze_lru six soupsieve webob ]; + # incompatible with latest soupsieve doCheck = false; - checkInputs = [ coverage soupsieve webtest ]; pythonImportsCheck = [ "routes" ]; meta = with lib; { - description = "A Python re-implementation of the Rails routes system for mapping URLs to application actions"; - homepage = "http://routes.groovie.org/"; + description = "Re-implementation of the Rails routes system for mapping URLs to application actions"; + homepage = "https://github.com/bbangert/routes"; license = licenses.mit; + maintainers = with maintainers; [ ]; }; - } diff --git a/pkgs/development/python-modules/s3fs/default.nix b/pkgs/development/python-modules/s3fs/default.nix index 4bfe4be5e8c..18332b23415 100644 --- a/pkgs/development/python-modules/s3fs/default.nix +++ b/pkgs/development/python-modules/s3fs/default.nix @@ -1,19 +1,24 @@ -{ stdenv -, lib +{ lib +, stdenv +, aiobotocore +, aiohttp , buildPythonPackage -, fetchPypi , docutils -, aiobotocore +, fetchPypi , fsspec +, pythonOlder }: buildPythonPackage rec { pname = "s3fs"; - version = "2022.2.0"; + version = "2022.5.0"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "sha256-RhHQ9+QeW8nawwCQcOCtN9qHpC9t73W0gTwG9+QEpzg="; + hash = "sha256-tAo8v6+Ay6uvDjMjMRF8ysaSkO/aw0cYT7OrYAP3BGU="; }; buildInputs = [ @@ -22,6 +27,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ aiobotocore + aiohttp fsspec ]; @@ -30,7 +36,9 @@ buildPythonPackage rec { # pythonPackages. doCheck = false; - pythonImportsCheck = [ "s3fs" ]; + pythonImportsCheck = [ + "s3fs" + ]; meta = with lib; { broken = (stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin; diff --git a/pkgs/development/python-modules/sanic-testing/default.nix b/pkgs/development/python-modules/sanic-testing/default.nix index 173e2b91ff7..398f3dad632 100644 --- a/pkgs/development/python-modules/sanic-testing/default.nix +++ b/pkgs/development/python-modules/sanic-testing/default.nix @@ -23,6 +23,10 @@ buildPythonPackage rec { "testsout" ]; + postPatch = '' + sed -i 's/httpx>=.*"/httpx"/' setup.py + ''; + propagatedBuildInputs = [ httpx sanic diff --git a/pkgs/development/python-modules/selectors2/default.nix b/pkgs/development/python-modules/selectors2/default.nix index 3f594c5a59f..dc108502ce9 100644 --- a/pkgs/development/python-modules/selectors2/default.nix +++ b/pkgs/development/python-modules/selectors2/default.nix @@ -10,6 +10,10 @@ buildPythonPackage rec { sha256 = "1f1bbaac203a23fbc851dc1b5a6e92c50698cc8cefa5873eb5b89eef53d1d82b"; }; + patches = [ + ./mapping-import.patch + ]; + checkInputs = [ nose psutil mock ]; checkPhase = '' diff --git a/pkgs/development/python-modules/selectors2/mapping-import.patch b/pkgs/development/python-modules/selectors2/mapping-import.patch new file mode 100644 index 00000000000..64f74a5ce29 --- /dev/null +++ b/pkgs/development/python-modules/selectors2/mapping-import.patch @@ -0,0 +1,14 @@ +diff --git a/selectors2.py b/selectors2.py +index 1625a30..c4a1231 100644 +--- a/selectors2.py ++++ b/selectors2.py +@@ -22,7 +22,8 @@ + # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + # SOFTWARE. + +-from collections import namedtuple, Mapping ++from collections import namedtuple ++from collections.abc import Mapping + import errno + import math + import platform diff --git a/pkgs/development/python-modules/selenium/default.nix b/pkgs/development/python-modules/selenium/default.nix index e606819159c..a1db98deeb7 100644 --- a/pkgs/development/python-modules/selenium/default.nix +++ b/pkgs/development/python-modules/selenium/default.nix @@ -1,59 +1,54 @@ { lib -, stdenv -, fetchPypi , fetchFromGitHub , buildPythonPackage , geckodriver +, pytestCheckHook +, pythonOlder +, trio +, trio-websocket , urllib3 -, xorg , nixosTests }: -let - # Recompiling x_ignore_nofocus.so as the original one dlopen's libX11.so.6 by some - # absolute paths. Replaced by relative path so it is found when used in nix. - x_ignore_nofocus = - fetchFromGitHub { - owner = "SeleniumHQ"; - repo = "selenium"; - rev = "selenium-3.6.0"; - sha256 = "13wf4hx4i7nhl4s8xkziwxl0km1j873syrj4amragj6mpip2wn8v"; - }; -in - buildPythonPackage rec { pname = "selenium"; - version = "3.141.0"; - - src = fetchPypi { - inherit pname version; - sha256 = "039hf9knvl4s3hp21bzwsp1g5ri9gxsh504dp48lc6nr1av35byy"; + version = "4.2.0"; + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "SeleniumHQ"; + repo = "selenium"; + rev = "selenium-${version}"; # check if there is a newer tag with -python suffix + sha256 = "sha256-KhBCMsWGRD7hJqumA1+K8AVhJ7hq26XkEa1QbgY0Q0w="; }; - buildInputs = [ xorg.libX11 ]; + postPatch = '' + substituteInPlace py/selenium/webdriver/firefox/service.py \ + --replace 'DEFAULT_EXECUTABLE_PATH = "geckodriver"' 'DEFAULT_EXECUTABLE_PATH = "${geckodriver}/bin/geckodriver"' + ''; + + preConfigure = '' + cd py + ''; propagatedBuildInputs = [ - geckodriver urllib3 + trio + trio-websocket + urllib3 + ] ++ urllib3.optional-dependencies.secure + ++ urllib3.optional-dependencies.socks; + + checkInputs = [ + pytestCheckHook ]; - postPatch = lib.optionalString stdenv.isLinux '' - cp "${x_ignore_nofocus}/cpp/linux-specific/"* . - substituteInPlace x_ignore_nofocus.c --replace "/usr/lib/libX11.so.6" "${lib.getLib xorg.libX11}/lib/libX11.so.6" - cc -c -fPIC x_ignore_nofocus.c -o x_ignore_nofocus.o - cc -shared \ - -Wl,${if stdenv.isDarwin then "-install_name" else "-soname"},x_ignore_nofocus.so \ - -o x_ignore_nofocus.so \ - x_ignore_nofocus.o - cp -v x_ignore_nofocus.so selenium/webdriver/firefox/${if stdenv.is64bit then "amd64" else "x86"}/ - ''; - passthru.tests = { testing-vaultwarden = nixosTests.vaultwarden; }; meta = with lib; { - description = "The selenium package is used to automate web browser interaction from Python"; - homepage = "http://www.seleniumhq.org"; + description = "Bindings for Selenium WebDriver"; + homepage = "https://selenium.dev/"; license = licenses.asl20; maintainers = with maintainers; [ jraygauthier ]; }; diff --git a/pkgs/development/python-modules/simple-rest-client/default.nix b/pkgs/development/python-modules/simple-rest-client/default.nix index d4cbfdbfb94..4b5b2ed0681 100644 --- a/pkgs/development/python-modules/simple-rest-client/default.nix +++ b/pkgs/development/python-modules/simple-rest-client/default.nix @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "simple-rest-client"; - version = "1.1.2"; + version = "1.1.3"; format = "setuptools"; disabled = pythonOlder "3.8"; @@ -21,7 +21,7 @@ buildPythonPackage rec { owner = "allisson"; repo = "python-simple-rest-client"; rev = version; - sha256 = "sha256-kyoFtPa94c5EAT7wBEXdkPEg8Bp3hJQQoFsutap1qvs="; + sha256 = "sha256-HdGYLDrqQvd7hvjwhC5dY2amdHUZHTYJvD1QP89lcXU="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/sleekxmpp/default.nix b/pkgs/development/python-modules/sleekxmpp/default.nix index 187ae018fdd..41578b3dc04 100644 --- a/pkgs/development/python-modules/sleekxmpp/default.nix +++ b/pkgs/development/python-modules/sleekxmpp/default.nix @@ -1,9 +1,11 @@ -{ stdenv, lib, fetchPypi, buildPythonPackage, dnspython, pyasn1 }: +{ stdenv, lib, fetchPypi, buildPythonPackage, pythonAtLeast, dnspython, pyasn1 }: buildPythonPackage rec { pname = "sleekxmpp"; version = "1.3.3"; + disabled = pythonAtLeast "3.10"; # Deprecated in favor of Slixmpp + propagatedBuildInputs = [ dnspython pyasn1 ]; patches = [ diff --git a/pkgs/development/python-modules/snowflake-connector-python/default.nix b/pkgs/development/python-modules/snowflake-connector-python/default.nix index 5077bbd2d17..06474e645e4 100644 --- a/pkgs/development/python-modules/snowflake-connector-python/default.nix +++ b/pkgs/development/python-modules/snowflake-connector-python/default.nix @@ -45,7 +45,8 @@ buildPythonPackage rec { postPatch = '' substituteInPlace setup.cfg \ - --replace "pyOpenSSL>=16.2.0,<23.0.0" "pyOpenSSL" + --replace "pyOpenSSL>=16.2.0,<23.0.0" "pyOpenSSL" \ + --replace "cryptography>=3.1.0,<37.0.0" "cryptography" ''; # Tests require encrypted secrets, see diff --git a/pkgs/development/python-modules/snowflake-sqlalchemy/default.nix b/pkgs/development/python-modules/snowflake-sqlalchemy/default.nix index e40a3f8b588..b2b6f92a01a 100644 --- a/pkgs/development/python-modules/snowflake-sqlalchemy/default.nix +++ b/pkgs/development/python-modules/snowflake-sqlalchemy/default.nix @@ -1,8 +1,9 @@ { buildPythonPackage , lib , fetchPypi -, sqlalchemy +, six , snowflake-connector-python +, sqlalchemy }: buildPythonPackage rec { @@ -15,8 +16,9 @@ buildPythonPackage rec { }; propagatedBuildInputs = [ - sqlalchemy + six snowflake-connector-python + sqlalchemy ]; # Pypi does not include tests diff --git a/pkgs/development/python-modules/snscrape/default.nix b/pkgs/development/python-modules/snscrape/default.nix index 98933759f0b..379159180a0 100644 --- a/pkgs/development/python-modules/snscrape/default.nix +++ b/pkgs/development/python-modules/snscrape/default.nix @@ -2,6 +2,7 @@ , beautifulsoup4 , buildPythonPackage , fetchFromGitHub +, filelock , lxml , pythonOlder , pytz @@ -11,15 +12,16 @@ buildPythonPackage rec { pname = "snscrape"; - version = "unstable-2021-08-30"; + version = "0.4.3.20220106"; + format = "setuptools"; disabled = pythonOlder "3.8"; src = fetchFromGitHub { owner = "JustAnotherArchivist"; repo = pname; - rev = "c76f1637ce1d7a154af83495b67ead2559cd5715"; - sha256 = "01x4961fxj1p98y6fcyxw5sv8fa87x41fdx9p31is12bdkmqxi6v"; + rev = "v${version}"; + hash = "sha256-gphNT1IYSiAw22sqHlV8Rm4WRP4EWUvP0UkITuepmMc="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; @@ -30,9 +32,12 @@ buildPythonPackage rec { propagatedBuildInputs = [ beautifulsoup4 + filelock lxml requests - ] ++ lib.optionals (pythonOlder "3.9") [ + ] + ++ requests.optional-dependencies.socks + ++ lib.optionals (pythonOlder "3.9") [ pytz ]; @@ -42,11 +47,13 @@ buildPythonPackage rec { snscrape --help ''; - pythonImportsCheck = [ "snscrape" ]; + pythonImportsCheck = [ + "snscrape" + ]; meta = with lib; { + description = "A social networking service scraper"; homepage = "https://github.com/JustAnotherArchivist/snscrape"; - description = "A social networking service scraper in Python"; license = licenses.gpl3Plus; maintainers = with maintainers; [ ivan ]; }; diff --git a/pkgs/development/python-modules/sopel/default.nix b/pkgs/development/python-modules/sopel/default.nix index bbc3f8edbf2..ac0a3936313 100644 --- a/pkgs/development/python-modules/sopel/default.nix +++ b/pkgs/development/python-modules/sopel/default.nix @@ -1,11 +1,15 @@ -{ lib, buildPythonPackage, fetchPypi, isPyPy +{ lib +, buildPythonPackage , dnspython +, fetchPypi , geoip2 , ipython +, isPyPy , praw , pyenchant , pygeoip , pytestCheckHook +, pythonOlder , pytz , sqlalchemy , xmltodict @@ -13,12 +17,14 @@ buildPythonPackage rec { pname = "sopel"; - version = "7.1.8"; - disabled = isPyPy; + version = "7.1.9"; + format = "setuptools"; + + disabled = isPyPy || pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "sha256-zxb95GVcDrd3FG/k+0PLg+dVlMgQpf1ntG8jF/zpHH4="; + hash = "sha256-IJ+ovLQv6/UU1oepmUQjzaWBG3Rdd3xvui7FjK85Urs="; }; propagatedBuildInputs = [ @@ -33,15 +39,17 @@ buildPythonPackage rec { xmltodict ]; - # remove once https://github.com/sopel-irc/sopel/pull/1653 lands + checkInputs = [ + pytestCheckHook + ]; + postPatch = '' substituteInPlace requirements.txt \ --replace "praw>=4.0.0,<6.0.0" "praw" \ - --replace "sqlalchemy<1.4" "sqlalchemy" + --replace "sqlalchemy<1.4" "sqlalchemy" \ + --replace "xmltodict==0.12" "xmltodict>=0.12" ''; - checkInputs = [ pytestCheckHook ]; - preCheck = '' export TESTDIR=$(mktemp -d) cp -R ./test $TESTDIR @@ -52,7 +60,9 @@ buildPythonPackage rec { popd ''; - pythonImportsCheck = [ "sopel" ]; + pythonImportsCheck = [ + "sopel" + ]; meta = with lib; { description = "Simple and extensible IRC bot"; diff --git a/pkgs/development/python-modules/soupsieve/default.nix b/pkgs/development/python-modules/soupsieve/default.nix index 6c50cc6e115..8d92e49427a 100644 --- a/pkgs/development/python-modules/soupsieve/default.nix +++ b/pkgs/development/python-modules/soupsieve/default.nix @@ -1,8 +1,6 @@ { lib , buildPythonPackage , fetchPypi -, pytest -, beautifulsoup4 , isPy3k , backports_functools_lru_cache }: @@ -16,21 +14,18 @@ buildPythonPackage rec { sha256 = "b8d49b1cd4f037c7082a9683dfa1801aa2597fb11c3a1155b7a5b94829b4f1f9"; }; - checkPhase = '' - py.test - ''; - - checkInputs = [ pytest beautifulsoup4 ]; - propagatedBuildInputs = lib.optional (!isPy3k) backports_functools_lru_cache; - # Circular test dependency on beautifulsoup4 + # Circular dependency on beautifulsoup4 doCheck = false; - meta = { + # Circular dependency on beautifulsoup4 + # pythonImportsCheck = [ "soupsieve" ]; + + meta = with lib; { description = "A CSS4 selector implementation for Beautiful Soup"; - license = lib.licenses.mit; + license = licenses.mit; homepage = "https://github.com/facelessuser/soupsieve"; + maintainers = with maintainers; [ ]; }; - } diff --git a/pkgs/development/python-modules/sparse/default.nix b/pkgs/development/python-modules/sparse/default.nix index c081ab5e3a1..2a11e1f1458 100644 --- a/pkgs/development/python-modules/sparse/default.nix +++ b/pkgs/development/python-modules/sparse/default.nix @@ -1,24 +1,24 @@ { lib , buildPythonPackage +, dask , fetchPypi -, isPy3k , numba , numpy -, scipy - # Test Inputs , pytestCheckHook -, dask +, pythonOlder +, scipy }: buildPythonPackage rec { pname = "sparse"; version = "0.13.0"; + format = "setuptools"; - disabled = !isPy3k; + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "685dc994aa770ee1b23f2d5392819c8429f27958771f8dceb2c4fb80210d5915"; + hash = "sha256-aF3JlKp3DuGyPy1TkoGchCnyeVh3H43OssT7gCENWRU="; }; propagatedBuildInputs = [ @@ -26,16 +26,22 @@ buildPythonPackage rec { numpy scipy ]; - checkInputs = [ pytestCheckHook dask ]; - pythonImportsCheck = [ "sparse" ]; + checkInputs = [ + dask + pytestCheckHook + ]; + + pythonImportsCheck = [ + "sparse" + ]; meta = with lib; { description = "Sparse n-dimensional arrays computations"; - homepage = "https://sparse.pydata.org/en/stable/"; + homepage = "https://sparse.pydata.org/"; changelog = "https://sparse.pydata.org/en/stable/changelog.html"; downloadPage = "https://github.com/pydata/sparse/releases/tag/${version}"; license = licenses.bsd3; - maintainers = [ maintainers.costrouc ]; + maintainers = with maintainers; [ costrouc ]; }; } diff --git a/pkgs/development/python-modules/sphinxcontrib-bayesnet/default.nix b/pkgs/development/python-modules/sphinxcontrib-bayesnet/default.nix index 4b44619b4c3..6f53dd79d36 100644 --- a/pkgs/development/python-modules/sphinxcontrib-bayesnet/default.nix +++ b/pkgs/development/python-modules/sphinxcontrib-bayesnet/default.nix @@ -16,10 +16,10 @@ buildPythonPackage rec { pythonImportsCheck = [ "sphinxcontrib.bayesnet" ]; meta = with lib; { - broken = (stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin; homepage = "https://github.com/jluttine/sphinx-bayesnet"; description = "Bayesian networks and factor graphs in Sphinx using TikZ syntax"; license = licenses.gpl3Only; maintainers = with maintainers; [ jluttine ]; + broken = true; # relies on 2to3 conversion, which was removed from setuptools>=58.0 }; } diff --git a/pkgs/development/python-modules/splinter/default.nix b/pkgs/development/python-modules/splinter/default.nix index 9a80bb93621..a368d1a8113 100644 --- a/pkgs/development/python-modules/splinter/default.nix +++ b/pkgs/development/python-modules/splinter/default.nix @@ -2,7 +2,6 @@ , buildPythonPackage , fetchFromGitHub , selenium -, six , flask , pytestCheckHook }: @@ -20,7 +19,6 @@ buildPythonPackage rec { propagatedBuildInputs = [ selenium - six ]; checkInputs = [ @@ -28,8 +26,14 @@ buildPythonPackage rec { pytestCheckHook ]; + disabledTests = [ + # driver is present and fails with a different error during loading + "test_local_driver_not_present" + ]; + disabledTestPaths = [ "samples" + # TODO: requires optional dependencies which should be defined in passthru.optional-dependencies.$name "tests/test_djangoclient.py" "tests/test_flaskclient.py" "tests/test_popups.py" diff --git a/pkgs/development/python-modules/sqlalchemy/default.nix b/pkgs/development/python-modules/sqlalchemy/default.nix index 0bed203007c..544bdccd2cb 100644 --- a/pkgs/development/python-modules/sqlalchemy/default.nix +++ b/pkgs/development/python-modules/sqlalchemy/default.nix @@ -13,11 +13,11 @@ buildPythonPackage rec { pname = "SQLAlchemy"; - version = "1.4.36"; + version = "1.4.37"; src = fetchPypi { inherit pname version; - hash = "sha256-ZGeKwyHWSkWQHvLiRyXsXng/H0pYgwXhlkMUR+es4kM="; + hash = "sha256-Noj5LGLbbF3yaOImSJEHjxfsuR4xQbQA8uKND3V5beo="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/starlette/default.nix b/pkgs/development/python-modules/starlette/default.nix index caa841339e1..05c3cd829f9 100644 --- a/pkgs/development/python-modules/starlette/default.nix +++ b/pkgs/development/python-modules/starlette/default.nix @@ -21,7 +21,7 @@ buildPythonPackage rec { pname = "starlette"; - version = "0.19.0"; + version = "0.20.1"; format = "setuptools"; disabled = pythonOlder "3.6"; @@ -30,7 +30,7 @@ buildPythonPackage rec { owner = "encode"; repo = pname; rev = version; - sha256 = "sha256-gjRTMzoQ8pqxjIusRwRXGs72VYo6xsp2DSUxmEr9KxU="; + hash = "sha256-PUZ9joOhXkL1K2yi0baiuY74PIi71V/epX8zdcUv1DA="; }; postPatch = '' diff --git a/pkgs/development/python-modules/streamz/default.nix b/pkgs/development/python-modules/streamz/default.nix index ae2cd950435..0b2fb134a92 100644 --- a/pkgs/development/python-modules/streamz/default.nix +++ b/pkgs/development/python-modules/streamz/default.nix @@ -3,6 +3,7 @@ , buildPythonPackage , confluent-kafka , distributed +, fetchpatch , fetchPypi , flaky , graphviz @@ -15,7 +16,6 @@ , toolz , tornado , zict -, fetchpatch }: buildPythonPackage rec { @@ -27,7 +27,7 @@ buildPythonPackage rec { src = fetchPypi { inherit pname version; - sha256 = "sha256-0wZ1ldLFRAIL9R+gLfwsFbL+gvdORAkYWNjnDmeafm8="; + hash = "sha256-0wZ1ldLFRAIL9R+gLfwsFbL+gvdORAkYWNjnDmeafm8="; }; patches = [ @@ -36,7 +36,9 @@ buildPythonPackage rec { name = "fix-tests-against-distributed-2021.10.0.patch"; url = "https://github.com/python-streamz/streamz/commit/5bd3bc4d305ff40c740bc2550c8491be9162778a.patch"; sha256 = "1xzxcbf7yninkyizrwm3ahqk6ij2fmh0454iqjx2n7mmzx3sazx7"; - includes = ["streamz/tests/test_dask.py"]; + includes = [ + "streamz/tests/test_dask.py" + ]; }) ]; @@ -63,15 +65,17 @@ buildPythonPackage rec { ]; disabledTests = [ - # test_tcp_async fails on sandbox build + # Test fail in the sandbox "test_tcp_async" "test_tcp" "test_partition_timeout" - # flaky - "test_from_iterable_backpressure" + # Tests are flaky + "test_from_iterable" + "test_buffer" ]; + disabledTestPaths = [ - # disable kafka tests + # Disable kafka tests "streamz/tests/test_kafka.py" ]; diff --git a/pkgs/development/python-modules/tifffile/default.nix b/pkgs/development/python-modules/tifffile/default.nix index 0faea93ebde..f3fe08821f5 100644 --- a/pkgs/development/python-modules/tifffile/default.nix +++ b/pkgs/development/python-modules/tifffile/default.nix @@ -12,14 +12,14 @@ buildPythonPackage rec { pname = "tifffile"; - version = "2022.3.25"; + version = "2022.5.4"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-bZQ/LAGxo0pHbJY9EZVl+6EI9VngYUJsY6UVeEaVntk="; + hash = "sha256-sDFHoVhit8HZDUdDUZfxSb73pSwlrWfPH5tGX6pxuNI="; }; propagatedBuildInputs = [ @@ -40,6 +40,9 @@ buildPythonPackage rec { "test_write_ome" # Test file is missing "test_write_predictor" + # AssertionError + "test_write_bigtiff" + "test_write_imagej_raw" ]; pythonImportsCheck = [ diff --git a/pkgs/development/python-modules/trio-websocket/default.nix b/pkgs/development/python-modules/trio-websocket/default.nix new file mode 100644 index 00000000000..3b33b80e921 --- /dev/null +++ b/pkgs/development/python-modules/trio-websocket/default.nix @@ -0,0 +1,42 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, async_generator +, pytest-trio +, pytestCheckHook +, trio +, trustme +, wsproto +}: + +buildPythonPackage rec { + pname = "trio-websocket"; + version = "0.9.2"; + + src = fetchFromGitHub { + owner = "HyperionGray"; + repo = "trio-websocket"; + rev = version; + sha256 = "sha256-8VrpI/pk5IhEvqzo036cnIbJ1Hu3UfQ6GHTNkNJUYvo="; + }; + + propagatedBuildInputs = [ + async_generator + trio + wsproto + ]; + + checkInputs = [ + pytest-trio + pytestCheckHook + trustme + ]; + + pythonImportsCheck = [ "trio_websocket" ]; + + meta = with lib; { + description = "WebSocket client and server implementation for Python Trio"; + license = licenses.mit; + maintainers = with maintainers; [ SuperSandro2000 ]; + }; +} diff --git a/pkgs/development/python-modules/twine/default.nix b/pkgs/development/python-modules/twine/default.nix index 6cfb7f36047..c3e4682d5a7 100644 --- a/pkgs/development/python-modules/twine/default.nix +++ b/pkgs/development/python-modules/twine/default.nix @@ -16,13 +16,13 @@ buildPythonPackage rec { pname = "twine"; - version = "4.0.0"; + version = "4.0.1"; format = "pyproject"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "sha256-gXqgwL3AKl6+MgUeFo4jxxoGCDNOYkx5MBHxINu8Bbc="; + sha256 = "sha256-lrHPEveuYRpKQLaujpVwIV2v8GEYKPX+HzehYlWrJKA="; }; nativeBuildInputs = [ setuptools-scm ]; @@ -42,6 +42,8 @@ buildPythonPackage rec { # Requires network doCheck = false; + pythonImportsCheck = [ "twine" ]; + meta = { description = "Collection of utilities for interacting with PyPI"; homepage = "https://github.com/pypa/twine"; diff --git a/pkgs/development/python-modules/typed-ast/default.nix b/pkgs/development/python-modules/typed-ast/default.nix index 87116017063..0c5e1fa3cd2 100644 --- a/pkgs/development/python-modules/typed-ast/default.nix +++ b/pkgs/development/python-modules/typed-ast/default.nix @@ -7,7 +7,7 @@ buildPythonPackage rec { pname = "typed-ast"; - version = "1.5.2"; + version = "1.5.4"; format = "setuptools"; disabled = pythonOlder "3.6"; @@ -16,7 +16,7 @@ buildPythonPackage rec { owner = "python"; repo = "typed_ast"; rev = version; - hash = "sha256-Ul1FIS1a1f8l3tX+m8Bj/LsLQW1sXJv6XzEZ9zh8rfI="; + hash = "sha256-GRmKw7SRrrIIb61VeB8GLhSKCmLUd54AA+GAf43vor8="; }; checkInputs = [ diff --git a/pkgs/development/python-modules/types-typed-ast/default.nix b/pkgs/development/python-modules/types-typed-ast/default.nix index 2c8e2a09580..ca45ec7039b 100644 --- a/pkgs/development/python-modules/types-typed-ast/default.nix +++ b/pkgs/development/python-modules/types-typed-ast/default.nix @@ -5,12 +5,12 @@ buildPythonPackage rec { pname = "types-typed-ast"; - version = "1.5.4"; + version = "1.5.6"; format = "setuptools"; src = fetchPypi { inherit pname version; - hash = "sha256-MlOHn/Y6+4lkZa/kIoocTfLmPNw57vm5dD1QC42aUXY="; + hash = "sha256-UzmUeAz3KbdAwUdQZsRAdi8pqZvalRHU+mhdXuOoQ4k="; }; # Module doesn't have tests diff --git a/pkgs/development/python-modules/unidecode/default.nix b/pkgs/development/python-modules/unidecode/default.nix index f16fec644db..96e487871aa 100644 --- a/pkgs/development/python-modules/unidecode/default.nix +++ b/pkgs/development/python-modules/unidecode/default.nix @@ -7,7 +7,8 @@ buildPythonPackage rec { pname = "unidecode"; - version = "1.3.2"; + version = "1.3.4"; + format = "setuptools"; disabled = pythonOlder "3.5"; @@ -15,7 +16,7 @@ buildPythonPackage rec { owner = "avian2"; repo = pname; rev = "${pname}-${version}"; - sha256 = "07789mrq0gjxrg1b9a3ypzzfww224sbj25wl0h9nik22sjwi8qhh"; + hash = "sha256-2LRV6Egst2bdxefEzfuA9Ef8zMSWvmlCEV/sIzezyPw="; }; checkInputs = [ @@ -27,8 +28,8 @@ buildPythonPackage rec { ]; meta = with lib; { - homepage = "https://pypi.python.org/pypi/Unidecode/"; description = "ASCII transliterations of Unicode text"; + homepage = "https://pypi.python.org/pypi/Unidecode/"; license = licenses.gpl2Plus; maintainers = with maintainers; [ domenkozar ]; }; diff --git a/pkgs/development/python-modules/urllib3/default.nix b/pkgs/development/python-modules/urllib3/default.nix index 6d29a107f00..8a79241eebc 100644 --- a/pkgs/development/python-modules/urllib3/default.nix +++ b/pkgs/development/python-modules/urllib3/default.nix @@ -1,11 +1,13 @@ { lib , brotli +, brotlicffi , buildPythonPackage +, certifi , cryptography , python-dateutil , fetchPypi +, isPyPy , idna -, isPy27 , mock , pyopenssl , pysocks @@ -26,14 +28,9 @@ buildPythonPackage rec { hash = "sha256-qrrxZHeAal4d0ZqkH4wreVDdPHRjYtfjIj2+beasRI4="; }; - propagatedBuildInputs = [ - brotli - pysocks - ] ++ lib.optionals isPy27 [ - cryptography - idna - pyopenssl - ]; + # FIXME: remove backwards compatbility hack + propagatedBuildInputs = passthru.optional-dependencies.brotli + ++ passthru.optional-dependencies.secure; checkInputs = [ python-dateutil @@ -66,6 +63,12 @@ buildPythonPackage rec { "urllib3" ]; + passthru.optional-dependencies = { + brotli = if isPyPy then [ brotlicffi ] else [ brotli ]; + secure = [ certifi cryptography idna pyopenssl ]; + socks = [ pysocks ]; + }; + meta = with lib; { description = "Powerful, sanity-friendly HTTP client for Python"; homepage = "https://github.com/shazow/urllib3"; diff --git a/pkgs/development/python-modules/uvicorn/default.nix b/pkgs/development/python-modules/uvicorn/default.nix index 2ed3bec5a73..cc9f884f7cb 100644 --- a/pkgs/development/python-modules/uvicorn/default.nix +++ b/pkgs/development/python-modules/uvicorn/default.nix @@ -4,7 +4,6 @@ , fetchFromGitHub , asgiref , click -, colorama , h11 , httptools , python-dotenv @@ -37,7 +36,6 @@ buildPythonPackage rec { propagatedBuildInputs = [ asgiref click - colorama h11 httptools python-dotenv diff --git a/pkgs/development/python-modules/vulture/default.nix b/pkgs/development/python-modules/vulture/default.nix index 7ab5bcbb65b..e1dd04ed75f 100644 --- a/pkgs/development/python-modules/vulture/default.nix +++ b/pkgs/development/python-modules/vulture/default.nix @@ -1,32 +1,39 @@ { lib , buildPythonPackage -, coverage , fetchPypi -, isPy27 -, pytest-cov +, pythonOlder , pytestCheckHook , toml }: buildPythonPackage rec { pname = "vulture"; - version = "2.3"; - disabled = isPy27; + version = "2.4"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "0ryrmsm72z3fzaanyblz49q40h9d3bbl4pspn2lvkkp9rcmsdm83"; + hash = "sha256-gZQ5KUp2tOC44Ixw11VlqM49wfbgNVjtEjpfK7c3wOo="; }; - propagatedBuildInputs = [ toml ]; + postPatch = '' + substituteInPlace setup.cfg \ + --replace " --cov vulture --cov-report=html --cov-report=term --cov-report=xml --cov-append" "" + ''; + + propagatedBuildInputs = [ + toml + ]; checkInputs = [ - coverage - pytest-cov pytestCheckHook ]; - pythonImportsCheck = [ "vulture" ]; + pythonImportsCheck = [ + "vulture" + ]; meta = with lib; { description = "Finds unused code in Python programs"; diff --git a/pkgs/development/python-modules/weasyprint/default.nix b/pkgs/development/python-modules/weasyprint/default.nix index ce9432ee296..e4576a303c5 100644 --- a/pkgs/development/python-modules/weasyprint/default.nix +++ b/pkgs/development/python-modules/weasyprint/default.nix @@ -2,18 +2,15 @@ , fetchPypi , fetchpatch , pytestCheckHook -, brotli , cairosvg , flit-core , fonttools , pydyf , pyphen , cffi -, cssselect -, lxml +, cssselect2 , html5lib -, tinycss -, zopfli +, tinycss2 , glib , harfbuzz , pango @@ -23,6 +20,7 @@ , ghostscript , isPy3k , substituteAll +, pillow }: buildPythonPackage rec { @@ -61,19 +59,15 @@ buildPythonPackage rec { ]; propagatedBuildInputs = [ - brotli - cairosvg cffi - cssselect + cssselect2 fonttools html5lib - lxml - flit-core + pillow pydyf pyphen - tinycss - zopfli - ]; + tinycss2 + ] ++ fonttools.optional-dependencies.woff; checkInputs = [ pytestCheckHook diff --git a/pkgs/development/python-modules/webob/default.nix b/pkgs/development/python-modules/webob/default.nix index 201893c2536..e4fb4f0ea32 100644 --- a/pkgs/development/python-modules/webob/default.nix +++ b/pkgs/development/python-modules/webob/default.nix @@ -1,25 +1,41 @@ { lib , buildPythonPackage , fetchPypi -, nose -, pytest +, pytestCheckHook +, pythonOlder }: buildPythonPackage rec { - pname = "WebOb"; + pname = "webob"; version = "1.8.7"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { - inherit pname version; - sha256 = "b64ef5141be559cfade448f044fa45c2260351edcb6a8ef6b7e00c7dcef0c323"; + pname = "WebOb"; + inherit version; + hash = "sha256-tk71FBvlWc+t5EjwRPpFwiYDUe3Lao72t+AMfc7wwyM="; }; - propagatedBuildInputs = [ nose pytest ]; + checkInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "webob" + ]; + + disabledTestPaths = [ + # AttributeError: 'Thread' object has no attribute 'isAlive' + "tests/test_in_wsgiref.py" + "tests/test_client_functional.py" + ]; meta = with lib; { description = "WSGI request and response object"; - homepage = "http://pythonpaste.org/webob/"; + homepage = "https://webob.org/"; license = licenses.mit; + maintainers = with maintainers; [ ]; }; - } diff --git a/pkgs/development/python-modules/websockets/default.nix b/pkgs/development/python-modules/websockets/default.nix index 7d6f78902d0..538055b9890 100644 --- a/pkgs/development/python-modules/websockets/default.nix +++ b/pkgs/development/python-modules/websockets/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "websockets"; - version = "10.1"; + version = "10.3"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = "aaugustin"; repo = pname; rev = version; - sha256 = "sha256-FFaoqxa+TmKJ+P6T7HrwodjbVCir+2qJSfZsoj6deJU="; + hash = "sha256-ZUn/DvO1Kx7Uxne4DF/am69YL1c48qpgQrGek355Z+4="; }; # Tests fail on Darwin with `OSError: AF_UNIX path too long` diff --git a/pkgs/development/python-modules/xdis/default.nix b/pkgs/development/python-modules/xdis/default.nix index 291da467e9e..53ff69168a5 100644 --- a/pkgs/development/python-modules/xdis/default.nix +++ b/pkgs/development/python-modules/xdis/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "xdis"; - version = "unstable-2022-04-13"; + version = "6.0.4"; format = "setuptools"; disabled = pythonOlder "3.6"; @@ -18,9 +18,8 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "rocky"; repo = "python-xdis"; - # Support for later Python releases is missing in 6.0.3 - rev = "f888df7df5cb8839927e9187c258769cc77fb7a3"; - hash = "sha256-V1ws5GibRkutFRNcjlP7aW+AshSyWavXIxuwznVbRlU="; + rev = version; + hash = "sha256-CRZG898xCwukq+9YVkyXMP8HcuJ9GtvDhy96kxvRFks="; }; propagatedBuildInputs = [ @@ -48,7 +47,7 @@ buildPythonPackage rec { meta = with lib; { description = "Python cross-version byte-code disassembler and marshal routines"; - homepage = "https://github.com/rocky/python-xdis/"; + homepage = "https://github.com/rocky/python-xdis"; license = licenses.gpl2Plus; maintainers = with maintainers; [ ]; }; diff --git a/pkgs/development/python-modules/xmltodict/default.nix b/pkgs/development/python-modules/xmltodict/default.nix index e0a9f4c5d73..19c2b1d283f 100644 --- a/pkgs/development/python-modules/xmltodict/default.nix +++ b/pkgs/development/python-modules/xmltodict/default.nix @@ -2,22 +2,26 @@ , buildPythonPackage , fetchPypi , pytestCheckHook +, pythonOlder }: buildPythonPackage rec { pname = "xmltodict"; - version = "0.12.0"; + version = "0.13.0"; format = "setuptools"; + disabled = pythonOlder "3.4"; src = fetchPypi { inherit pname version; - sha256 = "50d8c638ed7ecb88d90561beedbf720c9b4e851a9fa6c47ebd64e99d166d8a21"; + sha256 = "sha256-NBWVpIjj4BqFqdiRHYkS/ZIu3l/sxNzkN+tLbI0DflY="; }; checkInputs = [ pytestCheckHook ]; + pythonImportsCheck = [ "xmltodict" ]; + meta = with lib; { description = "Makes working with XML feel like you are working with JSON"; homepage = "https://github.com/martinblech/xmltodict"; diff --git a/pkgs/development/python-modules/yamlordereddictloader/default.nix b/pkgs/development/python-modules/yamlordereddictloader/default.nix index ce9602a4720..9de933fda15 100644 --- a/pkgs/development/python-modules/yamlordereddictloader/default.nix +++ b/pkgs/development/python-modules/yamlordereddictloader/default.nix @@ -1,8 +1,6 @@ { lib , buildPythonPackage , fetchPypi -, isPy27 -, ordereddict , pyyaml }: @@ -15,7 +13,7 @@ buildPythonPackage rec { sha256 = "03h8wa6pzqjiw25s3jv9gydn77gs444mf31lrgvpgy53kswz0c3z"; }; - propagatedBuildInputs = [ pyyaml ] ++ lib.optional (isPy27) ordereddict; + propagatedBuildInputs = [ pyyaml ]; # no tests doCheck = false; diff --git a/pkgs/development/python-modules/zipp/default.nix b/pkgs/development/python-modules/zipp/default.nix index 253962910ac..ba3ea107ea0 100644 --- a/pkgs/development/python-modules/zipp/default.nix +++ b/pkgs/development/python-modules/zipp/default.nix @@ -9,14 +9,14 @@ let zipp = buildPythonPackage rec { pname = "zipp"; - version = "3.7.0"; - format = "setuptools"; + version = "3.8.0"; + format = "pyproject"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "9f50f446828eb9d45b267433fd3e9da8d801f614129124863f9c51ebceafb87d"; + sha256 = "sha256-Vr+Krbg8JNtsS1d+E943TM+2faIHi+uh0DfBeYC/Q60="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python2-modules/botocore/default.nix b/pkgs/development/python2-modules/botocore/default.nix index d05c2decf49..f23a10579c6 100644 --- a/pkgs/development/python2-modules/botocore/default.nix +++ b/pkgs/development/python2-modules/botocore/default.nix @@ -4,7 +4,6 @@ , python-dateutil , jmespath , docutils -, ordereddict , simplejson , mock , nose @@ -24,7 +23,6 @@ buildPythonPackage rec { python-dateutil jmespath docutils - ordereddict simplejson urllib3 ]; diff --git a/pkgs/development/tools/analysis/autoflake/default.nix b/pkgs/development/tools/analysis/autoflake/default.nix index 03e01aadb71..adc861588dd 100644 --- a/pkgs/development/tools/analysis/autoflake/default.nix +++ b/pkgs/development/tools/analysis/autoflake/default.nix @@ -1,22 +1,36 @@ -{ lib, python3Packages }: +{ lib +, python3 +}: -with python3Packages; -buildPythonApplication rec { +python3.pkgs.buildPythonApplication rec { pname = "autoflake"; version = "1.4"; - src = fetchPypi { + src = python3.pkgs.fetchPypi { inherit pname version; - sha256 = "61a353012cff6ab94ca062823d1fb2f692c4acda51c76ff83a8d77915fba51ea"; + hash = "sha256-YaNTASz/arlMoGKCPR+y9pLErNpRx2/4Oo13kV+6Ueo="; }; - propagatedBuildInputs = [ pyflakes ]; + propagatedBuildInputs = with python3.pkgs; [ + pyflakes + ]; - doCheck = true; + checkInputs = with python3.pkgs; [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "autoflake" + ]; + + disabledTests = [ + # AssertionError: True is not false + "test_is_literal_or_name" + ]; meta = with lib; { + description = "Tool to remove unused imports and unused variables"; homepage = "https://github.com/myint/autoflake"; - description = "A simple program which removes unused imports and unused variables as reported by pyflakes"; license = licenses.mit; maintainers = with maintainers; [ yuriaisaka ]; }; diff --git a/pkgs/development/tools/build-managers/conan/default.nix b/pkgs/development/tools/build-managers/conan/default.nix index 78e54028cc9..a72106ace3c 100644 --- a/pkgs/development/tools/build-managers/conan/default.nix +++ b/pkgs/development/tools/build-managers/conan/default.nix @@ -21,17 +21,6 @@ let newPython = python3.override { sha256 = "1dv6mjsm67l1razcgmq66riqmsb36wns17mnipqr610v0z0zf5j0"; }; }); - # https://github.com/conan-io/conan/issues/8876 - pyjwt = super.pyjwt.overridePythonAttrs (oldAttrs: rec { - version = "1.7.1"; - src = oldAttrs.src.override { - inherit version; - sha256 = "8d59a976fb773f3e6a39c85636357c4f0e242707394cadadd9814f5cbaa20e96"; - }; - disabledTests = [ - "test_ec_verify_should_return_false_if_signature_invalid" - ]; - }); distro = super.distro.overridePythonAttrs (oldAttrs: rec { version = "1.5.0"; src = oldAttrs.src.override { @@ -43,14 +32,14 @@ let newPython = python3.override { }; in newPython.pkgs.buildPythonApplication rec { - version = "1.47.0"; + version = "1.49.0"; pname = "conan"; src = fetchFromGitHub { owner = "conan-io"; repo = "conan"; rev = version; - sha256 = "1zs2xb22rsy5fsc0fd7c95vrx1mfz7vasyg1lqkzyfimvn5zah6n"; + hash = "sha256-BJGstNAnAZtpwagsCY+4quTd0/79zL+v4ifKikS3vaw="; }; propagatedBuildInputs = with newPython.pkgs; [ diff --git a/pkgs/development/tools/jira_cli/default.nix b/pkgs/development/tools/jira_cli/default.nix index cf15a61477e..9145f4a42cd 100644 --- a/pkgs/development/tools/jira_cli/default.nix +++ b/pkgs/development/tools/jira_cli/default.nix @@ -1,6 +1,6 @@ { lib, libffi, openssl, python3Packages }: let - inherit (python3Packages) fetchPypi buildPythonApplication vcrpy mock hiro; + inherit (python3Packages) fetchPypi buildPythonApplication; in buildPythonApplication rec { pname = "jira-cli"; @@ -19,7 +19,7 @@ in checkInputs = with python3Packages; [ vcrpy mock hiro ]; buildInputs = [ libffi openssl ]; propagatedBuildInputs = with python3Packages; [ - ordereddict requests six suds-jurko termcolor keyring + requests six suds-jurko termcolor keyring jira keyrings-alt ]; diff --git a/pkgs/development/tools/pip-audit/default.nix b/pkgs/development/tools/pip-audit/default.nix index 942d87c32e2..06d536c7433 100644 --- a/pkgs/development/tools/pip-audit/default.nix +++ b/pkgs/development/tools/pip-audit/default.nix @@ -43,6 +43,7 @@ buildPythonApplication rec { cachecontrol cyclonedx-python-lib html5lib + lockfile packaging pip-api progress diff --git a/pkgs/development/tools/rust/cbindgen/default.nix b/pkgs/development/tools/rust/cbindgen/default.nix index 730cb31fd8e..555ed3a080d 100644 --- a/pkgs/development/tools/rust/cbindgen/default.nix +++ b/pkgs/development/tools/rust/cbindgen/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "rust-cbindgen"; - version = "0.23.0"; + version = "0.24.2"; src = fetchFromGitHub { owner = "eqrion"; repo = "cbindgen"; rev = "v${version}"; - hash = "sha256-yux5VpN8UqBscu5TyojlZmu4q2uz8b9Tu++eNlPUj/M="; + hash = "sha256-7nl2VHw4l0hUVLs4fAnmkVaxTFRe3OcUwHXMqf/cH40="; }; - cargoSha256 = "sha256:1838dsmaqdlbd3j040bdy1fvl3z77xmcz73r11qmnqsga4yva6d7"; + cargoSha256 = "sha256:0q99vy5k57phi80viqhkw8cyw7kglap1yf6m8n25n4knf7z9l119"; buildInputs = lib.optional stdenv.isDarwin Security; diff --git a/pkgs/misc/i3a/default.nix b/pkgs/misc/i3a/default.nix index 36f58c16cc2..3171289bcac 100644 --- a/pkgs/misc/i3a/default.nix +++ b/pkgs/misc/i3a/default.nix @@ -9,9 +9,17 @@ python3Packages.buildPythonApplication rec { hash = "sha256-2k1HYtgJ76qXLvX6RmOSKtMMg+K722n8U9YmBANvQvE="; }; + postPatch = '' + substituteInPlace setup.py \ + --replace "python_requires='>=3.7,<3.10'," "python_requires='>=3.7'," + ''; + nativeBuildInputs = [ python3Packages.setuptools-scm ]; + propagatedBuildInputs = [ python3Packages.i3ipc ]; + doCheck = false; + meta = with lib; { homepage = "https://git.goral.net.pl/mgoral/i3a"; description = "A set of scripts used for automation of i3 and sway window manager layouts"; diff --git a/pkgs/os-specific/darwin/apple-source-releases/bsdmake/default.nix b/pkgs/os-specific/darwin/apple-source-releases/bsdmake/default.nix index 6f666019c3b..214aa5dfad9 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/bsdmake/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/bsdmake/default.nix @@ -20,6 +20,12 @@ appleDerivation { --replace '-o ''${''${group}OWN_''${.ALLSRC:T}}' "" \ --replace '-g ''${''${group}GRP_''${.ALLSRC:T}}' "" \ --replace '-o ''${''${group}OWN} -g ''${''${group}GRP}' "" + + # Workaround for https://github.com/NixOS/nixpkgs/issues/103172 + # Prevents bsdmake from failing on systems that already had default limits + # increased. + substituteInPlace main.c \ + --replace 'err(2, "setrlimit");' 'warn("setrlimit");' ''; buildPhase = '' diff --git a/pkgs/os-specific/darwin/apple-source-releases/developer_cmds/default.nix b/pkgs/os-specific/darwin/apple-source-releases/developer_cmds/default.nix index f2c4ec32146..18233cfc522 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/developer_cmds/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/developer_cmds/default.nix @@ -16,6 +16,10 @@ appleDerivation { --replace "/usr/bin/cpp" "$out/bin/clang-cpp" ''; + # Workaround build failure on -fno-common toolchains: + # duplicate symbol '_btype_2' in:args.o pr_comment.o + NIX_CFLAGS_COMPILE = "-fcommon"; + # temporary install phase until xcodebuild has "install" support installPhase = '' for f in Products/Release/*; do diff --git a/pkgs/os-specific/darwin/apple-source-releases/top/default.nix b/pkgs/os-specific/darwin/apple-source-releases/top/default.nix index a2f912ca578..ef766f7bd7f 100644 --- a/pkgs/os-specific/darwin/apple-source-releases/top/default.nix +++ b/pkgs/os-specific/darwin/apple-source-releases/top/default.nix @@ -3,6 +3,9 @@ appleDerivation { nativeBuildInputs = [ xcbuildHook ]; buildInputs = [ apple_sdk.frameworks.IOKit ncurses libutil ]; + # Workaround build failure on -fno-common toolchains: + # duplicate symbol '_tsamp' in: main.o top.o + NIX_CFLAGS_COMPILE = "-fcommon"; NIX_LDFLAGS = "-lutil"; installPhase = '' install -D Products/Release/libtop.a $out/lib/libtop.a diff --git a/pkgs/os-specific/linux/hwdata/default.nix b/pkgs/os-specific/linux/hwdata/default.nix index f700bf035de..fe789d51dbb 100644 --- a/pkgs/os-specific/linux/hwdata/default.nix +++ b/pkgs/os-specific/linux/hwdata/default.nix @@ -2,24 +2,25 @@ stdenv.mkDerivation rec { pname = "hwdata"; - version = "0.347"; + version = "0.360"; src = fetchFromGitHub { owner = "vcrhonek"; repo = "hwdata"; rev = "v${version}"; - sha256 = "19kmz25zq6qqs67ppqhws4mh3qf6zrp55cpyxyw36q95yjdcqp21"; + sha256 = "sha256-dF1Yeb3xH4keQzcydZ3h3kyuSZ1knW/2YAJ8xvFSoMo="; }; - preConfigure = "patchShebangs ./configure"; + postPatch = '' + patchShebangs ./configure + ''; configureFlags = [ "--datadir=${placeholder "out"}/share" ]; doCheck = false; # this does build machine-specific checks (e.g. enumerates PCI bus) outputHashMode = "recursive"; - outputHashAlgo = "sha256"; - outputHash = "0haaczd6pi9q2vdlvbwn7100sb87zsy64z94xhpbmlari4vzjmz0"; + outputHash = "sha256-gkgnHy1XwP87qpQiAm31AIAkxgGm5JYxMBr60kvd+gE="; meta = { homepage = "https://github.com/vcrhonek/hwdata"; diff --git a/pkgs/os-specific/linux/kernel-headers/default.nix b/pkgs/os-specific/linux/kernel-headers/default.nix index d4d438e78a0..d07c9073e6a 100644 --- a/pkgs/os-specific/linux/kernel-headers/default.nix +++ b/pkgs/os-specific/linux/kernel-headers/default.nix @@ -84,12 +84,12 @@ let in { inherit makeLinuxHeaders; - linuxHeaders = let version = "5.17"; in + linuxHeaders = let version = "5.18"; in makeLinuxHeaders { inherit version; src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "1cdi43x4c3l4chznh57gm55szycj4wjlxl1dss1ilnfvvmhyypsm"; + sha256 = "1vjwhl4s8qxfg1aabn8xnpjza3qzrjcp5450h9qpjvl999lg3wsi"; }; patches = [ ./no-relocs.patch # for building x86 kernel headers on non-ELF platforms diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index d8084bbfccc..471fb825180 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -920,6 +920,9 @@ let TASK_DELAY_ACCT = yes; TASK_XACCT = yes; TASK_IO_ACCOUNTING = yes; + + # Fresh toolchains frequently break -Werror build for minor issues. + WERROR = whenAtLeast "5.15" no; } // optionalAttrs (stdenv.hostPlatform.system == "x86_64-linux" || stdenv.hostPlatform.system == "aarch64-linux") { # Enable CPU/memory hotplug support # Allows you to dynamically add & remove CPUs/memory to a VM client running NixOS without requiring a reboot diff --git a/pkgs/servers/calibre-web/default.nix b/pkgs/servers/calibre-web/default.nix index 20e0e8f1383..9e7a9cae173 100644 --- a/pkgs/servers/calibre-web/default.nix +++ b/pkgs/servers/calibre-web/default.nix @@ -2,7 +2,6 @@ , fetchFromGitHub , nixosTests , python3 -, python3Packages }: python3.pkgs.buildPythonApplication rec { @@ -16,9 +15,10 @@ python3.pkgs.buildPythonApplication rec { sha256 = "sha256-KjmpFetNhNM5tL34e/Pn1i3hc86JZglubSMsHZWu198="; }; - propagatedBuildInputs = with python3Packages; [ + propagatedBuildInputs = with python3.pkgs; [ advocate backports_abc + chardet flask-babel flask_login flask_principal diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 87e7ce1281c..fbfa29ff4bf 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -29,7 +29,6 @@ let defaultOverrides = [ # Override the version of some packages pinned in Home Assistant's setup.py and requirements_all.txt - (mkOverride "python-slugify" "4.0.1" "sha256-aaUXdm4AwSaOW7/A0BCgqFCN4LGNMK1aH/NX+K5yQnA=") # pytest-aiohttp>0.3.0 breaks home-assistant tests (self: super: { @@ -101,6 +100,17 @@ let }); }) + (self: super: { + python-slugify = super.python-slugify.overridePythonAttrs (oldAttrs: rec { + pname = "python-slugify"; + version = "4.0.1"; + src = super.fetchPypi { + inherit pname version; + hash = "sha256-aaUXdm4AwSaOW7/A0BCgqFCN4LGNMK1aH/NX+K5yQnA="; + }; + }); + }) + # Pinned due to API changes in 0.4.0 (self: super: { vilfo-api-client = super.vilfo-api-client.overridePythonAttrs (oldAttrs: rec { @@ -200,6 +210,7 @@ in python.pkgs.buildPythonApplication rec { "attrs" "awesomeversion" "bcrypt" + "cryptography" "httpx" "PyJWT" ]; diff --git a/pkgs/stdenv/common-path.nix b/pkgs/stdenv/common-path.nix index da468d56a2c..8c1acfb50dd 100644 --- a/pkgs/stdenv/common-path.nix +++ b/pkgs/stdenv/common-path.nix @@ -12,4 +12,12 @@ pkgs.bash pkgs.patch pkgs.xz.bin + + # The `file` command is added here because an enormous number of + # packages have a vendored dependency upon `file` in their + # `./configure` script, due to libtool<=2.4.6, or due to + # libtool>=2.4.7 in which the package author decided to set FILECMD + # when running libtoolize. In fact, file-5.4.6 *depends on itself* + # and tries to invoke `file` from its own ./configure script. + pkgs.file ] diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix index 32e4fe9749a..bbc15bad262 100644 --- a/pkgs/stdenv/darwin/default.nix +++ b/pkgs/stdenv/darwin/default.nix @@ -486,6 +486,7 @@ rec { gmp libiconv brotli.lib + file ] ++ lib.optional haveKRB5 libkrb5) ++ (with pkgs."${finalLlvmPackages}"; [ libcxx @@ -561,6 +562,7 @@ rec { gmp libiconv brotli.lib + file ] ++ lib.optional haveKRB5 libkrb5) ++ (with pkgs."${finalLlvmPackages}"; [ libcxx @@ -737,6 +739,7 @@ rec { brotli.lib cc.expand-response-params libxml2.out + file ] ++ lib.optional haveKRB5 libkrb5 ++ lib.optionals localSystem.isAarch64 [ pkgs.updateAutotoolsGnuConfigScriptsHook diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 6d30e6c01ff..40ffd9344e3 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -1021,6 +1021,21 @@ configurePhase() { echo "fixing libtool script $i" fixLibtool "$i" done + + # replace `/usr/bin/file` with `file` in any `configure` + # scripts with vendored libtool code. Preserve mtimes to + # prevent some packages (e.g. libidn2) from spontaneously + # autoreconf'ing themselves + CONFIGURE_MTIME_REFERENCE=$(mktemp configure.mtime.reference.XXX) + find . \ + -executable \ + -type f \ + -name configure \ + -execdir grep -l 'GNU Libtool is free software; you can redistribute it and/or modify' {} \; \ + -execdir touch -r {} "$CONFIGURE_MTIME_REFERENCE" \; \ + -execdir sed -i s_/usr/bin/file_file_g {} \; \ + -execdir touch -r "$CONFIGURE_MTIME_REFERENCE" {} \; + rm -f "$CONFIGURE_MTIME_REFERENCE" fi if [[ -z "${dontAddPrefix:-}" && -n "$prefix" ]]; then diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 712d1b001c1..d625ab5b301 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -417,7 +417,7 @@ in # Simple executable tools concatMap (p: [ (getBin p) (getLib p) ]) [ gzip bzip2 xz bash binutils.bintools coreutils diffutils findutils - gawk gnumake gnused gnutar gnugrep gnupatch patchelf ed + gawk gnumake gnused gnutar gnugrep gnupatch patchelf ed file ] # Library dependencies ++ map getLib ( diff --git a/pkgs/tools/admin/azure-cli/default.nix b/pkgs/tools/admin/azure-cli/default.nix index b4d1d6dd7b7..4237a5a412a 100644 --- a/pkgs/tools/admin/azure-cli/default.nix +++ b/pkgs/tools/admin/azure-cli/default.nix @@ -1,7 +1,7 @@ { stdenv, lib, python3, fetchFromGitHub, installShellFiles }: let - version = "2.34.1"; + version = "2.37.0"; srcName = "azure-cli-${version}-src"; src = fetchFromGitHub { @@ -9,7 +9,7 @@ let owner = "Azure"; repo = "azure-cli"; rev = "azure-cli-${version}"; - sha256 = "sha256-BEEwxf3UTShKi3K/uBK1yMxyPCvybL/BbKsu8XAwu0M="; + sha256 = "sha256-Y1P+cTOK7NbV7k9rg38vE7EPuZQo88IQW3IYYou8ZOI="; }; # put packages that needs to be overriden in the py package scope @@ -27,12 +27,7 @@ py.pkgs.toPythonApplication (py.pkgs.buildAzureCliPackage { substituteInPlace setup.py \ --replace "chardet~=3.0.4" "chardet" \ --replace "javaproperties~=0.5.1" "javaproperties" \ - --replace "pytz==2019.1" "pytz" \ - --replace "scp~=0.13.2" "scp" \ - --replace "PyNaCl~=1.4.0" "PyNaCl" \ - --replace "jsondiff~=1.2.0" "jsondiff~=1.2" \ - --replace "antlr4-python3-runtime~=4.7.2" "antlr4-python3-runtime~=4.7" \ - --replace "mock~=4.0" "mock" + --replace "scp~=0.13.2" "scp" # remove namespace hacks # remove urllib3 because it was added as 'urllib3[secure]', which doesn't get handled well @@ -50,6 +45,7 @@ py.pkgs.toPythonApplication (py.pkgs.buildAzureCliPackage { azure-cli-core azure-cli-telemetry azure-cosmos + azure-data-tables azure-datalake-store azure-functions-devops-build azure-graphrbac @@ -131,6 +127,7 @@ py.pkgs.toPythonApplication (py.pkgs.buildAzureCliPackage { azure-synapse-artifacts azure-synapse-managedprivateendpoints azure-synapse-spark + chardet colorama cryptography distro diff --git a/pkgs/tools/admin/azure-cli/python-packages.nix b/pkgs/tools/admin/azure-cli/python-packages.nix index b65b4a8fbbb..bc0328cef1f 100644 --- a/pkgs/tools/admin/azure-cli/python-packages.nix +++ b/pkgs/tools/admin/azure-cli/python-packages.nix @@ -1,28 +1,17 @@ { stdenv, python3, lib, src, version }: let - buildAzureCliPackage = with py.pkgs; attrs: buildPythonPackage attrs; + buildAzureCliPackage = with py.pkgs; buildPythonPackage; overrideAzureMgmtPackage = package: version: extension: sha256: # check to make sure overriding is even necessary - if version == package.version then - package - else package.overrideAttrs(oldAttrs: rec { + package.overrideAttrs(oldAttrs: rec { inherit version; src = py.pkgs.fetchPypi { inherit (oldAttrs) pname; inherit version sha256 extension; }; - - preBuild = '' - rm -f azure_bdist_wheel.py - substituteInPlace setup.cfg \ - --replace "azure-namespace-package = azure-mgmt-nspkg" "" - ''; - - # force PEP420 - pythonNamespaces = [ "azure.mgmt" ]; }); py = python3.override { @@ -60,6 +49,7 @@ let pyjwt pyopenssl pyperclip + pysocks pyyaml requests six @@ -72,7 +62,6 @@ let --replace "cryptography>=3.2,<3.4" "cryptography" \ --replace "msal-extensions>=0.3.1,<0.4" "msal-extensions" ''; - checkInputs = with self; [ pytest ]; doCheck = stdenv.isLinux; # ignore tests that does network call, or assume powershell @@ -118,14 +107,18 @@ let ''; }; + antlr4-python3-runtime = super.antlr4-python3-runtime.override(_: { + antlr4 = super.pkgs.antlr4_9; + }); + azure-batch = overrideAzureMgmtPackage super.azure-batch "12.0.0" "zip" "sha256-GpseF4mEp79JWvZ7zOUfDbHkqKlXr7KeM1VKFKlnTes="; azure-mgmt-apimanagement = overrideAzureMgmtPackage super.azure-mgmt-apimanagement "3.0.0" "zip" "9262f54ed387eb083d8dae66d32a8df35647319b902bd498cdc376f50a12d154"; - azure-mgmt-batch = overrideAzureMgmtPackage super.azure-mgmt-batch "16.0.0" "zip" - "1b3cecd6f16813879c6ac1a1bb01f9a6f2752cd1f9157eb04d5e41e4a89f3c34"; + azure-mgmt-batch = overrideAzureMgmtPackage super.azure-mgmt-batch "16.1.0" "zip" + "sha256-9J0VQ3uAsi4kuEe9UG4xpcEV1Sc+nkjECgVfzG7j5jk="; azure-mgmt-batchai = overrideAzureMgmtPackage super.azure-mgmt-batchai "7.0.0b1" "zip" "sha256-mT6vvjWbq0RWQidugR229E8JeVEiobPD3XA/nDM3I6Y="; @@ -136,8 +129,11 @@ let azure-mgmt-botservice = overrideAzureMgmtPackage super.azure-mgmt-botservice "0.3.0" "zip" "f8318878a66a0685a01bf27b7d1409c44eb90eb72b0a616c1a2455c72330f2f1"; - azure-mgmt-policyinsights = overrideAzureMgmtPackage super.azure-mgmt-policyinsights "1.0.0" "zip" - "75103fb4541aeae30bb687dee1fedd9ca65530e6b97b2d9ea87f74816905202a"; + azure-mgmt-extendedlocation = overrideAzureMgmtPackage super.azure-mgmt-extendedlocation "1.0.0b2" "zip" + "sha256-mjfH35T81JQ97jVgElWmZ8P5MwXVxZQv/QJKNLS3T8A="; + + azure-mgmt-policyinsights = overrideAzureMgmtPackage super.azure-mgmt-policyinsights "1.1.0b2" "zip" + "sha256-e+I5MdbbX7WhxHCj1Ery3z2WUrJtpWGD1bhLbqReb58="; azure-mgmt-rdbms = overrideAzureMgmtPackage super.azure-mgmt-rdbms "10.0.0" "zip" "bdc479b3bbcac423943d63e746a81dd5fc80b46a4dbb4393e760016e3fa4f74a"; @@ -145,29 +141,29 @@ let azure-mgmt-recoveryservices = overrideAzureMgmtPackage super.azure-mgmt-recoveryservices "2.0.0" "zip" "sha256-p9MTfVxGD1CsLUQGHWCnC08nedTKhEt3QZtXJeZeCb4="; - azure-mgmt-recoveryservicesbackup = overrideAzureMgmtPackage super.azure-mgmt-recoveryservicesbackup "4.0.0" "zip" - "a848ac1d99c935e61dfb91ca3e1577904a3eff5820fce179eb6937df8e1019ec"; + azure-mgmt-recoveryservicesbackup = overrideAzureMgmtPackage super.azure-mgmt-recoveryservicesbackup "5.0.0" "zip" + "sha256-BciA3sFyja5xo9yS3WVglC73y8gTfw8UejdEzbD4HYE="; - azure-mgmt-resource = overrideAzureMgmtPackage super.azure-mgmt-resource "20.0.0" "zip" - "622dca4484be64f9f5ce335d327dffabf3e71e14e8a3f4a1051dc85a5c3ebbca"; + azure-mgmt-resource = overrideAzureMgmtPackage super.azure-mgmt-resource "21.1.0b1" "zip" + "sha256-oiC5k+Mg9KJn940jMxG4AB9Pom+t/DWRA5KRv8HO0HI="; - azure-mgmt-appconfiguration = overrideAzureMgmtPackage super.azure-mgmt-appconfiguration "2.0.0" "zip" - "b58bbe82a7429ba589292024896b58d96fe9fa732c578569cac349928dc2ca5f"; + azure-mgmt-appconfiguration = overrideAzureMgmtPackage super.azure-mgmt-appconfiguration "2.1.0b2" "zip" + "sha256-/w+kI/tSNo0vW5ZFcMjRGPPrmNwZbFLKbKVkblZQ6FY="; - azure-mgmt-cognitiveservices = overrideAzureMgmtPackage super.azure-mgmt-cognitiveservices "13.0.0" "zip" - "dc6116e8394d45312c7ad5a9098ce0dd2370bd92d43afd33d8b3bfab724fa498"; + azure-mgmt-cognitiveservices = overrideAzureMgmtPackage super.azure-mgmt-cognitiveservices "13.1.0" "zip" + "sha256-FXS834v5uDGiEGcQMIv9iaHxhfcW9uY3VmX7l91Tfj4="; - azure-mgmt-compute = overrideAzureMgmtPackage super.azure-mgmt-compute "25.0.0" "zip" - "sha256-Y0WNBtQ9v0yhTVFfTvfcudWHOjzGagGB+/b++3Ie5Kk="; + azure-mgmt-compute = overrideAzureMgmtPackage super.azure-mgmt-compute "27.0.0" "zip" + "sha256-n+MQJ0ZeQ/hyS2G8CrNCtoxbvcfrIXmn4LXB/V6JXT0="; azure-mgmt-consumption = overrideAzureMgmtPackage super.azure-mgmt-consumption "2.0.0" "zip" "12ai4qps73ivawh0yzvgb148ksx02r30pqlvfihx497j62gsi1cs"; azure-mgmt-containerinstance = overrideAzureMgmtPackage super.azure-mgmt-containerinstance "9.1.0" "zip" - "sha256-N+zUTEnOyn18lDHlkUj+vRXX/sJhZR7XLd1YdV50ULA="; + "sha256-IhZLDFkTize8SLptR2v2NRUrxCjctCC1IaFLjCXHl60="; - azure-mgmt-containerservice = overrideAzureMgmtPackage super.azure-mgmt-containerservice "17.0.0" "zip" - "sha256-oUbWdZryabCCg/gTujchT7p1nS7IDoU5W9MQ4ekJYH8="; + azure-mgmt-containerservice = overrideAzureMgmtPackage super.azure-mgmt-containerservice "19.1.0" "zip" + "sha256-t06Cesxvjk31aDxkX2Yj0VzFubWbiAc26LzNTIgVEqs="; azure-mgmt-cosmosdb = overrideAzureMgmtPackage super.azure-mgmt-cosmosdb "7.0.0b2" "zip" "sha256-hVvYW9gkfTVMwis3IdD0JXYDxdKcyyzIFx3hNk7VMLI="; @@ -190,8 +186,8 @@ let azure-mgmt-iothubprovisioningservices = overrideAzureMgmtPackage super.azure-mgmt-iothubprovisioningservices "1.1.0" "zip" "sha256-04OoJuff93L62G6IozpmHpEaUbHHHD6nKlkMHVoJvJ4="; - azure-mgmt-iotcentral = overrideAzureMgmtPackage super.azure-mgmt-iotcentral "9.0.0" "zip" - "64df73df449a6f3717f3d0963e5869224ed3e6216c79de571493bea7c1b52cb6"; + azure-mgmt-iotcentral = overrideAzureMgmtPackage super.azure-mgmt-iotcentral "10.0.0b1" "zip" + "sha256-1CiZuTXYhIb74eGQZUJHHzovYNnnVd3Ydu1UCy2Bu00="; azure-mgmt-kusto = overrideAzureMgmtPackage super.azure-mgmt-kusto "0.3.0" "zip" "1pmcdgimd66h964a3d5m2j2fbydshcwhrk87wblhwhfl3xwbgf4y"; @@ -199,17 +195,17 @@ let azure-mgmt-devtestlabs = overrideAzureMgmtPackage super.azure-mgmt-devtestlabs "4.0.0" "zip" "1397ksrd61jv7400mgn8sqngp6ahir55fyq9n5k69wk88169qm2r"; - azure-mgmt-netapp = overrideAzureMgmtPackage super.azure-mgmt-netapp "6.0.1" "zip" - "6ce683587be1638d8d77620b7af118060b8b7dfc4fd23d46a623a66edcb388e1"; + azure-mgmt-netapp = overrideAzureMgmtPackage super.azure-mgmt-netapp "7.0.0" "zip" + "sha256-ziaddG+6MoPG18OYZyQ9HRx8nfGsz2UbWPC1pWacKto="; azure-mgmt-dns = overrideAzureMgmtPackage super.azure-mgmt-dns "8.0.0" "zip" "407c2dacb33513ffbe9ca4be5addb5e9d4bae0cb7efa613c3f7d531ef7bf8de8"; - azure-mgmt-loganalytics = overrideAzureMgmtPackage super.azure-mgmt-loganalytics "13.0.0b2" "zip" - "sha256-j8CyWZGF7Z/5szJ+CD96E0EbNsceJ1SScrlPqWVLjnk="; + azure-mgmt-loganalytics = overrideAzureMgmtPackage super.azure-mgmt-loganalytics "13.0.0b4" "zip" + "sha256-Jm1t7v5vyFjNNM/evVaEI9sXJKNwJk6XAXuJSRSnKHk="; - azure-mgmt-network = overrideAzureMgmtPackage super.azure-mgmt-network "19.3.0" "zip" - "0b6a1ccdffd76e057ab16a6c319740a0ca68d59fedf7e9c02f2437396e72aa11"; + azure-mgmt-network = overrideAzureMgmtPackage super.azure-mgmt-network "20.0.0" "zip" + "sha256-mnjPyCAJ+rlNgZ4umSYjfVVVg83EobZYY/zupyDjdoY="; azure-mgmt-maps = overrideAzureMgmtPackage super.azure-mgmt-maps "2.0.0" "zip" "384e17f76a68b700a4f988478945c3a9721711c0400725afdfcb63cf84e85f0e"; @@ -223,21 +219,15 @@ let azure-mgmt-marketplaceordering = overrideAzureMgmtPackage super.azure-mgmt-marketplaceordering "1.1.0" "zip" "68b381f52a4df4435dacad5a97e1c59ac4c981f667dcca8f9d04453417d60ad8"; - azure-mgmt-media = overrideAzureMgmtPackage super.azure-mgmt-media "7.0.0" "zip" - "sha256-tF6CpZTtkc1ap6XNXQHwOLesPPEiM+e6K+qqNHeQDo4="; + azure-mgmt-media = overrideAzureMgmtPackage super.azure-mgmt-media "9.0.0" "zip" + "sha256-TI7l8sSQ2QUgPqiE3Cu/F67Wna+KHbQS3fuIjOb95ZM="; azure-mgmt-msi = super.azure-mgmt-msi.overridePythonAttrs (old: rec { - version = "0.2.0"; + version = "6.0.1"; src = old.src.override { inherit version; - sha256 = "0rvik03njz940x2hvqg6iiq8k0d88gyygsr86w8s0sa12sdbq8l6"; + sha256 = "sha256-PPkQmUoBkJ8Su7h9G2/t8dVy/PT3uCYZjlf70fnY2vU="; }; - propagatedBuildInputs = with self; [ - msrest - msrestazure - azure-common - azure-mgmt-nspkg - ]; }); azure-mgmt-privatedns = overrideAzureMgmtPackage super.azure-mgmt-privatedns "1.0.0" "zip" @@ -246,14 +236,14 @@ let azure-mgmt-web = overrideAzureMgmtPackage super.azure-mgmt-web "6.1.0" "zip" "c26635089276515b0488fcf014aab50a0446f54800c6e0e5583cc493ac8d738f"; - azure-mgmt-redhatopenshift = overrideAzureMgmtPackage super.azure-mgmt-redhatopenshift "1.0.0" "zip" - "94cd41f1ebd82e40620fd3e6d88f666b5c19ac7cf8b4e8edadb9721bd7c80980"; + azure-mgmt-redhatopenshift = overrideAzureMgmtPackage super.azure-mgmt-redhatopenshift "1.1.0" "zip" + "sha256-Tq8h3fvajxIG2QjtCyHCQDE2deBDioxLLaQQek/O24U="; azure-mgmt-redis = overrideAzureMgmtPackage super.azure-mgmt-redis "13.1.0" "zip" "ece913e5fc7f157e945809e557443f79ff7691cabca4bbc5ecb266352f843179"; - azure-mgmt-reservations = overrideAzureMgmtPackage super.azure-mgmt-reservations "0.6.0" "zip" - "16ycni3cjl9c0mv419gy5rgbrlg8zp0vnr6aj8z8p2ypdw6sgac3"; + azure-mgmt-reservations = overrideAzureMgmtPackage super.azure-mgmt-reservations "2.0.0" "zip" + "sha256-5vXdXiRubnzPk4uTFeNHR6rwiHSGbeUREX9eW1pqC3E="; azure-mgmt-search = overrideAzureMgmtPackage super.azure-mgmt-search "8.0.0" "zip" "a96d50c88507233a293e757202deead980c67808f432b8e897c4df1ca088da7e"; @@ -264,11 +254,11 @@ let azure-mgmt-signalr = overrideAzureMgmtPackage super.azure-mgmt-signalr "1.0.0b2" "zip" "sha256-FTxY8qoihHG4OZuKT3sRRlKfORbIoqDqug9Ko+6S9dw="; - azure-mgmt-sql = overrideAzureMgmtPackage super.azure-mgmt-sql "3.0.1" "zip" - "129042cc011225e27aee6ef2697d585fa5722e5d1aeb0038af6ad2451a285457"; + azure-mgmt-sql = overrideAzureMgmtPackage super.azure-mgmt-sql "4.0.0b1" "zip" + "sha256-dYk3stvQHN/VEZS8OBCp0IbG8g6iIHpMrLxCWWg7Id8="; - azure-mgmt-sqlvirtualmachine = overrideAzureMgmtPackage super.azure-mgmt-sqlvirtualmachine "1.0.0b1" "zip" - "sha256-SrFTvU+67U3CpMLPZMawXuRdSIbTsfav2jFZIsZWPmw="; + azure-mgmt-sqlvirtualmachine = overrideAzureMgmtPackage super.azure-mgmt-sqlvirtualmachine "1.0.0b2" "zip" + "sha256-zqsLufjUmOl1Zxu8QhYzsEKYgoS+m8GTpRydl7jvXMk="; azure-mgmt-synapse = overrideAzureMgmtPackage super.azure-mgmt-synapse "2.1.0b2" "zip" "sha256-/BAxKDttp/tS/X45y8X4KBm5qxtNuVXhrc5qB3A+wRE="; @@ -279,14 +269,14 @@ let azure-mgmt-relay = overrideAzureMgmtPackage super.azure-mgmt-relay "0.1.0" "zip" "1jss6qhvif8l5s0lblqw3qzijjf0h88agciiydaa7f4q577qgyfr"; - azure-mgmt-eventhub = overrideAzureMgmtPackage super.azure-mgmt-eventhub "9.1.0" "zip" - "0ba9f10e1e8d03247a316e777d6f27fabf268d596dda2af56ac079fcdf5e7afe"; + azure-mgmt-eventhub = overrideAzureMgmtPackage super.azure-mgmt-eventhub "10.0.0" "zip" + "0856574ef4b73bbbc62834051061e2081400aba7e3715e10ef5181d639e86a0b"; azure-mgmt-keyvault = overrideAzureMgmtPackage super.azure-mgmt-keyvault "9.3.0" "zip" "54156422e618b686d52232a7989594b240bd18afd0fa381e12e4772ed4ab5ea8"; - azure-mgmt-cdn = overrideAzureMgmtPackage super.azure-mgmt-cdn "11.0.0" "zip" - "28e7070001e7208cdb6c2ad253ec78851abdd73be482230d2c0874eed5bc0907"; + azure-mgmt-cdn = overrideAzureMgmtPackage super.azure-mgmt-cdn "12.0.0" "zip" + "sha256-t8PuIYkjS0r1Gs4pJJJ8X9cz8950imQtbVBABnyMnd0="; azure-mgmt-containerregistry = overrideAzureMgmtPackage super.azure-mgmt-containerregistry "8.2.0" "zip" "f2bcdbcf0b9fdc2df0df9eccb77cb489091d3c670ed53cba77e5ffd734e9539b"; @@ -303,8 +293,8 @@ let azure-mgmt-authorization = overrideAzureMgmtPackage super.azure-mgmt-authorization "0.61.0" "zip" "0xfvx2dvfj3fbz4ngn860ipi4v6gxqajyjc8x92r8knhmniyxk7m"; - azure-mgmt-storage = overrideAzureMgmtPackage super.azure-mgmt-storage "19.1.0" "zip" - "sha256-Seoi8A4JZaNVCvNKQcGh06SBaQ9lAMeOhUCIAvVtdBY="; + azure-mgmt-storage = overrideAzureMgmtPackage super.azure-mgmt-storage "20.0.0" "zip" + "sha256-buR2tWIv9vWVTt7m6w2N1CezIXAihVrfHshjPKBM3uI="; azure-mgmt-servicebus = overrideAzureMgmtPackage super.azure-mgmt-servicebus "7.1.0" "zip" "d8ae7905fb7d3e24822daa20aa7bc5014f41aa18b48ea2d0161e997fc11a3d36"; @@ -312,14 +302,14 @@ let azure-mgmt-servicefabric = overrideAzureMgmtPackage super.azure-mgmt-servicefabric "1.0.0" "zip" "de35e117912832c1a9e93109a8d24cab94f55703a9087b2eb1c5b0655b3b1913"; - azure-mgmt-servicelinker = overrideAzureMgmtPackage super.azure-mgmt-servicelinker "1.0.0b1" "zip" - "sha256-T3DTvNmLpTm/74cOPEl+vcXv7TIAwmJ6YXGLqpqyGmE="; + azure-mgmt-servicelinker = overrideAzureMgmtPackage super.azure-mgmt-servicelinker "1.0.0" "zip" + "sha256-lAjgwEa2TJDEUU8pwfwkU8EyA1bhLkcAv++I6WHb7Xs="; azure-mgmt-hdinsight = overrideAzureMgmtPackage super.azure-mgmt-hdinsight "9.0.0" "zip" "41ebdc69c0d1f81d25dd30438c14fff4331f66639f55805b918b9649eaffe78a"; - azure-multiapi-storage = overrideAzureMgmtPackage super.azure-multiapi-storage "0.7.0" "tar.gz" - "cd4f184be8c9ca8aca969f93ed50dc7fe556d28ca11520440fc182cf876abdf9"; + azure-multiapi-storage = overrideAzureMgmtPackage super.azure-multiapi-storage "0.9.0" "tar.gz" + "sha256-7uq8uRZ3MXI1Gy+DmMkRVNV7uZPw6j8r9KfhS8d+tCY="; azure-appconfiguration = super.azure-appconfiguration.overrideAttrs(oldAttrs: rec { version = "1.1.1"; @@ -362,11 +352,11 @@ let }); azure-synapse-artifacts = super.azure-synapse-artifacts.overrideAttrs(oldAttrs: rec { - version = "0.10.0"; + version = "0.12.0"; src = super.fetchPypi { inherit (oldAttrs) pname; inherit version; - sha256 = "sha256-P3gsm1kLiuQ2eMbgA9+MqMymdYMgOdJwsLdDf/AVV/0="; + sha256 = "sha256-IfQWsITuThzh+TRgv99JTtcDFY3gMq5PjALkN4mJEZo="; extension = "zip"; }; }); @@ -428,12 +418,12 @@ let }); azure-keyvault-keys = super.azure-keyvault-keys.overridePythonAttrs(oldAttrs: rec { - version = "4.5.0b6"; + version = "4.5.1"; src = super.fetchPypi { inherit (oldAttrs) pname; inherit version; extension = "zip"; - sha256 = "sha256-WFSRJaia0+WnvGxoMYZIvf81ue51VPYXzTp8huUh1fc="; + sha256 = "sha256-2ojnH+ySoU+1jOyIaKv366BAGI3Nzjac4QUK3RllhvY="; }; }); @@ -486,6 +476,16 @@ let doCheck = false; }); + msal = super.msal.overridePythonAttrs(oldAttrs: rec { + version = "1.18.0b1"; + + src = super.fetchPypi { + inherit (oldAttrs) pname; + inherit version; + sha256 = "sha256-kiYDjzX756uulLFr4gCuLnXgmAi+s2WDCGmvkQFC8Ow="; + }; + }); + semver = super.semver.overridePythonAttrs(oldAttrs: rec { version = "2.13.0"; @@ -496,6 +496,15 @@ let }; }); + jsondiff = super.jsondiff.overridePythonAttrs(oldAttrs: rec { + version = "2.0.0"; + + src = oldAttrs.src.override { + inherit version; + sha256 = "sha256-J5WETvB17IorjThcTVn16kiwjnGA/OPLJ4e+DbALH7Q="; + }; + }); + knack = super.knack.overridePythonAttrs(oldAttrs: rec { version = "0.9.0"; @@ -528,11 +537,11 @@ let }); websocket-client = super.websocket-client.overridePythonAttrs(oldAttrs: rec { - version = "0.56.0"; + version = "1.3.1"; src = oldAttrs.src.override { inherit version; - sha256 = "0fpxjyr74klnyis3yf6m54askl0h5dchxcwbfjsq92xng0455m8z"; + sha256 = "sha256-YninUGU5VBgoP4h958O+r7OqaNraXKy+SyFOjSbaSZs="; }; }); diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix index 678835bf7bf..47a76c33c80 100644 --- a/pkgs/tools/filesystems/ceph/default.nix +++ b/pkgs/tools/filesystems/ceph/default.nix @@ -2,7 +2,7 @@ , ensureNewerSourcesHook , cmake, pkg-config , which, git -, boost +, boost175 , libxml2, zlib, lz4 , openldap, lttng-ust , babeltrace, gperf @@ -21,7 +21,7 @@ , doxygen , graphviz , fmt -, python3 +, python39 # Optional Dependencies , yasm ? null, fcgi ? null, expat ? null @@ -104,7 +104,13 @@ let meta = getMeta "Ceph common module for code shared by manager modules"; }; - python = python3; + # Boost 1.75 is not compatible with Python 3.10 + python = python39; + + boost = boost175.override { + enablePython = true; + inherit python; + }; ceph-python-env = python.withPackages (ps: [ ps.sphinx diff --git a/pkgs/tools/filesystems/sftpman/default.nix b/pkgs/tools/filesystems/sftpman/default.nix index e89012b76f6..267b2b649c3 100644 --- a/pkgs/tools/filesystems/sftpman/default.nix +++ b/pkgs/tools/filesystems/sftpman/default.nix @@ -2,13 +2,13 @@ python3Packages.buildPythonApplication rec { pname = "sftpman"; - version = "1.1.3"; + version = "1.2.2"; src = fetchFromGitHub { owner = "spantaleev"; repo = pname; rev = version; - sha256 = "04awwwfw51fi1q18xdysp54jyhr0rhb4kfyrgv0vhhrlpwwyhnqy"; + hash = "sha256-YxqN4+u0nYUWehbyRhjddIo2sythH3E0fiPSyrUlWhM="; }; checkPhase = '' diff --git a/pkgs/tools/misc/diffoscope/default.nix b/pkgs/tools/misc/diffoscope/default.nix index bbbb180f6f6..9d046e7aff4 100644 --- a/pkgs/tools/misc/diffoscope/default.nix +++ b/pkgs/tools/misc/diffoscope/default.nix @@ -77,6 +77,9 @@ python3Packages.buildPythonApplication rec { # fails because it fails to determine llvm version "test_item3_deflate_llvm_bitcode" + # OSError: [Errno 84] Invalid or incomplete multibyte or wide character: b'/build/pytest-of-nixbld/pytest-0/\xf0(\x8c(' + "test_non_unicode_filename" + # disable formatting tests because they can break on black updates "test_code_is_black_clean" ] ++ lib.optionals stdenv.isDarwin [ diff --git a/pkgs/tools/misc/file/default.nix b/pkgs/tools/misc/file/default.nix index 6454bb4eac2..9b982f2c2ea 100644 --- a/pkgs/tools/misc/file/default.nix +++ b/pkgs/tools/misc/file/default.nix @@ -1,5 +1,10 @@ { lib, stdenv, fetchurl, file, zlib, libgnurx }: +# Note: this package is used for bootstrapping fetchurl, and thus +# cannot use fetchpatch! All mutable patches (generated by GitHub or +# cgit) that are needed here should be included directly in Nixpkgs as +# files. + stdenv.mkDerivation rec { pname = "file"; version = "5.41"; diff --git a/pkgs/tools/misc/ntfy/default.nix b/pkgs/tools/misc/ntfy/default.nix index e976ca5fd69..d905c92438d 100644 --- a/pkgs/tools/misc/ntfy/default.nix +++ b/pkgs/tools/misc/ntfy/default.nix @@ -1,9 +1,21 @@ -{ lib, python3Packages, fetchFromGitHub, fetchpatch }: +{ lib +, python39 +, fetchFromGitHub +, fetchpatch +}: -python3Packages.buildPythonApplication rec { +let + python = python39.override { + packageOverrides = self: super: { + ntfy-webpush = self.callPackage ./webpush.nix { }; + }; + }; +in python.pkgs.buildPythonApplication rec { pname = "ntfy"; version = "2.7.0"; + format = "setuptools"; + src = fetchFromGitHub { owner = "dschep"; repo = "ntfy"; @@ -11,11 +23,11 @@ python3Packages.buildPythonApplication rec { sha256 = "09f02cn4i1l2aksb3azwfb70axqhn7d0d0vl2r6640hqr74nc1cv"; }; - checkInputs = with python3Packages; [ + checkInputs = with python.pkgs; [ mock ]; - propagatedBuildInputs = with python3Packages; [ + propagatedBuildInputs = with python.pkgs; [ requests ruamel-yaml appdirs sleekxmpp dnspython emoji @@ -37,7 +49,7 @@ python3Packages.buildPythonApplication rec { ]; checkPhase = '' - HOME=$(mktemp -d) ${python3Packages.python.interpreter} setup.py test + HOME=$(mktemp -d) ${python.interpreter} setup.py test ''; meta = with lib; { diff --git a/pkgs/tools/misc/ntfy-webpush/default.nix b/pkgs/tools/misc/ntfy/webpush.nix index 27559dabbdd..aad5bf48a40 100644 --- a/pkgs/tools/misc/ntfy-webpush/default.nix +++ b/pkgs/tools/misc/ntfy/webpush.nix @@ -1,6 +1,11 @@ -{ lib, python3Packages, fetchFromGitHub }: +{ lib +, buildPythonPackage +, fetchFromGitHub +, pywebpush +, py-vapid +}: -python3Packages.buildPythonPackage rec { +buildPythonPackage rec { pname = "ntfy-webpush"; version = "0.1.3"; @@ -17,7 +22,7 @@ python3Packages.buildPythonPackage rec { --replace "'ntfy', " "" ''; - propagatedBuildInputs = with python3Packages; [ + propagatedBuildInputs = [ pywebpush py-vapid ]; diff --git a/pkgs/tools/networking/cantoolz/default.nix b/pkgs/tools/networking/cantoolz/default.nix index b31dc21b7a3..ca0d05131ca 100644 --- a/pkgs/tools/networking/cantoolz/default.nix +++ b/pkgs/tools/networking/cantoolz/default.nix @@ -17,6 +17,11 @@ python3.pkgs.buildPythonApplication rec { patches = [ (fetchpatch { + # Import Iterable from collections.abc + url = "https://github.com/CANToolz/CANToolz/commit/9e818946716a744b3c7356f248e24ea650791d1f.patch"; + hash = "sha256-BTQ0Io2RF8WpWlLoYfBj8IhL92FRR8ustGClt28/R8c="; + }) + (fetchpatch { # Replace time.clock() which was removed, https://github.com/CANToolz/CANToolz/pull/30 url = "https://github.com/CANToolz/CANToolz/pull/30/commits/d75574523d3b273c40fb714532c4de27f9e6dd3e.patch"; sha256 = "0g91hywg5q6f2qk1awgklywigclrbhh6a6mwd0kpbkk1wawiiwbc"; diff --git a/pkgs/tools/virtualization/awsebcli/default.nix b/pkgs/tools/virtualization/awsebcli/default.nix index bc4a920051a..7c892339fed 100644 --- a/pkgs/tools/virtualization/awsebcli/default.nix +++ b/pkgs/tools/virtualization/awsebcli/default.nix @@ -29,7 +29,6 @@ let }; } ); - six = changeVersion super.six.overridePythonAttrs "1.14.0" "02lw67hprv57hyg3cfy02y3ixjk3nzwc0dx3c4ynlvkfwkfdnsr3"; wcwidth = changeVersion super.wcwidth.overridePythonAttrs "0.1.9" "1wf5ycjx8s066rdvr0fgz4xds9a8zhs91c4jzxvvymm1c8l8cwzf"; semantic-version = changeVersion super.semantic-version.overridePythonAttrs "2.8.5" "d2cb2de0558762934679b9a104e82eca7af448c9f4974d1f3eeccff651df8a54"; pyyaml = super.pyyaml.overridePythonAttrs (oldAttrs: rec { @@ -57,6 +56,11 @@ with localPython.pkgs; buildPythonApplication rec { sha256 = "sha256-W3nUXPAXoicDQNXigktR1+b/9W6qvi90fujrXAekxTU="; }; + + preConfigure = '' + substituteInPlace setup.py --replace "six>=1.11.0,<1.15.0" "six" + ''; + buildInputs = [ glibcLocales ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d2faace053e..fbdd3e31d99 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4613,7 +4613,6 @@ with pkgs; libceph = ceph.lib; inherit (callPackages ../tools/filesystems/ceph { - boost = boost175.override { enablePython = true; python = python3; }; lua = lua5_4; }) ceph @@ -14492,11 +14491,11 @@ with pkgs; # available as `pythonPackages.tkinter` and can be used as any other Python package. # When switching these sets, please update docs at ../../doc/languages-frameworks/python.md python2 = python27; - python3 = python39; + python3 = python310; # pythonPackages further below, but assigned here because they need to be in sync python2Packages = dontRecurseIntoAttrs python27Packages; - python3Packages = dontRecurseIntoAttrs python39Packages; + python3Packages = dontRecurseIntoAttrs python310Packages; pypy = pypy2; pypy2 = pypy27; @@ -14538,6 +14537,12 @@ with pkgs; bluezSupport = true; x11Support = true; }; + python310Full = python310.override { + self = python310Full; + pythonAttr = "python310Full"; + bluezSupport = true; + x11Support = true; + }; pythonInterpreters = callPackage ./../development/interpreters/python { }; inherit (pythonInterpreters) python27 python37 python38 python39 python310 python311 python3Minimal pypy27 pypy38 pypy37 rustpython; @@ -16798,7 +16803,7 @@ with pkgs; boost15x = boost159; boost16x = boost169; - boost17x = boost177; + boost17x = boost179; boost = boost17x; boost_process = callPackage ../development/libraries/boost-process { }; @@ -26143,7 +26148,7 @@ with pkgs; eq10q = callPackage ../applications/audio/eq10q { }; - errbot = python3Packages.callPackage ../applications/networking/errbot { }; + errbot = callPackage ../applications/networking/errbot { }; espeak-classic = callPackage ../applications/audio/espeak { }; diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index c84d0739d31..0a52e19886d 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -84,6 +84,7 @@ mapAliases ({ hdlparse = throw "hdlparse has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-01-18 hyperkitty = throw "Please use pkgs.mailmanPackages.hyperkitty"; # added 2022-04-29 IMAPClient = imapclient; # added 2021-10-28 + ipaddress = throw "ipaddress has been removed because it is no longer required since python 2.7."; # added 2022-05-30 jupyter_client = jupyter-client; # added 2021-10-15 Keras = keras; # added 2021-11-25 lammps-cython = throw "lammps-cython no longer builds and is unmaintained"; # added 2021-07-04 @@ -96,6 +97,7 @@ mapAliases ({ mailman-web = throw "Please use pkgs.mailman-web"; # added 2022-04-29 net2grid = gridnet; # add 2022-04-22 nose-cover3 = throw "nose-cover3 has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-02-16 + ordereddict = throw "ordereddict has been removed because it is only useful on unsupported python versions."; # added 2022-05-28 pam = python-pam; # added 2020-09-07. PasteDeploy = pastedeploy; # added 2021-10-07 pathpy = path; # added 2022-04-12 @@ -111,6 +113,7 @@ mapAliases ({ pydrive = throw "pydrive is broken and deprecated and has been replaced with pydrive2."; # added 2022-06-01 pyGtkGlade = throw "Glade support for pygtk has been removed"; # added 2022-01-15 pycallgraph = throw "pycallgraph has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-01-18 + pycryptodome-test-vectors = throw "pycryptodome-test-vectors has been removed because it is an internal package to pycryptodome"; # added 2022-05-28 pyialarmxr = pyialarmxr-homeassistant; # added 2022-06-07 pylibgen = throw "pylibgen is unmaintained upstreamed, and removed from nixpkgs"; # added 2020-06-20 pymc3 = pymc; # added 2022-06-05, module was rename starting with 4.0.0 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 47d7a2f9d0c..f061aa2ef72 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -889,6 +889,8 @@ in { azure-cosmosdb-table = callPackage ../development/python-modules/azure-cosmosdb-table { }; + azure-data-tables = callPackage ../development/python-modules/azure-data-tables { }; + azure-datalake-store = callPackage ../development/python-modules/azure-datalake-store { }; azure-eventgrid = callPackage ../development/python-modules/azure-eventgrid { }; @@ -4319,8 +4321,6 @@ in { ipaddr = callPackage ../development/python-modules/ipaddr { }; - ipaddress = callPackage ../development/python-modules/ipaddress { }; - ipdb = callPackage ../development/python-modules/ipdb { }; ipdbplugin = callPackage ../development/python-modules/ipdbplugin { }; @@ -4821,7 +4821,6 @@ in { ledger = (toPythonModule (pkgs.ledger.override { usePython = true; - boost = pkgs.boost179; # Current default boost (1.77) doesn’t work with Python 3.10. python3 = python; })).py; @@ -5300,6 +5299,8 @@ in { md-toc = callPackage ../development/python-modules/md-toc { }; + mdx-truly-sane-lists = callPackage ../development/python-modules/mdx-truly-sane-lists { }; + md2gemini = callPackage ../development/python-modules/md2gemini { }; mdformat = callPackage ../development/python-modules/mdformat { }; @@ -5433,6 +5434,7 @@ in { mkdocs = callPackage ../development/python-modules/mkdocs { }; mkdocs-drawio-exporter = callPackage ../development/python-modules/mkdocs-drawio-exporter { }; + mkdocs-exclude = callPackage ../development/python-modules/mkdocs-exclude { }; mkdocs-macros = callPackage ../development/python-modules/mkdocs-macros { }; mkdocs-material = callPackage ../development/python-modules/mkdocs-material { }; mkdocs-material-extensions = callPackage ../development/python-modules/mkdocs-material/mkdocs-material-extensions.nix { }; @@ -5925,8 +5927,6 @@ in { nsapi = callPackage ../development/python-modules/nsapi { }; - ntfy-webpush = callPackage ../tools/misc/ntfy-webpush { }; - ntc-templates = callPackage ../development/python-modules/ntc-templates { }; ntlm-auth = callPackage ../development/python-modules/ntlm-auth { }; @@ -6133,8 +6133,6 @@ in { opuslib = callPackage ../development/python-modules/opuslib { }; - ordereddict = callPackage ../development/python-modules/ordereddict { }; - orderedmultidict = callPackage ../development/python-modules/orderedmultidict { }; ordered-set = callPackage ../development/python-modules/ordered-set { }; @@ -6922,7 +6920,9 @@ in { psd-tools = callPackage ../development/python-modules/psd-tools { }; - psutil = callPackage ../development/python-modules/psutil { }; + psutil = callPackage ../development/python-modules/psutil { + inherit (pkgs.darwin.apple_sdk.frameworks) IOKit; + }; psycopg2 = callPackage ../development/python-modules/psycopg2 { }; @@ -7192,8 +7192,6 @@ in { pycryptodome = callPackage ../development/python-modules/pycryptodome { }; - pycryptodome-test-vectors = callPackage ../development/python-modules/pycryptodome-test-vectors { }; - pycryptodomex = callPackage ../development/python-modules/pycryptodomex { }; pyct = callPackage ../development/python-modules/pyct { }; @@ -10640,6 +10638,8 @@ in { trio-asyncio = callPackage ../development/python-modules/trio-asyncio { }; + trio-websocket = callPackage ../development/python-modules/trio-websocket { }; + trueskill = callPackage ../development/python-modules/trueskill { }; trustme = callPackage ../development/python-modules/trustme { }; |