🧊 #Icechunk 2 is out today 🧊 When we released 1.0 last July, we committed to format stability and declared it production-ready. Since then, teams across weather forecasting, climate science, neuroscience, and AI/ML pushed it in amazing ways (and some we didn't fully anticipate — repos with tens of thousands of commits, 100k+ arrays, and multi-terabyte distributed write pipelines running around the clock). That real-world usage shaped this release. Icechunk 2 delivers: 💪 Stronger consistency — a unified repo info file makes all repository state atomic and serializable, including branch ops, GC, and config changes 🚂 New data ops — move_node, shift_array, and reindex_array are now cheap metadata-only operations (no chunk rewrites) ⏹️ Rectilinear chunk grids — variable-sized chunks per dimension, enabling prepends, inserts, and irregular time intervals 🚀 Better performance — O(1) ancestry lookups, parallel flush, concurrent transaction log fetching 🪨 Hardened reliability — expanded retries, timeout controls, and fault injection tested against real network failures 💻 WASM support — Icechunk core now compiles to WASM, opening the door to browser and Node.js usage The migration path is smooth: Icechunk 2 fully reads and writes V1 repos, and upgrading is a metadata-only operation: no chunk data is copied or rewritten. Already running in the Earthmover Platform for weeks. So many thanks to the community for their comments, contributions, and collaboration, especially dynamical.org 💙 Get it today: pip install icechunk
Huge! Congrats on the release
Amazing, I've been especially excited for the metadata only operations.
Already kicked the tires on this and really happy with it. Great work Earthmover
https://docs.earthmover.io/guide/icechunk-2