about summary refs log tree commit diff
path: root/pkgs/development/python-modules
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/python-modules')
-rw-r--r--pkgs/development/python-modules/app-model/default.nix41
-rw-r--r--pkgs/development/python-modules/chromadb/default.nix1
-rw-r--r--pkgs/development/python-modules/dissect-executable/default.nix4
-rw-r--r--pkgs/development/python-modules/duckduckgo-search/default.nix96
-rw-r--r--pkgs/development/python-modules/napari-console/default.nix43
-rw-r--r--pkgs/development/python-modules/napari/default.nix94
-rw-r--r--pkgs/development/python-modules/pubnub/default.nix4
-rw-r--r--pkgs/development/python-modules/pyslurm/default.nix17
-rw-r--r--pkgs/development/python-modules/python3-gnutls/default.nix12
-rw-r--r--pkgs/development/python-modules/scikit-posthocs/default.nix9
-rw-r--r--pkgs/development/python-modules/setuptools-gettext/default.nix39
-rw-r--r--pkgs/development/python-modules/stim/default.nix2
-rw-r--r--pkgs/development/python-modules/succulent/default.nix9
-rw-r--r--pkgs/development/python-modules/superqt/default.nix58
-rw-r--r--pkgs/development/python-modules/types-beautifulsoup4/default.nix4
-rw-r--r--pkgs/development/python-modules/zigpy/default.nix3
16 files changed, 247 insertions, 189 deletions
diff --git a/pkgs/development/python-modules/app-model/default.nix b/pkgs/development/python-modules/app-model/default.nix
index 7dc1c65349eaf..bf2130e224176 100644
--- a/pkgs/development/python-modules/app-model/default.nix
+++ b/pkgs/development/python-modules/app-model/default.nix
@@ -1,20 +1,21 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, hatch-vcs
-, hatchling
-, in-n-out
-, psygnal
-, pydantic
-, pydantic-compat
-, pytestCheckHook
-, pythonOlder
-, typing-extensions
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  hatch-vcs,
+  hatchling,
+  in-n-out,
+  psygnal,
+  pydantic,
+  pydantic-compat,
+  pytestCheckHook,
+  pythonOlder,
+  typing-extensions,
 }:
 
 buildPythonPackage rec {
   pname = "app-model";
-  version = "0.2.6";
+  version = "0.2.7";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -23,15 +24,15 @@ buildPythonPackage rec {
     owner = "pyapp-kit";
     repo = "app-model";
     rev = "refs/tags/v${version}";
-    hash = "sha256-EMlxY9Xna9e3kWJ7X8oRuLHEmivwVFcEXRDvZfN2rNY=";
+    hash = "sha256-ISMSt7c8CoxffMhg7XC/ebKkgXFTBihDr1fGkqMCBoc=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     hatch-vcs
     hatchling
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     psygnal
     pydantic
     pydantic-compat
@@ -39,13 +40,9 @@ buildPythonPackage rec {
     typing-extensions
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "app_model"
-  ];
+  pythonImportsCheck = [ "app_model" ];
 
   meta = with lib; {
     description = "Module to implement generic application schema";
diff --git a/pkgs/development/python-modules/chromadb/default.nix b/pkgs/development/python-modules/chromadb/default.nix
index 2042758efd8af..471b6111a93d3 100644
--- a/pkgs/development/python-modules/chromadb/default.nix
+++ b/pkgs/development/python-modules/chromadb/default.nix
@@ -132,6 +132,7 @@ buildPythonPackage rec {
   pytestFlagsArray = [ "-x" ];
 
   preCheck = ''
+    (($(ulimit -n) < 1024)) && ulimit -n 1024
     export HOME=$(mktemp -d)
   '';
 
diff --git a/pkgs/development/python-modules/dissect-executable/default.nix b/pkgs/development/python-modules/dissect-executable/default.nix
index c6abdd5ee6f66..c8d9c456fa990 100644
--- a/pkgs/development/python-modules/dissect-executable/default.nix
+++ b/pkgs/development/python-modules/dissect-executable/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "dissect-executable";
-  version = "1.5";
+  version = "1.6";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.executable";
     rev = "refs/tags/${version}";
-    hash = "sha256-aAalU0TUqXc13WnxJvirG3QzQyMstecOfnXMdFT8IzU=";
+    hash = "sha256-b8xPOIUMn6JdYlvuoV5UeBdyISh6CC2Gh6E6U5ZZ7qY=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/duckduckgo-search/default.nix b/pkgs/development/python-modules/duckduckgo-search/default.nix
index 708762bb2622f..a06c16586b0a3 100644
--- a/pkgs/development/python-modules/duckduckgo-search/default.nix
+++ b/pkgs/development/python-modules/duckduckgo-search/default.nix
@@ -1,20 +1,52 @@
-{ lib
-, aiofiles
-, buildPythonPackage
-, click
-, fetchFromGitHub
-, h2
-, httpx
-, lxml
-, pythonOlder
-, requests
-, setuptools
-, socksio
+{
+  lib,
+  buildPythonPackage,
+  click,
+  fetchFromGitHub,
+  pythonOlder,
+  setuptools,
+  orjson,
+  curl-cffi,
+
+  # To build orjson
+  rustPlatform,
+
+  # Optional dependencies
+  lxml,
 }:
+let
+  curl-cffi_0_7_0 = curl-cffi.overrideAttrs (
+    final: old: {
+      version = "0.7.0b4";
+      src = fetchFromGitHub {
+        owner = "yifeikong";
+        repo = "curl_cffi";
+        rev = "v${final.version}";
+        hash = "sha256-txrJNUzswAPeH4Iazn0iKJI0Rqk0HHRoDrtTfDHKMoo=";
+      };
+    }
+  );
 
+  orjson_3_10_3 = orjson.overrideAttrs (
+    final: old: {
+      version = "3.10.3";
+      src = fetchFromGitHub {
+        owner = "ijl";
+        repo = "orjson";
+        rev = "refs/tags/${final.version}";
+        hash = "sha256-bK6wA8P/IXEbiuJAx7psd0nUUKjR1jX4scFfJr1MBAk=";
+      };
+      cargoDeps = rustPlatform.fetchCargoTarball {
+        inherit (final) src;
+        name = "${old.pname}-${final.version}";
+        hash = "sha256-ilGq+/gPSuNwURUWy2ZxInzmUv+PxYMxd8esxrMpr2o=";
+      };
+    }
+  );
+in
 buildPythonPackage rec {
   pname = "duckduckgo-search";
-  version = "5.0";
+  version = "v5.3.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -22,36 +54,32 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "deedy5";
     repo = "duckduckgo_search";
-    rev = "refs/tags/v${version}";
-    hash = "sha256-OZFkSFyXC2MFP2MbKwF/qR8zvCFzPKgLmX+nuIztOpw=";
+    rev = version;
+    hash = "sha256-T7rlB3dU7y+HbHr1Ss9KkejlXFORhnv9Va7cFTRtfQU=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  nativeBuildInputs = [ setuptools ];
 
   propagatedBuildInputs = [
-    aiofiles
     click
-    h2
-    httpx
-    lxml
-    requests
-    socksio
-  ] ++ httpx.optional-dependencies.brotli
-    ++ httpx.optional-dependencies.http2
-    ++ httpx.optional-dependencies.socks;
-
-  pythonImportsCheck = [
-    "duckduckgo_search"
+    orjson_3_10_3
+    curl-cffi_0_7_0
   ];
 
-  meta = with lib; {
+  passthru.optional-dependencies = {
+    lxml = [ lxml ];
+  };
+
+  doCheck = false; # tests require network access
+
+  pythonImportsCheck = [ "duckduckgo_search" ];
+
+  meta = {
     description = "Python CLI and library for searching for words, documents, images, videos, news, maps and text translation using the DuckDuckGo.com search engine";
     mainProgram = "ddgs";
     homepage = "https://github.com/deedy5/duckduckgo_search";
-    changelog = "https://github.com/deedy5/duckduckgo_search/releases/tag/v${version}";
-    license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    changelog = "https://github.com/deedy5/duckduckgo_search/releases/tag/${version}";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ drawbu ];
   };
 }
diff --git a/pkgs/development/python-modules/napari-console/default.nix b/pkgs/development/python-modules/napari-console/default.nix
index 9072ada93f420..07b8d735736a1 100644
--- a/pkgs/development/python-modules/napari-console/default.nix
+++ b/pkgs/development/python-modules/napari-console/default.nix
@@ -1,47 +1,44 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, imageio
-, ipykernel
-, ipython
-, napari-plugin-engine
-, pythonOlder
-, qtconsole
-, setuptools-scm
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  imageio,
+  ipykernel,
+  ipython,
+  napari-plugin-engine,
+  pythonOlder,
+  qtconsole,
+  qtpy,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "napari-console";
-  version = "0.0.7";
-  format = "pyproject";
+  version = "0.0.9";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "napari";
-    repo = pname;
+    repo = "napari-console";
     rev = "refs/tags/v${version}";
-    hash = "sha256-vHLCVMgrcs54pGb48wQpc0h7QBIfE6r7hCSoDNI3QvA=";
+    hash = "sha256-3gOfiPx06G5c4eaLQ5kP45hUr6yw91esznJFacpO66Q=";
   };
 
-  nativeBuildInputs = [
-    setuptools-scm
-  ];
+  build-system = [ setuptools-scm ];
 
-  propagatedBuildInputs = [
-    imageio
+  dependencies = [
     ipykernel
     ipython
-    napari-plugin-engine
     qtconsole
+    qtpy
   ];
 
   # Circular dependency: napari
   doCheck = false;
 
-  pythonImportsCheck = [
-    "napari_console"
-  ];
+  pythonImportsCheck = [ "napari_console" ];
 
   meta = with lib; {
     description = "A plugin that adds a console to napari";
diff --git a/pkgs/development/python-modules/napari/default.nix b/pkgs/development/python-modules/napari/default.nix
index 0bccb016570ca..b5baed96a4417 100644
--- a/pkgs/development/python-modules/napari/default.nix
+++ b/pkgs/development/python-modules/napari/default.nix
@@ -1,67 +1,69 @@
-{ lib
-, mkDerivationWith
-, appdirs
-, app-model
-, buildPythonPackage
-, cachey
-, certifi
-, dask
-, docstring-parser
-, fetchFromGitHub
-, imageio
-, jsonschema
-, magicgui
-, napari-console
-, napari-npe2
-, napari-svg
-, numpydoc
-, pint
-, psutil
-, pydantic
-, pyopengl
-, pillow
-, pythonOlder
-, pyyaml
-, scikit-image
-, scipy
-, setuptools-scm
-, sphinx
-, superqt
-, tifffile
-, toolz
-, tqdm
-, typing-extensions
-, vispy
-, wrapQtAppsHook
-, wrapt
+{
+  lib,
+  app-model,
+  appdirs,
+  buildPythonPackage,
+  cachey,
+  certifi,
+  dask,
+  docstring-parser,
+  fetchFromGitHub,
+  imageio,
+  jsonschema,
+  magicgui,
+  mkDerivationWith,
+  napari-console,
+  napari-npe2,
+  napari-svg,
+  numpydoc,
+  pandas,
+  pillow,
+  pint,
+  psutil,
+  pydantic,
+  pyopengl,
+  pythonOlder,
+  pyyaml,
+  scikit-image,
+  scipy,
+  setuptools,
+  setuptools-scm,
+  superqt,
+  tifffile,
+  toolz,
+  tqdm,
+  typing-extensions,
+  vispy,
+  wrapQtAppsHook,
+  wrapt,
 }:
 
 mkDerivationWith buildPythonPackage rec {
   pname = "napari";
   version = "0.4.19.post1";
-  format = "pyproject";
+  pyproject = true;
 
-  disabled = pythonOlder "3.8";
+  disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
     owner = "napari";
-    repo = pname;
+    repo = "napari";
     rev = "refs/tags/v${version}";
     hash = "sha256-qw5WdFPySNkmm+dNu+hqsmr+csBpHnSl9bMpb4nKEqI=";
   };
 
   postPatch = ''
     substituteInPlace setup.cfg \
-      --replace "scikit-image>=0.19.1" "scikit-image" \
-      --replace "sphinx<5" "sphinx" \
-      --replace "vispy>=0.11.0,<0.12" "vispy"
+      --replace-fail "scikit-image[data]>=0.19.1" "scikit-image"
   '';
 
-  nativeBuildInputs = [
+  build-system = [
+    setuptools
     setuptools-scm
-    wrapQtAppsHook
   ];
 
+  nativeBuildInputs = [ wrapQtAppsHook ];
+
   propagatedBuildInputs = [
     app-model
     appdirs
@@ -76,15 +78,15 @@ mkDerivationWith buildPythonPackage rec {
     napari-npe2
     napari-svg
     numpydoc
-    pint
+    pandas
     pillow
+    pint
     psutil
     pydantic
     pyopengl
     pyyaml
     scikit-image
     scipy
-    sphinx
     superqt
     tifffile
     toolz
diff --git a/pkgs/development/python-modules/pubnub/default.nix b/pkgs/development/python-modules/pubnub/default.nix
index 58b6bd159d508..868926ba95f13 100644
--- a/pkgs/development/python-modules/pubnub/default.nix
+++ b/pkgs/development/python-modules/pubnub/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "pubnub";
-  version = "7.4.4";
+  version = "8.0.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "pubnub";
     repo = "python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-4Paodw3t2RvAKrDMcWHIGLs5JNtH/9sP+BTyAm/hj4E=";
+    hash = "sha256-GKJv/GJ/h/LVbEa8Wz7iXc8J38UTTlNa0/08+p5sYCA=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/pyslurm/default.nix b/pkgs/development/python-modules/pyslurm/default.nix
index b910da5b69e26..f65aae69cded6 100644
--- a/pkgs/development/python-modules/pyslurm/default.nix
+++ b/pkgs/development/python-modules/pyslurm/default.nix
@@ -1,8 +1,8 @@
 { lib
 , pythonOlder
 , fetchFromGitHub
-, fetchpatch
 , buildPythonPackage
+, setuptools
 , cython
 , slurm
 }:
@@ -10,7 +10,7 @@
 buildPythonPackage rec {
   pname = "pyslurm";
   version = "23.11.0";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
@@ -21,15 +21,16 @@ buildPythonPackage rec {
     hash = "sha256-Qi0XftneKj7hdDiLY2hoRONRrPv49mfQlvlNkudH54Y=";
   };
 
-  patches = [ (fetchpatch {
-    name = "remove-undeclared-KILL_JOB_ARRAY";
-    url = "https://github.com/PySlurm/pyslurm/commit/f7a7d8beb8ceb4e4c1b248bab2ebb995dcae77e2.patch";
-    hash = "sha256-kQLGiGzAhqP8Z6pObz9vdTRdITd12w7KuUDXsfyLIU8=";
-  })];
+  nativeBuildInputs = [
+    setuptools
+  ];
 
   buildInputs = [ cython slurm ];
 
-  setupPyBuildFlags = [ "--slurm-lib=${lib.getLib slurm}/lib" "--slurm-inc=${lib.getDev slurm}/include" ];
+  env = {
+    SLURM_LIB_DIR = "${lib.getLib slurm}/lib";
+    SLURM_INCLUDE_DIR = "${lib.getDev slurm}/include";
+  };
 
   # Test cases need /etc/slurm/slurm.conf and require a working slurm installation
   doCheck = false;
diff --git a/pkgs/development/python-modules/python3-gnutls/default.nix b/pkgs/development/python-modules/python3-gnutls/default.nix
index 72f695326d758..6adaf3c033933 100644
--- a/pkgs/development/python-modules/python3-gnutls/default.nix
+++ b/pkgs/development/python-modules/python3-gnutls/default.nix
@@ -1,20 +1,22 @@
 { lib, fetchFromGitHub, substituteAll, buildPythonPackage, isPy3k, gnutls
-, twisted, pyopenssl, service-identity }:
+, twisted, pyopenssl, service-identity, setuptools }:
 
 buildPythonPackage rec {
   pname = "python3-gnutls";
-  version = "3.1.9";
-  format = "setuptools";
+  version = "3.1.10";
+  pyproject = true;
 
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "AGProjects";
     repo = "python3-gnutls";
-    rev = "324b78f7cd3d9fe58c89c7f0b2bf94199bd6a6e5"; # version not tagged
-    hash = "sha256-18T8bAHlNERHobsspUFvSC6ulN55nrFFb5aqNwU8T00=";
+    rev = "refs/tags/release-${version}";
+    hash = "sha256-AdFRF3ZlkkAoSm5rvf/09FSYIo7SsZ38sD2joOLyukA=";
   };
 
+  nativeBuildInputs = [ setuptools ];
+
   propagatedBuildInputs = [ twisted pyopenssl service-identity ];
 
   patches = [
diff --git a/pkgs/development/python-modules/scikit-posthocs/default.nix b/pkgs/development/python-modules/scikit-posthocs/default.nix
index e8f3933299a74..1aba1d935c4e9 100644
--- a/pkgs/development/python-modules/scikit-posthocs/default.nix
+++ b/pkgs/development/python-modules/scikit-posthocs/default.nix
@@ -16,7 +16,7 @@
 buildPythonPackage rec {
   pname = "scikit-posthocs";
   version = "0.9.0";
-  format = "pyproject";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "maximtrp";
@@ -25,13 +25,6 @@ buildPythonPackage rec {
     hash = "sha256-sRop5DKakrZEBswzTvumn68wKqU15zM5aCLfZ/PdsFg=";
   };
 
-  patches = [
-    # Fixed on master: https://github.com/maximtrp/scikit-posthocs/commit/02266a00ce0eb6a089e7efe07816da1aa5152fc9
-    ./0001-increased-abs-tolerance-for-wilcoxon-test.patch
-    # Fixed on master: https://github.com/maximtrp/scikit-posthocs/commit/5416ffba3ab01aebab3909400b5a9e847022898e
-    ./0002-Update-test_posthocs.py.patch
-  ];
-
   nativeBuildInputs = [
     setuptools
     wheel
diff --git a/pkgs/development/python-modules/setuptools-gettext/default.nix b/pkgs/development/python-modules/setuptools-gettext/default.nix
index 394f4c4693fad..ab9961af33958 100644
--- a/pkgs/development/python-modules/setuptools-gettext/default.nix
+++ b/pkgs/development/python-modules/setuptools-gettext/default.nix
@@ -1,16 +1,22 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pythonOlder
-, setuptools
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pythonOlder,
+  pythonAtLeast,
+  setuptools,
+  tomli,
+  pytestCheckHook,
+  gettext,
 }:
 
 buildPythonPackage rec {
   pname = "setuptools-gettext";
   version = "0.1.11";
-  format = "setuptools";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  # >=3.12 doesn't work because the package depends on `distutils`
+  disabled = pythonOlder "3.7" || pythonAtLeast "3.12";
 
   src = fetchFromGitHub {
     owner = "breezy-team";
@@ -19,19 +25,22 @@ buildPythonPackage rec {
     hash = "sha256-yLKn4wwGgRdlsISAT71lD2vkIefsTJRB+OEA030adZY=";
   };
 
-  propagatedBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ setuptools ] ++ lib.optionals (pythonOlder "3.11") [ tomli ];
+
+  pythonImportsCheck = [ "setuptools_gettext" ];
 
-  pythonImportsCheck = [
-    "setuptools_gettext"
+  nativeCheckInputs = [
+    pytestCheckHook
+    gettext
   ];
 
-  meta = with lib; {
+  meta = {
     changelog = "https://github.com/breezy-team/setuptools-gettext/releases/tag/v${version}";
     description = "setuptools plugin for building mo files";
     homepage = "https://github.com/breezy-team/setuptools-gettext";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ ];
+    license = lib.licenses.gpl2Plus;
+    maintainers = with lib.maintainers; [ tomasajt ];
   };
 }
diff --git a/pkgs/development/python-modules/stim/default.nix b/pkgs/development/python-modules/stim/default.nix
index 3e95b74ef9ef4..ca76e41880af0 100644
--- a/pkgs/development/python-modules/stim/default.nix
+++ b/pkgs/development/python-modules/stim/default.nix
@@ -32,7 +32,7 @@ buildPythonPackage rec {
   postPatch = ''
     # asked to relax this in https://github.com/quantumlib/Stim/issues/623
     substituteInPlace pyproject.toml \
-      --replace "pybind11==" "pybind11>="
+      --replace-quiet "pybind11~=" "pybind11>="
   '';
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/succulent/default.nix b/pkgs/development/python-modules/succulent/default.nix
index 74d369acefc1b..f3d90ec52abfa 100644
--- a/pkgs/development/python-modules/succulent/default.nix
+++ b/pkgs/development/python-modules/succulent/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , flask
+, lxml
 , pandas
 , pyyaml
 , poetry-core
@@ -9,14 +10,15 @@
 , pythonRelaxDepsHook
 , pythonOlder
 , toml-adapt
+, xmltodict
 }:
 
 buildPythonPackage rec {
   pname = "succulent";
   version = "0.3.3";
-  format = "pyproject";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "firefly-cpp";
@@ -27,7 +29,6 @@ buildPythonPackage rec {
 
   pythonRelaxDeps = [
     "flask"
-    "pandas"
   ];
 
   nativeBuildInputs = [
@@ -37,8 +38,10 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     flask
+    lxml
     pandas
     pyyaml
+    xmltodict
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/superqt/default.nix b/pkgs/development/python-modules/superqt/default.nix
index e7c3aaa04589a..7012efc0e9065 100644
--- a/pkgs/development/python-modules/superqt/default.nix
+++ b/pkgs/development/python-modules/superqt/default.nix
@@ -1,44 +1,66 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, setuptools-scm
-, pyqt5
-, qtpy
-, typing-extensions
-, pytestCheckHook
-, pygments
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  hatch-vcs,
+  hatchling,
+  pint,
+  pygments,
+  pyqt5,
+  pyqt6,
+  pyside2,
+  pyside6,
+  pytestCheckHook,
+  pythonOlder,
+  qtpy,
+  typing-extensions,
 }:
 
 buildPythonPackage rec {
   pname = "superqt";
-  version = "0.3.8";
-  format = "pyproject";
+  version = "0.6.5";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
-    owner = "napari";
-    repo = pname;
+    owner = "pyapp-kit";
+    repo = "superqt";
     rev = "refs/tags/v${version}";
     hash = "sha256-zEMG2zscGDlRxtLn/lUTEjZBPabcwzMcj/kMcy3yOs8=";
   };
 
-  nativeBuildInputs = [ setuptools-scm ];
+  build-system = [
+    hatch-vcs
+    hatchling
+  ];
 
-  propagatedBuildInputs = [
+  dependencies = [
+    pygments
     pyqt5
     qtpy
     typing-extensions
-    pygments
   ];
 
+  passthru.optional-dependencies = {
+    quantity = [ pint ];
+    pyside2 = [ pyside2 ];
+    pyside6 = [ pyside6 ];
+    pyqt6 = [ pyqt6 ];
+  };
+
   nativeCheckInputs = [ pytestCheckHook ];
 
-  doCheck = false; # Segfaults...
+  # Segmentation fault
+  doCheck = false;
 
-  pythonImportsCheck = [ "superqt" ];
+  # Segmentation fault
+  # pythonImportsCheck = [ "superqt" ];
 
   meta = with lib; {
     description = "Missing widgets and components for Qt-python (napari/superqt)";
     homepage = "https://github.com/napari/superqt";
+    changelog = "https://github.com/pyapp-kit/superqt/releases/tag/v${version}";
     license = licenses.bsd3;
     maintainers = with maintainers; [ SomeoneSerge ];
   };
diff --git a/pkgs/development/python-modules/types-beautifulsoup4/default.nix b/pkgs/development/python-modules/types-beautifulsoup4/default.nix
index 24a48b3bdca9b..57c1f550b2e49 100644
--- a/pkgs/development/python-modules/types-beautifulsoup4/default.nix
+++ b/pkgs/development/python-modules/types-beautifulsoup4/default.nix
@@ -8,12 +8,12 @@
 
 buildPythonPackage rec {
   pname = "types-beautifulsoup4";
-  version = "4.12.0.20240504";
+  version = "4.12.0.20240511";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-17evTMxS/CJ4TTOlKWleNDKam91dtqZJybJcssOhSNU=";
+    hash = "sha256-AE9glv3YOxnNv2yxDk6uV7ECBezMNl0Kadd9qDYBLig=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/zigpy/default.nix b/pkgs/development/python-modules/zigpy/default.nix
index 3cc9a89e70b3f..a52549728bb61 100644
--- a/pkgs/development/python-modules/zigpy/default.nix
+++ b/pkgs/development/python-modules/zigpy/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , aiohttp
 , aioresponses
 , aiosqlite
@@ -74,6 +75,8 @@ buildPythonPackage rec {
   disabledTests = [
     # assert quirked.quirk_metadata.quirk_location.endswith("zigpy/tests/test_quirks_v2.py]-line:104") is False
     "test_quirks_v2"
+  ] ++ lib.optionals (stdenv.isLinux && stdenv.isx86_64) [
+    "test_periodic_scan_priority"
   ];
 
   disabledTestPaths = [