Skip to content

Commit

Permalink
Pin Numpy < 2 in requirements
Browse files Browse the repository at this point in the history
We have compiled extensions that are built against the Numpy C API.  The
Numpy transition guide for developers of downstream packages[^1]
encourages us to put in this pin until we have wheels built against the
newer version, which is not expected to be fully ABI compatible (but
extensions built against Numpy 2 _should_ work with older Numpys).

Note that this won't prevent package managers from resolving _older_
versions of Qiskit (which don't have the pin) along with Numpy 2, but
there's not a vast amount we can do about that now.

[^1]: numpy/numpy#24300
  • Loading branch information
jakelishman committed Sep 22, 2023
1 parent dd94d6c commit 3a2ca87
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 1 deletion.
10 changes: 10 additions & 0 deletions releasenotes/notes/numpy-2-pin-f600328f24fab6dd.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
other:
- |
This version of Qiskit is explicitly pinned to the Numpy 1.x series, because it includes compiled
extensions that are not yet compiled against the as-yet-unreleased Numpy 2.x series. We will
release a new version of Qiskit with Numpy 2.x support as soon as feasible.
We cannot prevent your package manager from resolving to older versions of Qiskit (which do not
have the same pin but are still likely to be incompatible) if you forcibly try to install Qiskit
alongside Numpy 2, before we have released a compatible version.
2 changes: 1 addition & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
rustworkx>=0.13.0
numpy>=1.17
numpy>=1.17,<2
ply>=3.10
psutil>=5
scipy>=1.5
Expand Down

0 comments on commit 3a2ca87

Please sign in to comment.