Skip to content
This repository has been archived by the owner on Feb 5, 2023. It is now read-only.

Releases: kean/Future

Future 1.4.0

27 Apr 21:25
Compare
Choose a tag to compare
  • Add Linux support - #12, by Joseph Heck
  • Increaes mininum supported platform requirements to iOS 11.0 / watchOS 4.0 / macOS 10.13 / tvOS 11.0
  • Increase minimum supported Xcode version to Xcode 11

Future 1.3.0

20 Nov 12:49
Compare
Choose a tag to compare
  • Remove FutureCompatible.swift from the framework

Future 1.2.0

20 Nov 02:41
Compare
Choose a tag to compare
  • Fix Xcode warnings – 9
  • Add Installation Guide and API Reference
  • Remove CocoaPods support
  • Drop the X

FutureX 1.1.1

01 Sep 06:09
Compare
Choose a tag to compare
  • Add a version number compatible with Swift Package Manager

FutureX 1.1

04 Aug 10:38
Compare
Choose a tag to compare
  • Replace custom Future.Result type with Swift.Result

FutureX 1.0

04 Aug 10:38
Compare
Choose a tag to compare
  • Add Swift 5.0 support
  • Add SwiftPM 5.0 support
  • Remove Swift 4.0 and Swift 4.1 support
  • Remove iOS 9, tvOS 9, watchOS 2.0, macOS 10.10 and macOS 10.11 support

FutureX 0.17

07 Apr 11:32
Compare
Choose a tag to compare

Refined on method to attach callbacks. There are just two minor changes:

  • Completion closure signature is now () -> Void instead of (Result) -> Void. Completion is designed to be used in addition to success and failure to do things like hiding activity indicators. That's why the Result variant never really made sense. If you'd like to use Result instead, use future.materialize().on { result in }.
  • Add a func on(success: (Value) -> Void) method. Now future.on { } (with a trailing closure) is inferred by the compiler to add success closure. Previously, it used to attach completion closure. This change makes it a little bit nices to attach callbacks to futures that can't produce errors (Future<_, Never>).

There is also a change in the project structure. We now use a single multi-platform target instead of four separate targets - one for each platform.

FutureX 0.16

15 Dec 08:36
Compare
Choose a tag to compare
  • Add Future initializer which takes a throwing closure: init(catching body: () throws -> Value). This feature was added in the first FutureX PR #1, thanks to @moto0000!
  • Add castError variant which takes an error type as an argument
  • Add Scheduler.default which can be used to change the default scheduler which is Scheduler.main

FutureX 0.15

24 Nov 17:07
Compare
Choose a tag to compare
  • on no longer returns Future to enable some wiggle room in the future
  • CancellationToken.noOp renamed to CancellationToken.none.
  • Add FutureCompatible and FutureExtension

FutureX 0.14

22 Nov 22:52
Compare
Choose a tag to compare
  • Method observe(on:) is more flexible, it can now be used to runs transformations like map, tryMap on a specified queue (and actually any other transformations too, it composes really well with any of them).
  • Instead of a convenience Future { succeed, fail in } we now have Future { promise in } which is consistent with the regular way you create Promise/Future pair and also more flexible and performant.
  • Inline the first callback in Promise. It's very often when there is only one callback for each Promise. These operations are now up to 15% faster.
  • Implement CustomDebugStringConvertible for Promise