概要
- Automerge 3.0 がリリースされ、 メモリ使用量 が大幅に削減
- ドキュメント履歴管理による オフライン協調作業 の最適化
- API整理 やテキスト処理の改善
- 旧バージョンからの 高い互換性 と簡単な移行
- パフォーマンスと信頼性 が大幅に向上
Automerge 3.0の主なアップデート
- Automerge 3.0 は、ローカルファーストな データ同期エンジン
- 共同編集アプリ開発を 容易化
- 最大の特徴は メモリ使用量10倍以上削減
- ドキュメント履歴管理による バージョン管理 や オフライン作業 サポート
- 従来は長い履歴で ギガバイト級メモリ消費 が発生
- Automerge 3.0 では、同じ操作で 1.3MB まで削減(例:Moby Dick貼り付け時)
- クライアントのみならず サーバー運用の安定性 にも寄与
- 履歴の多いドキュメントの 読み込み速度改善 (例:17時間→9秒)
メモリ使用量の改善
- すべての変更履歴を 圧縮カラム形式 で保存
- 編集時も 圧縮形式 を維持し、展開せずに効率的に扱う設計
- クライアントデバイス での高メモリ消費を回避
- 多くの大規模ドキュメント を同時に扱うサーバーにも好適
APIの整理とテキスト処理
- テキスト管理APIの 冗長性を解消
- Collaborative string (共同編集可)と Non-collaborative string (編集競合不可)を明確に区別
- Automerge 1.0 :通常の文字列とTextクラスで区別
- Automerge 2.0 :collaborative textがデフォルト、RawStringクラスで非協調テキストを扱う
- Automerge 3.0 :Text APIを廃止し、next APIを標準化
- RawStringは ImmutableString に名称変更
移行と利用方法
- @automerge/automerge-repo や @automerge/react の最新版で Automerge 3.0 がデフォルト
- 新規利用者は チュートリアル 参照推奨
- 既存コードベースは マイグレーションガイド を確認
- npm update @automerge/automerge でバージョンアップ可能
- 問題発生時は Issue作成 や Discord参加 でサポート受付
まとめ
- Automerge 3.0 は、 パフォーマンス ・ メモリ効率 ・ APIの使いやすさ が大幅向上
- 共同編集アプリ や ローカルファースト開発 に最適
- 旧バージョンからの移行も 容易、今こそ導入・アップデートの好機