Skip to content

Releases: automerge/automerge-swift

0.6.0

24 Jan 16:55
Compare
Choose a tag to compare

The major update is that Automerge documents now accept a text encoding mechanism to identify the type of encoding (UTF-8, UTF-16, UnicodeScalar, etc) that an Automerge document uses internally, in support of broader cross-platform and cross-language interoperability, specifically with WASM. Because this is a foundational change to the constructor, the major version has been incremented, both here and upstream in the Rust core library, to 0.6.0.

What's Changed

Full Changelog: 0.5.18...0.6.0

0.5.19

26 Oct 20:46
Compare
Choose a tag to compare

What's Changed

Full Changelog: 0.5.18...0.5.19

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