diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 6cb738e8b39e..2b5db0ef9971 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -3444,12 +3444,6 @@ githubId = 20448408; keys = [ { fingerprint = "D446 E58D 87A0 31C7 EC15 88D7 B461 2924 45C6 E696"; } ]; }; - berce = { - email = "bert.moens@gmail.com"; - github = "berce"; - githubId = 10439709; - name = "Bert Moens"; - }; bergey = { email = "bergey@teallabs.org"; github = "bergey"; @@ -4445,12 +4439,6 @@ githubId = 54632731; name = "Cameron Dugan"; }; - cameronfyfe = { - email = "cameron.j.fyfe@gmail.com"; - github = "cameronfyfe"; - githubId = 21013281; - name = "Cameron Fyfe"; - }; cameronnemo = { email = "cnemo@tutanota.com"; github = "CameronNemo"; @@ -18478,13 +18466,6 @@ github = "mohe2015"; githubId = 13287984; }; - momeemt = { - name = "Mutsuha Asada"; - email = "me@momee.mt"; - github = "momeemt"; - githubId = 43488453; - keys = [ { fingerprint = "D94F EA9F 5B08 F6A1 7B8F EB8B ACB5 4F0C BC6A A7C6"; } ]; - }; monaaraj = { name = "Mon Aaraj"; email = "owo69uwu69@gmail.com"; @@ -28968,6 +28949,14 @@ githubId = 110242808; name = "Vasilii Pustovoit"; }; + vavakado = { + email = "xor@vavakado.xyz"; + github = "vavakado"; + githubId = 80159210; + name = "Vladimir Rubin"; + matrix = "@vavakado:imagisphe.re"; + keys = [ { fingerprint = "A054 0374 CD37 2C71 FE6D E0CF CAB7 4472 7F36 B524"; } ]; + }; vbgl = { email = "Vincent.Laporte@gmail.com"; github = "vbgl"; diff --git a/nixos/modules/services/audio/music-assistant.nix b/nixos/modules/services/audio/music-assistant.nix index a2a383bce8cd..6ff098a67723 100644 --- a/nixos/modules/services/audio/music-assistant.nix +++ b/nixos/modules/services/audio/music-assistant.nix @@ -83,7 +83,18 @@ in lib.optional cfg.enable 8097 # Music Assistant stream port ++ lib.optional (lib.elem "airplay" cfg.providers) 7000 ++ lib.optional (lib.elem "sendspin" cfg.providers) 8927 - ++ lib.optional (lib.elem "snapcast" cfg.providers) 1780; + ++ lib.optional (lib.elem "snapcast" cfg.providers) 1780 + ++ lib.optionals (lib.elem "squeezelite" cfg.providers) [ + # https://lyrion.org/reference/slimproto-protocol/ + 3483 # Slimproto control + # https://lyrion.org/reference/cli/using-the-cli/ + 9000 # Slimproto JSON-RPC + 9090 # Slimproto CLI + ]; + allowedUDPPorts = lib.optionals (lib.elem "squeezelite" cfg.providers) [ + # https://lyrion.org/reference/slimproto-protocol/ + 3483 # Slimproto discovery + ]; # The information published by Apple 1 seem to not apply to libraop. # The closest we could find that represents the port range being used as observed by tcpdump is the ephemeral port range. # 1: https://support.apple.com/en-us/103229#:~:text=49152%E2%80%93-,65535,-TCP%2C%20UDP diff --git a/nixos/modules/services/networking/xrdp.nix b/nixos/modules/services/networking/xrdp.nix index a1e9f9c23d80..8938293fee28 100644 --- a/nixos/modules/services/networking/xrdp.nix +++ b/nixos/modules/services/networking/xrdp.nix @@ -19,7 +19,7 @@ let cat > $out/startwm.sh < 0x050000) + QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); + #endif ++ // Ensure the app-id ('makemkv') is set, so that GNOME can show ++ // the correct icon in the dash. ++ QGuiApplication::setDesktopFileName("makemkv"); + + CApClient::ITransport* p_trans = NULL; + diff --git a/pkgs/by-name/ma/makemkv/package.nix b/pkgs/by-name/ma/makemkv/package.nix index 6d4ffd64d016..71993f3e84f4 100644 --- a/pkgs/by-name/ma/makemkv/package.nix +++ b/pkgs/by-name/ma/makemkv/package.nix @@ -43,7 +43,12 @@ stdenv.mkDerivation ( srcs = lib.attrValues finalAttrs.passthru.srcs; sourceRoot = "makemkv-oss-${version}"; - patches = [ ./r13y.patch ]; + patches = [ + ./r13y.patch + # This patch is sourced from NonGuix, licensed GPLv3: + # https://gitlab.com/nonguix/nonguix/-/blob/2d1f3691546f007c7cd96ae87e4e970fed789182/nongnu/packages/patches/makemkv-app-id.patch + ./app-id.patch + ]; enableParallelBuilding = true; nativeBuildInputs = [ diff --git a/pkgs/by-name/mi/microsoft-edge/package.nix b/pkgs/by-name/mi/microsoft-edge/package.nix index bb30db2dfd79..0e696a287faa 100644 --- a/pkgs/by-name/mi/microsoft-edge/package.nix +++ b/pkgs/by-name/mi/microsoft-edge/package.nix @@ -164,11 +164,11 @@ let in stdenvNoCC.mkDerivation (finalAttrs: { pname = "microsoft-edge"; - version = "149.0.4022.52"; + version = "149.0.4022.69"; src = fetchurl { url = "https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/microsoft-edge-stable_${finalAttrs.version}-1_amd64.deb"; - hash = "sha256-3lFhfxkS80P59dk00lpBp+8IIFUvSEJVGGTfAghxw4g="; + hash = "sha256-0Ur+0KKJQ7VTr7IMax5BIgwSf6jNhr0Aiz+So7Hj/OE="; }; # With strictDeps on, some shebangs were not being patched correctly diff --git a/pkgs/by-name/mi/mitra/package.nix b/pkgs/by-name/mi/mitra/package.nix index 0e147c1981dd..b0bc0ac14843 100644 --- a/pkgs/by-name/mi/mitra/package.nix +++ b/pkgs/by-name/mi/mitra/package.nix @@ -8,16 +8,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "mitra"; - version = "4.17.0"; + version = "5.0.0"; src = fetchFromCodeberg { owner = "silverpill"; repo = "mitra"; rev = "v${finalAttrs.version}"; - hash = "sha256-ysV0r0K+2ivnDg/GuqwK5HWa4/jQtopXqS9g/9wWrOw="; + hash = "sha256-Chn3SONSg6yhwwHcry/cO2L7/ihEco35gpRlMlQVXz8="; }; - cargoHash = "sha256-RDMLfg+KsvfXDjsCzCn53kebBRN8/6er/LsS/BzoeU0="; + cargoHash = "sha256-0lXwOphoUQqe1O0KbAOl98ZbMKyG8ZZOl7NhXYwSvvQ="; # require running database doCheck = false; diff --git a/pkgs/by-name/mq/mqtt-explorer/package.nix b/pkgs/by-name/mq/mqtt-explorer/package.nix index 1f09774684f6..8471ece5d4a7 100644 --- a/pkgs/by-name/mq/mqtt-explorer/package.nix +++ b/pkgs/by-name/mq/mqtt-explorer/package.nix @@ -56,12 +56,6 @@ stdenv.mkDerivation rec { env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1"; - # disable code signing on macos - # https://github.com/electron-userland/electron-builder/blob/77f977435c99247d5db395895618b150f5006e8f/docs/code-signing.md#how-to-disable-code-signing-during-the-build-process-on-macos - postConfigure = lib.optionalString stdenv.hostPlatform.isDarwin '' - export CSC_IDENTITY_AUTO_DISCOVERY=false - ''; - configurePhase = '' runHook preConfigure @@ -100,7 +94,9 @@ stdenv.mkDerivation rec { yarn --offline run electron-builder --dir \ -c.electronDist="$electron_dist" \ - -c.electronVersion=${electron.version} + -c.electronVersion=${electron.version} \ + -c.mac.identity=null + # ^ disable code signing on macos runHook postBuild ''; diff --git a/pkgs/by-name/ms/msedgedriver/package.nix b/pkgs/by-name/ms/msedgedriver/package.nix index 053d4e347fac..5a7bac587d47 100644 --- a/pkgs/by-name/ms/msedgedriver/package.nix +++ b/pkgs/by-name/ms/msedgedriver/package.nix @@ -11,11 +11,11 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "msedgedriver"; - version = "149.0.4022.52"; + version = "149.0.4022.69"; src = fetchzip { url = "https://msedgedriver.microsoft.com/${finalAttrs.version}/edgedriver_linux64.zip"; - hash = "sha256-GLPkBOlXDTpjYrrc9odDeHXXZ8vLPiw06v1bIN1zOpo="; + hash = "sha256-BtyQD+zkZWv5GhnxJOg4BkVLrCdBZr7KN1bvXyvp4B8="; stripRoot = false; }; diff --git a/pkgs/by-name/ni/nixtamal/package.nix b/pkgs/by-name/ni/nixtamal/package.nix index e9f4193375a0..cb79390c8a10 100644 --- a/pkgs/by-name/ni/nixtamal/package.nix +++ b/pkgs/by-name/ni/nixtamal/package.nix @@ -20,7 +20,7 @@ ocamlPackages.buildDunePackage (finalAttrs: { pname = "nixtamal"; - version = "1.5.4"; + version = "1.6.0"; release_year = 2026; minimalOCamlVersion = "5.3"; @@ -29,7 +29,7 @@ ocamlPackages.buildDunePackage (finalAttrs: { url = "https://darcs.toastal.in.th/nixtamal/stable/"; mirrors = [ "https://smeder.ee/~toastal/nixtamal.darcs" ]; rev = finalAttrs.version; - hash = "sha256-ST90m0SF3dyGOV3Q43bJ9bGuznP0WIkQsIJXUNFNPOs="; + hash = "sha256-OOAulI6ZJGbbUMi68jnJQ+cJpZVQYL5F5HUfdOZ3wEs="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/oc/oci-cli/package.nix b/pkgs/by-name/oc/oci-cli/package.nix index d2c874b0f29b..c114c75ba567 100644 --- a/pkgs/by-name/oc/oci-cli/package.nix +++ b/pkgs/by-name/oc/oci-cli/package.nix @@ -31,14 +31,14 @@ in py.pkgs.buildPythonApplication (finalAttrs: { pname = "oci-cli"; - version = "3.85.0"; + version = "3.86.0"; pyproject = true; src = fetchFromGitHub { owner = "oracle"; repo = "oci-cli"; tag = "v${finalAttrs.version}"; - hash = "sha256-10KIrd6ZI56YiqNzmo/f5jUEp5YZF5JUN6NPzbgnq9w="; + hash = "sha256-bdHhM7ah1dnQYOK8TXheSqSbFZn3WgMfsfQtAT24wBM="; }; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/by-name/oe/oelint-adv/package.nix b/pkgs/by-name/oe/oelint-adv/package.nix index 68215db4413c..60997d1a6a5a 100644 --- a/pkgs/by-name/oe/oelint-adv/package.nix +++ b/pkgs/by-name/oe/oelint-adv/package.nix @@ -7,14 +7,14 @@ python3Packages.buildPythonApplication (finalAttrs: { pname = "oelint-adv"; - version = "9.8.2"; + version = "9.8.4"; pyproject = true; src = fetchFromGitHub { owner = "priv-kweihmann"; repo = "oelint-adv"; tag = finalAttrs.version; - hash = "sha256-mZleG+NAVqjeJ66SlYYvF90XwJ4H1wlsMOQRBdH1qhM="; + hash = "sha256-bQFjf+BAmJKsjcjZcTc34+4bcSq4hgSBKgHRcYA1ai0="; }; postPatch = '' diff --git a/pkgs/by-name/op/opencode-desktop/package.nix b/pkgs/by-name/op/opencode-desktop/package.nix index 2af9b61a87bb..87b15e49ed0d 100644 --- a/pkgs/by-name/op/opencode-desktop/package.nix +++ b/pkgs/by-name/op/opencode-desktop/package.nix @@ -54,12 +54,6 @@ stdenvNoCC.mkDerivation (finalAttrs: { OPENCODE_CHANNEL = "prod"; MODELS_DEV_API_JSON = "${models-dev}/dist/_api.json"; OPENCODE_DISABLE_MODELS_FETCH = true; - } - # Disable code signing on macOS. Public build hosts don't have Apple Developer - # certificates, so electron-builder's `security find-identity` spawns produce - # EPERM inside the nix sandbox. - // lib.optionalAttrs stdenvNoCC.hostPlatform.isDarwin { - CSC_IDENTITY_AUTO_DISCOVERY = "false"; }; postPatch = '' diff --git a/pkgs/by-name/or/orca/package.nix b/pkgs/by-name/or/orca/package.nix index 6cb77c9b2ed0..41769c769272 100644 --- a/pkgs/by-name/or/orca/package.nix +++ b/pkgs/by-name/or/orca/package.nix @@ -128,7 +128,6 @@ python3.pkgs.buildPythonApplication (finalAttrs: { Needs `services.gnome.at-spi2-core.enable = true;` in `configuration.nix`. ''; - maintainers = with lib.maintainers; [ berce ]; teams = [ lib.teams.gnome ]; license = lib.licenses.lgpl21; platforms = lib.platforms.linux; diff --git a/pkgs/by-name/pj/pj/package.nix b/pkgs/by-name/pj/pj/package.nix index 5b48a60c27bc..42f65a474e6e 100644 --- a/pkgs/by-name/pj/pj/package.nix +++ b/pkgs/by-name/pj/pj/package.nix @@ -8,13 +8,13 @@ buildGoModule (finalAttrs: { pname = "pj"; - version = "1.13.0"; + version = "1.14.0"; src = fetchFromGitHub { owner = "josephschmitt"; repo = "pj"; tag = "v${finalAttrs.version}"; - hash = "sha256-T09puEftbgvtXKcywJcXHfI+UTKGjyFaPMr7LEHDIUQ="; + hash = "sha256-i6BYNKizpEE3OffkOuAShFow21sMMHPyCK5RMguXCCQ="; }; vendorHash = "sha256-rya2afSV9Y1hmUZU0wyR9NETBl3TXD/OTHv0zvVl8v8="; diff --git a/pkgs/by-name/pl/plausible/package.nix b/pkgs/by-name/pl/plausible/package.nix index 9bfa3cdf652d..3afdb2a5040c 100644 --- a/pkgs/by-name/pl/plausible/package.nix +++ b/pkgs/by-name/pl/plausible/package.nix @@ -9,23 +9,23 @@ runCommand, nixosTests, npm-lockfile-fix, + cmake, nix-update-script, brotli, - tailwindcss_3, esbuild, buildPackages, }: let pname = "plausible"; - version = "3.0.1"; + version = "3.2.1"; mixEnv = "ce"; src = fetchFromGitHub { owner = "plausible"; repo = "analytics"; rev = "v${version}"; - hash = "sha256-DQIRsqkH2zgIkb3yezuJEKJ99PS031GJ+bDAeHMLNUY="; + hash = "sha256-2roIj0s2cybYdGmmJSPJ5Rc1gNunxlYew9JR5xxMv+k="; postFetch = '' ${lib.getExe npm-lockfile-fix} $out/assets/package-lock.json sed -ie ' @@ -47,7 +47,7 @@ let pname = "${pname}-assets"; inherit version; src = "${src}/assets"; - npmDepsHash = "sha256-hPbKEC8DE/gb483COG/ZbTuEP8Y44Fs7ppHMpXphCjg="; + npmDepsHash = "sha256-grYxPRzpu3pcv3lyTQxx0RDhmgFhsOKZoYbzd701xjA="; dontNpmBuild = true; installPhase = '' runHook preInstall @@ -60,7 +60,7 @@ let pname = "${pname}-tracker"; inherit version; src = "${src}/tracker"; - npmDepsHash = "sha256-kfqJVUw3xnMT0sOkc5O42CwBxPQXiYnOQ5WpdZwzxfE"; + npmDepsHash = "sha256-hrsvQXvbcfRDUc1qinyUJ7Oh4yMM1e+UEdYudjYyJxk="; dontNpmBuild = true; installPhase = '' runHook preInstall @@ -69,6 +69,18 @@ let ''; }; + # lazy_html (new dep since 3.1.0) builds a NIF against lexbor + # its Makefile clones lexbor at build time (which sandbox forbids) + # pre-seed commit in lazy_html's mix.exs so the clone target is skipped + # and force a build in preBuild below + lexborCommit = "244b84956a6dc7eec293781d051354f351274c46"; + lexborSrc = fetchFromGitHub { + owner = "lexbor"; + repo = "lexbor"; + rev = lexborCommit; + hash = "sha256-Oup/lGU8a9Dqfho4Llg39t9Y9n4xfUmGk0772OkpnLQ="; + }; + mixFodDeps = beamPackages.fetchMixDeps { inherit pname @@ -76,7 +88,7 @@ let src mixEnv ; - hash = "sha256-caCbuMEDsLcxm8xehWEJiaTfgl435crBfnQFQpzGsLY"; + hash = "sha256-fm/elkCNpu5sduBxly06i/z30Y9BMtt+qthXmLuvlUc="; }; mjmlNif = rustPlatform.buildRustPackage { @@ -84,7 +96,7 @@ let version = ""; src = "${mixFodDeps}/mjml/native/mjml_nif"; - cargoHash = "sha256-zDWOik65PWAMpIDDcG+DibprPVW/k+Q83+fjFI5vWaY="; + cargoHash = "sha256-a8xSRdFtMYF0n2rl7A5ZgHoaunUJLVJwHvrkc9uyZKo="; doCheck = false; env = { @@ -109,7 +121,13 @@ let file=''${lib##*/} base=''${file%.*} ln -s "$lib" $out/mjml/priv/native/$base.so + # mjml >= 4.0 loads through RustlerPrecompiled (expects NIF name w/o lib prefix) + ln -s "$lib" $out/mjml/priv/native/''${base#lib}.so done + + mkdir -p $out/lazy_html/_build/c/third_party/lexbor + cp -r --no-preserve=mode ${lexborSrc} \ + $out/lazy_html/_build/c/third_party/lexbor/${lexborCommit} ''; beamPackages = beam27Packages.extend (self: super: { elixir = elixir_1_18; }); @@ -126,10 +144,22 @@ beamPackages.mixRelease rec { nativeBuildInputs = [ nodejs brotli + cmake ]; + dontUseCmakeConfigure = true; + mixFodDeps = patchedMixFodDeps; + # deps are compiled in mixRelease configurePhase + # so the force_build switch must be in place before then + # preBuild would be too late + preConfigure = '' + cat >> config/config.exs <= 3.1.0 needs tailwind v4 cat >> config/config.exs <=0.04.14,<0.05' 'Unidecode>=0.04.14' - ''; - - patches = [ - ./slugify_filename_test.patch # fixes broken test by new unidecode - ]; - - propagatedBuildInputs = [ - unidecode - regex - ]; - - nativeCheckInputs = [ unittestCheckHook ]; - - meta = { - homepage = "https://github.com/dimka665/awesome-slugify"; - description = "Python flexible slugify function"; - license = lib.licenses.gpl3; - platforms = lib.platforms.all; - maintainers = [ ]; - }; -} diff --git a/pkgs/development/python-modules/awesome-slugify/slugify_filename_test.patch b/pkgs/development/python-modules/awesome-slugify/slugify_filename_test.patch deleted file mode 100644 index 3283d76eae05..000000000000 --- a/pkgs/development/python-modules/awesome-slugify/slugify_filename_test.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git i/slugify/tests.py w/slugify/tests.py -index 4c9fa1c..3e14328 100644 ---- i/slugify/tests.py -+++ w/slugify/tests.py -@@ -57,7 +57,7 @@ class PredefinedSlugifyTestCase(unittest.TestCase): - self.assertEqual(slugify_url('The Über article'), 'uber-article') - - def test_slugify_filename(self): -- self.assertEqual(slugify_filename(u'Дrаft №2.txt'), u'Draft_2.txt') -+ self.assertEqual(slugify_filename(u'Дrаft №2.txt'), u'Draft_No._2.txt') - - - class ToLowerTestCase(unittest.TestCase): diff --git a/pkgs/development/python-modules/bch/default.nix b/pkgs/development/python-modules/bch/default.nix index c2f529fddee3..c947beafd19b 100644 --- a/pkgs/development/python-modules/bch/default.nix +++ b/pkgs/development/python-modules/bch/default.nix @@ -2,25 +2,30 @@ lib, buildPythonPackage, fetchFromGitHub, + setuptools, click, click-log, paho-mqtt, pyaml, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "bch"; version = "1.2.1"; - format = "setuptools"; + pyproject = true; + + __structuredAttrs = true; src = fetchFromGitHub { owner = "hardwario"; repo = "bch-control-tool"; - rev = "v${version}"; - sha256 = "/C+NbJ0RrWZ/scv/FiRBTh4h7u0xS4mHVDWQ0WwmlEY="; + tag = "v${finalAttrs.version}"; + hash = "sha256-/C+NbJ0RrWZ/scv/FiRBTh4h7u0xS4mHVDWQ0WwmlEY="; }; - propagatedBuildInputs = [ + build-system = [ setuptools ]; + + dependencies = [ click click-log paho-mqtt @@ -28,8 +33,8 @@ buildPythonPackage rec { ]; postPatch = '' - sed -ri 's/@@VERSION@@/${version}/g' \ - bch/cli.py setup.py + substituteInPlace bch/cli.py setup.py \ + --replace-fail "@@VERSION@@" "${finalAttrs.version}" ''; pythonImportsCheck = [ "bch" ]; @@ -42,4 +47,4 @@ buildPythonPackage rec { license = lib.licenses.mit; maintainers = with lib.maintainers; [ cynerd ]; }; -} +}) diff --git a/pkgs/development/python-modules/cartopy/default.nix b/pkgs/development/python-modules/cartopy/default.nix index 2c82eae651f0..b747f7f171f1 100644 --- a/pkgs/development/python-modules/cartopy/default.nix +++ b/pkgs/development/python-modules/cartopy/default.nix @@ -1,39 +1,57 @@ { lib, buildPythonPackage, + fetchFromGitHub, + + # build-system cython, - fetchPypi, - fontconfig, - gdal, + setuptools-scm, + + # nativeBuildInputs geos, + proj, + + # dependencies matplotlib, numpy, - owslib, - pillow, - proj, pyproj, pyshp, + shapely, + + # optional-dependencies + # ows + owslib, + pillow, + # plotting + gdal, + scipy, + + # tests + fontconfig, pytest-mpl, pytestCheckHook, - scipy, - setuptools-scm, - shapely, + writableTmpDirAsHomeHook, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "cartopy"; version = "0.25.0"; pyproject = true; + __structuredAttrs = true; - src = fetchPypi { - inherit pname version; - hash = "sha256-VfGjkOXz8HWyIcfZH7ECWK2XjbeGx5MOugbrRdKHU/4="; + src = fetchFromGitHub { + owner = "SciTools"; + repo = "cartopy"; + tag = "v${finalAttrs.version}"; + hash = "sha256-qnsr8IgqgqQDyGslYBvpAr/+ccsUPOiA2yGOXge3nUw="; }; - build-system = [ setuptools-scm ]; + build-system = [ + cython + setuptools-scm + ]; nativeBuildInputs = [ - cython geos # for geos-config proj ]; @@ -66,12 +84,12 @@ buildPythonPackage rec { nativeCheckInputs = [ pytest-mpl pytestCheckHook + writableTmpDirAsHomeHook ] - ++ lib.concatAttrValues optional-dependencies; + ++ lib.concatAttrValues finalAttrs.passthru.optional-dependencies; preCheck = '' export FONTCONFIG_FILE=${fontconfig.out}/etc/fonts/fonts.conf - export HOME=$TMPDIR ''; pytestFlags = [ @@ -85,16 +103,41 @@ buildPythonPackage rec { ]; disabledTests = [ + # Numerical errors. Example: + # AssertionError: Arrays are not almost equal to 4 decimals + "test_LatitudeFormatter_mercator" + "test_cursor_values" + "test_default" + "test_extents" + "test_geoaxes_no_subslice" + "test_geoaxes_set_boundary_clipping" + "test_get_extent" + "test_gridliner_labels_zoom" + "test_infinite_loop_bounds" + "test_invalid_xy_domain_corner" + "test_invalid_y_domain" + "test_osgb_vals" + "test_pcolormesh_datalim" + "test_plot_after_contour_doesnt_shrink" + "test_sweep" + "test_tiny_point_between_boundary_points" + "test_transform_point" + "test_with_transform" + + # Failed: Error: Image files did not match. + "test_background_img" "test_gridliner_constrained_adjust_datalim" - "test_gridliner_labels_bbox_style" + "test_imshow" + "test_pil_Image" + "test_stock_img" ]; meta = { description = "Process geospatial data to create maps and perform analyses"; homepage = "https://scitools.org.uk/cartopy/docs/latest/"; - changelog = "https://github.com/SciTools/cartopy/releases/tag/v${version}"; + changelog = "https://github.com/SciTools/cartopy/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.lgpl3Plus; maintainers = [ ]; mainProgram = "feature_download"; }; -} +}) diff --git a/pkgs/development/python-modules/curl-cffi/default.nix b/pkgs/development/python-modules/curl-cffi/default.nix index 228e8037b203..1d328148d6e7 100644 --- a/pkgs/development/python-modules/curl-cffi/default.nix +++ b/pkgs/development/python-modules/curl-cffi/default.nix @@ -17,6 +17,7 @@ pytest-trio, pytestCheckHook, python-multipart, + rich, trustme, uvicorn, websockets, @@ -46,6 +47,7 @@ buildPythonPackage rec { dependencies = [ cffi certifi + rich ]; pythonImportsCheck = [ "curl_cffi" ]; diff --git a/pkgs/development/python-modules/e3nn/default.nix b/pkgs/development/python-modules/e3nn/default.nix new file mode 100644 index 000000000000..4382881a2302 --- /dev/null +++ b/pkgs/development/python-modules/e3nn/default.nix @@ -0,0 +1,78 @@ +{ + lib, + stdenv, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + setuptools-scm, + + # dependencies + opt-einsum-fx, + scipy, + sympy, + torch, + + # tests + pytestCheckHook, + llvmPackages, +}: + +buildPythonPackage (finalAttrs: { + pname = "e3nn"; + version = "0.6.0"; + pyproject = true; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "e3nn"; + repo = "e3nn"; + tag = finalAttrs.version; + hash = "sha256-gGl0DiLU8w0jqGWA/ZzvkxdZdZCvtXqtmEEZ2dIwZ2o="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + opt-einsum-fx + scipy + sympy + torch + ]; + + pythonImportsCheck = [ "e3nn" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + disabledTests = [ + # RuntimeError: torch.compile does not support compiling torch.jit.script or + # torch.jit.freeze models directly + "test_identity" + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + # symbol not found in flat namespace '___kmpc_barrier' + "test_activation" + "test_input_weights_jit" + "test_variance" + ]; + + propagatedBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ + # Otherwise, torch will fail to include `omp.h`: + # torch._inductor.exc.InductorError: CppCompileError: C++ compile error OpenMP support not found + llvmPackages.openmp + ]; + + meta = { + description = "Modular framework for neural networks with Euclidean symmetry"; + homepage = "https://github.com/e3nn/e3nn"; + changelog = "https://github.com/e3nn/e3nn/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ GaetanLepage ]; + }; +}) diff --git a/pkgs/development/python-modules/ghidra-bridge/default.nix b/pkgs/development/python-modules/ghidra-bridge/default.nix deleted file mode 100644 index 2c50519da9bd..000000000000 --- a/pkgs/development/python-modules/ghidra-bridge/default.nix +++ /dev/null @@ -1,43 +0,0 @@ -{ - lib, - buildPythonPackage, - fetchFromGitHub, - jfx-bridge, - setuptools, -}: - -buildPythonPackage rec { - pname = "ghidra-bridge"; - version = "1.0.0"; - pyproject = true; - - src = fetchFromGitHub { - owner = "justfoxing"; - repo = "ghidra_bridge"; - tag = version; - hash = "sha256-VcAl1tamsuHvZRtBP0+DCl2A9d7E6aoj2AbJhEcBNMM="; - }; - - patches = [ ./no-invoke-git.patch ]; - - postPatch = '' - substituteInPlace ./setup.py --subst-var-by version ${version} - ''; - - build-system = [ setuptools ]; - - dependencies = [ jfx-bridge ]; - - # Tests require a running server instance - doCheck = false; - - pythonImportsCheck = [ "ghidra_bridge" ]; - - meta = { - description = "Python bridge to Ghidra's Python scripting"; - homepage = "https://github.com/justfoxing/ghidra_bridge"; - changelog = "https://github.com/justfoxing/ghidra_bridge/releases/tag/${src.tag}"; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ scoder12 ]; - }; -} diff --git a/pkgs/development/python-modules/ghidra-bridge/no-invoke-git.patch b/pkgs/development/python-modules/ghidra-bridge/no-invoke-git.patch deleted file mode 100644 index f82ebccde6ea..000000000000 --- a/pkgs/development/python-modules/ghidra-bridge/no-invoke-git.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/setup.py b/setup.py -index 9a2abe0..75ce109 100644 ---- a/setup.py -+++ b/setup.py -@@ -6,7 +6,7 @@ with open("README.md", "r") as fh: - - # determine the version, then write it out into the bridge.py file - version = ( -- subprocess.check_output("git describe --tags", shell=True).decode("utf-8").strip() -+ "@version@" - ) - # check if this is a non-tag release and remark it as a dev release - if "-" in version: diff --git a/pkgs/development/python-modules/iplotx/default.nix b/pkgs/development/python-modules/iplotx/default.nix index 3f098ef33d2b..8f0ca468ca46 100644 --- a/pkgs/development/python-modules/iplotx/default.nix +++ b/pkgs/development/python-modules/iplotx/default.nix @@ -14,14 +14,14 @@ buildPythonPackage (finalAttrs: { pname = "iplotx"; - version = "1.6.0"; + version = "1.7.1"; pyproject = true; src = fetchFromGitHub { owner = "fabilab"; repo = "iplotx"; tag = finalAttrs.version; - hash = "sha256-pTSY7eEYKwBSDttxZqauGCofYK5SFaxjJLXYBwSr3ew="; + hash = "sha256-vLYjTYdt3ctaUwnzV73vNWu2uKpER92SH8uqeLR/G7M="; }; build-system = [ hatchling ]; diff --git a/pkgs/development/python-modules/jaxtyping/default.nix b/pkgs/development/python-modules/jaxtyping/default.nix index e388ba7b5260..19df15b2aa7b 100644 --- a/pkgs/development/python-modules/jaxtyping/default.nix +++ b/pkgs/development/python-modules/jaxtyping/default.nix @@ -27,7 +27,7 @@ buildPythonPackage (finalAttrs: { pname = "jaxtyping"; - version = "0.3.10"; + version = "0.3.11"; pyproject = true; __structuredAttrs = true; @@ -35,7 +35,7 @@ buildPythonPackage (finalAttrs: { owner = "patrick-kidger"; repo = "jaxtyping"; tag = "v${finalAttrs.version}"; - hash = "sha256-7HhStNjVKjnPfXiuXDLsvwH1efSGSMqRuCWeOtpcidw="; + hash = "sha256-oC8n4YiV39EjRm8vYDFrUVJmEPeH814q7uIKdmpqnJk="; }; build-system = [ hatchling ]; diff --git a/pkgs/development/python-modules/jfx-bridge/default.nix b/pkgs/development/python-modules/jfx-bridge/default.nix deleted file mode 100644 index 2c261be4b96a..000000000000 --- a/pkgs/development/python-modules/jfx-bridge/default.nix +++ /dev/null @@ -1,52 +0,0 @@ -{ - lib, - buildPythonPackage, - fetchFromGitHub, - pytestCheckHook, - python, - setuptools, -}: - -buildPythonPackage rec { - pname = "jfx-bridge"; - version = "1.0.0"; - pyproject = true; - - src = fetchFromGitHub { - owner = "justfoxing"; - repo = "jfx_bridge"; - tag = version; - hash = "sha256-fpUrKNGqTpthhTfohCbwO1GBDAP/YnLWeapVhZftldg="; - }; - - patches = [ ./no-invoke-git.patch ]; - - postPatch = '' - substituteInPlace ./setup.py --subst-var-by version ${version} - ''; - - build-system = [ setuptools ]; - - nativeCheckInputs = [ pytestCheckHook ]; - - preCheck = '' - ${python.interpreter} test_bridge_server.py & - ''; - - disabledTests = [ - # known to cause timeout with newer python (acknowledged in test comment) - "test_nonreturn_marker_local" - # the mechanisms that hook into the python import machinery seem broken on newer python - "TestBridgeHookImport" - ]; - - pythonImportsCheck = [ "jfx_bridge" ]; - - meta = { - description = "Base Python RPC bridge used for ghidra_bridge"; - homepage = "https://github.com/justfoxing/jfx_bridge"; - changelog = "https://github.com/justfoxing/jfx_bridge/releases/tag/${src.tag}"; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ scoder12 ]; - }; -} diff --git a/pkgs/development/python-modules/jfx-bridge/no-invoke-git.patch b/pkgs/development/python-modules/jfx-bridge/no-invoke-git.patch deleted file mode 100644 index 2c1f53ca2d6c..000000000000 --- a/pkgs/development/python-modules/jfx-bridge/no-invoke-git.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/setup.py b/setup.py -index 079cb01..c5e71b8 100644 ---- a/setup.py -+++ b/setup.py -@@ -6,7 +6,7 @@ with open("README.md", "r") as fh: - long_description = fh.read() - - # determine the version, then write it out into the bridge.py file --version = subprocess.check_output("git describe --tags", shell=True).decode("utf-8").strip() -+version = "@version@" - # check if this is a non-tag release and remark it as a dev release - if "-" in version: - ver, commits, hash = version.split("-") diff --git a/pkgs/development/python-modules/junitparser/default.nix b/pkgs/development/python-modules/junitparser/default.nix index 6e8471c8a02c..d476d86775a9 100644 --- a/pkgs/development/python-modules/junitparser/default.nix +++ b/pkgs/development/python-modules/junitparser/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "junitparser"; - version = "4.0.2"; + version = "5.0.0"; pyproject = true; src = fetchFromGitHub { owner = "weiwei"; repo = "junitparser"; tag = version; - hash = "sha256-+81n5xW9SEE+NZbYKxXu6xupoq4/haUZokVardh43iM="; + hash = "sha256-I/bQQPT6b6PTZ9bIlWCQmN/gUWnVIO42xtJh/g7L79A="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/kserve/default.nix b/pkgs/development/python-modules/kserve/default.nix index e0503d4b0f23..ecfb16deb689 100644 --- a/pkgs/development/python-modules/kserve/default.nix +++ b/pkgs/development/python-modules/kserve/default.nix @@ -24,6 +24,7 @@ prometheus-client, protobuf, psutil, + pyasn1, pydantic, python-dateutil, python-multipart, @@ -59,7 +60,7 @@ buildPythonPackage (finalAttrs: { pname = "kserve"; - version = "0.18.0"; + version = "0.19.0"; pyproject = true; __structuredAttrs = true; @@ -67,7 +68,7 @@ buildPythonPackage (finalAttrs: { owner = "kserve"; repo = "kserve"; tag = "v${finalAttrs.version}"; - hash = "sha256-qmv6DzYA/c/uGS4LNTdn3PnzhtLrhprF6r9ccngsUTU="; + hash = "sha256-i8eFdXwNLPTdEj2MnNAMbefxQGkMLHNwZXxg8+zv6v0="; }; sourceRoot = "${finalAttrs.src.name}/python/kserve"; @@ -106,6 +107,7 @@ buildPythonPackage (finalAttrs: { prometheus-client protobuf psutil + pyasn1 pydantic python-dateutil python-multipart diff --git a/pkgs/development/python-modules/libbs/default.nix b/pkgs/development/python-modules/libbs/default.nix index cf4a3b03e00b..dc7b832bb670 100644 --- a/pkgs/development/python-modules/libbs/default.nix +++ b/pkgs/development/python-modules/libbs/default.nix @@ -3,15 +3,13 @@ buildPythonPackage, fetchFromGitHub, filelock, - ghidra-bridge, - jfx-bridge, networkx, platformdirs, ply, prompt-toolkit, psutil, pycparser, - pyhidra, + pyghidra, pytestCheckHook, setuptools, toml, @@ -28,7 +26,7 @@ let hash = "sha256-P7+BTJgdC9W8cC/7xQduFYllF+0ds1dSlm59/BFvZ2g="; }; in -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "libbs"; version = "3.3.0"; pyproject = true; @@ -36,7 +34,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "binsync"; repo = "libbs"; - tag = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-Xe47JZPkbROHFlqc2o/htqvZWjknsv5KekJBqXA44O4="; }; @@ -44,15 +42,13 @@ buildPythonPackage rec { dependencies = [ filelock - ghidra-bridge - jfx-bridge networkx platformdirs ply prompt-toolkit psutil pycparser - pyhidra + pyghidra toml tqdm ]; @@ -81,8 +77,8 @@ buildPythonPackage rec { meta = { description = "Library for writing plugins in any decompiler: includes API lifting, common data formatting, and GUI abstraction"; homepage = "https://github.com/binsync/libbs"; - changelog = "https://github.com/binsync/libbs/releases/tag/${src.tag}"; + changelog = "https://github.com/binsync/libbs/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.bsd2; maintainers = with lib.maintainers; [ scoder12 ]; }; -} +}) diff --git a/pkgs/development/python-modules/low-index/default.nix b/pkgs/development/python-modules/low-index/default.nix index c753e78d2ff5..6bd1711c40ee 100644 --- a/pkgs/development/python-modules/low-index/default.nix +++ b/pkgs/development/python-modules/low-index/default.nix @@ -4,18 +4,19 @@ buildPythonPackage, fetchFromGitHub, setuptools, + nix-update-script, }: buildPythonPackage rec { pname = "low-index"; - version = "1.2.1"; + version = "1.3"; pyproject = true; src = fetchFromGitHub { owner = "3-manifolds"; repo = "low_index"; tag = "v${version}_as_released"; - hash = "sha256-T8hzC9ulikQ1pUdbXgjuKAX5oMJEycPvXWv74rCkQGY="; + hash = "sha256-m3p05bqu70pMOsb9drW1B6+N893eBSZBFTNNS23OY6w="; }; build-system = [ setuptools ]; @@ -28,6 +29,13 @@ buildPythonPackage rec { runHook postCheck ''; + passthru.updateScript = nix-update-script { + extraArgs = [ + "--version-regex" + "v(.*)_as_released" + ]; + }; + meta = { description = "Enumerates low index subgroups of a finitely presented group"; changelog = "https://github.com/3-manifolds/low_index/releases/tag/${src.tag}"; diff --git a/pkgs/development/python-modules/mace-torch/default.nix b/pkgs/development/python-modules/mace-torch/default.nix new file mode 100644 index 000000000000..3c8b486f643b --- /dev/null +++ b/pkgs/development/python-modules/mace-torch/default.nix @@ -0,0 +1,138 @@ +{ + lib, + stdenv, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + + # dependencies + ase, + configargparse, + e3nn, + gitpython, + h5py, + lmdb, + matplotlib, + matscipy, + numpy, + opt-einsum, + orjson, + pandas, + prettytable, + python-hostlist, + pyyaml, + torch, + torch-ema, + torchmetrics, + tqdm, + + # tests + pytestCheckHook, + writableTmpDirAsHomeHook, +}: + +buildPythonPackage (finalAttrs: { + pname = "mace-torch"; + version = "0.3.16"; + pyproject = true; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "acesuit"; + repo = "mace"; + tag = "v${finalAttrs.version}"; + hash = "sha256-sJ/3c7kPe99vkliixUMqqQi2OiL3CCUdlcgpDZ/PUHA="; + }; + + build-system = [ + setuptools + ]; + + pythonRelaxDeps = [ + "e3nn" + ]; + dependencies = [ + ase + configargparse + e3nn + gitpython + h5py + lmdb + matplotlib + matscipy + numpy + opt-einsum + orjson + pandas + prettytable + python-hostlist + pyyaml + torch + torch-ema + torchmetrics + tqdm + ]; + + pythonImportsCheck = [ "mace" ]; + + nativeCheckInputs = [ + pytestCheckHook + writableTmpDirAsHomeHook + ]; + + disabledTests = [ + # _pickle.PickleError: ScriptFunction cannot be pickled + "test_run_eval_fail_with_wrong_model" + + # ValueError: too many values to unpack (expected 2) + "test_mace_mp" + + # AssertionError (tensors not close) + "test_run_train_dipole" + "test_run_train_dipole_polar" + + # RuntimeError: Model download failed and no local model found + "test_calculator_descriptor" + "test_compile_foundation" + "test_extract_config" + "test_finite_difference_hessian" + "test_foundations" + "test_initial_metrics_replay_head_mh0" + "test_initial_metrics_replay_head_mh1" + "test_initial_metrics_replay_head_omol" + "test_mace_mh_1_elements_subset_reproduces_energy_forces" + "test_mace_mp_energies" + "test_mace_mp_stresses" + "test_mace_off" + "test_mace_omol_elements_subset_reproduces_energy_forces" + "test_multi_reference" + "test_multihead_finetuning_different_formats" + "test_multihead_finetuning_does_not_modify_default_keyspec" + "test_potential_energy_and_hessian" + "test_remove_pt_head_omol_multihead" + "test_run_train_foundation" + "test_run_train_foundation_elements" + "test_run_train_foundation_elements_multihead" + "test_run_train_foundation_multihead" + "test_run_train_foundation_multihead_json" + "test_run_train_foundation_multihead_pseudolabeling" + "test_run_train_freeze" + "test_run_train_mh_foundation" + "test_run_train_soft_freeze" + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + # symbol not found in flat namespace '___kmpc_barrier' + "test_mace" + "test_mace_compile_stress" + ]; + + meta = { + description = "Fast and accurate machine learning interatomic potentials with higher order equivariant message passing"; + homepage = "https://github.com/acesuit/mace"; + changelog = "https://github.com/acesuit/mace/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ GaetanLepage ]; + }; +}) diff --git a/pkgs/development/python-modules/matscipy/default.nix b/pkgs/development/python-modules/matscipy/default.nix new file mode 100644 index 000000000000..9183f200e54d --- /dev/null +++ b/pkgs/development/python-modules/matscipy/default.nix @@ -0,0 +1,186 @@ +{ + lib, + stdenv, + buildPythonPackage, + fetchFromGitHub, + pythonAtLeast, + + fetchpatch, + + # build-system + meson-python, + ninja, + numpy, + + # dependencies + ase, + packaging, + scipy, + + # optional-dependencies + # cli: + argcomplete, + # dislocation: + atomman, + nglview, + ovito, + # docs: + jupytext, + myst-nb, + numpydoc, + pydata-sphinx-theme, + sphinx, + sphinx-copybutton, + sphinx-rtd-theme, + sphinxcontrib-spelling, + + # tests + pytest-subtests, + pytest-timeout, + pytest-xdist, + sympy, + + # tests + pytestCheckHook, +}: + +buildPythonPackage (finalAttrs: { + pname = "matscipy"; + version = "1.2.0"; + pyproject = true; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "libAtoms"; + repo = "matscipy"; + tag = "v${finalAttrs.version}"; + hash = "sha256-XmY13B5S8tXYiUaec9gL6e0E3bSnbaMteHHiX2ij2sw="; + }; + + patches = [ + # API: Fix compatibility with ASE 3.27.0 + # https://github.com/libAtoms/matscipy/pull/301 + (fetchpatch { + url = "https://github.com/libAtoms/matscipy/commit/6a91a4646e30796abe51ef3efa4b479d4471aae0.patch"; + hash = "sha256-PH9I+7+nN6fSkugVbxPCs3LqjhP/fQ5NZjiNQ7F70YU="; + }) + (fetchpatch { + url = "https://github.com/libAtoms/matscipy/commit/f6478347bbceeab8ec177042b6ed1243e742d55f.patch"; + hash = "sha256-DKk+1TlP+OngcmycsCIE+7s2h/7wa7Gxv9APbuIAoZg="; + }) + ]; + + postPatch = + # Otherwise the script fails as it can't resolve the version with git + '' + substituteInPlace discover_version.py \ + --replace-fail \ + "version = get_version_from_git()" \ + "version = '${finalAttrs.version}'" + '' + # Failed: [pytest] section in setup.cfg files is no longer supported, change to [tool:pytest] instead. + + '' + substituteInPlace setup.cfg \ + --replace-fail \ + "[pytest]" \ + "[tool:pytest]" + ''; + + build-system = [ + # meson + meson-python + ninja + numpy + ]; + + dependencies = [ + ase + numpy + packaging + scipy + ]; + + optional-dependencies = { + cli = [ + argcomplete + ]; + dislocation = [ + atomman + nglview + ovito + ]; + docs = [ + jupytext + # matscipy + myst-nb + numpydoc + pydata-sphinx-theme + sphinx + sphinx-copybutton + sphinx-rtd-theme + sphinxcontrib-spelling + ]; + }; + + pythonImportsCheck = [ "matscipy" ]; + + nativeCheckInputs = [ + pytest-subtests + pytest-timeout + pytest-xdist + pytestCheckHook + sympy + ]; + + preCheck = '' + rm -rf matscipy + ''; + + disabledTestPaths = [ + # The CLI tests look for the source scripts under `../matscipy/cli` relative to the test + # directory, which we remove in `preCheck` so that tests run against the installed package. + "tests/test_electrochemistry_cli.py" + ] + ++ lib.optionals (pythonAtLeast "3.14") [ + # ValueError: cannot resize an array that may be referenced by another object + "tests/manybody/test_newmb.py" + "tests/test_neighbours.py" + ]; + + disabledTests = [ + # Numerical assertion failure + "test_birch_constants" + + # numpy 2 / ase 3.28 incompatibilities in matscipy 1.2.0 + # `ase.phonons` finite-difference reference no longer matches + "test_hessian_monoatomic" + "test_hessian_amorphous_alloy" + "test_hessian_crystalline_alloy" + + # TypeError: only 0-dimensional arrays can be converted to Python scalars + "test_eam_read_write" + + # AttributeError: 'Log' object has no attribute 'close' + "test_logger" + "test_usage" + ] + ++ lib.optionals (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) [ + # AssertionError: assert np.False (numerical precision) + "test_fixed_line_atoms" + ] + ++ lib.optionals (pythonAtLeast "3.14") [ + # ValueError: cannot resize an array that may be referenced by another object + "test_harmonic_bond" + "test_read_molecules_from_atoms" + "test_read_molecules_from_lammps_data" + "test_read_write_lammps_data" + ]; + + meta = { + description = "Materials science with Python at the atomic-scale"; + homepage = "https://github.com/libAtoms/matscipy"; + changelog = "https://github.com/libAtoms/matscipy/blob/${finalAttrs.src.tag}/ChangeLog.md"; + license = lib.licenses.lgpl21Only; + maintainers = with lib.maintainers; [ GaetanLepage ]; + }; +}) diff --git a/pkgs/development/python-modules/matter-ble-proxy/default.nix b/pkgs/development/python-modules/matter-ble-proxy/default.nix index e683b6a5860a..c155dedf829d 100644 --- a/pkgs/development/python-modules/matter-ble-proxy/default.nix +++ b/pkgs/development/python-modules/matter-ble-proxy/default.nix @@ -13,7 +13,7 @@ buildPythonPackage (finalAttrs: { pname = "matter-ble-proxy"; - version = "0.8.0"; + version = "1.0.0"; pyproject = true; disabled = pythonOlder "3.12"; @@ -22,7 +22,7 @@ buildPythonPackage (finalAttrs: { owner = "matter-js"; repo = "matterjs-server"; tag = "v${finalAttrs.version}"; - hash = "sha256-AjCfPovhYKUeU4Xrsh6uL0pPG+ja0n+efFTbwre83m4="; + hash = "sha256-c/jhQfenRgE0qHisGM1TOtqWjDy/RcwGa04RE0FzR/U="; }; sourceRoot = "${finalAttrs.src.name}/python_ble_proxy"; diff --git a/pkgs/development/python-modules/openslide/default.nix b/pkgs/development/python-modules/openslide/default.nix index 663c1d30df26..72a60b005b7d 100644 --- a/pkgs/development/python-modules/openslide/default.nix +++ b/pkgs/development/python-modules/openslide/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "openslide"; - version = "1.4.3"; + version = "1.4.6"; pyproject = true; src = fetchFromGitHub { owner = "openslide"; repo = "openslide-python"; tag = "v${version}"; - hash = "sha256-v8JrZdDwZPtnWYOmvJXbq22k6/MQqMzWweD86Eof0e4="; + hash = "sha256-uo1jcfxbx9v9vNQGnzAhO4N/QKQycMh5y4ICWstnZA0="; }; postPatch = '' diff --git a/pkgs/development/python-modules/opt-einsum-fx/default.nix b/pkgs/development/python-modules/opt-einsum-fx/default.nix new file mode 100644 index 000000000000..d183970cc557 --- /dev/null +++ b/pkgs/development/python-modules/opt-einsum-fx/default.nix @@ -0,0 +1,52 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + + # dependencies + opt-einsum, + torch, + + # tests + pytestCheckHook, +}: + +buildPythonPackage (finalAttrs: { + pname = "opt-einsum-fx"; + version = "0.1.4"; + pyproject = true; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "Linux-cpp-lisp"; + repo = "opt_einsum_fx"; + tag = "v${finalAttrs.version}"; + hash = "sha256-HamDghqmdX4Q+4zXQvCly588p3TaYFCSnzgEKLVMXSo="; + }; + + build-system = [ + setuptools + ]; + + dependencies = [ + opt-einsum + torch + ]; + + pythonImportsCheck = [ "opt_einsum_fx" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + description = "Einsum optimization using opt_einsum and PyTorch FX graph rewriting"; + homepage = "https://github.com/Linux-cpp-lisp/opt_einsum_fx"; + changelog = "https://github.com/Linux-cpp-lisp/opt_einsum_fx/blob/${finalAttrs.src.tag}/CHANGELOG.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ GaetanLepage ]; + }; +}) diff --git a/pkgs/development/python-modules/pinecone-plugin-assistant/default.nix b/pkgs/development/python-modules/pinecone-plugin-assistant/default.nix index e21032893ab7..9c3e3999bf11 100644 --- a/pkgs/development/python-modules/pinecone-plugin-assistant/default.nix +++ b/pkgs/development/python-modules/pinecone-plugin-assistant/default.nix @@ -8,14 +8,14 @@ buildPythonPackage rec { pname = "pinecone-plugin-assistant"; - version = "3.0.2"; + version = "3.0.3"; pyproject = true; src = fetchPypi { pname = "pinecone_plugin_assistant"; inherit version; - hash = "sha256-BBY68oKteJW1gauJ+FDtE55N3OpyAQyt+kxXN1nVyJY="; + hash = "sha256-U/VI7eYKldef9I14ZaPQr9Zlztnnd1gnLmK6DGxjvSY="; }; build-system = [ diff --git a/pkgs/development/python-modules/portion/default.nix b/pkgs/development/python-modules/portion/default.nix index 7cbe2884f387..effffd8f60bd 100644 --- a/pkgs/development/python-modules/portion/default.nix +++ b/pkgs/development/python-modules/portion/default.nix @@ -2,21 +2,29 @@ lib, buildPythonPackage, fetchFromGitHub, + + # build-system hatchling, + + # dependencies sortedcontainers, + + # tests + pytest-benchmark, pytestCheckHook, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "portion"; - version = "2.6.1"; + version = "2.6.2"; pyproject = true; + __structuredAttrs = true; src = fetchFromGitHub { owner = "AlexandreDecan"; repo = "portion"; - tag = version; - hash = "sha256-K4mZn8Fm96ZBBdLTMfM9f1GKDdIrRwDRzk6ObaXSFG4="; + tag = finalAttrs.version; + hash = "sha256-ns9kUoSufegx0I3ag/KVl68ZviEIRx+zPA+BSWq3k80="; }; build-system = [ hatchling ]; @@ -25,13 +33,16 @@ buildPythonPackage rec { pythonImportsCheck = [ "portion" ]; - nativeCheckInputs = [ pytestCheckHook ]; + nativeCheckInputs = [ + pytest-benchmark + pytestCheckHook + ]; meta = { - description = "Portion, a Python library providing data structure and operations for intervals"; + description = "Python library providing data structure and operations for intervals"; homepage = "https://github.com/AlexandreDecan/portion"; - changelog = "https://github.com/AlexandreDecan/portion/blob/${src.rev}/CHANGELOG.md"; + changelog = "https://github.com/AlexandreDecan/portion/blob/${finalAttrs.src.tag}/CHANGELOG.md"; license = lib.licenses.lgpl3; maintainers = with lib.maintainers; [ GaetanLepage ]; }; -} +}) diff --git a/pkgs/development/python-modules/protego/default.nix b/pkgs/development/python-modules/protego/default.nix index a732efb982ac..4da1b264cb29 100644 --- a/pkgs/development/python-modules/protego/default.nix +++ b/pkgs/development/python-modules/protego/default.nix @@ -8,14 +8,14 @@ buildPythonPackage (finalAttrs: { pname = "protego"; - version = "0.6.0"; + version = "0.6.1"; pyproject = true; src = fetchFromGitHub { owner = "scrapy"; repo = "protego"; tag = finalAttrs.version; - hash = "sha256-qyOY35gNFojewFMFVT58k1s5uM4j9IZzEURnPh+3htE="; + hash = "sha256-Me+bSJnHHJH0ryPoSS7EN2Px5FNElCWQzvKrmWll4mQ="; }; build-system = [ hatchling ]; diff --git a/pkgs/development/python-modules/pydroplet/default.nix b/pkgs/development/python-modules/pydroplet/default.nix index e31c9ab1f77e..a263d417eb9d 100644 --- a/pkgs/development/python-modules/pydroplet/default.nix +++ b/pkgs/development/python-modules/pydroplet/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "pydroplet"; - version = "2.3.4"; + version = "2.4.0"; pyproject = true; src = fetchFromGitHub { owner = "Hydrific"; repo = "pydroplet"; tag = "v${version}"; - hash = "sha256-cVftXG7sKDpGRRb2jLlFxgCH2+rA6hLYTUqWL1kvh+E="; + hash = "sha256-XLosly9Zyvp3Mfvj0mPORYJBNBkt8JPjlHuvHinZ39w="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/pyghmi/default.nix b/pkgs/development/python-modules/pyghmi/default.nix index 31d8a4fce4c3..f48c56f9ff99 100644 --- a/pkgs/development/python-modules/pyghmi/default.nix +++ b/pkgs/development/python-modules/pyghmi/default.nix @@ -13,12 +13,12 @@ buildPythonPackage rec { pname = "pyghmi"; - version = "1.6.16"; + version = "1.6.17"; pyproject = true; src = fetchPypi { inherit pname version; - hash = "sha256-VqMQ54Mx9fkq3UAbzEApzm0LuRKEGXQARf8HGH7yZ6U="; + hash = "sha256-+MkEYEzmT5744sVCEVQxb+cfAIed7m+nPndYpF5r/h0="; }; build-system = [ diff --git a/pkgs/development/python-modules/pygit2/default.nix b/pkgs/development/python-modules/pygit2/default.nix index 0d793e367bf8..ca497efe8206 100644 --- a/pkgs/development/python-modules/pygit2/default.nix +++ b/pkgs/development/python-modules/pygit2/default.nix @@ -15,12 +15,12 @@ buildPythonPackage rec { pname = "pygit2"; - version = "1.19.1"; + version = "1.19.3"; pyproject = true; src = fetchPypi { inherit pname version; - hash = "sha256-MWX3hKrlajCaJ9jurnkj1T2i6PYJQwjH9bQo3uySXPk="; + hash = "sha256-pUPm1Ou0OCVWSTV1jcI053ABb+1nO4Q3DUaulYBViDE="; }; preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin '' diff --git a/pkgs/development/python-modules/pyhidra/default.nix b/pkgs/development/python-modules/pyhidra/default.nix deleted file mode 100644 index 0afc76e3e63c..000000000000 --- a/pkgs/development/python-modules/pyhidra/default.nix +++ /dev/null @@ -1,57 +0,0 @@ -{ - lib, - buildPythonPackage, - fetchFromGitHub, - jpype1, - pytest-datadir, - pytestCheckHook, - setuptools, -}: - -buildPythonPackage rec { - pname = "pyhidra"; - version = "1.3.0"; - pyproject = true; - - src = fetchFromGitHub { - owner = "dod-cyber-crime-center"; - repo = "pyhidra"; - tag = version; - hash = "sha256-8xouU+S7Apy1ySIlvOLPerTApqKy/MNdl9vuBdt+9Vk="; - }; - - build-system = [ setuptools ]; - - dependencies = [ jpype1 ]; - - nativeCheckInputs = [ - pytest-datadir - pytestCheckHook - ]; - - pythonImportsCheck = [ "pyhidra" ]; - - disabledTests = [ - # Tests require a running Ghidra instance - "test_invalid_jpype_keyword_arg" - "test_invalid_vm_arg_succeed" - "test_run_script" - "test_open_program" - "test_no_compiler" - "test_no_language_with_compiler" - "test_loader" - "test_invalid_loader_type" - "test_no_project" - "test_no_program" - "test_import_script" - "test_import_ghidra_base_java_packages" - ]; - - meta = { - description = "Provides direct access to the Ghidra API within a native CPython interpreter using jpype"; - homepage = "https://github.com/dod-cyber-crime-center/pyhidra"; - changelog = "https://github.com/dod-cyber-crime-center/pyhidra/blob/${src.tag}/CHANGELOG.md"; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ scoder12 ]; - }; -} diff --git a/pkgs/development/python-modules/pytest-subtests/default.nix b/pkgs/development/python-modules/pytest-subtests/default.nix new file mode 100644 index 000000000000..d4b98e40e5c3 --- /dev/null +++ b/pkgs/development/python-modules/pytest-subtests/default.nix @@ -0,0 +1,52 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + setuptools-scm, + + # dependencies + attrs, + pytest, +}: + +buildPythonPackage (finalAttrs: { + pname = "pytest-subtests"; + version = "0.15.0"; + pyproject = true; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "pytest-dev"; + repo = "pytest-subtests"; + tag = "v${finalAttrs.version}"; + hash = "sha256-KJbTxhheEkvH/Xnje45dSb57526bVoi8N6GSKfUfCYA="; + }; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + attrs + pytest + ]; + + pythonImportsCheck = [ "pytest_subtests" ]; + + # The self-tests assert on exact pytest terminal output. pytest 9 ships its + # own bundled subtests support and changed how subtest failures are reported, + # so these output-matching tests no longer match. The plugin itself works. + doCheck = false; + + meta = { + description = "Unittest subTest() support and subtests fixture"; + homepage = "https://github.com/pytest-dev/pytest-subtests"; + changelog = "https://github.com/pytest-dev/pytest-subtests/blob/${finalAttrs.src.tag}/CHANGELOG.rst"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ GaetanLepage ]; + }; +}) diff --git a/pkgs/development/python-modules/python-hostlist/default.nix b/pkgs/development/python-modules/python-hostlist/default.nix new file mode 100644 index 000000000000..3de14c209422 --- /dev/null +++ b/pkgs/development/python-modules/python-hostlist/default.nix @@ -0,0 +1,39 @@ +{ + lib, + buildPythonPackage, + fetchurl, + + # build-system + setuptools, + + # tests + pytestCheckHook, +}: +buildPythonPackage (finalAttrs: { + pname = "python-hostlist"; + version = "2.3.0"; + pyproject = true; + __structuredAttrs = true; + + src = fetchurl { + url = "https://www.nsc.liu.se/~kent/python-hostlist/python_hostlist-${finalAttrs.version}.tar.gz"; + hash = "sha256-4aCxjlJaX8pXPLmGJ5nxGz8r07p67HDE7Ni5U0G7ceo="; + }; + + build-system = [ + setuptools + ]; + + pythonImportsCheck = [ "hostlist" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + meta = { + description = "Python module for hostlist handling"; + homepage = "https://www.nsc.liu.se/~kent/python-hostlist/"; + license = lib.licenses.gpl3Plus; + maintainers = with lib.maintainers; [ GaetanLepage ]; + }; +}) diff --git a/pkgs/development/python-modules/qemu-qmp/default.nix b/pkgs/development/python-modules/qemu-qmp/default.nix index d4acf9e0a058..5d0e925fbc58 100644 --- a/pkgs/development/python-modules/qemu-qmp/default.nix +++ b/pkgs/development/python-modules/qemu-qmp/default.nix @@ -8,14 +8,14 @@ buildPythonPackage rec { pname = "qemu-qmp"; - version = "0.0.5"; + version = "0.0.6"; pyproject = true; src = fetchFromGitLab { owner = "qemu-project"; repo = "python-qemu-qmp"; tag = "v${version}"; - hash = "sha256-Mpay8JIau3cuUDxtEVn78prilr+YncmtbVX5LkBDrvk="; + hash = "sha256-iuYiYjUfAxXzG7w7s8I2l5oXROyTjswn++vYs9lauGA="; }; build-system = [ diff --git a/pkgs/development/python-modules/sunpy/default.nix b/pkgs/development/python-modules/sunpy/default.nix index b28502734bd4..be52a3357bf8 100644 --- a/pkgs/development/python-modules/sunpy/default.nix +++ b/pkgs/development/python-modules/sunpy/default.nix @@ -60,14 +60,15 @@ buildPythonPackage (finalAttrs: { pname = "sunpy"; - version = "7.1.0"; + version = "7.1.2"; pyproject = true; + __structuredAttrs = true; src = fetchFromGitHub { owner = "sunpy"; repo = "sunpy"; tag = "v${finalAttrs.version}"; - hash = "sha256-FeKmg3dZfbbjt1lDliF4uXf8PvM3J5HWtYqKRriJ4l0="; + hash = "sha256-saq3vYJMKogXSBxKn/tqlSnE96K10EM27femC+Qx0Gw="; }; build-system = [ @@ -179,6 +180,10 @@ buildPythonPackage (finalAttrs: { "test_main_submodule_map" "test_tai_seconds" "test_utime" + + # AssertionError: assert 2 == 1 + # where 2 = len(WarningsChecker(record=True)) + "test_sunpy_warnings_logging" ]; disabledTestPaths = [ diff --git a/pkgs/development/python-modules/torch-ema/default.nix b/pkgs/development/python-modules/torch-ema/default.nix new file mode 100644 index 000000000000..a81ee06f9a19 --- /dev/null +++ b/pkgs/development/python-modules/torch-ema/default.nix @@ -0,0 +1,58 @@ +{ + lib, + stdenv, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + + # dependencies + torch, + + # tests + pytestCheckHook, +}: + +buildPythonPackage (finalAttrs: { + pname = "torch-ema"; + version = "0.3.0"; + pyproject = true; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "fadel"; + repo = "pytorch_ema"; + tag = "v${finalAttrs.version}"; + hash = "sha256-OOF5Lb3HEIBXc1WXoUp7y44pheDc5oX/7L1vTrwNS2o="; + }; + + build-system = [ + setuptools + ]; + + dependencies = [ + torch + ]; + + pythonImportsCheck = [ "torch_ema" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + disabledTests = lib.optionals (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) [ + # aarch64-linux fails cpuinfo test, because /sys/devices/system/cpu/ does not exist in the sandbox: + # RuntimeError: Failed to initialize cpuinfo! + "test_state_dict_types" + "test_to" + ]; + + meta = { + description = "Tiny PyTorch library for maintaining a moving average of a collection of parameters"; + homepage = "https://github.com/fadel/pytorch_ema"; + changelog = "https://github.com/fadel/pytorch_ema/blob/${finalAttrs.src.tag}/CHANGELOG.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ GaetanLepage ]; + }; +}) diff --git a/pkgs/development/python-modules/torchao/default.nix b/pkgs/development/python-modules/torchao/default.nix index 3edd4c19fe7e..ae20677483af 100644 --- a/pkgs/development/python-modules/torchao/default.nix +++ b/pkgs/development/python-modules/torchao/default.nix @@ -325,6 +325,7 @@ buildPythonPackage (finalAttrs: { # TypeError: Trying to convert Float8_e4m3fn to the MPS backend but it does not have support for that dtype. "test/quantization/quantize_/workflows/float8/test_float8_tensor.py" + "test/test_low_bit_optim.py::TestOptim::test_subclass_appearance_dtype_subclass2_device_mps" # AssertionError: Torch not compiled with CUDA enabled "test/integration/test_integration.py" diff --git a/pkgs/development/python-modules/torchrl/default.nix b/pkgs/development/python-modules/torchrl/default.nix index 7a8f43834926..43db2040c220 100644 --- a/pkgs/development/python-modules/torchrl/default.nix +++ b/pkgs/development/python-modules/torchrl/default.nix @@ -83,7 +83,7 @@ buildPythonPackage (finalAttrs: { owner = "pytorch"; repo = "rl"; tag = "v${finalAttrs.version}"; - hash = "sha256-S0jfngqmRQwIVGHM72KUnp/TlR2js+QLRpsX6abiv84="; + hash = "sha256-xnQLwOofHwdRvrOMNJpAEiOT7BEfxoPmrcxw2H3CTvI="; }; postPatch = '' diff --git a/pkgs/development/python-modules/vsts/default.nix b/pkgs/development/python-modules/vsts/default.nix index e77ab7456ca0..7696690c699a 100644 --- a/pkgs/development/python-modules/vsts/default.nix +++ b/pkgs/development/python-modules/vsts/default.nix @@ -3,23 +3,28 @@ lib, python, fetchPypi, + setuptools, msrest, }: -buildPythonPackage rec { - version = "0.1.25"; - format = "setuptools"; +buildPythonPackage (finalAttrs: { pname = "vsts"; + version = "0.1.25"; + pyproject = true; + + __structuredAttrs = true; src = fetchPypi { - inherit pname version; - sha256 = "15sgwqa72ynpahj101r2kc15s3dnsafg5gqx0sz3hnqz29h925ys"; + inherit (finalAttrs) pname version; + hash = "sha256-2heRYBIfWzi+Bh2/8pzStg1dApsiBxAkVNd6cRTmT5c="; }; - propagatedBuildInputs = [ msrest ]; + build-system = [ setuptools ]; + + dependencies = [ msrest ]; postPatch = '' - substituteInPlace setup.py --replace "msrest>=0.6.0,<0.7.0" "msrest" + substituteInPlace setup.py --replace-fail "msrest>=0.6.0,<0.7.0" "msrest" ''; # Tests are highly impure @@ -27,10 +32,12 @@ buildPythonPackage rec { ${python.interpreter} -c 'import vsts.version; print(vsts.version.VERSION)' ''; + pythonImportsCheck = [ "vsts" ]; + meta = { description = "Python APIs for interacting with and managing Azure DevOps"; homepage = "https://github.com/microsoft/azure-devops-python-api"; license = lib.licenses.mit; maintainers = [ ]; }; -} +}) diff --git a/pkgs/development/python-modules/ydiff/default.nix b/pkgs/development/python-modules/ydiff/default.nix index 3e5fc98c2614..d778a8a9804d 100644 --- a/pkgs/development/python-modules/ydiff/default.nix +++ b/pkgs/development/python-modules/ydiff/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchFromGitHub, + setuptools, pygments, gitMinimal, mercurial, @@ -10,15 +11,17 @@ less, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "ydiff"; version = "1.5"; - format = "setuptools"; + pyproject = true; + + __structuredAttrs = true; src = fetchFromGitHub { owner = "ymattw"; repo = "ydiff"; - tag = version; + tag = finalAttrs.version; hash = "sha256-9a7M6+CqGRvO1yainImN2RQVH3XMxE9PTLXJGKekXLg="; }; @@ -36,6 +39,8 @@ buildPythonPackage rec { patchShebangs tests/*.sh ''; + build-system = [ setuptools ]; + nativeCheckInputs = [ pygments ]; checkPhase = '' @@ -44,6 +49,8 @@ buildPythonPackage rec { runHook postCheck ''; + pythonImportsCheck = [ "ydiff" ]; + meta = { description = "View colored, incremental diff in workspace or from stdin with side by side and auto pager support (Was \"cdiff\")"; mainProgram = "ydiff"; @@ -60,4 +67,4 @@ buildPythonPackage rec { despsyched ]; }; -} +}) diff --git a/pkgs/development/python-modules/yubico/default.nix b/pkgs/development/python-modules/yubico/default.nix index 23b9cba70d28..9d2ff41859aa 100644 --- a/pkgs/development/python-modules/yubico/default.nix +++ b/pkgs/development/python-modules/yubico/default.nix @@ -2,21 +2,26 @@ lib, buildPythonPackage, fetchPypi, + setuptools, pytestCheckHook, pyusb, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "python-yubico"; version = "1.3.3"; - format = "setuptools"; + pyproject = true; + + __structuredAttrs = true; src = fetchPypi { - inherit pname version; + inherit (finalAttrs) pname version; hash = "sha256-2EZkJ6pZIqxdS36cZbaTEIQnz1N9ZT1oyyEsBxPo5vU="; }; - propagatedBuildInputs = [ pyusb ]; + build-system = [ setuptools ]; + + dependencies = [ pyusb ]; checkInputs = [ pytestCheckHook ]; pythonImportsCheck = [ "yubico" ]; @@ -31,4 +36,4 @@ buildPythonPackage rec { license = lib.licenses.bsd2; maintainers = with lib.maintainers; [ s1341 ]; }; -} +}) diff --git a/pkgs/development/python-modules/zigpy-cc/default.nix b/pkgs/development/python-modules/zigpy-cc/default.nix index 51f8b9c3958a..36b41b0e6ff8 100644 --- a/pkgs/development/python-modules/zigpy-cc/default.nix +++ b/pkgs/development/python-modules/zigpy-cc/default.nix @@ -3,16 +3,19 @@ asynctest, buildPythonPackage, fetchFromGitHub, + setuptools, pyserial-asyncio, pytest-asyncio, pytestCheckHook, zigpy, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "zigpy-cc"; version = "0.5.2"; - format = "setuptools"; + pyproject = true; + + __structuredAttrs = true; # https://github.com/Martiusweb/asynctest/issues/152 # broken by upstream python bug with asynctest and @@ -21,11 +24,13 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "zigpy"; repo = "zigpy-cc"; - rev = version; - sha256 = "U3S8tQ3zPlexZDt5GvCd+rOv7CBVeXJJM1NGe7nRl2o="; + tag = finalAttrs.version; + hash = "sha256-U3S8tQ3zPlexZDt5GvCd+rOv7CBVeXJJM1NGe7nRl2o="; }; - propagatedBuildInputs = [ + build-system = [ setuptools ]; + + dependencies = [ pyserial-asyncio zigpy ]; @@ -55,4 +60,4 @@ buildPythonPackage rec { maintainers = with lib.maintainers; [ mvnetbiz ]; platforms = lib.platforms.linux; }; -} +}) diff --git a/pkgs/tools/networking/iroh/default.nix b/pkgs/tools/networking/iroh/default.nix index 8c12e79e4def..df44ce53c60b 100644 --- a/pkgs/tools/networking/iroh/default.nix +++ b/pkgs/tools/networking/iroh/default.nix @@ -45,7 +45,6 @@ let ]; maintainers = with lib.maintainers; [ andreashgk - cameronfyfe ]; mainProgram = name; }; diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index a7d277f88617..4d57652c4e26 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -102,6 +102,7 @@ mapAliases { audio-metadata = throw "'audio-metadata' has been removed as it's unmaintained since 2020"; # Added 2026-03-12 autotrash = throw "'autotrash' has been renamed to/replaced by 'super.pkgs.autotrash'"; # Converted to throw 2025-10-29 av_13 = throw "'av_13' has been renamed to/replaced by 'av'"; # Added 2026-02-01 + awesome-slugify = throw "'awesome-slugify' has been removed as it was unmaintained upstream"; # Added 2026-06-14 Babel = throw "'Babel' has been renamed to/replaced by 'babel'"; # Converted to throw 2025-10-29 backports-functools-lru-cache = throw "'backports-functools-lru-cache' has been removed from nixpkgs as it was not longer used in python2"; # Added 2026-01-14 backports_shutil_get_terminal_size = throw "'backports_shutil_get_terminal_size' has been renamed to/replaced by 'backports-shutil-get-terminal-size'"; # Converted to throw 2025-10-29 @@ -242,6 +243,7 @@ mapAliases { fvs = throw "'fvs' has been removed due to being unused"; # Added 2026-05-23 garminconnect-ha = throw "'garminconnect-ha' has been renamed to/replaced by 'garminconnect'"; # Converted to throw 2025-10-29 GeoIP = throw "'GeoIP' has been renamed to/replaced by 'geoip'"; # Converted to throw 2025-10-29 + ghidra-bridge = throw "'ghidra-bridge' has been removed as it was unmaintained upstream"; # Added 2026-04-05 github3_py = throw "'github3_py' has been renamed to/replaced by 'github3-py'"; # Converted to throw 2025-10-29 GitPython = throw "'GitPython' has been renamed to/replaced by 'gitpython'"; # Converted to throw 2025-10-29 google_api_python_client = throw "'google_api_python_client' has been renamed to/replaced by 'google-api-python-client'"; # Converted to throw 2025-10-29 @@ -286,6 +288,7 @@ mapAliases { jaraco_stream = throw "'jaraco_stream' has been renamed to/replaced by 'jaraco-stream'"; # Converted to throw 2025-10-29 jaraco_text = throw "'jaraco_text' has been renamed to/replaced by 'jaraco-text'"; # Converted to throw 2025-10-29 JayDeBeApi = throw "'JayDeBeApi' has been renamed to/replaced by 'jaydebeapi'"; # Converted to throw 2025-10-29 + jfx-bridge = throw "'jfx-bridge' has been removed as it was unmaintained upstream"; # Added 2026-04-05 jinja2_pluralize = throw "'jinja2_pluralize' has been renamed to/replaced by 'jinja2-pluralize'"; # Converted to throw 2025-10-29 jinja2_time = throw "'jinja2_time' has been renamed to/replaced by 'jinja2-time'"; # Converted to throw 2025-10-29 JPype1 = throw "'JPype1' has been renamed to/replaced by 'jpype1'"; # Converted to throw 2025-10-29 @@ -437,6 +440,7 @@ mapAliases { pygls_2 = pygls; # added 2026-01-05 pygtk = throw "pygtk has been removed because it was not supported by python3"; # Added 2026-01-14 pyheif = throw "pyheif has been removed due to lack of upstream maintenance and breakage. Use `pillow-heif` instead."; # added 2025-09-17 + pyhidra = throw "'pyhidra' has been removed as it was incorporated into upstream and renamed 'pyghidra'"; # Added 2026-04-21 pyhiveapi = throw "'pyhiveapi' has been renamed to/replaced by 'pyhive-integration'"; # Converted to throw 2025-10-29 pyialarmxr = throw "'pyialarmxr' has been renamed to/replaced by 'pyialarmxr-homeassistant'"; # Converted to throw 2025-10-29 PyICU = throw "'PyICU' has been renamed to/replaced by 'pyicu'"; # Converted to throw 2025-10-29 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index cb255c8fb62c..11071cbaf5cc 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1343,8 +1343,6 @@ self: super: with self; { awacs = callPackage ../development/python-modules/awacs { }; - awesome-slugify = callPackage ../development/python-modules/awesome-slugify { }; - awesomeversion = callPackage ../development/python-modules/awesomeversion { }; awkward = callPackage ../development/python-modules/awkward { }; @@ -4905,6 +4903,8 @@ self: super: with self; { e3-testsuite = callPackage ../development/python-modules/e3-testsuite { }; + e3nn = callPackage ../development/python-modules/e3nn { }; + eagle100 = callPackage ../development/python-modules/eagle100 { }; earn-e-p1 = callPackage ../development/python-modules/earn-e-p1 { }; @@ -6354,8 +6354,6 @@ self: super: with self; { ghdiff = callPackage ../development/python-modules/ghdiff { }; - ghidra-bridge = callPackage ../development/python-modules/ghidra-bridge { }; - ghmap = callPackage ../development/python-modules/ghmap { }; ghome-foyer-api = callPackage ../development/python-modules/ghome-foyer-api { }; @@ -8043,8 +8041,6 @@ self: super: with self; { jenkinsapi = callPackage ../development/python-modules/jenkinsapi { }; - jfx-bridge = callPackage ../development/python-modules/jfx-bridge { }; - jh2 = callPackage ../development/python-modules/jh2 { }; jianpu-ly = callPackage ../development/python-modules/jianpu-ly { }; @@ -9576,6 +9572,8 @@ self: super: with self; { macaddress = callPackage ../development/python-modules/macaddress { }; + mace-torch = callPackage ../development/python-modules/mace-torch { }; + macfsevents = callPackage ../development/python-modules/macfsevents { }; macholib = callPackage ../development/python-modules/macholib { }; @@ -9750,6 +9748,8 @@ self: super: with self; { matrix-nio = callPackage ../development/python-modules/matrix-nio { }; + matscipy = callPackage ../development/python-modules/matscipy { }; + matter-ble-proxy = callPackage ../development/python-modules/matter-ble-proxy { }; matter-python-client = callPackage ../development/python-modules/matter-python-client { }; @@ -12052,6 +12052,8 @@ self: super: with self; { opt-einsum = callPackage ../development/python-modules/opt-einsum { }; + opt-einsum-fx = callPackage ../development/python-modules/opt-einsum-fx { }; + optax = callPackage ../development/python-modules/optax { }; optiland = callPackage ../development/python-modules/optiland { }; @@ -14254,8 +14256,6 @@ self: super: with self; { pyhibp = callPackage ../development/python-modules/pyhibp { }; - pyhidra = callPackage ../development/python-modules/pyhidra { }; - pyhik = callPackage ../development/python-modules/pyhik { }; pyhive-integration = callPackage ../development/python-modules/pyhive-integration { }; @@ -15793,6 +15793,8 @@ self: super: with self; { pytest-subtesthack = callPackage ../development/python-modules/pytest-subtesthack { }; + pytest-subtests = callPackage ../development/python-modules/pytest-subtests { }; + pytest-sugar = callPackage ../development/python-modules/pytest-sugar { }; pytest-tap = callPackage ../development/python-modules/pytest-tap { }; @@ -16021,6 +16023,8 @@ self: super: with self; { python-homewizard-energy = callPackage ../development/python-modules/python-homewizard-energy { }; + python-hostlist = callPackage ../development/python-modules/python-hostlist { }; + python-hosts = callPackage ../development/python-modules/python-hosts { }; python-hpilo = callPackage ../development/python-modules/python-hpilo { }; @@ -19905,6 +19909,8 @@ self: super: with self; { torch-einops-utils = callPackage ../development/python-modules/torch-einops-utils { }; + torch-ema = callPackage ../development/python-modules/torch-ema { }; + torch-geometric = callPackage ../development/python-modules/torch-geometric { }; torch-memory-saver = callPackage ../development/python-modules/torch-memory-saver { };