Changelog History
Page 1
-
v13.0.0 Changes
October 14, 2020π§ This is a giant change for remark. It replaces the 5+ year old internals with a new low-level parser:
micromark
. The old internals have served billions of users well over the years, but markdown has changed over that time. micromark comes with 100% CommonMark (and GFM as an extension) compliance, and (WIP) docs on parsing rules for how to tokenize markdown with a state machine. micromark, and micromark in remark, is a good base for the future.Migration
- β‘οΈ Update all the
remark*
packages you are using inpackage.json
- 0οΈβ£ Did you use GFM (tables and so, used to be the default)? Now add
remark-gfm
- β‘οΈ Try running it all. If it fails, you are probably using a syntax extension which hasnβt been updated yet, there are issues open on the issue trackers of those plugins already
- π Compare the previous output to the new output: anything wrong? See below for the changelog which might cover it. Otherwise, Itβs probably because remark is now CommonMark (or GFM) compliant.
Please compare with those projects if the new behavior is correct or not (CommonMark Dingus, or create a gist for GFM).
π Does remark not match those reference parsers? Please open an issue here!
π Changes
π remark-parse
π
remark-parse
now defers its work tomicromark
andmdast-util-from-markdown
.micromark
is a new, small, complete, and CommonMark compliant low-level markdown parser.from-markdown
turns its tokens into the previously (and still) used syntax tree: mdast. Extensions toremark-parse
work differently: theyβre a two-part act. See for examplemicromark-extension-footnote
andmdast-util-footnote
.- π change:
commonmark
is no longer an option β itβs the default - π move:
gfm
is no longer an option β moved toremark-gfm
- β remove:
pedantic
is no longer an option β this legacy and buggy flavor of markdown is no longer widely used - β remove:
blocks
is no longer an options β itβs no longer suggested to change the internal list of HTML βblockβ tag names
remark-stringify
π remark-stringify now defers its work to
mdast-util-to-markdown
. Itβs a new and better serializer with powerful features to ensure serialized markdown represents the syntax tree (mdast), no matter what plugins do. Extensions to it work differently: see for examplemdast-util-footnote
.options
- π change:
commonmark
is no longer an option, itβs the default - π change:
emphasis
now defaults to*
- π change:
bullet
now defaults to*
- π move:
gfm
is no longer an option β moved toremark-gfm
- π move:
tableCellPadding
β moved toremark-gfm
- π move:
tablePipeAlign
β moved toremark-gfm
- π move:
stringLength
β moved toremark-gfm
- β remove:
pedantic
is no longer an option β this legacy and buggy flavor of markdown is no longer widely used - β remove:
entities
is no longer an option β with CommonMark there is almost never a need to use character references, as character escapes are preferred - π new:
quote
β you can now prefer single quotes ('
) over double quotes ("
) in titles
π Changes to output / the tree
π All of these are for CommonMark compatibility. Theyβre all fixes. Most of them are inconsequential to most folks.
- notable : references (as in, links
[text][id]
and images![alt][id]
) are no longer present as such in the syntax tree if they donβt have a corresponding definition ([id]: example.com
). The reason for this is that CommonMark requires[text *emphasis start][undefined] emphasis end*
to be emphasis. - notable : it is no longer possible to use two blank lines between two lists or a list and indented code. CommonMark prohibits it. For a solution, use an empty comment to end lists (
<!---->
) - inconsequential: whitespace at the start and end of lines in paragraphs is now ignored
- π inconsequential:
<mailto:foobarbaz>
are now correctly parsed, and the scheme is part of the tree - inconsequential: indented code can now follow a block quote w/o blank line
- inconsequential: trailing indented blank lines after indented code are no longer part of that code
- inconsequential: character references and escapes are no longer present as separate text nodes
- inconsequential: character references which HTML allows but CommonMark doesnβt, such as
©
w/o the semicolon, are no longer recognized - inconsequential: the
indent
field is no longer available onposition
- π fix: multiline setext headings
- π fix: lazy lists
- π fix: attention (emphasis, strong)
- π fix: tabs
- π fix: empty alt on images is now present as an empty string
- β¦plus a ton of other minor previous differences from CommonMark
Thanks
Thanks to Salesforce, Gatsby, Vercel, and Netlify, and our other backers for sponsoring the work on micromark!
π To support our continued work, back us on OpenCollective! - β‘οΈ Update all the
-
v13.0.0-alpha.1 Changes
October 03, 2020π See
GH-536
-
v13.0.0-alpha.0 Changes
October 02, 2020π See
GH-536
-
v12.0.1 Changes
July 17, 2020 -
v12.0.0 Changes
March 30, 2020- π 2841e47 Update
remark-parse
π₯ ( breaking , please see its release section) - π 1baae5e Update
remark-stringify
π₯ ( breaking , please see its release section) - π 6543d08 Update
unified
π₯ ( breaking , please see its release section)
- π 2841e47 Update
-
v11.0.2 Changes
November 09, 2019π See
[email protected]
and[email protected]
Project
-
v11.0.1 Changes
August 01, 2019- d282fef Fix export of remark options type
-
v11.0.0 Changes
July 20, 2019π₯ Breaking
- 8d02516 Add TypeScript definitions
- π c5484d8 Update
remark-stringify
(seeremarkjs/remark@[email protected]
) - π 43364b0 Update
remark-parse
(seeremarkjs/remark@[email protected]
) - π 25df13d Update
unified
(seeunifiedjs/[email protected]
)
Project
- a47c3c9 Add more links to unified for examples of use
- π a93db25 Remove community health files
- π¨ 1578bdf Refactor prose
- π 70ada4a Move URLs from HTTP to HTTPS
- edb284a Add more badges
π Plugins
- π 927083c Add
remark-code-frontmatter to plugins
- π 0ee5336 Add
remark-code-extra
to List of Plugins - β‘οΈ 5d13f8e Update list of plugins
- π cc7867b Add
remark-tree-sitter
to list of plugins - π cca8385 Add
remark-sectionize
to plugins.md - π f4230e3 Add
remark-capitalize
to list of plugins - π cf52183 Add
remark-utf8s
andremark-code-screenshot
to list of plugins - π caaf374 Add
remark-redactable
to list of plugins
-
v10.0.1 Changes
November 15, 2018No code changes, ...but
π± Announcing the unified collective! π
Read more about it on Medium Β»Project
- β‘οΈ cbf5cea Update docs
-
v9.0.1 Changes
December 09, 2020- π eb6eeca update
mdast-util-to-markdown
- π eb6eeca update