2024-06-19 07:40:47 +02:00
|
|
|
# @format
|
|
|
|
|
2023-08-31 14:46:14 +02:00
|
|
|
# SPDX-FileCopyrightText: 2023 Aminda Suomalainen <suomalainen+git@mikaela.info>
|
|
|
|
#
|
|
|
|
# SPDX-License-Identifier: CC0-1.0
|
|
|
|
|
|
|
|
# See https://pre-commit.com for more information
|
|
|
|
# See https://pre-commit.ci for more information
|
2023-05-09 10:01:13 +02:00
|
|
|
ci:
|
|
|
|
# Forĝejo/Gitea mirrors will autoclose pull requests. This should decrease
|
|
|
|
# the frequency of unnecessary PRs.
|
|
|
|
# https://github.com/pre-commit-ci/issues/issues/83
|
|
|
|
autoupdate_schedule: quarterly
|
2024-07-04 05:53:44 +02:00
|
|
|
skip: [pnpm-install-dev, prettier, pylint]
|
2023-05-09 10:01:13 +02:00
|
|
|
|
2023-10-01 08:55:35 +02:00
|
|
|
# use pypy3 for python
|
2023-09-27 21:16:10 +02:00
|
|
|
default_language_version:
|
2023-10-01 08:55:35 +02:00
|
|
|
python: pypy3
|
2023-09-27 21:16:10 +02:00
|
|
|
|
2023-02-22 12:07:21 +01:00
|
|
|
repos:
|
|
|
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
2024-04-07 19:06:05 +02:00
|
|
|
rev: v4.6.0
|
2023-02-22 12:07:21 +01:00
|
|
|
hooks:
|
2023-02-24 18:40:42 +01:00
|
|
|
- id: check-added-large-files
|
2023-02-22 12:07:21 +01:00
|
|
|
- id: check-case-conflict
|
2023-05-18 09:28:18 +02:00
|
|
|
- id: check-yaml
|
2023-02-22 12:07:21 +01:00
|
|
|
- id: check-executables-have-shebangs
|
|
|
|
- id: check-shebang-scripts-are-executable
|
|
|
|
- id: destroyed-symlinks
|
|
|
|
- id: detect-private-key
|
|
|
|
- id: end-of-file-fixer
|
|
|
|
- id: fix-byte-order-marker
|
2023-05-08 19:01:37 +02:00
|
|
|
- id: trailing-whitespace
|
2024-05-16 20:12:37 +02:00
|
|
|
args: ["--markdown-linebreak-ext", "md,markdown"]
|
|
|
|
exclude_types: [svg, tsv]
|
2023-10-10 09:15:08 +02:00
|
|
|
- id: check-docstring-first
|
|
|
|
#- id: check-json
|
|
|
|
- id: check-merge-conflict
|
|
|
|
#- id: check-toml
|
|
|
|
#- id: check-xml
|
|
|
|
- id: debug-statements
|
|
|
|
- id: mixed-line-ending
|
|
|
|
# .gitattributes is trusted to handle this
|
|
|
|
args: [--fix=no]
|
|
|
|
#- id: pretty-format-json
|
|
|
|
#- id: requirements-txt-fixer
|
2023-10-10 09:32:41 +02:00
|
|
|
- repo: https://github.com/pre-commit-ci/pre-commit-ci-config
|
|
|
|
rev: v1.6.1
|
|
|
|
hooks:
|
|
|
|
- id: check-pre-commit-ci-config
|
2023-04-06 10:46:54 +02:00
|
|
|
- repo: https://github.com/thlorenz/doctoc
|
|
|
|
rev: v2.2.0
|
|
|
|
hooks:
|
|
|
|
- id: doctoc
|
|
|
|
# https://github.com/Mikaela/gist/blob/master/doctoc.txt
|
|
|
|
args: [--update-only]
|
2023-05-18 09:06:16 +02:00
|
|
|
- repo: https://github.com/pre-commit/mirrors-mypy
|
2024-07-05 18:29:05 +02:00
|
|
|
rev: "v1.10.1"
|
2023-05-18 09:06:16 +02:00
|
|
|
hooks:
|
|
|
|
- id: mypy
|
2024-06-19 07:48:14 +02:00
|
|
|
args: [--install-types, --non-interactive]
|
2023-10-10 09:15:08 +02:00
|
|
|
- repo: https://github.com/asottile/pyupgrade
|
2024-06-11 20:02:37 +02:00
|
|
|
rev: v3.16.0
|
2023-10-10 09:15:08 +02:00
|
|
|
hooks:
|
|
|
|
- id: pyupgrade
|
2024-05-02 16:55:16 +02:00
|
|
|
args:
|
|
|
|
[--py310-plus]
|
|
|
|
# - repo: https://github.com/asottile/reorder-python-imports
|
|
|
|
# rev: v3.12.0
|
|
|
|
# hooks:
|
|
|
|
#- id: reorder-python-imports
|
|
|
|
#args: [--py310-plus]
|
2023-10-10 09:15:08 +02:00
|
|
|
- repo: https://github.com/asottile/add-trailing-comma
|
|
|
|
rev: v3.1.0
|
|
|
|
hooks:
|
|
|
|
- id: add-trailing-comma
|
2024-07-04 05:53:44 +02:00
|
|
|
|
2023-05-18 09:06:16 +02:00
|
|
|
- repo: https://github.com/psf/black
|
2024-04-27 11:16:12 +02:00
|
|
|
rev: 24.4.2
|
2023-05-18 09:06:16 +02:00
|
|
|
hooks:
|
|
|
|
- id: black
|
2023-10-21 09:10:56 +02:00
|
|
|
#Refer to pyproject.toml
|
|
|
|
#args: ["--line-length", "79", "--target-version", "py310"]
|
2023-05-18 09:06:16 +02:00
|
|
|
#- id: black-jupyter
|
2024-06-06 19:57:42 +02:00
|
|
|
# - repo: https://github.com/scop/pre-commit-shfmt
|
|
|
|
# rev: v3.8.0-1
|
|
|
|
# hooks:
|
|
|
|
# - id: shfmt
|
|
|
|
#- id: shfmt-docker
|
2024-07-04 05:53:44 +02:00
|
|
|
|
2023-05-18 09:06:16 +02:00
|
|
|
- repo: local
|
|
|
|
hooks:
|
|
|
|
- id: pylint
|
|
|
|
name: pylint
|
2023-11-01 07:11:23 +01:00
|
|
|
# Use as many jobs as CPU cores, disable TODO warnings
|
|
|
|
entry: pylint -j 0 -d W0511
|
2023-05-18 09:06:16 +02:00
|
|
|
language: system
|
|
|
|
types_or: [python, pyi]
|
2024-07-04 05:53:44 +02:00
|
|
|
- id: pnpm-install-dev
|
|
|
|
name: Install pnpm dev dependencies
|
|
|
|
entry: corepack pnpm install -D
|
|
|
|
language: system
|
|
|
|
always_run: true
|
|
|
|
#verbose: true
|
|
|
|
pass_filenames: false
|
|
|
|
- id: prettier
|
|
|
|
name: prettier
|
|
|
|
entry: corepack pnpm exec prettier --cache --ignore-unknown --write
|
|
|
|
language: system
|
|
|
|
# Better handled by pretty-format-json from pre-commit-hooks.
|
|
|
|
# Remember to have *.json in .prettierignore!
|
|
|
|
exclude_types: [json]
|
|
|
|
|
|
|
|
- repo: https://github.com/editorconfig-checker/editorconfig-checker.python
|
|
|
|
rev: "2.7.3"
|
|
|
|
hooks:
|
|
|
|
- id: editorconfig-checker
|
|
|
|
alias: ec
|
|
|
|
args: [-disable-max-line-length]
|