diff --git a/.github/workflows/ci_test.yml b/.github/workflows/ci_test.yml index 1fa47a4ce..f43615c9c 100644 --- a/.github/workflows/ci_test.yml +++ b/.github/workflows/ci_test.yml @@ -24,16 +24,16 @@ jobs: matrix: include: - os: ubuntu-latest - python: '3.10' + python: '3.12' tox_env: 'ephemeris_connection' - os: ubuntu-latest - python: '3.10' + python: '3.12' tox_env: 'black' - os: ubuntu-latest - python: '3.10' - tox_env: 'py310-test-cov' + python: '3.12' + tox_env: 'py312-test-cov' - os: ubuntu-latest - python: '3.10' + python: '3.12' tox_env: 'notebooks' # - os: ubuntu-latest # python: '3.8' @@ -42,8 +42,8 @@ jobs: # python: '3.10' # tox_env: 'py310-test-alldeps-cov' - os: macos-latest - python: '3.10' - tox_env: 'py310-test' + python: '3.12' + tox_env: 'py312-test' # - os: windows-latest # python: '3.8' # tox_env: 'py38-test' @@ -71,11 +71,10 @@ jobs: - name: Install pandoc dependency if: "endsWith(matrix.tox_env, 'docs')" run: sudo apt-get -y install pandoc - - name: Print Python, pip, setuptools, and tox versions + - name: Print Python, pip, and tox versions run: | python -c "import sys; print(f'Python {sys.version}')" python -c "import pip; print(f'pip {pip.__version__}')" - python -c "import setuptools; print(f'setuptools {setuptools.__version__}')" python -c "import tox; print(f'tox {tox.__version__}')" - name: Run tests run: tox -e ${{ matrix.tox_env }} diff --git a/setup.cfg b/setup.cfg index 52fa9ec59..b8c3fc47c 100644 --- a/setup.cfg +++ b/setup.cfg @@ -18,6 +18,8 @@ classifier = 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 Topic :: Scientific/Engineering :: Astronomy Topic :: Software Development :: Libraries :: Python Modules diff --git a/tox.ini b/tox.ini index c996f91f6..f6d4241a0 100644 --- a/tox.ini +++ b/tox.ini @@ -13,7 +13,7 @@ envlist = report codestyle black - py{38,39,310}-test{,-alldeps,-devdeps}{,-cov} + py{38,39,310,311,312}-test{,-alldeps,-devdeps}{,-cov} skip_missing_interpreters = True @@ -38,6 +38,7 @@ deps = hypothesis numdifftools pathos + setuptools commands = pip freeze !cov: pytest @@ -45,8 +46,8 @@ commands = cov: coverage xml -o {toxinidir}/coverage.xml depends = - {py38,py39,py310}: clean - report: py38,py39,py310 + {py38,py39,py310,py311,py312}: clean + report: py38,py39,py310,py312 docs: notebooks [testenv:ephemeris_connection] @@ -55,6 +56,8 @@ description = commands = python check_ephemeris_connection.py deps = + setuptools + [testenv:oldestdeps] description = Run tests on Python 3 with minimum supported versions of astropy, numpy @@ -80,7 +83,7 @@ commands = [testenv:notebooks] description = update the notebooks -basepython = python3.10 +basepython = python3.12 deps = traitlets sphinx >= 2.2, != 5.1.0 @@ -92,6 +95,7 @@ deps = pytest jupytext black + setuptools commands = jupytext --sync examples/*.py jupytext --pipe black --pipe-fmt py:percent examples/*.ipynb @@ -106,7 +110,7 @@ commands = coverage erase [testenv:docs] changedir = {toxinidir}/docs description = invoke sphinx-build to build the HTML docs -basepython = python3.10 +basepython = python3.12 deps = traitlets sphinx >= 2.2, != 5.1.0 @@ -118,6 +122,7 @@ deps = pytest jupytext black + setuptools commands = sphinx-build -d "{toxworkdir}/docs_doctree" . "{toxworkdir}/docs_out" --color -bhtml {posargs} python -c 'import pathlib; print("documentation available under file://\{0\}".format(pathlib.Path(r"{toxworkdir}") / "docs_out" / "index.html"))'