1{
2 lib,
3 buildPythonPackage,
4 pythonAtLeast,
5 fetchpatch,
6 fetchFromGitHub,
7 python,
8 django,
9 packaging,
10 nodejs,
11 js2py,
12 six,
13}:
14
15buildPythonPackage rec {
16 pname = "django-js-reverse";
17 version = "0.10.1-b1";
18 format = "setuptools";
19
20 src = fetchFromGitHub {
21 owner = "BITSOLVER";
22 repo = "django-js-reverse";
23 rev = version;
24 hash = "sha256-i78UsxVwxyDAc8LrOVEXLG0tdidoQhvUx7GvPDaH0KY=";
25 };
26
27 propagatedBuildInputs = [ django ] ++ lib.optionals (pythonAtLeast "3.7") [ packaging ];
28
29 nativeCheckInputs = [
30 nodejs
31 js2py
32 six
33 ];
34
35 checkPhase = ''
36 ${python.interpreter} django_js_reverse/tests/unit_tests.py
37 '';
38
39 pythonImportsCheck = [ "django_js_reverse" ];
40
41 meta = with lib; {
42 description = "Javascript url handling for Django that doesn't hurt";
43 homepage = "https://django-js-reverse.readthedocs.io/en/latest/";
44 license = licenses.mit;
45 maintainers = with maintainers; [ ambroisie ];
46 };
47}