Skip to content

Commit 28bb626

Browse files
authored
chore: migrate from super-linter to flint v2 (#1988)
## Summary - Replaces `lint:super-linter`, `lint:links`, and `lint:renovate-deps` tasks with a single `flint run` invocation - Adds `google-java-format` via `github:google/google-java-format` and standard native lint tools through `mise` - Creates `.github/config/flint.toml` with path exclusions (`docs/themes/`, `src/main/generated/`, `mvnw`, `simpleclient-archive/`) and migrates `RENOVATE_TRACKED_DEPS_EXCLUDE` to `[checks.renovate-deps] exclude_managers` - Removes Spotless from the branch; flint does not replace Maven Checkstyle - Updates GitHub Actions to `mise v2026.4.16` so `raw_args = true` is supported in the flint-backed `lint` task ## Test plan - [ ] CI jobs pass - [x] `mise run lint` - [x] `mise run lint:fix` - [x] `flint run --fix renovate-deps` reflected in `.github/renovate-tracked-deps.json` --------- Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
1 parent a320128 commit 28bb626

30 files changed

Lines changed: 236 additions & 854 deletions

File tree

.codespellrc

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
[codespell]
2-
# Ignore words that are valid technical terms:
3-
# - vertx: Vert.x reactive framework
4-
# - errorprone: Error Prone static analysis tool
5-
ignore-words-list = vertx,errorprone
2+
# nd: legitimate variable name in quantile algorithms
3+
# atmost: AssertJ atMost() matcher
4+
# re-use: hyphenated form used in comments
5+
# errorprone: Google ErrorProne tool name
6+
ignore-words-list = nd,atmost,re-use,errorprone

.editorconfig

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ indent_size = 2
77
[{version-rules.xml,maven-wrapper.properties,checkstyle.xml,docker-compose.yaml,docker-compose.yml,Dockerfile,example_target_info.json,mise.toml,mvnm,mvnw.cmd,generate-protobuf.sh,.gitleaksignore,prometheus.properties}]
88
max_line_length = 200
99

10-
[{grafana-dashboard-*.json,.editorconfig,super-linter.env,lychee.toml,renovate.json5}]
10+
[{grafana-dashboard-*.json,.editorconfig,super-linter.env,lychee.toml,renovate.json5,CODE_OF_CONDUCT.md}]
1111
max_line_length = 300
1212

1313
[pom.xml]
@@ -18,5 +18,5 @@ max_line_length = 210
1818
indent_size = 4
1919
max_line_length = 120
2020

21-
[{.mise/tasks/build-release.sh,.github/workflows/multi-version-test.yml}]
22-
max_line_length = 200
21+
[{.mise/tasks/build-release.sh,.github/workflows/*.yml}]
22+
max_line_length = 300
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"_comment": "Java files are handled by flint, so editorconfig-checker ignores them.",
3+
"Exclude": [".*\\.java$"]
4+
}

.github/config/flint.toml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
[settings]
2+
# These paths are generated, vendored, or handled by other checks.
3+
exclude = [
4+
"CHANGELOG.md",
5+
"**/src/main/generated/**",
6+
"docs/themes/**",
7+
"mvnw",
8+
"simpleclient-archive/**",
9+
]
10+
11+
[checks.renovate-deps]
12+
# This inventory is regenerated from the files flint still inspects, so
13+
# super-linter-era entries drop out when they are excluded or no longer used.
14+
exclude_managers = ["github-actions", "github-runners", "maven"]

0 commit comments

Comments
 (0)