Releases: CombineCommunity/CombineExt
CombineExt 1.9.0
This version includes some code cleanups and fixes. I've also decided to stop supporting CocoaPods and Carthage due to its low demand volume and the maintenance burden it creates, and focusing on SPM solely for now.
CombineExt 1.8.1
This patch release bumps combine-schedulers and removed an unneeded exported import of Foundation.
CombineExt 1.8.0
This version includes several bug fixes and new operators:
- Fixes some stubborn memory leaks in CurrentValueRelay (#137) and WithLatestFrom (#129) - Thanks @jasdeepsaini & @TTOzzi !
- Adds missing files to the project which prevented Carthage from building (#133) - Thanks @jasdeepsaini !
- Fix a replay synchronization issue in ReplaySubject (#138) - Thanks @mruston-heb !
- New
flatMapFirstoperator (#119) - Thanks @troupmar - New
prefix(while:behavior:)operator (#70) - Thanks @jasdev - New
mapToVoidoperator (#129) - Thanks @danshevluk
CombineExt 1.7.0
This version introduces two changes:
- New divide-and-conquer based algorithms to optimize the usage of
CombineLatestManyandZipManywhen working with massive (tens of thousands and up) of publishers. - Update the version of combine-schedulers in our test suite.
CombineExt 1.6.1
This release is identical to 1.6.0 with the critical fix introduced in #128.
1.6.0 used an overload of map(to:) which the Swift compiler confuses with the closure-based map(_:) operator.
This version renames it to mapToValue(_:).
CombineExt 1.6.0
- Add
retry(when:)(Thanks @danielt1263) - Add
enumerated()(Thanks @mihai8804858) - Add
map(to:)(Thanks @danhalliday) - Fix a memory leak in
withLatestFrom(Thanks @bharath2020) - Fix an issue with
share(replay:)(Thanks @jabeattie @mRs-)
CombineExt 1.5.1
This PR reverts withLatestFrom to the previous implementation, since the composed (new) implementation was misbehaving in some scenarios.
CombineExt 1.5.0
A Swift 5.5 and Xcode 13 compatible release
- Add mapToResult
- Replace the implementation of withLatestFrom with a new composed variation
- Fix a leak in share(replay:)
- Fix carthage & archiving builds for Xcode 13
CombineExt 1.3.0
CombineExt 1.3.0
It's been a long time since the last release, and this one packs a great deal of changes and updates :)
Thanks to all of the wonderful contributors who worked on this release: @kitwtnb, @jasdev, @basvankuijck, @joewalsh, @dsk1306, @HugoSay
Changes
- Add
Collection.flatMapBatches(of:)to subscribe an array of publishers in batches (for example, processing batches of 3 requests at a time) - Add
toggle()operator to toggle Boolean publishers - Add
nwise()andpairwise()operators to batch groups of elements - Add
Collection.merge()to merge a collection of equally-typed publishers - Add
filterManyoperator to filter publishers that emits collections - Add
ignoreOutput(setOutputType:)to drop all elements, and altering the Publisher's output type - Add
ignoreFailure(setFailureType::completeImmediately:)to ignore a failure, and alter the Publisher's failure type - Fix locking of
ReplaySubject
CombineExt 1.2.0
CombineExt 1.2.0 is packed with many awesome additions !
Thanks to @jasdev, @jdisho, @RonKliffer, @ohayon and @dsk1306 for their incredible contributions to this release.
Let's break it down:
- Improve
.createergonomics and support returning aAnyCancellable[#24] - Add
ownershipargument toassignso you can doassign(to: \.text, on: label, ownership: .weak)(Ownership supports.weak,.unownedand.strong) [#30] - Add
ReplaySubject[#23] - Add
share(replay:)[#23] - Add
withLatestFromfor up to 4 publishers [#22] - Add
prefix(duration:tolerance:in:options:)to limit the duration for accepting values [#27] - Add a
Collection.amb()operators to race a Collection of publishers [#31] - Add
Optional.publisherproperty as a shorthand toOptional.Publisher.init[#32] - Drop deployment target to iOS 10, tvOS 10, watchOS 3 and macOS 10.12 - to support older apps using Combine conditionally [#29]