Zixuan Chen
dc5159bf67
perf: speed up op converting
2023-08-06 01:07:08 +08:00
Zixuan Chen
a8b7d65f8a
feat: import without state
2023-08-05 23:29:11 +08:00
Zixuan Chen
1b300fdc65
chore: clear logs
2023-08-05 19:51:08 +08:00
Zixuan Chen
3551bc4e99
fix: changes traveler bug
...
should iter every change between two version, even when
a and b are parallel to each other
2023-08-05 19:47:15 +08:00
Zixuan Chen
7ab8ccff64
refactor: return handler when inserting container
2023-08-05 16:25:31 +08:00
Zixuan Chen
f9764a2d4c
Fix DiffCalculator error when going back in history( #106 )
2023-08-05 16:11:41 +08:00
Zixuan Chen
ccee201641
refactor: better interface
2023-08-05 12:44:31 +08:00
Zixuan Chen
a661b776c4
Allow commit with custom timestamp ( #105 )
2023-08-05 12:43:29 +08:00
Zixuan Chen
b22bd98f6b
feat: make getting child container handler simple ( #104 )
2023-08-05 10:23:14 +08:00
Zixuan Chen
72cc8c6ed5
fix: map version checkout err ( #101 )
2023-08-04 22:41:02 +08:00
Zixuan Chen
640828bf26
fix: should be readonly when doc is in detached mode
2023-08-04 14:45:22 +08:00
Zixuan Chen
db4eb64d42
refactor: oplog_frontiers & state_frontiers
2023-08-04 14:37:42 +08:00
Zixuan Chen
5ee860b74e
chore: use serde 1
2023-08-04 11:09:32 +08:00
Zixuan Chen
08beb9f60b
chore: rm serde requirement in append-only-bytes
2023-08-04 11:03:57 +08:00
Zixuan Chen
c105ff2220
Feat: checkout to target version & use unicode index by default ( #98 )
...
* feat: checkout to frontiers
* feat: record timestamp
* fix: use unicode len by default for text
now "你好" has length of 2 instead of 6
* chore: rm dbg!
2023-08-04 10:45:23 +08:00
Zixuan Chen
1e736df133
Refactor: rm legacy code ( #97 )
...
* refactor: rm legacy code
* chore: rm dead code
* refactor: mv refactored files outside
* refactor: rename files & methods
* chore: rm unused deps
* fix: compact bytes err
* chore: fix ci
2023-07-31 11:49:55 +08:00
Zixuan Chen
88003bdffe
fix: get deep value & throw mismatched context err
2023-07-30 16:30:41 +08:00
Zixuan Chen
c461edd828
refactor: remove utf16 meta in text event
...
we will use utf16 index by default when feature=wasm
2023-07-29 22:24:09 +08:00
Zixuan Chen
15be521777
feat: event & wasm
2023-07-29 02:03:51 +08:00
Zixuan Chen
f63c346e5c
refactor: make text fn explicit in index type
2023-07-28 13:40:08 +08:00
Zixuan Chen
f8d58ec379
refactor: use utf16 index in wasm mode
2023-07-28 13:38:52 +08:00
Zixuan Chen
fbebb5b8e8
feat: recursive emit events
2023-07-26 19:53:55 +08:00
Zixuan Chen
470d23a198
feat: subscribe for container events
2023-07-26 18:56:03 +08:00
Zixuan Chen
1ed8ad05be
perf: reduce shared arena size
...
make it more compact and cache-friendly
2023-07-25 23:06:21 +08:00
Zixuan Chen
ef2de6f368
chore: fix a few warnings
2023-07-25 23:00:42 +08:00
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
b94274d8b9
fix: dead lock on list
2023-07-22 19:27:21 +08:00
Zixuan Chen
aa151a48f5
fix: typo on op -> diff
2023-07-22 19:19:11 +08:00
Zixuan Chen
b5c325b490
feat: event (buggy)
2023-07-22 19:02:22 +08:00
Zixuan Chen
874533e51a
feat: add origin to doc state diff
2023-07-19 21:46:30 +08:00
Zixuan Chen
6abeba6849
refactor: rename *App to *Doc
2023-07-19 21:21:37 +08:00
Zixuan Chen
7f3bd5b0a4
feat: record diff in app state
2023-07-19 21:16:52 +08:00
Zixuan Chen
5ea68ac528
perf(encode): reduce snapshot size
...
it's experimental. need fuzzing
2023-07-19 12:31:49 +08:00
Zixuan Chen
9899a94f43
perf: opt encode/decode speed
2023-07-18 18:24:51 +08:00
Zixuan Chen
ac9a7e0631
perf: reduce snapshot size
2023-07-18 16:25:29 +08:00
Zixuan Chen
5beabc940b
perf: reduce encoding size
2023-07-18 14:39:17 +08:00
Zixuan Chen
9d03fd787f
chore: fix warnings
2023-07-18 10:10:52 +08:00
Zixuan Chen
3d3c54eb92
fix: get lamport by frontiers bug
2023-07-18 01:30:56 +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
20cf17e00b
bench: refactored text
2023-07-17 21:24:02 +08:00
Zixuan Chen
5f5db10a6d
fix: cache update in list diff calc
2023-07-17 21:02:26 +08:00
Zixuan Chen
0fac770309
fix: a few recursive bugs
2023-07-17 20:30:46 +08:00
Zixuan Chen
16ec59ddee
fix: fix a few recursive_refactored bug
2023-07-17 19:09:18 +08:00
Zixuan Chen
f527de5a2f
fix: fix lamport infer in change encode
...
lamport starts from 0 in the new version
2023-07-17 18:27:10 +08:00
Zixuan Chen
93252c9522
test: recursive fuzz test for refactored
2023-07-17 17:28:07 +08:00
Zixuan Chen
a3488c7088
feat: handlers
2023-07-17 16:04:02 +08:00
Zixuan Chen
ca977fcf39
test: text refactor fuzz
2023-07-17 15:00:40 +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
3771566b9f
refactor: integrate container type into container idx
2023-07-14 12:50:48 +08:00
Zixuan Chen
7cb6691cef
test: update snapshot test
2023-07-12 21:35:06 +08:00
Zixuan Chen
d3f921bae0
refactor: replace latest_lamport with next_lamport
2023-07-12 21:34:56 +08:00
Zixuan Chen
097d86915a
refactor: rm next lamport from app state diff
2023-07-12 21:29:21 +08:00
Zixuan Chen
6d2d28a721
refactor: reduce version conversion a little bit
2023-07-12 21:26:03 +08:00
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
2d47387882
refactor: txn should consume self after finished
2023-07-12 14:46:48 +08:00
Zixuan Chen
abec22cd22
fix: text sync issues
2023-07-12 12:30:36 +08:00
Zixuan Chen
f83837304e
feat: basic import export pipeline
2023-07-12 03:49:11 +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
23a212e5f6
chore: fix warnings and rm some dead code
2023-07-10 18:35:31 +08:00
Zixuan Chen
de9a8cb9ad
refactor: rm usage like Arc<LoroValue>
...
because LoroValue itself is cheap to clone now
2023-07-10 18:28:44 +08:00
Zixuan Chen
a90668abca
refactor: make LoroValue cheap to clone
2023-07-10 18:26:49 +08:00
Zixuan Chen
4634f0ddbb
feat: txn apply local op
2023-07-10 18:00:42 +08:00
Zixuan Chen
159cd9127f
refactor: rename remote content to raw op content
2023-07-10 16:54:55 +08:00
Zixuan Chen
f6c7e7a8f4
refactor: rm AppStateDiff
2023-07-10 16:53:56 +08:00
Zixuan Chen
4744431ab7
refactor: move remote to local op convert to arena
2023-07-10 15:58:30 +08:00
Zixuan Chen
508ca4b5c6
refactor: use a new version of txn
2023-07-10 12:06:11 +08:00
Zixuan Chen
bdb0e26b93
refactor: use locks inside arena
2023-07-09 21:22:26 +08:00
Zixuan Chen
bc11f0a6d2
feat: init txn
2023-07-08 00:22:34 +08:00
Zixuan Chen
ba8de055b4
chore: fix warnings
2023-07-07 21:56:35 +08:00
Zixuan Chen
d2c3eead90
feat: list diff calculator
2023-07-07 21:54:47 +08:00
Zixuan Chen
179e67bd8a
refactor: add a new event type for raw text event
2023-07-07 21:40:33 +08:00
Zixuan Chen
e72a97f6b7
chore: map diff calc
2023-07-07 19:12:41 +08:00
Zixuan Chen
cc4e1d02e4
feat: readonly arena
2023-07-07 15:36:19 +08:00
Zixuan Chen
fd588beee2
feat: support txn abort for states
2023-07-05 23:13:39 +08:00
Zixuan Chen
8f6a6e1cc2
feat: convert remote change to local change in oplog
2023-07-05 22:07:45 +08:00
Zixuan Chen
a0a7dc1080
test: fix fuzz test err
2023-07-05 19:08:27 +08:00
Zixuan Chen
bd4060c591
refactor: make remoteOp a borrowed type
2023-07-05 18:20:50 +08:00
Zixuan Chen
b99276ddce
refactor: make local change mergeable
...
when they are not exposed outside
2023-07-05 15:07:05 +08:00
Zixuan Chen
f0f82fb581
refactor: seal change exp impl
2023-07-05 14:43:58 +08:00
Zixuan Chen
336bd1e497
feat: convert frontiers to version vector
2023-07-04 18:25:33 +08:00
Zixuan Chen
4a8ce16ff1
feat: new map diff and map state
2023-07-04 14:31:50 +08:00
Zixuan Chen
b747452ced
refactor: replace containerIdx with ContainerID
...
in refactor module
2023-07-04 12:35:34 +08:00
Zixuan Chen
87887b1b2c
refactor: rename client to peer &
...
use efficient ContainerID repr
2023-07-04 12:33:03 +08:00
Zixuan Chen
38ee1e5a78
refactor: rename LoroValue::Unresolved to Container
2023-07-04 12:10:36 +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
2df7429e58
chore: rm debug log
2023-06-29 16:55:03 +08:00
Zixuan Chen
c50294ac22
feat: use text tracker diff
2023-06-29 16:09:42 +08:00
Zixuan Chen
0a31b67dd4
Feat: expose frontier & make it comparable ( #95 )
...
* refactor: make frontiers a new type
* feat: compare frontiers
2023-04-05 20:31:58 +08:00
Leon zhao
e51d6f8760
Fix: use Transaction to decode/import ( #92 )
2023-04-04 21:44:41 +08:00
Zixuan Chen
bbcb6f3957
fix: utf16 len fallback to utf8 when unknown ( #93 )
2023-04-04 17:28:35 +08:00
Zixuan Chen
3e64116621
fix: make text event in wasm use utf16 as index and len ( #88 )
...
* feat: utf16 event for wasm (draft, buggy)
* fix: work around the issue of unknown text content
* fix: utf16 err
* fix: compose utf16 meta
* docs: add comments
2023-04-03 20:03:07 +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
Zixuan Chen
b8056614f5
fix: avoid zero len del in text
2023-03-31 10:58:07 +08:00
leeeon233
e6a4be5dcf
fix: import change slice
2023-03-28 20:09:33 +08:00
leeeon233
0cbf5e2548
fix: lamport order
2023-03-27 09:35:57 +08:00
leeeon233
e6c5cefe54
doc: import pending
2023-03-27 09:35:57 +08:00
leeeon233
d4f786e64a
fix: dep is in merged pending change
2023-03-27 09:35:57 +08:00
Zixuan Chen
87ae95ef02
test: add a missing case
2023-03-27 09:35:57 +08:00
leeeon233
ac80775b17
fix: snapshot pending import
2023-03-27 09:35:57 +08:00
leeeon233
9db061ed36
fix: other client pending import (with debug
2023-03-27 09:35:57 +08:00
leeeon233
c34df16dcb
feat: pending snapshot
2023-03-27 09:35:57 +08:00
leeeon233
c1a72c3d7e
feat: pending import
2023-03-27 09:35:57 +08:00
Zixuan Chen
0a421d3931
fix: add event diff test & fix related bugs
2023-03-25 20:11:45 +08:00
Zixuan Chen
49f664dd8f
feat: convert event to js & add vitest
2023-03-25 20:11:45 +08:00
Zixuan Chen
f27786fa25
fix: container id should be converted to js string
2023-03-25 20:11:45 +08:00
Zixuan Chen
831ab0f04d
Merge branch 'main' into refactor-wasm
2023-03-24 11:59:28 +08:00
Zixuan Chen
be9fe842d7
Merge pull request #84 from loro-dev/refactor-interface
...
feat: expose methods from loro crate
2023-03-24 11:58:15 +08:00
Zixuan Chen
74a7aa6c1a
fix: transaction
2023-03-24 11:20:59 +08:00
Zixuan Chen
16e76eaf8e
fix: use container id when converting unresolved to jsvalue
2023-03-23 19:19:53 +08:00
Zixuan Chen
94f481e65e
fix: settimeout by default in subscription
2023-03-23 19:09:13 +08:00
Zixuan Chen
4c372359e6
fix: use utf16 by default for text in wasm
2023-03-22 23:23:57 +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
99e48b65ae
feat: add simple origin
2023-03-20 21:26:36 +08:00
leeeon233
117155cc54
perf: remove compress
2023-03-20 13:55:20 +08:00
leeeon233
25c1f449be
fix: DeltaValue trait add length
2023-03-17 16:33:50 +08:00
leeeon233
625e3332da
chore: some todo
2023-03-17 11:11:14 +08:00
leeeon233
39a7e49b2e
Merge branch 'main' into feat-transaction
2023-03-17 10:20:04 +08:00
leeeon233
ce007295e1
feat: wasm transaction
2023-03-16 17:27:00 +08:00
leeeon233
e6002d7076
bench: observe txn
2023-03-15 20:43:26 +08:00
leeeon233
dd4e7d5ee8
fix: build event when commit
2023-03-15 18:06:20 +08:00
leeeon233
8f4b5f101a
fix: remove events when delete container
2023-03-15 15:49:21 +08:00
leeeon233
c4a62bee37
fix: delta compose delete insert
2023-03-15 14:29:05 +08:00
leeeon233
fba6024754
fix: fuzz
2023-03-15 11:52:47 +08:00
leeeon233
e2e7f9cdac
refactor: transaction commits immediately
2023-03-15 10:21:43 +08:00
Zixuan Chen
b807064d0a
refactor: rm owning_ref ( #80 )
2023-03-14 21:02:51 +08:00
leeeon233
41da98ad38
perf: use reduce instead of fold
2023-03-13 22:13:48 +08:00
leeeon233
f165e2594c
fix: prelim transaction
2023-03-13 09:41:29 +08:00
leeeon233
87cc3be884
bench: add txn
2023-03-10 18:21:05 +08:00
leeeon233
06637f55d9
perf: remove delta push clone
2023-03-10 18:00:20 +08:00
leeeon233
04dd105d33
fix: remove auto commit
2023-03-10 16:07:07 +08:00
leeeon233
0ff122b68e
feat: transaction decode
2023-03-10 14:22:38 +08:00
leeeon233
89c832e2f2
feat: implicit commit
2023-03-10 10:50:05 +08:00
leeeon233
47d1bb603f
feat: loro use auto commit transaction
2023-03-09 20:03:29 +08:00
leeeon233
2d316b4414
fix: modify after merging
2023-03-09 10:45:54 +08:00
leeeon233
f6ad5460cb
Merge branch 'perf-encode-size' into feat-transaction
2023-03-09 10:45:29 +08:00
leeeon233
dc6926773c
fix: snapshot container error due to temp idx
2023-03-08 20:09:51 +08:00
leeeon233
73598c49ad
fix: remove checker to container inner
2023-03-07 21:56:16 +08:00
leeeon233
95ad837a79
fix: container length is inconsistent when fuzzing caused by decode
2023-03-07 21:33:23 +08:00
leeeon233
b6e9983eb7
fix: map lamport order
2023-03-07 17:06:10 +08:00
leeeon233
4f5f809bb6
fix: remove temp, add checker
...
fix: map lamport order
2023-03-07 17:05:52 +08:00