v0.9.0
juanfont/headscalev0.9.0Sep 7, 2026by github-actions[bot]
Upgrading?
AI Summary
This release introduces the open-source TALA layout engine bundled with D2, adds support for exporting diagrams to PNG, GIF, PDF, and PPTX, and includes significant performance improvements and bug fixes.
Key Highlights
- TALA is now open source and bundled with D2, removing the need for separate plugins or licenses.
- New export formats: PNG, GIF, PDF, and PPTX are now supported via the built-in renderer.
- Performance improvements: SVG rendering is approximately 10x faster, and PNG encoding is optimized.
- Fixes for obsolete installer flags and recursive glob handling to prevent stack overflows.
New Features
- TALA layout engine integration with configurable seeds
- Export rendering for PNG, GIF, PDF, and PPTX
- Markdown labels rendered as native SVG instead of HTML foreignObject
- Support for gzip, Brotli, and deflate remote images
Full Release Notes
#### Features 🚀 - TALA is now open source and bundled with D2, including the JavaScript/WASM package. Select it with `d2 --layout=tala`, `D2_LAYOUT=tala`, or `vars.d2-config.layout-engine: tala`. No separate plugin installation or license key is required. - tala: configure layout attempts with `--tala-seeds`, `D2_TALA_SEEDS`, or `vars.d2-config.data.tala-seeds`. - exports: render PNG, GIF, PDF, and PPTX with the built-in renderer #### Improvements 🧹 - performance: reduce repeated work in Dagre ranking, text measurement, SVG preparation, and PNG encoding - performance: reduce repeated work in selective imports, dynamic grid layout, and PNG connection rendering - exports: reduce PNG memory usage and support images above the previous 67-megapixel limit - performance: SVG rendering is approximately 10× faster across the E2E corpus. Real-world diagrams compile, lay out, and render approximately 3× faster at the median. - renders: SVG exports are approximately 24% smaller across the E2E corpus and 18% smaller across real-world fixtures, with unchanged appearance. - renders: render Markdown labels as native SVG instead of HTML `foreignObject` content #### Bugfixes ⛑️ - install: reject the obsolete `--tala` installer flag with migration guidance before installing, instead of incorrectly claiming that older D2 releases bundle TALA - sequence diagrams: keep synthetic lifeline endpoint IDs stable across architectures - exports: honor `D2_TIMEOUT` during PNG and GIF rendering - compiler: keep recursive globs out of class and variable definitions and report class reference cycles instead of overflowing the stack - renders: decode gzip, Brotli, and deflate remote images before embedding them --- For the latest d2.js changes, see separate [changelog](https://github.com/d2lang/d2/blob/master/d2js/js/CHANGELOG.md).
Related Repositories
ollama/ollama★ 184,217
Get up and running with Kimi, GLM, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other models.
fatedier/frp★ 110,057
A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.
infiniflow/ragflow★ 92,619
RAGFlow is a leading open-source Retrieval-Augmented Generation (RAG) engine that fuses cutting-edge RAG with Agent capabilities to create a superior context layer for LLMs
gohugoio/hugo★ 90,198
The world’s fastest framework for building websites.
junegunn/fzf★ 83,715
:cherry_blossom: A command-line fuzzy finder