v1.1.0
Released: 2026-09-18
Changes since v1.0.1 (5105c20..HEAD).
Features
- LaTeX math rendering with KaTeX (#164, design by @rafaself): inline
$…$and block$$…$$math now render in the markdown preview. Fully self-hosted — KaTeX 0.16.47 and its fonts are vendored, so no CDN or network request is needed to render equations.- Security-preserving pipeline: the markdown extensions emit text-only placeholders (raw TeX as escaped text, no
style) that pass DOMPurify untouched; KaTeX then renders them after sanitization withtrust: false, so its style-heavy output never has to go through the sanitizer and the existing HTML-sanitization boundary is unchanged. - Conservative tokenizers keep prose literal: currency (
$10,$5 and $10), inline code, fenced code, and escaped\$are not treated as math. Block equations participate in editor↔preview scroll-sync, and re-rendering is idempotent.
- Security-preserving pipeline: the markdown extensions emit text-only placeholders (raw TeX as escaped text, no
Security
- ruby_llm 1.16.0 → 2.0.0 — clears CVE-2026-67991 (High-severity polynomial-time ReDoS). The AI image-generation path was adapted to the 2.0 API (attachments via
ask(prompt, with:), responses asMessage#attachments/#content); grammar-check behavior is unchanged.
Test Coverage
- 864 Ruby tests, 1,646 JavaScript tests (2,510 total).