* fix: avoid auto unsubscribe (due to gc) in js env
* fix: drop subscription if the subscriber is dropped
* perf: use manually drop
* fix: rm once_cell dep
* fix: should call unsubscribe
* perf: optimize high concurrency performance
* refactor: use new fronteirs impl init
* refactor: fix more type err
* refactor: fix more type err
* fix: fix more type err
* fix: all type errors and warnings
* fix: type error in tests
* fix: Debug impl
* fix: singular value
* fix: err
* fix: avoid potential err of frontiers merging
* fix: a few test issues
* test: add frontiers tests
* fix: all test errors
* chore: fix warnings
* chore: rm testing code
* perf: optimize dag related performance
* chore: rm outdated marks
* refactor: frontiers's map variant should contains at least 2 elements
- (js) Refactor subscription mechanism to return unsubscribe function
- (rust) Implement must-use struct for subscriptions in Rust
- Enhance API ergonomics for JavaScript-like environments
- Improve resource cleanup and prevent potential memory leaks
* refactor: Loro import function should return LoroEncodeError
- Change return type
- Add support for handling potential errors:
- Invalid or non-existent frontiers
- Exporting old snapshot format from trimmed snapshot doc
- Improve compatibility with trimmed docs
* fix: add tests and fix a few places that need to return err
* refactor: add detached editing config and prepare the architecture for editing detached doc
* feat: subscribe for peer id change
* fix: undo after checkout & add tests for detached editing
* test: add fuzzer for detached editing
* feat: expose detached editing configure to wasm
* test: add wasm test for detached editing
* feat: add old parent in tree diff
* chore: enable ci
* feat: add old_index to tree diff
* fix: new fractional index config
* fix: cargo fix
* fix: add FractionalIndexNotEnabled error
* fix: move config to tree state
* fix: error string
---------
Co-authored-by: Zixuan Chen <remch183@outlook.com>