From ecdd98f594ba59cbad56af9022b6600e18e56d0e Mon Sep 17 00:00:00 2001 From: Mark Wolfman Date: Mon, 21 Oct 2024 12:50:42 -0500 Subject: [PATCH] Fixed CI definition. --- .github/workflows/ci.yml | 117 ++++++++++++++++++++++++++------------- pyproject.toml | 2 +- 2 files changed, 81 insertions(+), 38 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bab01b8..916e8ad 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,43 +1,86 @@ -# Based on tutorial: https://autobencoder.com/2020-08-24-conda-actions/ +# https://docs.github.com/en/actions/use-cases-and-examples/building-and-testing/building-and-testing-python -name: Tests -on: - push: - branches: - - main - pull_request: - branches: - - main - -env: - DISPLAY: ":99" - PYDM_DEFAULT_PROTOCOL: ca - BLUESKY_DEBUG_CALLBACKS: 1 +name: Guarneri +on: [push] jobs: - build-linux: - defaults: - run: - shell: bash -l {0} - runs-on: ubuntu-22.04 + build: + runs-on: ubuntu-latest + timeout-minutes: 10 strategy: - max-parallel: 5 + matrix: + python-version: ["pypy3.10", "3.10", "3.11", "3.12", "3.13"] + steps: - - uses: actions/checkout@v3 - - name: Install \{ - run: pip install -e ".[dev]" - - name: Environment info - run: | - env - pip freeze - - name: Lint - run: | - # Check for syntax errors or undefined names - flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics - # Make sure black code formatting is applied - black --check --preview src/ - # Make sure import orders are correct - isort --check src/ - # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + - uses: actions/checkout@v4 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + # You can test your matrix by printing the current Python version + - name: Display Python version + run: python -c "import sys; print(sys.version)" + - name: Install guarneri + run: pip install -e ".[dev]" + - name: Environment info + run: | + env + pip freeze + - name: Lint + run: | + # Check for syntax errors or undefined names + flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics + # Make sure black code formatting is applied + black --check --preview src/ + # Make sure import orders are correct + isort --check src/ + # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide + flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + - name: Haven tests with pytest in Xvfb + run: pytest -vv + - name: Reporting linting + run: | + flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + +# name: Tests +# on: +# push: +# branches: +# - main +# pull_request: +# branches: +# - main + +# env: +# DISPLAY: ":99" +# PYDM_DEFAULT_PROTOCOL: ca +# BLUESKY_DEBUG_CALLBACKS: 1 + + +# jobs: +# build-linux: +# defaults: +# run: +# shell: bash -l {0} +# runs-on: ubuntu-22.04 +# strategy: +# max-parallel: 5 +# steps: +# - uses: actions/checkout@v3 +# - name: Install guarneri +# run: pip install ".[dev]" +# - name: Environment info +# run: | +# env +# pip freeze +# - name: Lint +# run: | +# # Check for syntax errors or undefined names +# flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics +# # Make sure black code formatting is applied +# black --check --preview src/ +# # Make sure import orders are correct +# isort --check src/ +# # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide +# flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics diff --git a/pyproject.toml b/pyproject.toml index 0c05353..ad71461 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,5 @@ [build-system] -requires = ["setuptools>=61.0"] +requires = ["setuptools>=61.0", "setuptools-scm>=8.0"] build-backend = "setuptools.build_meta" [project]