This release uses a preview version of the Qrack v8 API! The public PyQrack API is not changed, and most users won't notice a difference. However, the general point of Qrack v8 is to take lessons about "memory safety" from 5 years of Qrack development.
The biggest (internal) change is that Qrack public API methods no longer accept the combination of a raw (`const`) pointer and a secondary parameter to specify its length; rather, all such instances for `bitLenInt` index lists simply accept a `const std::vector<bitLenInt>&` type argument, to replace both parameters as a set. As a result, (without some very unlikely and "opportune" partial corruption of `std::vector` container instances,) it should never be possible in statically-linked Qrack to induce the library, with an invalid array length parameter, to read out-of-bounds past the end of the original pointer-to-`const` parameter. (Performance-critical sections _with an exact implicitly known length_ for pointer parameters, like in direct state vector copying, retain raw pointer-to`const` signatures.)
Qrack takes the recent popular and professional discourse surrounding Rust and "memory safety" seriously. More than a quarter million downloads of PyQrack later, the PyQrack developers can assert with confidence due to our track record in field deployment that double-free, access-after-free, memory leaks, and concurrency errors are typically _nil_, in any given iteration of the Qrack binaries under PyQrack. However, that doesn't mean we can't learn and benefit from past mistakes and new designs! The parameter patterns that Qrack v8 replaces, going back to the absolute earliest days of Qrack, have by now proven to be wholly an anti-pattern, with no particular benefit and at least one obvious problem. PyQrack users never directly interfaced with this anti-pattern anyway, but sleep soundly knowing that internal use of "lists" of qubit indices are bounds-checked for both the index "list" container and the subsequent OpenCL access patterns for which they code! (You rock!)