@@ -12,28 +12,23 @@ jobs:
1212 runs-on : ubuntu-latest
1313
1414 steps :
15- - uses : actions/checkout@v2
15+ - uses : actions/checkout@v4
1616 - name : Set up Python 3.8
17- uses : actions/setup-python@v2
17+ uses : actions/setup-python@v5
1818 with :
19- python-version : 3.8
20- - name : Install dependencies
21- run : |
22- python -m pip install --upgrade pip
23- pip install flake8 mypy pyparsing
24- if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
25- - name : Type checking using mypy
19+ python-version : " 3.8"
20+ cache : ' pip' # caching pip dependencies
21+ - name : Install native dependencies
2622 run : |
27- mypy -p acbs
28- - name : Lint with flake8
23+ sudo apt-get update && sudo apt-get install -y libapt-pkg-dev
24+ sudo snap install --classic uv
25+ - name : Install dependencies
2926 run : |
30- # stop the build if there are Python syntax errors or undefined names
31- flake8 . --exclude='build,.mypy_cache,venv,dist' --count --select=E9,F63,F7,F82 --show-source --statistics
32- # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
33- flake8 . --exclude='build,.mypy_cache,venv,dist' --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
27+ uv venv
28+ uv pip install '.[dev]'
29+ - name : Type checking using pyright
30+ run : uv run --extra=dev pyright
31+ - name : Lint with Ruff
32+ run : uv run --extra=dev ruff check --config 'output-format="github"'
3433 - name : Run unittests
3534 run : ARCH=amd64 python -m unittest discover ./tests/
36- - name : Install native dependencies
37- run : sudo apt-get update && sudo apt-get install -y libapt-pkg-dev
38- - name : Test building
39- run : python setup.py build -f
0 commit comments