LINT.SKIPPED — the run ended without linting anything
- Category: safety
- Level: 0
- Stability: stable
- Suites: lint
A run can finish having linted nothing, and there are several ordinary ways to get there. This page covers all of them, because what a reader needs to know is the same in every case: why a run can end without having examined a single migration.
The concrete finding reports as LINT.SKIPPED.<reason> — the reason is part of the id, so the report
says which of these happened rather than leaving you to guess.
The reasons
- Nothing pending. Every migration has already run. This is the common one, and on a CI job that migrates before linting it is usually a sign the steps are in the wrong order.
- The path matched nothing. A
--pathpointing at a directory with no migrations in it, or a--filethat does not exist. - Capture produced nothing. The migration ran under pretend and emitted no statements — a
migration whose
up()is empty, or one whose work is entirely result-dependent and therefore invisible to pretend. The second case is reported asundeterminedin its own right by theCAP.PRESCAN.*family.
Why it is a finding rather than a silent zero
Same argument as LINT.NO_ACTIVE_RULES, arrived at from the other side: a run with nothing to lint
and a run whose migrations are all clean produce identical output. One of those means your pipeline
is not checking anything, and it is worth an explicit sentence.
One page for the whole family
The id is a family — LINT.SKIPPED.NO_MIGRATION_TABLE, LINT.SKIPPED.CONNECTION_UNREACHABLE,
LINT.SKIPPED.EMPTY_MIGRATION_PATH, LINT.SKIPPED.MISSING_TOOL — and the
registry records that explicitly, so the completeness check does not go looking for a page per
reason. LINT.SKIPPED.MISSING_TOOL is the one exception with a page of its own, because its remedy
is entirely different.
Related
LINT.SKIPPED.MISSING_TOOL- Capture modes — what pretend can and cannot see