# Scipy 1.11 seems to have caused an instability in the Weyl coordinates
# eigensystem code for one of the test cases.  See
# https://github.com/Qiskit/qiskit-terra/issues/10345 for current details.
scipy<1.11; python_version<'3.12'

# Aer 0.13 causes several randomised tests to begin failing, and some
# `QuantumInstance` use of noise models to raise exceptions.  These need fixes
# on Terra.
qiskit-aer<0.13.0

# Temporary pin to avoid CI issues caused by scipy 1.14.0
# See https://github.com/Qiskit/qiskit/issues/12655 for current details.
scipy==1.13.1; python_version=='3.12'

# z3-solver from 4.12.3 onwards upped the minimum macOS API version for its
# wheels to 11.7. The Azure VM images contain pre-built CPythons, of which at
# least CPython 3.8 was compiled for an older macOS, so does not match a
# `macos_11_7` platform tag.  This should be purely a CI artefact, and not
# affect local usage.
z3-solver==4.12.2.0; platform_system=="Darwin"

# There are minor differences in output between pydot 2 and pydot 3 for
# things like the pass-manager drawer.  This is totally fine for general
# usage, but our test suite uses an exact reference file that uses the
# pydot 3 output, so we need to enforce that during tests.
pydot>=3.0.0

# qiskit-qasm3-import above v0.3.0 depend on `qiskit` rather
# than `qiskit-terra`, thus creating qiskit dependencies mixup when
# running pip install -r requirements-optional.txt
qiskit-qasm3-import==0.3.0

# pkgutil.ImpImporter is removed in Python 3.12 and numpy versions prior to 1.26
# use this attribute, which causes a CI failure on Linux with Python 3.12. We also 
# need numpy 2.0.0 as 1.24 causes CI failure on MacOS
numpy==2.0.0; python_version>='3.12'

# The part below was generated using pip-compile with Python 3.8, using the constraints
# above in the input constraints.txt, by the following command:
#
#    pip-compile --all-build-deps --all-extras --constraint=constraints.txt --strip-extras pyproject.toml
#
antlr4-python3-runtime==4.13.2
    # via openqasm3
appnope==0.1.4
    # via ipython
asttokens==2.4.1
    # via stack-data
backcall==0.2.0
    # via ipython
colorama==0.4.6
    # via ipython
comm==0.2.2
    # via ipywidgets
contourpy==1.1.1
    # via matplotlib
cycler==0.12.1
    # via matplotlib
decorator==5.1.1
    # via ipython
dill==0.3.8
    # via
    #   qiskit-terra
    #   qiskit-terra (pyproject.toml)
executing==2.1.0
    # via stack-data
fonttools==4.53.1
    # via matplotlib
importlib-metadata==8.4.0
    # via openqasm3
importlib-resources==6.4.4
    # via
    #   matplotlib
    #   z3-solver
ipython==8.12.3
    # via ipywidgets
ipywidgets==8.1.5
    # via qiskit-terra (pyproject.toml)
jedi==0.19.1
    # via ipython
jupyterlab-widgets==3.0.13
    # via ipywidgets
kiwisolver==1.4.7
    # via matplotlib
matplotlib==3.7.5
    # via
    #   qiskit-terra (pyproject.toml)
    #   seaborn
matplotlib-inline==0.1.7
    # via ipython
mpmath==1.3.0
    # via sympy
numpy==1.24.4; python_version<'3.12'
    # via
    #   contourpy
    #   matplotlib
    #   pandas
    #   qiskit-terra
    #   qiskit-terra (pyproject.toml)
    #   rustworkx
    #   scipy
    #   seaborn
openqasm3==0.5.0
    # via qiskit-qasm3-import
packaging==24.1
    # via matplotlib
pandas==2.0.3
    # via seaborn
parso==0.8.4
    # via jedi
pbr==6.1.0
    # via stevedore
pexpect==4.9.0
    # via ipython
pickleshare==0.7.5
    # via ipython
pillow==10.4.0
    # via
    #   matplotlib
    #   qiskit-terra (pyproject.toml)
ply==3.11
    # via
    #   qiskit-terra
    #   qiskit-terra (pyproject.toml)
prompt-toolkit==3.0.47
    # via ipython
psutil==6.0.0
    # via
    #   qiskit-terra
    #   qiskit-terra (pyproject.toml)
ptyprocess==0.7.0
    # via pexpect
pure-eval==0.2.3
    # via stack-data
pydot==3.0.1
    # via
    #   -c constraints.txt
    #   qiskit-terra (pyproject.toml)
pygments==2.18.0
    # via
    #   ipython
    #   qiskit-terra (pyproject.toml)
pylatexenc==2.10
    # via qiskit-terra (pyproject.toml)
pyparsing==3.1.4
    # via
    #   matplotlib
    #   pydot
python-constraint==1.4.0
    # via qiskit-terra (pyproject.toml)
python-dateutil==2.9.0.post0
    # via
    #   matplotlib
    #   pandas
    #   qiskit-terra
    #   qiskit-terra (pyproject.toml)
pytz==2024.1
    # via pandas
qiskit-qasm3-import==0.3.0
    # via
    #   -c constraints.txt
    #   qiskit-terra (pyproject.toml)
rustworkx==0.15.1
    # via
    #   qiskit-terra
    #   qiskit-terra (pyproject.toml)
scipy==1.10.1 ; python_version < "3.12"
    # via
    #   -c constraints.txt
    #   qiskit-terra
    #   qiskit-terra (pyproject.toml)
seaborn==0.13.2
    # via qiskit-terra (pyproject.toml)
semantic-version==2.10.0
    # via setuptools-rust
setuptools-rust==1.10.1
    # via qiskit-terra (pyproject.toml::build-system.requires)
six==1.16.0
    # via
    #   asttokens
    #   python-dateutil
stack-data==0.6.3
    # via ipython
stevedore==5.3.0
    # via
    #   qiskit-terra
    #   qiskit-terra (pyproject.toml)
symengine==0.11.0 ; platform_machine == "x86_64" or platform_machine == "aarch64" or platform_machine == "ppc64le" or platform_machine == "amd64" or platform_machine == "arm64"
    # via
    #   qiskit-terra
    #   qiskit-terra (pyproject.toml)
sympy==1.13.2
    # via
    #   qiskit-terra
    #   qiskit-terra (pyproject.toml)
traitlets==5.14.3
    # via
    #   comm
    #   ipython
    #   ipywidgets
    #   matplotlib-inline
typing-extensions==4.12.2 ; python_version < "3.11"
    # via
    #   ipython
    #   qiskit-terra
    #   qiskit-terra (pyproject.toml)
tzdata==2024.1
    # via pandas
wcwidth==0.2.13
    # via prompt-toolkit
wheel==0.44.0
    # via qiskit-terra (pyproject.toml::build-system.requires)
widgetsnbextension==4.0.13
    # via ipywidgets
zipp==3.20.1
    # via
    #   importlib-metadata
    #   importlib-resources

# The following packages are considered to be unsafe in a requirements file:
# setuptools



