Skip to content

Releases: automerge/automerge-swift

0.5.18

13 Jul 21:25
410b1d1
Compare
Choose a tag to compare

NOTE:

  • The implementation that provides concurrency protection for the core Rust library has been updated in this release, which - by testing so far - is correct and hasn't exhibited any issues. If you see any deadlocks or other multi-thread issues when working with Automerge documents, please open an issue immediately.

What's Changed

New Contributors

Full Changelog: 0.5.17...0.5.18

0.5.17

14 Jun 22:04
Compare
Choose a tag to compare

What's Changed

  • updating mark API to align with core library, exposing split_block and join_block through to Swift by @heckj in #171
  • exposing Automerge::get_marks through to Swift by @miguelangel-dev in #186

Full Changelog: 0.5.16...0.5.17

0.5.16

07 Jun 14:36
Compare
Choose a tag to compare

What's Changed

  • project layout notes by @heckj in #172
  • pushing updates on CI to set up for Swift 5.9 minimum target by @heckj in #175
  • Rust dev notes by @heckj in #176
  • AutomergeUniffi compile target for visionos and visionos-simulator by @cklokmose in #174
  • shifts the objectWillChange call to prior to, and outside of, the synchronous DispatchQueue access to Document by @heckj in #179
  • reword the top of the README by @heckj in #180
  • add marker file that disables compatibility matrix for Swift on Linux at Swift Package Index by @heckj in #181
  • adding explicit rebuild flow to WASM/WASI testing flow on Linux by @heckj in #185
  • exposing Automerge::Diff through to Swift by @miguelangel-dev in #183

New Contributors

Full Changelog: 0.5.15...0.5.16

0.5.15

08 May 16:46
Compare
Choose a tag to compare

What's Changed

  • Re-release 0.5.14 with a new hashcode - release 0.5.14 has an invalid binary report
  • updating toolchain for CI runs - to rust 1.75 by @heckj in #170

Full Changelog: 0.5.14...0.5.15

0.5.14

07 May 23:32
Compare
Choose a tag to compare

❌ PLEASE UPDATE TO RELEASE 0.5.15 ❌
This release has a misalignment with the hash in Package.swift, or corruption of the XCFramework. Not sure which, so re-released as 0.5.15

What's Changed

  • Sendable log verbosity by @heckj in #157
  • adding a few helper methods on LogVerbosity by @heckj in #159
  • sendable conformance for AutomergeText and Counter by @heckj in #160
  • promote LogVerbosity for external use, fix lingering doc warnings by @heckj in #161
  • making all error LocalizedError to expose internal messages by @heckj in #162
  • removing redundant change signals that triggered document updates by @heckj in #163
  • Updating bindings for Counter and AutomergeText to only fiddle with D… by @heckj in #164
  • adding path location to AutomergeText instances to expose what's updating by @heckj in #165
  • noisy callstack frame debugging by @heckj in #166
  • reverting out overzealous trace logging by @heckj in #168
  • Update to Rust core library version 0.5.11, which resolves a corruption bug with Automerge documents.

Full Changelog: 0.5.13...0.5.14

0.5.13

01 May 22:22
Compare
Choose a tag to compare

❌ PLEASE UPDATE TO RELEASE 0.5.15 ❌

this release unfortunately includes a corruption bug within the core library: automerge/automerge#920

What's Changed

  • minor re-org on documentation by @heckj in #144
  • adds explanatory detail for AutomergeText by @heckj in #146
  • adds binding of Automerge text on any invocation of encode by @heckj in #147
  • AutomergeText and Counter reflect any change to a doc by @heckj in #150
  • Fix error when decoding int as double by @bgomberg in #153
  • Isolated change signal by @heckj in #154
  • 0.5.10 core library update by @heckj in #155

Full Changelog: 0.5.12...0.5.13

0.5.12

04 Apr 18:03
Compare
Choose a tag to compare

BREAKING CHANGES

This release resolves a cross-platform representation mismatch of Dates (the Automerge .timestamp scalar value), documented at #139. When I implemented the swift overlay, I missed that the Int64 value stored was in milliseconds, instead of seconds, so the date conversions for cross-platform were being incorrectly interpreted.

The effect of this is that dates from other platforms were interpretted incorrectly. Now with the fix, dates you have in existing Automerge documents that were created with earlier versions of this swift framework will be incorrect, as they were stored with the expectations of seconds since epoch rather than milliseonds since epoch. If you're using any timestamps/dates in your models, the workaround to fix previously encoded data is to read the raw scalar value from the document and multiply or divide the value (depending on which way you're going) by 1000 to get to a corrected value.

What's Changed

New Contributors

Full Changelog: 0.5.11...0.5.12

0.5.11

23 Mar 16:09
Compare
Choose a tag to compare

Updates Automerge-core to 0.5.9, which resolves a document corruption but found in the 0.5.8 core automerge library release

Full Changelog: 0.5.10...0.5.11

0.5.10

22 Mar 00:58
Compare
Choose a tag to compare

DO NOT USE - CORRUPTION BUG, please update to 0.5.11

What's Changed

  • Added public initializer to ActorId and tests to validate setting actor property by @bgomberg in #132
  • Actor id docs by @heckj in #133
  • Update to use Automerge core 0.5.8 by @heckj in #134

Automerge core library 0.5.8 includes:

  • Fix a bug where the logic to rollback a transaction on error could panic
  • Fix a bug where marks were calculated incorrectly when viewing a document at a particular set of heads (i.e. not the "current" heads)
  • Update the LoadOptions::migrate_strings logic to no-op if there are no strings to convert

Full Changelog: 0.5.9...0.5.10

0.5.9

15 Mar 18:11
Compare
Choose a tag to compare

What's Changed

  • adding tests that verify some invariants by @heckj in #128
  • Layered api doc update by @heckj in #127
  • Added commitWith() method to specify message/timestamp and exposing changes via changeByHash() by @bgomberg in #129
  • Change docupdates by @heckj in #130
  • Cleanup by @heckj in #131

New Contributors

Full Changelog: 0.5.8...0.5.9