diff --git a/.github/workflows/ci_workflows.yml b/.github/workflows/ci_workflows.yml index b8010557..66f1e13f 100644 --- a/.github/workflows/ci_workflows.yml +++ b/.github/workflows/ci_workflows.yml @@ -5,7 +5,17 @@ on: pull_request: jobs: + initial_checks: + # Mandatory checks before CI tests + uses: OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@v1 + with: + coverage: false + envs: | + # Code style + - linux: codestyle + tests: + needs: initial_checks uses: OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@v1 with: display: true @@ -14,28 +24,32 @@ jobs: apt: - '^libxcb.*-dev' - libxkbcommon-x11-dev + - libhdf5-dev + brew: + - hdf5 envs: | - # Code style - - linux: codestyle - # Standard tests - linux: py38-test - linux: py39-test - - linux: py310-test + - linux: py310-test-devdeps - linux: py311-test + - linux: py312-test-devdeps - macos: py38-test - macos: py39-test - macos: py310-test - - macos: py311-test + - macos: py311-test-devdeps + - macos: py312-test - windows: py38-test - windows: py39-test - windows: py310-test - - windows: py311-test + - windows: py311-test-devdeps + - windows: py312-test publish: + needs: tests uses: OpenAstronomy/github-actions-workflows/.github/workflows/publish_pure_python.yml@v1 with: # setup headless X server as per pyvista/setup-headless-display-action@v1 diff --git a/tox.ini b/tox.ini index 4fbf72da..a53517e9 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py{36,37,38,39,py310}-test +envlist = py{37,38,39,310,311,312}-{test,devdeps} requires = pip >= 18.0 setuptools >= 30.3.0 @@ -11,6 +11,10 @@ changedir = test: .tmp/{envname} extras = test: test,qt +deps = + devdeps: git+https://github.com/astropy/astropy + devdeps: git+https://github.com/astropy/reproject + devdeps: git+https://github.com/glue-viz/glue commands = test: pip freeze test: pytest --pyargs glue_wwt --cov glue_wwt {posargs}