This simplifies testing configuration and fixes coverage collection.
This switches to using `pnpm/setup`, which handles installing a
JavaScript runtime, caching, and dependency installation.
Resolves #389
It has reached its end-of-life.
Instead of relying on throwing and catching `ParseError`, this now just
uses `return null` internally.
The code block parser's hint and open regexes only matched a bare fence
followed immediately by a newline, so a fence with an info string such as
```js was never parsed as a code block. It fell through to inline parsing,
which dropped the raw fence markers and mangled braces in the code. Allow an
optional info string after the opening backticks (it is discarded, matching
the existing behavior of emitting a plain [code] block).
Co-authored-by: Spenser Black <me@spenser.black>