aboutsummaryrefslogtreecommitdiffstats
path: root/tests (unfollow)
Commit message (Collapse)AuthorFilesLines
2022-10-11Refactor some internals to accept mutable referencesLibravatar Titus Wormer4-16/+12
2022-10-11Refactor test utilities to improve namesLibravatar Titus Wormer13-240/+304
2022-10-11Refactor to use a bunch of `into`Libravatar Titus Wormer34-203/+193
2022-10-11Refactor some hidden internalsLibravatar Titus Wormer2-8/+8
2022-10-11Add support for proper positional info in swc treeLibravatar Titus Wormer17-446/+884
* Fix some positional info in SWC error messages * Add positional info in `to_document` on duplicate layouts * Add support for `path` on `Program` (`to_swc`, `to_document`, `jsx_rewrite`), for the path of a file on disk * Add support for `development` to `jsx-rewrite`, which when defined will embed info on where tags were written into the runtime code when they are not passed * Refactor to move some utilities to `micromark_swc_utils.rs`, `swc_utils.rs`
2022-10-06Refactor to improve `to_hast` internalsLibravatar Titus Wormer2-828/+624
2022-10-06Refactor to split parse from compile optionsLibravatar Titus Wormer43-314/+627
2022-10-06Refactor to share identifier methodsLibravatar Titus Wormer1-15/+5
2022-10-06Add support for HTML 4 character references in JSX attributesLibravatar Titus Wormer1-0/+91
2022-10-05Add support for form feeds as html whitespaceLibravatar Titus Wormer1-2/+1
2022-10-05Add support for rewriting JSXLibravatar Titus Wormer5-2/+1549
2022-10-04Refactor to share a test utilityLibravatar Titus Wormer5-199/+234
2022-10-03Add support for creating a component, using layoutLibravatar Titus Wormer5-2/+883
2022-09-30Add support for turning hast into swcLibravatar Titus Wormer7-92/+1479
2022-09-29Add note on future ideaLibravatar Titus Wormer1-0/+4
2022-09-28Add support for turning mdast to hastLibravatar Titus Wormer46-348/+3718
2022-09-26Add support for compiling to mdastLibravatar Titus Wormer34-38/+1556
See: <https://github.com/syntax-tree/mdast>.
2022-09-19Add support for parsing MDX ESM, expressionsLibravatar Titus Wormer9-417/+941
This commit adds support for hooks that lets a user integrate another parser with `micromark-rs`, to parse ESM and expressions according to a particular grammar (such as a programming language, typically JavaScript). For an example integrating with SWC, see `tests/test_utils/mod.rs`. The integration occurs with two functions passed in `options`: `mdx_expression_parse` and `mdx_esm_parse`. The can signal back to micromark when they are successful, whether there is an error at the end (in which case micromark will try to parse more), or whether there is a syntax error (in which case micromark will crash).
2022-09-14Fix to prefer flow over definitions, setext headingsLibravatar Titus Wormer3-1/+43
An undocumented part of CommonMark is how to deal with things in definition labels or definition titles (which both can span multiple lines). Can flow (or containers?) interrupt them? They can according to the `cmark` reference parser, so this was implemented here. This adds a new `Content` content type, which houses zero or more definitions, and then zero-or-one paragraphs. Content can be followed by a setext heading underline, which either turns into a setext heading when the content ends in a paragraph, or turns into the start of the following paragraph when it is followed by content that starts with a paragraph, or turns into a stray paragraph.
2022-09-12Fix containers piercing into indented codeLibravatar Titus Wormer1-2/+14
2022-09-12Fix gfm email autolink literals overlappingLibravatar Titus Wormer1-2/+17
2022-09-12Fix blank lines in labelsLibravatar Titus Wormer1-0/+14
2022-09-12Fix whitespace in GFM footnote definition identifiersLibravatar Titus Wormer1-109/+177
* Fix a crash on line endings in footnote definitions * Fix to match spaces and tabs in identifiers to `cmark-gfm` * Fix order of one attribute
2022-09-09Add docs for mdx expressionsLibravatar Titus Wormer1-1/+1
2022-09-09Add support for mdx attribute (value) expressionsLibravatar Titus Wormer2-170/+167
2022-09-09Add mdx expression (flow, text)Libravatar Titus Wormer3-5/+512
2022-09-08Add support for mdx jsx (flow)Libravatar Titus Wormer2-0/+154
2022-09-08Add tests for mdx jsx (text)Libravatar Titus Wormer1-0/+821
2022-09-07Add support for recoverable syntax errorsLibravatar Titus Wormer40-1289/+1371
2022-09-05Add support for `mailto:`, `xmpp:` protocolsLibravatar Titus Wormer1-0/+43
2022-09-05Fix to implement GFM autolink literals exactlyLibravatar Titus Wormer1-2/+2440
2022-09-01Add support for GFM tagfilterLibravatar Titus Wormer1-0/+121
2022-08-31Add support for GFM tablesLibravatar Titus Wormer2-0/+1794
2022-08-26Add support for math (flow)Libravatar Titus Wormer2-30/+274
2022-08-26Add support for math (text)Libravatar Titus Wormer1-0/+190
2022-08-25Add support for GFM footnotesLibravatar Titus Wormer1-0/+1530
2022-08-22Fix lazy paragraph after definitionLibravatar Titus Wormer3-0/+30
2022-08-22Add support for GFM task list itemLibravatar Titus Wormer1-0/+236
2022-08-22Add support for GFM strikethroughLibravatar Titus Wormer1-0/+387
2022-08-18Add support for GFM autolink literalsLibravatar Titus Wormer1-0/+256
2022-08-18Add `pretty_assertions` to tests for diffsLibravatar Titus Wormer32-0/+33
2022-08-16Add support for frontmatterLibravatar Titus Wormer1-0/+67
2022-08-15Refactor to rename list construct to list itemLibravatar Titus Wormer1-1/+1
2022-08-11Add improved container exit injectionLibravatar Titus Wormer1-0/+8
2022-08-09Add more tests for definitions and block quotesLibravatar Titus Wormer3-15/+21
2022-08-09Add another test for lazy fenced code and block quotesLibravatar Titus Wormer1-1/+7
2022-08-09Add some more tests for just line endingsLibravatar Titus Wormer1-0/+36
2022-08-01Fix bug on empty heading (atx)Libravatar Titus Wormer1-1/+7
2022-07-29Refactor to improve statesLibravatar Titus Wormer1-0/+6
* Remove custom kind wrappers, use plain bytes instead * Remove `Into`s, use the explicit expected types instead * Refactor to use `slice.as_str` in most places * Remove unneeded unique check before adding a definition * Use a shared CDATA prefix in constants * Inline byte checks into matches * Pass bytes back from parser instead of whole parse state * Refactor to work more often on bytes * Rename custom `size` to `len`
2022-07-28Refactor to work on `char`sLibravatar Titus Wormer1-6/+0
Previously, a custom char implementation was used. This was easier to work with, as sometimes “virtual” characters are injected, or characters are ignored. This replaces that with working on actual `char`s. In the hope of in the future working on `u8`s, even. This simplifies the state machine somewhat, as only `\n` is fed, regardless of whether it was a CRLF, CR, or LF. It also feeds `' '` instead of virtual spaces. The BOM, if present, is now available as a `ByteOrderMark` event.