zcashd/.github/workflows/lints.yml

103 lines
2.6 KiB
YAML

name: Lints
# We only run these lints on trial-merges of PRs to reduce noise.
on: pull_request
jobs:
commit-script-check:
name: Scripted diffs
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
ref: ${{ github.event.pull_request.head.sha }}
- name: Check scripted diffs
run: ./test/lint/commit-script-check.sh ${{ github.event.pull_request.base.sha }}..${{ github.event.pull_request.head.sha }}
general-lints:
name: General
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Include guards
run: ./test/lint/lint-include-guards.sh
if: always()
- name: Includes
run: ./test/lint/lint-includes.sh
if: always()
- name: Locale dependence
run: ./test/lint/lint-locale-dependence.sh
if: always()
continue-on-error: true # Temporary until we get this passing
- name: Shebang
run: ./test/lint/lint-shebang.sh
if: always()
continue-on-error: true # Temporary until we get this passing
- name: Shell locale
run: ./test/lint/lint-shell-locale.sh
if: always()
continue-on-error: true # Temporary until we get this passing
- name: Shellcheck
run: ./test/lint/lint-shell.sh
if: always()
continue-on-error: true # Temporary until we get this passing
- name: Whitespace
run: ./test/lint/lint-whitespace.sh
if: always()
python:
name: Python
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install dependencies
run: sudo python3 -m pip install pyflakes
- name: Pyflakes
run: pyflakes qa src zcutil
if: always()
- name: UTF-8 encoding
run: ./test/lint/lint-python-utf8-encoding.sh
if: always()
rust-clippy:
name: Clippy (1.54.0)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: 1.54.0
components: clippy
override: true
- name: Run clippy
uses: actions-rs/clippy-check@v1
with:
name: Clippy (1.54.0)
token: ${{ secrets.GITHUB_TOKEN }}
args: --all-features --all-targets -- -D warnings
rustfmt:
name: Rustfmt
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: 1.54.0
override: true
- run: rustup component add rustfmt
- uses: actions-rs/cargo@v1
with:
command: fmt
args: -- --check