From c0d1effd7ca2562b247b3f0a3bf4c56d47571ae9 Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Wed, 14 Jan 2026 00:44:17 +0100 Subject: [PATCH 1/3] python313Packages.tubes: remove unused dependency --- pkgs/development/python-modules/tubes/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/development/python-modules/tubes/default.nix b/pkgs/development/python-modules/tubes/default.nix index 667863d985cb..34e6b395de89 100644 --- a/pkgs/development/python-modules/tubes/default.nix +++ b/pkgs/development/python-modules/tubes/default.nix @@ -3,7 +3,6 @@ buildPythonPackage, fetchFromGitHub, python, - characteristic, six, twisted, }: @@ -21,7 +20,6 @@ buildPythonPackage { }; propagatedBuildInputs = [ - characteristic six twisted ]; From fa0e9ffea09d9a72afb20dfb4fc94f87199c8f32 Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Wed, 14 Jan 2026 00:42:28 +0100 Subject: [PATCH 2/3] python313Packages.characteristic: drop --- .../python-modules/characteristic/default.nix | 26 ------------------- pkgs/top-level/python-aliases.nix | 1 + pkgs/top-level/python-packages.nix | 2 -- 3 files changed, 1 insertion(+), 28 deletions(-) delete mode 100644 pkgs/development/python-modules/characteristic/default.nix diff --git a/pkgs/development/python-modules/characteristic/default.nix b/pkgs/development/python-modules/characteristic/default.nix deleted file mode 100644 index 93e18a068244..000000000000 --- a/pkgs/development/python-modules/characteristic/default.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ - buildPythonPackage, - fetchPypi, - pytest, -}: - -buildPythonPackage rec { - pname = "characteristic"; - version = "14.3.0"; - format = "setuptools"; - src = fetchPypi { - inherit pname version; - sha256 = "ded68d4e424115ed44e5c83c2a901a0b6157a959079d7591d92106ffd3ada380"; - }; - - nativeCheckInputs = [ pytest ]; - - postPatch = '' - substituteInPlace setup.cfg --replace "[pytest]" "[tool:pytest]" - ''; - - meta = { - description = "Python attributes without boilerplate"; - homepage = "https://characteristic.readthedocs.org"; - }; -} diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index 0378e92e1de0..c074f3396bb6 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -95,6 +95,7 @@ mapAliases { can = throw "'can' has been renamed to/replaced by 'python-can'"; # Converted to throw 2025-10-29 casbin = pycasbin; # added 2025-06-12 cchardet = throw "'cchardet' has been renamed to/replaced by 'faust-cchardet'"; # Converted to throw 2025-10-29 + characteristic = throw "'characteristic' has been removed because it is no longer maintained upstream"; # Added 2026-01-14 cirq-rigetti = throw "cirq-rigetti was removed because it is no longer provided by upstream"; # added 2025-09-13 class-registry = throw "'class-registry' has been renamed to/replaced by 'phx-class-registry'"; # Converted to throw 2025-10-29 ColanderAlchemy = throw "'ColanderAlchemy' has been renamed to/replaced by 'colanderalchemy'"; # Converted to throw 2025-10-29 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index a2bbbc404c6b..44275d6dd740 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2613,8 +2613,6 @@ self: super: with self; { character-encoding-utils = callPackage ../development/python-modules/character-encoding-utils { }; - characteristic = callPackage ../development/python-modules/characteristic { }; - chardet = callPackage ../development/python-modules/chardet { }; charset-normalizer = callPackage ../development/python-modules/charset-normalizer { }; From 37ebbc1336a1b5d31c559d2a5a61b85642dd3663 Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Wed, 14 Jan 2026 01:14:41 +0100 Subject: [PATCH 3/3] python313Packages.nox: use attrs --- pkgs/by-name/no/nox/move-to-attrs.patch | 41 +++++++++++++++++++++++++ pkgs/by-name/no/nox/package.nix | 8 +++-- 2 files changed, 47 insertions(+), 2 deletions(-) create mode 100644 pkgs/by-name/no/nox/move-to-attrs.patch diff --git a/pkgs/by-name/no/nox/move-to-attrs.patch b/pkgs/by-name/no/nox/move-to-attrs.patch new file mode 100644 index 000000000000..3804f1ddc5bc --- /dev/null +++ b/pkgs/by-name/no/nox/move-to-attrs.patch @@ -0,0 +1,41 @@ +diff --git a/nox/update.py b/nox/update.py +index ea4425f..3101ab9 100644 +--- a/nox/update.py ++++ b/nox/update.py +@@ -1,3 +1,4 @@ ++import attrs + import click + import re + import subprocess +@@ -6,15 +7,17 @@ from enum import Enum + from bisect import bisect + from pkg_resources import parse_version + from pathlib import Path +-from characteristic import attributes + from collections import defaultdict + + def query(*args): + return subprocess.check_output(['nix-store', '--query'] + list(args), + universal_newlines=True) + +-@attributes(['full_name', 'path'], apply_with_init=False) ++@attrs.define(init=False) + class NixPath: ++ full_name: str = attrs.field(default=None) ++ path: str = attrs.field(default=None) ++ + def __init__(self, path): + self.path = path + self.is_drv = self.path.endswith('.drv') +diff --git a/requirements.txt b/requirements.txt +index a7bfc0e..4298b69 100644 +--- a/requirements.txt ++++ b/requirements.txt +@@ -1,4 +1,4 @@ ++attrs + click + dogpile.cache +-characteristic +-requests +\ No newline at end of file ++requests diff --git a/pkgs/by-name/no/nox/package.nix b/pkgs/by-name/no/nox/package.nix index 80d608fd122d..51c6876415c5 100644 --- a/pkgs/by-name/no/nox/package.nix +++ b/pkgs/by-name/no/nox/package.nix @@ -14,7 +14,11 @@ python3Packages.buildPythonApplication rec { sha256 = "1qcbhdnhdhhv7q6cqdgv0q55ic8fk18526zn2yb12x9r1s0lfp9z"; }; - patches = [ ./nox-review-wip.patch ]; + patches = [ + ./nox-review-wip.patch + # https://github.com/madjar/nox/pull/100 + ./move-to-attrs.patch + ]; build-system = with python3Packages; [ setuptools @@ -25,7 +29,7 @@ python3Packages.buildPythonApplication rec { dogpile-cache click requests - characteristic + attrs setuptools # pkg_resources is imported during runtime ];