Add pre-commit configuration and ignore its config file

This commit is contained in:
gnoblet 2025-07-02 09:53:53 +02:00
parent 47bf1ffa30
commit f09ec46477
2 changed files with 92 additions and 13 deletions

View file

@ -1,13 +1,16 @@
^renv$ ^.*\.Rproj$
^renv\.lock$ ^LICENSE\.md$
^.*\.Rproj$ ^README\.Rmd
^\.Rproj\.user$ ^\.Rproj\.user$
^LICENSE\.md$ ^\.pre-commit-config\.yaml$
^README\.Rmd ^_pkgdown\.yml$
^pkgdown\.css ^data-raw$
^docs ^docs
^_pkgdown\.yml$ ^docs$
^docs$ ^pkgdown$
^pkgdown$ ^pkgdown\.css
^data-raw$ ^renv$
^test-example.R ^renv$
^renv\.lock$
^renv\.lock$
^test-example.R

76
.pre-commit-config.yaml Normal file
View file

@ -0,0 +1,76 @@
# All available hooks: https://pre-commit.com/hooks.html
# R specific hooks: https://github.com/lorenzwalthert/precommit
repos:
- repo: https://github.com/lorenzwalthert/precommit
rev: v0.4.3.9012
hooks:
- id: style-files
args: [--style_pkg=styler, --style_fun=tidyverse_style]
- id: roxygenize
# codemeta must be above use-tidy-description when both are used
# - id: codemeta-description-updated
- id: use-tidy-description
- id: spell-check
exclude: >
(?x)^(
.*\.[rR]|
.*\.feather|
.*\.jpeg|
.*\.pdf|
.*\.png|
.*\.py|
.*\.RData|
.*\.rds|
.*\.Rds|
.*\.Rproj|
.*\.sh|
(.*/|)\.gitignore|
(.*/|)\.gitlab-ci\.yml|
(.*/|)\.lintr|
(.*/|)\.pre-commit-.*|
(.*/|)\.Rbuildignore|
(.*/|)\.Renviron|
(.*/|)\.Rprofile|
(.*/|)\.travis\.yml|
(.*/|)appveyor\.yml|
(.*/|)NAMESPACE|
(.*/|)renv/settings\.dcf|
(.*/|)renv\.lock|
(.*/|)WORDLIST|
\.github/workflows/.*|
data/.*|
)$
- id: lintr
- id: readme-rmd-rendered
- id: parsable-R
- id: no-browser-statement
- id: no-print-statement
- id: no-debug-statement
- id: deps-in-desc
- id: pkgdown
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
- id: check-added-large-files
args: ['--maxkb=200']
- id: file-contents-sorter
files: '^\.Rbuildignore$'
- id: end-of-file-fixer
exclude: '\.Rd'
- repo: https://github.com/pre-commit-ci/pre-commit-ci-config
rev: v1.6.1
hooks:
# Only required when https://pre-commit.ci is used for config validation
- id: check-pre-commit-ci-config
- repo: local
hooks:
- id: forbid-to-commit
name: Don't commit common R artifacts
entry: Cannot commit .Rhistory, .RData, .Rds or .rds.
language: fail
files: '\.(Rhistory|RData|Rds|rds)$'
# `exclude: <regex>` to allow committing specific files
ci:
autoupdate_schedule: monthly
skip: [pkgdown]