markdownlint-cli2 0.17.2 → 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/README.md +5 -3
- package/append-to-array.mjs +2 -1
- package/markdownlint-cli2.mjs +12 -3
- package/package.json +23 -22
- package/schema/markdownlint-cli2-config-schema.json +17 -17
- package/schema/markdownlint-config-schema.json +259 -144
package/CHANGELOG.md
CHANGED
package/README.md
CHANGED
|
@@ -149,7 +149,7 @@ A container image [`davidanson/markdownlint-cli2`][docker-hub-markdownlint-cli2]
|
|
|
149
149
|
can also be used (e.g., as part of a CI pipeline):
|
|
150
150
|
|
|
151
151
|
```bash
|
|
152
|
-
docker run -v $PWD:/workdir davidanson/markdownlint-cli2:v0.
|
|
152
|
+
docker run -v $PWD:/workdir davidanson/markdownlint-cli2:v0.18.0 "**/*.md" "#node_modules"
|
|
153
153
|
```
|
|
154
154
|
|
|
155
155
|
Notes:
|
|
@@ -166,7 +166,7 @@ Notes:
|
|
|
166
166
|
- A custom working directory can be specified with Docker's `-w` flag:
|
|
167
167
|
|
|
168
168
|
```bash
|
|
169
|
-
docker run -w /myfolder -v $PWD:/myfolder davidanson/markdownlint-cli2:v0.
|
|
169
|
+
docker run -w /myfolder -v $PWD:/myfolder davidanson/markdownlint-cli2:v0.18.0 "**/*.md" "#node_modules"
|
|
170
170
|
```
|
|
171
171
|
|
|
172
172
|
For convenience, the container image
|
|
@@ -302,12 +302,14 @@ of the rules within.
|
|
|
302
302
|
version numbers on `stdout`
|
|
303
303
|
- This top-level setting is valid **only** in the directory from which
|
|
304
304
|
`markdownlint-cli2` is run
|
|
305
|
+
- Use with `noProgress` to suppress all output to `stdout` (i.e., `--quiet`)
|
|
305
306
|
- `noInlineConfig`: `Boolean` value to disable the support of
|
|
306
307
|
[HTML comments][html-comment] within Markdown content
|
|
307
308
|
- For example: `<!-- markdownlint-disable some-rule -->`
|
|
308
309
|
- `noProgress`: `Boolean` value to disable the display of progress on `stdout`
|
|
309
310
|
- This top-level setting is valid **only** in the directory from which
|
|
310
311
|
`markdownlint-cli2` is run
|
|
312
|
+
- Use with `noBanner` to suppress all output to `stdout` (i.e., `--quiet`)
|
|
311
313
|
- `outputFormatters`: `Array` of `Array`s, each of which has a `String`
|
|
312
314
|
naming an [output formatter][output-formatters] followed by parameters
|
|
313
315
|
- Formatters can be used to customize the tool's output for different
|
|
@@ -413,7 +415,7 @@ reference to the `repos` list in that project's `.pre-commit-config.yaml` like:
|
|
|
413
415
|
|
|
414
416
|
```yaml
|
|
415
417
|
- repo: https://github.com/DavidAnson/markdownlint-cli2
|
|
416
|
-
rev: v0.
|
|
418
|
+
rev: v0.18.0
|
|
417
419
|
hooks:
|
|
418
420
|
- id: markdownlint-cli2
|
|
419
421
|
```
|
package/append-to-array.mjs
CHANGED
package/markdownlint-cli2.mjs
CHANGED
|
@@ -19,7 +19,7 @@ import yamlParse from "./parsers/yaml-parse.mjs";
|
|
|
19
19
|
|
|
20
20
|
// Variables
|
|
21
21
|
const packageName = "markdownlint-cli2";
|
|
22
|
-
const packageVersion = "0.
|
|
22
|
+
const packageVersion = "0.18.0";
|
|
23
23
|
const libraryName = "markdownlint";
|
|
24
24
|
const libraryVersion = getVersion();
|
|
25
25
|
const bannerMessage = `${packageName} v${packageVersion} (${libraryName} v${libraryVersion})`;
|
|
@@ -79,7 +79,6 @@ const importModule = async (dirOrDirs, id, noImport) => {
|
|
|
79
79
|
} catch (error) {
|
|
80
80
|
errors.push(error);
|
|
81
81
|
moduleName =
|
|
82
|
-
// eslint-disable-next-line n/no-unsupported-features/node-builtins
|
|
83
82
|
(!pathDefault.isAbsolute(expandId) && URL.canParse(expandId))
|
|
84
83
|
? new URL(expandId)
|
|
85
84
|
: pathToFileURL(pathDefault.resolve(dirs[0], expandId));
|
|
@@ -755,6 +754,16 @@ const lintFiles = (fs, dirInfos, fileContents) => {
|
|
|
755
754
|
filteredStrings[file] = fileContents[file];
|
|
756
755
|
}
|
|
757
756
|
}
|
|
757
|
+
// Create markdown-it factory
|
|
758
|
+
// eslint-disable-next-line unicorn/consistent-function-scoping
|
|
759
|
+
const markdownItFactory = async () => {
|
|
760
|
+
const module = await import("markdown-it");
|
|
761
|
+
const markdownIt = module.default({ "html": true });
|
|
762
|
+
for (const plugin of (markdownlintOptions.markdownItPlugins || [])) {
|
|
763
|
+
markdownIt.use(...plugin);
|
|
764
|
+
}
|
|
765
|
+
return markdownIt;
|
|
766
|
+
};
|
|
758
767
|
// Create markdownlint options object
|
|
759
768
|
/** @type {import("markdownlint").Options} */
|
|
760
769
|
const options = {
|
|
@@ -767,7 +776,7 @@ const lintFiles = (fs, dirInfos, fileContents) => {
|
|
|
767
776
|
? new RegExp(markdownlintOptions.frontMatter, "u")
|
|
768
777
|
: undefined,
|
|
769
778
|
"handleRuleFailures": true,
|
|
770
|
-
|
|
779
|
+
markdownItFactory,
|
|
771
780
|
"noInlineConfig": Boolean(markdownlintOptions.noInlineConfig),
|
|
772
781
|
fs
|
|
773
782
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "markdownlint-cli2",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.18.0",
|
|
4
4
|
"description": "A fast, flexible, configuration-based command-line interface for linting Markdown/CommonMark files with the `markdownlint` library",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "David Anson",
|
|
@@ -35,9 +35,9 @@
|
|
|
35
35
|
"lint-dockerfile": "docker run --rm -i hadolint/hadolint:latest-alpine < docker/Dockerfile",
|
|
36
36
|
"lint-watch": "git ls-files | entr npm run lint",
|
|
37
37
|
"playwright-install-bare": "npm run playwright-install-npm && playwright install",
|
|
38
|
-
"playwright-install-npm": "npm install --no-save playwright@1.
|
|
38
|
+
"playwright-install-npm": "npm install --no-save playwright@1.52.0",
|
|
39
39
|
"playwright-test": "playwright test --config ./webworker/playwright.config.mjs",
|
|
40
|
-
"playwright-test-docker": "docker run --rm --volume $PWD:/home/workdir --workdir /home/workdir --ipc=host mcr.microsoft.com/playwright:v1.
|
|
40
|
+
"playwright-test-docker": "docker run --rm --volume $PWD:/home/workdir --workdir /home/workdir --ipc=host mcr.microsoft.com/playwright:v1.52.0 npm run playwright-test",
|
|
41
41
|
"schema": "cpy ./node_modules/markdownlint/schema/markdownlint-config-schema.json ./schema --flat",
|
|
42
42
|
"test": "ava --timeout=1m test/append-to-array-test.mjs test/fs-mock-test.mjs test/fs-virtual-test.mjs test/markdownlint-cli2-test.mjs test/markdownlint-cli2-test-exec.mjs test/markdownlint-cli2-test-exports.mjs test/markdownlint-cli2-test-fs.mjs test/markdownlint-cli2-test-main.mjs test/merge-options-test.mjs",
|
|
43
43
|
"test-cover": "c8 --100 npm test",
|
|
@@ -47,12 +47,12 @@
|
|
|
47
47
|
"test-docker-image-rules": "VERSION=$(node -e \"process.stdout.write(require('./package.json').version)\") && docker run --rm -v $PWD:/workdir davidanson/markdownlint-cli2-rules:v$VERSION \"*.md\"",
|
|
48
48
|
"test-invoke-as-cli": "markdownlint-cli2 CHANGELOG.md",
|
|
49
49
|
"test-watch": "git ls-files | entr npm run test",
|
|
50
|
-
"update-snapshots": "ava --timeout=1m --update-snapshots test/markdownlint-cli2-test-exec.mjs test/markdownlint-cli2-test-fs.mjs test/markdownlint-cli2-test-main.mjs",
|
|
50
|
+
"update-snapshots": "ava --timeout=1m --update-snapshots test/markdownlint-cli2-test-exec.mjs test/markdownlint-cli2-test-exports.mjs test/markdownlint-cli2-test-fs.mjs test/markdownlint-cli2-test-main.mjs",
|
|
51
51
|
"webworker": "cd webworker && webpack --mode none",
|
|
52
52
|
"webworker-install": "npm install --no-package-lock --no-save path-browserify setimmediate stream-browserify util webpack-cli && cpy ./node_modules/setimmediate/setImmediate.js ./webworker --flat --rename=setImmediate.cjs"
|
|
53
53
|
},
|
|
54
54
|
"engines": {
|
|
55
|
-
"node": ">=
|
|
55
|
+
"node": ">=20"
|
|
56
56
|
},
|
|
57
57
|
"files": [
|
|
58
58
|
"append-to-array.mjs",
|
|
@@ -73,40 +73,41 @@
|
|
|
73
73
|
"schema/ValidatingConfiguration.md"
|
|
74
74
|
],
|
|
75
75
|
"dependencies": {
|
|
76
|
-
"globby": "14.0
|
|
76
|
+
"globby": "14.1.0",
|
|
77
77
|
"js-yaml": "4.1.0",
|
|
78
78
|
"jsonc-parser": "3.3.1",
|
|
79
|
-
"markdownlint": "0.
|
|
79
|
+
"markdownlint": "0.38.0",
|
|
80
80
|
"markdownlint-cli2-formatter-default": "0.0.5",
|
|
81
|
+
"markdown-it": "14.1.0",
|
|
81
82
|
"micromatch": "4.0.8"
|
|
82
83
|
},
|
|
83
84
|
"devDependencies": {
|
|
84
|
-
"@eslint/js": "9.
|
|
85
|
-
"@playwright/test": "1.
|
|
86
|
-
"@stylistic/eslint-plugin": "2.
|
|
85
|
+
"@eslint/js": "9.26.0",
|
|
86
|
+
"@playwright/test": "1.52.0",
|
|
87
|
+
"@stylistic/eslint-plugin": "4.2.0",
|
|
87
88
|
"ajv": "8.17.1",
|
|
88
|
-
"ava": "6.
|
|
89
|
+
"ava": "6.3.0",
|
|
89
90
|
"c8": "10.1.3",
|
|
90
91
|
"chalk": "5.4.1",
|
|
91
92
|
"cpy": "11.1.0",
|
|
92
93
|
"cpy-cli": "5.0.0",
|
|
93
|
-
"eslint": "9.
|
|
94
|
-
"eslint-plugin-jsdoc": "50.6.
|
|
95
|
-
"eslint-plugin-n": "17.
|
|
96
|
-
"eslint-plugin-unicorn": "
|
|
94
|
+
"eslint": "9.26.0",
|
|
95
|
+
"eslint-plugin-jsdoc": "50.6.11",
|
|
96
|
+
"eslint-plugin-n": "17.18.0",
|
|
97
|
+
"eslint-plugin-unicorn": "59.0.1",
|
|
97
98
|
"markdown-it-emoji": "3.0.0",
|
|
98
99
|
"markdown-it-for-inline": "2.0.1",
|
|
99
|
-
"markdownlint-cli2-formatter-codequality": "0.0.
|
|
100
|
+
"markdownlint-cli2-formatter-codequality": "0.0.6",
|
|
100
101
|
"markdownlint-cli2-formatter-json": "0.0.8",
|
|
101
|
-
"markdownlint-cli2-formatter-junit": "0.0.
|
|
102
|
-
"markdownlint-cli2-formatter-pretty": "0.0.
|
|
102
|
+
"markdownlint-cli2-formatter-junit": "0.0.13",
|
|
103
|
+
"markdownlint-cli2-formatter-pretty": "0.0.8",
|
|
103
104
|
"markdownlint-cli2-formatter-sarif": "0.0.3",
|
|
104
105
|
"markdownlint-cli2-formatter-summarize": "0.0.7",
|
|
105
|
-
"markdownlint-cli2-formatter-template": "0.0.
|
|
106
|
-
"markdownlint-rule-extended-ascii": "0.1
|
|
107
|
-
"nano-spawn": "0.2.
|
|
106
|
+
"markdownlint-cli2-formatter-template": "0.0.3",
|
|
107
|
+
"markdownlint-rule-extended-ascii": "0.2.1",
|
|
108
|
+
"nano-spawn": "0.2.1",
|
|
108
109
|
"npm-run-all": "4.1.5",
|
|
109
|
-
"terminal-link": "
|
|
110
|
+
"terminal-link": "4.0.0"
|
|
110
111
|
},
|
|
111
112
|
"keywords": [
|
|
112
113
|
"markdown",
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
-
"$id": "https://raw.githubusercontent.com/DavidAnson/markdownlint-cli2/v0.
|
|
3
|
+
"$id": "https://raw.githubusercontent.com/DavidAnson/markdownlint-cli2/v0.18.0/schema/markdownlint-cli2-config-schema.json",
|
|
4
4
|
"title": "markdownlint-cli2 configuration schema",
|
|
5
5
|
"type": "object",
|
|
6
6
|
"properties": {
|
|
7
7
|
"$schema": {
|
|
8
8
|
"description": "JSON Schema URI (expected by some editors)",
|
|
9
9
|
"type": "string",
|
|
10
|
-
"default": "https://raw.githubusercontent.com/DavidAnson/markdownlint-cli2/v0.
|
|
10
|
+
"default": "https://raw.githubusercontent.com/DavidAnson/markdownlint-cli2/v0.18.0/schema/markdownlint-cli2-config-schema.json"
|
|
11
11
|
},
|
|
12
12
|
"config": {
|
|
13
|
-
"description": "markdownlint configuration schema : https://github.com/DavidAnson/markdownlint/blob/v0.
|
|
14
|
-
"$ref": "https://raw.githubusercontent.com/DavidAnson/markdownlint/v0.
|
|
13
|
+
"description": "markdownlint configuration schema : https://github.com/DavidAnson/markdownlint/blob/v0.38.0/schema/.markdownlint.jsonc",
|
|
14
|
+
"$ref": "https://raw.githubusercontent.com/DavidAnson/markdownlint/v0.38.0/schema/markdownlint-config-schema.json",
|
|
15
15
|
"default": {}
|
|
16
16
|
},
|
|
17
17
|
"customRules": {
|
|
18
|
-
"description": "Module names or paths of custom rules to load and use when linting : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.
|
|
18
|
+
"description": "Module names or paths of custom rules to load and use when linting : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.18.0/README.md#markdownlint-cli2jsonc",
|
|
19
19
|
"type": "array",
|
|
20
20
|
"default": [],
|
|
21
21
|
"items": {
|
|
@@ -25,18 +25,18 @@
|
|
|
25
25
|
}
|
|
26
26
|
},
|
|
27
27
|
"fix": {
|
|
28
|
-
"description": "Whether to enable fixing of linting errors reported by rules that emit fix information : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.
|
|
28
|
+
"description": "Whether to enable fixing of linting errors reported by rules that emit fix information : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.18.0/README.md#markdownlint-cli2jsonc",
|
|
29
29
|
"type": "boolean",
|
|
30
30
|
"default": false
|
|
31
31
|
},
|
|
32
32
|
"frontMatter": {
|
|
33
|
-
"description": "Regular expression used to match and ignore any front matter at the beginning of a document : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.
|
|
33
|
+
"description": "Regular expression used to match and ignore any front matter at the beginning of a document : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.18.0/README.md#markdownlint-cli2jsonc",
|
|
34
34
|
"type": "string",
|
|
35
35
|
"minLength": 1,
|
|
36
36
|
"default": ""
|
|
37
37
|
},
|
|
38
38
|
"gitignore": {
|
|
39
|
-
"description": "Whether to ignore files referenced by .gitignore (or glob expression) (only valid at the root) : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.
|
|
39
|
+
"description": "Whether to ignore files referenced by .gitignore (or glob expression) (only valid at the root) : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.18.0/README.md#markdownlint-cli2jsonc",
|
|
40
40
|
"type": [
|
|
41
41
|
"boolean",
|
|
42
42
|
"string"
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"default": false
|
|
45
45
|
},
|
|
46
46
|
"globs": {
|
|
47
|
-
"description": "Glob expressions to include when linting (only valid at the root) : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.
|
|
47
|
+
"description": "Glob expressions to include when linting (only valid at the root) : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.18.0/README.md#markdownlint-cli2jsonc",
|
|
48
48
|
"type": "array",
|
|
49
49
|
"default": [],
|
|
50
50
|
"items": {
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
}
|
|
55
55
|
},
|
|
56
56
|
"ignores": {
|
|
57
|
-
"description": "Glob expressions to ignore when linting : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.
|
|
57
|
+
"description": "Glob expressions to ignore when linting : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.18.0/README.md#markdownlint-cli2jsonc",
|
|
58
58
|
"type": "array",
|
|
59
59
|
"default": [],
|
|
60
60
|
"items": {
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
}
|
|
65
65
|
},
|
|
66
66
|
"markdownItPlugins": {
|
|
67
|
-
"description": "markdown-it plugins to load and use when linting : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.
|
|
67
|
+
"description": "markdown-it plugins to load and use when linting : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.18.0/README.md#markdownlint-cli2jsonc",
|
|
68
68
|
"type": "array",
|
|
69
69
|
"default": [],
|
|
70
70
|
"items": {
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
}
|
|
85
85
|
},
|
|
86
86
|
"modulePaths": {
|
|
87
|
-
"description": "Additional paths to resolve module locations from : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.
|
|
87
|
+
"description": "Additional paths to resolve module locations from : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.18.0/README.md#markdownlint-cli2jsonc",
|
|
88
88
|
"type": "array",
|
|
89
89
|
"default": [],
|
|
90
90
|
"items": {
|
|
@@ -94,22 +94,22 @@
|
|
|
94
94
|
}
|
|
95
95
|
},
|
|
96
96
|
"noBanner": {
|
|
97
|
-
"description": "Whether to disable the display of the banner message and version numbers on stdout (only valid at the root) : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.
|
|
97
|
+
"description": "Whether to disable the display of the banner message and version numbers on stdout (only valid at the root) : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.18.0/README.md#markdownlint-cli2jsonc",
|
|
98
98
|
"type": "boolean",
|
|
99
99
|
"default": false
|
|
100
100
|
},
|
|
101
101
|
"noInlineConfig": {
|
|
102
|
-
"description": "Whether to disable support of HTML comments within Markdown content : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.
|
|
102
|
+
"description": "Whether to disable support of HTML comments within Markdown content : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.18.0/README.md#markdownlint-cli2jsonc",
|
|
103
103
|
"type": "boolean",
|
|
104
104
|
"default": false
|
|
105
105
|
},
|
|
106
106
|
"noProgress": {
|
|
107
|
-
"description": "Whether to disable the display of progress on stdout (only valid at the root) : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.
|
|
107
|
+
"description": "Whether to disable the display of progress on stdout (only valid at the root) : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.18.0/README.md#markdownlint-cli2jsonc",
|
|
108
108
|
"type": "boolean",
|
|
109
109
|
"default": false
|
|
110
110
|
},
|
|
111
111
|
"outputFormatters": {
|
|
112
|
-
"description": "Output formatters to load and use to customize markdownlint-cli2 output (only valid at the root) : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.
|
|
112
|
+
"description": "Output formatters to load and use to customize markdownlint-cli2 output (only valid at the root) : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.18.0/README.md#markdownlint-cli2jsonc",
|
|
113
113
|
"type": "array",
|
|
114
114
|
"default": [],
|
|
115
115
|
"items": {
|
|
@@ -129,7 +129,7 @@
|
|
|
129
129
|
}
|
|
130
130
|
},
|
|
131
131
|
"showFound": {
|
|
132
|
-
"description": "Whether to show the list of found files on stdout (only valid at the root) : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.
|
|
132
|
+
"description": "Whether to show the list of found files on stdout (only valid at the root) : https://github.com/DavidAnson/markdownlint-cli2/blob/v0.18.0/README.md#markdownlint-cli2jsonc",
|
|
133
133
|
"type": "boolean",
|
|
134
134
|
"default": false
|
|
135
135
|
}
|