10 # Optional package inputs
11 , withVisualization ? false
24 buildPythonPackage rec {
25 pname = "qiskit-ignis";
28 disabled = pythonOlder "3.6";
30 # Pypi's tarball doesn't contain tests
31 src = fetchFromGitHub {
33 repo = "qiskit-ignis";
35 hash = "sha256-L5fwCMsN03ojiDvKIyqsGfUnwej1P7bpyHlL6mu7nh0=";
38 # hacky, fix https://github.com/Qiskit/qiskit-ignis/issues/532.
39 # TODO: remove on qiskit-ignis v0.5.2
41 substituteInPlace qiskit/ignis/mitigation/expval/base_meas_mitigator.py --replace "plt.axes" "'plt.axes'"
44 propagatedBuildInputs = [
49 ] ++ lib.optionals (withCvx) [ cvxpy ]
50 ++ lib.optionals (withVisualization) [ matplotlib ]
51 ++ lib.optionals (withJit) [ numba ];
52 postInstall = "rm -rf $out/${python.sitePackages}/docs"; # this dir can create conflicts
55 pythonImportsCheck = [ "qiskit.ignis" ];
56 dontUseSetuptoolsCheck = true;
57 preCheck = "export HOME=$TMPDIR";
65 "test_tensored_meas_cal_on_circuit" # Flaky test, occasionally returns result outside bounds
66 "test_qv_fitter" # execution hangs, ran for several minutes
70 description = "Qiskit tools for quantum hardware verification, noise characterization, and error correction";
71 homepage = "https://qiskit.org/ignis";
72 downloadPage = "https://github.com/QISKit/qiskit-ignis/releases";
73 changelog = "https://qiskit.org/documentation/release_notes.html";
74 license = licenses.asl20;
75 maintainers = with maintainers; [ drewrisinger ];