3
0
mirror of https://github.com/larvit/adf-codec.git synced 2026-11-12 11:48:29 +01:00

Limit the identical-refusal claim to writers, say non-empty content, and warn of stored carries

This commit is contained in:
2026-11-04 20:59:19 +01:00
committed by Lillem4n
parent 7a7b12b6a7
commit 7c0dec54cf
2 changed files with 7 additions and 4 deletions
+4 -3
View File
@@ -758,12 +758,13 @@ while Atlassian's schema forbids shapes a converter would otherwise meet.
A shape Atlassian's schema forbids, and the library refuses, is refused in the first step, where
the document is checked once: `writableContent` opens every writer, and `carriedNode` opens every
carry reader's node. No converter refuses one. A document one call refuses on a schema rule every
call refuses alike, with one code, message and path, wherever the shape stands, in a carried node
too. The first step refuses an `inlineCard` with a `link` mark as `unsupported-node-shape`: the
writer refuses alike, with one code, message and path, wherever the shape stands, in a carried node
too, and a carry reader refuses it with the same code and the writers' message after its holder's
name. The first step refuses an `inlineCard` with a `link` mark as `unsupported-node-shape`: the
schema gives a card the `annotation` mark alone (§The node tables answer to Atlassian's schema),
and HTML nests no `<a>` in an `<a>`. `adfToLosslessMarkdown` still refuses two more, on a node not
riding the carry: a block or non-text inline node holding `text`, and a leaf block or non-text
inline node holding `content`. `todo.md` item 167 moves them, and until it ships this entry does
inline node holding a non-empty `content`. `todo.md` item 167 moves them, and until it ships this entry does
not hold for them.
Nothing else joins the first step. Nothing refuses a node type, mark or attribute the schema does
+3 -1
View File
@@ -118,7 +118,9 @@ are". It replaces item 68, which would have carried these shapes. Move into `ref
Atlassian's schema gives each such node no `text` or `content` (`additionalProperties` is false).
Breaking: `adfToHtml` and `adfToPortableMarkdown` refuse these shapes too, and so does
`adfToLosslessMarkdown` inside a node that rides the carry, where it writes them today. Say so in
`adfToLosslessMarkdown` inside a node that rides the carry, where it writes them today. Both carry
readers refuse them too, so a stored markdown or HTML document whose carry holds one stops
reading; `MIGRATION.md` says to convert it once with the last version that reads it. Say so in
`CHANGELOG.md` and `MIGRATION.md`. Search the writers for any other refusal of a shape the schema
forbids, and `carriedNode` for one the readers still build.