123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189 |
- exclude: |
- (?x)^(
- .*thirdparty/.*|
- .*-so_wrap\.(h|c)$
- )
- repos:
- - repo: https://github.com/pre-commit/mirrors-clang-format
- rev: v17.0.6
- hooks:
- - id: clang-format
- files: \.(c|h|cpp|hpp|cc|cxx|m|mm|inc|java|glsl)$
- types_or: [text]
- exclude: |
- (?x)^(
- tests/python_build/.*|
- platform/android/java/lib/src/com/.*
- )
- - repo: https://github.com/psf/black-pre-commit-mirror
- rev: 24.2.0
- hooks:
- - id: black
- files: (\.py$|SConstruct|SCsub)
- types_or: [text]
- - repo: https://github.com/pre-commit/mirrors-mypy
- rev: v0.971
- hooks:
- - id: mypy
- files: \.py$
- types_or: [text]
- - repo: https://github.com/codespell-project/codespell
- rev: v2.2.6
- hooks:
- - id: codespell
- types_or: [text]
- exclude: |
- (?x)^(
- .*\.desktop$|
- .*\.gitignore$|
- .*\.po$|
- .*\.pot$|
- .*\.rc$|
- \.mailmap$|
- AUTHORS.md$|
- COPYRIGHT.txt$|
- DONORS.md$|
- core/input/gamecontrollerdb.txt$|
- core/string/locales.h$|
- editor/project_converter_3_to_4.cpp$|
- platform/android/java/lib/src/com/.*|
- platform/web/package-lock.json$
- )
- args:
- - --enable-colors
- - --write-changes
- - --check-hidden
- - --quiet-level
- - '3'
- - --ignore-words-list
- - aesthetic,aesthetics,breaked,cancelled,colour,curvelinear,doubleclick,expct,findn,gird,hel,inout,lod,mis,nd,numer,ot,requestor,te,thirdparty,vai
- - --builtin
- - clear,rare,en-GB_to_en-US
- ### Requires Docker; look into alternative implementation.
- # - repo: https://github.com/comkieffer/pre-commit-xmllint.git
- # rev: 1.0.0
- # hooks:
- # - id: xmllint
- # language: docker
- # types_or: [text]
- # files: ^(doc/classes|.*/doc_classes)/.*\.xml$
- # args: [--schema, doc/class.xsd]
- - repo: https://github.com/pre-commit/mirrors-eslint
- rev: v8.46.0
- hooks:
- - id: eslint
- name: eslint-engine
- files: ^(platform/web/js/engine/|js/jsdoc2rst/).*\.js$
- args: [--fix, --no-eslintrc, --config, platform/web/.eslintrc.engine.js]
- additional_dependencies: &eslint-deps
- - eslint@8.46.0
- - eslint-config-airbnb-base@15.0.0
- - eslint-plugin-import@2.28.0
- - eslint-plugin-html@7.1.0
- - '@html-eslint/eslint-plugin@0.19.1'
- - '@html-eslint/parser@0.19.1'
- - id: eslint
- name: eslint-libs
- files: ^(platform/web/js/libs/|modules/).*\.js$
- args: [--fix, --no-eslintrc, --config, platform/web/.eslintrc.libs.js]
- additional_dependencies: *eslint-deps
- - id: eslint
- name: eslint-sw
- files: ^misc/dist/html/service-worker\.js$
- args: [--fix, --no-eslintrc, --config, platform/web/.eslintrc.sw.js]
- additional_dependencies: *eslint-deps
- - id: eslint
- name: eslint-html
- files: ^misc/dist/html/.*\.html$
- types: [html]
- args: [--fix, --no-eslintrc, --config, platform/web/.eslintrc.html.js]
- additional_dependencies: *eslint-deps
- - repo: local
- hooks:
- - id: make-rst
- name: make-rst
- language: python
- entry: python3 doc/tools/make_rst.py doc/classes modules platform --dry-run --color
- pass_filenames: false
- files: ^(doc/classes|.*/doc_classes)/.*\.xml$
- - id: doc-status
- name: doc-status
- language: python
- entry: python3 doc/tools/doc_status.py
- files: ^(doc/classes|.*/doc_classes)/.*\.xml$
- - id: jsdoc
- name: jsdoc
- language: node
- entry: jsdoc
- files: ^platform/web/js/engine/(engine|config|features)\.js$
- args:
- - --template
- - platform/web/js/jsdoc2rst/
- - platform/web/js/engine/engine.js
- - platform/web/js/engine/config.js
- - platform/web/js/engine/features.js
- - --destination
- - ''
- - -d
- - dry-run
- pass_filenames: false
- additional_dependencies: ['jsdoc@^4.0.3']
- - id: copyright-headers
- name: copyright-headers
- language: python
- entry: python3 misc/scripts/copyright_headers.py
- files: \.(c|h|cpp|hpp|cc|cxx|m|mm|inc|java)$
- exclude: |
- (?x)^(
- core/math/bvh_.*\.inc$|
- platform/android/java/lib/src/com/.*|
- platform/android/java/lib/src/org/godotengine/godot/gl/GLSurfaceView\.java$|
- platform/android/java/lib/src/org/godotengine/godot/gl/EGLLogWrapper\.java$|
- platform/android/java/lib/src/org/godotengine/godot/utils/ProcessPhoenix\.java$
- )
- - id: header-guards
- name: header-guards
- language: python
- entry: python3 misc/scripts/header_guards.py
- files: \.(h|hpp)$
- exclude: |
- (?x)^(
- .*/thread\.h$|
- .*/platform_config\.h$|
- .*/platform_gl\.$h
- )
- - id: file-format
- name: file-format
- language: python
- entry: python3 misc/scripts/file_format.py
- types_or: [text]
- exclude: |
- (?x)^(
- .*\.test\.txt$|
- .*\.svg$|
- .*\.patch$|
- .*\.out$|
- modules/gdscript/tests/scripts/parser/features/mixed_indentation_on_blank_lines\.gd$|
- modules/gdscript/tests/scripts/parser/warnings/empty_file_newline_comment\.notest\.gd$|
- modules/gdscript/tests/scripts/parser/warnings/empty_file_newline\.notest\.gd$|
- platform/android/java/lib/src/com/google/.*
- )
- - id: dotnet-format
- name: dotnet-format
- language: python
- entry: python3 misc/scripts/dotnet_format.py
- types_or: [c#]
|