2.5 KiB
2.5 KiB
Changelog
Unreleased
- Breaking: directives, the inline opaque carry among them (now
!adf:carry{json="…"}), are spelled under an!adf:prefix (!adf:name … !adf:/name,!adf:name[content]{attrs},!adf:name arg {attrs}) in place of the:::/::/:nameforms, and the block carry is a code fence whose info stringadf:<type>names the node's type, its body the node's JSON withouttype: text holding an unescaped!adf:and a code fence whose info string opensadf:are claimed, andadfis an ordinary code block language. Convert stored markdown perMIGRATION.md. - Breaking:
markdownToAdfandplainMarkdownToAdfread markdown holding no block as a document whosecontentis empty, as Atlassian's schema requires;!adf:doc {content=none}spells a document holding nocontentkey. markdownToAdf(adfToMarkdown(doc))deep-equalsdoc: two adjacent text nodes a reader would join are parted by!adf:textBreak{}, an emptyattrs,contentormarksis spelled{attrs=empty},{content=empty}or{marks=empty},-0is spelled-0, and acodeBlockof several text nodes is a fence per node. AcodeBlockholding other than plain text nodes rides the block carry, where it was refused.- Breaking:
unspellable-linkleavesConvertErrorCode; a link whosehrefortitleno CommonMark escape spells is written as!adf:link[text]{attrs}. - Breaking: some directive refusals carry
malformed-directivewhere they carriedunsupported-node-shape, and an empty node's leaf and closed spellings swap which one parses;MIGRATION.mdlists each. - Breaking: a link whose text holds another link keeps the inner link and leaves the outer
brackets literal text, where
0.1.0split the outer link around it; seeMIGRATION.md. - Add
adfToPlainMarkdownandplainMarkdownToAdf, a lossy pair converting ADF to and from markdown GitHub, GitLab and Obsidian render: alerts, callouts, task lists,==highlights==and pipe tables. - Spell
rule'scolor,styleandweight,layoutSection'scolumnRuleStyleand a link'scollection,idandoccurrenceKeydirectly where they rode the opaque carry. - Fix an image inside another image's description: it flattens into the alt text, where it was refused.
0.1.0
- First release: lossless conversion between ADF and an extended markdown flavour —
adfToMarkdown,markdownToAdfandisAdfDocument. Nothing throws, and every error carries acodefrom a closed list.