Merge pull request #259208 from fabaff/cirq-bump

python311Packages.cirq-core: 1.1.0 -> 1.2.0
This commit is contained in:
Fabian Affolter 2023-10-15 23:37:00 +02:00 committed by GitHub
commit 51c0a83962
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 69 additions and 30 deletions

View File

@ -4,7 +4,6 @@
, pythonAtLeast
, pythonOlder
, fetchFromGitHub
, fetchpatch
, duet
, matplotlib
, networkx
@ -32,35 +31,23 @@
buildPythonPackage rec {
pname = "cirq-core";
version = "1.1.0";
version = "1.2.0";
format = "setuptools";
# Upstream package is broken on Python 3.11 https://github.com/quantumlib/Cirq/issues/6018
disabled = pythonOlder "3.7" || pythonAtLeast "3.11";
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "quantumlib";
repo = "cirq";
rev = "refs/tags/v${version}";
hash = "sha256-5j4hbG95KRfRQTyyZgoNp/eHIcy0FphyEhbYnzyUMO4=";
hash = "sha256-KEei5PJ0ammsduZVmMh2vaW3f58DYI4BCrFCl/SjUoo=";
};
sourceRoot = "${src.name}/${pname}";
patches = [
# https://github.com/quantumlib/Cirq/pull/5991
(fetchpatch {
url = "https://build.opensuse.org/public/source/openSUSE:Factory/python-cirq/cirq-pr5991-np1.24.patch?rev=8";
stripLen = 1;
hash = "sha256-d2FpaxM1PsPWT9ZM9v2gVrnLCy9zmvkkyAVgo85eL3U=";
})
];
postPatch = ''
substituteInPlace requirements.txt \
--replace "matplotlib~=3.0" "matplotlib" \
--replace "networkx~=2.4" "networkx" \
--replace "numpy>=1.16,<1.24" "numpy"
--replace "matplotlib~=3.0" "matplotlib"
'';
propagatedBuildInputs = [
@ -106,6 +93,8 @@ buildPythonPackage rec {
"test_json_and_repr_data"
# Tests for some changed error handling behavior in SymPy 1.12
"test_custom_value_not_implemented"
# Calibration issue
"test_xeb_to_calibration_layer"
];
meta = with lib; {

View File

@ -0,0 +1,36 @@
{ attrs
, buildPythonPackage
, cachetools
, cirq-core
, ipython
, ipywidgets
, nbconvert
, nbformat
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "cirq-ft";
inherit (cirq-core) version src meta;
sourceRoot = "${src.name}/${pname}";
propagatedBuildInputs = [
attrs
cachetools
cirq-core
ipython
ipywidgets
nbconvert
nbformat
];
nativeCheckInputs = [
ipython
pytestCheckHook
];
# cirq's importlib hook doesn't work here
#pythonImportsCheck = [ "cirq_ft" ];
}

View File

@ -4,6 +4,7 @@
, protobuf
, pytestCheckHook
, freezegun
, pythonRelaxDepsHook
}:
buildPythonPackage rec {
@ -18,6 +19,10 @@ buildPythonPackage rec {
--replace "protobuf >= 3.15.0, < 4" "protobuf >= 3.15.0"
'';
nativeBuildInputs = [
pythonRelaxDepsHook
];
propagatedBuildInputs = [
cirq-core
google-api-core
@ -40,6 +45,8 @@ buildPythonPackage rec {
# unittest.mock.InvalidSpecError: Cannot autospec attr 'QuantumEngineServiceClient'
"test_get_engine_sampler_explicit_project_id"
"test_get_engine_sampler"
# Calibration issue
"test_xeb_to_calibration_layer"
];
}

View File

@ -31,20 +31,22 @@ buildPythonPackage rec {
sourceRoot = "${src.name}/${pname}";
pythonRelaxDeps = [
"attrs"
"certifi"
"h11"
"httpcore"
"httpx"
"idna"
"iso8601"
"pydantic"
"pyjwt"
"pyquil"
"qcs-api-client"
"rfc3986"
];
postPatch = ''
substituteInPlace requirements.txt \
--replace "attrs~=20.3.0" "attrs" \
--replace "certifi~=2021.5.30" "certifi" \
--replace "h11~=0.9.0" "h11" \
--replace "httpcore~=0.11.1" "httpcore" \
--replace "httpx~=0.15.5" "httpx" \
--replace "idna~=2.10" "idna" \
--replace "pyjwt~=1.7.1" "pyjwt" \
--replace "qcs-api-client~=0.8.0" "qcs-api-client" \
--replace "iso8601~=0.1.14" "iso8601" \
--replace "rfc3986~=1.5.0" "rfc3986" \
--replace "pyquil~=3.0.0" "pyquil" \
--replace "pydantic~=1.8.2" "pydantic"
# Remove outdated test
rm cirq_rigetti/service_test.py
'';

View File

@ -1,6 +1,7 @@
{ buildPythonPackage
, cirq-aqt
, cirq-core
, cirq-ft
, cirq-google
, cirq-ionq
, cirq-pasqal
@ -16,6 +17,7 @@ buildPythonPackage rec {
propagatedBuildInputs = [
cirq-aqt
cirq-core
cirq-ft
cirq-ionq
cirq-google
cirq-rigetti
@ -32,6 +34,7 @@ buildPythonPackage rec {
disabledTestPaths = [
"cirq-aqt"
"cirq-core"
"cirq-ft"
"cirq-google"
"cirq-ionq"
"cirq-pasqal"

View File

@ -1983,6 +1983,8 @@ self: super: with self; {
cirq-core = callPackage ../development/python-modules/cirq-core { };
cirq-ft = callPackage ../development/python-modules/cirq-ft { };
cirq-ionq = callPackage ../development/python-modules/cirq-ionq { };
cirq-google = callPackage ../development/python-modules/cirq-google { };