Releases: ReactiveX/RxSwift
TheyreBack
500 π
What's Changed
Members of the community made bug fixes, updates, and contributions:
- Fix missing PrivacyInfo.xcprivacy in Carthage/xcframework by @pallzoltan in #2652
- Fix possibly stack overflow in merge operators by @geoffmacd in #2616
- Allow VirtualTimeScheduler to run on any thread (swift-testing enabler) by @danielt1263 in #2610
- Fix missing CoreFoundation import for NSLock in Linux builds by @clackary in #2643
- Hardcode light appearance in example app by @VAndrJ in #2612
- Fix a typo in SwiftConcurrency docs by @chagmn in #2644
BringThemHome ποΈ
What's Changed
-
We've added an Empty Privacy Manifest to the framework. We are not actually required for a privacy manifest since we don't collect any information, but Apple keeps accidentally tagging the project as problematic, so we've added an empty one :)
-
You can now create a
Singlefrom an async piece of work, for example:
func doIncredibleWork() async throws -> AmazingResponse {
...
}
let single = Single.create {
try await doIncredibleWork()
} // Single<AmazingResponse>Along with our other existing bridging methods - we now cover the full range of use cases for interchangeably working with RxSwift and Swift Concurrency in a code base (AsyncStream -> Observable, Observable -> AsyncStream, Single -> awaitable value, awaitable value -> Single).
Check out the updated documentation for more details.
Members of the community have also made other bug fixes, updates, and contributions:
- Add Sendable conformance to AtomicInt by @marcelofabri in #2624
- Add the deployment_target for visionOS in Podspec by @sanghun0724 in #2603
- Update links for repositories moved to the swiftlang org on GitHub by @lamtrinhdev in #2614
- Bump up swift-tools-version to 5.5 by @adincebic in #2608
- Support .editorConfig for consistent code formatting by @TTOzzi in #2626
- Tidied up some code using optional map by @BenMaer in #2549
- Fix a typo from SwiftConcurrency.md by @HeegeePark in #2623
- Don't retain receiver of Completable.andThen beyond its completion by @nikolaykasyanov in #2604
- Added some documentations to AsyncLock file by @herlandro in #2627
New Contributors
- @adincebic made their first contribution in #2608
- @lamtrinhdev made their first contribution in #2614
- @BenMaer made their first contribution in #2549
- @HeegeePark made their first contribution in #2623
- @nikolaykasyanov made their first contribution in #2604
- @herlandro made their first contribution in #2627
Full Changelog: 6.7.1...6.8.0
Seder.1 πΎ
RxSwift 6.7.1 πΎ
- Fixed an issue preventing RxSwift to build on visionOS
Seder πΎ
RxSwift 6.7.0 πΎ
- Add support for visionOS (Thanks @nighthawk) #2564
- Align CocoaPods macOS deployment target to 10.10 (Like SPM)
- Link XCTest weakly on CocoaPods to allow static linking (Thanks @mkj-is) #2587
- Fix and align factory closure runtimes (Thanks @danielt1263) #2534
- Fix a possible crash in RxDelegateProxy (Thanks @sejal-hotstar) #2546
- Fix release build warning from missing explicit imports (Thanks @drewster99) #2555
- Various code formatting and documentation fixes (Thanks @sanghun0724, @nicholaskim94, @fanqiaojun, @honghoker, @annie-gupta, @woin2ee, @danielt1263)
Onyx πͺ¨
RxSwift 6.6.0 πͺ¨
- New helpful conversions to
Infallible - Fix an issue with continuation leak for
async/awaitbridge - Improve atomicity of
BooleanDisposable - Crash workaround for
Table/CollectionViewDelegateProxy - New
Infalliblehelpers forCombineLatest - More minor fixes and updates
- Support catalyst for xcframework distribution
Atlas
RxSwift 6.5.0 - Swift Concurrency is here! ππ―
You can now use await on Observable-conforming objects (as well as Driver, Signal, Infallible, Single, Completable) using the following syntax:
do {
for try await value in observable.values {
print(value) // Next event
}
// Completed here
} catch {
// Error event
print("An error occurred:", error.localizedDescription)
}Check out the full documentation for additional information: https://github.com/ReactiveX/RxSwift/blob/main/Documentation/SwiftConcurrency.md
Ethan.2
5.Throwback
RxSwift 5.1.3 is a patch release to provide support for Xcode 12.5 for those who are still using RxSwift 5.x.
We recommend upgrading to RxSwift 6.x as soon as possible, regardless.
Ethan.1
RxSwift 6.1
Thanks to @iDevid, @marcelofabri, @faimin and @danielt1263 for their contributions to this release π€ π―
Breaking Changes π₯
- Deprecate withUnretained for
Driver
Note: It is extremely rare to ship a breaking change in a patch release, but this is a relatively fresh feature with unusual circumstances. For the full story, see #2290.
Other changes π
- Add new
subscribe(with:onNext:onError:onCompleted:onDisposed:)alternatives towithUnretained. This exists for all traits and types:Observable,Driver,Signal,Infallible,Completable,Single,Maybe#2290 Reactivenow supports structs and value-types again, with the dynamic look-up specifically dealing withAnyObjects #2285- Fix xcframework support for
RxCocoa(Drag in new RxCocoaRuntime.xcframework alongsideRxCocoa) - Freeze
MaybeEventandCompletableEvent#2271 #2272 - Fix missing RxCocoaRuntime.h header in
RxCocoapodspec #2281 - Remove invalid libswiftXCTest.dylib linking to support Xcode 12.5
- Print URLRequest body
httpBody, regardless of HTTP Method #2288