about summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/libraries/catboost/default.nix4
-rw-r--r--pkgs/development/libraries/libnbd/default.nix4
-rw-r--r--pkgs/development/libraries/qt-6/modules/qtmultimedia.nix2
-rw-r--r--pkgs/development/libraries/qt-6/patches/qtmultimedia-darwin-revert-replace-deprecated-constant.patch50
-rw-r--r--pkgs/development/libraries/webkitgtk/default.nix4
-rw-r--r--pkgs/development/python-modules/alpha-vantage/default.nix43
-rw-r--r--pkgs/development/python-modules/amcrest/default.nix40
-rw-r--r--pkgs/development/python-modules/automate-home/default.nix57
-rw-r--r--pkgs/development/python-modules/boiboite-opener-framework/default.nix33
-rw-r--r--pkgs/development/python-modules/dask-image/default.nix4
-rw-r--r--pkgs/development/python-modules/llama-index-graph-stores-nebula/default.nix4
-rw-r--r--pkgs/development/python-modules/nose-randomly/default.nix34
-rw-r--r--pkgs/development/python-modules/pydy/default.nix38
-rw-r--r--pkgs/development/python-modules/skybellpy/default.nix44
-rw-r--r--pkgs/development/python-modules/tencentcloud-sdk-python/default.nix4
-rw-r--r--pkgs/development/python-modules/tololib/default.nix36
-rw-r--r--pkgs/development/python-modules/unifi-discovery/default.nix51
-rw-r--r--pkgs/development/python-modules/weaviate-client/default.nix4
-rw-r--r--pkgs/development/python-modules/webdriver-manager/default.nix36
-rw-r--r--pkgs/development/python-modules/weconnect-mqtt/default.nix44
-rw-r--r--pkgs/development/python-modules/yapf/default.nix44
-rw-r--r--pkgs/development/tools/parsing/antlr/2.7.7.nix2
22 files changed, 302 insertions, 280 deletions
diff --git a/pkgs/development/libraries/catboost/default.nix b/pkgs/development/libraries/catboost/default.nix
index 6da5885223a68..b4fa78a125265 100644
--- a/pkgs/development/libraries/catboost/default.nix
+++ b/pkgs/development/libraries/catboost/default.nix
@@ -22,13 +22,13 @@ in
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "catboost";
-  version = "1.2.3";
+  version = "1.2.5";
 
   src = fetchFromGitHub {
     owner = "catboost";
     repo = "catboost";
     rev = "refs/tags/v${finalAttrs.version}";
-    hash = "sha256-wn9STnpqX3zmdxPmMYAz9JPdg13Goux76CMaCiqohk8=";
+    hash = "sha256-2dfCCCa0LheytkLRbYuBd25M320f1kbhBWKIVjslor0=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/libnbd/default.nix b/pkgs/development/libraries/libnbd/default.nix
index 5889c8ef12d55..7a2e358d572be 100644
--- a/pkgs/development/libraries/libnbd/default.nix
+++ b/pkgs/development/libraries/libnbd/default.nix
@@ -12,11 +12,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libnbd";
-  version = "1.18.2";
+  version = "1.20.1";
 
   src = fetchurl {
     url = "https://download.libguestfs.org/libnbd/${lib.versions.majorMinor version}-stable/${pname}-${version}.tar.gz";
-    hash = "sha256-OYtNHAIGgwJuapoJNEMVkurUK9bQ7KO+V223bGC0TFI=";
+    hash = "sha256-AoTfX6Ov9Trj9a9i+K+NYCwxhQ9C5YYqx/15RBtgJYw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix b/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix
index ba24fbe9294b3..39ac1245118a8 100644
--- a/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix
@@ -39,6 +39,8 @@ qtModule {
 
   patches = [
     ../patches/fix-qtgui-include-incorrect-case.patch
+    # Remove new constants since macOS 12+, since we build Qt with the macOS 11 SDK
+    ../patches/qtmultimedia-darwin-revert-replace-deprecated-constant.patch
   ] ++ lib.optionals stdenv.hostPlatform.isMinGW [
     ../patches/qtmultimedia-windows-no-uppercase-libs.patch
     ../patches/qtmultimedia-windows-resolve-function-name.patch
diff --git a/pkgs/development/libraries/qt-6/patches/qtmultimedia-darwin-revert-replace-deprecated-constant.patch b/pkgs/development/libraries/qt-6/patches/qtmultimedia-darwin-revert-replace-deprecated-constant.patch
new file mode 100644
index 0000000000000..3196a6e4158c0
--- /dev/null
+++ b/pkgs/development/libraries/qt-6/patches/qtmultimedia-darwin-revert-replace-deprecated-constant.patch
@@ -0,0 +1,50 @@
+diff --git a/src/multimedia/darwin/qdarwinmediadevices.mm b/src/multimedia/darwin/qdarwinmediadevices.mm
+index b0a108935..881066928 100644
+--- a/src/multimedia/darwin/qdarwinmediadevices.mm
++++ b/src/multimedia/darwin/qdarwinmediadevices.mm
+@@ -42,7 +42,7 @@ static AudioDeviceID defaultAudioDevice(QAudioDevice::Mode mode)
+     const AudioObjectPropertyAddress propertyAddress = {
+         selector,
+         kAudioObjectPropertyScopeGlobal,
+-        kAudioObjectPropertyElementMain,
++        kAudioObjectPropertyElementMaster,
+     };
+ 
+     if (auto audioDevice = getAudioObject<AudioDeviceID>(kAudioObjectSystemObject, propertyAddress,
+@@ -77,7 +77,7 @@ static QList<QAudioDevice> availableAudioDevices(QAudioDevice::Mode mode)
+ 
+     const AudioObjectPropertyAddress audioDevicesPropertyAddress = {
+         kAudioHardwarePropertyDevices, kAudioObjectPropertyScopeGlobal,
+-        kAudioObjectPropertyElementMain
++        kAudioObjectPropertyElementMaster
+     };
+ 
+     if (auto audioDevices = getAudioData<AudioDeviceID>(
+@@ -130,11 +130,11 @@ static OSStatus audioDeviceChangeListener(AudioObjectID id, UInt32,
+ 
+ static constexpr AudioObjectPropertyAddress listenerAddresses[] = {
+     { kAudioHardwarePropertyDefaultInputDevice, kAudioObjectPropertyScopeGlobal,
+-      kAudioObjectPropertyElementMain },
++      kAudioObjectPropertyElementMaster },
+     { kAudioHardwarePropertyDefaultOutputDevice, kAudioObjectPropertyScopeGlobal,
+-      kAudioObjectPropertyElementMain },
++      kAudioObjectPropertyElementMaster },
+     { kAudioHardwarePropertyDevices, kAudioObjectPropertyScopeGlobal,
+-      kAudioObjectPropertyElementMain }
++      kAudioObjectPropertyElementMaster }
+ };
+ 
+ static void setAudioListeners(QDarwinMediaDevices &instance)
+diff --git a/src/multimedia/darwin/qmacosaudiodatautils_p.h b/src/multimedia/darwin/qmacosaudiodatautils_p.h
+index 8cc2f8440..5cd6fced2 100644
+--- a/src/multimedia/darwin/qmacosaudiodatautils_p.h
++++ b/src/multimedia/darwin/qmacosaudiodatautils_p.h
+@@ -44,7 +44,7 @@ void printUnableToReadWarning(const char *logName, AudioObjectID objectID, const
+ 
+ inline static AudioObjectPropertyAddress
+ makePropertyAddress(AudioObjectPropertySelector selector, QAudioDevice::Mode mode,
+-                    AudioObjectPropertyElement element = kAudioObjectPropertyElementMain)
++                    AudioObjectPropertyElement element = kAudioObjectPropertyElementMaster)
+ {
+     return { selector,
+              mode == QAudioDevice::Input ? kAudioDevicePropertyScopeInput
diff --git a/pkgs/development/libraries/webkitgtk/default.nix b/pkgs/development/libraries/webkitgtk/default.nix
index 140c2a4d4ae2b..cbe910b4469ed 100644
--- a/pkgs/development/libraries/webkitgtk/default.nix
+++ b/pkgs/development/libraries/webkitgtk/default.nix
@@ -69,7 +69,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "webkitgtk";
-  version = "2.44.1";
+  version = "2.44.2";
   name = "${finalAttrs.pname}-${finalAttrs.version}+abi=${if lib.versionAtLeast gtk3.version "4.0" then "6.0" else "4.${if lib.versions.major libsoup.version == "2" then "0" else "1"}"}";
 
   outputs = [ "out" "dev" "devdoc" ];
@@ -80,7 +80,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchurl {
     url = "https://webkitgtk.org/releases/webkitgtk-${finalAttrs.version}.tar.xz";
-    hash = "sha256-QlsUWbDwTQYAx40au15+36PAYKQg+LIx6aai1dKcVWE=";
+    hash = "sha256-Uj9CyP8kgyrdF2Mfbqr+j5MDr+MW7xp+GES5Uqf3Uhs=";
   };
 
   patches = lib.optionals stdenv.isLinux [
diff --git a/pkgs/development/python-modules/alpha-vantage/default.nix b/pkgs/development/python-modules/alpha-vantage/default.nix
index b98c2508458ed..b68fc39bc137c 100644
--- a/pkgs/development/python-modules/alpha-vantage/default.nix
+++ b/pkgs/development/python-modules/alpha-vantage/default.nix
@@ -1,27 +1,34 @@
-{ lib
-, aiohttp
-, aioresponses
-, buildPythonPackage
-, fetchFromGitHub
-, pandas
-, pytestCheckHook
-, requests
-, requests-mock
+{
+  lib,
+  aiohttp,
+  aioresponses,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pandas,
+  pytestCheckHook,
+  requests,
+  requests-mock,
+  setuptools,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "alpha-vantage";
   version = "2.3.1";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "RomelTorres";
     repo = "alpha_vantage";
-    rev = version;
-    sha256 = "0cyw6zw7c7r076rmhnmg905ihwb9r7g511n6gdlph06v74pdls8d";
+    rev = "refs/tags/${version}";
+    hash = "sha256-DWnaLjnbAHhpe8aGUN7JaXEYC0ivWlizOSAfdvg33DM=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     aiohttp
     requests
   ];
@@ -33,18 +40,16 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  disabledTestPaths = [
-    # Tests require network access
-    "test_alpha_vantage/test_integration_alphavantage.py"
-    "test_alpha_vantage/test_integration_alphavantage_async.py"
-  ];
+  # https://github.com/RomelTorres/alpha_vantage/issues/344
+  doCheck = false;
 
   pythonImportsCheck = [ "alpha_vantage" ];
 
   meta = with lib; {
     description = "Python module for the Alpha Vantage API";
     homepage = "https://github.com/RomelTorres/alpha_vantage";
-    license = with licenses; [ mit ];
+    changelog = "https://github.com/RomelTorres/alpha_vantage/releases/tag/${version}";
+    license = licenses.mit;
     maintainers = with maintainers; [ fab ];
   };
 }
diff --git a/pkgs/development/python-modules/amcrest/default.nix b/pkgs/development/python-modules/amcrest/default.nix
index 1de7da6f829fc..de008a1d2f1be 100644
--- a/pkgs/development/python-modules/amcrest/default.nix
+++ b/pkgs/development/python-modules/amcrest/default.nix
@@ -1,23 +1,27 @@
-{ lib
-, argcomplete
-, buildPythonPackage
-, fetchFromGitHub
-, mock
-, httpx
-, pytestCheckHook
-, pythonOlder
-, requests
-, responses
-, urllib3
-, typing-extensions
+{
+  lib,
+  argcomplete,
+  buildPythonPackage,
+  fetchFromGitHub,
+  httpx,
+  mock,
+  pytestCheckHook,
+  pythonAtLeast,
+  pythonOlder,
+  requests,
+  responses,
+  setuptools,
+  typing-extensions,
+  urllib3,
 }:
 
 buildPythonPackage rec {
   pname = "amcrest";
   version = "1.9.8";
-  format = "setuptools";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  # Still uses distutils, https://github.com/tchellomello/python-amcrest/issues/234
+  disabled = pythonOlder "3.7" || pythonAtLeast "3.12";
 
   src = fetchFromGitHub {
     owner = "tchellomello";
@@ -26,7 +30,11 @@ buildPythonPackage rec {
     hash = "sha256-v0jWEZo06vltEq//suGrvJ/AeeDxUG5CCFhbf03q34w=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     argcomplete
     httpx
     requests
@@ -48,7 +56,7 @@ buildPythonPackage rec {
     description = "Python module for Amcrest and Dahua Cameras";
     homepage = "https://github.com/tchellomello/python-amcrest";
     changelog = "https://github.com/tchellomello/python-amcrest/releases/tag/${version}";
-    license = with licenses; [ gpl2Only ];
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ fab ];
   };
 }
diff --git a/pkgs/development/python-modules/automate-home/default.nix b/pkgs/development/python-modules/automate-home/default.nix
index c13395aa42e3e..bfaa26afc761d 100644
--- a/pkgs/development/python-modules/automate-home/default.nix
+++ b/pkgs/development/python-modules/automate-home/default.nix
@@ -1,29 +1,42 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pytestCheckHook
-, pythonOlder
-, apscheduler
-, hiredis
-, aioredis
-, ephem
-, pytz
-, pyyaml
+{
+  lib,
+  aioredis,
+  apscheduler,
+  buildPythonPackage,
+  ephem,
+  fetchPypi,
+  hiredis,
+  pytestCheckHook,
+  pythonAtLeast,
+  pythonOlder,
+  pytz,
+  pyyaml,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "automate-home";
   version = "0.9.1";
-  format = "setuptools";
+  pyproject = true;
 
-  disabled = pythonOlder "3.8";
+  # Typing issue
+  disabled = pythonOlder "3.8" || pythonAtLeast "3.12";
 
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-41qd+KPSrOrczkovwXht3irbcYlYehBZ1HZ44yZe4cM=";
   };
 
-  propagatedBuildInputs = [
+  postPatch = ''
+    # Rename pyephem, https://github.com/majamassarini/automate-home/pull/3
+    substituteInPlace setup.py \
+      --replace-fail "pyephem" "ephem" \
+      --replace-fail "aioredis==1.3.1" "aioredis"
+  '';
+
+  build-system = [ setuptools ];
+
+  dependencies = [
     apscheduler
     hiredis
     aioredis
@@ -32,24 +45,14 @@ buildPythonPackage rec {
     pyyaml
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  postPatch = ''
-    # Rename pyephem, https://github.com/majamassarini/automate-home/pull/3
-    substituteInPlace setup.py \
-      --replace "pyephem" "ephem" \
-      --replace "aioredis==1.3.1" "aioredis"
-  '';
-
-  pythonImportsCheck = [
-    "home"
-  ];
+  pythonImportsCheck = [ "home" ];
 
   meta = with lib; {
     description = "Python module to automate (home) devices";
     homepage = "https://github.com/majamassarini/automate-home";
+    changelog = "https://github.com/majamassarini/automate-home/releases/tag/${version}";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/boiboite-opener-framework/default.nix b/pkgs/development/python-modules/boiboite-opener-framework/default.nix
index e7a0b017f405f..b86989bbbd71d 100644
--- a/pkgs/development/python-modules/boiboite-opener-framework/default.nix
+++ b/pkgs/development/python-modules/boiboite-opener-framework/default.nix
@@ -1,17 +1,19 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, packaging
-, pytestCheckHook
-, pythonOlder
-, pythonRelaxDepsHook
-, scapy
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  packaging,
+  pytestCheckHook,
+  pythonOlder,
+  pythonRelaxDepsHook,
+  scapy,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "boiboite-opener-framework";
   version = "1.2.1";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -27,18 +29,16 @@ buildPythonPackage rec {
       --replace "scapy==2.5.0rc1" "scapy"
   '';
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     packaging
     scapy
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "bof"
-  ];
+  pythonImportsCheck = [ "bof" ];
 
   disabledTests = [
     # Tests are using netcat and cat to do UDP connections
@@ -75,5 +75,6 @@ buildPythonPackage rec {
     changelog = "https://github.com/Orange-Cyberdefense/bof/releases/tag/${version}";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ fab ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/python-modules/dask-image/default.nix b/pkgs/development/python-modules/dask-image/default.nix
index b2d93687988da..c7f57622801f7 100644
--- a/pkgs/development/python-modules/dask-image/default.nix
+++ b/pkgs/development/python-modules/dask-image/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "dask-image";
-  version = "2024.5.2";
+  version = "2024.5.3";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "dask";
     repo = "dask-image";
     rev = "refs/tags/v${version}";
-    hash = "sha256-smoiGSY7ou4zPRf0+6bRoViZDwNFBIwq+Mk8Tc9vniM=";
+    hash = "sha256-kXCAqJ2Zgo/2Khvo2YcK+n4oGM219GyQ2Hsq9re1Lac=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/llama-index-graph-stores-nebula/default.nix b/pkgs/development/python-modules/llama-index-graph-stores-nebula/default.nix
index 783ace83f6560..3741b71a34ea6 100644
--- a/pkgs/development/python-modules/llama-index-graph-stores-nebula/default.nix
+++ b/pkgs/development/python-modules/llama-index-graph-stores-nebula/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "llama-index-graph-stores-nebula";
-  version = "0.1.2";
+  version = "0.1.3";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "llama_index_graph_stores_nebula";
     inherit version;
-    hash = "sha256-Xb/0ogj2NlGV4MGC9Be54d/JfalT40jtAe6LOPO1u/8=";
+    hash = "sha256-Mhej0nslypY1Z99VUrTgl4S9PlrBWbaKvANSwEKTMZk=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/nose-randomly/default.nix b/pkgs/development/python-modules/nose-randomly/default.nix
deleted file mode 100644
index afb797d3e2f25..0000000000000
--- a/pkgs/development/python-modules/nose-randomly/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib
-, stdenv
-, buildPythonPackage
-, fetchPypi
-, nose
-, numpy
-}:
-
-buildPythonPackage rec {
-  pname = "nose-randomly";
-  version = "1.2.6";
-  format = "setuptools";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "7e483a3d79e13ae760d6ade57ae07ae45bb4b223b61a805e958b4c077116c67c";
-  };
-
-  nativeCheckInputs = [ numpy nose ];
-
-  checkPhase = if stdenv.isDarwin then ''
-    # Work around "OSError: AF_UNIX path too long"
-    TMPDIR="/tmp" nosetests
-  '' else ''
-    nosetests
-  '';
-
-  meta = with lib; {
-    description = "Nose plugin to randomly order tests and control random.seed";
-    homepage = "https://github.com/adamchainz/nose-randomly";
-    license = licenses.bsd3;
-    maintainers = [ ];
-  };
-}
diff --git a/pkgs/development/python-modules/pydy/default.nix b/pkgs/development/python-modules/pydy/default.nix
index c7ee5359bee41..613bf25632144 100644
--- a/pkgs/development/python-modules/pydy/default.nix
+++ b/pkgs/development/python-modules/pydy/default.nix
@@ -1,43 +1,35 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, nose
-, cython
-, numpy
-, scipy
-, sympy
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  numpy,
+  scipy,
+  sympy,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "pydy";
   version = "0.7.1";
-  format = "setuptools";
+
+  pyproject = true;
+  build-system = [ setuptools ];
 
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-aaRinJMGR8v/OVkeSp1hA4+QLOrmDWq50wvA6b/suvk=";
   };
 
-  propagatedBuildInputs = [
+  dependencies = [
     numpy
     scipy
     sympy
   ];
 
-  nativeCheckInputs = [
-    nose
-    cython
-    pytestCheckHook
-  ];
+  # nose test does not support 3.10 or later
+  doCheck = false;
 
-  disabledTests = [
-    # Tests not fixed yet. Check https://github.com/pydy/pydy/issues/465
-    "test_generate_cse"
-    "test_generate_code_blocks"
-    "test_doprint"
-    "test_OctaveMatrixGenerator"
-  ];
+  pythonImportsCheck = [ "pydy" ];
 
   meta = with lib; {
     description = "Python tool kit for multi-body dynamics";
diff --git a/pkgs/development/python-modules/skybellpy/default.nix b/pkgs/development/python-modules/skybellpy/default.nix
index 69837c5d68533..c05b3b0b96ef7 100644
--- a/pkgs/development/python-modules/skybellpy/default.nix
+++ b/pkgs/development/python-modules/skybellpy/default.nix
@@ -1,29 +1,36 @@
-{ lib
-, buildPythonPackage
-, colorlog
-, fetchFromGitHub
-, pytest-sugar
-, pytest-timeout
-, pytestCheckHook
-, pythonOlder
-, requests
-, requests-mock
+{
+  lib,
+  buildPythonPackage,
+  colorlog,
+  fetchFromGitHub,
+  pytest-sugar,
+  pytest-timeout,
+  pytestCheckHook,
+  pythonAtLeast,
+  pythonOlder,
+  requests,
+  requests-mock,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "skybellpy";
   version = "0.6.3";
-  format = "setuptools";
-  disabled = pythonOlder "3.6";
+  pyproject = true;
+
+  # Still uses distrutils, https://github.com/MisterWil/skybellpy/issues/22
+  disabled = pythonOlder "3.6" || pythonAtLeast "3.12";
 
   src = fetchFromGitHub {
     owner = "MisterWil";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "1ghvm0pcdyhq6xfjc2dkldd701x77w07077sx09xsk6q2milmvzz";
+    repo = "skybellpy";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-/+9KYxXYTN0T6PoccAA/pwdwWqOzCSZdNxj6xi6oG74=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     colorlog
     requests
   ];
@@ -39,9 +46,10 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Python wrapper for the Skybell alarm API";
-    mainProgram = "skybellpy";
     homepage = "https://github.com/MisterWil/skybellpy";
-    license = with licenses; [ mit ];
+    changelog = "https://github.com/MisterWil/skybellpy/releases/tag/v${version}";
+    license = licenses.mit;
     maintainers = with maintainers; [ fab ];
+    mainProgram = "skybellpy";
   };
 }
diff --git a/pkgs/development/python-modules/tencentcloud-sdk-python/default.nix b/pkgs/development/python-modules/tencentcloud-sdk-python/default.nix
index 4f03293b2dba0..1eee4a02da4f9 100644
--- a/pkgs/development/python-modules/tencentcloud-sdk-python/default.nix
+++ b/pkgs/development/python-modules/tencentcloud-sdk-python/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "tencentcloud-sdk-python";
-  version = "3.0.1151";
+  version = "3.0.1152";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "TencentCloud";
     repo = "tencentcloud-sdk-python";
     rev = "refs/tags/${version}";
-    hash = "sha256-JxxTfpb+03rBv/RIZgRpASq+WEjsAzDhtNL78FqU/Oc=";
+    hash = "sha256-pmmZnTvZwpVD/ECjKzA6LQ2c7McYznJMlKabcYwh3LY=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/tololib/default.nix b/pkgs/development/python-modules/tololib/default.nix
index ed530f95d1915..2ab0dbd7c89ae 100644
--- a/pkgs/development/python-modules/tololib/default.nix
+++ b/pkgs/development/python-modules/tololib/default.nix
@@ -1,10 +1,12 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitLab
-, fetchpatch
-, pytestCheckHook
-, pythonOlder
-, setuptools-scm
+{
+  lib,
+  stdenv,
+  buildPythonPackage,
+  fetchFromGitLab,
+  fetchpatch,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
@@ -21,33 +23,25 @@ buildPythonPackage rec {
     hash = "sha256-TxWKV2nrnCxZmj6+wBDMSdJRvKV+MsPFbOyIlUJYJ3Q=";
   };
 
-  nativeBuildInputs = [
-    setuptools-scm
-  ];
+  build-system = [ setuptools-scm ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
   preCheck = ''
     export PATH="$PATH:$out/bin";
   '';
 
-  disabledTests = [
-    # Test requires network access
-    "test_discovery"
-  ];
+  pythonImportsCheck = [ "tololib" ];
 
-  pythonImportsCheck = [
-    "tololib"
-  ];
+  # Network discovery doesn't work in the sandbox for darwin
+  doCheck = !stdenv.isDarwin;
 
   meta = with lib; {
     description = "Python Library for Controlling TOLO Sauna/Steam Bath Devices";
-    mainProgram = "tolo-cli";
     homepage = "https://gitlab.com/MatthiasLohr/tololib";
     changelog = "https://gitlab.com/MatthiasLohr/tololib/-/blob/v${version}/CHANGELOG.md";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
+    mainProgram = "tolo-cli";
   };
 }
diff --git a/pkgs/development/python-modules/unifi-discovery/default.nix b/pkgs/development/python-modules/unifi-discovery/default.nix
index 760b9f96c89ba..1bfcce4e430e4 100644
--- a/pkgs/development/python-modules/unifi-discovery/default.nix
+++ b/pkgs/development/python-modules/unifi-discovery/default.nix
@@ -1,34 +1,38 @@
-{ lib
-, aiohttp
-, aioresponses
-, buildPythonPackage
-, fetchFromGitHub
-, poetry-core
-, pyroute2
-, pytest-asyncio
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  aiohttp,
+  aioresponses,
+  buildPythonPackage,
+  fetchFromGitHub,
+  poetry-core,
+  pyroute2,
+  pytest-asyncio,
+  pytestCheckHook,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "unifi-discovery";
   version = "1.1.8";
-  format = "pyproject";
+  pyproject = true;
 
   disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
     owner = "bdraco";
-    repo = pname;
+    repo = "unifi-discovery";
     rev = "refs/tags/v${version}";
     hash = "sha256-gE/2awyhDACrc0nuTvTPOcK2lFbPIZAXDPRnVJtWFco=";
   };
 
-  nativeBuildInputs = [
-    poetry-core
-  ];
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-fail "--cov=unifi_discovery --cov-report=term-missing:skip-covered" ""
+  '';
+
+  build-system = [ poetry-core ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aiohttp
     pyroute2
   ];
@@ -39,23 +43,16 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  pytestFlagsArray = [
-    "--asyncio-mode=auto"
-  ];
+  pytestFlagsArray = [ "--asyncio-mode=auto" ];
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace "--cov=unifi_discovery --cov-report=term-missing:skip-covered" ""
-  '';
-
-  pythonImportsCheck = [
-    "unifi_discovery"
-  ];
+  pythonImportsCheck = [ "unifi_discovery" ];
 
   meta = with lib; {
     description = "Module to discover Unifi devices";
     homepage = "https://github.com/bdraco/unifi-discovery";
+    changelog = "https://github.com/bdraco/unifi-discovery/releases/tag/v${version}";
     license = with licenses; [ asl20 ];
     maintainers = with maintainers; [ fab ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/python-modules/weaviate-client/default.nix b/pkgs/development/python-modules/weaviate-client/default.nix
index 8e5b16ef00159..d9916af5069d8 100644
--- a/pkgs/development/python-modules/weaviate-client/default.nix
+++ b/pkgs/development/python-modules/weaviate-client/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "weaviate-client";
-  version = "4.6.2";
+  version = "4.6.3";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "weaviate";
     repo = "weaviate-python-client";
     rev = "refs/tags/v${version}";
-    hash = "sha256-BegAiAOhVafH7NWVgayRbdLKBYjWmD5zC6P7tU11XKM=";
+    hash = "sha256-v8I0ovH99q5uYlnbZsQYgL9mg3n9i59W2n6/d9IiKyQ=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/webdriver-manager/default.nix b/pkgs/development/python-modules/webdriver-manager/default.nix
index 6680fa7eea6b1..411d5b9b78da3 100644
--- a/pkgs/development/python-modules/webdriver-manager/default.nix
+++ b/pkgs/development/python-modules/webdriver-manager/default.nix
@@ -1,14 +1,15 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, packaging
-, pybrowsers
-, pytestCheckHook
-, python-dotenv
-, pythonOlder
-, requests
-, selenium
-, setuptools
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  packaging,
+  pybrowsers,
+  pytestCheckHook,
+  python-dotenv,
+  pythonOlder,
+  requests,
+  selenium,
+  setuptools,
 }:
 
 buildPythonPackage rec {
@@ -25,11 +26,11 @@ buildPythonPackage rec {
     hash = "sha256-PdUlloJ4DncnktKQHofn/OLVrgSVyWhaeEEhl3Hgjek=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  __darwinAllowLocalNetworking = true;
+
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     packaging
     python-dotenv
     requests
@@ -41,9 +42,7 @@ buildPythonPackage rec {
     selenium
   ];
 
-  pythonImportsCheck = [
-    "webdriver_manager"
-  ];
+  pythonImportsCheck = [ "webdriver_manager" ];
 
   disabledTestPaths = [
     # Tests require network access and browsers available
@@ -69,5 +68,6 @@ buildPythonPackage rec {
     changelog = "https://github.com/SergeyPirogov/webdriver_manager/blob/${version}/CHANGELOG.md";
     license = licenses.asl20;
     maintainers = with maintainers; [ fab ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/python-modules/weconnect-mqtt/default.nix b/pkgs/development/python-modules/weconnect-mqtt/default.nix
index 003614876b98a..30e5accbb3cf2 100644
--- a/pkgs/development/python-modules/weconnect-mqtt/default.nix
+++ b/pkgs/development/python-modules/weconnect-mqtt/default.nix
@@ -1,17 +1,19 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pytestCheckHook
-, pythonOlder
-, paho-mqtt
-, python-dateutil
-, weconnect
-, setuptools
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  paho-mqtt,
+  pytestCheckHook,
+  python-dateutil,
+  pythonOlder,
+  pythonRelaxDepsHook,
+  setuptools,
+  weconnect,
 }:
 
 buildPythonPackage rec {
   pname = "weconnect-mqtt";
-  version = "0.49.0";
+  version = "0.48.4";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -20,7 +22,7 @@ buildPythonPackage rec {
     owner = "tillsteinbach";
     repo = "WeConnect-mqtt";
     rev = "refs/tags/v${version}";
-    hash = "sha256-V96fdy6h012SbP3tyOMniAwLf/1+iKzTc9WnevAVwTI=";
+    hash = "sha256-Yv6CAGTDi4P9pImLxVk2QkZ014iqQ8UMBUeiyZWnYiQ=";
   };
 
   postPatch = ''
@@ -33,30 +35,28 @@ buildPythonPackage rec {
       --replace-fail "pytest-cov" ""
   '';
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  pythonRelaxDeps = [ "python-dateutil" ];
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  nativeBuildInputs = [ pythonRelaxDepsHook ];
+
+  dependencies = [
     paho-mqtt
     python-dateutil
     weconnect
   ] ++ weconnect.optional-dependencies.Images;
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "weconnect_mqtt"
-  ];
+  pythonImportsCheck = [ "weconnect_mqtt" ];
 
   meta = with lib; {
     description = "Python client that publishes data from Volkswagen WeConnect";
-    mainProgram = "weconnect-mqtt";
     homepage = "https://github.com/tillsteinbach/WeConnect-mqtt";
     changelog = "https://github.com/tillsteinbach/WeConnect-mqtt/releases/tag/v${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
+    mainProgram = "weconnect-mqtt";
   };
 }
diff --git a/pkgs/development/python-modules/yapf/default.nix b/pkgs/development/python-modules/yapf/default.nix
index 01b84b2f3dc21..38e62c57eef81 100644
--- a/pkgs/development/python-modules/yapf/default.nix
+++ b/pkgs/development/python-modules/yapf/default.nix
@@ -1,17 +1,13 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-
-# build-system
-, setuptools
-
-# dependencies
-, importlib-metadata
-, platformdirs
-, tomli
-
-# tests
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  setuptools,
+  importlib-metadata,
+  platformdirs,
+  tomli,
+  pythonOlder,
+  pytestCheckHook,
 }:
 
 buildPythonPackage rec {
@@ -19,27 +15,22 @@ buildPythonPackage rec {
   version = "0.40.2";
   pyproject = true;
 
+  disabled = pythonOlder "3.7";
+
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-TauKXtcTTibVfBZHx0g6+z8TaHi1eQYreGyboWuUY3s=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     importlib-metadata
     platformdirs
     tomli
   ];
 
-  # nose is unavailable on pypy
-  #doCheck = !isPyPy;
-
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
   meta = {
     changelog = "https://github.com/google/yapf/blob/v${version}/CHANGELOG.md";
@@ -67,6 +58,9 @@ buildPythonPackage rec {
     '';
     license = lib.licenses.asl20;
     mainProgram = "yapf";
-    maintainers = with lib.maintainers; [ AndersonTorres siddharthist ];
+    maintainers = with lib.maintainers; [
+      AndersonTorres
+      siddharthist
+    ];
   };
 }
diff --git a/pkgs/development/tools/parsing/antlr/2.7.7.nix b/pkgs/development/tools/parsing/antlr/2.7.7.nix
index b7437d70bf80f..a47918f4354b1 100644
--- a/pkgs/development/tools/parsing/antlr/2.7.7.nix
+++ b/pkgs/development/tools/parsing/antlr/2.7.7.nix
@@ -10,6 +10,8 @@ stdenv.mkDerivation rec {
   patches = [ ./2.7.7-fixes.patch ];
   buildInputs = [ jdk ];
 
+  CXXFLAGS = lib.optionalString stdenv.isDarwin "-D_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION";
+
   meta = with lib; {
     description = "Powerful parser generator";
     longDescription = ''