diff --git a/pkgs/applications/misc/bikeshed/default.nix b/pkgs/applications/misc/bikeshed/default.nix index 244632521bac..955da0699299 100644 --- a/pkgs/applications/misc/bikeshed/default.nix +++ b/pkgs/applications/misc/bikeshed/default.nix @@ -2,57 +2,85 @@ , buildPythonApplication , fetchPypi # build inputs +, about-time , aiofiles , aiohttp +, aiosignal +, alive-progress +, async-timeout , attrs , certifi +, charset-normalizer , cssselect +, frozenlist , html5lib +, idna , isodate , json-home-client +, kdl-py , lxml +, multidict , pillow , pygments , requests , result , setuptools +, six , tenacity +, typing-extensions +, uri-template +, urllib3 +, webencodings , widlparser +, yarl }: buildPythonApplication rec { pname = "bikeshed"; - version = "3.7.0"; + version = "4.2.7"; + pyproject = true; src = fetchPypi { inherit pname version; - hash = "sha256-3fVo+B71SsJs+XF4+FWH2nz0ouTnpC/02fXYr1C9Jrk="; + hash = "sha256-vtZ97brCk+fd/HsA2UHdS17o8rJ/VvSOdhg0MHzlCs8="; }; - # Relax requirements from "==" to ">=" - # https://github.com/tabatkins/bikeshed/issues/2178 - postPatch = '' - substituteInPlace requirements.txt \ - --replace "==" ">=" - ''; + build-system = [ setuptools ]; - propagatedBuildInputs = [ + pythonRelaxDeps = true; + + dependencies = [ + about-time aiofiles aiohttp + aiosignal + alive-progress + async-timeout attrs certifi + charset-normalizer cssselect + frozenlist html5lib + idna isodate json-home-client + kdl-py lxml + multidict pillow pygments requests result setuptools + six tenacity + typing-extensions + uri-template + urllib3 + webencodings widlparser + yarl ]; checkPhase = '' diff --git a/pkgs/development/python-modules/kdl-py/default.nix b/pkgs/development/python-modules/kdl-py/default.nix new file mode 100644 index 000000000000..df409677cc92 --- /dev/null +++ b/pkgs/development/python-modules/kdl-py/default.nix @@ -0,0 +1,37 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + setuptools, +}: + +buildPythonPackage rec { + pname = "kdl-py"; + version = "1.2.0"; + pyproject = true; + + src = fetchPypi { + inherit pname version; + hash = "sha256-Y/P0bGJ33trc5E3PyUZyv25r8zMLkBIuATTCKFfimXM="; + }; + + build-system = [ setuptools ]; + + pythonImportsCheck = [ "kdl" ]; + + checkPhase = '' + runHook preCheck + + python tests/run.py + + runHook postCheck + ''; + + meta = { + description = "Parser for the KDL language"; + homepage = "https://github.com/tabatkins/kdlpy"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ ]; + mainProgram = "kdlreformat"; + }; +} diff --git a/pkgs/development/python-modules/widlparser/default.nix b/pkgs/development/python-modules/widlparser/default.nix index 688c14a024dc..9b961c89a9a9 100644 --- a/pkgs/development/python-modules/widlparser/default.nix +++ b/pkgs/development/python-modules/widlparser/default.nix @@ -4,31 +4,44 @@ fetchFromGitHub, pythonOlder, # build inputs + setuptools, + setuptools-scm, typing-extensions, }: buildPythonPackage rec { pname = "widlparser"; - version = "1.0.12"; - format = "setuptools"; + version = "1.1.5"; + pyproject = true; disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "plinss"; - repo = pname; + repo = "widlparser"; rev = "v${version}"; - hash = "sha256-T17fDWYd1naza/ao7kXWGcRIl2fzL1/Z9SaJiutZzqk="; + hash = "sha256-G5N29K0/ByfKwP1XfxZH9u/5x361JD/8qAD6eZaySnU="; }; - postPatch = '' - sed -i -e 's/0.0.0/${version}/' setup.py - ''; + build-system = [ + setuptools + setuptools-scm + ]; - propagatedBuildInputs = [ typing-extensions ]; + dependencies = [ typing-extensions ]; pythonImportsCheck = [ "widlparser" ]; + # https://github.com/plinss/widlparser/blob/v1.1.5/.github/workflows/test.yml + checkPhase = '' + runHook preCheck + + python test.py > test-actual.txt + diff -u test-expected.txt test-actual.txt + + runHook postCheck + ''; + meta = with lib; { description = "Stand-alone WebIDL Parser in Python"; homepage = "https://github.com/plinss/widlparser"; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 96d21cd07a88..6d751357daf4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6927,6 +6927,8 @@ self: super: with self; { kde-material-you-colors = callPackage ../development/python-modules/kde-material-you-colors { }; + kdl-py = callPackage ../development/python-modules/kdl-py { }; + keba-kecontact = callPackage ../development/python-modules/keba-kecontact { }; keep = callPackage ../development/python-modules/keep { };