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",