diff --git a/.github/workflows/basic-tests.yml b/.github/workflows/basic-tests.yml
index 8b12aa03b65bf..d6ea2b417e8e6 100644
--- a/.github/workflows/basic-tests.yml
+++ b/.github/workflows/basic-tests.yml
@@ -258,9 +258,11 @@ jobs:
python-version: ${{steps.breeze.outputs.host-python-version}}
skip-pre-commits: ${{ inputs.skip-pre-commits }}
- name: "Autoupdate all pre-commits"
- run: pre-commit autoupdate
+ run: pre-commit autoupdate --freeze
- name: "Autoupdate Lucas-C/pre-commit-hooks to bleeding edge"
run: pre-commit autoupdate --bleeding-edge --freeze --repo https://github.com/Lucas-C/pre-commit-hooks
+ - name: "Check if there are any changes in pre-commit hooks"
+ run: git diff --exit-code
- name: "Run automated upgrade for black"
run: >
pre-commit run
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index bb2b851b079ee..026546d35c112 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -31,7 +31,7 @@ repos:
- id: check-hooks-apply
name: Check if all hooks apply to the repository
- repo: https://github.com/thlorenz/doctoc.git
- rev: v2.2.0
+ rev: 70fdcd39ef919754011a827bd25f23a0b141c3c3 # frozen: v2.2.0
hooks:
- id: doctoc
name: Add TOC for Markdown and RST files
@@ -50,7 +50,7 @@ repos:
- "2"
- repo: https://github.com/Lucas-C/pre-commit-hooks
# replace hash with version once PR #103 merged comes in a release
- rev: abdd8b62891099da34162217ecb3872d22184a51
+ rev: a30f0d816e5062a67d87c8de753cfe499672b959 # frozen: v1.5.5
hooks:
- id: insert-license
name: Add license for all SQL files
@@ -232,7 +232,7 @@ repos:
additional_dependencies: ['libcst>=1.1.0,!=1.8.0,!=1.8.1']
files: ^(providers/.*/)?airflow/.*/(sensors|operators)/.*\.py$
- repo: https://github.com/asottile/blacken-docs
- rev: 1.19.1
+ rev: 78a9dcbecf4f755f65d1f3dec556bc249d723600 # frozen: 1.19.1
hooks:
- id: blacken-docs
name: Run black on docs
@@ -245,7 +245,7 @@ repos:
alias: blacken-docs
additional_dependencies: ['black==24.10.0']
- repo: https://github.com/pre-commit/pre-commit-hooks
- rev: v5.0.0
+ rev: 3e8a8703264a2f4a69428a0aa4dcb512790b2c8c # frozen: v6.0.0
hooks:
- id: check-merge-conflict
name: Check that merge conflicts are not being committed
@@ -281,10 +281,6 @@ repos:
^airflow-core/docs/img/.*\.dot$|
^dev/breeze/doc/images/output.*$|
^.*/openapi-gen/.*$
- - id: fix-encoding-pragma
- name: Remove encoding header from Python files
- args:
- - --remove
- id: pretty-format-json
name: Format JSON files
args:
@@ -295,14 +291,14 @@ repos:
files: ^chart/values\.schema\.json$|^chart/values_schema\.schema\.json$
pass_filenames: true
- repo: https://github.com/pre-commit/pygrep-hooks
- rev: v1.10.0
+ rev: 3a6eb0fadf60b3cccfd80bad9dbb6fae7e47b316 # frozen: v1.10.0
hooks:
- id: rst-backticks
name: Check if RST files use double backticks for code
- id: python-no-log-warn
name: Check if there are no deprecate log warn
- repo: https://github.com/adrienverge/yamllint
- rev: v1.37.1
+ rev: 79a6b2b1392eaf49cdd32ac4f14be1a809bbd8f7 # frozen: v1.37.1
hooks:
- id: yamllint
name: Check YAML files with yamllint
@@ -320,7 +316,7 @@ repos:
^.*reproducible_build\.yaml$|
^.*pnpm-lock\.yaml$
- repo: https://github.com/ikamensh/flynt
- rev: '1.0.1'
+ rev: '97be693bf18bc2f050667dd282d243e2824b81e2' # frozen: 1.0.6
hooks:
- id: flynt
name: Run flynt string format converter for Python
@@ -331,7 +327,7 @@ repos:
- --line-length
- '99999'
- repo: https://github.com/codespell-project/codespell
- rev: v2.4.1
+ rev: 63c8f8312b7559622c0d82815639671ae42132ac # frozen: v2.4.1
hooks:
- id: codespell
name: Run codespell
@@ -357,7 +353,7 @@ repos:
- --skip=providers/.*/src/airflow/providers/*/*.rst,providers/*/docs/changelog.rst,docs/*/commits.rst,providers/*/docs/commits.rst,providers/*/*/docs/commits.rst,docs/apache-airflow/tutorial/pipeline_example.csv,*.min.js,*.lock,INTHEWILD.md,*.svg
- --exclude-file=.codespellignorelines
- repo: https://github.com/woodruffw/zizmor-pre-commit
- rev: v1.11.0
+ rev: 69fa534d69454f44ddd4451b5e2da7a1c48e525b # frozen: v1.11.0
hooks:
- id: zizmor
name: Run zizmor to check for github workflow syntax errors
diff --git a/contributing-docs/08_static_code_checks.rst b/contributing-docs/08_static_code_checks.rst
index b8144881544f2..9d7fed230c7c1 100644
--- a/contributing-docs/08_static_code_checks.rst
+++ b/contributing-docs/08_static_code_checks.rst
@@ -267,8 +267,6 @@ require Breeze Docker image to be built locally.
+-----------------------------------------------------------+--------------------------------------------------------+---------+
| end-of-file-fixer | Make sure that there is an empty line at the end | |
+-----------------------------------------------------------+--------------------------------------------------------+---------+
-| fix-encoding-pragma | Remove encoding header from Python files | |
-+-----------------------------------------------------------+--------------------------------------------------------+---------+
| flynt | Run flynt string format converter for Python | |
+-----------------------------------------------------------+--------------------------------------------------------+---------+
| generate-airflow-diagrams | Generate airflow diagrams | |
diff --git a/dev/breeze/doc/images/output_static-checks.svg b/dev/breeze/doc/images/output_static-checks.svg
index 8ff92c29da3f7..bcfe73607434d 100644
--- a/dev/breeze/doc/images/output_static-checks.svg
+++ b/dev/breeze/doc/images/output_static-checks.svg
@@ -359,10 +359,10 @@
│check-urlparse-usage-in-code | check-xml | check-zip-file-is-not-committed | │
│codespell | compile-fab-assets | compile-ui-assets | compile-ui-assets-dev | │
│create-missing-init-py-files-tests | debug-statements | detect-private-key | │
-│doctoc | end-of-file-fixer | fix-encoding-pragma | flynt | │
-│generate-airflow-diagrams | generate-openapi-spec | generate-openapi-spec-fab | │
-│generate-pypi-readme | generate-tasksdk-datamodels | generate-volumes-for-sources│
-│| identity | insert-license | kubeconform | lint-chart-schema | lint-dockerfile |│
+│doctoc | end-of-file-fixer | flynt | generate-airflow-diagrams | │
+│generate-openapi-spec | generate-openapi-spec-fab | generate-pypi-readme | │
+│generate-tasksdk-datamodels | generate-volumes-for-sources | identity | │
+│insert-license | kubeconform | lint-chart-schema | lint-dockerfile | │
│lint-helm-chart | lint-json-schema | lint-markdown | mixed-line-ending | │
│mypy-airflow-core | mypy-airflow-ctl | mypy-dev | mypy-devel-common | │
│mypy-providers | mypy-task-sdk | pretty-format-json | pylint | python-no-log-warn│
diff --git a/dev/breeze/doc/images/output_static-checks.txt b/dev/breeze/doc/images/output_static-checks.txt
index 5d493551b20fd..32222494f6f18 100644
--- a/dev/breeze/doc/images/output_static-checks.txt
+++ b/dev/breeze/doc/images/output_static-checks.txt
@@ -1 +1 @@
-3d43a8428b5e0fefbfccaef5003fa5a6
+e4e9ca98d368d38237503800292febf1
diff --git a/dev/breeze/src/airflow_breeze/pre_commit_ids.py b/dev/breeze/src/airflow_breeze/pre_commit_ids.py
index 7095d55b43fbd..c7ce5bccaa226 100644
--- a/dev/breeze/src/airflow_breeze/pre_commit_ids.py
+++ b/dev/breeze/src/airflow_breeze/pre_commit_ids.py
@@ -97,7 +97,6 @@
"detect-private-key",
"doctoc",
"end-of-file-fixer",
- "fix-encoding-pragma",
"flynt",
"generate-airflow-diagrams",
"generate-openapi-spec",