at 24.11-pre 1.1 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 colorama, 5 fetchFromGitHub, 6 pytestCheckHook, 7 pythonOlder, 8 regex, 9 setuptools, 10}: 11 12buildPythonPackage rec { 13 pname = "tatsu"; 14 version = "5.12.0"; 15 pyproject = true; 16 17 disabled = pythonOlder "3.10"; 18 19 src = fetchFromGitHub { 20 owner = "neogeny"; 21 repo = "TatSu"; 22 rev = "refs/tags/v${version}"; 23 hash = "sha256-55sTUqNwfWg5h9msByq2RuVx/z23ST7p7pA/ZsIeYr8="; 24 }; 25 26 nativeBuildInputs = [ setuptools ]; 27 28 propagatedBuildInputs = [ 29 colorama 30 regex 31 ]; 32 33 nativeCheckInputs = [ pytestCheckHook ]; 34 35 pythonImportsCheck = [ "tatsu" ]; 36 37 meta = with lib; { 38 description = "Generates Python parsers from grammars in a variation of EBNF"; 39 longDescription = '' 40 TatSu (the successor to Grako) is a tool that takes grammars in a 41 variation of EBNF as input, and outputs memoizing (Packrat) PEG parsers in 42 Python. 43 ''; 44 homepage = "https://tatsu.readthedocs.io/"; 45 changelog = "https://github.com/neogeny/TatSu/releases/tag/v${version}"; 46 license = licenses.bsd2; 47 maintainers = with maintainers; [ ]; 48 }; 49}