about summary refs log tree commit diff
diff options
context:
space:
mode:
authorFabian Affolter <fabian@affolter-engineering.ch>2024-06-29 10:48:04 +0200
committerGitHub <noreply@github.com>2024-06-29 10:48:04 +0200
commit4da2ae6fac4442fa35d0d84ff24e3f14f875eb16 (patch)
tree873e4b8d533abdfb27e776f965a05c9afdccbaac
parent766a29d745fc43842c4114971c01f02462bb491b (diff)
parent1cd6c81d12d1730ffc7ab8118c59cb771353562f (diff)
Merge pull request #322997 from fabaff/slackclient-remove
python312Packages.slackclient: rename
-rw-r--r--pkgs/applications/networking/opsdroid/default.nix76
-rw-r--r--pkgs/development/python-modules/aiohttp-middlewares/default.nix54
-rw-r--r--pkgs/development/python-modules/slackclient/default.nix94
-rw-r--r--pkgs/servers/home-assistant/component-packages.nix2
-rw-r--r--pkgs/servers/home-assistant/default.nix16
-rwxr-xr-xpkgs/servers/home-assistant/update-component-packages.py1
-rw-r--r--pkgs/top-level/python-aliases.nix1
-rw-r--r--pkgs/top-level/python-packages.nix4
8 files changed, 135 insertions, 113 deletions
diff --git a/pkgs/applications/networking/opsdroid/default.nix b/pkgs/applications/networking/opsdroid/default.nix
index bded5d6d2b356..7169850327be5 100644
--- a/pkgs/applications/networking/opsdroid/default.nix
+++ b/pkgs/applications/networking/opsdroid/default.nix
@@ -1,36 +1,80 @@
-{ lib, fetchFromGitHub, python3Packages }:
+{
+  lib,
+  fetchFromGitHub,
+  python3Packages,
+}:
 
 python3Packages.buildPythonPackage rec {
   pname = "opsdroid";
-  version = "0.25.0";
+  version = "0.30.0";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "opsdroid";
     repo = "opsdroid";
-    rev = "v${version}";
-    sha256 = "0f32jf2rds9543akysxinf3hsgzr0w880xwcrcm1r2r0nhp8b8s5";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-7H44wdhJD4Z6OP1sUmSGlepuvx+LlwKLq7iR8cwqR24=";
   };
 
-  disabled = !python3Packages.isPy3k;
+  build-system = with python3Packages; [ setuptools ];
 
-  # tests folder is not included in release
-  doCheck = false;
-
-  propagatedBuildInputs = with python3Packages; [
-    click babel opsdroid-get-image-size slackclient webexteamssdk bleach
-    parse emoji puremagic yamale nbformat websockets pycron nbconvert
-    aiohttp matrix-api-async aioredis aiosqlite arrow pyyaml motor regex
-    mattermostdriver setuptools voluptuous ibm-watson tailer multidict
-    watchgod get-video-properties appdirs bitstring matrix-nio
-  ] ++ matrix-nio.optional-dependencies.e2e;
+  dependencies =
+    with python3Packages;
+    [
+      aiohttp
+      aiohttp-middlewares
+      aioredis
+      aiosqlite
+      appdirs
+      arrow
+      babel
+      bitstring
+      bleach
+      # botbuilder-core, connector for teams
+      certifi
+      click
+      # dialogflow, connector for Dialogflow
+      dnspython
+      emoji
+      get-video-properties
+      ibm-watson
+      matrix-nio
+      mattermostdriver
+      motor
+      multidict
+      nbconvert
+      nbformat
+      opsdroid-get-image-size
+      parse
+      puremagic
+      pycron
+      python-olm
+      pyyaml
+      regex
+      rich
+      slack-sdk
+      tailer
+      voluptuous
+      watchgod
+      webexteamssdk
+      wrapt
+    ]
+    ++ matrix-nio.optional-dependencies.e2e;
 
   passthru.python = python3Packages.python;
 
+  # Tests are not included in releases
+  doCheck = false;
+
   meta = with lib; {
     description = "Open source chat-ops bot framework";
     homepage = "https://opsdroid.dev";
-    maintainers = with maintainers; [ globin willibutz ];
+    changelog = "https://github.com/opsdroid/opsdroid/releases/tag/v${version}";
     license = licenses.asl20;
+    maintainers = with maintainers; [
+      globin
+      willibutz
+    ];
     platforms = platforms.unix;
     mainProgram = "opsdroid";
   };
diff --git a/pkgs/development/python-modules/aiohttp-middlewares/default.nix b/pkgs/development/python-modules/aiohttp-middlewares/default.nix
new file mode 100644
index 0000000000000..e4fcfd671cb70
--- /dev/null
+++ b/pkgs/development/python-modules/aiohttp-middlewares/default.nix
@@ -0,0 +1,54 @@
+{
+  lib,
+  aiohttp,
+  async-timeout,
+  buildPythonPackage,
+  fetchFromGitHub,
+  poetry-core,
+  pytest-aiohttp,
+  pytestCheckHook,
+  pythonOlder,
+  yarl,
+}:
+
+buildPythonPackage rec {
+  pname = "aiohttp-middlewares";
+  version = "2.3.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "playpauseandstop";
+    repo = "aiohttp-middlewares";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-/xij16JUtq5T5KYinduEP+o4XxFQPyL7pfwvZnS96+U=";
+  };
+
+  postPatch = ''
+    sed -i "/addopts/d" pyproject.toml
+  '';
+
+  build-system = [ poetry-core ];
+
+  dependencies = [
+    aiohttp
+    async-timeout
+    yarl
+  ];
+
+  nativeCheckInputs = [
+    pytest-aiohttp
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "aiohttp_middlewares" ];
+
+  meta = with lib; {
+    description = "Collection of useful middlewares for aiohttp.web applications";
+    homepage = "https://github.com/playpauseandstop/aiohttp-middlewares";
+    changelog = "https://github.com/playpauseandstop/aiohttp-middlewares/blob/${version}/CHANGELOG.rst";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/slackclient/default.nix b/pkgs/development/python-modules/slackclient/default.nix
deleted file mode 100644
index 9f1d3e92c08d6..0000000000000
--- a/pkgs/development/python-modules/slackclient/default.nix
+++ /dev/null
@@ -1,94 +0,0 @@
-{
-  lib,
-  stdenv,
-  aiohttp,
-  boto3,
-  buildPythonPackage,
-  fetchFromGitHub,
-  flask,
-  flask-sockets,
-  pythonOlder,
-  mock,
-  moto,
-  psutil,
-  pytest-mock,
-  pytestCheckHook,
-  requests,
-  responses,
-  sqlalchemy,
-  websockets,
-  websocket-client,
-}:
-
-buildPythonPackage rec {
-  pname = "slackclient";
-  version = "3.29.0";
-  format = "setuptools";
-
-  disabled = pythonOlder "3.6";
-
-  src = fetchFromGitHub {
-    owner = "slackapi";
-    repo = "python-slack-sdk";
-    rev = "refs/tags/v${version}";
-    hash = "sha256-49dSRg0nrTXuXfnrC2/3p/zYMxouXO9FLqSBSxg4TcU=";
-  };
-
-  propagatedBuildInputs = [
-    aiohttp
-    websocket-client
-    requests
-  ];
-
-  nativeCheckInputs = [
-    boto3
-    flask
-    flask-sockets
-    mock
-    moto
-    psutil
-    pytest-mock
-    pytestCheckHook
-    responses
-    sqlalchemy
-    websockets
-  ];
-
-  pytestFlagsArray = [
-    # Exclude tests that requires network features
-    "--ignore=integration_tests"
-  ];
-
-  preCheck = ''
-    export HOME=$(mktemp -d)
-  '';
-
-  disabledTests =
-    [
-      "test_start_raises_an_error_if_rtm_ws_url_is_not_returned"
-      "test_interactions"
-      "test_send_message_while_disconnection"
-    ]
-    ++ lib.optionals stdenv.isDarwin [
-      # these fail with `ConnectionResetError: [Errno 54] Connection reset by peer`
-      "test_issue_690_oauth_access"
-      "test_issue_690_oauth_v2_access"
-      "test_send"
-      "test_send_attachments"
-      "test_send_blocks"
-      "test_send_dict"
-    ];
-
-  pythonImportsCheck = [ "slack" ];
-
-  meta = with lib; {
-    description = "Client for Slack, which supports the Slack Web API and Real Time Messaging (RTM) API";
-    homepage = "https://github.com/slackapi/python-slackclient";
-    changelog = "https://github.com/slackapi/python-slack-sdk/releases/tag/v${version}";
-    license = licenses.mit;
-    maintainers = with maintainers; [
-      flokli
-      psyanticy
-    ];
-  };
-}
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix
index c56be24eaac5e..e7db616aa9156 100644
--- a/pkgs/servers/home-assistant/component-packages.nix
+++ b/pkgs/servers/home-assistant/component-packages.nix
@@ -4094,7 +4094,7 @@
       ha-ffmpeg
     ];
     "slack" = ps: with ps; [
-      slackclient
+      slack-sdk
     ];
     "sleepiq" = ps: with ps; [
       asyncsleepiq
diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix
index 02f83ba82b62f..82822e1c1ff8b 100644
--- a/pkgs/servers/home-assistant/default.nix
+++ b/pkgs/servers/home-assistant/default.nix
@@ -441,6 +441,22 @@ let
         ];
       };
 
+      slack-sdk = super.slack-sdk.overridePythonAttrs (oldAttrs: rec {
+        version = "2.5.0";
+        src = fetchFromGitHub {
+          owner = "slackapi";
+          repo = "python-slackclient";
+          rev = "refs/tags/${version}";
+          hash = "sha256-U//HUe6e41wOOzoaDl4yXPnEASCzpGBIScHStWMN8tk=";
+        };
+        postPatch = ''
+          substituteInPlace setup.py \
+            --replace-fail "pytest-runner" ""
+        '';
+        pythonImportsCheck = [ "slack" ];
+        doCheck = false; # Tests changed a lot for > 3
+      });
+
       tuf = super.tuf.overridePythonAttrs rec {
         version = "2.1.0";
         src = fetchFromGitHub {
diff --git a/pkgs/servers/home-assistant/update-component-packages.py b/pkgs/servers/home-assistant/update-component-packages.py
index e25b60336140d..df410fb498627 100755
--- a/pkgs/servers/home-assistant/update-component-packages.py
+++ b/pkgs/servers/home-assistant/update-component-packages.py
@@ -42,6 +42,7 @@ PKG_PREFERENCES = {
     "fiblary3": "fiblary3-fork",  # https://github.com/home-assistant/core/issues/66466
     "HAP-python": "hap-python",
     "ollama-hass": "ollama",
+    "slackclient": "slack-sdk",
     "SQLAlchemy": "sqlalchemy",
     "tensorflow": "tensorflow",
     "yt-dlp": "yt-dlp",
diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix
index a10f40d615f62..09a3029bda537 100644
--- a/pkgs/top-level/python-aliases.nix
+++ b/pkgs/top-level/python-aliases.nix
@@ -504,6 +504,7 @@ mapAliases ({
   sharkiqpy = sharkiq; # added 2022-05-21
   shouldbe = throw "shouldbe was removed, because it was disabled on all python version since 3.8 and last updated in 2019."; # added 2024-05-12
   sip_4 = sip4; # added 2024-01-07
+  slackclient = slack-sdk; # added 2024-06-27
   ssh-mitm = throw "ssh-mitm was removed in favor of the top-level ssh-mitm"; # added 2023-05-09
   smart_open = smart-open; # added 2021-03-14
   smmap2 = throw "smmap2 has been deprecated, use smmap instead."; # added 2020-03-14
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index df249e3d46f00..17bc295d63f01 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -253,6 +253,8 @@ self: super: with self; {
 
   aiohttp-jinja2 = callPackage ../development/python-modules/aiohttp-jinja2 { };
 
+  aiohttp-middlewares = callPackage ../development/python-modules/aiohttp-middlewares { };
+
   aiohttp-oauthlib = callPackage ../development/python-modules/aiohttp-oauthlib { };
 
   aiohttp-openmetrics = callPackage ../development/python-modules/aiohttp-openmetrics { };
@@ -14167,8 +14169,6 @@ self: super: with self; {
 
   slack-sdk = callPackage ../development/python-modules/slack-sdk { };
 
-  slackclient = callPackage ../development/python-modules/slackclient { };
-
   sleekxmpp = callPackage ../development/python-modules/sleekxmpp { };
 
   sleepyq = callPackage ../development/python-modules/sleepyq { };