Commit d1379aa
authored
`rustworkx-core` exposes `hashbrown` types in its own public API, which
requires downstream crates match their resolved `hashbrown` versions to
the one used by `rustworkx-core` in its API (up to potentially using a
re-export of `hashbrown` from `rustworkx-core`, but one isn't provided,
and it's not really scalable for `rustworkx-core` to claim it dictates
the version of such a commonly used package).
The Python-space `rustworkx` package passes `hashbrown` types between
PyO3 and `petgraph` interfaces, so requires hard matches to the resolved
versions used by those libraries, but that's a tighter constraint.
These separate concerns motivate splitting the allowed bounds on
`hashbrown`, so that downstream Rust-space consumers of `rustworkx-core`
can use newer versions of `hashbrown` without being held back by the
Python-space package. For example, with this commit, Qiskit can now
upgrade its internal use to `hashbrown 0.16.1`, including extracting
those objects from (a newer) PyO3 and passing them to `rustworkx-core`.
1 parent 15a296a commit d1379aa
2 files changed
Lines changed: 12 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
34 | | - | |
35 | 34 | | |
36 | 35 | | |
37 | 36 | | |
| |||
45 | 44 | | |
46 | 45 | | |
47 | 46 | | |
48 | | - | |
49 | 47 | | |
50 | 48 | | |
51 | 49 | | |
| |||
68 | 66 | | |
69 | 67 | | |
70 | 68 | | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
71 | 73 | | |
72 | 74 | | |
73 | 75 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
17 | | - | |
18 | 17 | | |
19 | 18 | | |
20 | 19 | | |
| |||
26 | 25 | | |
27 | 26 | | |
28 | 27 | | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
29 | 35 | | |
30 | 36 | | |
31 | | - | |
| 37 | + | |
0 commit comments