diff options
Diffstat (limited to 'pkgs/development/python-modules/pyparsing/default.nix')
-rw-r--r-- | pkgs/development/python-modules/pyparsing/default.nix | 63 |
1 files changed, 38 insertions, 25 deletions
diff --git a/pkgs/development/python-modules/pyparsing/default.nix b/pkgs/development/python-modules/pyparsing/default.nix index 5ecfdfb8883..27047cf6eab 100644 --- a/pkgs/development/python-modules/pyparsing/default.nix +++ b/pkgs/development/python-modules/pyparsing/default.nix @@ -2,34 +2,47 @@ , fetchFromGitHub , lib -# pythonPackages -, coverage +# since this is a dependency of pytest, we need to avoid +# circular dependencies +, jinja2 +, railroad-diagrams }: -buildPythonPackage rec { - pname = "pyparsing"; - version = "2.4.7"; +let + pyparsing = buildPythonPackage rec { + pname = "pyparsing"; + version = "3.0.6"; - src = fetchFromGitHub { - owner = "pyparsing"; - repo = pname; - rev = "pyparsing_${version}"; - sha256 = "14pfy80q2flgzjcx8jkracvnxxnr59kjzp3kdm5nh232gk1v6g6h"; - }; - - # https://github.com/pyparsing/pyparsing/blob/847af590154743bae61a32c3dc1a6c2a19009f42/tox.ini#L6 - checkInputs = [ coverage ]; - checkPhase = '' - coverage run --branch simple_unit_tests.py - coverage run --branch unitTests.py - ''; + src = fetchFromGitHub { + owner = "pyparsing"; + repo = pname; + rev = "pyparsing_${version}"; + sha256 = "0n89ky7rx5yg09ssji8liahnyxip08hz7syc2k4pmlgs4978181a"; + }; - meta = with lib; { - homepage = "https://github.com/pyparsing/pyparsing"; - description = "An alternative approach to creating and executing simple grammars, vs. the traditional lex/yacc approach, or the use of regular expressions"; - license = licenses.mit; - maintainers = with maintainers; [ - kamadorueda + # circular dependencies if enabled by default + doCheck = false; + checkInputs = [ + jinja2 + railroad-diagrams ]; + + checkPhase = '' + python -m unittest + ''; + + passthru.tests = { + check = pyparsing.overridePythonAttrs (_: { doCheck = true; }); + }; + + meta = with lib; { + homepage = "https://github.com/pyparsing/pyparsing"; + description = "An alternative approach to creating and executing simple grammars, vs. the traditional lex/yacc approach, or the use of regular expressions"; + license = licenses.mit; + maintainers = with maintainers; [ + kamadorueda + ]; + }; }; -} +in + pyparsing |