Skip to content

Commit 935593f

Browse files
committed
fix: Expand more on why not level=lint
1 parent fbf6f48 commit 935593f

File tree

1 file changed

+12
-3
lines changed

1 file changed

+12
-3
lines changed

text/3389-manifest-lint.md

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -240,9 +240,18 @@ We could support platform or feature specific settings, like with
240240

241241
Instead of the `[lints]` table being `lint = "level"`, we could organize
242242
it around `level = ["lint", ...]` like some other linters do (like
243-
[ruff](https://beta.ruff.rs/docs/configuration/)) but this works better for
244-
logically organizing lints, highlighting what changed in diffs, and for
245-
possibly adding lint-specific configuration in the future.
243+
[ruff](https://beta.ruff.rs/docs/configuration/)). This is less verbose. We
244+
chose `lint` being the keys because
245+
- Most reasons for organizing around `level` are preference from which ecosystem they came from (Python vs JS)
246+
- Organizing around `lint` makes it harder to lose track of what section you
247+
are in for large lint lists (which exist), people do with dependency tables
248+
today
249+
- TOML isn't great for nesting complex data structures and we have allow a
250+
`priority` field and might allo other lint-level configuration. Organizing
251+
around `lint` makes this cleaner.
252+
- If we add support for packages overiding inherited workspace lints, it likely
253+
better maps to a users model to just say the package lint table gets merged
254+
into the workspace lint table. This is also easier to implement correctly.
246255

247256
## Workspace Inheritance
248257

0 commit comments

Comments
 (0)