Skip to content

Tags: markedjs/marked

Tags

v18.1.2

Toggle v18.1.2's commit message
chore(release): 18.1.2 [skip ci]

## [18.1.2](v18.1.1...v18.1.2) (2026-10-26)

### Bug Fixes

* allow a tab or end of input after a type 6 html block tag name ([#4128](#4128)) ([e09c40d](e09c40d))
* apply emphasis flanking and rules 9-10 to the whole delimiter run ([#4145](#4145)) ([5d8e234](5d8e234))
* **cli:** await config functions before parsing ([#4138](#4138)) ([3a11ad1](3a11ad1))
* **cli:** create no-clobber output files atomically ([#4135](#4135)) ([e7c4f64](e7c4f64))
* do not continue a block quote paragraph from a whitespace-only line ([#4134](#4134)) ([42f34a8](42f34a8))
* expand a tab after the block quote marker to the next tab stop ([#4110](#4110)) ([2d3899b](2d3899b))
* honor per-call async options when composing hooks ([#4139](#4139)) ([379be9d](379be9d))
* keep a line starting with # but no space in the list item ([#4127](#4127)) ([6b63189](6b63189))
* keep duplicate link definitions in the tokens ([#4132](#4132)) ([2784acc](2784acc))
* keep lazy lines after a list in a nested blockquote ([#4137](#4137)) ([38c7e55](38c7e55))
* keep lazy setext underlines in list items as text ([#4126](#4126)) ([398234c](398234c))
* render nested image alt formatting as plain text ([#4131](#4131)) ([15f59bb](15f59bb))
* stop an unclosed inline raw tag from unescaping later blocks ([#4130](#4130)) ([4562b6f](4562b6f))

### Performance Improvements

* ~16% faster parsing by skipping em/strong masking for runs without *, _ or ~ ([#4142](#4142)) ([f0fd3e0](f0fd3e0))

v18.1.1

Toggle v18.1.1's commit message
chore(release): 18.1.1 [skip ci]

## [18.1.1](v18.1.0...v18.1.1) (2026-10-12)

### Bug Fixes

* **cli:** honor an explicitly empty string input ([#4113](#4113)) ([ec3a4e5](ec3a4e5))
* end blockquote before a lazy line after a heading, hr or html block ([#4115](#4115)) ([9e64a6a](9e64a6a))
* keep a backslash in a code span from hiding emphasis ([#4117](#4117)) ([6a57018](6a57018))
* keep a decoded character reference from forming a new one ([#4111](#4111)) ([6bbac0c](6bbac0c)), closes [#38](#38) [#112](#112)
* let indented and type 3-5 html blocks interrupt a paragraph ([#4124](#4124)) ([eaa1fff](eaa1fff))
* make walkTokens linear by appending values in place ([#4121](#4121)) ([627d9ae](627d9ae)), closes [#4120](#4120)
* match pre, script, style and textarea as whole tag names ([#4114](#4114)) ([0db74cb](0db74cb))
* preserve enclosing link state after parsing images ([#4123](#4123)) ([cc07bb9](cc07bb9))
* respect tab stops in list continuation indentation ([#4119](#4119)) ([4bd2528](4bd2528))

### Performance Improvements

* avoid repeated raw string copies in nested lists ([#4082](#4082)) ([7e8754d](7e8754d))

v18.1.0

Toggle v18.1.0's commit message
chore(release): 18.1.0 [skip ci]

# [18.1.0](v18.0.14...v18.1.0) (2026-10-05)

### Bug Fixes

* avoid cubic backtracking on unicode whitespace in a link destination ([#4106](#4106)) ([0d20220](0d20220))
* load CLI configs with top-level await ([#4100](#4100)) ([c61543e](c61543e))
* reject unbalanced parentheses in link destinations ([#4107](#4107)) ([3363c99](3363c99))

### Features

* add linkParenPossible to lexer state to fail fast for link token generation ([#4070](#4070)) ([4ee44f7](4ee44f7))

v18.0.14

Toggle v18.0.14's commit message
chore(release): 18.0.14 [skip ci]

## [18.0.14](v18.0.13...v18.0.14) (2026-09-22)

### Bug Fixes

* allow indented lines in setext heading text ([#4095](#4095)) ([7d05530](7d05530))
* decode numeric character references in text ([#4076](#4076)) ([cead8de](cead8de))
* keep text after empty nested blockquote ([#4101](#4101)) ([1b89557](1b89557)), closes [#4098](#4098)
* preserve internal tabs in list item content ([#4086](#4086)) ([e136da7](e136da7))
* strip whitespace when normalizing link reference labels ([#4091](#4091)) ([c7ee43a](c7ee43a))
* support GFM protocol autolinks ([#4067](#4067)) ([7f7a496](7f7a496))

v18.0.13

Toggle v18.0.13's commit message
chore(release): 18.0.13 [skip ci]

## [18.0.13](v18.0.12...v18.0.13) (2026-09-12)

### Bug Fixes

* allow tabs in the thematic break that ends a list item ([#4087](#4087)) ([afbb27c](afbb27c))
* avoid O(n^2) scanning in reflinkSearch ([#4090](#4090)) ([c6a25bb](c6a25bb))
* case fold reference link labels ([#4077](#4077)) ([aed9336](aed9336))
* drop the leading whitespace after a hard line break ([#4075](#4075)) ([123ce04](123ce04))
* match html block start conditions when ending a list item ([#4072](#4072)) ([c2facac](c2facac))
* respect raw tokens when closing link labels ([#4066](#4066)) ([ef394f7](ef394f7))
* strip a tab that follows spaces in an indented code block ([#4080](#4080)) ([dbb393d](dbb393d))

v18.0.12

Toggle v18.0.12's commit message
chore(release): 18.0.12 [skip ci]

## [18.0.12](v18.0.11...v18.0.12) (2026-09-07)

### Bug Fixes

* allow a tab before the closing sequence of an ATX heading ([#4084](#4084)) ([4417582](4417582))
* allow one more level of nested brackets in a link label ([#4064](#4064)) ([37b28d8](37b28d8))
* do not add a newline to an empty code block ([#4073](#4073)) ([23b1706](23b1706))
* escape character references in autolink destinations ([#4053](#4053)) ([8f432f0](8f432f0))
* reject GFM email autolink when the domain ends in _ or - ([#4063](#4063)) ([df57534](df57534))
* reject invalid characters in HTML tag names ([#4083](#4083)) ([300bb1d](300bb1d))
* remove up to the fence indentation from each content line ([#4074](#4074)) ([0244f08](0244f08))

v18.0.11

Toggle v18.0.11's commit message
chore(release): 18.0.11 [skip ci]

## [18.0.11](v18.0.10...v18.0.11) (2026-08-24)

### Bug Fixes

* do not nest a link inside a link ([#4051](#4051)) ([e250e31](e250e31))
* inlineTokens rebuilds the reflink-mask preamble per call ([#4040](#4040)) ([0653c24](0653c24))
* keep emphasis in the text of a rejected reference link ([#4059](#4059)) ([b699db3](b699db3))

v18.0.10

Toggle v18.0.10's commit message
chore(release): 18.0.10 [skip ci]

## [18.0.10](v18.0.9...v18.0.10) (2026-08-18)

### Bug Fixes

* keep the em/strong mask the same length as the source ([#4044](#4044)) ([681373c](681373c))
* parse EOF backtick fences after paragraphs ([#4039](#4039)) ([81bd750](81bd750))
* place task checkboxes after list loose is finalized ([#4046](#4046)) ([b8cf7dc](b8cf7dc)), closes [#4045](#4045)

v18.0.9

Toggle v18.0.9's commit message
chore(release): 18.0.9 [skip ci]

## [18.0.9](v18.0.8...v18.0.9) (2026-08-04)

### Bug Fixes

* an unmatched strong run before emphasis stays literal ([#4008](#4008)) ([e8544e6](e8544e6))
* Fix spurious deeper nesting in a blockquote continuation ([#4030](#4030)) ([452f1ed](452f1ed))
* pedantic **foo:** and **"word"** emphasis parsing ([#3999](#3999)) ([823093f](823093f))

v18.0.8

Toggle v18.0.8's commit message
chore(release): 18.0.8 [skip ci]

## [18.0.8](v18.0.7...v18.0.8) (2026-08-04)

### Bug Fixes

* fall back to default checkbox renderer when extension returns false ([#4023](#4023)) ([e1b6139](e1b6139))