# necessary
numpy
scipy < 1.11 # for now, until issues with scipy/pyscf are fixed # can in principle be smaller, we recommend >= 1.5 for consistency with our tutorials (numerical gradients mostly)
sympy
#jax
#jaxlib
autograd # autograd works better on OSX-ARM64 (M1 and M2) and Windows, feel free to try jax however (no big differences)
setuptools
pytest
openfermion ~= 1.0 # can not be smaller than 1.0 
#cmake # needed by #qulacs, can be removed otherwise, now in #qulacs requirements
#qulacs # default simulator (best integration), remove if the installation gives you trouble and just install one of the other supported backend. Version restriction only for noise models, otherwise the new version is fine

#optional quantum backends
#cirq >= 0.9.2 #
#cirq_google
#qiskit>=0.30
#pyquil<3.0 # you also need to install the forest-sdk
##qulacs-gpu # you can't have #qulacs and #qulacs-gpu at the same time
#qibo <= 0.1.1 # can not be installed in the same environment as gpyopt

#optional optimizers
#gpyopt # not in combination with qibo as quantum backend

#optional third party libraries
#pyzx
#pyscf # if used also restrict h5py version untill the issue is fixed upstream in pyscf
#h5py <= 3.1 # version 3.3.0 leads to crashes when pyscf is imported
