diff --git a/.github/workflows/build-linux.yml b/.github/workflows/build-linux.yml index 4ef8c11..c7b6a18 100644 --- a/.github/workflows/build-linux.yml +++ b/.github/workflows/build-linux.yml @@ -1,9 +1,9 @@ name: build-linux on: - # push: - # branches: - # - main + push: + branches: + - main release: types: - published @@ -15,7 +15,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.9', '3.10', '3.11'] + python-version: ['3.9', '3.10', '3.11', '3.12'] steps: - name: Checkout diff --git a/.github/workflows/build-macos.yml b/.github/workflows/build-macos.yml index e13e81a..3b37b6f 100644 --- a/.github/workflows/build-macos.yml +++ b/.github/workflows/build-macos.yml @@ -1,9 +1,9 @@ name: build-macos on: - # push: - # branches: - # - main + push: + branches: + - main release: types: - published @@ -15,7 +15,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.9', '3.10', '3.11'] + python-version: ['3.9', '3.10', '3.11', '3.12'] steps: - name: Checkout diff --git a/.github/workflows/build-windows.yml b/.github/workflows/build-windows.yml index ee32661..2d9088f 100644 --- a/.github/workflows/build-windows.yml +++ b/.github/workflows/build-windows.yml @@ -1,9 +1,9 @@ name: build-windows on: - # push: - # branches: - # - main + push: + branches: + - main release: types: - published @@ -15,7 +15,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.9', '3.10', '3.11'] + python-version: ['3.9', '3.10', '3.11', '3.12'] steps: - name: Checkout diff --git a/.github/workflows/check-manifest.yml b/.github/workflows/check-manifest.yml index 0363fbc..128f2ad 100644 --- a/.github/workflows/check-manifest.yml +++ b/.github/workflows/check-manifest.yml @@ -1,9 +1,9 @@ name: "Check Manifest" on: - # push: - # branches: - # - main + push: + branches: + - main release: types: [published] @@ -17,7 +17,7 @@ jobs: - name: Setup Python uses: actions/setup-python@v4 with: - python-version: '3.11' + python-version: '3.12' - name: Install prerequisites run: sudo apt install libgeos3.10.2 libgeos-dev -y diff --git a/.github/workflows/deploy-conda.yml b/.github/workflows/deploy-conda.yml index ccbdeac..c7a953c 100644 --- a/.github/workflows/deploy-conda.yml +++ b/.github/workflows/deploy-conda.yml @@ -1,9 +1,9 @@ name: deploy-conda on: - # push: - # branches: - # - main + push: + branches: + - main release: types: - published @@ -55,7 +55,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, windows-latest, macos-latest] - python-version: ['3.9', '3.10', '3.11'] + python-version: ['3.9', '3.10', '3.11', '3.12'] steps: - name: Setup Miniconda diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml index 7ef9acd..3e7d0f4 100644 --- a/.github/workflows/deploy-docs.yml +++ b/.github/workflows/deploy-docs.yml @@ -31,7 +31,7 @@ jobs: python -m pip install -r requirements.txt # python -m pip install --force-reinstall -r requirements_plot.txt export CYTHON_BUILD_FOR_DOC=1 - python setup.py install + python setup.py install # do not use "pip install ." as it fails # Build sphinx in /docs/build - name: Build Sphinx diff --git a/.github/workflows/deploy-pypi.yml b/.github/workflows/deploy-pypi.yml index fbcec0e..4008dec 100644 --- a/.github/workflows/deploy-pypi.yml +++ b/.github/workflows/deploy-pypi.yml @@ -1,9 +1,9 @@ name: deploy-pypi on: - # push: - # branches: - # - main + push: + branches: + - main release: types: - published @@ -19,7 +19,7 @@ jobs: - name: Setup Python uses: actions/setup-python@v4 with: - python-version: '3.11' + python-version: '3.12' - name: Install twine and wheel run: | @@ -52,7 +52,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, windows-latest, macos-latest] - python-version: ['3.9', '3.10', '3.11'] + python-version: ['3.9', '3.10', '3.11', '3.12'] steps: - name: Setup Python ${{ matrix.python-version }} diff --git a/README.rst b/README.rst index b1f0ae0..e6cc1ba 100644 --- a/README.rst +++ b/README.rst @@ -42,17 +42,23 @@ Successful installation and tests performed on the following operating systems a .. |y| unicode:: U+2714 .. |n| unicode:: U+2716 -+----------+--------+-------+-------+-------+-----------------+ -| Platform | Arch | Python Version | Continuous | -+ | +-------+-------+-------+ Integration + -| | | 3.9 | 3.10 | 3.11 | | -+==========+========+=======+=======+=======+=================+ -| Linux | X86-64 | |y| | |y| | |y| | |build-linux| | -+----------+--------+-------+-------+-------+-----------------+ -| macOS | X86-64 | |y| | |y| | |y| | |build-macos| | -+----------+--------+-------+-------+-------+-----------------+ -| Windows | X86-64 | |y| | |y| | |y| | |build-windows| | -+----------+--------+-------+-------+-------+-----------------+ ++----------+----------+-------+-------+-------+-------+-----------------+ +| Platform | Arch | Python Version | Continuous | ++ | +-------+-------+-------+-------+ Integration + +| | | 3.9 | 3.10 | 3.11 | 3.12 | | ++==========+==========+=======+=======+=======+=======+=================+ +| Linux | X86-64 | |y| | |y| | |y| | |y| | |build-linux| | ++ +----------+-------+-------+-------+-------+ + +| | AARCH-64 | |y| | |y| | |y| | |y| | | ++----------+----------+-------+-------+-------+-------+-----------------+ +| macOS | X86-64 | |y| | |y| | |y| | |y| | |build-macos| | ++ +----------+-------+-------+-------+-------+ + +| | ARM-64 | |y| | |y| | |y| | |y| | | ++----------+----------+-------+-------+-------+-------+-----------------+ +| Windows | X86-64 | |y| | |y| | |y| | |y| | |build-windows| | ++ +----------+-------+-------+-------+-------+ + +| | ARM-64 | |y| | |y| | |y| | |y| | | ++----------+----------+-------+-------+-------+-------+-----------------+ .. |build-linux| image:: https://img.shields.io/github/actions/workflow/status/ameli/restoreio/build-linux.yml :target: https://github.com/ameli/restoreio/actions?query=workflow%3Abuild-linux diff --git a/conda-recipe/conda_build_config.yaml b/conda-recipe/conda_build_config.yaml index 6fc2654..f16864c 100644 --- a/conda-recipe/conda_build_config.yaml +++ b/conda-recipe/conda_build_config.yaml @@ -2,3 +2,4 @@ python: - 3.9 - 3.10 - 3.11 + - 3.12 diff --git a/docs/source/index.rst b/docs/source/index.rst index 9634705..d6bbaa6 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -63,17 +63,23 @@ Successful installation and tests performed on the following operating systems, .. |y| unicode:: U+2714 .. |n| unicode:: U+2716 -+----------+--------+-------+-------+-------+-----------------+ -| Platform | Arch | Python Version | Continuous | -+ | +-------+-------+-------+ Integration + -| | | 3.9 | 3.10 | 3.11 | | -+==========+========+=======+=======+=======+=================+ -| Linux | X86-64 | |y| | |y| | |y| | |build-linux| | -+----------+--------+-------+-------+-------+-----------------+ -| macOS | X86-64 | |y| | |y| | |y| | |build-macos| | -+----------+--------+-------+-------+-------+-----------------+ -| Windows | X86-64 | |y| | |y| | |y| | |build-windows| | -+----------+--------+-------+-------+-------+-----------------+ ++----------+----------+-------+-------+-------+-------+-----------------+ +| Platform | Arch | Python Version | Continuous | ++ | +-------+-------+-------+-------+ Integration + +| | | 3.9 | 3.10 | 3.11 | 3.12 | | ++==========+==========+=======+=======+=======+=======+=================+ +| Linux | X86-64 | |y| | |y| | |y| | |y| | |build-linux| | ++ +----------+-------+-------+-------+-------+ + +| | AARCH-64 | |y| | |y| | |y| | |y| | | ++----------+----------+-------+-------+-------+-------+-----------------+ +| macOS | X86-64 | |y| | |y| | |y| | |y| | |build-macos| | ++ +----------+-------+-------+-------+-------+ + +| | ARM-64 | |y| | |y| | |y| | |y| | | ++----------+----------+-------+-------+-------+-------+-----------------+ +| Windows | X86-64 | |y| | |y| | |y| | |y| | |build-windows| | ++ +----------+-------+-------+-------+-------+ + +| | ARM-64 | |y| | |y| | |y| | |y| | | ++----------+----------+-------+-------+-------+-------+-----------------+ .. |build-linux| image:: https://img.shields.io/github/actions/workflow/status/ameli/restoreio/build-linux.yml :target: https://github.com/ameli/restoreio/actions?query=workflow%3Abuild-linux diff --git a/examples/uncertainty_quant/_utils/_plot_utils/_plot_utilities.py b/examples/uncertainty_quant/_utils/_plot_utils/_plot_utilities.py index ee9fe72..1952b63 100644 --- a/examples/uncertainty_quant/_utils/_plot_utils/_plot_utilities.py +++ b/examples/uncertainty_quant/_utils/_plot_utils/_plot_utilities.py @@ -27,7 +27,7 @@ from matplotlib.ticker import FormatStrFormatter # noqa: F401 from mpl_toolkits.axes_grid1 import make_axes_locatable # noqa: F401 -from distutils.spawn import find_executable +import shutil from ._display_utilities import is_notebook import logging import warnings @@ -75,7 +75,7 @@ def load_plot_settings(): # sns.set() # LaTeX - if find_executable('latex'): + if shutil.which('latex'): try: # plt.rc('text',usetex=True) matplotlib.rcParams['text.usetex'] = True diff --git a/restoreio/_plots/_plot_utilities.py b/restoreio/_plots/_plot_utilities.py index c48c3ac..698cda0 100644 --- a/restoreio/_plots/_plot_utilities.py +++ b/restoreio/_plots/_plot_utilities.py @@ -27,7 +27,7 @@ from matplotlib.ticker import FormatStrFormatter # noqa: F401 from mpl_toolkits.axes_grid1 import make_axes_locatable # noqa: F401 -from distutils.spawn import find_executable +import shutil from ._display_utilities import is_notebook import logging import warnings @@ -75,7 +75,7 @@ def load_plot_settings(): # sns.set() # LaTeX - if find_executable('latex'): + if shutil.which('latex'): try: # plt.rc('text',usetex=True) matplotlib.rcParams['text.usetex'] = True diff --git a/setup.py b/setup.py index 3f7753a..ccc21f2 100644 --- a/setup.py +++ b/setup.py @@ -193,7 +193,7 @@ def main(argv): 'examples'] ), install_requires=requirements, - python_requires='>=3.7', + python_requires='>=3.9', setup_requires=[ 'setuptools', 'wheel', @@ -215,11 +215,10 @@ def main(argv): }, classifiers=[ 'Programming Language :: Python', - 'Programming Language :: Python :: 3.7', - 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', + 'Programming Language :: Python :: 3.12', 'Programming Language :: Python :: Implementation :: CPython', 'License :: OSI Approved :: BSD License', 'Operating System :: POSIX :: Linux',