evcc: 0.131.4 -> 0.131.5
[NixPkgs.git] / pkgs / development / python-modules / qiskit-ignis / default.nix
bloba51ad99805b9e2fd1d5e7d689d90ef0e88d7e892
2   lib,
3   stdenv,
4   pythonOlder,
5   buildPythonPackage,
6   fetchFromGitHub,
7   numpy,
8   qiskit-terra,
9   scikit-learn,
10   scipy,
11   # Optional package inputs
12   withVisualization ? false,
13   matplotlib,
14   withCvx ? false,
15   cvxpy,
16   withJit ? false,
17   numba,
18   # Check Inputs
19   pytestCheckHook,
20   ddt,
21   pyfakefs,
22   qiskit-aer,
25 buildPythonPackage rec {
26   pname = "qiskit-ignis";
27   version = "0.7.1";
28   format = "setuptools";
30   disabled = pythonOlder "3.6";
32   # Pypi's tarball doesn't contain tests
33   src = fetchFromGitHub {
34     owner = "Qiskit";
35     repo = "qiskit-ignis";
36     rev = "refs/tags/${version}";
37     hash = "sha256-WyLNtZhtuGzqCJdOBvtBjZZiGFQihpeSjJQtP7lI248=";
38   };
40   propagatedBuildInputs =
41     [
42       numpy
43       qiskit-terra
44       scikit-learn
45       scipy
46     ]
47     ++ lib.optionals (withCvx) [ cvxpy ]
48     ++ lib.optionals (withVisualization) [ matplotlib ]
49     ++ lib.optionals (withJit) [ numba ];
51   # Tests
52   pythonImportsCheck = [ "qiskit.ignis" ];
53   dontUseSetuptoolsCheck = true;
54   preCheck = ''
55     export HOME=$TMPDIR
56   '';
57   nativeCheckInputs = [
58     pytestCheckHook
59     ddt
60     pyfakefs
61     qiskit-aer
62   ];
63   disabledTests =
64     [
65       "test_tensored_meas_cal_on_circuit" # Flaky test, occasionally returns result outside bounds
66     ]
67     ++ lib.optionals stdenv.hostPlatform.isAarch64 [
68       "test_fitters" # Fails check that arrays are close. Might be due to aarch64 math issues.
69     ];
71   meta = with lib; {
72     description = "Qiskit tools for quantum hardware verification, noise characterization, and error correction";
73     homepage = "https://qiskit.org/ignis";
74     downloadPage = "https://github.com/QISKit/qiskit-ignis/releases";
75     changelog = "https://qiskit.org/documentation/release_notes.html";
76     license = licenses.asl20;
77     maintainers = with maintainers; [ drewrisinger ];
78   };