at master 1.3 kB view raw
1{ 2 buildPythonPackage, 3 fetchFromGitHub, 4 lib, 5 flit-core, 6 jinja2, 7 pytestCheckHook, 8 railroad-diagrams, 9 pyparsing, 10}: 11 12buildPythonPackage rec { 13 pname = "pyparsing"; 14 version = "3.2.3"; 15 format = "pyproject"; 16 17 src = fetchFromGitHub { 18 owner = "pyparsing"; 19 repo = "pyparsing"; 20 tag = version; 21 hash = "sha256-irRSylY16Vcm2zsue1Iv+1eqYGZSAqhkqHrdjdhznlM="; 22 }; 23 24 nativeBuildInputs = [ flit-core ]; 25 26 # circular dependencies with pytest if enabled by default 27 doCheck = false; 28 nativeCheckInputs = [ 29 jinja2 30 pytestCheckHook 31 railroad-diagrams 32 ]; 33 34 pythonImportsCheck = [ "pyparsing" ]; 35 36 passthru.tests = { 37 check = pyparsing.overridePythonAttrs (_: { 38 doCheck = true; 39 }); 40 }; 41 42 meta = with lib; { 43 homepage = "https://github.com/pyparsing/pyparsing"; 44 description = "Python library for creating PEG parsers"; 45 longDescription = '' 46 The pyparsing module is an alternative approach to creating and executing 47 simple grammars, vs. the traditional lex/yacc approach, or the use of 48 regular expressions. The pyparsing module provides a library of classes 49 that client code uses to construct the grammar directly in Python code. 50 ''; 51 license = licenses.mit; 52 maintainers = with maintainers; [ kamadorueda ]; 53 }; 54}