NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #3066 most downloaded on npm
ProseMirror Markdown integration
Last release 13 days ago
21 Sep 2026
Release timing varies
gaps range from 2 weeks to 10 months
Most releases are documented
notes for 48 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
10 years old
64 releases · first in 2016
Add a validator that makes sure the heading node's level attribute is validated as a number.
Add a validator that makes sure the heading node's level attribute is validated as a number.
Make sure trailing whitespace is expelled from strong/emphasis marks when they are broken up by other marks.
Make sure trailing whitespace is expelled from strong/emphasis marks when they are broken up by other marks.
One column per quarter.
Fix an issue where MarkdownSerializer could emit invalid strong/emphasis marks when the mark was broken up by another mark right before whitespace.
Fix an issue where MarkdownSerializer could emit invalid strong/emphasis marks when the mark was broken up by another mark right before whitespace.
Don't drop an order attribute of 0 for numbered lists when serializing.
Don't drop an order attribute of 0 for numbered lists when serializing.
Fix a regression that caused the serializer to crash when a block ends in a hard break.
Fix a regression that caused the serializer to crash when a block ends in a hard break.
Properly move trailing whitespace out of marks when they end in a hard break node.
Properly move trailing whitespace out of marks when they end in a hard break node.
Add a code flag to the code mark.
Add a code flag to the code mark.
Fix a type error caused by use of an older markdown-it type package.
Fix a type error caused by use of an older markdown-it type package.
Fix the type of MarkdownParser.parse to be non-nullable. Add a strict option to MarkdownSerializer
Fix the type of MarkdownParser.parse to be non-nullable. Add a strict option to MarkdownSerializer
The new strict option to MarkdownSerializer makes it possible to make the serializer ignore node and mark types it doesn't know.
Block-level markup inside a heading is no longer escaped by the serializer.
Block-level markup inside a heading is no longer escaped by the serializer.
Do not backslash-escape a + at the start of line when it isn't followed by a space. Upgrade to markdown-it 14
MarkdownSerializerState.renderInline now takes a parameter that controls whether block-level markup should be escaped.
Upgrade to markdown-it version 14, which provides ES modules.
Fix some unnecessary escapes for period characters in Markdown serialization.
Fix some unnecessary escapes for period characters in Markdown serialization.
Only escape # signs if they would otherwise create a heading. Add a test for headings in list items
Fix a bug in MarkdownSerializer that broken expelling of whitespace from marks when the mark spanned multiple nodes.
Allow any blocks as first child of list items to align with what Markdown itself does.
Allow any blocks as first child of list items to align with what Markdown itself does.
Add parse rules that clear strong and em marks when inline CSS resets it.
Make sure blank lines at the end of code blocks are properly serialized.
Make sure blank lines at the end of code blocks are properly serialized.
Convert soft breaks (single newlines) in Markdown to spaces, rather than newlines in the ProseMirror document, because newlines tend to behave awkwardly in the editor.
Fix a bug that cause the object passed as configuration to MarkdownSerializer to be mutated. Add release note
Include CommonJS type declarations in the package to please new TypeScript resolution settings.
A new option to MarkdownSerializer allows client code to configure which node type should be treated as hard breaks during mark serialization. Remove the extra left bracket
Don't treat the empty string the same as null in wrapBlock's firstDelim argument. Check content of code blocks for any sequence of backticks
Don't treat the empty string the same as null in wrapBlock's firstDelim argument. Check content of code blocks for any sequence of backticks
Use longer sequences of backticks when serializing a code block that contains three or more backticks in a row.
You can now pass an optional markdown-it environment object to .
You can now pass an optional markdown-it environment object to .
Don't escape colon characters at the start of a line.
Don't escape colon characters at the start of a line.
Escape parentheses in images and links.
Allow links to wrap emphasis markers when serializing Markdown.
Make sure '\!' characters in front of links are escaped.
Make sure '!' characters in front of links are escaped.
Don't escape characters in autolinks.
Don't escape characters in autolinks.
Fix a bug that caused the serializer to not escape start-of-line markup when inside a list.
Fix a bug where inline nodes with content would reset the marks in their parent node during Markdown parsing.
Fix a bug where inline nodes with content would reset the marks in their parent node during Markdown parsing.
Include TypeScript type declarations.
Include TypeScript type declarations.
Nothing published for this version
MarkdownSerializer now takes an escapeExtraCharacters option that can be used to control backslash-escaping behavior. Fix types for new option
MarkdownSerializer now takes an escapeExtraCharacters option that can be used to control backslash-escaping behavior. Fix types for new option
Avoid escaping underscores surrounded by word characters.
Avoid escaping underscores surrounded by word characters.
Upgrade markdown-it to version 12.
Upgrade markdown-it to version 12.
Fix a bug where URL text in links and images was overzealously escaped.
Fix a bug where URL text in links and images was overzealously escaped.
Fix a bug where MarkdownParser.parse could return null when the parsed content doesn't fit the schema.
Fix a bug where MarkdownParser.parse could return null when the parsed content doesn't fit the schema.
Make sure underscores are escaped when serializing to Markdown.
MarkdownParser.tokenizer is now public, for easier creation of parsers that base on other parsers.
MarkdownParser.tokenizer is now public, for easier creation of parsers that base on other parsers.
Serializing to Markdown now properly escapes '>' characters at the start of the line.
Serializing to Markdown now properly escapes '>' characters at the start of the line.
The Markdown parser will now correctly set the tight attribute on list nodes.
The Markdown parser will now correctly set the tight attribute on list nodes.
Markdown parse specs can now be specified as noCloseToken, which will cause the parser to treat them as a single token, rather than a pair of _open/_c
Markdown parse specs can now be specified as noCloseToken, which will cause the parser to treat them as a single token, rather than a pair of _open/_close tokens.
Don't allow hard_break nodes in headings.
Don't allow hard_break nodes in headings.
Fix issue that broke parsing ordered lists with a starting number other than 1.
Fix issue that broke parsing ordered lists with a starting number other than 1.
Don't use short-hand angle bracket syntax when outputting self-linking URLs that are relative.
Don't use short-hand angle bracket syntax when outputting self-linking URLs that are relative.
Rename ES module files to use a .js extension, since Webpack gets confused by .mjs
Rename ES module files to use a .js extension, since Webpack gets confused by .mjs
The file referred to in the package's module field now is compiled down to ES5.
The file referred to in the package's module field now is compiled down to ES5.
Add a module field to package json file.
Add a module field to package json file.
Code blocks in the schema no longer allow marks inside them.
Code blocks in the schema no longer allow marks inside them.
Code blocks are now parsed with preserveWhiteSpace: full, preventing removal of newline characters.
Fix a bug that could occur when parsing multiple adjacent pieces of text with the same style.
Fix a bug that could occur when parsing multiple adjacent pieces of text with the same style.
Inline code containing backticks is now serialized wrapped in the appropriate amount of backticks.
Inline code containing backticks is now serialized wrapped in the appropriate amount of backticks.
The serializer now serializes links whose target is the same as their text content using < > syntax.
Mark opening and close string callbacks now get passed the mark's context (parent fragment and index).
Hard breaks at the end of an emphasized or strong mark are no longer serialized to invalid Markdown text.
Hard breaks at the end of an emphasized or strong mark are no longer serialized to invalid Markdown text.
Fixes a bug where inline mark delimiters were serialized incorrectly (the closing and opening marks were swapped, which was only noticeable when they
Fixes a bug where inline mark delimiters were serialized incorrectly (the closing and opening marks were swapped, which was only noticeable when they are different).
Fixes an issue where the Markdown serializer would escape special characters in inline code.
Fixes an issue where the Markdown serializer would escape special characters in inline code.
Upgrade the markdown-it dependency to version 8.
Fix bug that caused superfluous backslashes to be inserted at the start of some lines when serializing to Markdown.
Fix bug that caused superfluous backslashes to be inserted at the start of some lines when serializing to Markdown.
You can now override the handling of softbreak tokens in a custom handler.
You can now override the handling of softbreak tokens in a custom handler.
Fix crash when serializing marks with line breaks inside of them.
Fix crash when serializing marks with line breaks inside of them.
Fix dependency version range for prosemirror-model.
Fix dependency version range for prosemirror-model.
Code blocks are always wrapped in triple backticks when serializing, to avoid parsing corner cases around indented code blocks.
Code blocks are always wrapped in triple backticks when serializing, to avoid parsing corner cases around indented code blocks.
Link marks are now non-inclusive (typing after them produces non-linked text).
Link marks are now non-inclusive (typing after them produces non-linked text).
First stable release.
First stable release.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →