From a044feae132d42242438ef4ed3254770bfce0c60 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 10 Aug 2024 01:02:41 +0100 Subject: [PATCH 1/8] python3{11,12}.flask-admin: drop optional boto dependency Pending migration to boto3: . --- pkgs/development/python-modules/flask-admin/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/development/python-modules/flask-admin/default.nix b/pkgs/development/python-modules/flask-admin/default.nix index 38ab5efc747032e..e9da4f44b665953 100644 --- a/pkgs/development/python-modules/flask-admin/default.nix +++ b/pkgs/development/python-modules/flask-admin/default.nix @@ -1,7 +1,6 @@ { lib, azure-storage-blob, - boto, buildPythonPackage, fetchpatch, fetchFromGitHub, @@ -53,7 +52,6 @@ buildPythonPackage rec { ]; optional-dependencies = { - aws = [ boto ]; azure = [ azure-storage-blob ]; }; From 76e8642c948313de4080b27aee8c404fac2771cd Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 22 Sep 2024 12:44:25 +0100 Subject: [PATCH 2/8] python3{11,12}Packages.gcs-oauth2-boto-plugin: drop This is a plugin for boto, which has been deprecated for years, and is broken and due for removal. --- .../gcs-oauth2-boto-plugin/default.nix | 61 ------------------- pkgs/top-level/python-aliases.nix | 1 + pkgs/top-level/python-packages.nix | 2 - 3 files changed, 1 insertion(+), 63 deletions(-) delete mode 100644 pkgs/development/python-modules/gcs-oauth2-boto-plugin/default.nix diff --git a/pkgs/development/python-modules/gcs-oauth2-boto-plugin/default.nix b/pkgs/development/python-modules/gcs-oauth2-boto-plugin/default.nix deleted file mode 100644 index 0cb900cffb8d9f7..000000000000000 --- a/pkgs/development/python-modules/gcs-oauth2-boto-plugin/default.nix +++ /dev/null @@ -1,61 +0,0 @@ -{ - lib, - boto, - buildPythonPackage, - fetchFromGitHub, - freezegun, - google-reauth, - httplib2, - oauth2client, - pyopenssl, - pytestCheckHook, - pythonOlder, - retry-decorator, - rsa, - six, -}: - -buildPythonPackage rec { - pname = "gcs-oauth2-boto-plugin"; - version = "3.0"; - format = "setuptools"; - - disabled = pythonOlder "3.7"; - - src = fetchFromGitHub { - owner = "GoogleCloudPlatform"; - repo = pname; - rev = "refs/tags/v${version}"; - hash = "sha256-slTxh2j9VhLiSyiTmJIFFakzpzH/+mgilDRxx0VqqKQ="; - }; - - postPatch = '' - substituteInPlace setup.py \ - --replace "rsa==4.7.2" "rsa" \ - --replace "version='2.7'" "version='${version}'" - ''; - - propagatedBuildInputs = [ - boto - freezegun - google-reauth - httplib2 - oauth2client - pyopenssl - retry-decorator - rsa - six - ]; - - nativeCheckInputs = [ pytestCheckHook ]; - - pythonImportsCheck = [ "gcs_oauth2_boto_plugin" ]; - - meta = with lib; { - description = "Auth plugin allowing use the use of OAuth 2.0 credentials for Google Cloud Storage"; - homepage = "https://github.com/GoogleCloudPlatform/gcs-oauth2-boto-plugin"; - changelog = "https://github.com/GoogleCloudPlatform/gcs-oauth2-boto-plugin/releases/tag/v${version}"; - license = with licenses; [ asl20 ]; - maintainers = with maintainers; [ fab ]; - }; -} diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index 3bcb357458f85a1..42d79895a7430cc 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -219,6 +219,7 @@ mapAliases ({ fritzprofiles = throw "fritzprofiles was removed from nixpkgs, because it was removed as dependency of home-assistant for which it was pacakged."; # added 2024-01-05 garages-amsterdam = throw "garages-amsterdam has been renamed odp-amsterdam."; # added 2023-01-04 garminconnect-ha = garminconnect; # added 2022-02-05 + gcs-oauth2-boto-plugin = throw "gcs-oauth2-boto-plugin was removed as it depends on the removed boto package"; # Added 2024-09-22 gdtoolkit = throw "gdtoolkit has been promoted to a top-level attribute name: `pkgs.gdtoolkit`"; # added 2023-02-15 GeoIP = geoip; # added 2023-02-19 gigalixir = throw "gigalixir has been promoted to a top-level attribute name: `pkgs.gigalixir`"; # Added 2022-10-02 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index a9231aecd6e8eb2..98a9aaef74c911f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4873,8 +4873,6 @@ self: super: with self; { gcovr = callPackage ../development/python-modules/gcovr { }; - gcs-oauth2-boto-plugin = callPackage ../development/python-modules/gcs-oauth2-boto-plugin { }; - gcsa = callPackage ../development/python-modules/gcsa { }; gcsfs = callPackage ../development/python-modules/gcsfs { }; From 9437aa95241fa1f97bbaddcc117e68e6c07ffaa2 Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 22 Sep 2024 12:44:46 +0100 Subject: [PATCH 3/8] python3{11,12}Packages.qds-sdk: drop No release in four years and depends on the deprecated and broken boto package; to quote the README: > ## Where are the maintainers ? > > Qubole was acquired. All the maintainers of this repo have moved > on. Some of the employees founded ClearFeed. Others are at big data > teams in Microsoft, Amazon et al. --- .../python-modules/qds-sdk/default.nix | 51 ------------------- pkgs/top-level/python-aliases.nix | 1 + pkgs/top-level/python-packages.nix | 2 - 3 files changed, 1 insertion(+), 53 deletions(-) delete mode 100644 pkgs/development/python-modules/qds-sdk/default.nix diff --git a/pkgs/development/python-modules/qds-sdk/default.nix b/pkgs/development/python-modules/qds-sdk/default.nix deleted file mode 100644 index 34876b7aaa856f1..000000000000000 --- a/pkgs/development/python-modules/qds-sdk/default.nix +++ /dev/null @@ -1,51 +0,0 @@ -{ - lib, - buildPythonPackage, - fetchFromGitHub, - setuptools, - boto, - inflection, - requests, - six, - urllib3, - mock, - pytestCheckHook, -}: - -buildPythonPackage rec { - pname = "qds-sdk"; - version = "1.16.1"; - pyproject = true; - - src = fetchFromGitHub { - owner = "qubole"; - repo = "qds-sdk-py"; - rev = "refs/tags/V${version}"; - hash = "sha256-8aPIE2E3Fy2EiBM2FPRyjnJolIBdOzafI3Fvlod5hxU="; - }; - - nativeBuildInputs = [ setuptools ]; - - propagatedBuildInputs = [ - boto - inflection - requests - six - urllib3 - ]; - - nativeCheckInputs = [ - pytestCheckHook - mock - ]; - - pythonImportsCheck = [ "qds_sdk" ]; - - meta = with lib; { - description = "Python module that provides the tools you need to authenticate with, and use the Qubole Data Service API"; - homepage = "https://github.com/qubole/qds-sdk-py"; - license = licenses.asl20; - maintainers = with maintainers; [ shahrukh330 ]; - mainProgram = "qds.py"; - }; -} diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index 42d79895a7430cc..f5bd7a1e5d3add9 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -520,6 +520,7 @@ mapAliases ({ pyxb = throw "pyxb has been removed, its last release was in 2017 and it has finally been archived in April 2023."; # added 2024-01-05 pyzufall = throw "pyzufall was removed, because it is no longer maintained"; # added 2024-05-14 qasm2image = throw "qasm2image is no longer maintained (since November 2018), and is not compatible with the latest pythonPackages.qiskit versions."; # added 2020-12-09 + qds-sdk = throw "qds-sdk was removed as it is unmaintained upstream and depends on the removed boto package"; # Added 2024-09-22 qds_sdk = qds-sdk; # added 2023-10-21 Quandl = quandl; # added 2023-02-19 querystring_parser = querystring-parser; # added 2024-01-07 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 98a9aaef74c911f..ade493e873de564 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13151,8 +13151,6 @@ self: super: with self; { qdrant-client = callPackage ../development/python-modules/qdrant-client { }; - qds-sdk = callPackage ../development/python-modules/qds-sdk { }; - qgrid = callPackage ../development/python-modules/qgrid { }; qemu = callPackage ../development/python-modules/qemu { From 2ffdba973ccab1a88ad2381fa5b65c6fa8973bd7 Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 22 Sep 2024 12:47:30 +0100 Subject: [PATCH 4/8] nixops_unstablePlugins.nixops-aws: drop Marked as broken for months, and depends on boto which has been deprecated for years and is now also broken and due for removal. --- .../networking/cluster/nixops/default.nix | 6 +- .../cluster/nixops/plugins/nixops-aws.nix | 59 ------------------- pkgs/top-level/all-packages.nix | 2 +- 3 files changed, 3 insertions(+), 64 deletions(-) delete mode 100644 pkgs/applications/networking/cluster/nixops/plugins/nixops-aws.nix diff --git a/pkgs/applications/networking/cluster/nixops/default.nix b/pkgs/applications/networking/cluster/nixops/default.nix index d9d31d94ac96b92..88c426565fc4e70 100644 --- a/pkgs/applications/networking/cluster/nixops/default.nix +++ b/pkgs/applications/networking/cluster/nixops/default.nix @@ -19,13 +19,13 @@ let }; plugins = ps: _super: with ps; rec { - nixops-aws = callPackage ./plugins/nixops-aws.nix { }; nixops-digitalocean = callPackage ./plugins/nixops-digitalocean.nix { }; nixops-encrypted-links = callPackage ./plugins/nixops-encrypted-links.nix { }; nixops-hercules-ci = callPackage ./plugins/nixops-hercules-ci.nix { }; nixops-vbox = callPackage ./plugins/nixops-vbox.nix { }; nixos-modules-contrib = callPackage ./plugins/nixos-modules-contrib.nix { }; + nixops-aws = throw "nixops-aws was broken and was removed from nixpkgs"; nixops-gce = throw "nixops-gce was broken and was removed from nixpkgs"; nixops-libvirtd = throw "nixops-libvirtd was broken and was removed from nixpkgs"; nixops-hetzner = throw "nixops-hetzner was broken and was removed from nixpkgs"; @@ -42,7 +42,7 @@ let selectedPlugins = []; # selector is a function mapping pythonPackages to a list of plugins - # e.g. nixops_unstable.withPlugins (ps: with ps; [ nixops-aws ]) + # e.g. nixops_unstable.withPlugins (ps: with ps; [ nixops-digitalocean ]) withPlugins = selector: this.extend (this: _old: { selectedPlugins = selector this.availablePlugins; @@ -109,8 +109,6 @@ in # Not recommended; too fragile. nixops_unstable_full = minimal.withPlugins (ps: [ - # currently broken - # ps.nixops-aws ps.nixops-digitalocean ps.nixops-encrypted-links ps.nixops-hercules-ci diff --git a/pkgs/applications/networking/cluster/nixops/plugins/nixops-aws.nix b/pkgs/applications/networking/cluster/nixops/plugins/nixops-aws.nix deleted file mode 100644 index 895794d3e0f66e5..000000000000000 --- a/pkgs/applications/networking/cluster/nixops/plugins/nixops-aws.nix +++ /dev/null @@ -1,59 +0,0 @@ -{ lib -, buildPythonPackage -, fetchFromGitHub -, unstableGitUpdater -, poetry-core -, boto -, boto3 -, nixops -, nixos-modules-contrib -, typing-extensions -}: - -buildPythonPackage { - pname = "nixops-aws"; - version = "1.0.0-unstable-2024-02-29"; - pyproject = true; - - src = fetchFromGitHub { - owner = "NixOS"; - repo = "nixops-aws"; - rev = "d173b2f14ec767d782ceab45fb22b32fe3b5a1f7"; - hash = "sha256-ocTtc7POt1bugb9Bki2ew2Eh5uc933GftNw1twoOJsc="; - }; - - postPatch = '' - substituteInPlace pyproject.toml \ - --replace poetry.masonry.api poetry.core.masonry.api \ - --replace "poetry>=" "poetry-core>=" - ''; - - nativeBuildInputs = [ - poetry-core - ]; - - buildInputs = [ - nixops - ]; - - propagatedBuildInputs = [ - boto - boto3 - nixos-modules-contrib - typing-extensions - ]; - - pythonImportsCheck = [ "nixops_aws" ]; - - passthru.updateScript = unstableGitUpdater { - tagPrefix = "v"; - }; - - meta = with lib; { - description = "AWS plugin for NixOps"; - homepage = "https://github.com/NixOS/nixops-aws"; - license = licenses.lgpl3Only; - broken = true; # fails with `nose-1.3.7 not supported for interpreter python3.12` - maintainers = nixops.meta.maintainers; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 43b103ea11fae38..b3e31eab26739cd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -37834,7 +37834,7 @@ with pkgs; # Not recommended; too fragile nixops_unstable_full; - # Useful with ofborg, e.g. commit prefix `nixops_unstablePlugins.nixops-aws: ...` to trigger automatically. + # Useful with ofborg, e.g. commit prefix `nixops_unstablePlugins.nixops-digitalocean: ...` to trigger automatically. nixops_unstablePlugins = recurseIntoAttrs nixops_unstable_minimal.availablePlugins; /* From df69ab8cece22c13259faa3de8461aa08501610d Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 22 Sep 2024 12:50:54 +0100 Subject: [PATCH 5/8] wal_e: drop No release in almost half a decade, no maintainer in Nixpkgs, and the README describes it as obsolete and recommends alternatives: . --- pkgs/tools/backup/wal-e/default.nix | 37 ----------------------------- pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 2 -- 3 files changed, 1 insertion(+), 39 deletions(-) delete mode 100644 pkgs/tools/backup/wal-e/default.nix diff --git a/pkgs/tools/backup/wal-e/default.nix b/pkgs/tools/backup/wal-e/default.nix deleted file mode 100644 index f1dda5da280935d..000000000000000 --- a/pkgs/tools/backup/wal-e/default.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ lib, fetchFromGitHub, python3Packages, lzop, postgresql, pv }: - -python3Packages.buildPythonApplication rec { - pname = "wal-e"; - version = "1.1.1"; - - namePrefix = ""; - - src = fetchFromGitHub { - owner = "wal-e"; - repo = "wal-e"; - rev = "v${version}"; - hash = "sha256-I6suHkAYzDtlNFNPH4SziY93Ryp+NTHkCBuojDvv+U4="; - }; - - # needs tox - doCheck = false; - - propagatedBuildInputs = (with python3Packages; [ - boto - gevent - google-cloud-storage - ]) ++ [ - postgresql - lzop - pv - ]; - - meta = { - description = "Postgres WAL-shipping disaster recovery and replication toolkit"; - mainProgram = "wal-e"; - homepage = "https://github.com/wal-e/wal-e"; - maintainers = [ ]; - license = lib.licenses.bsd3; - platforms = lib.platforms.linux; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index b00cc4898cc303c..97db40c618c45cb 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1651,6 +1651,7 @@ mapAliases ({ ### W ### wakatime = wakatime-cli; # 2024-05-30 + wal_e = throw "wal_e was removed as it is unmaintained upstream and depends on the removed boto package; upstream recommends using wal-g or pgbackrest"; # Added 2024-09-22 waybar-hyprland = throw "waybar-hyprland has been removed: hyprland support is now built into waybar by default."; # Added 2023-08-21 wayfireApplications-unwrapped = throw '' 'wayfireApplications-unwrapped.wayfire' has been renamed to/replaced by 'wayfire' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b3e31eab26739cd..e6a9415175eee6f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13582,8 +13582,6 @@ with pkgs; wego = callPackage ../applications/misc/wego { }; - wal_e = callPackage ../tools/backup/wal-e { }; - wander = callPackage ../tools/admin/wander { }; watchexec = callPackage ../tools/misc/watchexec { From 8caee3d83de47efef2d87a46cd40578ae0260eb7 Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 22 Sep 2024 12:50:54 +0100 Subject: [PATCH 6/8] kargo: drop No release since 2017 and deprecated upstream; see . --- pkgs/tools/misc/kargo/default.nix | 39 ------------------------------- pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 2 -- 3 files changed, 1 insertion(+), 41 deletions(-) delete mode 100644 pkgs/tools/misc/kargo/default.nix diff --git a/pkgs/tools/misc/kargo/default.nix b/pkgs/tools/misc/kargo/default.nix deleted file mode 100644 index 15310fb9350a866..000000000000000 --- a/pkgs/tools/misc/kargo/default.nix +++ /dev/null @@ -1,39 +0,0 @@ -{ lib, fetchurl, python3Packages }: - -with python3Packages; - -buildPythonApplication rec { - version = "0.4.8"; - pname = "kargo"; - - src = fetchurl { - url = "mirror://pypi/k/kargo/${pname}-${version}.tar.gz"; - sha256 = "1iq3vrmglag9gpsir03yz7556m0bz99nwb2mf594378cqzbr6db3"; - }; - - propagatedBuildInputs = [ - ansible-core - boto - cffi - cryptography - libcloud - markupsafe - netaddr - pyasn1 - requests - setuptools - ]; - - checkPhase = '' - HOME=$TMPDIR $out/bin/kargo -v - ''; - - meta = with lib; { - homepage = "https://github.com/kubespray/kargo-cli"; - description = "Tool helps to deploy a kubernetes cluster with Ansible"; - platforms = platforms.all; - license = licenses.gpl3; - maintainers = [ ]; - mainProgram = "kargo"; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 97db40c618c45cb..264c231fa20f76d 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -756,6 +756,7 @@ mapAliases ({ kube3d = k3d; # Added 2022-0705 kafkacat = kcat; # Added 2021-10-07 kak-lsp = kakoune-lsp; # Added 2024-04-01 + kargo = throw "kargo was removed as it is deprecated upstream and depends on the removed boto package"; # Added 2024-09-22 kdbplus = throw "'kdbplus' has been removed from nixpkgs"; # Added 2024-05-06 kdeconnect = plasma5Packages.kdeconnect-kde; # Added 2020-10-28 keepassx = throw "KeePassX is no longer actively developed. Please consider KeePassXC as a maintained alternative."; # Added 2023-02-17 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e6a9415175eee6f..f41e712c6e30008 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9038,8 +9038,6 @@ with pkgs; k2pdfopt = callPackage ../applications/misc/k2pdfopt { }; - kargo = callPackage ../tools/misc/kargo { }; - kazam = callPackage ../applications/video/kazam { }; kalibrate-rtl = callPackage ../applications/radio/kalibrate-rtl { }; From 51088c1de4899b7c0caedce8928e7ba744229c3f Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 22 Sep 2024 13:51:28 +0100 Subject: [PATCH 7/8] toil: drop MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This package has been broken since 24.05 (`pkg_resources` error when running `toil --help`), and hasn’t built since Python 3.12 became the default. There have been two major upstream releases since this package was last updated. I tried to package the newest version, which drops the boto dependency, but unfortunately it requires obsolete versions of other Python libraries that we no longer package. Since it’s been broken for this long anyway and can’t be updated, let’s drop it for now. --- .../science/misc/toil/default.nix | 90 ------------------- pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 2 - 3 files changed, 1 insertion(+), 92 deletions(-) delete mode 100644 pkgs/applications/science/misc/toil/default.nix diff --git a/pkgs/applications/science/misc/toil/default.nix b/pkgs/applications/science/misc/toil/default.nix deleted file mode 100644 index 9142676fff48df7..000000000000000 --- a/pkgs/applications/science/misc/toil/default.nix +++ /dev/null @@ -1,90 +0,0 @@ -{ lib -, fetchFromGitHub -, python3 -, rsync -}: - -python3.pkgs.buildPythonApplication rec { - pname = "toil"; - version = "5.12.0"; - format = "setuptools"; - - src = fetchFromGitHub { - owner = "DataBiosphere"; - repo = pname; - rev = "refs/tags/releases/${version}"; - hash = "sha256-cTpbQo9tPZifUO59vbnIa3XUinFJ2/5Slfe4yszglFM="; - }; - - propagatedBuildInputs = with python3.pkgs; [ - addict - dill - docker - enlighten - psutil - py-tes - pypubsub - python-dateutil - pytz - pyyaml - requests - typing-extensions - ]; - - nativeCheckInputs = [ - rsync - ] ++ (with python3.pkgs; [ - boto - botocore - flask - pytestCheckHook - stubserver - ]); - - pytestFlagsArray = [ - "src/toil/test" - ]; - - pythonImportsCheck = [ - "toil" - ]; - - disabledTestPaths = [ - # Tests are reaching their timeout - "src/toil/test/docs/scriptsTest.py" - "src/toil/test/jobStores/jobStoreTest.py" - "src/toil/test/provisioners/aws/awsProvisionerTest.py" - "src/toil/test/src" - "src/toil/test/wdl" - "src/toil/test/utils/utilsTest.py" - "src/toil/test/cwl/cwlTest.py" - "src/toil/test/lib/test_ec2.py" - "src/toil/test/lib/aws/test_iam.py" - "src/toil/test/lib/aws/test_s3.py" - ]; - - disabledTests = [ - # Tests fail starting with 5.7.1 - "testServices" - "testConcurrencyWithDisk" - "testJobConcurrency" - "testNestedResourcesDoNotBlock" - "test_omp_threads" - "testFileSingle" - "testFileSingle10000" - "testFileSingleCheckpoints" - "testFileSingleNonCaching" - "testFetchJobStoreFiles" - "testFetchJobStoreFilesWSymlinks" - "testJobStoreContents" - "test_cwl_on_arm" - "test_cwl_toil_kill" - ]; - - meta = with lib; { - description = "Workflow engine written in pure Python"; - homepage = "https://toil.ucsc-cgl.org/"; - license = with licenses; [ asl20 ]; - maintainers = with maintainers; [ veprbl ]; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 264c231fa20f76d..5c26945985f4d7b 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1559,6 +1559,7 @@ mapAliases ({ tightvnc = throw "'tightvnc' has been removed as the version 1.3 is not maintained upstream anymore and is insecure"; # Added 2024-08-22 tixati = throw "'tixati' has been removed from nixpkgs as it is unfree and unmaintained"; # Added 2023-03-17 tkcvs = tkrev; # Added 2022-03-07 + toil = throw "toil was removed as it was broken and requires obsolete versions of libraries"; # Added 2024-09-22 tokodon = plasma5Packages.tokodon; tokyo-night-gtk = tokyonight-gtk-theme; # Added 2024-01-28 tomcat_connectors = apacheHttpdPackages.mod_jk; # Added 2024-06-07 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f41e712c6e30008..c6d64eb987e26dd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18809,8 +18809,6 @@ with pkgs; todoist-electron = callPackage ../applications/misc/todoist-electron { }; - toil = callPackage ../applications/science/misc/toil { }; - travis = callPackage ../development/tools/misc/travis { }; tree-sitter = makeOverridable (callPackage ../development/tools/parsing/tree-sitter) { From d1a97b0db859b33a50cdf4e290f2d21badc2eee2 Mon Sep 17 00:00:00 2001 From: Emily Date: Sat, 10 Aug 2024 01:02:41 +0100 Subject: [PATCH 8/8] python3{11,12}Packages.boto: drop Boto has not seen a release since 2018, and has been officially marked as deprecated in favour of boto3 and botocore since 2021. It has required downstream patching to keep it running on newer Python versions and is broken on the new default of Python 3.12. It also requires the obsolete nose test framework that we are in the process of removing. The few packages we carry that still require boto are in poor upstream maintenance state and some of those were already broken. The NixOps AWS plugin was the last holdout that justified keeping this package, but it is now also broken. --- .../boto/0005-Don-t-mock-list-subclass.patch | 21 ------ .../boto/bug-953970_python3.8-compat.patch | 53 --------------- .../python-modules/boto/default.nix | 66 ------------------- pkgs/top-level/python-aliases.nix | 1 + pkgs/top-level/python-packages.nix | 2 - 5 files changed, 1 insertion(+), 142 deletions(-) delete mode 100644 pkgs/development/python-modules/boto/0005-Don-t-mock-list-subclass.patch delete mode 100644 pkgs/development/python-modules/boto/bug-953970_python3.8-compat.patch delete mode 100644 pkgs/development/python-modules/boto/default.nix diff --git a/pkgs/development/python-modules/boto/0005-Don-t-mock-list-subclass.patch b/pkgs/development/python-modules/boto/0005-Don-t-mock-list-subclass.patch deleted file mode 100644 index 4add58640d7aecc..000000000000000 --- a/pkgs/development/python-modules/boto/0005-Don-t-mock-list-subclass.patch +++ /dev/null @@ -1,21 +0,0 @@ -From: Jochen Sprickerhof -Date: Thu, 15 Dec 2022 07:44:54 +0100 -Subject: Don't mock list subclass - ---- - tests/unit/ec2/test_volume.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tests/unit/ec2/test_volume.py b/tests/unit/ec2/test_volume.py -index 81d7f55..d4d8e4f 100644 ---- a/tests/unit/ec2/test_volume.py -+++ b/tests/unit/ec2/test_volume.py -@@ -55,7 +55,7 @@ class VolumeTests(unittest.TestCase): - @mock.patch("boto.resultset.ResultSet") - def test_startElement_with_name_tagSet_calls_ResultSet(self, ResultSet, startElement): - startElement.return_value = None -- result_set = mock.Mock(ResultSet([("item", Tag)])) -+ result_set = ResultSet([("item", Tag)]) - volume = Volume() - volume.tags = result_set - retval = volume.startElement("tagSet", None, None) diff --git a/pkgs/development/python-modules/boto/bug-953970_python3.8-compat.patch b/pkgs/development/python-modules/boto/bug-953970_python3.8-compat.patch deleted file mode 100644 index ac5621042375375..000000000000000 --- a/pkgs/development/python-modules/boto/bug-953970_python3.8-compat.patch +++ /dev/null @@ -1,53 +0,0 @@ -Index: python-boto/tests/unit/utils/test_utils.py -=================================================================== ---- python-boto.orig/tests/unit/utils/test_utils.py -+++ python-boto/tests/unit/utils/test_utils.py -@@ -85,7 +85,7 @@ class TestPassword(unittest.TestCase): - def hmac_hashfunc(cls, msg): - if not isinstance(msg, bytes): - msg = msg.encode('utf-8') -- return hmac.new(b'mysecretkey', msg) -+ return hmac.new(b'mysecretkey', msg, digestmod='sha256') - - class HMACPassword(Password): - hashfunc = hmac_hashfunc -@@ -95,15 +95,15 @@ class TestPassword(unittest.TestCase): - password.set('foo') - - self.assertEquals(str(password), -- hmac.new(b'mysecretkey', b'foo').hexdigest()) -+ hmac.new(b'mysecretkey', b'foo', digestmod='sha256').hexdigest()) - - def test_constructor(self): -- hmac_hashfunc = lambda msg: hmac.new(b'mysecretkey', msg) -+ hmac_hashfunc = lambda msg: hmac.new(b'mysecretkey', msg, digestmod='sha256') - - password = Password(hashfunc=hmac_hashfunc) - password.set('foo') - self.assertEquals(password.str, -- hmac.new(b'mysecretkey', b'foo').hexdigest()) -+ hmac.new(b'mysecretkey', b'foo', digestmod='sha256').hexdigest()) - - - class TestPythonizeName(unittest.TestCase): -Index: python-boto/boto/ecs/item.py -=================================================================== ---- python-boto.orig/boto/ecs/item.py -+++ python-boto/boto/ecs/item.py -@@ -22,6 +22,7 @@ - - import xml.sax - import cgi -+from html import escape - from boto.compat import six, StringIO - - class ResponseGroup(xml.sax.ContentHandler): -@@ -67,7 +68,7 @@ class ResponseGroup(xml.sax.ContentHandl - return None - - def endElement(self, name, value, connection): -- self._xml.write("%s" % (cgi.escape(value).replace("&", "&"), name)) -+ self._xml.write("%s" % (escape(value).replace("&", "&"), name)) - if len(self._nodepath) == 0: - return - obj = None diff --git a/pkgs/development/python-modules/boto/default.nix b/pkgs/development/python-modules/boto/default.nix deleted file mode 100644 index 3549c6986cf1346..000000000000000 --- a/pkgs/development/python-modules/boto/default.nix +++ /dev/null @@ -1,66 +0,0 @@ -{ - lib, - buildPythonPackage, - fetchPypi, - python, - nose, - mock, - requests, - httpretty, -}: - -buildPythonPackage rec { - pname = "boto"; - version = "2.49.0"; - format = "setuptools"; - - src = fetchPypi { - inherit pname version; - sha256 = "ea0d3b40a2d852767be77ca343b58a9e3a4b00d9db440efb8da74b4e58025e5a"; - }; - - patches = [ - # fixes hmac tests - # https://sources.debian.org/src/python-boto/2.49.0-4/debian/patches/bug-953970_python3.8-compat.patch/ - ./bug-953970_python3.8-compat.patch - # fixes test_startElement_with_name_tagSet_calls_ResultSet - # https://sources.debian.org/src/python-boto/2.49.0-4.1/debian/patches/0005-Don-t-mock-list-subclass.patch/ - ./0005-Don-t-mock-list-subclass.patch - ]; - - # boto is deprecated by upstream as of 2021-05-27 (https://github.com/boto/boto/commit/4980ac58764c3d401cb0b9552101f9c61c18f445) - # this patch is a bit simpler than https://github.com/boto/boto/pull/3898 - # as we don't have to take care of pythonOlder "3.3". - postPatch = '' - substituteInPlace boto/dynamodb/types.py --replace 'from collections import Mapping' 'from collections.abc import Mapping' - substituteInPlace boto/mws/connection.py --replace 'import collections' 'import collections.abc as collections' - ''; - - checkPhase = '' - ${python.interpreter} tests/test.py default - ''; - - nativeCheckInputs = [ - nose - mock - ]; - propagatedBuildInputs = [ - requests - httpretty - ]; - - meta = with lib; { - homepage = "https://github.com/boto/boto"; - license = licenses.mit; - description = "Python interface to Amazon Web Services"; - longDescription = '' - The boto module is an integrated interface to current and - future infrastructural services offered by Amazon Web - Services. This includes S3, SQS, EC2, among others. - ''; - maintainers = [ ]; - # Unmaintained since 2020, archived in the beginning of May 2024 and broken - # https://github.com/boto/boto/issues/3951 - broken = true; - }; -} diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index f5bd7a1e5d3add9..e78e763003d7a35 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -75,6 +75,7 @@ mapAliases ({ bitcoin-price-api = throw "bitcoin-price-api has been removed, it was using setuptools 2to3 translation feautre, which has been removed in setuptools 58"; # added 2022-02-15 BlinkStick = blinkstick; # added 2023-02-19 blockdiagcontrib-cisco = throw "blockdiagcontrib-cisco is not compatible with blockdiag 2.0.0 and has been removed."; # added 2020-11-29 + boto = throw "boto was removed as it is deprecated upstream, had not been updated since 2018, and failed to build; please use boto3 and botocore"; # Added 2024-09-22 bsblan = python-bsblan; # added 2022-11-04 btchip = btchip-python; # added 2023-03-03 buildbot = throw "use pkgs.buildbot instead"; # added 2022-04-07 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ade493e873de564..78429d458400714 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1790,8 +1790,6 @@ self: super: with self; { boto3-stubs = callPackage ../development/python-modules/boto3-stubs { }; - boto = callPackage ../development/python-modules/boto { }; - botocore = callPackage ../development/python-modules/botocore { }; botocore-stubs = callPackage ../development/python-modules/botocore-stubs { };