Commit graph

809 commits

Author SHA1 Message Date
David Anson
feca49e4f8 Move exports/subpath imports (uses exec) and project file tests (use shared glob) into separate test files for better parallelization. 2025-01-19 16:44:20 -08:00
David Anson
53ff5c43f1 Stop using module.createRequire (problematic under webpack), incorporate and export resolveModule helper from markdownlint-cli2. 2025-01-14 23:30:09 -08:00
David Anson
4ad6628dcb Update test repo snapshots. 2025-01-10 02:36:21 +00:00
David Anson
d4352c7a44 Update test repo snapshots. 2025-01-07 04:28:31 +00:00
David Anson
df33933fe5 Update export test to avoid "ExperimentalWarning: Importing JSON modules is an experimental feature and might change at any time". 2024-12-24 00:15:19 +00:00
David Anson
baf4944f5f Add subpath imports "markdownlint-imports-browser" and "markdownlint-imports-node" for overriding "browser"/"default" behavior in bundlers like webpack. 2024-12-17 21:21:57 -08:00
David Anson
8ad4698536 Update MD032/blanks-around-lists to ignore (end-appended) undefined reference tokens when determining the last line of a list (fixes #1453). 2024-12-16 20:54:37 -08:00
David Anson
6e52643f8c Update CHANGELOG.md for breaking changes, remove outdated comments from test file. 2024-12-05 23:00:55 -08:00
David Anson
b404c8bf16 Add README documentation for getVersion, leave promise/extendConfig undocumented (unsupported). 2024-12-04 23:23:56 -08:00
David Anson
8da43dd246 Update to use named exports via / /async /promise /sync, simplify references via self-referencing, refine examples. 2024-12-03 19:58:47 -08:00
David Anson
789190962c Remove import of node:util and manually implement promisify (improves browser scenario), improve JSDoc typing. 2024-11-30 21:44:37 -08:00
David Anson
3599f694ba Move micromark-parse.mjs from helpers to library, remove all dependencies from helpers. 2024-11-30 20:42:14 -08:00
David Anson
1e71f6f44e Convert markdownlint library to an ECMAScript module, replace markdownlint-micromark with micromark, stop publishing (large) markdownlint-browser.js, see https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c for guidance. 2024-11-29 18:29:21 -08:00
David Anson
d536543344 Update test repo snapshots. 2024-11-20 04:33:58 +00:00
David Anson
886e00a8d5 Update test repo snapshots. 2024-10-31 04:49:49 +00:00
David Anson
0eedda0a6c Update MD027/no-multiple-space-blockquote to handle multiple lines of indented code inside a blockquote (fixes #1393). 2024-10-28 21:40:39 -07:00
David Anson
a7a50eaa39 Update MD054/link-image-style to handle autolinked email addresses when disallowed (fixes #1391). 2024-10-27 22:02:33 -07:00
David Anson
38b4ec0c2f Refactor use of micromark so token stream is authentic by shimming undefined link reference handling, remove no-longer-necessary parse operation in MD034. 2024-10-21 20:56:22 -07:00
David Anson
a63972a666 Update customRulesParamsAreFrozen test to cover all parser variations. 2024-10-11 20:33:29 -07:00
David Anson
04c693b00b Update MD051/link-fragments to add ignore_case parameter and improve documentation (fixes #1274). 2024-10-08 22:40:25 -07:00
David Anson
61a9c2427e Address new violations of @stylistic/no-extra-parens. 2024-10-06 21:06:16 -07:00
David Anson
4e30462216 Promote applyFix and applyFixes helpers into core library. 2024-10-06 17:24:44 -07:00
David Anson
e0219411c6 Refactor RegExps to avoid the possibility of polynomial backtracking (fixes #657). 2024-10-05 18:07:45 -07:00
David Anson
5cc40c54b7 Enable custom rules to use the micromark parser, export micromark helpers for reuse. 2024-10-01 22:53:46 -07:00
David Anson
d3819c4e75 Add markdownlint "version" property to custom rule "params" object in case it is ever necessary for a rule to specialize its behavior. 2024-09-29 18:11:41 -07:00
David Anson
ee50519e00 Add "exportMappings" test for package.json exports. 2024-09-29 17:50:40 -07:00
David Anson
33631a5984 Split micromark.cjs into separate -parse and -helpers files. 2024-09-28 16:26:38 -07:00
David Anson
5e568d0da9 Refactor to remove micromark helper getExclusionsForToken. 2024-09-27 23:58:49 -07:00
David Anson
fa24329f89 Update test repo snapshots. 2024-09-26 21:39:08 -07:00
David Anson
0dffe940b5 Update dependency: markdownlint-micromark to 0.1.11 (refs DavidAnson/markdownlint-cli2#325). 2024-09-19 21:54:38 -07:00
David Anson
98ff66209d Move markdown-it token manipulation code into a separate file which is only require()-ed if/when needed. 2024-09-14 17:33:46 -07:00
David Anson
bdd5cdcafe Add snapshot test for markdownit token params passed to custom rules. 2024-09-12 22:52:30 -07:00
David Anson
d279c4e424 Update test repo snapshots. 2024-09-12 22:49:00 -07:00
David Anson
4893b55d22 Update test repo snapshots. 2024-09-10 20:26:20 -07:00
David Anson
087be0dd8a Update test repo snapshots. 2024-09-08 20:37:17 -07:00
David Anson
164bbac651 Add @stylistic/eslint-plugin to ESLint configuration. 2024-09-01 16:16:05 -07:00
David Anson
9c8e7156e1 Create strict JSON Schema for configuration (standalone for ease of use) and corresponding strict TypeScript type (via extends for conciseness) (fixes #1248). 2024-08-27 20:47:33 -07:00
David Anson
dfcb4529f3 Cache all top-level calls to filterByTypes (~7% runtime reduction). 2024-08-24 22:05:16 -07:00
David Anson
85e704f32a Update to only invoke rules that are used at least once by the content. 2024-08-22 20:35:01 -07:00
David Anson
ea8d596a9b Stop running the markdown-it parser unless a custom rule that requires it is present (~7% runtime reduction). 2024-08-21 21:19:52 -07:00
David Anson
b79b519c34 Update test repo snapshots. 2024-08-21 20:14:51 -07:00
David Anson
7aac5b0553 Refactor to remove flattenedLists, indentFor, listItemMarkerRe, orderedListItemMarkerRe, rangeFromRegExp, and unorderedListStyleFor helpers, reimplement MD004/MD029 using micromark tokens. 2024-08-20 21:36:17 -07:00
David Anson
55729cfcf7 Remove filterTokens helper (now used only by tests). 2024-08-18 15:34:26 -07:00
David Anson
2b8369ae39 Update MD031/blanks-around-fences to handle missing close fence. 2024-08-17 20:29:27 -07:00
David Anson
c8fd9eb4b3 Refactor to remove forEachLine and getLineMetadata helpers, reimplement MD012/MD018/MD020/MD031 using micromark tokens. 2024-08-17 17:58:16 -07:00
David Anson
3b581a7f6d Reimplement MD013/line-length using micromark tokens. 2024-08-13 20:57:00 -07:00
David Anson
4072cf7417 Reimplement MD009/no-trailing-spaces using micromark tokens. 2024-08-12 23:24:46 -07:00
David Anson
ff8c1bf9b2 Reimplement MD010/no-hard-tabs using micromark tokens. 2024-08-10 21:44:42 -07:00
David Anson
c35e8ce40d Add empty .markdownlint.json to test directory to prevent inheriting project settings in VS Code editing scenarios. 2024-08-07 21:28:21 -07:00
David Anson
a8da6c5586 Update test repo snapshots. 2024-08-07 21:20:23 -07:00