From 2ab5f05f40d93224f73e211e84de50a88a6ecf03 Mon Sep 17 00:00:00 2001 From: silverwind Date: Tue, 26 Mar 2024 12:19:15 +0100 Subject: [PATCH] Add svg linter and fix incorrect svgs (#30086) Fixes https://github.com/go-gitea/gitea/issues/30082. Adds a new linter that searches for non-existant SVG images in templates. Output before the fix was: ``` $ make lint-templates SVG "octicon-warning" not found, used in templates/devtest/flex-list.tmpl SVG "octicon-warning" not found, used in templates/devtest/flex-list.tmpl SVG "octicon-markup" not found, used in templates/repo/diff/comment_form.tmpl make: *** [Makefile:438: lint-templates] Error 1 ``` Screenshot 2024-03-25 at 23 31 05 --- .github/workflows/files-changed.yml | 1 + .github/workflows/pull-compliance.yml | 4 ++++ Makefile | 3 ++- templates/devtest/flex-list.tmpl | 4 ++-- templates/repo/diff/comment_form.tmpl | 2 +- tools/lint-templates-svg.js | 26 ++++++++++++++++++++++++++ 6 files changed, 36 insertions(+), 4 deletions(-) create mode 100755 tools/lint-templates-svg.js diff --git a/.github/workflows/files-changed.yml b/.github/workflows/files-changed.yml index f9b6b1ec495..b8535cb42b2 100644 --- a/.github/workflows/files-changed.yml +++ b/.github/workflows/files-changed.yml @@ -73,6 +73,7 @@ jobs: - "Makefile" templates: + - "tools/lint-templates-*.js" - "templates/**/*.tmpl" - "pyproject.toml" - "poetry.lock" diff --git a/.github/workflows/pull-compliance.yml b/.github/workflows/pull-compliance.yml index 02a265b1ffd..99a69ab1749 100644 --- a/.github/workflows/pull-compliance.yml +++ b/.github/workflows/pull-compliance.yml @@ -35,8 +35,12 @@ jobs: - uses: actions/setup-python@v5 with: python-version: "3.12" + - uses: actions/setup-node@v4 + with: + node-version: 20 - run: pip install poetry - run: make deps-py + - run: make deps-frontend - run: make lint-templates lint-yaml: diff --git a/Makefile b/Makefile index 236f115a2f2..a7e175e76b4 100644 --- a/Makefile +++ b/Makefile @@ -434,7 +434,8 @@ lint-actions: $(GO) run $(ACTIONLINT_PACKAGE) .PHONY: lint-templates -lint-templates: .venv +lint-templates: .venv node_modules + @node tools/lint-templates-svg.js @poetry run djlint $(shell find templates -type f -iname '*.tmpl') .PHONY: lint-yaml diff --git a/templates/devtest/flex-list.tmpl b/templates/devtest/flex-list.tmpl index d5678566d88..015ab1e1546 100644 --- a/templates/devtest/flex-list.tmpl +++ b/templates/devtest/flex-list.tmpl @@ -25,7 +25,7 @@
diff --git a/templates/repo/diff/comment_form.tmpl b/templates/repo/diff/comment_form.tmpl index 6a5dec6c48b..856b3da01a3 100644 --- a/templates/repo/diff/comment_form.tmpl +++ b/templates/repo/diff/comment_form.tmpl @@ -26,7 +26,7 @@ {{end}}