mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2024-12-12 05:44:14 +03:00
8b7fdf0f22
The new minimum version is Python 3.9. Debian Buster (oldoldstable) support ends at [2024.06.30](https://www.debian.org/releases/buster/). Ubuntu Focal (20.04LTS) support ends at [2025.04](https://ubuntu.com/about/release-cycle). By the time qbt v5.1 is released, Buster and Focal would have become EOL. https://packages.debian.org/search?keywords=python3 https://packages.ubuntu.com/search?keywords=python3 PR #21064.
89 lines
2.4 KiB
YAML
89 lines
2.4 KiB
YAML
name: CI - Python
|
|
|
|
on: [pull_request, push]
|
|
|
|
permissions: {}
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
|
|
cancel-in-progress: ${{ github.head_ref != '' }}
|
|
|
|
jobs:
|
|
ci:
|
|
name: Check
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup python (auxiliary scripts)
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3' # use default version
|
|
|
|
- name: Install tools (auxiliary scripts)
|
|
run: pip install bandit pycodestyle pyflakes
|
|
|
|
- name: Gather files (auxiliary scripts)
|
|
run: |
|
|
export "PY_FILES=$(find . -type f -name '*.py' ! -path '*searchengine*' -printf '%p ')"
|
|
echo $PY_FILES
|
|
echo "PY_FILES=$PY_FILES" >> "$GITHUB_ENV"
|
|
|
|
- name: Lint code (auxiliary scripts)
|
|
run: |
|
|
pyflakes $PY_FILES
|
|
bandit --skip B314,B405 $PY_FILES
|
|
|
|
- name: Format code (auxiliary scripts)
|
|
run: |
|
|
pycodestyle \
|
|
--max-line-length=1000 \
|
|
--statistics \
|
|
$PY_FILES
|
|
|
|
- name: Build code (auxiliary scripts)
|
|
run: |
|
|
python -m compileall $PY_FILES
|
|
|
|
- name: Setup python (search engine)
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.9'
|
|
|
|
- name: Install tools (search engine)
|
|
run: pip install bandit mypy pycodestyle pyflakes pyright
|
|
|
|
- name: Gather files (search engine)
|
|
run: |
|
|
export "PY_FILES=$(find . -type f -name '*.py' -path '*searchengine*' ! -name 'socks.py' -printf '%p ')"
|
|
echo $PY_FILES
|
|
echo "PY_FILES=$PY_FILES" >> "$GITHUB_ENV"
|
|
|
|
- name: Check typings (search engine)
|
|
run: |
|
|
MYPYPATH="src/searchengine/nova3" \
|
|
mypy \
|
|
--follow-imports skip \
|
|
--strict \
|
|
$PY_FILES
|
|
pyright \
|
|
$PY_FILES
|
|
|
|
- name: Lint code (search engine)
|
|
run: |
|
|
pyflakes $PY_FILES
|
|
bandit --skip B110,B310,B314,B405 $PY_FILES
|
|
|
|
- name: Format code (search engine)
|
|
run: |
|
|
pycodestyle \
|
|
--ignore=E265,E402 \
|
|
--max-line-length=1000 \
|
|
--statistics \
|
|
$PY_FILES
|
|
|
|
- name: Build code (search engine)
|
|
run: |
|
|
python -m compileall $PY_FILES
|