1{ lib 2, buildPythonPackage 3, fetchFromGitHub 4, setuptools 5, ply 6, python 7}: 8 9buildPythonPackage rec { 10 pname = "calmjs-parse"; 11 version = "1.3.0"; 12 13 format = "setuptools"; 14 15 src = fetchFromGitHub { 16 owner = "calmjs"; 17 repo = "calmjs.parse"; 18 rev = version; 19 hash = "sha256-QhHNp9g88RhGHqRRjg4nk7aXjAgGCOauOagWJoJ3fqc="; 20 }; 21 22 propagatedBuildInputs = [ 23 setuptools 24 ply 25 ]; 26 27 checkPhase = '' 28 runHook preCheck 29 30 ${python.interpreter} -m unittest calmjs.parse.tests.make_suite 31 32 runHook postCheck 33 ''; 34 35 pythonImportsCheck = [ 36 "calmjs.parse" 37 "calmjs.parse.asttypes" 38 "calmjs.parse.parsers" 39 "calmjs.parse.rules" 40 "calmjs.parse.sourcemap" 41 "calmjs.parse.unparsers.es5" 42 "calmjs.parse.walkers" 43 ]; 44 45 meta = with lib; { 46 description = "Various parsers for ECMA standards"; 47 homepage = "https://github.com/calmjs/calmjs.parse"; 48 license = licenses.mit; 49 maintainers = with maintainers; [ dotlambda ]; 50 }; 51}