* fix: tree should use jitter 0 by default
Otherwise, there may be inconsistency between the event and the actual data. But this will increase the cost when the index property is not used.
* chore: add changeset
* chore: fix warning
* refactor: enable tree move by default
* docs: update related docs
* feat: Add isDeleted() method to containers
- Add isDeleted() method to all container types (Text, Map, List, Tree, etc.)
- Fix deletion tracking for containers in tree operations
- Add tests to verify deletion state across different scenarios
* chore: fix redundant field names
---------
Co-authored-by: Leon Zhao <leeeon233@gmail.com>
* feat: allow users to query the changed containers in the target id range
* chore: add changeset note
* chore: update cargo toml
* test: add related tests and add a commit before get_changed_container_in
* perf: use a priority-queue-based search for updating text
It tends to produce diffs with more continuous edits,
which is more efficient when we need to apply them to CRDTs
* fix: use better text diff calc
* refactor: add text update options struct
* chore: update text.update comments
* chore: fix warnings
* fix: rm a dumb optimization
* 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
* perf: reduce the cost of is_deleted check
* perf: speedup get_or_insert container
* perf: reduce the cost of get or insert with
* fix: store len
* perf: cache cursor for text insertions
* chore: fix warnings
* test: bench large folder with 1M files & 100M ops
* test: update task
* test: display trimmed snapshot size
* chore: record current test result
* perf: optimize the speed of ensure_vv
- (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