Skip to content

extracting vendors #2

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 14 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,9 @@ jobs:
- name: Install requirements
run: |
pip install -r requirements.txt
pip install -r platforms/aqt/requirements.txt
pip install -r platforms/google/requirements.txt
pip install -r platforms/pasqal/requirements.txt
python -m pip install -r cirq/contrib/contrib-requirements.txt
pip install -r dev_tools/conf/pip-list-dev-tools.txt
- name: RST check
Expand Down Expand Up @@ -114,6 +117,9 @@ jobs:
- name: Install requirements
run: |
pip install -r requirements.txt
pip install -r platforms/aqt/requirements.txt
pip install -r platforms/google/requirements.txt
pip install -r platforms/pasqal/requirements.txt
pip install -r dev_tools/conf/pip-list-dev-tools.txt
- name: Pytest check
run: check/pytest --ignore=cirq/contrib --benchmark-skip --actually-quiet
Expand All @@ -129,6 +135,9 @@ jobs:
- name: Install requirements
run: |
pip install -r requirements.txt
pip install -r platforms/aqt/requirements.txt
pip install -r platforms/google/requirements.txt
pip install -r platforms/pasqal/requirements.txt
pip install -r cirq/contrib/contrib-requirements.txt
pip install -r dev_tools/conf/pip-list-dev-tools.txt
sudo apt-get install pandoc
Expand Down Expand Up @@ -166,6 +175,9 @@ jobs:
- name: Install requirements
run: |
pip install -r requirements.txt
pip install -r platforms/aqt/requirements.txt
pip install -r platforms/google/requirements.txt
pip install -r platforms/pasqal/requirements.txt
pip install -r cirq/contrib/contrib-requirements.txt
pip install -r dev_tools/conf/pip-list-dev-tools.txt
- name: Coverage check
Expand All @@ -185,6 +197,9 @@ jobs:
- name: Install requirements
run: |
pip install -r requirements.txt
pip install -r platforms/aqt/requirements.txt
pip install -r platforms/google/requirements.txt
pip install -r platforms/pasqal/requirements.txt
pip install -r dev_tools/conf/pip-list-dev-tools.txt
- name: Pytest Windows
run: check/pytest --ignore=cirq/contrib --benchmark-skip --actually-quiet
Expand All @@ -204,6 +219,9 @@ jobs:
- name: Install requirements
run: |
pip install -r requirements.txt
pip install -r platforms/aqt/requirements.txt
pip install -r platforms/google/requirements.txt
pip install -r platforms/pasqal/requirements.txt
pip install -r dev_tools/conf/pip-list-dev-tools.txt
- name: Pytest check
run: check/pytest --ignore=cirq/contrib --benchmark-skip
4 changes: 3 additions & 1 deletion check/doctest
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,6 @@
cd "$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd "$(git rev-parse --show-toplevel)"

PYTHONPATH="$(pwd)" python dev_tools/docs/run_doctest.py $@
source dev_tools/pypath

python dev_tools/docs/run_doctest.py $@
2 changes: 2 additions & 0 deletions check/mypy
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ cd "$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd "$(git rev-parse --show-toplevel)"

echo -e -n "\033[31m"
source dev_tools/pypath
export MYPYPATH="cirq:platforms/google:platforms/aqt:platforms/pasqal"
mypy --config-file=dev_tools/conf/mypy.ini $@ .
result=$?
echo -e -n "\033[0m"
Expand Down
2 changes: 2 additions & 0 deletions check/pytest
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,8 @@ for arg in $@; do
fi
done

source dev_tools/pypath

if [ -z "${ACTUALLY_QUIET}" ]; then
pytest "${PYTEST_ARGS[@]}"
else
Expand Down
8 changes: 5 additions & 3 deletions check/pytest-and-incremental-coverage
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,10 @@ else
rev="${base}"
fi

source dev_tools/pypath

# Run tests while producing coverage files.
check/pytest . \
check/pytest cirq platforms/google platforms/aqt platforms/pasqal \
--actually-quiet \
--cov \
--cov-report=annotate \
Expand All @@ -61,11 +63,11 @@ check/pytest . \
pytest_result=$?

# Analyze coverage files.
PYTHONPATH="$(pwd)" python dev_tools/check_incremental_coverage_annotations.py "${rev}"
python dev_tools/check_incremental_coverage_annotations.py "${rev}"
cover_result=$?

# Clean up generated coverage files.
find . | grep "\.py,cover$" | xargs rm -f
# find . | grep "\.py,cover$" | xargs rm -f

# Report result.
if [ "${pytest_result}" -ne "0" ] || [ "${cover_result}" -ne "0" ]; then
Expand Down
3 changes: 3 additions & 0 deletions check/pytest-changed-files
Original file line number Diff line number Diff line change
Expand Up @@ -73,4 +73,7 @@ echo "Found ${num_changed} test files associated with changes." >&2
if [ "${num_changed}" -eq 0 ]; then
exit 0
fi

source dev_tools/pypath

pytest ${rest} ${changed[@]}
4 changes: 3 additions & 1 deletion check/pytest-changed-files-and-incremental-coverage
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,8 @@ if [ "${#changed_python_tests[@]}" -eq 0 ]; then
exit 0
fi

source dev_tools/pypath

# Run tests while producing coverage files.
check/pytest "${changed_python_tests[@]}" \
"${cov_changed_python_file_dirs[@]}" \
Expand All @@ -93,7 +95,7 @@ check/pytest "${changed_python_tests[@]}" \
pytest_result=$?

# Analyze coverage files.
PYTHONPATH="$(pwd)" python dev_tools/check_incremental_coverage_annotations.py "${rev}"
python dev_tools/check_incremental_coverage_annotations.py "${rev}"
cover_result=$?

# Clean up generated coverage files.
Expand Down
61 changes: 39 additions & 22 deletions cirq/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,18 +36,31 @@
devices,
study,
)

from cirq import (
# Core
circuits,
work,
# pulled in by experiments
sim)

try:
import cirq_google as google # type: ignore
from cirq_google import (
generate_boixo_2018_supremacy_circuits_v2,
generate_boixo_2018_supremacy_circuits_v2_bristlecone,
generate_boixo_2018_supremacy_circuits_v2_grid,
)
except ImportError as e:
pass

from cirq import (
# Optimize and run
optimizers,
work,
sim,
vis,
# Hardware specific
ion,
neutral_atoms,
google,
interop,
# Applications
experiments,
Expand All @@ -58,11 +71,22 @@
# End dependency order list of sub-modules

from cirq._version import (
__version__,
)
__version__,)

# Flattened sub-modules.

from cirq.experiments import (
estimate_single_qubit_readout_errors,
hog_score_xeb_fidelity_from_probabilities,
least_squares_xeb_fidelity_from_expectations,
least_squares_xeb_fidelity_from_probabilities,
linear_xeb_fidelity,
linear_xeb_fidelity_from_probabilities,
log_xeb_fidelity,
log_xeb_fidelity_from_probabilities,
xeb_fidelity,
)

from cirq.circuits import (
Circuit,
CircuitDag,
Expand All @@ -88,21 +112,6 @@
UNCONSTRAINED_DEVICE,
)

from cirq.experiments import (
estimate_single_qubit_readout_errors,
hog_score_xeb_fidelity_from_probabilities,
least_squares_xeb_fidelity_from_expectations,
least_squares_xeb_fidelity_from_probabilities,
linear_xeb_fidelity,
linear_xeb_fidelity_from_probabilities,
log_xeb_fidelity,
log_xeb_fidelity_from_probabilities,
generate_boixo_2018_supremacy_circuits_v2,
generate_boixo_2018_supremacy_circuits_v2_bristlecone,
generate_boixo_2018_supremacy_circuits_v2_grid,
xeb_fidelity,
)

from cirq.interop import (
quirk_json_to_circuit,
quirk_url_to_circuit,
Expand Down Expand Up @@ -544,9 +553,17 @@

# Unflattened sub-modules.

try:
import cirq_pasqal as pasqal # type: ignore
except ImportError as e:
pass

try:
import cirq_aqt as aqt # type: ignore
except ImportError as e:
pass

from cirq import (
contrib,
google,
pasqal,
testing,
)
3 changes: 1 addition & 2 deletions cirq/circuits/circuit_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,7 @@
import pytest
import sympy

import cirq
import cirq.google as cg
from cirq import google as cg
import cirq.testing
from cirq import ops

Expand Down
3 changes: 1 addition & 2 deletions cirq/contrib/noise_models/noise_models.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,10 @@

from math import exp
from typing import Dict, Sequence, TYPE_CHECKING
from cirq_google import engine

from cirq import devices, value, ops, protocols

from cirq.google import engine

if TYPE_CHECKING:
import cirq

Expand Down
2 changes: 1 addition & 1 deletion cirq/contrib/noise_models/noise_models_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,13 @@
import pytest

from google.protobuf.text_format import Merge
from cirq_google.api import v2

import cirq
import cirq.contrib.noise_models as ccn
from cirq.contrib.noise_models.noise_models import (
_homogeneous_moment_is_measurements, simple_noise_from_calibration_metrics)
from cirq.devices.noise_model_test import _assert_equivalent_op_tree
from cirq.google.api import v2
from cirq import ops


Expand Down
6 changes: 0 additions & 6 deletions cirq/experiments/__init__.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,3 @@
from cirq.experiments.google_v2_supremacy_circuit import (
generate_boixo_2018_supremacy_circuits_v2,
generate_boixo_2018_supremacy_circuits_v2_bristlecone,
generate_boixo_2018_supremacy_circuits_v2_grid,
)

from cirq.experiments.qubit_characterizations import (
rabi_oscillations,
RabiResult,
Expand Down
4 changes: 0 additions & 4 deletions cirq/google/optimizers/two_qubit_gates/__init__.py

This file was deleted.

4 changes: 3 additions & 1 deletion cirq/protocols/json_serialization.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
import json
import numbers
import pathlib
import sys
from typing import (
Any,
cast,
Expand Down Expand Up @@ -52,14 +53,15 @@ def __init__(self):
@property
def cirq_class_resolver_dictionary(self) -> Dict[str, Type]:
if self._crd is None:
print(f"PYPATH: {sys.path}")
import cirq
from cirq.devices.noise_model import _NoNoiseModel
from cirq.experiments import (CrossEntropyResult,
CrossEntropyResultDict,
GridInteractionLayer)
from cirq.experiments.grid_parallel_two_qubit_xeb import (
GridParallelXEBMetadata)
from cirq.google.devices.known_devices import (
from cirq_google.devices.known_devices import (
_NamedConstantXmonDevice)

def _identity_operation_from_dict(qubits, **kwargs):
Expand Down
5 changes: 5 additions & 0 deletions cirq/protocols/json_serialization_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -347,6 +347,11 @@ def _find_classes_that_should_serialize() -> Set[Tuple[str, Type]]:
result.update(_get_all_public_classes(cirq))
result.update(_get_all_public_classes(cirq.google))
result.update(_get_all_public_classes(cirq.work))
try:
import cirq_google
result.update(_get_all_public_classes(cirq_google))
except ImportError:
pass

for k, v in RESOLVER_CACHE.cirq_class_resolver_dictionary.items():
t = v if isinstance(v, type) else None
Expand Down
Loading