1{
2 lib,
3 fetchFromGitHub,
4 buildPythonPackage,
5 pytestCheckHook,
6}:
7
8let
9 pyjsparser = buildPythonPackage {
10 pname = "pyjsparser";
11 version = "2.7.1";
12 format = "setuptools";
13
14 src = fetchFromGitHub {
15 owner = "PiotrDabkowski";
16 repo = "pyjsparser";
17 rev = "5465d037b30e334cb0997f2315ec1e451b8ad4c1";
18 hash = "sha256-Hqay9/qsjUfe62U7Q79l0Yy01L2Bnj5xNs6427k3Br8=";
19 };
20
21 nativeCheckInputs = [
22 pytestCheckHook
23 ];
24
25 # js2py is needed for tests but it's unmaintained and insecure
26 doCheck = false;
27
28 pythonImportsCheck = [ "pyjsparser" ];
29
30 meta = with lib; {
31 description = "Fast javascript parser (based on esprima.js)";
32 homepage = "https://github.com/PiotrDabkowski/pyjsparser";
33 license = licenses.mit;
34 maintainers = with maintainers; [ onny ];
35 };
36 };
37in
38pyjsparser