diff --git a/CHANGELOG.md b/CHANGELOG.md index 297e336..bcfbb44 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,309 +1,307 @@ -9.1.0 / 2019-08-11 ------------------- +# Changelog +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [10.0.0] - 2019-09-11 +### Security +- Fix quadratic parse time for some combinations of pairs, #583. Algorithm is + now similar to one in reference implementation. + +### Changed +- Minor internal structs change, to make pairs parse more effective (cost is + linear now). If you use external "pairs" extensions, you need sync those with + "official ones". Without update, old code will work, but can cause invalid + result in rare case. This is the only reason of major version bump. With high probability you don't need to change your code, only update version dependency. +- Updated changelog format. + + +## [9.1.0] - 2019-08-11 +### Changed - Remove extra characters from line break check. Leave only 0x0A & 0x0D, as in CommonMark spec, #581. -9.0.0 / 2019-07-09 ------------------- - +## [9.0.0] - 2019-07-09 +### Changed - Updated CM spec compatibility to 0.29. - Update Travis-CI node version to actual (8 & latest). - Deps bump. -8.4.2 / 2018-02-15 ------------------- - +## [8.4.2] - 2018-02-15 +### Fixed - Fix `--no-html` CLI option, #476. -8.4.1 / 2018-02-15 ------------------- - +## [8.4.1] - 2018-02-15 +### Fixed - Fix smartquotes around softbreaks, #430. -8.4.0 / 2017-08-24 ------------------- - +## [8.4.0] - 2017-08-24 +### Changed - Updated CM spec compatibility to 0.28. -8.3.2 / 2017-08-03 ------------------- - +## [8.3.2] - 2017-08-03 +### Fixed - Fix blockquote termination inside lists, #386. -8.3.1 / 2017-03-06 ------------------- - +## [8.3.1] - 2017-03-06 +### Fixed - Fix blockquote termination by list item, #338. -8.3.0 / 2017-02-16 ------------------- +## [8.3.0] - 2017-02-16 +### Changed +- Remove tabs at the beginning of the line in paragraphs. +- Better error message for bad input type, #324. +### Fixed - Fix table indentation issues, #325, #224. -- Remove tabs at the beginning of the line in paragraphs. - Fix blockquote termination inside indented lists, #329. -- Better error message for bad input type, #324. -8.2.2 / 2016-12-15 ------------------- - +## [8.2.2] - 2016-12-15 +### Added - Add `-o` / `--output` option to CLI, #312. -8.2.1 / 2016-12-02 ------------------- - +## [8.2.1] - 2016-12-02 +### Fixed - Add missed h2..h6 to whitelisted block tags. -8.2.0 / 2016-12-01 ------------------- - +## [8.2.0] - 2016-12-01 +### Changed - Updated CM spec compatibility to 0.27 (no significant changes). + +### Fixed - Fix backticks handle inside tables, #303. - Fix edge case for fenced blocks with `~~~` in info, #301. - Fix fallback to reference if link is not valid, #302. -8.1.0 / 2016-11-03 ------------------- - +## [8.1.0] - 2016-11-03 +### Changed - Make link parse helpers (`md.helpers`) pluggable, #299. -8.0.1 / 2016-10-18 ------------------- - +## [8.0.1] - 2016-10-18 +### Fixed - Tables: allow tab characters in markup -8.0.0 / 2016-09-16 ------------------- - -- Updated CM spec compatibility to 0.26: - - Two consecutive newlines no longer terminate a list. - - Ordered list terminating a paragraph can now only start with 1. - - Adjust emphasis algorithm (`*foo**bar**baz*` is now parsed as `` - inside ``). - - Fix tab width calculation inside lists and blockquotes. +## [8.0.0] - 2016-09-16 +### Changed - Benchmarks src cleanup. - Remove testing in old nodes (but still use es5). +- Updated CM spec compatibility to 0.26 (see list below): +- Two consecutive newlines no longer terminate a list. +- Ordered list terminating a paragraph can now only start with 1. +- Adjust emphasis algorithm (`*foo**bar**baz*` is now parsed as `` + inside ``). +- Fix tab width calculation inside lists and blockquotes. -7.0.1 / 2016-08-16 ------------------- - +## [7.0.1] - 2016-08-16 +### Fixed - Fence renderer: fix concat of class array, #276. - Code renderer: do not render double space before attrs, #275. - Replacer: disable replacements inside autolinks, #272. -7.0.0 / 2016-06-22 ------------------- - -- Bump `linkify-it` dependency to 2.0.0. - - `---` no longer terminates autodetected links by default. - - `md.linkifier.set('---', true)` will return old behaviour. +## [7.0.0] - 2016-06-22 +### Changed +- Bump `linkify-it` dependency to 2.0.0. `---` no longer terminates + autodetected links by default. `md.linkifier.set('---', true)` will return old + behaviour. - Major version bumped, because internals or `linkify-it` was changed. You will not be affected anyhow, if not used direct access to `require('linkify-it/re')` for customizations. -6.1.1 / 2016-06-21 ------------------- - +## [6.1.1] - 2016-06-21 +### Changed - Render `code_inline` & `code_block` attributes if exist. -6.1.0 / 2016-06-19 ------------------- - +## [6.1.0] - 2016-06-19 +### Changed - Updated `fence` renderer to not mutate token. Token stream should be immutable after renderer call. -6.0.5 / 2016-06-01 ------------------- - +## [6.0.5] - 2016-06-01 +### Fixed - Process `\r` the same way as `\n` and `\r\n\`, #252. -6.0.4 / 2016-05-30 ------------------- - +## [6.0.4] - 2016-05-30 +### Added - Added `Token.attrGet()` method for convenience, #251. -6.0.3 / 2016-05-30 ------------------- - +## [6.0.3] - 2016-05-30 +### Security - Security fix: possible ReDOS in `linkify-it` (forced bump of `linkify-it` & `uc-micro` dependencies). New installs will use fixed packages automatically, but we bumped `markdown-it` version for sure & for web builds. -6.0.2 / 2016-05-16 ------------------- - +## [6.0.2] - 2016-05-16 +### Fixed - Fix: should not escape twice content of image alt attribute, #246. -6.0.1 / 2016-04-02 ------------------- - +## [6.0.1] - 2016-04-02 +### Fixed - Improve support of missing values in tables, #224. -6.0.0 / 2016-02-11 ------------------- - +## [6.0.0] - 2016-02-11 +### Changed - Maintenance release. Version bump caused by notable changes in CM spec (multiline setext headers, no spaces inside links, ...). API was not changed. - Fit CM 0.24 spec requirements. + +### Fixed - Fixed nesting limit check in inline blocks, #197. - Fixed posible tail loss in CLI ouput. -5.1.0 / 2016-01-07 ------------------- - +## [5.1.0] - 2016-01-07 +### Added - Token: added `.attrSet()` & `.attrJoin()` methods. - Highlighter: allow wrapper override (if result starts with " source in demo. + +### Changed - Moved `normalizeReference()` to utils. +### Fixed +- Fixed hang on long vertical list of links. Appeared in 3.0.5. See #54 for + details. Thanks to @fengmk2 for report! +- Table lines now can have escaped pipe char `\|` (#5). -3.0.5 / 2015-02-06 ------------------- -- Fixed link validator - could skip some kind of javascript links with uppercase - digital entities (thanks to @opennota) +## [3.0.5] - 2015-02-06 +### Changed - Significantly improved tests coverage (with dead code removal and other related things). +### Fixed +- Fixed link validator - could skip some kind of javascript links with uppercase + digital entities (thanks to @opennota) -3.0.4 / 2015-01-13 ------------------- +## [3.0.4] - 2015-01-13 +### Changed - Improved errors processing in url normalizer (for broken sequences). - Improved nesting limit processing in inline parser. -- Reorganised tests & improved coverage. +- Reorganized tests & improved coverage. - Show inline diffs for failed tests. -3.0.3 / 2015-01-11 ------------------- - +## [3.0.3] - 2015-01-11 +### Fixed - Fixed punctuation check in emphasis. -3.0.2 / 2015-01-09 ------------------- - +## [3.0.2] - 2015-01-09 +### Fixed - Allow dashes in HTML tag names (needed for custom HTML tags). -3.0.1 / 2015-01-07 ------------------- - -- Improved link encoder - fix invalid surrogates to avoid errors. +## [3.0.1] - 2015-01-07 +### Changed - Added # to terminator chars. +### Fixed +- Improved link encoder - fix invalid surrogates to avoid errors. -3.0.0 / 2015-01-04 ------------------- +## [3.0.0] - 2015-01-04 +### Changed - Big split. All "rare" rules moved to external plugins (deflist, abbr, footnote, sub, sup, ins, mark). - Updated CM spec conformance to v0.15 (better unicode support). @@ -402,57 +407,63 @@ - Removed `full` preset. Not needed anymore. - enable/disable methods now throw by default on invalid rules (exceptions can be disabled). -- Fixed inline html comments & cdata parse. - Replace NULL characters with 0xFFFD instead of strip. - Removed custom fences sugar (overcomplication). - Rewritten link components parse helpers. - More functions in `md.utils`. +### Fixed +- Fixed inline html comments & cdata parse. -2.2.1 / 2014-12-29 ------------------- +## [2.2.1] - 2014-12-29 +### Added - Added development info. -- Fixed line breaks in definitions lists. + +### Changed - .use() now pass any number of params to plugins. +### Fixed +- Fixed line breaks in definitions lists. -2.2.0 / 2014-12-28 ------------------- -- Updated CM spec conformance to v0.13. +## [2.2.0] - 2014-12-28 +### Added - API docs. - Added 'zero' preset. + +### Changed +- Updated CM spec conformance to v0.13. + +### Fixed - Fixed several crashes, when some basic rules are disabled (block termination check, references check). -2.1.3 / 2014-12-24 ------------------- - +## [2.1.3] - 2014-12-24 +### Added - Added curring to `set`/`configure`/`enable`/`disable` methods. + +### Changed - Demo rework - now can include plugins. - Docs update. -2.1.2 / 2014-12-23 ------------------- - +## [2.1.2] - 2014-12-23 +### Changed - Exposed helpers into parser instances (for plugins). - Removed utils from global export - been in instances seems enougth. - Refactored demo & added markdown-it-emoji to it. -2.1.1 / 2014-12-22 ------------------- - +## [2.1.1] - 2014-12-22 +### Changed - Refreshed browser builds, missed in prev release. - Minor changes. -2.1.0 / 2014-12-21 ------------------- - +## [2.1.0] - 2014-12-21 +### Changed - Separated method to enable rules by whitelist (enableOnly). - Changed second param of enable/disable ruler methods. - Shortcuts in main class for bulk enable/disable rules. @@ -460,9 +471,70 @@ - Separate package for spec tests. -2.0.0 / 2014-12-20 ------------------- - +## [2.0.0] - 2014-12-20 +### Changed - New project name & home! Now it's `markdown-it`, - Sugar for constructor call - `new` is not mandatory now. - Renamed presets folder (configs -> presets). + + +[10.0.0]: https://github.com/markdown-it/markdown-it/compare/9.1.0...10.0.0 +[9.1.0]: https://github.com/markdown-it/markdown-it/compare/9.0.1...9.1.0 +[9.0.1]: https://github.com/markdown-it/markdown-it/compare/9.0.0...9.0.1 +[9.0.0]: https://github.com/markdown-it/markdown-it/compare/8.4.2...9.0.0 +[8.4.2]: https://github.com/markdown-it/markdown-it/compare/8.4.1...8.4.2 +[8.4.1]: https://github.com/markdown-it/markdown-it/compare/8.4.0...8.4.1 +[8.4.0]: https://github.com/markdown-it/markdown-it/compare/8.3.2...8.4.0 +[8.3.2]: https://github.com/markdown-it/markdown-it/compare/8.3.1...8.3.2 +[8.3.1]: https://github.com/markdown-it/markdown-it/compare/8.3.0...8.3.1 +[8.3.0]: https://github.com/markdown-it/markdown-it/compare/8.2.2...8.3.0 +[8.2.2]: https://github.com/markdown-it/markdown-it/compare/8.2.1...8.2.2 +[8.2.1]: https://github.com/markdown-it/markdown-it/compare/8.2.0...8.2.1 +[8.2.0]: https://github.com/markdown-it/markdown-it/compare/8.1.0...8.2.0 +[8.1.0]: https://github.com/markdown-it/markdown-it/compare/8.0.1...8.1.0 +[8.0.1]: https://github.com/markdown-it/markdown-it/compare/8.0.0...8.0.1 +[8.0.0]: https://github.com/markdown-it/markdown-it/compare/7.0.1...8.0.0 +[7.0.1]: https://github.com/markdown-it/markdown-it/compare/7.0.0...7.0.1 +[7.0.0]: https://github.com/markdown-it/markdown-it/compare/6.1.1...7.0.0 +[6.1.1]: https://github.com/markdown-it/markdown-it/compare/6.1.0...6.1.1 +[6.1.0]: https://github.com/markdown-it/markdown-it/compare/6.0.5...6.1.0 +[6.0.5]: https://github.com/markdown-it/markdown-it/compare/6.0.4...6.0.5 +[6.0.4]: https://github.com/markdown-it/markdown-it/compare/6.0.3...6.0.4 +[6.0.3]: https://github.com/markdown-it/markdown-it/compare/6.0.2...6.0.3 +[6.0.2]: https://github.com/markdown-it/markdown-it/compare/6.0.1...6.0.2 +[6.0.1]: https://github.com/markdown-it/markdown-it/compare/6.0.0...6.0.1 +[6.0.0]: https://github.com/markdown-it/markdown-it/compare/5.1.0...6.0.0 +[5.1.0]: https://github.com/markdown-it/markdown-it/compare/5.0.3...5.1.0 +[5.0.3]: https://github.com/markdown-it/markdown-it/compare/5.0.2...5.0.3 +[5.0.2]: https://github.com/markdown-it/markdown-it/compare/5.0.1...5.0.2 +[5.0.1]: https://github.com/markdown-it/markdown-it/compare/5.0.0...5.0.1 +[5.0.0]: https://github.com/markdown-it/markdown-it/compare/4.4.0...5.0.0 +[4.4.0]: https://github.com/markdown-it/markdown-it/compare/4.3.1...4.4.0 +[4.3.1]: https://github.com/markdown-it/markdown-it/compare/4.3.0...4.3.1 +[4.3.0]: https://github.com/markdown-it/markdown-it/compare/4.2.2...4.3.0 +[4.2.2]: https://github.com/markdown-it/markdown-it/compare/4.2.1...4.2.2 +[4.2.1]: https://github.com/markdown-it/markdown-it/compare/4.2.0...4.2.1 +[4.2.0]: https://github.com/markdown-it/markdown-it/compare/4.1.2...4.2.0 +[4.1.2]: https://github.com/markdown-it/markdown-it/compare/4.1.1...4.1.2 +[4.1.1]: https://github.com/markdown-it/markdown-it/compare/4.1.0...4.1.1 +[4.1.0]: https://github.com/markdown-it/markdown-it/compare/4.0.3...4.1.0 +[4.0.3]: https://github.com/markdown-it/markdown-it/compare/4.0.2...4.0.3 +[4.0.2]: https://github.com/markdown-it/markdown-it/compare/4.0.1...4.0.2 +[4.0.1]: https://github.com/markdown-it/markdown-it/compare/4.0.0...4.0.1 +[4.0.0]: https://github.com/markdown-it/markdown-it/compare/3.1.0...4.0.0 +[3.1.0]: https://github.com/markdown-it/markdown-it/compare/3.0.7...3.1.0 +[3.0.7]: https://github.com/markdown-it/markdown-it/compare/3.0.6...3.0.7 +[3.0.6]: https://github.com/markdown-it/markdown-it/compare/3.0.5...3.0.6 +[3.0.5]: https://github.com/markdown-it/markdown-it/compare/3.0.4...3.0.5 +[3.0.4]: https://github.com/markdown-it/markdown-it/compare/3.0.3...3.0.4 +[3.0.3]: https://github.com/markdown-it/markdown-it/compare/3.0.2...3.0.3 +[3.0.2]: https://github.com/markdown-it/markdown-it/compare/3.0.1...3.0.2 +[3.0.1]: https://github.com/markdown-it/markdown-it/compare/3.0.0...3.0.1 +[3.0.0]: https://github.com/markdown-it/markdown-it/compare/2.2.1...3.0.0 +[2.2.1]: https://github.com/markdown-it/markdown-it/compare/2.2.0...2.2.1 +[2.2.0]: https://github.com/markdown-it/markdown-it/compare/2.1.3...2.2.0 +[2.1.3]: https://github.com/markdown-it/markdown-it/compare/2.1.2...2.1.3 +[2.1.2]: https://github.com/markdown-it/markdown-it/compare/2.1.1...2.1.2 +[2.1.1]: https://github.com/markdown-it/markdown-it/compare/2.1.0...2.1.1 +[2.1.0]: https://github.com/markdown-it/markdown-it/compare/2.0.0...2.1.0 +[2.0.0]: https://github.com/markdown-it/markdown-it/releases/tag/2.0.0