forked from nwchemgit/nwchem
-
Notifications
You must be signed in to change notification settings - Fork 0
39 lines (39 loc) · 1.72 KB
/
lint_python.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
name: lint_python
on:
push:
paths-ignore:
- .gitlab-ci.yml
pull_request:
repository_dispatch:
types: [backend_automation]
workflow_dispatch:
jobs:
lint_python:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: '3.11'
check-latest: true
- run: pip install --upgrade pip wheel
- run: pip install bandit black codespell flake8 flake8-2020 flake8-bugbear
flake8-comprehensions isort mypy pytest pyupgrade safety
- run: python -m pip install --upgrade requests
- run: python -m pip install 'setuptools>=65.5.1'
- run: bandit --recursive --skip B101,B110,B306,B307,B311,B605,B607 .
- run: black --check . || true
- run: codespell --count
--ignore-words-list=aline,asociated,auxilliary,ba,ficticious,hist,iinclude,iself,ist,ket,mapp,nd,numer,ser,te
--skip="*/graveyard,*.dtx,*.F,*.f,*.f90,*.fh,*.frg,*.orig,*.out,*.par,*.pdb,*.pl,*.tex,*.txt" || true
- run: flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
- run: flake8 . --count --exit-zero --max-complexity=10 --max-line-length=88
--show-source --statistics
- run: isort --check-only --profile black . || true
- run: pip install -r requirements.txt || pip install --editable . || true
- run: mkdir --parents --verbose .mypy_cache
- run: mypy --ignore-missing-imports --install-types --non-interactive . || true
- run: pytest . || true
- run: pytest --doctest-modules . || true
- run: shopt -s globstar && pyupgrade --py36-plus **/*.py || true
- run: safety check