Skip to content

Releases: Quick/Nimble

v13.0.0-rc.1

02 Oct 20:45
v13.0.0-rc.1
Compare
Choose a tag to compare
v13.0.0-rc.1 Pre-release
Pre-release

Highlights

New Features

  • Nimble now supports Windows! (Thanks @brianmichel!)
  • the Predicate series of APIs has been renamed to Matcher. There are typealiases for the older APIs to better enable migrations. These typealiases will be marked as removed in the next major version of Nimble (Nimble 14), and they will be removed entirely in Nimble 15.
  • Nimble now supports the DriverKit platform.

Breaking Changes

  • The Predicate series of APIs have been renamed.
  • The AsyncDefaults struct is now marked as removed. It will be fully removed in the next major version of Nimble.
  • The platform-independent targets in Nimble.xcodeproj have now been consolidated into a single Nimble (and NimbleTests) target.

Automated Release Notes

What's Changed

New Contributors

Full Changelog: v12.3.0...v13.0.0-rc.1

v12.3.0

17 Sep 04:54
v12.3.0
Compare
Choose a tag to compare

Highlights

  • the async variant of toEventually no longer kicks off unstructured background tasks to check that the matcher matches. This means that there will no longer be the possibility that the same value will be being checked by multiples of the same matcher.

What's Changed

Full Changelog: v12.2.0...v12.3.0

v12.2.0

28 Jul 15:34
v12.2.0
Compare
Choose a tag to compare

Highlights

the equal matcher now supports arrays of tuples. For example:

expect([
    (1, 2),
    (3, 4)
]).to(equal([
    (1, 2),
    (3, 4)
]))

Thanks @faroman for their contribution!

Automatically Generated Release Notes

What's Changed

New Contributors

Full Changelog: v12.1.0...v12.2.0

v12.1.0 - AsyncPredicate

15 Jul 05:48
Compare
Choose a tag to compare

Highlights

  • You can now create Predicates that run in async contexts.

What's Changed

New Contributors

Full Changelog: v12.0.1...v12.1.0

v12.0.1

01 Jun 22:45
Compare
Choose a tag to compare

What's Changed

Full Changelog: v12.0.0...v12.0.1

v12.0.0

14 Apr 16:57
Compare
Choose a tag to compare

Nimble 12 adds the ability to using polling expectations with async expressions. Additionally, Nimble 12 includes a number of quality-of-life improvements and bug fixes.

What's Changed

  • Update the README to have an accurate usage of expect by @younata in #1038
  • Allow usage of toEventually with async expressions by @younata in #1039
  • Replace public usage of DispatchTimeInterval with a new NimbleTimeInterval by @younata in #1042
  • Make NimbleTimeInterval.dispatchTimeInterval public by @younata in #1043
  • Run SyncExpectation's expression in async contexts of toEventually on the main actor. by @younata in #1044
  • satisfyAllOf and satisfyAnyOf should only evaluate the expression once. by @younata in #1045
  • Rename AsyncDefaults to PollingDefaults by @younata in #1023
  • Fixed Swift.package: added macCatalyst to the condition for CwlPreconditionTesting dependency by @uebelack in #1048
  • Raise minimum watchos deployment target to 7.0 by @younata in #1050
  • Feature/handle multithreaded notifications by @johnmckerrell and @younata in #1051
  • Objective-C support in the Swift Package version by @younata in #1005
  • Update documentation in preparation for Nimble 12 by @younata in #1052

New Contributors

Full Changelog: v11.2.2...v12.0.0

v11.2.2

04 Apr 15:46
Compare
Choose a tag to compare

Highlights

Nimble v11.2.2 is a minor bug fix release which fixes the build on Xcode 14.3 and Wasm.

Thanks to @dymv for fixing the Xcode 14.3 build and to @ikesyo for fixing the wasm build!

Autogenerated Changelog

What's Changed

New Contributors

Full Changelog: v11.2.1...v11.2.2

v11.2.1

18 Nov 01:08
Compare
Choose a tag to compare

Fixed tripping the main thread checker in async toEventually checks. Your CI should no longer report that tests erroneously crashed because the expression's debugDescription dared to reference something that needed to run on the main thread.

What's Changed

  • Add documentation on recommended ways to configure AsyncDefaults by @younata in #1022
  • Ensure that stringify'ing an expression as part of the async/await polling infrastructure always happens on the main thread by @younata in #1024

Full Changelog: v11.2.0...v11.2.1

v11.2.0

12 Nov 01:39
Compare
Choose a tag to compare

Improved developer experience by allowing you to use the sync form of expect in a test that has other usage of async test. i.e. the following code compiles again:

class MyTest: XCTestCase {
    func testExample() {
        await someAsyncFunction()
        expect(someValue).to(equal(expectedValue))
    }
}

What's Changed

  • Remove autoclosure tag with async expectations by @younata in #1020

Full Changelog: v11.1.1...v11.2.0

v11.1.1

11 Nov 06:56
Compare
Choose a tag to compare

What's Changed

  • Fix regression where named tuples could not be compared with unnamed tuples of the same types using the == operator by @younata in #1017
  • Use uncached expression in the async versions of toEventually by @younata in #1018

Full Changelog: v11.1.0...v11.1.1