diff --git a/pkgs/development/python-modules/pycep-parser/default.nix b/pkgs/development/python-modules/pycep-parser/default.nix new file mode 100644 index 000000000000..f286e6b45bdb --- /dev/null +++ b/pkgs/development/python-modules/pycep-parser/default.nix @@ -0,0 +1,58 @@ +{ lib +, assertpy +, buildPythonPackage +, fetchFromGitHub +, lark +, poetry-core +, pytestCheckHook +, pythonOlder +, regex +, typing-extensions +}: + +buildPythonPackage rec { + pname = "pycep-parser"; + version = "0.3.1"; + format = "pyproject"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "gruebel"; + repo = "pycep"; + rev = version; + hash = "sha256-S4jBqMgyreWrEp1SuR8J5RVFc+i1O0xbfgux1UvFP5k="; + }; + + nativeBuildInputs = [ + poetry-core + ]; + + propagatedBuildInputs = [ + lark + regex + typing-extensions + ]; + + checkInputs = [ + assertpy + pytestCheckHook + ]; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace 'version = "0.3.1-alpha.1"' 'version = "${version}"' \ + --replace 'regex = "^2022.3.2"' 'regex = "*"' + ''; + + pythonImportsCheck = [ + "pycep" + ]; + + meta = with lib; { + description = "Python based Bicep parser"; + homepage = "https://github.com/gruebel/pycep"; + license = with licenses; [ asl20 ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b72a6fb062d9..396a5d3733b3 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6717,6 +6717,8 @@ in { pycec = callPackage ../development/python-modules/pycec { }; + pycep-parser = callPackage ../development/python-modules/pycep-parser { }; + pycfdns = callPackage ../development/python-modules/pycfdns { }; pycflow2dot = callPackage ../development/python-modules/pycflow2dot {