1{
2 lib,
3 fetchPypi,
4 buildPythonPackage,
5 calmjs-types,
6 calmjs-parse,
7 pytestCheckHook,
8 setuptools,
9}:
10
11buildPythonPackage rec {
12 pname = "calmjs";
13 version = "3.4.4";
14 pyproject = true;
15
16 src = fetchPypi {
17 inherit pname version;
18 hash = "sha256-73NQiY1RMdBrMIlm/VTvHY4dCHL1pQoj6a48CWRos3o=";
19 extension = "zip";
20 };
21
22 build-system = [
23 setuptools
24 ];
25
26 propagatedBuildInputs = [
27 calmjs-parse
28 calmjs-types
29 ];
30
31 checkInputs = [ pytestCheckHook ];
32
33 disabledTests = [
34 # spacing changes in argparse output
35 "test_integration_choices_in_list"
36 # formatting changes in argparse output
37 "test_sorted_case_insensitivity"
38 "test_sorted_simple_first"
39 "test_sorted_standard"
40 ];
41
42 # ModuleNotFoundError: No module named 'calmjs.types'
43 # Not yet clear how to run these tests correctly
44 # https://github.com/calmjs/calmjs/issues/63
45 # https://github.com/NixOS/nixpkgs/pull/186298
46 disabledTestPaths = [
47 "src/calmjs/tests/test_dist.py"
48 "src/calmjs/tests/test_testing.py"
49 "src/calmjs/tests/test_artifact.py"
50 "src/calmjs/tests/test_interrogate.py"
51 "src/calmjs/tests/test_loaderplugin.py"
52 "src/calmjs/tests/test_npm.py"
53 "src/calmjs/tests/test_runtime.py"
54 "src/calmjs/tests/test_toolchain.py"
55 "src/calmjs/tests/test_vlqsm.py"
56 "src/calmjs/tests/test_yarn.py"
57 "src/calmjs/tests/test_command.py"
58 ];
59
60 pythonImportsCheck = [ "calmjs" ];
61
62 meta = with lib; {
63 description = "Framework for building toolchains and utilities for working with the Node.js ecosystem";
64 mainProgram = "calmjs";
65 homepage = "https://github.com/calmjs/calmjs";
66 license = licenses.gpl2;
67 maintainers = with maintainers; [ onny ];
68 };
69}