This is an automated email from the ASF dual-hosted git repository.

potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new 4abf666d31d Use global pre-commit exclude for vendor folder (#45316)
4abf666d31d is described below

commit 4abf666d31d601ad3711e32e0add3cdd501fbbbc
Author: John Bampton <[email protected]>
AuthorDate: Thu Jan 2 20:29:53 2025 +1000

    Use global pre-commit exclude for vendor folder (#45316)
---
 .pre-commit-config.yaml | 63 ++++++++++++++++---------------------------------
 1 file changed, 20 insertions(+), 43 deletions(-)

diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index a769a5e109b..7723c7a7708 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -20,6 +20,7 @@ default_language_version:
   python: python3
   node: 22.2.0
 minimum_pre_commit_version: '3.2.0'
+exclude: ^.*/.*_vendor/
 repos:
   - repo: meta
     hooks:
@@ -35,7 +36,6 @@ repos:
         name: Add TOC for Markdown and RST files
         files:
           
^README\.md$|^UPDATING.*\.md$|^chart/UPDATING.*\.md$|^dev/.*\.md$|^dev/.*\.rst$|^.github/.*\.md|^tests/system/README.md$
-        exclude: ^.*/.*_vendor/
         args:
           - "--maxlevel"
           - "2"
@@ -47,8 +47,7 @@ repos:
         files: \.sql$
         exclude: |
           (?x)
-          ^\.github/|
-          ^.*/.*_vendor/
+          ^\.github/
         args:
           - --comment-style
           - "/*||*/"
@@ -57,7 +56,7 @@ repos:
           - --fuzzy-match-generates-todo
       - id: insert-license
         name: Add license for all RST files
-        exclude: ^\.github/.*$|^.*/.*_vendor/|newsfragments/.*\.rst$
+        exclude: ^\.github/.*$|newsfragments/.*\.rst$
         args:
           - --comment-style
           - "||"
@@ -68,7 +67,7 @@ repos:
       - id: insert-license
         name: Add license for CSS/JS/JSX/PUML/TS/TSX
         files: \.(css|jsx?|puml|tsx?)$
-        exclude: 
^\.github/.*$|^.*/.*_vendor/|^airflow/www/static/js/types/api-generated.ts$|ui/openapi-gen/
+        exclude: 
^\.github/.*$|^airflow/www/static/js/types/api-generated.ts$|ui/openapi-gen/
         args:
           - --comment-style
           - "/*!| *| */"
@@ -78,7 +77,7 @@ repos:
       - id: insert-license
         name: Add license for all JINJA template files
         files: ^airflow/www/templates/.*\.html$
-        exclude: ^\.github/.*$|^.*/.*_vendor/
+        exclude: ^\.github/.*$
         args:
           - --comment-style
           - "{#||#}"
@@ -87,7 +86,7 @@ repos:
           - --fuzzy-match-generates-todo
       - id: insert-license
         name: Add license for all Shell files
-        exclude: ^\.github/.*$|^.*/.*_vendor/|^dev/breeze/autocomplete/.*$
+        exclude: ^\.github/.*$|^dev/breeze/autocomplete/.*$
         files: \.bash$|\.sh$
         args:
           - --comment-style
@@ -97,7 +96,7 @@ repos:
           - --fuzzy-match-generates-todo
       - id: insert-license
         name: Add license for all toml files
-        exclude: ^\.github/.*$|^.*/.*_vendor/|^dev/breeze/autocomplete/.*$
+        exclude: ^\.github/.*$|^dev/breeze/autocomplete/.*$
         files: \.toml$
         args:
           - --comment-style
@@ -107,7 +106,7 @@ repos:
           - --fuzzy-match-generates-todo
       - id: insert-license
         name: Add license for all Python files
-        exclude: ^\.github/.*$|^.*/.*_vendor/
+        exclude: ^\.github/.*$
         files: \.py$|\.pyi$
         args:
           - --comment-style
@@ -117,7 +116,7 @@ repos:
           - --fuzzy-match-generates-todo
       - id: insert-license
         name: Add license for all XML files
-        exclude: ^\.github/.*$|^.*/.*_vendor/
+        exclude: ^\.github/.*$
         files: \.xml$
         args:
           - --comment-style
@@ -136,7 +135,7 @@ repos:
           - --fuzzy-match-generates-todo
       - id: insert-license
         name: Add license for all YAML files except Helm templates
-        exclude: 
^\.github/.*$|^.*/.*_vendor/|^chart/templates/.*|.*/reproducible_build.yaml$|^airflow/api_fastapi/core_api/openapi/v1-generated.yaml$|^.*/pnpm-lock.yaml$
+        exclude: 
^\.github/.*$|^chart/templates/.*|.*/reproducible_build.yaml$|^airflow/api_fastapi/core_api/openapi/v1-generated.yaml$|^.*/pnpm-lock.yaml$
         types: [yaml]
         files: \.ya?ml$
         args:
@@ -148,7 +147,7 @@ repos:
       - id: insert-license
         name: Add license for all Markdown files
         files: \.md$
-        exclude: PROVIDER_CHANGES.*\.md$|^.*/.*_vendor/
+        exclude: PROVIDER_CHANGES.*\.md$
         args:
           - --comment-style
           - "<!--|| -->"
@@ -157,7 +156,7 @@ repos:
           - --fuzzy-match-generates-todo
       - id: insert-license
         name: Add license for all other files
-        exclude: ^\.github/.*$|^.*/.*_vendor/
+        exclude: ^\.github/.*$
         args:
           - --comment-style
           - "|#|"
@@ -262,28 +261,23 @@ repos:
         name: Detect accidentally committed debug statements
       - id: check-builtin-literals
         name: Require literal syntax when initializing builtins
-        exclude: ^.*/.*_vendor/
       - id: detect-private-key
         name: Detect if private key is added to the repository
         exclude: ^docs/apache-airflow-providers-ssh/connections/ssh.rst$
       - id: end-of-file-fixer
         name: Make sure that there is an empty line at the end
-        exclude: 
^.*/.*_vendor/|^docs/apache-airflow/img/.*\.dot|^docs/apache-airflow/img/.*\.sha256
+        exclude: 
^docs/apache-airflow/img/.*\.dot|^docs/apache-airflow/img/.*\.sha256
       - id: mixed-line-ending
         name: Detect if mixed line ending is used (\r vs. \r\n)
-        exclude: ^.*/.*_vendor/
       - id: check-executables-have-shebangs
         name: Check that executables have shebang
-        exclude: ^.*/.*_vendor/
       - id: check-xml
         name: Check XML files with xmllint
-        exclude: ^.*/.*_vendor/
       - id: trailing-whitespace
         name: Remove trailing whitespace at end of line
-        exclude: 
^.*/.*_vendor/|^docs/apache-airflow/img/.*\.dot|^dev/breeze/doc/images/output.*$
+        exclude: 
^docs/apache-airflow/img/.*\.dot|^dev/breeze/doc/images/output.*$
       - id: fix-encoding-pragma
         name: Remove encoding header from Python files
-        exclude: ^.*/.*_vendor/
         args:
           - --remove
       - id: pretty-format-json
@@ -300,10 +294,8 @@ repos:
     hooks:
       - id: rst-backticks
         name: Check if RST files use double backticks for code
-        exclude: ^.*/.*_vendor/
       - id: python-no-log-warn
         name: Check if there are no deprecate log warn
-        exclude: ^.*/.*_vendor/
   - repo: https://github.com/adrienverge/yamllint
     rev: v1.35.1
     hooks:
@@ -311,15 +303,12 @@ repos:
         name: Check YAML files with yamllint
         entry: yamllint -c yamllint-config.yml --strict
         types: [yaml]
-        exclude: 
^.*airflow\.template\.yaml$|^.*init_git_sync\.template\.yaml$|^.*/.*_vendor/|^chart/(?:templates|files)/.*\.yaml$|openapi/.*\.yaml$|^\.pre-commit-config\.yaml$|^.*/reproducible_build.yaml$|^.*pnpm-lock\.yaml$
+        exclude: 
^.*airflow\.template\.yaml$|^.*init_git_sync\.template\.yaml$|^chart/(?:templates|files)/.*\.yaml$|openapi/.*\.yaml$|^\.pre-commit-config\.yaml$|^.*/reproducible_build.yaml$|^.*pnpm-lock\.yaml$
   - repo: https://github.com/ikamensh/flynt
     rev: '1.0.1'
     hooks:
       - id: flynt
         name: Run flynt string format converter for Python
-        exclude: |
-          (?x)
-          ^.*/.*_vendor/
         args:
          # If flynt detects too long text it ignores it. So we set a very 
large limit to make it easy
          # to split the text by hand. Too long lines are detected by flake8 
(below),
@@ -337,7 +326,7 @@ repos:
           The word(s) should be in lowercase." && exec codespell "$@"' --
         language: python
         types: [text]
-        exclude: 
^.*/.*_vendor/|material-icons\.css$|^images/.*$|^RELEASE_NOTES\.txt$|^.*package-lock\.json$|^.*/kinglear\.txt$|^.*pnpm-lock\.yaml$
+        exclude: 
material-icons\.css$|^images/.*$|^RELEASE_NOTES\.txt$|^.*package-lock\.json$|^.*/kinglear\.txt$|^.*pnpm-lock\.yaml$
         args:
           - --ignore-words=docs/spelling_wordlist.txt
           - 
--skip=providers/src/airflow/providers/*/*.rst,airflow/www/*.log,docs/*/commits.rst,docs/apache-airflow/tutorial/pipeline_example.csv,*.min.js,*.lock,INTHEWILD.md
@@ -376,7 +365,7 @@ repos:
         args: [--fix]
         require_serial: true
         additional_dependencies: ["ruff==0.8.1"]
-        exclude: 
^.*/.*_vendor/|^tests/dags/test_imports.py|^performance/tests/test_.*.py
+        exclude: ^tests/dags/test_imports.py|^performance/tests/test_.*.py
       - id: ruff-format
         name: Run 'ruff format'
         description: "Run 'ruff format' for extremely fast Python formatting"
@@ -386,13 +375,13 @@ repos:
         args: []
         require_serial: true
         additional_dependencies: ["ruff==0.8.1"]
-        exclude: ^.*/.*_vendor/|^tests/dags/test_imports.py$
+        exclude: ^tests/dags/test_imports.py$
       - id: replace-bad-characters
         name: Replace bad characters
         entry: ./scripts/ci/pre_commit/replace_bad_characters.py
         language: python
         types: [file, text]
-        exclude: ^.*/.*_vendor/|^clients/gen/go\.sh$|^\.gitmodules$
+        exclude: ^clients/gen/go\.sh$|^\.gitmodules$
         additional_dependencies: ['rich>=12.4.4']
       - id: lint-openapi
         name: Lint OpenAPI using spectral
@@ -658,7 +647,6 @@ repos:
           ^airflow/www/static/js/types/api-generated.ts$|
           ^airflow/www/templates/appbuilder/flash.html$|
           ^chart/values.schema.json$|
-          ^.*/.*_vendor/|
           ^dev/|
           ^docs/README.rst$|
           
^docs/apache-airflow-providers-amazon/secrets-backends/aws-ssm-parameter-store.rst$|
@@ -740,7 +728,7 @@ repos:
         files: >
           (?x)
           ^providers/src/airflow/providers/.*\.py$
-        exclude: 
^.*/.*_vendor/|providers/src/airflow/providers/standard/operators/bash.py|providers/src/airflow/providers/standard/operators/python.py|providers/src/airflow/providers/standard/sensors/external_task.py
+        exclude: 
providers/src/airflow/providers/standard/operators/bash.py|providers/src/airflow/providers/standard/operators/python.py|providers/src/airflow/providers/standard/sensors/external_task.py
       - id: check-get-lineage-collector-providers
         language: python
         name: Check providers import hook lineage code from compat
@@ -769,28 +757,24 @@ repos:
         description: NEW_SESSION, provide_session, and create_session should 
be imported from airflow.utils.session to avoid import cycles.
         entry: "from airflow\\.utils\\.db import.* 
(NEW_SESSION|provide_session|create_session)"
         files: \.py$
-        exclude: ^.*/.*_vendor/
         pass_filenames: true
       - id: check-incorrect-use-of-LoggingMixin
         language: pygrep
         name: Make sure LoggingMixin is not used alone
         entry: "LoggingMixin\\(\\)"
         files: \.py$
-        exclude: ^.*/.*_vendor/
         pass_filenames: true
       - id: check-daysago-import-from-utils
         language: pygrep
         name: days_ago imported from airflow.utils.dates
         entry: "(airflow\\.){0,1}utils\\.dates\\.days_ago"
         files: \.py$
-        exclude: ^.*/.*_vendor/
         pass_filenames: true
       - id: check-start-date-not-used-in-defaults
         language: pygrep
         name: start_date not in default_args
         entry: 
"default_args\\s*=\\s*{\\s*(\"|')start_date(\"|')|(\"|')start_date(\"|'):"
         files: \.*example_dags.*\.py$
-        exclude: ^.*/.*_vendor/
         pass_filenames: true
       - id: check-apache-license-rat
         name: Check if licenses are OK for Apache
@@ -995,7 +979,6 @@ repos:
         language: python
         pass_filenames: true
         files: .*\.schema\.json$
-        exclude: ^.*/.*_vendor/
         require_serial: true
         additional_dependencies: ['jsonschema>=3.2.0,<5.0', 'PyYAML==6.0.2', 
'requests==2.32.3']
       - id: lint-json-schema
@@ -1080,7 +1063,6 @@ repos:
         language: python
         pass_filenames: true
         files: \.py$
-        exclude: ^.*/.*_vendor/
         additional_dependencies: ['rich>=12.4.4']
       - id: check-code-deprecations
         name: Check deprecations categories in decorators
@@ -1088,7 +1070,6 @@ repos:
         language: python
         pass_filenames: true
         files: ^airflow/.*\.py$
-        exclude: ^.*/.*_vendor/
         additional_dependencies: ["rich>=12.4.4", "python-dateutil"]
       - id: lint-chart-schema
         name: Lint chart/values.schema.json file
@@ -1160,7 +1141,6 @@ repos:
         language: python
         pass_filenames: true
         files: \.py$
-        exclude: ^.*/.*_vendor/
         additional_dependencies: ['rich>=12.4.4', 'astor']
       - id: create-missing-init-py-files-tests
         name: Create missing init.py files in tests
@@ -1321,7 +1301,6 @@ repos:
         files: \.py$
         exclude: |
           (?x)^(
-            .*/.*_vendor/|
             airflow/migrations|
             clients/python/test_.*\.py|
             dev|
@@ -1349,7 +1328,6 @@ repos:
         language: python
         entry: ./scripts/ci/pre_commit/mypy.py --namespace-packages
         files: 
^providers/src/airflow/providers/.*\.py$|^providers/tests//.*\.py$
-        exclude: ^.*/.*_vendor/
         require_serial: true
         additional_dependencies: ['rich>=12.4.4']
       - id: mypy-providers
@@ -1383,7 +1361,6 @@ repos:
         language: python
         entry: ./scripts/ci/pre_commit/mypy.py --namespace-packages
         files: ^task_sdk/src/airflow/sdk/.*\.py$|^task_sdk/tests//.*\.py$
-        exclude: ^.*/.*_vendor/
         require_serial: true
         additional_dependencies: ['rich>=12.4.4']
       - id: mypy-task-sdk

Reply via email to