diff --git a/CHANGELOG.md b/CHANGELOG.md index 193d49a..57544bc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,19 @@ +## 0.0.4 + +* Upgrade to automerge rust 0.5.1 +* `Transaction` no longer has a generic parameter and the `HashAndPatches` + version is gone. Instead call `Document.startTransaction(PatchLog)` to get + patches created during the transaction. +* Added `Document.startTransactionAt` to start a transaction at a given set of + heads rather than the current heads of the document +* All the `*ForPatches` methods have been removed and replaced with overloads + which take a `PatchLog` as an argument. To obtain patches first call these + various methods, passing in a `PatchLog` and then use `Document.makePatches` + to turn the patch log into a list of patches. +* Added `Document.diff` to obtain a list of patches representing the difference + between two different sets of heads of the document. +* Make `MapEntry` public + ## 0.0.3 * Added SyncState.isInSync diff --git a/README.md b/README.md index 9e99aef..20e0161 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ Documentation is mostly just [the API docs](https://www.javadoc.io/doc/org.autom org.automerge automerge - 0.0.3 + 0.0.4 ``` @@ -23,14 +23,14 @@ Documentation is mostly just [the API docs](https://www.javadoc.io/doc/org.autom ```kotlin dependencies { - implementation group: 'org.automerge', name: 'automerge', version: "0.0.3" + implementation group: 'org.automerge', name: 'automerge', version: "0.0.4" } ``` ### Leiningen ``` - :dependencies [[org.automerge/automerge "0.0.3"]] + :dependencies [[org.automerge/automerge "0.0.4"]] ``` ## A quick example @@ -49,7 +49,7 @@ public class App { Document doc = new Document(); ObjectId text; - try(Transaction tx = doc.startTransaction()) { + try(Transaction tx = doc.startTransaction()) { // Create a text object under the "text" key of the root map text = tx.set(ObjectId.ROOT, "text", ObjectType.TEXT); tx.spliceText(text, 0, 0, "Hello world"); @@ -64,13 +64,13 @@ public class App { System.out.println(doc2.text(text).get().toString()); // Prints "Hello world" // Modify the doc in doc2 - try(Transaction tx = doc2.startTransaction()) { + try(Transaction tx = doc2.startTransaction()) { tx.spliceText(text, 5, 0, " beautiful"); tx.commit(); } // Modify the doc in doc1 - try(Transaction tx = doc.startTransaction()) { + try(Transaction tx = doc.startTransaction()) { tx.spliceText(text, 5, 0, " there"); tx.commit(); } diff --git a/android/build.gradle.kts b/android/build.gradle.kts index 1c5be1a..23597cb 100644 --- a/android/build.gradle.kts +++ b/android/build.gradle.kts @@ -101,7 +101,7 @@ publishing { register("automerge") { groupId = "org.automerge" artifactId = "androidnative" - version = "0.0.3" + version = "0.0.4" afterEvaluate { from(components["release"]) } diff --git a/lib/build.gradle.kts b/lib/build.gradle.kts index 9502102..5420673 100644 --- a/lib/build.gradle.kts +++ b/lib/build.gradle.kts @@ -72,7 +72,7 @@ spotless { } } -project.version = "0.0.3" +project.version = "0.0.4" repositories { mavenCentral() diff --git a/rust/Cargo.toml b/rust/Cargo.toml index 8ef0add..9eb8b16 100644 --- a/rust/Cargo.toml +++ b/rust/Cargo.toml @@ -2,7 +2,7 @@ [package] name = "automerge_jni" -version = "0.1.0" +version = "0.2.0" edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html