Repository navigation
multimark v0.4.0 adds markdown_to_html_batch(), a fast way to render many Markdown documents to HTML in one call, with optional multi-threading. Pre-built wheels now cover Linux aarch64, and Pyodide/WebAssembly wheels are published to PyPI for the first time, so micropip.install("multimark") works in browser-based Python environments running Pyodide 314 or later.
New Features
- Batch HTML rendering — New
markdown_to_html_batch()function renders a list of Markdown documents to HTML in a single call. The parse/render loop runs entirely in C and releases the GIL for the whole batch, removing most of the per-document Python overhead. Setworkers=Nto split the batch across threads for multi-core parallelism; results are always returned in input order. It accepts the same rendering options asmarkdown_to_html()(smart,unsafe,hardbreaks,footnotes, and so on). GFMextensions=are not yet supported in batch mode. (#8) - Pyodide / WebAssembly wheels on PyPI — Pyodide wheels are now published to PyPI with the PEP 783
pyemscripten_2026_0_wasm32platform tag, somicropip.install("multimark")installs a pre-built wheel in Pyodide 314+ (Python 3.14), JupyterLite, Shinylive, and Marimo WASM mode. Earlier Pyodide versions (0.28/0.29, Python 3.13) are not supported. Under Pyodide, which cannot start threads, leaveworkersunset inmarkdown_to_html_batch(). (#9) - Linux aarch64 wheels — Pre-built
manylinuxandmusllinuxwheels are now published for 64-bit ARM Linux (AWS Graviton, Raspberry Pi 4/5, ARM containers), so these platforms no longer need a C compiler to build from the source distribution. As with other platforms, onecp39-abi3wheel covers CPython 3.9 and newer. (#7)
Enhancements
- The release workflow now uploads the Pyodide wheel in its own job, after the native wheels and sdist, so a problem with the Pyodide build or upload can no longer block the rest of a release.
- Pyodide wheels are now built with cibuildwheel 4.2.1, both in CI and with the local
make dist-pyodideandmake dist-alltargets. (#9)