diff --git a/pkgs/development/python-modules/pyproject-parser/default.nix b/pkgs/development/python-modules/pyproject-parser/default.nix index a3b6ca4b0319..4e8b54aa045a 100644 --- a/pkgs/development/python-modules/pyproject-parser/default.nix +++ b/pkgs/development/python-modules/pyproject-parser/default.nix @@ -5,10 +5,15 @@ setuptools, apeye-core, attrs, + click, + consolekit, + docutils, dom-toml, domdf-python-tools, natsort, packaging, + readme-renderer, + sdjson, shippinglabel, typing-extensions, }: @@ -34,6 +39,20 @@ buildPythonPackage rec { shippinglabel typing-extensions ]; + + optional-dependencies = { + all = lib.flatten (lib.attrValues (lib.filterAttrs (n: v: n != "all") optional-dependencies)); + cli = [ + click + consolekit + sdjson + ]; + readme = [ + docutils + readme-renderer + ] ++ readme-renderer.optional-dependencies.md; + }; + postPatch = '' substituteInPlace pyproject.toml \ --replace-fail '"setuptools!=61.*,<=67.1.0,>=40.6.0"' '"setuptools"' diff --git a/pkgs/development/python-modules/sdjson/default.nix b/pkgs/development/python-modules/sdjson/default.nix new file mode 100644 index 000000000000..9df8b10dc5c1 --- /dev/null +++ b/pkgs/development/python-modules/sdjson/default.nix @@ -0,0 +1,40 @@ +{ + buildPythonPackage, + domdf-python-tools, + fetchFromGitHub, + lib, + typing-extensions, + whey, +}: + +buildPythonPackage rec { + pname = "sdjson"; + version = "0.5.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "domdfcoding"; + repo = "singledispatch-json"; + tag = "v${version}"; + hash = "sha256-7qwmPhij2X2GLtjeaoMCoOyT0qzYt9oFccWrQOq6LXw="; + }; + + build-system = [ whey ]; + + dependencies = [ + domdf-python-tools + typing-extensions + ]; + + pythonImportsCheck = [ "sdjson" ]; + + # missing dependency coincidence + doCheck = false; + + meta = { + description = "Custom JSON Encoder for Python utilising functools.singledispatch"; + homepage = "https://github.com/domdfcoding/singledispatch-json"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 5ffc3a8c9cf2..013e7f91fb05 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -14727,6 +14727,8 @@ self: super: with self; { sdds = callPackage ../development/python-modules/sdds { }; + sdjson = callPackage ../development/python-modules/sdjson { }; + sdkmanager = callPackage ../development/python-modules/sdkmanager { }; sdnotify = callPackage ../development/python-modules/sdnotify { };