Commit graph

33 commits

Author SHA1 Message Date
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
4e30462216 Promote applyFix and applyFixes helpers into core library. 2024-10-06 17:24:44 -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
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
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
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
d9c5d24e20 Update generated markdownlint.d.ts after previous commit. 2024-06-21 20:54:42 -07:00
David Anson
d5994ae4de Add Rule.parser property for custom rules to specify which Markdown parser output they use, honor it strictly, and add full type support. 2024-03-13 20:55:57 -07:00
David Anson
c44f165fe1 Remove tokens property from RuleParams type definition (use parsers.markdownit.tokens instead). No change to runtime behavior. 2024-03-07 21:14:17 -08:00
David Anson
12c4f79604 Add parsers object to RuleParams type, annotate every rule definition with Rule type for better type validation. 2024-02-27 20:42:09 -08:00
David Anson
d4bfb633bb Generate TypeScript declaration for Configuration object from JSON schema (refs #1004, refs #1014). 2023-11-08 19:49:02 -08:00
David Anson
07f403173c Replace all instances of JSDoc generic Function with detailed @callback definition (type-only changes). 2023-09-04 21:41:31 -07:00
David Anson
c699b8e22b Allow a custom rule's onError implementation to override that rule's information URL for each error. 2023-07-11 21:45:00 -07:00
David Anson
2ab546bec0 Implement (undocumented, promise-only) extendConfig API for readConfig-like behavior when the Configuration object is already available (i.e., to implement "extends" consistently). 2023-04-03 22:59:06 -07:00
David Anson
64159fa456 Address new @ts-check warnings in markdownlint-test.js. 2023-02-25 15:50:57 -08:00
David Anson
53cbf063e3 Update dependencies: c8 to 7.11.3, eslint to 8.18.0, eslint-plugin-jsdoc to 39.3.3, eslint-plugin-unicorn to 42.0.0, globby to 13.1.2, markdown-it-texmath to 1.0.0, markdownlint-rule-helpers to 0.16.0, ts-loader to 9.3.0, typescript to 4.7.4, webpack to 5.73.0, webpack-cli to 4.10.0. 2022-06-20 04:41:08 +00:00
David Anson
00082ee8a5 Add "configParsers" option so custom parsers can be used to handle the content of markdownlint-configure-file inline comments (fixes #528). 2022-06-05 22:32:22 -07:00
David Anson
2056d81682 Add support for asynchronous custom rules (ex: to read a file or make a network request). 2021-12-11 21:44:25 -08:00
David Anson
a5bfaa8a7d Correct typo-ed references to RuleOnErrorInfo.details to detail. 2021-09-25 16:23:37 -07:00
David Anson
a8228ecd80 Update dependencies: c8 to 7.8.0, eslint to 7.32.0, eslint-plugin-jsdoc to 36.0.7, eslint-plugin-unicorn to 35.0.0, globby to 11.0.4, markdown-it-texmath to 0.9.1, ts-loader to 9.2.5, typescript to 4.3.5, webpack to 5.51.1, webpack-cli to 4.8.0. 2021-08-22 18:03:26 -07:00
David Anson
709e314836 Update readConfig to use fs.access so the async path is fully async. 2021-08-12 20:43:18 -07:00
David Anson
211f09afbc Allow custom file system implementation to be passed when linting or reading configuration. 2021-08-12 19:38:03 -07:00
David Anson
02240fac98 Add missing lineNumber property to FixInfo type (fixes #405). 2021-06-14 22:30:35 -07:00
David Anson
fb5f647368 Update dependencies: c8 to 7.7.2, eslint to 7.28.0, eslint-plugin-jsdoc to 35.1.3, eslint-plugin-unicorn to 33.0.1, globby to 11.0.3, js-yaml to 4.1.0, markdown-it-texmath to 0.9.0, markdownlint-rule-helpers to 0.14.0, ts-loader to 9.2.3, typescript to 4.3.2, webpack to 5.38.1, webpack-cli to 4.7.2. 2021-06-08 22:20:13 -07:00
David Anson
49945d6601 Convert from tape test harness to ava, address minor declaration file issue. 2021-01-10 20:46:00 -08:00
David Anson
0c68e855f7 Update generated files. 2020-11-24 16:37:11 -08:00
David Anson
a971361cf2 Add getVersion function to exports for easy access by tooling (ex: CLI). 2020-10-17 14:17:35 -07:00
David Anson
e9d63a6284 Add Promise-based APIs for markdownlint and readConfig, update declaration file. 2020-09-13 12:58:09 -07:00
David Anson
74af9f82fb Enable jsdoc/require-jsdoc rule, fix all violations (fixes #85). 2020-01-23 19:42:46 -08:00
David Anson
e3c93ed65d Add eslint-plugin-jsdoc to lint script, address new violation. 2020-01-19 21:01:11 -08:00
David Anson
21b01b2a96 Resolve remaining TypeScript-based editor warnings in test file. 2020-01-11 20:48:00 -08:00
David Anson
e717608cac Update type declaration for MarkdownItToken with custom line/lineNumber properties. 2019-11-11 21:09:37 -08:00
David Anson
0a9ac73524 Introduce type declaration file for project after updating typescript dependency to 3.7.2. 2019-11-10 19:26:55 -08:00