Skip to content

Commit

Permalink
Fix CI (#150)
Browse files Browse the repository at this point in the history
  • Loading branch information
Shutgun authored Oct 24, 2023
1 parent b6858b7 commit 993ca0f
Show file tree
Hide file tree
Showing 3 changed files with 73 additions and 72 deletions.
141 changes: 70 additions & 71 deletions .github/workflows/pythonpackage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,45 +3,44 @@ name: Python package
on: [push]

jobs:

format:
name: Check formatting
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/[email protected]
- name: Set up Python
uses: actions/[email protected]
with:
python-version: "3.8"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install --no-binary=mypy mypy
- name: Check formatting
uses: pre-commit/[email protected]
- name: Checkout sources
uses: actions/[email protected]
- name: Set up Python
uses: actions/[email protected]
with:
python-version: "3.8"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install --no-binary=mypy mypy
- name: Check formatting
uses: pre-commit/[email protected]

lint:
name: Lint
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/[email protected]
- name: Set up Python
uses: actions/[email protected]
with:
python-version: "3.8"
- name: Lint with ruff
run: |
python -m pip install --upgrade pip
python -m pip install ruff
ruff check --format=github devolo_plc_api scripts
ruff check --format=github --exit-zero tests
- name: Lint with mypy
run: |
python -m pip install mypy types-protobuf
mypy devolo_plc_api
mypy tests || true
- name: Checkout sources
uses: actions/[email protected]
- name: Set up Python
uses: actions/[email protected]
with:
python-version: "3.8"
- name: Lint with ruff
run: |
python -m pip install --upgrade pip
python -m pip install ruff
ruff check --output-format=github devolo_plc_api scripts
ruff check --output-format=github --exit-zero tests
- name: Lint with mypy
run: |
python -m pip install mypy types-protobuf
mypy devolo_plc_api
mypy tests || true
test:
name: Test with Python ${{ matrix.python-version }}
Expand All @@ -50,50 +49,50 @@ jobs:
matrix:
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]
steps:
- name: Checkout sources
uses: actions/[email protected]
- name: Set up Python ${{ matrix.python-version }}
uses: actions/[email protected]
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
check-latest: true
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -e .[test]
- name: Test with pytest
run: |
pytest --cov=devolo_plc_api
- name: Preserve coverage
uses: actions/[email protected]
if: matrix.python-version == '3.8'
with:
name: coverage
path: .coverage
- name: Checkout sources
uses: actions/[email protected]
- name: Set up Python ${{ matrix.python-version }}
uses: actions/[email protected]
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
check-latest: true
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -e .[test]
- name: Test with pytest
run: |
pytest --cov=devolo_plc_api
- name: Preserve coverage
uses: actions/[email protected]
if: matrix.python-version == '3.8'
with:
name: coverage
path: .coverage

coverage:
name: Upload coverage
runs-on: ubuntu-latest
needs: test
steps:
- name: Checkout sources
uses: actions/[email protected]
- name: Set up Python
uses: actions/[email protected]
with:
python-version: "3.8"
- name: Download coverage
uses: actions/[email protected]
with:
name: coverage
- name: Coveralls
run: |
python -m pip install --upgrade pip
python -m pip install wheel coveralls
export COVERALLS_REPO_TOKEN=${{ secrets.COVERALLS_TOKEN }}
coveralls
- name: Clean up coverage
uses: geekyeggo/[email protected]
with:
name: coverage
- name: Checkout sources
uses: actions/[email protected]
- name: Set up Python
uses: actions/[email protected]
with:
python-version: "3.8"
- name: Download coverage
uses: actions/[email protected]
with:
name: coverage
- name: Coveralls
run: |
python -m pip install --upgrade pip
python -m pip install wheel coveralls
export COVERALLS_REPO_TOKEN=${{ secrets.COVERALLS_TOKEN }}
coveralls
- name: Clean up coverage
uses: geekyeggo/[email protected]
with:
name: coverage
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ urls = {changelog = "https://github.com/2Fake/devolo_plc_api/docs/CHANGELOG.md",
[project.optional-dependencies]
dev = [
"pre-commit",
"mypy>=0.981"
"mypy>=1.6.0"
]
test = [
"pytest",
Expand Down
2 changes: 2 additions & 0 deletions scripts/stubgen.py
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@ def add_sync(self) -> None:
self.add(output[i].replace("async_", "").replace("async ", ""))
self.add(output[i + 1])
self.add(output[i + 2])
self.add(output[i + 3])

def fix_union_annotations(self) -> None:
"""Fix Union annotations."""
Expand Down Expand Up @@ -80,6 +81,7 @@ def generate_stubs() -> None:
verbose=False,
quiet=True,
export_less=True,
include_docstrings=False,
)
mypy_opts = mypy_options(options)
py_modules, _ = collect_build_targets(options, mypy_opts)
Expand Down

0 comments on commit 993ca0f

Please sign in to comment.