From cf17eba690195868bc1cb96bbb61e2f4b592445a Mon Sep 17 00:00:00 2001 From: qbisi Date: Wed, 30 Apr 2025 23:16:30 +0800 Subject: [PATCH] python312Packages.constantdict: init at 2025.1.1 --- .../python-modules/constantdict/default.nix | 45 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 47 insertions(+) create mode 100644 pkgs/development/python-modules/constantdict/default.nix diff --git a/pkgs/development/python-modules/constantdict/default.nix b/pkgs/development/python-modules/constantdict/default.nix new file mode 100644 index 000000000000..a0c00d6a8fe7 --- /dev/null +++ b/pkgs/development/python-modules/constantdict/default.nix @@ -0,0 +1,45 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + hatchling, + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "constantdict"; + version = "2025.1.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "matthiasdiener"; + repo = "constantdict"; + tag = "v${version}"; + hash = "sha256-M3duCafyJk/W3KIqP43ErXr/EfCj6/Sin6eCaaxyI5g="; + }; + + build-system = [ + hatchling + ]; + + pythonImportsCheck = [ + "constantdict" + ]; + + # Assumes that unpickling a pickled dict in a different Python process will result in a different hash. + # This doesn't seem to work in the Nix sandbox but works fine in a normal environment. + disabledTests = [ + "test_pickle_hash" + ]; + + nativeCheckInputs = [ pytestCheckHook ]; + + meta = { + homepage = "https://matthiasdiener.github.io/constantdict"; + downloadPage = "https://github.com/matthiasdiener/constantdict"; + description = "Immutable dictionary class for Python, implemented as a thin layer around Python's builtin dict class"; + changelog = "https://github.com/matthiasdiener/constantdict/releases/tag/${src.tag}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ qbisi ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 083dde0537f1..6bfe4b43ae21 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2805,6 +2805,8 @@ self: super: with self; { consonance = callPackage ../development/python-modules/consonance { }; + constantdict = callPackage ../development/python-modules/constantdict { }; + constantly = callPackage ../development/python-modules/constantly { }; construct = callPackage ../development/python-modules/construct { };