mirror of
https://github.com/loro-dev/loro.git
synced 2025-01-23 05:24:51 +00:00
60 KiB
60 KiB
Changelog
0.9.3
Patch Changes
- feat: add getChangeAtLamport
- Updated dependencies
- loro-wasm@0.9.3
0.9.2
Patch Changes
- Fix a few rich text issue
- fix: time travel back should be able to nullify rich text span (#254)
- fix: formalize apply delta method (#252)
- fix: how to find best insert pos for richtext & expand type reverse behavior (#250)
- Updated dependencies
- loro-wasm@0.9.2
0.9.1
Patch Changes
- Fix use consistnt peer id repr and expose VersionVector type
- Updated dependencies
- loro-wasm@0.9.1
0.9.0
Minor Changes
- Refine the rich text CRDT in Loro
Patch Changes
- Updated dependencies
- loro-wasm@0.9.0
0.8.0
Minor Changes
- Stabilize encoding and fix several issues related to time travel
Patch Changes
- Updated dependencies
- loro-wasm@0.8.0
0.7.2-alpha.4
Patch Changes
- Fix encoding value err
- Updated dependencies
- loro-wasm@0.7.2
0.7.2-alpha.3
Patch Changes
- Fix export compressed snapshot
- Updated dependencies
- loro-wasm@0.7.2
0.7.2-alpha.2
Patch Changes
- Add compressed method
- Updated dependencies
- loro-wasm@0.7.2
0.7.2-alpha.1
Patch Changes
- Fix v0 exports
- Updated dependencies
- loro-wasm@0.7.2
0.7.2-alpha.0
Patch Changes
- Add experimental encode methods
- Updated dependencies
- loro-wasm@0.7.2
0.7.1
Patch Changes
- Fix a few richtext errors
- Updated dependencies
- loro-wasm@0.7.1
0.7.0
Minor Changes
- refactor: remove setPanicHook and call it internally when loaded
Patch Changes
- Updated dependencies
- loro-wasm@0.7.0
0.6.5
Patch Changes
- Fix checkout err on seq data
- Updated dependencies
- loro-wasm@0.6.5
0.6.4
Patch Changes
- Fix time travel issue #211
- Updated dependencies
- loro-wasm@0.6.4
0.6.3
Patch Changes
- Fix isContainer issue
0.6.2
Patch Changes
- Refine getType and isContainer
0.6.1
Patch Changes
0.6.0
Minor Changes
- Improve API of event
Patch Changes
- Updated dependencies
- loro-wasm@0.6.0
All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
0.5.0 (2023-11-27)
⚠ BREAKING CHANGES
- encoding schema is changed
Bug Fixes
- #181 importing should use inherent arena (8e901cf)
- deno dirname in windows (#183) (c04dc34)
- from snapshot should enable auto commit (b940214)
- keep strong ref to doc in handlers #190 (#191) (e23ef43)
- remove compress feature (#184) (899270c)
- typo in lib.rs (#176) (83b0e8c)
0.4.3 (2023-11-16)
Bug Fixes
- avoid i32 overflow (f799da9)
0.4.2 (2023-11-16)
Features
Bug Fixes
0.4.1 (2023-11-12)
Features
- add
from_checkout
mark to event (#164) (08e4ed9) - add bench (d03617c)
- add compress (c9f63b6)
- add compress (6b6286d)
- add contains (b30dee1)
- add context check (df3a708)
- add cursor support (59f59b1)
- add decode state and loro to_json (be02701)
- add decode state and loro to_json (92e2bff)
- add delta compose (9544e27)
- add deps to change (3eb4157)
- add encode (5969f92)
- add enum as inner fork (7704ce2)
- add fromCheckout to wasm (fdd24bd)
- add gc feature gate (811d585)
- add go bindgen (8f73917)
- add index map (0ce9dbc)
- add java bindgen (271250b)
- add list notify (4ed1eae)
- add map state snapshot (48d784b)
- add notify to map and list (c574e7e)
- add origin to doc state diff (874533e)
- add pool mapping (1c8f378)
- add prelim (bc8235f)
- add prelim struct (43cb9cc)
- add Prelim struct (b5880f0)
- add push to List (99278b1)
- add python bingen (8397274)
- add recursive wasm (4726677)
- add return type for map and list (39ece04)
- add rle global index tree trait (067fb82)
- add simple origin (99e48b6)
- add subscribe to containers in wasm (6df69bd)
- add tracing spans (d718ed3)
- add tracing spans (32b53aa)
- add typed versions of getMap and getList to Loro class (#96) (bc09a04)
- add withstartend (8f00518)
- apply change (8c0f033)
- autocommit transaction (#127) (8293347)
- basic import export pipeline (f838373)
- basic pipeline for text (1f827f9)
- basic snapshot encoding (e993f1b)
- basic wasm interface (e0a472f)
- change & op (aae5cf2)
- change cfg api (b156023)
- checkout to target version & use unicode index by default (#98) (c105ff2)
- cmp vv (aa060a9)
- compact bytes init (8704d22)
- compressed rle update encode mode (#107) (17d1a9e)
- conenct container and store (19c1215)
- connect diff calculator (8ebd41f)
- container checker (0f2333b)
- container iter (13becdb)
- convert event to js & add vitest (49f664d)
- convert frontiers to version vector (336bd1e)
- convert remote change to local change in oplog (8f6a6e1)
- create doc from snapshot (#136) (e1ab03f)
- cursor mut (66c50d4)
- dag find path (ed14536)
- dag init (1ca2b42)
- dag iter (b828783)
- dag partial iter (8f6dd65)
- delete (550bce2)
- delete range (e19fb6a)
- diff calc bring back & tree new event and value (#149) (acafc76), closes #147 #151
- dynamic insert content (efd806b)
- encode updates (d3a0d10)
- encode/decode v2 (f208744)
- event (buggy) (b5c325b)
- event & wasm (15be521)
- expose ContainerID (cc129ee)
- expose from loro crate (490a54d)
- expose frontier & make it comparable (#95) (0a31b67)
- expose version and change inspect api to wasm (#156) (7ccfd1e)
- extra pkg loro-crdt to wrap loro-wasm (2f74b13)
- fast gc (794e001)
- get missing span of vv (b6d3f6b)
- get op content from store (4f2f07d)
- get timestamp (c31a4a0)
- get value deep (0d0603d)
- get vv from dag (16395a4)
- handlers (a3488c7)
- hierarchy children & parent (e402850)
- impl C ffi (95309db)
- impl list map text transaction (3c9818e)
- impl loro decode (580f2e5)
- impl yata (670d194)
- impl yata insert_at (ec59679)
- implicit commit (89c832e)
- import without state (a8b7d65)
- init (9ecd041)
- init content map (bd1b0a2)
- init delta (1ae9bf2)
- init encoding and build pipeline for wasm (f14905d)
- init ffi (a26d4b0)
- init list container transaction (47b9b34)
- init nodejs bindgen (5b6f864)
- init txn (bc11f0a)
- insert at cursor (36c9fd7)
- insert obj to list (b56d747)
- insertion (3c96a6b)
- integrate to text container (dce9f03)
- introduce crdt-list (cd95e22)
- introduce rope (c25500d)
- iter update in rle tree (bc980c5)
- list & text states (2cbe214)
- list container (077d696)
- list diff calculator (d2c3eea)
- list init (29c4d20)
- list push_front (5743f8d)
- loro use auto commit transaction (47d1bb6)
- LoroValue Binary (331dc6c)
- make capacity adjustable (92434cc)
- make getting child container handler simple (#104) (b22bd98)
- map basic (a44a3cd)
- map container (aa9590b)
- map transaction (4652d83)
- mermaid (77065bf)
- minor: add a min match size (e8ca8d6)
- movable tree support (#120) (e01e984)
- new map diff and map state (4a8ce16)
- new rle vec (1c5cd94)
- notify (72599b9)
- op iter (6c61c6b)
- pending bk (fdacd62)
- pending import (c1a72c3)
- pending remote changes, todo snapshot (80a9d12)
- pending snapshot (c34df16)
- Peritext-like rich text support (#123) (d942e3d)
- pin (10bac8c)
- readonly arena (cc4e1d0)
- record diff in app state (7f3bd5b)
- record hierarchical info (9bdb6b9)
- recursive emit events (fbebb5b)
- recursive map type; but perf becomes worse (3d2ea64)
- remove gc (99c8529)
- replace notify set range method (bd30f67)
- return cursor in iter (0d99ceb)
- reuse tracker (a1d1517)
- rle (2c7e2de)
- rle tree insert (028e3ba)
- root subscriber & apply event to value (aaf4e68)
- set range (bf8973c)
- setup framework (fb27c16)
- simple export and import (5c47f2e)
- state snapshot (2fedf8d)
- state snapshot import (85865e5)
- subscribe for container events (470d23a)
- subscribe unsubscribe (e153f11)
- supply-chain safety with cargo-vet (1252bcd)
- support richtext in wasm & mark text with arbitrary value (#142) (a40b5c6), closes #139
- support txn abort for states (fd588be)
- supports setting capacity (346117f)
- text transaction (46e2c5a)
- text utf16 (00dbf06)
- to json and from json (154ddfc)
- transaction decode (0ff122b)
- txn apply local op (4634f0d)
- update at cursor pos (374e323)
- update columnar (5b0f3e3)
- use columnar iterable (a1c3eea)
- use ContainerTrait (9fefd75)
- use text tracker diff (c50294a)
- use the same api for container and temp container (4bb3ea8)
- wasm encode decode basic (91e7b3a)
- wasm transaction (ce00729)
- wasm: get deep value (66d74c1)
- wasm: root subscribe & unsubscribe (572fe85)
Bug Fixes
- decode snapshot after pending (4a1f4e8)
- a few common ancestors bugs (906aebf)
- a few recursive bugs (0fac770)
- a weird deps bug (b1d438d)
- adapt crdt-list change (a7ce6dd)
- add 2 site tests & fix update cursor bug (b099b45)
- add compress (3727fb7)
- add debug info & reduce 40% mem usage (1e9d576)
- add err when updates cannot be apply (e4b6c5b)
- add event diff test & fix related bugs (0a421d3)
- add local info (f9f556f)
- add root tracking test & and fix several related bugs (06d53dd)
- add safety comment to rle (9240ad1)
- all vv and head vv error (18235db)
- all_vv update (8dbdf04)
- allow holes exist in tracker vv (beeda6c)
- apply effects order (16dd4c7)
- avoid potential memory leak (6a2da8a)
- avoid repeatedly apply (36adcd0)
- avoid Unresolved as PrelimValue (a04d079)
- avoid zero len del in text (b805661)
- basic import export test (788808b)
- batch notify should be sorted by path length (fb8a0e2)
- better capacity setting (59d9c9b)
- better dag find common ancestor (e11e93f)
- bugs related to unknown type (3d07e7e)
- build event when commit (dd4e7d5)
- build links between leaf nodes (3fb88bd)
- cache error (8807d43)
- cache update in list diff calc (5f5db10)
- calculate lamport by deps (e418978)
- cap (6546577)
- cargo fix (50b2834)
- causal iter sort (73bc9a7)
- change deps bug (6dcd9d1)
- changes traveler bug (3551bc4)
- check err (6a8087c)
- checkout result err (05f8023)
- client idx use Rle (e048224)
- columnar iter name (0b64a56)
- commit txn when dropping (93a52ba)
- common ancestor step 1 (352ddc1)
- compress flag (b3420e4)
- container id should be converted to js string (f27786f)
- container length is inconsistent when fuzzing caused by decode (95ad837)
- container may be deleted from doc when editing (bc66583)
- crdt-list yata integrate err (4213d4c)
- cursor get_sliced should have len > 0 (9d31605)
- cursor should be invalidated (65d6f4f)
- cursor should not use Deref (a93d9f7)
- dag (78faec3)
- dag issues (8db4778)
- dag partial iter bug (6473d9c)
- dead lock on list (b94274d)
- decode batch (#54) (625771c)
- decode deps (45c1a2e)
- decode hierarchy for snapshot mode (4748e1d)
- decode notify (27eb840)
- decode remove unknown (eb8a076)
- decode unknown (89a2659)
- delete span iter bug (ec4e192)
- delta compose delete insert (c4a62be)
- DeltaValue trait add length (25c1f44)
- deno tests (e01b695)
- dep counter (b8e27dc)
- dep is in merged pending change (d4f786e)
- diff calc err (e15e207)
- effect iter, get_cursor_at_id_span bug (b057201)
- empty doc with pending decode snapshot (7b012de)
- empty input (8bb427a)
- encode enhanced pending changes (a77bf2f)
- encode use dep_on_self (5b22a1e)
- encode when only create container but no op (f468e3b)
- encode_from no compression by default (#77) (1002c9c)
- encoding (889f564)
- encoding error (a91b43a)
- encoding merge err (3bb2d34)
- encoding version use u8 (bfeed8f)
- export iter bug (985a8f6)
- feature err (2ecb156)
- find yspan.origin right error (5ac137c)
- find_path (15c60ae)
- first met dep may have smaller counter (fec3c27)
- fix a delete bug & init bench (9e66e2d)
- fix a encode/decode issue (3638e3d)
- fix a few bugs (61c27ca)
- fix a few bugs (5f6d663)
- fix a few import panic (1d3cd60)
- fix a few recursive_refactored bug (16ec59d)
- fix insertion err (1f0f502)
- fix lamport infer in change encode (f527de5)
- fix memory leak (b582e00)
- fix several bugs (bcc2c57)
- fix several issues detected by fuzzer (886c1cd)
- fix several iter & delete bug (5104e94)
- fix yspan merge bug (d7d626d)
- fuzz (fba6024)
- fuzz deps (e85ba3f)
- g-btree bug, fixed by upgrade dep (a52549e)
- g-btree delete leaf err (bcf81a4)
- get container by id err (b98c225)
- get cursors at id span bug (7154b5e)
- get deep value & throw mismatched context err (88003bd)
- get first cursor at id span err (46252a4)
- get is span should consider unapplied status (9080e68)
- get lamport by frontiers bug (3d3c54e)
- get path dead loop (76f995f)
- hierarchy notify (a24e284)
- impl Fugue correctly (#133) (c9cf106)
- import (f0b8cf3)
- import change slice (e6a4be5)
- import context diff should keep causal order (63bb791)
- imported changes were not mergeable (#147) (5b65963)
- insert / delete 0 length content (31b0fa3)
- insert map logic bug (d34abee)
- interface update (a20b4c9)
- it's possible to enter the no sibling state (284f1e0)
- iter bug (3eae708)
- iter bug & lamport bug & set init len for tracker (9157e75)
- iter end (90596fa)
- lamport issue (2a0f842)
- lamport order (0cbf5e2)
- lamport remove sort (033916c)
- list (c7e5c90)
- list assert err (c798662)
- list iter and slice err (882def3)
- list op merge logic (55c274d)
- list state err (fa13d1d)
- list use delta as op (d144906)
- list_op delete merge error (24773ac)
- lookup change (f0266f0)
- loro-crdt type (aadde5a)
- make directly apply faster (e7b1148)
- make encoding enhanced simpler (9b18ff9)
- make events JsValue (86057ad)
- make export less strict (6c1fef7)
- make it work for text container simple cases (26a68dc)
- make LoroCore: Send + Sync (#61) (a03c68a)
- make LoroValue serialize & deserialize compatible with json and binary (5ec8752)
- make recursive case work (f5ae229)
- make subscription work (db29178)
- make text container send&sync (39f5140)
- make text event in wasm use utf16 as index and len (#88) (3e64116)
- map apply order (8f6059d)
- map fuzz diff delete LoroValue::Null (398ddcb)
- map lamport order (b6e9983)
- map pool mapping (af29f7e)
- map version checkout err (#101) (72cc8c6)
- merge err (1ce91be)
- merge err (3ea9770)
- mermaid links fix (4a608cc)
- modify after merging (2d316b4)
- nesting notify (953a461)
- new encode format (dad7680)
- no panic when integrate an deleted container (a7f21e3)
- nodejs patch (5c0d8b7)
- not leaking closure (b0d7ad8)
- notify (77eac9e)
- notify fuzzy test (2c11846)
- op content merge (98c9360)
- op converter (c294c61)
- op counter (d1d2425)
- op iter bug (3b42c06)
- opt offset [lamport] (7c8aa72)
- origin left should points to non-deleted (7c032b6)
- other client pending import (with debug (9db061e)
- partial iter bug (037093f)
- pass dag prop test (56be50c)
- pass delta test (344bbb1)
- path reverse (870b39e)
- post delete handler (c8a83fe)
- prelim compatible with pool (4194c79)
- prelim transaction (f165e25)
- range map (96f29ee)
- redefine and fix find common ancestor (a9d57bf)
- reduce heap alloc (9c35aa2)
- reduce heap alloc (43c2860)
- reduce unsafe code (b80a70b)
- refine mermaid diagram style (bb3eb7b)
- refine rangemap interface (1933fe6)
- remove a few unsafe blocks about create cursor (02ebfbc)
- remove auto commit (04dd105)
- remove changes error freeze behavior (58fb7de)
- remove checker to container inner (73598c4)
- remove container encoding (16400dd)
- remove counter & lamport from RleUpdates encoding (ea921e4)
- remove counter & lamport from snapshot (ccfa3ee)
- remove delta clone (3a0b8d9)
- remove events when delete container (8f4b5f1)
- remove heap (e3a93be)
- remove lamport from snapshot (d87b3b9)
- remove needless check (90fe4cc)
- remove needless notify (ff9877d)
- remove needless notify (83abf39)
- remove over conservative check (139d71e)
- remove temp, add checker (4f5f809)
- remove unknown type on content (780f756)
- rename has global index (7e5c9b0)
- resolve deep value (1c7ccf2)
- return err when changes should be queued (ae730d2)
- return Err when index out of bound (532eee0)
- return none for deleted container when finding path (d2123a2)
- revert enhanced encoding (05dc62a)
- richtext event (#138) (95e6130)
- rle iter logic (4784918)
- rletree creator (0127690)
- rleUpdates lamport calculate (52dd09d)
- rm snapshot start counter (04cec60)
- seq container vv error (e385c09)
- set small range err (592199a)
- settimeout by default in subscription (94f481e)
- should be readonly when doc is in detached mode (640828b)
- should filter out non-active spans on delete (a2fcd73)
- should keep deleted container id in hierarchy (8722208)
- should notify err (c611728)
- should use slicerange in text container (114e129)
- simplify create level when apply update (81b8f2c)
- simplify get siblings (6da6cd2)
- simplify op set (bc57f01)
- slice issue (ec07825)
- snapshot container error due to temp idx (dc69267)
- snapshot encode err (#135) (8235eaa)
- snapshot encoding err (2a436e0)
- snapshot load diff (7ffac80)
- snapshot pending import (ac80775)
- snapshot unknown and change value to i64 (af6342a)
- SnapshotOp map use u32 (d2b8941)
- some suggestions about rm lamport (1743f4a)
- sort change by ord (e196e23)
- sort key -lamport (de12fc8)
- speed up encode (6020198)
- still apply op from deleted container (fcffc29)
- string fuzzy (1df1f1d)
- styling (0241567)
- test (38ccf36)
- text container heads update (93af1c7)
- text sync issues (abec22c)
- to json result (b1738e3)
- to_json resolve deep (3faaf25)
- to_json resolve deep (11292e3)
- to_json resolve deep (8a3f205)
- tracker state fix (12e2899)
- transaction (74a7aa6)
- transaction op apply (1979c23)
- tree balance issue (d36c41b)
- try merging parent after its children removed (7191668)
- try to avoid recursive lock in notification (05f19de)
- try to put origin right to an un deleted elem (0509db4)
- two sites sync issue (69521a9)
- type err (3a0c00f)
- type err (8a15d2e)
- type error (cb26a46)
- typo on op -> diff (aa151a4)
- ues try_lock (cf1f7dc)
- unsound (violate borrow stack rules) bugs detected by Miri (#32) (f757b86)
- unsubscribe (8545a0a)
- update bumpalo fix potential leaks (737c14e)
- update crate path (fbb2403)
- update deps (cc3a869)
- update leaf cache when create new elem by del (e30ba86)
- use &mut instead of BumpBox for Node (12e2937)
- use after free in heap mode when deleting (f7821f0)
- use better structure for log store access (4fc987f)
- use BTreeMap to iter node content (7ec25b3)
- use container id when converting unresolved to jsvalue (16e76ea)
- use heap mode in text state (62891e2), closes #8
- use LoroValue as json content (2e1d508)
- use LoroValue as json content (fabef2a)
- use Option as delta meta (449a772)
- use promise.then instead of timeout (32378a7)
- use split_off to take n (6fd81c8)
- use stack instead of heap (5707258)
- use topological sort for causal iter (ee22d29)
- use Transaction to decode/import (#92) (e51d6f8)
- use update encoding by default (bd3ac43)
- use utf16 by default for text in wasm (4c37235)
- utf16 len fallback to utf8 when unknown (#93) (bbcb6f3)
- utf16 query err (#151) (5a9baeb)
- vec slice bug (cf3e3ee)
- vec slice is ill defined (610a651)
- warnings (200a6dd)
- wasm add client id check (9734860)
- wasm change peerid should be bigint (48611c5)
- wasm hierarchy notify dead lock (80640ca)
- wasm interface (e124bbb)
- wasm loro class inner mutability (6a02ce1)
- wasm type convert err (3c7e939)
- yata fuzzing now works (b11fe73)
- yata fuzzing works now (7f728db)
- yata id spans generate bug (280382c)
- yspan slice bug (8406b18)