Commit graph

1267 commits

Author SHA1 Message Date
Zixuan Chen
42329a20ea
feat: add a few methods to free memory 2024-08-09 16:03:13 +08:00
Zixuan Chen
ce842a3aee
chore: add 10M cells bench 2024-08-09 14:56:56 +08:00
Zixuan Chen
be191f32bd
chore: add method to monitor the memory usage 2024-08-09 14:31:33 +08:00
Zixuan Chen
65cf79da66
feat: api to free history cache 2024-08-09 12:02:15 +08:00
Zixuan Chen
94f8acd224
refactor: lazy load the history cache 2024-08-08 23:27:55 +08:00
Zixuan Chen
480e74b083
refactor: differentiate two different history cache 2024-08-08 21:26:03 +08:00
Zixuan Chen
868ee2e8cc
docs: add notes about apply diff 2024-08-08 18:27:49 +08:00
Zixuan Chen
2b6dae8393
fix: tree event when using import greater updates 2024-08-08 17:58:12 +08:00
Zixuan Chen
b40f273b7a
refactor: add import greater updates mode to tree import 2024-08-08 16:33:02 +08:00
Zixuan Chen
62d4c9ca5d
fix: add importGreaterUpdates variants to diffmode 2024-08-08 14:57:11 +08:00
Zixuan Chen
de78cf9636
refactor: add linear diff calc mode to tree 2024-08-08 10:39:04 +08:00
Zixuan Chen
9d8221ca29
fix: text diff calc refactor err 2024-08-08 00:36:59 +08:00
Zixuan Chen
af274eac79
refactor: add linear mode for text 2024-08-07 23:42:15 +08:00
Zixuan Chen
a9c6c32b3e
refactor: rename op group to history cache 2024-08-07 19:26:21 +08:00
Zixuan Chen
76ff328290
refactor: use less history cache for movable list diff calc 2024-08-07 19:25:40 +08:00
Zixuan Chen
fd26e6c71a
refactor: rm group list pos to elem id map in movable list history cache 2024-08-07 00:05:18 +08:00
Zixuan Chen
e79397c6b4
refactor: rename move's from_id to elem_id 2024-08-06 23:47:13 +08:00
Zixuan Chen
b791157494
refactor: make map import independent from history cache 2024-08-06 23:22:24 +08:00
Zixuan Chen
06ea79b900
refactor: add diff mode 2024-08-06 17:10:51 +08:00
Zixuan Chen
7e7fe782b4
refactor: refine movable list internal event 2024-08-06 15:34:55 +08:00
Zixuan Chen
e13c7ff174
chore: add method to ensure cids in block header are decoded 2024-07-24 16:06:33 +08:00
Zixuan Chen
618c38c7b9
fix: resolve LORO-766 2024-07-24 15:44:48 +08:00
Zixuan Chen
3d516a3e18
refactor: op group -> history cache 2024-07-18 15:44:50 +08:00
Zixuan Chen
06cd6b577d
refactor: rename "OpGroup" to "ContainerHistoryCache" 2024-07-17 12:32:03 +08:00
Zixuan Chen
59f09e7162
Merge branch 'main' into zxch3n/kv-store-trait 2024-07-17 12:16:53 +08:00
Zixuan Chen
ca6a7c897e
fix: warnings 2024-07-17 12:15:16 +08:00
Zixuan Chen
b39c45fa2e
chore: rm export blocks and import blocks 2024-07-17 12:10:58 +08:00
github-actions[bot]
d2b0520f86
chore: version packages (#403)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-07-14 17:03:19 +08:00
Yang Si
ce88b326dd
fix: when computing the len of the map, do not count elements that are None (#402) 2024-07-14 16:40:46 +08:00
Zixuan Chen
bc63d250e2
Merge branch 'main' into zxch3n/kv-store-trait 2024-07-14 13:59:14 +08:00
东灯
c710ec3dd3
feat: add more text api (#398)
* feat: add char_at

* feat: add slice

* feat: add splice

* feat: add rust/typescript API

* fix: ci test

* fix: patch

* fix: patch

* Update crates/loro-wasm/src/lib.rs

Co-authored-by: Zixuan Chen <remch183@outlook.com>

* Update crates/loro-wasm/src/lib.rs

Co-authored-by: Zixuan Chen <remch183@outlook.com>

* Update crates/loro/src/lib.rs

Co-authored-by: Zixuan Chen <remch183@outlook.com>

* perf: use entity index

* fix: patch

* fix: error brackets

---------

Co-authored-by: Zixuan Chen <remch183@outlook.com>
2024-07-14 13:06:04 +08:00
东灯
2f95480e96
feat: add text iter (#400)
* feat: add text iter

* doc: fix return error

* doc: add callback explain

* perf: change to iterate spans
2024-07-13 23:34:37 +08:00
Leon Zhao
00e9c8d031
fix: tree diff calc children should be sorted by idlp (#401) 2024-07-13 23:26:38 +08:00
Zixuan Chen
9f7783516d
refactor: use BTree in dag 2024-07-12 22:51:13 +08:00
Zixuan Chen
2a4e089208
chore: rm logs 2024-07-12 18:12:21 +08:00
Zixuan Chen
46000420e8
Merge main 2024-07-12 16:15:54 +08:00
Zixuan Chen
23fbae1f80
refactor: make vv in dag optional 2024-07-12 15:19:40 +08:00
Leon Zhao
71e5afa6cc
fix: tree undo when processing deleted node (#399) 2024-07-12 10:53:48 +08:00
Zixuan Chen
a924b3e55b
fix: change block encode & decode 2024-07-11 23:54:09 +08:00
Leon Zhao
00e7bf2911
chore: rename position to fractional_index (#381)
Breaking Change:
- rename `position` to `fractional_index`
2024-07-11 22:03:48 +08:00
东灯
86c760abd0
feat: add insert_utf8 and delete_utf8 for Rust Text API (#396)
* feat: add insert_utf8

* chore: merge insert functions

* fix: use utf8_to_unicode_index to reslove index

* fix: add bound-check and use unicode PosType

* feat: add delete_utf8

* perf: O(LogN) insert_utf8

* feat: add utf-16 cross unicode check

* perf: O(LogN) delete_utf8

* chore: add api

* chore: remove unused function

* fix: api name and bindgen name

* test: add utf8 js test

---------

Co-authored-by: Zixuan Chen <remch183@outlook.com>
2024-07-10 10:20:08 +08:00
Zixuan Chen
354f429381
feat: impl import_all export_all apis 2024-07-09 23:07:57 +08:00
Zixuan Chen
27daa08b77
pr: impl kv store 2024-07-09 00:32:16 +08:00
Zixuan Chen
f802ede4b9
refactor: impl HasCounter explicitly to speedup 2024-07-09 00:02:41 +08:00
Zixuan Chen
d69e4c9c30
Refactor ChangeStore to use external KV store and improve block management
- Add ID serialization methods in loro-common
- Update KvStore trait with binary search and double-ended iterator
- Modify export/import blocks to use bytes::Bytes
- Refactor ChangeStore to use external KV store for persistence
- Implement flush, encode_all, and decode_all methods for ChangeStore
- Update change retrieval and iteration methods to work with new block management
- Improve block parsing and caching mechanisms
2024-07-08 17:33:57 +08:00
Zixuan Chen
391bd5ad0a
bk: kv store init; refine block encode format 2024-07-04 23:41:53 +08:00
Zixuan Chen
ec905635fd
chore: update fuzz config 2024-07-04 20:06:18 +08:00
Zixuan Chen
9047065843
Fix undo with checkout (#375)
* fix: should transform checkout event

* chore: update fuzz dep

* chore: add pos to error info

* fix: clear undo/redo stack when checkingout

* test: update fuzz dep

* test: a new failed test case

* fix: tree transform

* chore: fuzz

* chore: add log

* chore: add more logs

* fix: compose err

* chore: fuzz test dep

* test: a failed tree case

* fix: undo tree event

* fix: do not compare tree position in fuzz

* fix: fuzz rev

* test: a failed tree case

* fix: add tree compose

* chore: add comment

* chore: fuzz

* fix: test

* fix: tree transform

* fix: tree transform index

* fix: sort tree index

* chore: fuzz

* fix: undo/redo remote change effect compose

* bk

* fix: tree undo redo (#385)

* fix: event hint none

* chore: fuzz version

* ci: fuzz

* bk: weird err

* fix: type err

* fix: fractional index between

* fix: wasm counter feature

* test: a new failed case

* fix: recursively create child nodes

* fix: filter empty event

* bk

* bk

* fix: tree undo redo remap

* chore: clean

* bk

* fix: tree need remap first

* fix: tree undo effect

* fix: tree diff calc

* fix: tree fuzz check eq func

* fix: remove EventHint None

* chore: cargo fix

* fix: tree uncreate

* fix: fuzz tree assert only structure

* refactor: rename methods

* fix: movable tree apply delta

* fix: another movable list issue

* chore: fuzz only check 1 actor's history

---------

Co-authored-by: Leon Zhao <leeeon233@gmail.com>
2024-07-04 18:15:44 +08:00
Zixuan Chen
fc46f429f1 docs: update wasm docs 2024-06-29 13:45:47 +08:00
github-actions[bot]
c3a763e07d chore: version packages 2024-06-28 00:04:09 +08:00