From 69098111ffb96eb1c212422825cf69a12049d7b9 Mon Sep 17 00:00:00 2001 From: Paul Natsuo Kishimoto Date: Wed, 3 May 2023 12:25:44 +0200 Subject: [PATCH 1/6] =?UTF-8?q?Bump=20genno=20dependency=201.12=20?= =?UTF-8?q?=E2=86=92=201.16=20for=20Python=20>=3D=203.8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pyproject.toml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index e80cc467f..25024a834 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -32,8 +32,9 @@ classifiers = [ ] dependencies = [ "click", - "genno >= 1.12.0", - 'importlib_metadata; python_version < "3.8"', + "genno <= 1.13; python_version < '3.8'", + "genno >= 1.16; python_version >= '3.8'", + "importlib_metadata; python_version < '3.8'", "JPype1 >= 1.2.1", "openpyxl", "pandas >= 1.2", From 27a521ba35e97057a05b8af18839158a98919a9a Mon Sep 17 00:00:00 2001 From: Paul Natsuo Kishimoto Date: Wed, 3 May 2023 12:30:14 +0200 Subject: [PATCH 2/6] Mark Python 3.11 compat in pyproject.toml --- pyproject.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/pyproject.toml b/pyproject.toml index 25024a834..11f59fb09 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -26,6 +26,7 @@ classifiers = [ "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", "Programming Language :: R", "Topic :: Scientific/Engineering", "Topic :: Scientific/Engineering :: Information Analysis", From 20ecff5dd7c37cd90b20977ef26719d3f0ba83b8 Mon Sep 17 00:00:00 2001 From: Paul Natsuo Kishimoto Date: Wed, 3 May 2023 12:31:24 +0200 Subject: [PATCH 3/6] Test against Python 3.11 --- .github/workflows/lint.yaml | 11 +++++++---- .github/workflows/pytest.yaml | 11 ++--------- 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index 4d0be8312..0816b15fb 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -10,7 +10,10 @@ jobs: lint: uses: iiasa/actions/.github/workflows/lint.yaml@main with: - # If the "Latest version testable on GitHub Actions" in pytest.yaml - # is not the latest 3.x stable version, adjust here to match: - python-version: "3.10" - type-hint-packages: pytest genno GitPython nbclient nbformat xarray sphinx + type-hint-packages: >- + genno + GitPython + nbclient + pytest + sphinx + xarray diff --git a/.github/workflows/pytest.yaml b/.github/workflows/pytest.yaml index f95f736fd..5a41c77ce 100644 --- a/.github/workflows/pytest.yaml +++ b/.github/workflows/pytest.yaml @@ -29,15 +29,8 @@ jobs: - "3.7" # Earliest version supported by ixmp - "3.8" - "3.9" - - "3.10" # Latest supported by ixmp - - # For fresh releases and development versions of Python, compiled - # binary wheels are not available for some dependencies, e.g. llvmlite, - # numba, numpy, and/or pandas. Compiling these on the job runner - # requires a more elaborate build environment, currently out of scope - # for the ixmp project. - # - "3.11" # Latest release; pending numba/numba#8304 - # - "3.12.0-alpha.1" # Development version + - "3.10" + - "3.11" # Latest supported by ixmp # commented: force a specific version of pandas, for e.g. pre-release # testing From 26e326e29edcd4f914a11cf971344220793172b1 Mon Sep 17 00:00:00 2001 From: Paul Natsuo Kishimoto Date: Wed, 3 May 2023 12:35:19 +0200 Subject: [PATCH 4/6] Add #481 to release notes --- RELEASE_NOTES.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/RELEASE_NOTES.rst b/RELEASE_NOTES.rst index 18a42af0e..327d9db17 100644 --- a/RELEASE_NOTES.rst +++ b/RELEASE_NOTES.rst @@ -4,6 +4,7 @@ Next release All changes ----------- +- :mod:`ixmp` is tested and compatible with `Python 3.11 `__ (:pull:`481`). - :mod:`ixmp` is tested and compatible with `pandas 2.0.0 `__ (:pull:`471`). Note that `pandas 1.4.0 dropped support for Python 3.7 `__: thus while :mod:`ixmp` still supports Python 3.7 this is achieved with pandas 1.3.x, which may not receive further updates (the last patch release was in December 2021). Support for Python 3.7 will be dropped in a future version of :mod:`ixmp`, and users are encouraged to upgrade to a newer version of Python. From dc7d4148733572e512c3f777adcc200b27e7cdaa Mon Sep 17 00:00:00 2001 From: Paul Natsuo Kishimoto Date: Wed, 3 May 2023 12:43:19 +0200 Subject: [PATCH 5/6] Don't downgrade JPype for Python 3.11 in "pytest" CI workflow --- .github/workflows/pytest.yaml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pytest.yaml b/.github/workflows/pytest.yaml index 5a41c77ce..3726fdd6f 100644 --- a/.github/workflows/pytest.yaml +++ b/.github/workflows/pytest.yaml @@ -96,10 +96,13 @@ jobs: - name: Install Python package and dependencies run: | pip install .[tests] + # commented: use with "pandas-version" in the matrix, above # pip install --upgrade pandas${{ matrix.pandas-version }} - # TEMPORARY work around iiasa/ixmp#463 - pip install "JPype1 != 1.4.1" + + - name: TEMPORARY Work around iiasa/ixmp#463 + if: matrix.python-version != '3.11' + run: pip install "JPype1 != 1.4.1" - name: Install R dependencies and tutorial requirements run: | From bd7b78f1334356a768d222ef98e9ff1b9bd613c4 Mon Sep 17 00:00:00 2001 From: Paul Natsuo Kishimoto Date: Thu, 11 May 2023 10:10:40 +0200 Subject: [PATCH 6/6] Reflow a line in references.bib --- doc/references.bib | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/doc/references.bib b/doc/references.bib index 9f4855b01..4ba167244 100644 --- a/doc/references.bib +++ b/doc/references.bib @@ -1,8 +1,5 @@ @article{huppmann_messageix_2018, - author = {Huppmann, Daniel and Gidden, Matthew and Fricko, Oliver and - Kolp, Peter and Orthofer, Clara and Pimmer, Michael and - Kushin, Nikolay and Vinca, Adriano and Mastrucci, Alessio and - Riahi, Keywan and Krey, Volker}, + author = {Huppmann, Daniel and Gidden, Matthew and Fricko, Oliver and Kolp, Peter and Orthofer, Clara and Pimmer, Michael and Kushin, Nikolay and Vinca, Adriano and Mastrucci, Alessio and Riahi, Keywan and Krey, Volker}, title = {{The MESSAGEix Integrated Assessment Model and the ix modeling platform (ixmp): An open framework for integrated and cross-cutting analysis of energy, climate, the environment, and sustainable development}}, journal = {Environmental Modelling \& Software}, volume = {112},