Skip to content

Releases: jakehawken/Propagate

1.5.0

14 Aug 16:49
5d0469e
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.4.0...v1.5.0

1.4.0

29 Jul 16:43
0eefaa9
Compare
Choose a tag to compare

What's Changed

  • Minor format/consistency updates to logging. by @jakehawken in #5

Full Changelog: v1.3.1...v1.4.0

1.3.1

27 Jul 06:37
1b65460
Compare
Choose a tag to compare

What's Changed

  • Updated how Propagate log messages are displayed. by @jakehawken in #4

Full Changelog: v1.3.0...v1.3.1

1.3.0

26 Jul 08:08
7692063
Compare
Choose a tag to compare

What's Changed

  • Updated logging to include external hook for extended logging functionality. by @jakehawken in #3

Full Changelog: v1.2.5...v1.3.0

1.2.5

19 Jul 23:49
69988dd
Compare
Choose a tag to compare

What's Changed

  • Fix for bug where onSuccess does not always respect the specified queue. by @jakehawken in #2

Full Changelog: v1.2.4...v1.2.5

1.2.4

19 Jul 20:29
95bc274
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.2.3...v1.2.4

1.2.3

11 Jul 01:25
Compare
Choose a tag to compare

I believe the issues around Future.merge(_:) have been fixed as I realized that the root cause was that the callbacks all executed on the same thread as the resolution of the promise, resulting in a deadlock. This release also reverts the broken state of the previous release.

1.2.2

10 Jul 23:40
Compare
Choose a tag to compare

Another attempt at resolving threading issues regarding the completion of futures, by way of using async instead of sync on the internal queue of a Future.

1.2.1

10 Jul 23:22
Compare
Choose a tag to compare

(Hopefully) fixed some threading issues related to merging Futures.

1.2.0

08 Jun 06:27
Compare
Choose a tag to compare

Additions:

  • DEBUGGING! Users can now add the .debug(logLevel:_:) method during development to more easily debug issues with Publishers and Subscribers. Both arguments have default values, so if you just want to drink from the firehose of logs, you can simply call .debug().
  • Added combine methods for up to 6 separate items on Future and Subscriber, and added instance method versions for all 6.
  • Added ability for UpdateOnlySubscriber and ValueOnlySubscriber to be inflated back to regular Subscribers
  • Added combine methods to ValueOnlySubscriber.
  • Added a distinctValues() method for ValueOnlySubscribers where T is Equatable.
  • Added splitErrorMap() method to Future.
  • Added splitMapValues(_:) and splitMapErrors(_:) methods to Subscriber to match the methods on Future.
  • Added self reference to valueOnly() method to allow for easier chaining of operators without having to retain a reference to the intervening Subscriber.

Changes:

  • Updated the subscription methods on UpdateOnlySubscriber and ValueOnlySubscriber to return self for easier chaining.
  • Updated combine methods on Subscriber to retain a reference to the source subscribers.
  • Updated ValueOnlySubscriber to call cancel() on deinit.
  • Updated name of mapState to mapStates on Subscriber to be more semantically accurate.
  • Updated subscribe(onQueue:performing:) to call a given callback immediately with .cancelled if the subscriber has been cancelled.
  • Updated Subscriber to immediately trigger it's own .cancelled event on cancel().
  • Updated executeCallbacks(forState:) to no-op if isCancelled is true.
  • Updated subscribe(onQueue:performing:) to exit early and not save the callback if isCancelled is true.

Fixes:

  • Fixed bug on UpdateOnlySubscriber and ValueOnlySubscriber so that all of their subscription methods return @discardableResult self.