diff options
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/development/python-modules/qiskit-terra/default.nix')
-rw-r--r-- | infra/libkookie/nixpkgs/pkgs/development/python-modules/qiskit-terra/default.nix | 76 |
1 files changed, 58 insertions, 18 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/development/python-modules/qiskit-terra/default.nix b/infra/libkookie/nixpkgs/pkgs/development/python-modules/qiskit-terra/default.nix index aad0370c3d7c..89d39b718cdf 100644 --- a/infra/libkookie/nixpkgs/pkgs/development/python-modules/qiskit-terra/default.nix +++ b/infra/libkookie/nixpkgs/pkgs/development/python-modules/qiskit-terra/default.nix @@ -16,7 +16,8 @@ , retworkx , scipy , sympy - # Python visualization requirements, semi-optional +, withVisualization ? false + # Python visualization requirements, optional , ipywidgets , matplotlib , pillow @@ -24,6 +25,12 @@ , pygments , pylatexenc , seaborn + # Crosstalk-adaptive layout pass +, withCrosstalkPass ? false +, z3 + # Classical function -> Quantum Circuit compiler +, withClassicalFunctionCompiler ? false +, tweedledum ? null # test requirements , ddt , hypothesis @@ -33,17 +40,31 @@ , python }: +let + visualizationPackages = [ + ipywidgets + matplotlib + pillow + pydot + pygments + pylatexenc + seaborn + ]; + crosstalkPackages = [ z3 ]; + classicalCompilerPackages = [ tweedledum ]; +in + buildPythonPackage rec { pname = "qiskit-terra"; - version = "0.15.1"; + version = "0.16.1"; - disabled = pythonOlder "3.5"; + disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "Qiskit"; repo = pname; rev = version; - sha256 = "1p7y36gj3675dmp05nwi0m9nc7h0bwyimir3ncf9wbkx3crrh99c"; + sha256 = "0007glsbrvq9swamvz8r76z9nzh46b388y0ds1dypczxpwlp9xcq"; }; nativeBuildInputs = [ cython ]; @@ -53,7 +74,6 @@ buildPythonPackage rec { fastjsonschema jsonschema numpy - matplotlib networkx ply psutil @@ -62,26 +82,18 @@ buildPythonPackage rec { retworkx scipy sympy - # Optional/visualization inputs - ipywidgets - matplotlib - pillow - pydot - pygments - pylatexenc - seaborn - ]; - + ] ++ lib.optionals withVisualization visualizationPackages + ++ lib.optionals withCrosstalkPass crosstalkPackages + ++ lib.optionals withClassicalFunctionCompiler classicalCompilerPackages; # *** Tests *** checkInputs = [ + pytestCheckHook ddt hypothesis nbformat nbconvert - pytestCheckHook - ]; - dontUseSetuptoolsCheck = true; # can't find setup.py, so fails. tested by pytest + ] ++ lib.optionals (!withVisualization) visualizationPackages; pythonImportsCheck = [ "qiskit" @@ -90,6 +102,34 @@ buildPythonPackage rec { pytestFlagsArray = [ "--ignore=test/randomized/test_transpiler_equivalence.py" # collection requires qiskit-aer, which would cause circular dependency + ] ++ lib.optionals (!withClassicalFunctionCompiler ) [ + "--ignore=test/python/classical_function_compiler/" + ]; + disabledTests = [ + # Flaky tests + "test_cx_equivalence" + "test_pulse_limits" + ] + # Disabling slow tests for build constraints + ++ [ + "test_all_examples" + "test_controlled_random_unitary" + "test_controlled_standard_gates_1" + "test_jupyter_jobs_pbars" + "test_lookahead_swap_higher_depth_width_is_better" + "test_move_measurements" + "test_job_monitor" + "test_wait_for_final_state" + "test_multi_controlled_y_rotation_matrix_basic_mode" + "test_two_qubit_weyl_decomposition_abc" + "test_isometry" + "test_parallel" + "test_random_state" + "test_random_clifford_valid" + "test_to_matrix" + "test_block_collection_reduces_1q_gate" + "test_multi_controlled_rotation_gate_matrices" + "test_block_collection_runs_for_non_cx_bases" ]; # Moves tests to $PACKAGEDIR/test. They can't be run from /build because of finding |