diff options
Diffstat (limited to 'dev-python/qiskit-terra/qiskit-terra-0.24.1.ebuild')
-rw-r--r-- | dev-python/qiskit-terra/qiskit-terra-0.24.1.ebuild | 200 |
1 files changed, 200 insertions, 0 deletions
diff --git a/dev-python/qiskit-terra/qiskit-terra-0.24.1.ebuild b/dev-python/qiskit-terra/qiskit-terra-0.24.1.ebuild new file mode 100644 index 000000000000..2a1c56033c08 --- /dev/null +++ b/dev-python/qiskit-terra/qiskit-terra-0.24.1.ebuild @@ -0,0 +1,200 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..11} ) + +CRATES=" + ahash-0.7.6 + ahash-0.8.3 + autocfg-1.1.0 + bitflags-1.3.2 + cfg-if-1.0.0 + crossbeam-channel-0.5.7 + crossbeam-deque-0.8.3 + crossbeam-epoch-0.9.14 + crossbeam-utils-0.8.15 + either-1.8.1 + fixedbitset-0.4.2 + getrandom-0.2.8 + hashbrown-0.11.2 + hashbrown-0.12.3 + hashbrown-0.13.2 + hermit-abi-0.2.6 + indexmap-1.9.3 + indoc-1.0.9 + libc-0.2.140 + libm-0.2.6 + lock_api-0.4.9 + matrixmultiply-0.3.2 + memoffset-0.8.0 + ndarray-0.15.6 + num-bigint-0.4.3 + num-complex-0.4.3 + num-integer-0.1.45 + num-traits-0.2.15 + num_cpus-1.15.0 + numpy-0.18.0 + once_cell-1.17.1 + parking_lot-0.12.1 + parking_lot_core-0.9.7 + petgraph-0.6.3 + ppv-lite86-0.2.17 + priority-queue-1.3.1 + proc-macro2-1.0.51 + pyo3-0.18.3 + pyo3-build-config-0.18.3 + pyo3-ffi-0.18.3 + pyo3-macros-0.18.3 + pyo3-macros-backend-0.18.3 + quote-1.0.23 + rand-0.8.5 + rand_chacha-0.3.1 + rand_core-0.6.4 + rand_distr-0.4.3 + rand_pcg-0.3.1 + rawpointer-0.2.1 + rayon-1.7.0 + rayon-core-1.11.0 + redox_syscall-0.2.16 + rustc-hash-1.1.0 + rustworkx-core-0.12.1 + scopeguard-1.1.0 + smallvec-1.10.0 + syn-1.0.109 + target-lexicon-0.12.6 + unicode-ident-1.0.8 + unindent-0.1.11 + version_check-0.9.4 + wasi-0.11.0+wasi-snapshot-preview1 + windows-sys-0.45.0 + windows-targets-0.42.1 + windows_aarch64_gnullvm-0.42.1 + windows_aarch64_msvc-0.42.1 + windows_i686_gnu-0.42.1 + windows_i686_msvc-0.42.1 + windows_x86_64_gnu-0.42.1 + windows_x86_64_gnullvm-0.42.1 + windows_x86_64_msvc-0.42.1 +" + +inherit cargo distutils-r1 multiprocessing optfeature + +DESCRIPTION="Terra is the foundation on which Qiskit is built" +HOMEPAGE=" + https://github.com/Qiskit/qiskit-terra/ + https://pypi.org/project/qiskit-terra/ +" +SRC_URI=" + https://github.com/Qiskit/qiskit-terra/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz + $(cargo_crate_uris) +" + +LICENSE="Apache-2.0" +# Dependent crate licenses +LICENSE+=" + Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 MIT + Unicode-DFS-2016 + || ( LGPL-3 MPL-2.0 ) +" +SLOT="0" +IUSE="+visualization" +KEYWORDS="~amd64" + +RDEPEND=" + >=dev-python/rustworkx-0.12.0[${PYTHON_USEDEP}] + >=dev-python/numpy-1.17[${PYTHON_USEDEP}] + >=dev-python/ply-3.10[${PYTHON_USEDEP}] + >=dev-python/psutil-5[${PYTHON_USEDEP}] + >=dev-python/scipy-1.5[${PYTHON_USEDEP}] + >=dev-python/sympy-1.3[${PYTHON_USEDEP}] + >=dev-python/dill-0.3[${PYTHON_USEDEP}] + >=dev-python/python-constraint-1.4[${PYTHON_USEDEP}] + >=dev-python/python-dateutil-2.8.0[${PYTHON_USEDEP}] + >=dev-python/stevedore-3.0.0[${PYTHON_USEDEP}] + <dev-python/symengine-0.10[${PYTHON_USEDEP}] + visualization? ( + >=dev-python/matplotlib-3.3[${PYTHON_USEDEP}] + >=dev-python/ipywidgets-7.3.0[${PYTHON_USEDEP}] + dev-python/pydot[${PYTHON_USEDEP}] + >=dev-python/pillow-4.2.1[${PYTHON_USEDEP}] + >=dev-python/pylatexenc-1.4[${PYTHON_USEDEP}] + >=dev-python/seaborn-0.9.0[${PYTHON_USEDEP}] + >=dev-python/pygments-2.4[${PYTHON_USEDEP}] + ) +" +BDEPEND=" + >=dev-python/cython-0.27.1[${PYTHON_USEDEP}] + test? ( + app-text/poppler[png] + >=dev-python/ddt-1.4.4[${PYTHON_USEDEP}] + >=dev-python/hypothesis-4.24.3[${PYTHON_USEDEP}] + >=dev-python/networkx-2.2[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + dev-python/qiskit-aer[${PYTHON_USEDEP}] + >=sci-libs/scikit-learn-0.20.0[${PYTHON_USEDEP}] + ) +" + +# Files built without CFLAGS/LDFLAGS, acceptable for rust +QA_FLAGS_IGNORED=" + usr/lib.*/py.*/site-packages/qiskit/_accelerate.*.so + usr/lib.*/py.*/site-packages/qiskit/_qasm2.*.so +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # TODO + test/python/transpiler/test_unitary_synthesis_plugin.py::TestUnitarySynthesisPlugin + test/python/transpiler/test_unitary_synthesis.py::TestUnitarySynthesis::test_two_qubit_synthesis_not_pulse_optimal + + # TestOptions::test_copy - TypeError: argument of type 'Options' is not iterable + test/python/providers/test_options.py::TestOptions::test_copy + + # DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('mpl_toolkits')`. + test/python/test_version.py::TestVersion::test_qiskit_version + # DeprecationWarning: It is deprecated to return a value that is not None from a test case + # (<bound method BackendTestCase.test_configuration of <test.python.basicaer.test_statevector_simulator.StatevectorS... + test/python/basicaer/test_statevector_simulator.py::StatevectorSimulatorTest::test_configuration + + # AssertionError: DeprecationWarning not triggered + test/python/pulse/test_block.py::TestBlockOperation::test_execute_block + + # AssertionError: Lists differ: [] != ['INFO:LocalLogger:bound_pass_manager', 'INFO:LocalLogger:bound_pass_manager'] + test/python/primitives/test_backend_estimator.py::TestBackendEstimator::test_bound_pass_manager + test/python/primitives/test_backend_sampler.py::TestBackendSampler::test_bound_pass_manager + + # AssertionError: False is not true : The images are different by 8.795342588446031% which is more than the allowed 4.0% + test/python/circuit/test_equivalence.py::TestEquivalenceLibraryVisualization::test_equivalence_draw + # ValueError: images do not match + test/python/visualization/test_dag_drawer.py::TestDagDrawer::test_dag_drawer_no_register + + # Hangs + # Broken by https://github.com/Qiskit/qiskit-terra/pull/8952? + test/python/compiler/test_transpiler.py::TestTranspileParallel::test_parallel_dispatch_4_3 + test/python/compiler/test_transpiler.py::TestTranspileParallel::test_parallel_with_target_4_3 + ) + + local EPYTEST_IGNORE=( + # TODO, also apparently slow + test/randomized/test_transpiler_equivalence.py + # Breaks xdist + test/python/qasm2/test_parse_errors.py + ) + + rm -rf qiskit || die + # Run the Python test suite rather than everything under test/ which + # includes the 'randomized' suite. Upstream run that in a separate CI job. + # Note: use -p timeout --timeout 500 if debugging hanging tests. + epytest -p xdist -n "$(makeopts_jobs)" test/python +} + +pkg_postinst() { + optfeature "qiskit.circuit.classicalfunction support" dev-python/tweedledum +} |