biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / development / tools / memray / default.nix
blob8e0b2689984ef784b210721b4c91e6b6bc347914
1 { lib
2 , fetchFromGitHub
3 , libunwind
4 , lz4
5 , pkg-config
6 , python3
7 }:
9 python3.pkgs.buildPythonApplication rec {
10   pname = "memray";
11   version = "1.11.0";
12   format = "setuptools";
14   src = fetchFromGitHub {
15     owner = "bloomberg";
16     repo = "memray";
17     rev = "refs/tags/v${version}";
18     hash = "sha256-DaJ1Hhg7q4ckA5feUx0twOsmy28v5aBBCTUAkn43xAo=";
19   };
21   nativeBuildInputs = [
22     pkg-config
23   ];
25   buildInputs = [
26     libunwind
27     lz4
28   ] ++ (with python3.pkgs; [
29     cython
30   ]);
32   propagatedBuildInputs = with python3.pkgs; [
33     jinja2
34     rich
35   ];
37   nativeCheckInputs = with python3.pkgs; [
38     ipython
39     pytestCheckHook
40   ] ++ lib.optionals (pythonOlder "3.12") [
41     greenlet
42   ];
44   pythonImportsCheck = [
45     "memray"
46   ];
48   pytestFlagsArray = [
49     "tests"
50   ];
52   disabledTests = [
53     # Import issue
54     "test_header_allocator"
55     "test_hybrid_stack_of_allocations_inside_ceval"
56   ];
58   disabledTestPaths = [
59     # Very time-consuming and some tests fails (performance-related?)
60     "tests/integration/test_main.py"
61   ];
63   meta = with lib; {
64     description = "Memory profiler for Python";
65     homepage = "https://bloomberg.github.io/memray/";
66     changelog = "https://github.com/bloomberg/memray/releases/tag/v${version}";
67     license = licenses.asl20;
68     maintainers = with maintainers; [ fab ];
69     platforms = platforms.linux;
70   };