Skip to content
This repository was archived by the owner on Sep 24, 2026. It is now read-only.

0.2.0 — Mojo 1.0

Latest

Choose a tag to compare

@conorbronsdon conorbronsdon released this 12 Aug 00:28
11a1963
  • Builds on released Mojo 1.0. The pixi channel moved from
    max-nightly to max and the dependency pin from >=1.0.0b3.dev… to
    >=1.0,<2; CI installs mojo==1.0.0 from PyPI instead of the nightly
    index with --prerelease allow. The weekly drift check still runs
    against the latest nightly, so the repo still reports when the language
    moves under it. No source changes were needed.
  • README test count corrected: 48 → 69. CommonMark conformance re-run
    on 1.0 and unchanged at 643/652 (98.6%).
  • pixi run fuzz now passes test/data/spec_cases.txt. The task
    invoked the fuzz runner with no argument, so it aborted on
    argv()[1] — reproduced identically on the b3 nightly, so this is a
    pre-existing bug, not a 1.0 regression.

New markdown.errors module (exported from the package), adopting the
error-reporting pattern shared across the mojo-* parser suite:
line_col(source, offset) maps a byte offset to a 1-based (line, column)
pair — the column is the 1-based BYTE offset within the line, no UTF-8
decoding — and parse_error(msg, source, offset) builds an Error reading
<msg> at line <L>, column <C>: '<snippet>', where the snippet is up to
~30 bytes of the offending line centered on the column,
whitespace-trimmed, with ... where truncated, and never multi-line.

No parser call sites were wired: CommonMark treats every input as valid
markdown, so the parser has no input-error raise sites (the container
nesting cap degrades silently rather than raising). The module ships for
suite consistency and for downstream users who validate markdown-adjacent
input themselves.