diff --git a/pages/changelog/v1.1.0.mdx b/pages/changelog/v1.1.0.mdx new file mode 100644 index 0000000..7a7cb2a --- /dev/null +++ b/pages/changelog/v1.1.0.mdx @@ -0,0 +1,45 @@ +--- +version: "v1.1.0" +title: "release v1.1.0" +date: 2024/11/09 +--- + +## New + +### LoroDoc + +- `forkAt(frontiers: Frontiers)`: Fork the document at the given frontiers. +- `getChangedContainersIn(id: ID, len: number)`: Gets container IDs modified in the given ID range. +- `` + +### LoroText + +- `getEditorOf(pos: number)`: Get the editor of the text at the given position. +- `push(s: string)`: Push a string to the end of the text. + + +### LoroMap + +- `getLastEditor(key: string)`: Get the peer id of the last editor on the given entry + +### LoroList + +- `getIdAt(pos: number)`: Get the ID of the list item at the given position. +- `pushContainer(child: Container)`: Push a container to the end of the list. + +### LoroMovableList + +- `getCreatorAt(pos: number)`: Get the creator of the list item at the given position. +- `getLastMoverAt(pos: number)`: Get the last mover of the list item at the given position. +- `getLastEditorAt(pos: number)`: Get the last editor of the list item at the given position. +- `pushContainer(child: Container)`: Push a container to the end of the list. + +### LoroTree + +- `toJSON()`: Get JSON format of the LoroTreeNode. + +## Fix + +- fix get correct encode blob info [#545](https://github.com/loro-dev/loro/pull/545) +- fix: avoid creating non-root containers that doesn't exist by get_container api [#541](https://github.com/loro-dev/loro/pull/541) +- fix: define the fork behavior when the doc is detached [#537](https://github.com/loro-dev/loro/pull/537) diff --git a/pages/changelog/v1.2.0.mdx b/pages/changelog/v1.2.0.mdx new file mode 100644 index 0000000..84391e0 --- /dev/null +++ b/pages/changelog/v1.2.0.mdx @@ -0,0 +1,32 @@ +--- +version: "v1.2.0" +title: "release v1.2.0" +date: 2024/12/10 +--- + +## New + +- Add `isDeleted()` method to all container types (Text, Map, List, Tree, etc.) + +### LoroDoc + +- `changeCount()`: Get the number of changes in the oplog. +- `opCount()`: Get the number of ops in the oplog. + +### VersionVector + +- `setEnd(id: ID)`: Set the exclusive ending point. target id will NOT be included by self. +- `setLast(id: ID)`: Set the inclusive ending point. target id will be included. +- `remove(peer: PeerID)`: Remove the specific peer id. +- `length()`: Get the number of peers in the VersionVector. + +## Change + +- Return `ImportStatus` in the `importUpdateBatch` method. +- Fractional index is enabled by default now. + + +## Fix + +- fix: getOrCreateContainer should not throw if value is null [#576](https://github.com/loro-dev/loro/pull/576) +- fix: dead loop when importing updates [#570](https://github.com/loro-dev/loro/pull/570) \ No newline at end of file diff --git a/pages/changelog/v1.3.0.mdx b/pages/changelog/v1.3.0.mdx new file mode 100644 index 0000000..44abc8c --- /dev/null +++ b/pages/changelog/v1.3.0.mdx @@ -0,0 +1,25 @@ +--- +version: "v1.3.0" +title: "release v1.3.0" +date: 2025/01/09 +--- + +## New + +- UndoManager's `onPush` now can access the change event. +- add getShallowValue for each container. + +### LoroDoc + +- `toJsonWithReplacer(replacer: (k, v)=>Value)`: Convert the document to a JSON value with a custom replacer function. +- `revertTo(frontiers: Frontiers)`: Revert the document to the given frontiers. +- `findIdSpansBetween(from: Frontiers, to: Frontiers)`: Find the op id spans that between the `from` version and the `to` version. +- `exportJsonInIdSpan(idSpan: IdSpan)`: Export the readable [`Change`]s in the given [`IdSpan`]. + +## Fix + +- fix: prevent merging remote changes based on local `changeMergeInterval` config [#643](https://github.com/loro-dev/loro/pull/643) +- fix: should commit before travel_change_ancestors [#599](https://github.com/loro-dev/loro/pull/599) +- fix: panic when detach then attach [#592](https://github.com/loro-dev/loro/pull/592) +- fix: move child in current parent [#589](https://github.com/loro-dev/loro/pull/589) +- fix: panic when returned non-boolean value from text.iter(f) [#578](https://github.com/loro-dev/loro/pull/578) \ No newline at end of file diff --git a/pages/changelog/v1.4.0.mdx b/pages/changelog/v1.4.0.mdx new file mode 100644 index 0000000..ae0b883 --- /dev/null +++ b/pages/changelog/v1.4.0.mdx @@ -0,0 +1,16 @@ +--- +version: "v1.4.0" +title: "release v1.4.0" +date: 2025/02/13 +--- + +## New + +- add `unsubscribe()` for Subscription. + +## Fix + +- fix: getting values by path in LoroTree [#643](https://github.com/loro-dev/loro/pull/643) +- fix: should be able to call subscription after diffing [#637] +- fix: update long text may fail [#633](https://github.com/loro-dev/loro/pull/633) +- fix: map.keys() may return keys from deleted entries [#618](https://github.com/loro-dev/loro/pull/618) \ No newline at end of file diff --git a/pages/changelog/v1.4.7.mdx b/pages/changelog/v1.4.7.mdx new file mode 100644 index 0000000..ff35bd1 --- /dev/null +++ b/pages/changelog/v1.4.7.mdx @@ -0,0 +1,22 @@ +--- +version: "v1.4.7" +title: "release v1.4.7" +date: 2025/04/01 +--- + +## New + +- You can get the version of Loro by `LORO_VERSION` +- `setNextCommitOrigin(origin: string)`: Set the origin of the next commit. +- `setNextCommitTimestamp(timestamp: number)`: Set the timestamp of the next commit. +- `setNextCommitOptions(options: CommitOption)`: Set the options of the next commit. +- `clearNextCommitOptions()`: Clear the options of the next commit. +- `configDefaultTextStyle(style: TextStyle)`: Configures the default text style for the document. +- `getUncommittedOpsAsJson()`: Get the pending operations from the current transaction in JSON format + +## Fix + +- fix: memory leak issue [#647](https://github.com/loro-dev/loro/pull/647) +- fix: mark err on detached LoroText [#659](https://github.com/loro-dev/loro/pull/659) +- fix: detached loro text issues [#665](https://github.com/loro-dev/loro/pull/665) +- fix: entity index when the tree is empty [#670](https://github.com/loro-dev/loro/pull/670) \ No newline at end of file