Skip to content

Commit d898d4b

Browse files
authored
Migrate to lefthook, remove lint environment (#133)
1 parent d717d56 commit d898d4b

10 files changed

Lines changed: 403 additions & 930 deletions

File tree

.github/workflows/ci-copier.yml

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,18 +9,19 @@ concurrency:
99
cancel-in-progress: true
1010

1111
jobs:
12-
pre-commit:
12+
lint:
13+
name: Lint
1314
timeout-minutes: 30
1415
runs-on: ubuntu-latest
1516
steps:
1617
- name: Checkout branch
1718
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
1819
- name: Set up pixi
1920
uses: prefix-dev/setup-pixi@a0af7a228712d6121d37aba47adf55c1332c9c2e # v0.9.4
20-
with:
21-
environments: default lint
22-
- name: pre-commit
23-
run: pixi run pre-commit-run --color=always --show-diff-on-failure
21+
- name: Run linting
22+
run: pixi run lint
23+
env:
24+
CLICOLOR_FORCE: 1
2425

2526
pytest:
2627
timeout-minutes: 30

.lefthook.yaml

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# yaml-language-server: $schema=https://raw.githubusercontent.com/evilmartians/lefthook/refs/heads/master/schema.json
2+
output: [summary]
3+
templates:
4+
run: run --quiet --no-progress
5+
no_auto_install: true
6+
pre-commit:
7+
fail_on_changes: always
8+
exclude:
9+
- assets/**/*
10+
jobs:
11+
- name: pixi-install
12+
run: pixi install
13+
- group:
14+
parallel: true
15+
jobs:
16+
- name: docformatter
17+
glob: "*.py"
18+
run: pixi {run} docformatter -i {staged_files}
19+
- name: ruff-check
20+
glob: "*.{py,pyi}"
21+
run: pixi {run} ruff check --fix --exit-non-zero-on-fix --force-exclude
22+
- name: ruff-format
23+
glob: "*.{py,pyi}"
24+
run: pixi {run} ruff format --force-exclude
25+
- name: mypy
26+
glob: "*.py"
27+
run: pixi {run} mypy {staged_files}
28+
- name: prettier
29+
glob: "*.{md,yml,yaml}"
30+
run: pixi {run} prettier --write --no-error-on-unmatched-pattern --list-different --ignore-unknown {staged_files}
31+
- name: taplo
32+
glob: "*.toml"
33+
run: pixi {run} taplo format {staged_files}
34+
- name: trailing-whitespace-fixer
35+
glob: "*"
36+
file_types: text
37+
run: pixi {run} trailing-whitespace-fixer {staged_files}
38+
- name: end-of-file-fixer
39+
glob: "*"
40+
file_types: text
41+
run: pixi {run} end-of-file-fixer {staged_files}
42+
- name: check-merge-conflict
43+
glob: "*"
44+
file_types: text
45+
run: pixi {run} check-merge-conflict --assume-in-merge {staged_files}
46+
- name: typos
47+
glob: "*"
48+
file_types: text
49+
run: pixi {run} typos --force-exclude {staged_files}
50+
- name: zizmor
51+
glob: "*.{yml,yaml}"
52+
run: pixi {run} zizmor --no-progress --min-severity high --fix .
53+
- name: conftest
54+
glob: "Dockerfile*"
55+
run: pixi {run} conftest-run {staged_files}

.pre-commit-config.yaml

Lines changed: 0 additions & 72 deletions
This file was deleted.

0 commit comments

Comments
 (0)