Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Only install numpy and scipy from wheels in build jobs (Qiskit#1449)
* Only install numpy and scipy from wheels in build jobs With recent changes to the upstream numpy and scipy packaging our CI build jobs are spending most of their time build numpy and/or scipy from source to test the built wheels function correctly. This is unecessary as there are compatible wheels available on pypi. To correct this issue this commit updates the cibuildwheel config used in the wheel build jobs (both for ci and release artifacts) to only use binary wheels for numpy and scipy before testing. * Use manylinux 2014 for py310 wheel builds In the previous commit we switched to the test configuration to install numpy and scipy only from binary pre-compiled wheel packages. However, for scipy and numpy starting in Python 3.10 they only package for manylinux2014 while for aer we were still using manylinux2010 for all the builds. To enable building on python 3.10 we need to use manylinux2014, but for compatibility we still need to use manylinux2010. This commit makes this change so for python 3.6-3.9 we build on manylinux2010 and for python 3.10 we build on manylinux 2014. To facilitate this change the configuration for cibuildwheel is changed to leverage the pyproject.toml to set the configuration for cibuildwheel instead of using separate environment variables. This centralizes the configuration and makes it easier to work with. * Bump cibuildwheel version The pyproject.toml based configuration didn't support overrides (which was leveraged in the previous commit to use a different image for py310) until v2.2.0 and we were previously using a version older than that. This commit bumps the cibuildwheel version to the 2.2.x release to enable the use of this option. * Use manylinux2010 for all i686 builds The i686 py310 job was failing because centos7 (which manylinux2014 is based off of) doesn't have openblas packaged for i686. We orignally switched both the x86_64 and i686 py310 jobs to use manylinux2014 because numpy and scipy made python 3.10 manylinux2014 and only publish manylinux2014 wheels. However, numpy/scipy don't support i686 on py310 and we already skip test installs for py310. So regardless we have to build numpy from source to build aer. So using manylinux2010 which is centos6 based will enable us to at least build because there is an openblas package available.
- Loading branch information