diff --git a/.github/workflows/CI.yaml b/.github/workflows/CI.yaml index f23699b5..2aaf0082 100644 --- a/.github/workflows/CI.yaml +++ b/.github/workflows/CI.yaml @@ -10,9 +10,9 @@ jobs: test: runs-on: ubuntu-latest strategy: - fail-fast: true + fail-fast: false matrix: - python-version: ["3.7", "3.9", "3.11"] + python-version: ["3.7", "3.9", "3.11", "3.12"] pydantic-version: ["1", "2"] steps: diff --git a/docs/changelog.rst b/docs/changelog.rst index d2d8bf8a..789bb35b 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -15,6 +15,10 @@ Changelog .. .. Bug Fixes .. +++++++++ +.. +.. Misc. +.. +++++ + Unreleased ------------------- @@ -24,12 +28,23 @@ Breaking Changes New Features ++++++++++++ +- (:pr:`326`, :pr:`327`) New protocol option ``occupations_and_eigenvalues`` added to + ``WavefunctionProperties`` to store lightweight fields. Enhancements ++++++++++++ +- (:pr:`322`) Allow ``util.which`` to raise a clearer error when handling pyenv shims. Improve docs. Bug Fixes +++++++++ +- (:pr:`325`, :issue:`324`) Ensure ``util.measure_coordinates`` isn't returning NaN angles just + because floating-point errors are outside arccos's ``[-1, 1]`` bounds. +- (:pr:`315`) Stop resetting numpy print formatting. + +Misc. ++++++ +- (:pr:`320`) Reset ``black`` formatting to 2022. +- (:pr:`327`) Enable Python v3.12 in poetry. 0.26.0 / 2023-07-31 diff --git a/pyproject.toml b/pyproject.toml index 4d509840..60cf57b9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -22,12 +22,13 @@ classifiers = [ "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", ] [tool.poetry.dependencies] numpy = [ { version = ">=1.12.0", python = "3.8" }, - { version = ">=1.24.1", python = ">=3.9" }, + { version = ">=1.26.1", python = ">=3.9,<3.13" }, ] python = "^3.7" pint = ">=0.10.0" @@ -38,7 +39,7 @@ importlib-metadata = { version = ">=4.8", python = "<3.8" } networkx = { version = "<3.0", optional = true } scipy = [ { version = ">=1.6.0", python = "<3.9", optional = true }, - { version = ">=1.9.0", python = ">=3.9", optional = true }, + { version = ">=1.9.0", python = ">=3.9,<3.13", optional = true }, ] pytest = { version = "^7.2.2", optional = true } diff --git a/qcelemental/models/results.py b/qcelemental/models/results.py index 922197ab..301e1734 100644 --- a/qcelemental/models/results.py +++ b/qcelemental/models/results.py @@ -507,7 +507,7 @@ class WavefunctionProtocolEnum(str, Enum): all = "all" orbitals_and_eigenvalues = "orbitals_and_eigenvalues" - eigenvalues_and_occupations = "eigenvalues_and_occupations" + occupations_and_eigenvalues = "occupations_and_eigenvalues" return_results = "return_results" none = "none" @@ -703,8 +703,8 @@ def _wavefunction_protocol(cls, value, values): ] elif wfnp == "orbitals_and_eigenvalues": return_keep = ["orbitals_a", "orbitals_b", "eigenvalues_a", "eigenvalues_b"] - elif wfnp == "eigenvalues_and_occupations": - return_keep = ["eigenvalues_a", "eigenvalues_b", "occupations_a", "occupations_b"] + elif wfnp == "occupations_and_eigenvalues": + return_keep = ["occupations_a", "occupations_b", "eigenvalues_a", "eigenvalues_b"] else: raise ValueError(f"Protocol `wavefunction:{wfnp}` is not understood.") diff --git a/qcelemental/tests/test_model_results.py b/qcelemental/tests/test_model_results.py index c0670662..7ce94efe 100644 --- a/qcelemental/tests/test_model_results.py +++ b/qcelemental/tests/test_model_results.py @@ -308,13 +308,13 @@ def test_wavefunction_return_result_pointer(wavefunction_data_fixture): ), ("return_results", True, ["orbitals_a", "fock_a", "fock_b"], ["orbitals_a", "fock_a"]), ( - "eigenvalues_and_occupations", + "occupations_and_eigenvalues", True, ["orbitals_a", "orbitals_b", "occupations_a", "occupations_b", "eigenvalues_a", "eigenvalues_b"], ["occupations_a", "eigenvalues_a"], ), ( - "eigenvalues_and_occupations", + "occupations_and_eigenvalues", False, ["orbitals_a", "orbitals_b", "occupations_a", "occupations_b", "eigenvalues_a", "eigenvalues_b"], ["occupations_a", "occupations_b", "eigenvalues_a", "eigenvalues_b"],