Commit graph

339 commits

Author SHA1 Message Date
Leon Zhao
203d82bf3b
feat: wasm api 1.0 (#521)
* feat: new 1.0 api wasm

* test: add new api test
2024-10-19 17:09:03 +08:00
Leon Zhao
3e4005d113
chore: rename tree event (#520) 2024-10-19 11:24:13 +08:00
Leon Zhao
dedc8e087e
chore: rename wasm export from (#519)
* chore: rename wasm export from

* fix: clippy
2024-10-18 19:49:40 +08:00
Zixuan Chen
2110a4e33a
chore: bump to beta.2 2024-10-17 14:16:02 +08:00
Zixuan Chen
0e21977705
chore: update build script 2024-10-17 14:12:21 +08:00
Zixuan Chen
e32fdbf542
feat(wasm): add methods to encode and decode Frontiers (#517) 2024-10-17 13:48:11 +08:00
Zixuan Chen
d872ac6488
fix: avoid auto unsubscribe (due to gc) in js env (#516)
* 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
2024-10-17 13:33:29 +08:00
Zixuan Chen
00775d3bcd
chore: bump to 1.0.0-beta.1 2024-10-16 16:29:52 +08:00
Zixuan Chen
e0b7280024
perf: use better data structure for frontiers (#515)
* 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
2024-10-16 16:22:36 +08:00
Zixuan Chen
e14f81aa37
perf: optimize high concurrency performance (#514)
* perf: optimize high concurrency performance

* fix: err

* chore: fix warnings
2024-10-16 12:01:31 +08:00
Zixuan Chen
270ee41a5e
docs: refine wasm docs 2024-10-14 09:42:22 +08:00
Zixuan Chen
cd36b5b656
chore: bump version 2024-10-09 19:30:25 +08:00
Zixuan Chen
9bfe97bce4
chore: bump version 2024-10-09 12:01:01 +08:00
Zixuan Chen
c8f776f018
Refactor rename trimmed snapshot to shallow snapshot (#499)
* refactor: rename trimmed snapshot to shallow snapshot

* refactor: rename trimmed_vv and trimmed_frontiers

* refactor: rename rest of trimmed* into shallow*

* chore: rename cov message

* chore: fix warnings
2024-10-08 13:15:14 +08:00
Zixuan Chen
27e3a593a6
Perf: optimize speed of large maps (#496)
* perf: optimize speed of large maps

* chore: record current perf

* chore: throw error when clippy has warnings
2024-10-05 14:35:56 +08:00
Leon Zhao
405cbe047c
feat: add import status (#494) 2024-10-05 08:18:12 +08:00
Zixuan Chen
b117880fed
fix: type err 2024-10-04 09:55:49 +08:00
Zixuan Chen
e3a7757610
refactor: change the first param of travel change from id to ids (#492)
* refactor: change the first param of travel change from id to ids

* fix: fix all warnings and refine the impl of subscription

* chore: use pnpm
2024-10-03 21:09:18 +08:00
Zixuan Chen
a93efd5f51
refactor!: better event api (#489)
- (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
2024-10-03 15:14:21 +08:00
Zixuan Chen
09a004e365
refactor: Loro import function should return LoroEncodeError (#487)
* 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
2024-10-02 11:11:08 +08:00
Zixuan Chen
31bc451fbf
Refactor rename new snapshot mode (#486)
* refactor: rename gc snapshot to trimmed snapshot

* refactor: mv
2024-10-01 16:49:38 +08:00
Zixuan Chen
5688a017d6
Fix warnings (#484)
* fix: warnings

* fix: warnings
2024-09-29 21:15:19 +08:00
Zixuan Chen
812de54ad0
refactor: replace all .lock() with .try_lock()
to avoid deadlock when using Loro with multi-thread
2024-09-27 02:43:00 +08:00
Zixuan Chen
cec99f8f7e
feat: add clear methods (#478)
* feat: add clear method

* feat: expose clear fn to wasm and rust
2024-09-25 20:50:55 +08:00
Zixuan Chen
6bb424d65f
feat(wasm): commit message & get pending ops length (#477) 2024-09-25 20:38:10 +08:00
Zixuan Chen
18855bafd3
chore: bump version 2024-09-24 18:10:02 +08:00
Zixuan Chen
c6f1a4c0ae
fix(wasm): type err 2024-09-24 18:08:29 +08:00
Zixuan Chen
bef39ce6b5
Feat: allow editing on detached mode (#473)
* refactor: add detached editing config and prepare the architecture for editing detached doc

* feat: subscribe for peer id change

* fix: undo after checkout & add tests for detached editing

* test: add fuzzer for detached editing

* feat: expose detached editing configure to wasm

* test: add wasm test for detached editing
2024-09-24 11:16:59 +08:00
Zixuan Chen
9294648c8e
chore: 1.0-alpha.2 2024-09-23 10:20:28 +08:00
Leon Zhao
3fe619bc81
refactor: use hierarchy value for tree value (#470)
* refactor: use hierarchy value for tree value

* fix: get_container_deep_value_with_id

* feat: get tree nodes by flat format
2024-09-23 09:05:12 +08:00
Zixuan Chen
bb494df230
chore: bump version to v1.0.0-alpha.1 2024-09-20 18:16:49 +08:00
Leon Zhao
7f9bfa8a85
refactor: tree contains & isDeleted (#467) 2024-09-19 11:21:54 +08:00
Zixuan Chen
76803506b6
feat: add new cid method to js binding 2024-09-17 13:05:06 +08:00
Zixuan Chen
15175a1e5f
chore: update pkg files 2024-09-13 17:48:57 +08:00
Leon Zhao
f3b1482370
feat: get shallow value of doc (#463)
* feat: get shallow value

* chore: rename
2024-09-13 17:09:09 +08:00
Zixuan Chen
f1374c3bd0
Merge branch 'main' into dev 2024-09-12 22:30:42 +08:00
Zixuan Chen
38d1c279d9
feat: add new export api to wasm 2024-09-12 22:16:55 +08:00
Zixuan Chen
255a7bd9e6
chore: add deprecated warning for old export methods 2024-09-11 14:25:30 +08:00
Zixuan Chen
69ef0ac8c2
refactor: rename fractional index config function
and fix a few timestmap err
2024-09-11 11:16:31 +08:00
Zixuan Chen
4a27a0645f
Merge branch 'dev' into feat-gc 2024-09-11 10:54:29 +08:00
Leon Zhao
07671ea9fd
feat: add old parent and old index in tree diff (#452)
* feat: add old parent in tree diff

* chore: enable ci

* feat: add old_index to tree diff

* fix: new fractional index config

* fix: cargo fix

* fix: add FractionalIndexNotEnabled error

* fix: move config to tree state

* fix: error string

---------

Co-authored-by: Zixuan Chen <remch183@outlook.com>
2024-09-09 16:16:02 +08:00
github-actions[bot]
243708943c
chore: version packages (#451)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-09-07 19:44:32 +08:00
Zixuan Chen
00a25510f1
refactor!: use timestamp in seconds by default (#448) 2024-09-05 22:21:18 +08:00
Zixuan Chen
dd6bb10fff
Refactor(wasm) rename Loro to LoroDoc (#443)
* chore: reduce wasm size

* refactor(wasm): rename Loro to LoroDoc
2024-09-05 20:27:31 +08:00
github-actions[bot]
622c881605
chore: version packages (#447)
Some checks failed
Release WASM / Release (push) Has been cancelled
Test All / build (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-09-05 14:31:14 +08:00
Zixuan Chen
dce00abd8a
Fix using loro in cloudflare worker (#441)
* fix: try fix generated wasm bundler

* fix: loro-quill example

 and fix bundler patch issue

* chore: add release info
2024-09-05 13:10:27 +08:00
Zixuan Chen
4c325ab87c
Merge branch 'dev' into feat-gc 2024-09-03 21:21:14 +08:00
Zixuan Chen
08d53cae93
feat: subscribe for local updates (#444) 2024-09-03 14:04:43 +08:00
Zixuan Chen
64e5d30da8
chore: reduce wasm size 2024-09-02 00:30:00 +08:00
Zixuan Chen
cdb7498e90
chore: setup tracing feature only on loro-wasm 2024-08-30 20:58:18 +08:00