Linter
6 pages filed under Quality › linter. A term is a word of the business with its definition, its aliases and the words it relates to.
| Term | aliases | First line | Links |
|---|---|---|---|
| Determinism | reproducible build, byte-identical | Two builds of unchanged sources write the same bytes: every list of the model, of the build log, of the fragments and of the site is sorted canonically before it is written, a parallel step sorts its results, nothing random is written and the only timestamp is the at field of the log and of the build block of the model, pinned by SOURCE_DATE_EPOCH as reproducible-builds tooling does. The repository builds its golden corpus twice on every change and compares every file, so that dist/ can be committed and diffed. | 52 |
| Excluded file | exclude, excluded file, ignored file, gitignore | A file of a knowledge repository that is never read, never counted and never reported, by the linter and by the build alike: what privacy.exclude of the privacy block names for the whole wiki, what exclude of the repository's own concordance-lint.yaml names for that repository, both as globs relative to its root, and what git ignores, read from every .gitignore of the repository with the rules git applies. A vendored folder, a generated site or a cloned tool thus stay out of the checks and out of the link resolution, so that a link towards an excluded file is a broken link; concordance lint --no-gitignore reads the ignored files anyway, for the rare repository that keeps notes in an ignored folder. Because both sides list the files the same way, the local checks keep their parity file for file. | 33 |
| Golden corpus | reference corpus, fixtures | A fixed corpus in which the tool describes itself, in English and in French, with the model and findings the engine must produce from it. Every story is tested against it; a change in the expected result goes through a reviewed pull request. This glossary and its companion specification repository are the public counterpart: real content about the tool itself. | 62 |
| Linter | concordance lint, lint command | The lint command: it reads every markdown file of one knowledge repository but the excluded ones, runs the checks that a repository can be held to alone, and prints one line per finding with the address of its documentation page, then a count. In repo scope it needs no network and writes nothing but the report --output names; in global scope it also reads the published model of the wiki. The linter and the build produce the same findings for the local checks, it fails from the severity --fail-on gives, writes a forge report on request, applies the safe fixes with --fix, and runs the same way as an npm package, a standalone binary, a GitHub action, a GitLab component, the container image or a pre-commit hook. | 70 |
| Release | release tag, published version | One version of the tool, cut by merging the version pull request the pipeline keeps open from the changesets: the merge commit is tagged v<major>.<minor>.<patch>, every published package is packed and attached to a release with the standalone binaries of the linter, the checksums and the licence inventory, and the same tarballs go to npm, the container image to its registry and the action and the component to their mirrors once the maintainer has enabled each publication. Every form of a version names the same commit, so a version pinned in a pipeline, a hook or an image is one registry of checks with one behaviour, and the version of the tool written in the site and the model is that of the release. | 30 |
| Scope | lint scope, repo scope, global scope | What the linter sees: --scope repo, the default, checks the current repository alone, file by file, without the network; --scope global also reads the last published model of the wiki, from its cache or fetched with the validators the server gave, and checks the local notes against the remote entities with the global checks, without rebuilding anything. When no model can be read, the global scope degrades to the local one, says so on one line and in its reports, and exits according to the local findings. | 65 |
6 linter of 6 — pagination by twenty. The Links column counts the related pages, which brings the most central linter of the journey to the top.