Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 28 additions & 4 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,9 @@ jobs:
runs-on: ${{ matrix.os }}

steps:
- name: Setup Git
uses: frequenz-floss/[email protected]

- name: Print environment (debug)
run: env

Expand Down Expand Up @@ -88,10 +91,14 @@ jobs:
# The job name should match the name of the `nox` job.
name: Test with nox
needs: ["nox"]
# We skip this job only if nox was also skipped
if: always() && needs.nox.result != 'skipped'
runs-on: ubuntu-20.04
env:
DEPS_RESULT: ${{ needs.nox.result }}
steps:
- name: Return true
run: "true"
- name: Check matrix job result
run: test "$DEPS_RESULT" = "success"

nox-cross-arch:
name: Cross-arch tests with nox
Expand All @@ -115,6 +122,9 @@ jobs:
runs-on: ${{ matrix.os }}

steps:
- name: Setup Git
uses: frequenz-floss/[email protected]

- name: Fetch sources
uses: actions/checkout@v4

Expand Down Expand Up @@ -200,15 +210,22 @@ jobs:
# The job name should match the name of the `nox-cross-arch` job.
name: Cross-arch tests with nox
needs: ["nox-cross-arch"]
# We skip this job only if nox-cross-arch was also skipped
if: always() && needs.nox-cross-arch.result != 'skipped'
runs-on: ubuntu-20.04
env:
DEPS_RESULT: ${{ needs.nox-cross-arch.result }}
steps:
- name: Return true
run: "true"
- name: Check matrix job result
run: test "$DEPS_RESULT" = "success"

build:
name: Build distribution packages
runs-on: ubuntu-20.04
steps:
- name: Setup Git
uses: frequenz-floss/[email protected]

- name: Fetch sources
uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -241,17 +258,24 @@ jobs:
needs: ["build"]
runs-on: ubuntu-20.04
steps:
- name: Setup Git
uses: frequenz-floss/[email protected]

- name: Fetch sources
uses: actions/checkout@v4

- name: Download package
uses: actions/download-artifact@v4
with:
name: dist-packages
path: dist

- name: Set up QEMU
uses: docker/setup-qemu-action@v3

- name: Set up docker-buildx
uses: docker/setup-buildx-action@v3

- name: Test Installation
uses: docker/build-push-action@v6
with:
Expand Down
2 changes: 1 addition & 1 deletion mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ plugins:
- literate-nav:
nav_file: SUMMARY.md
- mike:
alias_type: redirect
alias_type: symlink
canonical_version: latest
- mkdocstrings:
default_handler: python
Expand Down
44 changes: 24 additions & 20 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
requires = [
"setuptools == 68.1.0",
"setuptools_scm[toml] == 7.1.0",
"frequenz-repo-config[lib] == 0.9.2",
"frequenz-repo-config[lib] == 0.10.0",
]
build-backend = "setuptools.build_meta"

Expand Down Expand Up @@ -48,43 +48,43 @@ email = "[email protected]"

[project.optional-dependencies]
dev-flake8 = [
"flake8 == 7.1.0",
"flake8 == 7.1.1",
"flake8-docstrings == 1.7.0",
"flake8-pyproject == 1.2.3", # For reading the flake8 config from pyproject.toml
"pydoclint == 0.5.3",
"pydoclint == 0.5.9",
"pydocstyle == 6.3.0",
]
dev-formatting = ["black == 24.4.2", "isort == 5.13.2"]
dev-formatting = ["black == 24.8.0", "isort == 5.13.2"]
dev-mkdocs = [
"black == 24.4.2",
"Markdown==3.6",
"mike == 2.1.2",
"black == 24.8.0",
"Markdown==3.7",
"mike == 2.1.3",
"mkdocs-gen-files == 0.5.0",
"mkdocs-literate-nav == 0.6.1",
"mkdocs-macros-plugin == 1.0.5",
"mkdocs-material == 9.5.27",
"mkdocstrings[python] == 0.25.1",
"mkdocstrings-python == 1.10.5",
"frequenz-repo-config[lib] == 0.9.2",
"mkdocs-macros-plugin == 1.2.0",
"mkdocs-material == 9.5.39",
"mkdocstrings[python] == 0.26.1",
"mkdocstrings-python == 1.11.1",
"frequenz-repo-config[lib] == 0.10.0",
]
dev-mypy = [
"mypy == 1.10.1",
"types-Markdown == 3.6.0.20240316",
"mypy == 1.11.2",
"types-Markdown == 3.7.0.20240822",
# For checking the noxfile, docs/ script, and tests
"pymdownx-superfence-filter-lines[dev-mkdocs,dev-noxfile,dev-pytest]",
]
dev-noxfile = ["nox == 2024.4.15", "frequenz-repo-config[lib] == 0.9.2"]
dev-noxfile = ["nox == 2024.4.15", "frequenz-repo-config[lib] == 0.10.0"]
dev-pylint = [
"pylint == 3.2.5",
"pylint == 3.3.1",
# For checking the noxfile, docs/ script, and tests
"pymdownx-superfence-filter-lines[dev-mkdocs,dev-noxfile,dev-pytest]",
]
dev-pytest = [
"pytest == 8.2.2",
"frequenz-repo-config[extra-lint-examples] == 0.9.2",
"pytest == 8.3.3",
"frequenz-repo-config[extra-lint-examples] == 0.10.0",
"pytest-mock == 3.14.0",
"pytest-asyncio == 0.23.7",
"async-solipsism == 0.6",
"pytest-asyncio == 0.24.0",
"async-solipsism == 0.7",
]
dev = [
"pymdownx-superfence-filter-lines[dev-mkdocs,dev-flake8,dev-formatting,dev-mkdocs,dev-mypy,dev-noxfile,dev-pylint,dev-pytest]",
Expand Down Expand Up @@ -139,10 +139,14 @@ disable = [
# pylint's unsubscriptable check is buggy and is not needed because
# it is a type-check, for which we already have mypy.
"unsubscriptable-object",
# Checked by mypy
"no-member",
# Checked by flake8
"f-string-without-interpolation",
"redefined-outer-name",
"unused-import",
"line-too-long",
"missing-function-docstring",
"unused-variable",
"unnecessary-lambda-assignment",
]
Expand Down
Loading