lint: consider scope of markdown linting in configlet
- Dominant language
- Nim
- Stars
- 23
- Forks
- 17
- Avg merge
- 13h 57m
- Merged PRs (30d)
- 1
Description
Follow-up on some discussions with Erik, starting from implementation options for https://github.com/exercism/configlet/issues/328.
I suggested that for a first implementation of markdown linting, we could consider adding `markdownlint` as an org-wide workflow (rather than adding it to `configlet lint`).
The downside: running `configlet lint` locally runs a smaller subset of checks that occur in CI. But `configlet lint` is not supposed to be the only CI check for every track, and even for `configlet lint` JSON checking we might add CI-only checks anyway (e.g. for Exercise-wide checks - see #178).
---
@ee7 wrote:
> There is some question about how to separate things. For a simpler example, it's probably nice to have org-wide whitespace checking. So should `configlet lint` do that, or an org-wide workflow?
>
> There we might argue that:
> 1. The scope of `configlet lint` is track repos
> 2. Exercism has more than just track repos
> 3. Other repos might have whitespace problems
> 4. Therefore whitespace checking should be done outside of `configlet lint`
>
> Regarding the `markdownlint` option, I guess it depends on how many rules we have that `markdownlint` cannot catch. That is, things that are valid markdown, but violate some Exercism-specific linting rule.
>
> By the same reasoning, it makes sense to have the JSON linting in `configlet lint` (as we have already), because:
> 1. The scope of `configlet lint` is track repos
> 2. Only track repos have certain JSON files
> 3. Parsing JSON (and confirming that it's valid) is easy
> 4. We're checking lots of Exercism-specific rules that are not about JSON validity, and are even difficult/impossible to express in e.g. JSON schema
> 5. With those files, it's more useful to have fast local linting without installing dependencies (which configlet provides)
>
> But if we want lots of the checks that `markdownlint` provides, it's probably a significant amount of work to essentially reimplement `markdownlint` in pure Nim
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.