Commit graph

186 commits

Author SHA1 Message Date
Zixuan Chen
fa13d1d06f fix: list state err
update g-btree to use a get node with Option
return value
2023-07-23 00:11:46 +08:00
Zixuan Chen
5a233501cc perf: speed up import by reducing dag nodes 2023-07-18 01:23:49 +08:00
Zixuan Chen
d03617ca26 feat: add bench 2023-07-17 23:18:18 +08:00
Zixuan Chen
e993f1b155 feat: basic snapshot encoding 2023-07-17 12:27:11 +08:00
Zixuan Chen
6983a2b00c refactor: mov loro value to loro_common 2023-07-15 00:47:47 +08:00
Zixuan Chen
fc49b4b3b4 refactor: mov important basic types into loro-common 2023-07-14 16:38:53 +08:00
Zixuan Chen
dde0152912 refactor: prepare for snapshot encoding 2023-07-14 16:05:06 +08:00
Zixuan Chen
6311782943 perf: optimize compress & speed
but no cap for now
2023-07-13 22:43:02 +08:00
Zixuan Chen
346117ff54 feat: supports setting capacity 2023-07-13 16:57:41 +08:00
Zixuan Chen
f604a89fc3 refactor(bytes): refine interface 2023-07-13 15:33:49 +08:00
Zixuan Chen
8ebd41fa3d feat: connect diff calculator 2023-07-12 00:29:23 +08:00
Zixuan Chen
b1d438d08d fix: a weird deps bug
error[E0635]: unknown feature `proc_macro_span_shrink`
  --> /Users/zxch3n/.cargo/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.49/src/lib.rs:92:30
   |
92 |     feature(proc_macro_span, proc_macro_span_shrink)
   |                              ^^^^^^^^^^^^^^^^^^^^^^
2023-07-10 15:57:55 +08:00
Zixuan Chen
2cbe21463c feat: list & text states 2023-07-04 11:27:09 +08:00
Zixuan Chen
f042f86a92 chore: basic interfaces design 2023-07-03 00:40:05 +08:00
Zixuan Chen
abd3e38253 chore: bk 2023-07-02 23:24:17 +08:00
Zixuan Chen
c50294ac22 feat: use text tracker diff 2023-06-29 16:09:42 +08:00
Zixuan Chen
831ab0f04d Merge branch 'main' into refactor-wasm 2023-03-24 11:59:28 +08:00
Zixuan Chen
63ebbe2ddb chore: remove tracing 2023-03-23 21:17:16 +08:00
Zixuan Chen
32378a7188 fix: use promise.then instead of timeout 2023-03-23 21:16:29 +08:00
Zixuan Chen
94f481e65e fix: settimeout by default in subscription 2023-03-23 19:09:13 +08:00
Zixuan Chen
490a54d559 feat: expose from loro crate 2023-03-21 11:09:12 +08:00
leeeon233
d8f0dfa673 chore: clean the code 2023-03-21 09:47:24 +08:00
leeeon233
117155cc54 perf: remove compress 2023-03-20 13:55:20 +08:00
leeeon233
39a7e49b2e Merge branch 'main' into feat-transaction 2023-03-17 10:20:04 +08:00
leeeon233
ea921e4c8f fix: remove counter & lamport from RleUpdates encoding 2023-02-18 18:03:05 +08:00
leeeon233
5b6f864479 feat: init nodejs bindgen 2023-02-16 11:22:50 +08:00
leeeon233
2aa0a76537 chore: update wasm-bindgen 2023-02-07 11:40:47 +08:00
leeeon233
83972746a6 feat: add python bingen 2023-01-29 17:48:37 +08:00
leeeon233
c10b1237e0 chore: rebase main 2023-01-29 17:48:37 +08:00
leeeon233
a26d4b0122 feat: init ffi 2023-01-29 17:48:37 +08:00
Zixuan Chen
18d32384a5 refactor: move loro-core to loro-internal 2023-01-16 20:08:43 +08:00
leeeon233
a20b4c9e8b fix: interface update 2023-01-16 18:38:55 +08:00
Zixuan Chen
9748779f08
Bench: report (#49) 2022-12-27 14:18:46 +08:00
leeeon233
4748e1d38c fix: decode hierarchy for snapshot mode
update columnar version, reduce compression time
2022-12-19 18:07:24 +08:00
leeeon233
9b74125ba5 chore: update columnar 2022-12-13 23:02:33 +08:00
leeeon233
70b3126d79 chore: rebase main 2022-12-13 23:02:32 +08:00
leeeon233
2fb675f145 chore: clean file 2022-12-13 23:02:32 +08:00
leeeon233
48d784bcd1 feat: add map state snapshot 2022-12-13 23:01:17 +08:00
Zixuan Chen
83af4d07eb
Merge pull request #44 from loro-dev/feat-wasm-encode
Feat: wasm encode
2022-12-13 16:34:54 +08:00
Zixuan Chen
68bd7179c4
Perf remove string pool mutex (#41)
This is based on append-only-bytes. It allows us to share str data in a lock-free way. The downside of this method is it tends to use more memory
2022-12-09 17:22:33 +08:00
Zixuan Chen
a24e284fba fix: hierarchy notify 2022-12-09 10:46:55 +08:00
Zixuan Chen
594b60dafb
Perf store cache in parent node (#36)
* refactor: make internal and leaf use same type of cache

* refactor: add cache update

* test : add normalization to arb test

* test: fuzz

* fix: internal insert bug

* fix: missing utf16

* test: fix test sub overflow

* feat: use heapless for binary heap

* refactor: refine warning

* test: reduce test time

* perf: reduce computation when finding pos

* bench: fix ignore parse time in benching

* feat: make it compile in new sig (should be merged)

* fix: type err

* fix: fix type err

* fix: cache when merge & borrow

* refactor: simplify code

* fix: cumulated tree trait bug

* fix: a few fatal bugs (still buggy)

* fix: global tree trait

* refactor: rm an unused fn

* fix: insert at cursor bug

* fix: in cursor insert cache may be invalid

strip the checker there

* chore: remove needless check

* refactor: add inline to methods

* test: remove cfg=mem for mem example

* fix: type err
2022-12-06 16:34:46 +08:00
Zixuan Chen
f757b86f5c
Fix: unsound (violate borrow stack rules) bugs detected by Miri (#32)
* fix: borrow stack bugs exposed by miri

* fix: use context to track notify when integrating

* fix: miri bugs

* fix: borrow stack bugs

* fix: set range miri err
2022-12-06 16:05:58 +08:00
Zixuan Chen
ff187d967e chore: fix lockfile 2022-12-06 15:59:14 +08:00
Zixuan Chen
439e605388 Merge branch 'main' into feat-encode-update 2022-12-06 15:58:28 +08:00
Zixuan Chen
e3b420e41c chore: add tracing dep 2022-12-06 15:37:57 +08:00
Zixuan Chen
9efc6749ef chore: add tracing dep 2022-11-30 23:57:00 +08:00
Zixuan Chen
d3a0d10b12 feat: encode updates 2022-11-30 23:55:58 +08:00
Zixuan Chen
16dd4c7182 fix: apply effects order 2022-11-28 17:24:14 +08:00
leeeon233
cc129ee753 feat: expose ContainerID 2022-11-23 19:49:39 +08:00
leeeon233
e124bbbec1 fix: wasm interface 2022-11-23 19:49:39 +08:00
leeeon233
42ded24721 chore: add panic hook 2022-11-23 19:49:39 +08:00
Zixuan Chen
780f756450 fix: remove unknown type on content 2022-11-21 20:30:20 +08:00
Zixuan Chen
3e2d03fe1e test: add list containers bench 2022-11-18 00:37:07 +08:00
leeeon233
a65d4f06b6 chore: rename columnar 2022-11-17 16:26:53 +08:00
leeeon233
2c004980ee chore: columnar dependency use git path 2022-11-17 11:49:32 +08:00
leeeon233
f468e3b57b fix: encode when only create container but no op 2022-11-16 17:01:03 +08:00
leeeon233
5969f92b87 feat: add encode
Co-authored-by: Zixuan Chen <me@zxch3n.com>
2022-11-14 18:42:16 +08:00
Zixuan Chen
886c1cdd4a fix: fix several issues detected by fuzzer 2022-11-12 21:30:00 +08:00
Zixuan Chen
fc41f0fa1b refactor: move reg inside log store 2022-11-11 16:18:13 +08:00
Zixuan Chen
c50fd45d1d refactor: use dashmap in container manager
Co-authored-by: Leonzhao <leeeon233@gmail.com>
2022-11-11 11:12:55 +08:00
Zixuan Chen
1a8fb458a9 chore: use stable rust as GAT become stable 2022-11-06 23:18:15 +08:00
Zixuan Chen
43c28608c6 fix: reduce heap alloc 2022-10-31 19:27:13 +08:00
Zixuan Chen
261fb329ee test: add mem profiling 2022-10-31 17:21:06 +08:00
Zixuan Chen
22465a5e97 test: add B4 bench 2022-10-31 16:16:44 +08:00
Zixuan Chen
16e3d6f3cb chore: bk 2022-10-28 17:19:58 +08:00
Zixuan Chen
12cc746ff2 chore: setup benchmark 2022-10-28 15:25:11 +08:00
Zixuan Chen
328d0517c0 chore: update crdt-list dep 2022-10-26 23:35:21 +08:00
Zixuan Chen
105ab9b5ef chore: micro optimization 2022-10-26 23:31:34 +08:00
Zixuan Chen
352ddc1c11 fix: common ancestor step 1 2022-10-26 23:31:34 +08:00
Zixuan Chen
037093f6bd fix: partial iter bug 2022-10-26 23:31:34 +08:00
Zixuan Chen
b099b4507c fix: add 2 site tests & fix update cursor bug 2022-10-26 23:31:34 +08:00
Zixuan Chen
cf11e1ff4b test: single client fuzz 2022-10-26 23:31:34 +08:00
Zixuan Chen
796317097d test: start integration testing 2022-10-26 23:31:34 +08:00
Zixuan Chen
1d38440e9f refactor: org loro entry code
add raw string pool
add owning_ref dep
2022-10-26 23:31:34 +08:00
Zixuan Chen
947eb13853 chore: cleanup 2022-10-26 23:31:34 +08:00
Zixuan Chen
aef1947bee chore: add tabled to y_span 2022-10-26 23:31:34 +08:00
Zixuan Chen
f760aad046 test: add bench facilities 2022-10-26 23:31:34 +08:00
Zixuan Chen
a93d9f762d fix: cursor should not use Deref
`crdt-list` expected derefed cursor to be a sliced operation, but it was not.
so I updated crdt-list to use a GetOp trait instead of Deref, where
users may slice the op if they want to.
2022-10-26 23:31:34 +08:00
Zixuan Chen
bc980c5b02 feat: iter update in rle tree 2022-10-26 23:31:34 +08:00
Zixuan Chen
92a2e48ef5 chore: yata init 2022-10-26 23:31:34 +08:00
Zixuan Chen
f5a21799a8 chore: update crdt-list 2022-10-26 23:31:34 +08:00
Zixuan Chen
5ca3a42a0b test: add fuzz and fix a few iter bugs 2022-10-26 23:31:34 +08:00
Zixuan Chen
670d194aeb feat: impl yata 2022-10-26 23:31:34 +08:00
Zixuan Chen
cd95e2276c feat: introduce crdt-list 2022-10-26 23:31:34 +08:00
Zixuan Chen
1252bcdda9 feat: supply-chain safety with cargo-vet 2022-10-26 23:31:34 +08:00