- コラボレーションアプリ開発を容易にする CRDT ベースの ローカルファーストなデータ同期エンジンで、オフラインコラボレーションとバージョン管理に最適化
- 3.0の最大の変化は、メモリ使用量が10倍以上減少し、はるかに多様なシナリオに適用可能になったこと
- Automergeはすべての変更履歴を保存し、競合検出と履歴復元をサポートする構造
- 従来はドキュメント編集時に圧縮が解除され、メモリ使用量が数百MB〜数GBまで急増する問題があった
- 3.0ではランタイムでも圧縮フォーマットを使用し、メモリ負荷を根本的に削減
- 例: 大容量テキストの Moby Dick 貼り付けテストでは、2.0は700MB、3.0は1.3MBのみを使用
- サーバーでも大規模ドキュメントの同時管理が容易になり、大規模なコラボレーションアプリを構築可能
- ドキュメント履歴が大きい場合、ロード速度も数十〜数万倍高速化(17時間→9秒)
- また、テキスト処理関連APIも大幅に整理され、一貫性とシンプルさを強化
- コラボレーション可能な文字列は通常の
string、コラボレーション不可の文字列は ImmutableString として明確に分離
- 従来の
Text/RawString など重複APIは削除され、next 名前空間APIがデフォルトになった
- 既存コードとほぼ完全に互換で、同一のファイルフォーマットおよび大半のAPIを維持しており、即時に移行可能
まだコメントはありません。