1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pythonOlder,
6 setuptools,
7 wheel,
8}:
9
10buildPythonPackage rec {
11 pname = "pyinstrument";
12 version = "5.1.1";
13 format = "pyproject";
14
15 disabled = pythonOlder "3.7";
16
17 src = fetchFromGitHub {
18 owner = "joerick";
19 repo = "pyinstrument";
20 tag = "v${version}";
21 hash = "sha256-omQLUVgHbyz6YzLQ/7zU0f1R5xFU7EVGnwXohcuuP+o=";
22 };
23
24 nativeBuildInputs = [
25 setuptools
26 wheel
27 ];
28
29 # Module import recursion
30 doCheck = false;
31
32 pythonImportsCheck = [ "pyinstrument" ];
33
34 meta = with lib; {
35 description = "Call stack profiler for Python";
36 mainProgram = "pyinstrument";
37 homepage = "https://github.com/joerick/pyinstrument";
38 changelog = "https://github.com/joerick/pyinstrument/releases/tag/${src.tag}";
39 license = licenses.bsd3;
40 maintainers = with maintainers; [ onny ];
41 };
42}