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