Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
### Before submitting Please complete the following checklist when submitting a PR: - [ ] All new features must include a unit test. If you've fixed a bug or added code that should be tested, add a test to the test directory! - [ ] All new functions and code must be clearly commented and documented. If you do make documentation changes, make sure that the docs build and render correctly by running `make docs`. - [ ] Ensure that the test suite passes, by running `make test`. - [ ] Add a new entry to the `doc/releases/changelog-dev.md` file, summarizing the change, and including a link back to the PR. - [ ] The PennyLane source code conforms to [PEP8 standards](https://www.python.org/dev/peps/pep-0008/). We check all of our code against [Pylint](https://www.pylint.org/). To lint modified files, simply `pip install pylint`, and then run `pylint pennylane/path/to/file.py`. When all the above are checked, delete everything above the dashed line and fill in the pull request template. ------------------------------------------------------------------------------------------------------------ **Context:** @dwierichs reported the following ``` import jax import pennylane as qml x = jax.numpy.array(0.4, dtype=jax.numpy.float32) @qml.qnode(qml.device("default.qubit", shots=10)) def node(x): qml.RX(x, 0) qml.measure(0) return qml.expval(qml.Z(0)) print(jax.config.jax_enable_x64) >>> False # Expected because it was never activated out = node(x) print(jax.config.jax_enable_x64) >>> True # Not expected. ``` **Description of the Change:** `qml.compiler.active` first checks whether Catalyst is imported at all to avoid changing `jax_enable_x64` on module initialization. **Benefits:** **Possible Drawbacks:** **Related GitHub Issues:** [sc-67969] --------- Co-authored-by: Astral Cai <[email protected]>
- Loading branch information