@theglitchking/gimme-the-lint 1.1.2 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +9 -7
- package/.claude-plugin/plugin.json +8 -6
- package/CHANGELOG.md +46 -0
- package/README.md +193 -319
- package/bin/gimme-the-lint.js +115 -33
- package/commands/lint-baseline.md +27 -17
- package/commands/lint-status.md +18 -15
- package/commands/lint.md +34 -26
- package/commands/policy.md +16 -0
- package/commands/relink.md +6 -0
- package/commands/status.md +6 -0
- package/commands/update.md +6 -0
- package/hooks/hooks.json +15 -0
- package/hooks/session-start.mjs +8 -0
- package/lib/adapters/adapter.js +192 -0
- package/lib/adapters/biome.js +103 -0
- package/lib/adapters/clippy.js +109 -0
- package/lib/adapters/eslint.js +100 -0
- package/lib/adapters/golangci-lint.js +100 -0
- package/lib/adapters/index.js +65 -0
- package/lib/adapters/ruff.js +86 -0
- package/lib/baseline-store.js +119 -0
- package/lib/baseline.js +125 -0
- package/lib/check.js +137 -0
- package/lib/config-manager.js +1 -2
- package/lib/dashboard.js +67 -0
- package/lib/diff-engine.js +109 -0
- package/lib/drift.js +140 -0
- package/lib/fingerprint.js +45 -0
- package/lib/gtl-manifest.js +90 -0
- package/lib/index.js +31 -0
- package/lib/installer.js +50 -3
- package/lib/migrate.js +108 -0
- package/lib/project-model.js +140 -0
- package/lib/report.js +114 -0
- package/lib/toolchain.js +71 -0
- package/lib/units.js +87 -0
- package/lib/violation.js +60 -0
- package/package.json +17 -10
- package/scripts/dashboard.sh +10 -186
- package/scripts/eslint-baseline.sh +11 -244
- package/scripts/link-skills.mjs +22 -0
- package/scripts/ruff-baseline.sh +10 -243
- package/scripts/run-checks.sh +10 -310
- package/uninstall.sh +1 -2
- package/README.backup.md +0 -310
- package/bin/postinstall.js +0 -29
- package/scripts/validate-version.sh +0 -46
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
"email": "theglitchking@users.noreply.github.com"
|
|
6
6
|
},
|
|
7
7
|
"metadata": {
|
|
8
|
-
"description": "Official marketplace for gimme-the-lint -
|
|
9
|
-
"version": "
|
|
8
|
+
"description": "Official marketplace for gimme-the-lint - polyglot progressive linting with per-app baselines and drift detection",
|
|
9
|
+
"version": "2.0.0"
|
|
10
10
|
},
|
|
11
11
|
"plugins": [
|
|
12
12
|
{
|
|
13
13
|
"name": "gimme-the-lint",
|
|
14
|
-
"description": "
|
|
15
|
-
"version": "
|
|
14
|
+
"description": "Polyglot progressive linting for monorepos — adapter-driven baselines, per-app drift detection, and idempotent skips across JavaScript/TypeScript, Python, Go, and Rust.",
|
|
15
|
+
"version": "2.0.0",
|
|
16
16
|
"author": {
|
|
17
17
|
"name": "TheGlitchKing"
|
|
18
18
|
},
|
|
@@ -22,12 +22,14 @@
|
|
|
22
22
|
"keywords": [
|
|
23
23
|
"linting",
|
|
24
24
|
"progressive-linting",
|
|
25
|
-
"
|
|
26
|
-
"ruff",
|
|
27
|
-
"python",
|
|
25
|
+
"polyglot",
|
|
28
26
|
"monorepo",
|
|
29
27
|
"git-hooks",
|
|
30
28
|
"drift-detection",
|
|
29
|
+
"eslint",
|
|
30
|
+
"ruff",
|
|
31
|
+
"golangci-lint",
|
|
32
|
+
"clippy",
|
|
31
33
|
"claude-code"
|
|
32
34
|
],
|
|
33
35
|
"category": "productivity",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gimme-the-lint",
|
|
3
|
-
"description": "
|
|
4
|
-
"version": "
|
|
3
|
+
"description": "Polyglot progressive linting for monorepos — adapter-driven baselines, per-app drift detection, and idempotent skips across JavaScript/TypeScript, Python, Go, and Rust.",
|
|
4
|
+
"version": "2.0.0",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "TheGlitchKing",
|
|
7
7
|
"email": "theglitchking@users.noreply.github.com"
|
|
@@ -12,11 +12,13 @@
|
|
|
12
12
|
"keywords": [
|
|
13
13
|
"linting",
|
|
14
14
|
"progressive-linting",
|
|
15
|
-
"
|
|
16
|
-
"ruff",
|
|
17
|
-
"python",
|
|
15
|
+
"polyglot",
|
|
18
16
|
"monorepo",
|
|
19
17
|
"git-hooks",
|
|
20
|
-
"drift-detection"
|
|
18
|
+
"drift-detection",
|
|
19
|
+
"eslint",
|
|
20
|
+
"ruff",
|
|
21
|
+
"golangci-lint",
|
|
22
|
+
"clippy"
|
|
21
23
|
]
|
|
22
24
|
}
|
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,52 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [2.0.0] - 2026-05-17
|
|
9
|
+
|
|
10
|
+
A ground-up rearchitecture: gimme-the-lint is now a language-agnostic
|
|
11
|
+
progressive-lint engine that owns its own baseline diffing, driven by
|
|
12
|
+
per-directory linter adapters.
|
|
13
|
+
|
|
14
|
+
### Breaking Changes
|
|
15
|
+
- **Baseline layout moved** from `frontend/.lttf/` + `backend/.lttf-ruff/` to a
|
|
16
|
+
single per-app tree, `.gtl/apps/<app>/baseline.json`, plus a global
|
|
17
|
+
`.gtl/manifest.json`. Run `gimme-the-lint migrate` to convert (it backs up
|
|
18
|
+
the legacy directories and re-baselines).
|
|
19
|
+
- **Baseline file format changed** to a linter-agnostic fingerprint map.
|
|
20
|
+
- **Config schema changed**: the `frontend`/`backend` model is replaced by an
|
|
21
|
+
optional `apps` map binding directories to linters; `skipPatterns` added.
|
|
22
|
+
`lttfDir`/`ruffBaselineDir` keys removed.
|
|
23
|
+
- **`check` flags removed**: `--frontend-only`, `--backend-only`, `--verbose`.
|
|
24
|
+
- **GitHub Action inputs changed**: `frontend`/`backend` removed (linting is
|
|
25
|
+
now polyglot auto-detect); `strict` added. Pin `@v2`.
|
|
26
|
+
- The `lint-to-the-future` dependency is gone — gimme-the-lint no longer shells
|
|
27
|
+
out to it; ESLint progressivity is handled by the in-house engine.
|
|
28
|
+
|
|
29
|
+
### Added
|
|
30
|
+
- In-house progressive-diff engine: line/column-independent violation
|
|
31
|
+
fingerprints, so baselined violations survive code shifting in a file.
|
|
32
|
+
- Linter adapter interface — each linter is a self-contained adapter.
|
|
33
|
+
- **Go** support via `golangci-lint` and **Rust** support via `cargo clippy`,
|
|
34
|
+
alongside ESLint and **Biome** (JS/TS) and Ruff (Python).
|
|
35
|
+
- **Biome** adapter: a `biome.json` binds an app to Biome and supersedes the
|
|
36
|
+
default ESLint binding for that app.
|
|
37
|
+
- Polyglot project model: apps auto-discovered by walking for package
|
|
38
|
+
manifests; monorepo workspaces handled; `_template-*` dirs skipped.
|
|
39
|
+
- Per-app drift detection (app add/remove, config, linter version, age) —
|
|
40
|
+
a change in one app never churns unrelated baselines.
|
|
41
|
+
- Idempotent skips: an app with code but no installed linter is warn-skipped
|
|
42
|
+
(never blocks), or fails loudly under `--strict`.
|
|
43
|
+
- `--offline` install for air-gapped environments (no npm/pip fetches; fails
|
|
44
|
+
loudly on a missing toolchain).
|
|
45
|
+
- `--no-baseline` greenfield install / `baseline --empty` — "strict from day
|
|
46
|
+
one" with nothing grandfathered.
|
|
47
|
+
- `gimme-the-lint migrate` — one-shot v1 → v2 migration.
|
|
48
|
+
|
|
49
|
+
### Changed
|
|
50
|
+
- `run-checks.sh`, `eslint-baseline.sh`, `ruff-baseline.sh`, `dashboard.sh` are
|
|
51
|
+
now thin shims over the Node engine.
|
|
52
|
+
- The dashboard renders from `.gtl/manifest.json` with per-app drift.
|
|
53
|
+
|
|
8
54
|
## [1.1.2] - 2026-04-11
|
|
9
55
|
|
|
10
56
|
### Fixed
|