This repository has been archived by the owner on Apr 26, 2024. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Attempt to fix weird mypy failures on ignored files. (#15409)
By inlining the typechecking job from backend-meta. This seems to resolve odd errors (maybe due to caching?) to have been seen on Dependabot PRs.
- Loading branch information
David Robertson
authored
Apr 10, 2023
1 parent
d07d255
commit 3dd72b9
Showing
2 changed files
with
55 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -65,9 +65,59 @@ jobs: | |
- run: .ci/scripts/check_lockfile.py | ||
|
||
lint: | ||
uses: "matrix-org/backend-meta/.github/workflows/python-poetry-ci.yml@v2" | ||
with: | ||
typechecking-extras: "all" | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout repository | ||
uses: actions/checkout@v3 | ||
|
||
- name: Setup Poetry | ||
uses: matrix-org/setup-python-poetry@v1 | ||
with: | ||
install-project: "false" | ||
|
||
- name: Import order (isort) | ||
run: poetry run isort --check --diff . | ||
|
||
- name: Code style (black) | ||
run: poetry run black --check --diff . | ||
|
||
- name: Semantic checks (ruff) | ||
# --quiet suppresses the update check. | ||
run: poetry run ruff --quiet . | ||
|
||
lint-mypy: | ||
runs-on: ubuntu-latest | ||
name: Typechecking | ||
steps: | ||
- name: Checkout repository | ||
uses: actions/checkout@v3 | ||
|
||
- name: Setup Poetry | ||
uses: matrix-org/setup-python-poetry@v1 | ||
with: | ||
# We want to make use of type hints in optional dependencies too. | ||
extras: all | ||
# We have seen odd mypy failures that were resolved when we started | ||
# installing the project again: | ||
# https://github.com/matrix-org/synapse/pull/15376#issuecomment-1498983775 | ||
# To make CI green, err towards caution and install the project. | ||
install-project: "true" | ||
|
||
- name: Install Rust | ||
uses: dtolnay/[email protected] | ||
- uses: Swatinem/rust-cache@v2 | ||
|
||
# NB: I have two concerns with this action: | ||
# 1. We occasionally see odd mypy problems that aren't reproducible | ||
# locally with clean caches. I suspect some dodgy caching behaviour. | ||
# 2. The action uses GHA machinery that's deprecated | ||
# (https://github.com/AustinScola/mypy-cache-github-action/issues/277) | ||
# It may be simpler to use actions/cache ourselves to restore .mypy_cache. | ||
- name: Restore/persist mypy's cache | ||
uses: AustinScola/mypy-cache-github-action@df56268388422ee282636ee2c7a9cc55ec644a41 | ||
|
||
- name: Run mypy | ||
run: poetry run mypy | ||
|
||
lint-crlf: | ||
runs-on: ubuntu-latest | ||
|
@@ -165,6 +215,7 @@ jobs: | |
if: ${{ !cancelled() }} # Run this even if prior jobs were skipped | ||
needs: | ||
- lint | ||
- lint-mypy | ||
- lint-crlf | ||
- lint-newsfile | ||
- lint-pydantic | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Explicitly install Synapse during typechecking in CI. |