Skip to content

Releases: pointfreeco/swift-custom-dump

0.11.2

19 Mar 17:00
Compare
Choose a tag to compare
  • Fixed: Prevent Xcode 15.3 release builds from crashing (#108).

Full Changelog: 0.11.1...0.11.2

1.3.0

12 Mar 21:35
f01efb2
Compare
Choose a tag to compare

What's Changed

  • Added: _CustomDiffObject now supports value types by providing an object identifier (#111).
  • Improved: Object identity/generation is now tracked in diff output (#111).
  • Infrastructure: Update Swift Tools Version to 5.7 (#111)
  • Infrastructure: Update CI (#111).
  • Infrastructure: Use swiftwasm/setup-swiftwasm instead of swiftwasm/swiftwasm-action (thanks @kateinoigakukun, #113).

New Contributors

Full Changelog: 1.2.1...1.3.0

1.2.1

27 Feb 18:25
3ce8317
Compare
Choose a tag to compare

What's Changed

  • Fixed: Prevent Xcode 15.3 release builds from crashing (#108).
  • Infrastructure: Fixed SPI config file (thanks @finestructure, #106).

New Contributors

Full Changelog: 1.2.0...1.2.1

1.2.0

09 Feb 21:53
6ea3b1b
Compare
Choose a tag to compare

What's Changed

  • Added: Experimental support for "diffable" objects (#105).
  • Infrastructure: Update documentation to use DocC (#103).

Full Changelog: 1.1.2...1.2.0

1.1.2

27 Nov 18:10
aedcf6f
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 1.1.1...1.1.2

1.1.1

31 Oct 20:40
Compare
Choose a tag to compare

What's Changed

  • Fixed: Filter properties prefixed with _$ (#100).

    Macros like @Observable can insert properties prefixed by _$ to a structure. Generally these kinds of properties should be thought of as implementation details and should be filtered from the dump.

Full Changelog: 1.1.0...1.1.1

1.1.0

19 Sep 04:54
3efbfba
Compare
Choose a tag to compare

What's Changed

  • Added: XCTAssertDifference for testing changes to values (#51).

    This function evaluates a given expression before and after a given operation and then compares the results. The comparison is done by invoking the changes closure with a mutable version of the initial value, and then asserting that the modifications made match the final value using XCTAssertNoDifference.

    For example, given a very simple counter structure, we can write a test against its incrementing functionality:

    struct Counter {
      var count = 0
      var isOdd = false
      mutating func increment() {
        self.count += 1
        self.isOdd.toggle()
      }
    }
    
    var counter = Counter()
    XCTAssertDifference(counter) {
      counter.increment()
    } changes: {
      $0.count = 1
      $0.isOdd = true
    }

    If changes does not exhaustively describe all changed fields, the assertion will fail.

    By omitting the operation you can write a "non-exhaustive" assertion against a value by describing just the fields you want to assert against in the changes closure:

    counter.increment()
    XCTAssertDifference(counter) {
      $0.count = 1
      // Don't need to further describe how `isOdd` has changed
    }
  • Infrastructure: README updates (thanks @JacksonUtsch, #96).

  • Infrastructure: Enable Windows CI (thanks @brianmichel, #99).

New Contributors

Full Changelog: 1.0.0...1.1.0

1.0.0

30 Jul 18:19
Compare
Choose a tag to compare
  • Added: First "stable" release. Custom Dump contains APIs extracted from the Composable Architecture's suite of tools, which is now considered stable. This 1.0 release will introduce a more strict adherence to semantic versioning.

Full Changelog: 0.11.1...1.0.0

0.11.1

20 Jul 14:50
Compare
Choose a tag to compare

What's Changed

  • Fixed: Show key path debug description in 5.9 (#95).

Full Changelog: 0.11.0...0.11.1

0.11.0

21 Jun 23:49
3a35f78
Compare
Choose a tag to compare

What's Changed

  • Added: Support for visionOS (thanks @rhysm94, #93; #94).
  • Added: Custom dump format for Duration (#92).

New Contributors

Full Changelog: 0.10.3...0.11.0