Commit graph

230 commits

Author SHA1 Message Date
Zixuan Chen
2a0f842fc5 fix: lamport issue 2023-07-12 18:47:04 +08:00
Zixuan Chen
3638e3d0ed fix: fix a encode/decode issue
exposed by fuzzing test
2023-07-12 18:17:57 +08:00
Zixuan Chen
8ebd41fa3d feat: connect diff calculator 2023-07-12 00:29:23 +08:00
Zixuan Chen
1f827f944e feat: basic pipeline for text 2023-07-10 23:17:39 +08:00
Zixuan Chen
a90218f229 chore: fix all warnings 2023-07-10 21:37:30 +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
bd4060c591 refactor: make remoteOp a borrowed type 2023-07-05 18:20:50 +08:00
Zixuan Chen
f0f82fb581 refactor: seal change exp impl 2023-07-05 14:43:58 +08:00
Zixuan Chen
82b5f8dc90
Perf: speed up utf16 and wasm (#90)
* perf: remove unused transact field

* perf: micro optimization

* bench: fix bench

* bench: add utf16 bench

* chore: refine diagnose

* perf: speedup utf16 lookup

* perf: use better utf16 len counter

* refactor: use js to cast Loro/Transaction

* refactor: map and list use __loro and __txn

* test: configure ci vitest

* chore: ci
2023-04-03 09:29:25 +08:00
leeeon233
f6ad5460cb Merge branch 'perf-encode-size' into feat-transaction 2023-03-09 10:45:29 +08:00
leeeon233
9544e27be4 feat: add delta compose 2023-03-01 14:12:05 +08:00
leeeon233
5b22a1e9aa fix: encode use dep_on_self
Co-authored-by: Zixuan Chen <me@zxch3n.com>
2023-02-22 14:10:21 +08:00
Zixuan Chen
9d31605bde fix: cursor get_sliced should have len > 0 2023-01-30 18:04:57 +08:00
Zixuan Chen
a03c68a993
fix: make LoroCore: Send + Sync (#61) 2023-01-06 21:03:11 +08:00
Zixuan Chen
fd65b1504c Merge branch 'main' into perf-wasm-analysis 2022-12-27 12:57:16 +08:00
leeeon233
4748e1d38c fix: decode hierarchy for snapshot mode
update columnar version, reduce compression time
2022-12-19 18:07:24 +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
f322bde4c9 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-13 16:18:56 +08:00
Zixuan Chen
90fe4cc69e fix: remove needless check 2022-12-12 16:18:55 +08:00
Zixuan Chen
dc4229d609 perf: reduce heap allocations 2022-12-12 16:01:58 +08:00
Zixuan Chen
313b1cc8c0 bench: add wasm bench to web test 2022-12-12 13:44:49 +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
569cfdcf5e perf(rle): use simple iter range for range_map 2022-12-09 10:46:55 +08:00
Zixuan Chen
1933fe6a56 fix: refine rangemap interface 2022-12-07 11:03:10 +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
2604c4a3fb refactor: make internal and leaf use same type of cache 2022-12-06 16:21:48 +08:00
Zixuan Chen
c25500df04 feat: introduce rope 2022-12-06 16:21:48 +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
610a651b5c fix: vec slice is ill defined 2022-12-06 15:50:35 +08:00
Zixuan Chen
134866bf3d chore: rm unused fn 2022-12-06 15:40:56 +08:00
Zixuan Chen
45c1a2e791 fix: decode deps 2022-11-30 23:55:58 +08:00
Zixuan Chen
d3a0d10b12 feat: encode updates 2022-11-30 23:55:58 +08:00
leeeon233
4ed1eaee32 feat: add list notify
Co-authored-by: Zixuan Chen <me@zxch3n.com>
2022-11-24 15:34:23 +08:00
Zixuan Chen
59bdaae250 refactor: use import context & basic notify
Co-authored-by: Leonzhao <leeeon233@gmail.com>
2022-11-24 12:15:25 +08:00
Zixuan Chen
1ae9bf2a48 feat: init delta 2022-11-23 16:26:38 +08:00
Zixuan Chen
c9e3a67963 test: fix range map tests 2022-11-18 00:32:18 +08:00
Zixuan Chen
521615b1a0 perf: replace returned vec with iterator 2022-11-18 00:32:18 +08:00
Zixuan Chen
402b174842 perf: avoid heap alloc 2022-11-18 00:32:18 +08:00
Zixuan Chen
878f6cf939 chore: refine map max children config 2022-11-18 00:32:18 +08:00
Zixuan Chen
ff9877db42 fix: remove needless notify 2022-11-18 00:32:05 +08:00
Zixuan Chen
b89ac938db refactor: initialize new import pipeline 2022-11-17 17:11:55 +08:00
Zixuan Chen
284f1e0862 fix: it's possible to enter the no sibling state 2022-11-15 15:53:03 +08:00
Zixuan Chen
114e12944d fix: should use slicerange in text container 2022-11-15 14:37:18 +08:00
Zixuan Chen
985a8f6920 fix: export iter bug 2022-11-15 13:59:10 +08:00
Zixuan Chen
3d07e7e7e5 fix: bugs related to unknown type 2022-11-15 13:41:00 +08:00
Zixuan Chen
794e001ce9 feat: fast gc 2022-11-15 10:46:29 +08:00
Zixuan Chen
1ca3f0e774 refactor: rename feature fuzzing to test_utils 2022-11-14 10:49:42 +08:00
Zixuan Chen
9758303c28
Merge pull request #15 from loro-dev/feat-recursive
feat: recursive type
2022-11-14 10:31:10 +08:00
Zixuan Chen
fa63687698 refactor: remove proptest feature 2022-11-13 21:22:49 +08:00
Zixuan Chen
743e2b597b chore: fix all warnings 2022-11-11 22:44:18 +08:00