Skip to content

v0.9.3

Choose a tag to compare

@TomD4vs TomD4vs released this 07 Sep 17:53
· 2 commits to main since this release

A link to a line is not a link to a heading, and the report says what each finding means. One false positive removed; no check looks for anything new. The JSON schema is 9.

A line anchor in a markdown link. [a](docs/guide.md#L12) sent the fragment to the heading check, which turned it into an anchor and found no heading called l12, so the link was reported as broken with the file and the line both there. In prose, docs/guide.md:42 and docs/guide.md#L10-L20 already had their suffix dropped; the link branch did not. Now a fragment in the line form of GitHub, L12, L12-L20, L12C3-L14C7, and the L12-20 GitLab writes, points at a line, and only the page is checked. The line number itself is not verified, on purpose: a line moves with every edit, and reporting #L400 in a page that shrank to three hundred lines would be noise on every repository that cites code by line. A heading anchor is still checked, a link to a page that is not there is still reported, and a wrongly cased page with a line anchor is still a case mismatch.

The report reads without the reference page. Every title now carries one line saying what the finding is, where only CASE MISMATCH had one: wrong letter case: works on Windows and macOS, fails on Linux and CI, points at a page or heading that is not there, the note cites it, but git tracks no such file or folder, and in the folder, but MEMORY.md never mentions it. The header counts files tracked by git instead of files in the git index, and the last line says what --fix will take care of: 4 to review, --fix corrects 1, with the count of case mismatches and of renames git recorded, which are the two things --fix rewrites. The sentence that followed MISSING PATH, about paths cited to say they are gone, spoke of a filter rather than of the finding and is gone; the reference page keeps the filter. --format json, github and sarif are unchanged, and so is the exit code. The README, the LEIAME and the demo show the new text.

Measurement. The anchor shape was verified on a small reproduction, not found on a corpus, and the corpus agrees: on 87 public repositories already on disk, 23,172 findings under 0.9.2 and the same 23,172 under this version, none removed, none added. The rule fixes what a reader of a README can hit and costs nothing where it was not hit. The wording change moves no finding.

Suite 170 to 171, simulation 133.