Swiftpack.co - Search 16,224 Swift Packages

We do our best to crawl github for new packages, but you can also register a package manually.

jonrohan Something's broken? Yell at me @ptrpavlik. Praise and feedback (and money) is also welcome.

The Best of Last 7 Days

SDWebImage/SDWebImage 5.18.2
Asynchronous image downloader with cache support as a UIImageView category
⭐️ 24,683
🕓 4 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
5.18.2 - 5.18 Fix
4 days ago
See [all tickets marked for the 5.18.2 release](https://github.com/SDWebImage/SDWebImage/milestone/121) ### Fixes - Fix the SDDisplayLink on watchOS does not behave like other platform #3607
5.18.1 - Privacy Manifest
1 week ago
See [all tickets marked for the 5.18.1 release](https://github.com/SDWebImage/SDWebImage/milestone/120) ### Project - Added the visionOS support for "Build XCFramework" script target #3598 - Added xcprivacy to framework target and SPM #3600 ### Fixes - Fix the JFIF image orientation bug (which does not use EXIF but JFIF metadata) #3597 ### Warnings - Fix one warning because local variable shadows the variable outside of block #3599
5.18.0 - VisionOS and more
3 weeks ago
See [all tickets marked for the 5.18.0 release](https://github.com/SDWebImage/SDWebImage/milestone/119) ### VisionOS - Support to build for visionOS (no package manager support) #3556 - - Note this does not include CocoaPods/SwiftPM support. You need Xcode 15+ Beta to open SDWebImage project and build by yourself ### Features #### UI Category - Added SDWebImageAvoidAutoCancelImage to avoid cancel loading image requests for the same operation key #3592 @mTz0206 - Add better support for stateful view (UIButton) for image URL/progres s state management #3576 #### Downloader - Fix redundant requests for the same url during decoding time #3572 @Mervin1024 #### Decoder - Expose the data and format when SDAnimatedImageRep created with APNG/GIF/WebP/HEICS #3573 - Fix the CGImageCreateScaled to support 16/32 bit depth CGImage (RGB161616) and always preserve pixel format info #3575 ### Fixes - Add extra check for empty data during URLSession data callback #3587
5.17.0 - Reduce RAM with Force Decode
10 weeks ago
See [all tickets marked for the 5.17.0 release](https://github.com/SDWebImage/SDWebImage/milestone/118) ### Performance - Refactory the logic to handle force decode logic to avoid CA copy frame buffer, introduce SDImageForceDecodePolicy detailed control #3559 #3417 - - This fix the issue that non-ImageIO coder (means, WebPCoder) will cause CA to copy bitmap buffers and increase memory usage. - - You can still custom the behavior using the new `SDImageForceDecodePolicy`, defaults to automatic. - For coder plugin who want to opt-in to avoid `CA::copy_image`, use the new `preferredPixelFormat:` and do byte alignment and colorspace convert. ### Fixes - Fix macOS bug that SDImageCoderDecodeScaleDownLimitBytes still use the AnimatedImageRep and beyond the byte limit #3561 - Change macOS `sd_colorAtPoint/sd_colorsWithRect` which may loss colorspace information. Now it correctly convert to sRGB colorspace always. - Fix the CGImageCreateScaled to support 16/32 bit depth CGImage (RGB161616) and always preserve pixel format info #3575
5.16.0 - Limit Bytes && Frame Pool
16 weeks ago
See [all tickets marked for the 5.16.0 release](https://github.com/SDWebImage/SDWebImage/milestone/116) ### Features #### Animated Image - Performance: Introduce frame pool for SDAnimatedImage playback. Solve when multiple image view references the same URL image cause un-wanted decode which waste RAM/CPU #3524 - - Note this currently does not expose the frame pool API. Fire issue if you're facing issues about this change. #### Decoder - Introduce the automatically calculation of thumbnail (include animated/static image) using SDImageCoderDecodeScaleDownLimitBytes #3537 - - This calculation of the UIKit-based animated image frame count as well (only `UIAnimatedImage`, not `SDAnimatedImage`, because `SDAnimatedImage` manage frames dynamically). Fire issue if you're facing issues about this change. - - The `.scaleDownLargeImages` implementation has switched to use this instead of `.thumbnailPixelSize` (5.5.0 - 5.16.0) - - Note this introduce new API and need Coder Plugin update (like WebP/AVIF) ### Documentations - Update some comments to allows SwiftDocC generate better page #3547
5.15.8 - Fix macOS Crash
19 weeks ago
See [all tickets marked for the 5.15.8 release](https://github.com/SDWebImage/SDWebImage/milestone/117) ### Fixes - Try to fix macOS SDDisplayLink crash because of accessing the deallocated objc pointer during CVDisplayLinkRef callback #3531 ### Changes - Update the implementation SDScaledImageForScaleFactor to support SDAnimatedImage #3535
5.15.7 - Fix Crash
20 weeks ago
See [all tickets marked for the 5.15.7 release](https://github.com/SDWebImage/SDWebImage/milestone/115) ### Fixes - Try to solve the strange dispatch group crash in SDSafeExecute by removing inline #3526 ### Performance - Opt when multiple same URLs queried in parallel, which may cause duplicated decode and store disk operation #3523
5.15.6 - Fix watchOS
22 weeks ago
See [all tickets marked for the 5.15.6 release](https://github.com/SDWebImage/SDWebImage/milestone/114) ### Performance - Small improvements to SDDiskCache write perf #3517 - - Note this slightly change the behavior when you manual grab the `SDImageCache.diskCachePath` and remove it without creating new directory, next disk cache write operation will fail, before the restart of App. ### Fixes - Revert the SDDisplayLink for watchOS, fix the animated image duration bug #3520 #3511 ### Warnings - Fix the warning of C function with no param #3519
5.15.5 - Fix
29 weeks ago
See [all tickets marked for the 5.15.5 release](https://github.com/SDWebImage/SDWebImage/milestone/113) ### Fixes - Protect the disk operation when input key is nil and cause exception #3505 #3504 - Fix the blur effect logic by avoid color convert and always use three box-blur methodology #3506
5.15.4 - Hotfix
30 weeks ago
See [all tickets marked for the 5.15.4 release](https://github.com/SDWebImage/SDWebImage/milestone/112) ### Fixes - Fix the crash because of wrong usage of NS_NOESCAPE for SDCallbackQueue async block, should matching DispatchQueue #3500 - - This crash only occurs in specified version of clang compiler. But still recommended to update
iOS macOS watchOS tvOS
airbnb/lottie-ios 4.3.1
An iOS library to natively render After Effects vector animations
⭐️ 24,472
🕓 4 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
4.3.1
5 days ago
**Lottie 4.3.0** adds many new features, including: - Official support for SwiftUI! - A public Core Animation `CALayer` subclass - Support for reduced motion - Support for drop shadow layer effects - Support for visionOS You can learn more about Lottie 4.3.0 in this announcement: **[Lottie 4.3.0 now available, with official support for SwiftUI #2189](https://github.com/airbnb/lottie-ios/discussions/2189)** Lottie 4.3.1 fixes a small regression introduced by 4.3.0: https://github.com/airbnb/lottie-ios/issues/2193 ## New Features * Add SwiftUI `LottieView`, which wraps UIKit `LottieAnimationView` * Add SwiftUI `LottieSwitch`, which wraps UIKit `AnimatedSwitch` (https://github.com/airbnb/lottie-ios/pull/2138) * Add SwiftUI `LottieButton`, which wraps `AnimatedButton` (https://github.com/airbnb/lottie-ios/pull/2139) * `AnimatedSwitch` and `AnimatedButton` now support macOS (https://github.com/airbnb/lottie-ios/pull/2138, https://github.com/airbnb/lottie-ios/pull/2139) * Add `LottieAnimationLayer`, a Core Animation `CALayer` subclass for playing Lottie animations (https://github.com/airbnb/lottie-ios/pull/2073) * Add support for rendering drop shadow layer effects (https://github.com/airbnb/lottie-ios/pull/2142) * Add API for playing multiple markers sequentially (https://github.com/airbnb/lottie-ios/pull/2084) * Play "reduced motion" marker if `UIAccessibility.isReduceMotionEnabled` is true (https://github.com/airbnb/lottie-ios/pull/2110) * Update text provider API to use full `AnimationKeypath` values (https://github.com/airbnb/lottie-ios/pull/2183) * Add support for visionOS (https://github.com/airbnb/lottie-ios/pull/2152) * Drop support for Swift 5.5 (https://github.com/airbnb/lottie-ios/pull/2152) * Add contents gravity configuration to `AnimationImageProvider` (https://github.com/airbnb/lottie-ios/pull/2177) * Add support for customizing stroke width values using `FloatValueProvider` (https://github.com/airbnb/lottie-ios/pull/2179) * Adopt `Sendable` to support using Lottie with strict concurrency enabled (https://github.com/airbnb/lottie-ios/pull/2126) * Add `LottiePlaybackMode` to support declarative playback configuration (https://github.com/airbnb/lottie-ios/pull/2128) * Add option make main thread rendering engine force display update on every frame (https://github.com/airbnb/lottie-ios/pull/2168) * Add a option to prevent caching images from `AnimationImageProvider` (https://github.com/airbnb/lottie-ios/pull/2171) * Add support for customizing gradient values using `GradientValueProvider` (https://github.com/airbnb/lottie-ios/pull/2182) * Added additional support for multiple animations in `DotLottieFile` (https://github.com/airbnb/lottie-ios/pull/2074) * Add helper method to initialize `DotLottieFile` with data (https://github.com/airbnb/lottie-ios/pull/2090) ## Bug fixes * Remove `.../ZipFoundation/README.md` from targets and `*.md*` files from podspec (https://github.com/airbnb/lottie-ios/pull/2057)* * Fix issue where layers with negative X scale values could be pixelated (https://github.com/airbnb/lottie-ios/pull/2067) * Fix warnings when building with Swift 5.9 (https://github.com/airbnb/lottie-ios/pull/2072) * Restructure `ValueProviderStore` to not accumulate multiple values for the same key (https://github.com/airbnb/lottie-ios/pull/2082) * Disable bitcode when building XCFramework (https://github.com/airbnb/lottie-ios/pull/2121) * Fix unhandled file warning when building with SPM ([https://github.com/airbnb/lottie-ios/pull/213](https://github.com/airbnb/lottie-ios/pull/2132)) * Fix support for customizing color of `SolidLayer` using `ColorValueProvider` (https://github.com/airbnb/lottie-ios/pull/2154) * Fix issue where shape items could be unexpectedly ignored (https://github.com/airbnb/lottie-ios/pull/2156) * Fix issue where skew keyframes would unexpectedly not animate (https://github.com/airbnb/lottie-ios/pull/2157) * Fix issue where value providers could be ignored when falling back to main thread rendering engine (https://github.com/airbnb/lottie-ios/pull/2164) Thanks to everyone who contributed to this release!
4.3.0
1 week ago
**Lottie 4.3.0** adds many new features, including: - Official support for SwiftUI! - A public Core Animation `CALayer` subclass - Support for reduced motion - Support for drop shadow layer effects - Support for visionOS You can learn more about Lottie 4.3.0 in this announcement: **[Lottie 4.3.0 now available, with official support for SwiftUI #2189](https://github.com/airbnb/lottie-ios/discussions/2189)** ## New Features * Add SwiftUI `LottieView`, which wraps UIKit `LottieAnimationView` * Add SwiftUI `LottieSwitch`, which wraps UIKit `AnimatedSwitch` (https://github.com/airbnb/lottie-ios/pull/2138) * Add SwiftUI `LottieButton`, which wraps `AnimatedButton` (https://github.com/airbnb/lottie-ios/pull/2139) * `AnimatedSwitch` and `AnimatedButton` now support macOS (https://github.com/airbnb/lottie-ios/pull/2138, https://github.com/airbnb/lottie-ios/pull/2139) * Add `LottieAnimationLayer`, a Core Animation `CALayer` subclass for playing Lottie animations (https://github.com/airbnb/lottie-ios/pull/2073) * Add support for rendering drop shadow layer effects (https://github.com/airbnb/lottie-ios/pull/2142) * Add API for playing multiple markers sequentially (https://github.com/airbnb/lottie-ios/pull/2084) * Play "reduced motion" marker if `UIAccessibility.isReduceMotionEnabled` is true (https://github.com/airbnb/lottie-ios/pull/2110) * Update text provider API to use full `AnimationKeypath` values (https://github.com/airbnb/lottie-ios/pull/2183) * Add support for visionOS (https://github.com/airbnb/lottie-ios/pull/2152) * Drop support for Swift 5.5 (https://github.com/airbnb/lottie-ios/pull/2152) * Add contents gravity configuration to `AnimationImageProvider` (https://github.com/airbnb/lottie-ios/pull/2177) * Add support for customizing stroke width values using `FloatValueProvider` (https://github.com/airbnb/lottie-ios/pull/2179) * Adopt `Sendable` to support using Lottie with strict concurrency enabled (https://github.com/airbnb/lottie-ios/pull/2126) * Add `LottiePlaybackMode` to support declarative playback configuration (https://github.com/airbnb/lottie-ios/pull/2128) * Add option make main thread rendering engine force display update on every frame (https://github.com/airbnb/lottie-ios/pull/2168) * Add a option to prevent caching images from `AnimationImageProvider` (https://github.com/airbnb/lottie-ios/pull/2171) * Add support for customizing gradient values using `GradientValueProvider` (https://github.com/airbnb/lottie-ios/pull/2182) * Added additional support for multiple animations in `DotLottieFile` (https://github.com/airbnb/lottie-ios/pull/2074) * Add helper method to initialize `DotLottieFile` with data (https://github.com/airbnb/lottie-ios/pull/2090) ## Bug fixes * Remove `.../ZipFoundation/README.md` from targets and `*.md*` files from podspec (https://github.com/airbnb/lottie-ios/pull/2057)* * Fix issue where layers with negative X scale values could be pixelated (https://github.com/airbnb/lottie-ios/pull/2067) * Fix warnings when building with Swift 5.9 (https://github.com/airbnb/lottie-ios/pull/2072) * Restructure `ValueProviderStore` to not accumulate multiple values for the same key (https://github.com/airbnb/lottie-ios/pull/2082) * Disable bitcode when building XCFramework (https://github.com/airbnb/lottie-ios/pull/2121) * Fix unhandled file warning when building with SPM ([https://github.com/airbnb/lottie-ios/pull/213](https://github.com/airbnb/lottie-ios/pull/2132)) * Fix support for customizing color of `SolidLayer` using `ColorValueProvider` (https://github.com/airbnb/lottie-ios/pull/2154) * Fix issue where shape items could be unexpectedly ignored (https://github.com/airbnb/lottie-ios/pull/2156) * Fix issue where skew keyframes would unexpectedly not animate (https://github.com/airbnb/lottie-ios/pull/2157) * Fix issue where value providers could be ignored when falling back to main thread rendering engine (https://github.com/airbnb/lottie-ios/pull/2164) Thanks to everyone who contributed to this release!
4.2.0
21 weeks ago
> **Note** > Starting in Lottie 4.0, the Core Animation rendering engine is now enabled by default. > Learn more about this change: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog ## What's Changed * Added support for Opacity, Position, Scale, and Rotation value providers to Core Animation rendering engine (https://github.com/airbnb/lottie-ios/pull/2047) * Updated minimum macOS version to 10.11 (https://github.com/airbnb/lottie-ios/pull/2050) * Fixed issue where rounded corners algorithm would return incorrect path for shapes without any rounded corners (#1964) * Improved dotLottie error handling (https://github.com/airbnb/lottie-ios/pull/1969) * Added support for loading DotLottieFile by name and filename synchronously (https://github.com/airbnb/lottie-ios/pull/1968) * Updated ZIPFoundation to 0.9.16 to resolve `dataCorrupted` errors (https://github.com/airbnb/lottie-ios/pull/1978) * Fixed issue where `**` wildcard incorrectly required matching at least one path component (https://github.com/airbnb/lottie-ios/pull/1988) * Fixed issue where completion handler could be called unexpectedly when setting up animation (https://github.com/airbnb/lottie-ios/pull/1994) * Added `LottieAnimationView.allHierarchyKeypaths()` to get list of animation keypaths at runtime (https://github.com/airbnb/lottie-ios/pull/2004) * Added a warning when playing animation that uses unsupported After Effects expressions (https://github.com/airbnb/lottie-ios/pull/2006) * Added `LottieAnimationView.maskAnimationToBounds` configuration option (https://github.com/airbnb/lottie-ios/pull/2008) * Trim whitespaces and newlines before decoding base 64 string to image (https://github.com/airbnb/lottie-ios/pull/2016) * Added support for configuring `LottieBackgroundBehavior` to Objective-C `CompatibleAnimationView` (https://github.com/airbnb/lottie-ios/pull/2027) * Fixed issue where Trim could be applied to too many shape items (https://github.com/airbnb/lottie-ios/pull/2041) * Set animationLayer to nil when removing oldAnimation (https://github.com/airbnb/lottie-ios/pull/2035) * Fixed issue where Trim strokeStart / strokeEnd could be rendered in incorrect order (https://github.com/airbnb/lottie-ios/pull/2049) * Fixed issue where calling `setValueProvider` would reset animation progress (https://github.com/airbnb/lottie-ios/pull/2052) * Fixed issue where trim offset could be calculated incorrectly (https://github.com/airbnb/lottie-ios/pull/2053) **Full Changelog**: https://github.com/airbnb/lottie-ios/compare/4.1.3...4.2.0
4.1.3
31 weeks ago
> **Note** > Starting in Lottie 4.0, the Core Animation rendering engine is now enabled by default. > Learn more about this change: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog ## What's Changed * Add support for 3D rotations on X and Y axis (https://github.com/airbnb/lottie-ios/pull/1930) * Update color parsing to ignore alpha values for consistency with other platforms (https://github.com/airbnb/lottie-ios/pull/1934) * Allow subclassing `LottieAnimationView` (https://github.com/airbnb/lottie-ios/pull/1937) * Expose `AnimationTextProvider` in objc wrapper (https://github.com/airbnb/lottie-ios/pull/1944) * Add dispatch queue parameter to dotLottie loading methods (https://github.com/airbnb/lottie-ios/pull/1956) * Fix macOS build issues for apps using `Lottie.xcframework` / `lottie-spm` (https://github.com/airbnb/lottie-ios/pull/1960)
4.1.2
35 weeks ago
> **Note** > Starting in Lottie 4.0, the Core Animation rendering engine is now enabled by default. > Learn more about this change: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog 4.1.2 fixes an issue where the [lottie-spm](https://github.com/airbnb/lottie-spm) package would fail to build in some environments: https://github.com/airbnb/lottie-spm/pull/5#issuecomment-1398991609, https://github.com/airbnb/lottie-ios/issues/1926#issuecomment-1398866563 ## 4.1.0 release notes We've added a new way to integrate Lottie into your project using Swift Package Manager. We now provide a separate [lottie-spm](https://github.com/airbnb/lottie-spm) repo that is much smaller than the main lottie-ios repo (~500kb instead of ~300mb). Learn more about this change [here](https://github.com/airbnb/lottie-ios#swift-package-manager). ### Improvements and bug fixes * Made DotLottieAnimation attributes optional to simplify Manifest file (https://github.com/airbnb/lottie-ios/pull/1844) * Fix heap buffer overflow in CGColor+RGB extensions (https://github.com/airbnb/lottie-ios/pull/1858) * Add support for display P3 color space (https://github.com/airbnb/lottie-ios/pull/1857) * Add some missing utility to CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1881) * Fix issue where ShapeTransform could incorrectly affect stroke width (https://github.com/airbnb/lottie-ios/pull/1872) * Fix issue where empty trim item would take precedence over non-empty trim item (https://github.com/airbnb/lottie-ios/pull/1875) * Fix issue where some top-level shape items would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1874) * Fix frame setting issue for CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1878) * Gradient Fill Layer: Support strokes (https://github.com/airbnb/lottie-ios/pull/1818) * Change veryLargeRect size to fix issue with masks (https://github.com/airbnb/lottie-ios/pull/1884) * Fix issue where Fill following other Fill would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1888) * Fix issue where negative `scale.x` values didn't render correctly on iOS 14 (https://github.com/airbnb/lottie-ios/pull/1894) * Fix issue where `LottieAnimationView.currentFrame` would be incorrect after playing animation with `LottieLoopMode.playOnce` (https://github.com/airbnb/lottie-ios/pull/1897) * Fix issue where shape items could be applied in incorrect order (https://github.com/airbnb/lottie-ios/pull/1899) * Fix issue where stroke and fill could be rendered in incorrect order (https://github.com/airbnb/lottie-ios/pull/1903) * Fix issue where `play(fromProgress: 1, toProgress: 0)` animation would not actually play (https://github.com/airbnb/lottie-ios/pull/1908) * Add support for skew animations (https://github.com/airbnb/lottie-ios/pull/1917)
4.1.1
35 weeks ago
> **Note** > Starting in Lottie 4.0, the Core Animation rendering engine is now enabled by default. > Learn more about this change: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog 4.1.1 fixes an issue where the [lottie-spm](https://github.com/airbnb/lottie-spm) package could not be embedded into iOS app builds (#1925), which could cause apps to crash (#1926). ## 4.1.0 release notes We've added a new way to integrate Lottie into your project using Swift Package Manager. We now provide a separate [lottie-spm](https://github.com/airbnb/lottie-spm) repo that is much smaller than the main lottie-ios repo (~500kb instead of ~300mb). Learn more about this change [here](https://github.com/airbnb/lottie-ios#swift-package-manager). ### Improvements and bug fixes * Made DotLottieAnimation attributes optional to simplify Manifest file (https://github.com/airbnb/lottie-ios/pull/1844) * Fix heap buffer overflow in CGColor+RGB extensions (https://github.com/airbnb/lottie-ios/pull/1858) * Add support for display P3 color space (https://github.com/airbnb/lottie-ios/pull/1857) * Add some missing utility to CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1881) * Fix issue where ShapeTransform could incorrectly affect stroke width (https://github.com/airbnb/lottie-ios/pull/1872) * Fix issue where empty trim item would take precedence over non-empty trim item (https://github.com/airbnb/lottie-ios/pull/1875) * Fix issue where some top-level shape items would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1874) * Fix frame setting issue for CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1878) * Gradient Fill Layer: Support strokes (https://github.com/airbnb/lottie-ios/pull/1818) * Change veryLargeRect size to fix issue with masks (https://github.com/airbnb/lottie-ios/pull/1884) * Fix issue where Fill following other Fill would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1888) * Fix issue where negative `scale.x` values didn't render correctly on iOS 14 (https://github.com/airbnb/lottie-ios/pull/1894) * Fix issue where `LottieAnimationView.currentFrame` would be incorrect after playing animation with `LottieLoopMode.playOnce` (https://github.com/airbnb/lottie-ios/pull/1897) * Fix issue where shape items could be applied in incorrect order (https://github.com/airbnb/lottie-ios/pull/1899) * Fix issue where stroke and fill could be rendered in incorrect order (https://github.com/airbnb/lottie-ios/pull/1903) * Fix issue where `play(fromProgress: 1, toProgress: 0)` animation would not actually play (https://github.com/airbnb/lottie-ios/pull/1908) * Add support for skew animations (https://github.com/airbnb/lottie-ios/pull/1917)
4.1.0
35 weeks ago
> **Note** > Starting in Lottie 4.0, the Core Animation rendering engine is now enabled by default. > Learn more about this change: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog We've added a new way to integrate Lottie into your project using Swift Package Manager. We now provide a separate [lottie-spm](https://github.com/airbnb/lottie-spm) repo that is much smaller than the main lottie-ios repo (~500kb instead of ~300mb). Learn more about this change [here](https://github.com/airbnb/lottie-ios#swift-package-manager). ### Improvements and bug fixes * Made DotLottieAnimation attributes optional to simplify Manifest file (https://github.com/airbnb/lottie-ios/pull/1844) * Fix heap buffer overflow in CGColor+RGB extensions (https://github.com/airbnb/lottie-ios/pull/1858) * Add support for display P3 color space (https://github.com/airbnb/lottie-ios/pull/1857) * Add some missing utility to CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1881) * Fix issue where ShapeTransform could incorrectly affect stroke width (https://github.com/airbnb/lottie-ios/pull/1872) * Fix issue where empty trim item would take precedence over non-empty trim item (https://github.com/airbnb/lottie-ios/pull/1875) * Fix issue where some top-level shape items would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1874) * Fix frame setting issue for CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1878) * Gradient Fill Layer: Support strokes (https://github.com/airbnb/lottie-ios/pull/1818) * Change veryLargeRect size to fix issue with masks (https://github.com/airbnb/lottie-ios/pull/1884) * Fix issue where Fill following other Fill would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1888) * Fix issue where negative `scale.x` values didn't render correctly on iOS 14 (https://github.com/airbnb/lottie-ios/pull/1894) * Fix issue where `LottieAnimationView.currentFrame` would be incorrect after playing animation with `LottieLoopMode.playOnce` (https://github.com/airbnb/lottie-ios/pull/1897) * Fix issue where shape items could be applied in incorrect order (https://github.com/airbnb/lottie-ios/pull/1899) * Fix issue where stroke and fill could be rendered in incorrect order (https://github.com/airbnb/lottie-ios/pull/1903) * Fix issue where `play(fromProgress: 1, toProgress: 0)` animation would not actually play (https://github.com/airbnb/lottie-ios/pull/1908) * Add support for skew animations (https://github.com/airbnb/lottie-ios/pull/1917)
4.0.1
41 weeks ago
4.0.1 fixes an issue in 4.0.0 where the install could fail due to issues with Git LFS: #1830, #1834. We now publish `xframework` binaries as a part of our release process: https://github.com/airbnb/lottie-ios/discussions/1807#discussioncomment-4346438 ## Major changes in Lottie 4.0 Learn more about this release: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog * The new Core Animation rendering engine ([first introduced in Lottie 3.4.0](https://github.com/airbnb/lottie-ios/discussions/1627)) is now enabled by default for supported animations. * Specifically, `LottieConfiguration.shared.renderingEngine` now defaults to `.automatic` instead of `.mainThread`. Animations that use features which are not supported by the Core Animation rendering engine will automatically fall back to using the original Main Thread rendering engine. * When using the Core Animation rendering engine, Lottie animations now always animate smoothly regardless of the amount of work being done on the app’s main thread. This **significantly improves animation performance** while also eliminating CPU overhead. * If you encounter any compatibility issues when using `RenderingEngineOption.automatic`, please file an issue with a copy of your animation json. * `DecodingStrategy.dictionaryBased` is now enabled by default * The new dictionary-based decoding implementation is 2x faster than the previous `Codable` decoding implementation * If you encounter any compatibility issues with this new decoding implementation, please file an issue with a copy of your animation json. * Backwards compatibility typealiases for `Animation`, `AnimationView`, `Color`, `Vector1D`, `Vector2D`, and `Vector3D`, which were introduced in [Lottie 3.5.0](https://github.com/airbnb/lottie-ios/releases), have been removed to resolve conflicts with types in Apple frameworks. These types are now named `LottieAnimation`, `LottieAnimationView`, `LottieColor`, `LottieVector1D`, `LottieVector2D`, and `LottieVector3D`. * The default `LottieBackgroundBehavior` used by `LottieAnimationView` is now `.pauseAndRestore` instead of `pause`. * Lottie for iOS now supports the [dotLottie file format](https://dotlottie.io/). * The library's minimum-supported Swift version is now Swift 5.5. XCFramework checksum: b6d8b0b81975d91965b8bb00cffb0eae4b3d94538b6950a90bc1366afd5d4239
4.0.0
41 weeks ago
Learn more about this release: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog ## Major changes * The new Core Animation rendering engine ([first introduced in Lottie 3.4.0](https://github.com/airbnb/lottie-ios/discussions/1627)) is now enabled by default for supported animations. * Specifically, `LottieConfiguration.shared.renderingEngine` now defaults to `.automatic` instead of `.mainThread`. Animations that use features which are not supported by the Core Animation rendering engine will automatically fall back to using the original Main Thread rendering engine. * When using the Core Animation rendering engine, Lottie animations now always animate smoothly regardless of the amount of work being done on the app’s main thread. This **significantly improves animation performance** while also eliminating CPU overhead. * If you encounter any compatibility issues when using `RenderingEngineOption.automatic`, please file an issue with a copy of your animation json. * `DecodingStrategy.dictionaryBased` is now enabled by default * The new dictionary-based decoding implementation is 2x faster than the previous `Codable` decoding implementation * If you encounter any compatibility issues with this new decoding implementation, please file an issue with a copy of your animation json. * Backwards compatibility typealiases for `Animation`, `AnimationView`, `Color`, `Vector1D`, `Vector2D`, and `Vector3D`, which were introduced in [Lottie 3.5.0](https://github.com/airbnb/lottie-ios/releases), have been removed to resolve conflicts with types in Apple frameworks. These types are now named `LottieAnimation`, `LottieAnimationView`, `LottieColor`, `LottieVector1D`, `LottieVector2D`, and `LottieVector3D`. * The default `LottieBackgroundBehavior` used by `LottieAnimationView` is now `.pauseAndRestore` instead of `pause`. * Lottie for iOS now supports the [dotLottie file format](https://dotlottie.io/). * The library's minimum-supported Swift version is now Swift 5.5. ## Full changelog * Use `RenderingEngineOption.automatic` by default by @calda in https://github.com/airbnb/lottie-ios/pull/1764 * Fix issue where inverted mask layer was clipped incorrectly by @calda in https://github.com/airbnb/lottie-ios/pull/1763 * Bump to 4.0.0, remove backwards compatibility typealiases by @calda in https://github.com/airbnb/lottie-ios/pull/1768 * Update `LottieBackgroundBehavior.default` from `.pause` to `.pauseAndRestore` for Main Thread rendering engine by @calda in https://github.com/airbnb/lottie-ios/pull/1770 * Adds ability to not play the frame of the end marker (#1758) by @lennartstolz in https://github.com/airbnb/lottie-ios/pull/1772 * Change LottieAnimationHelpers default animation cache to LRUAnimationCache.shared (#1773) by @pejato in https://github.com/airbnb/lottie-ios/pull/1778 * Update LottieConfiguration to use DecodingStrategy.dictionaryBased by default by @marcelofabri in https://github.com/airbnb/lottie-ios/pull/1777 * Allow customizing default AnimationCacheProvider by @marcelofabri in https://github.com/airbnb/lottie-ios/pull/1779 * Replace LRUAnimationCache with a thread-safe NSCache-based cache by @marcelofabri in https://github.com/airbnb/lottie-ios/pull/1783 * Update minimum Swift version to 5.5 by @calda in https://github.com/airbnb/lottie-ios/pull/1787 * Adds .lottie file load capability to LottieAnimation by @eharrison in https://github.com/airbnb/lottie-ios/pull/1785 * Add Rounded Corners by @johnny-duo in https://github.com/airbnb/lottie-ios/pull/1795 * Add rounded corner support to Core Animation rendering engine by @calda in https://github.com/airbnb/lottie-ios/pull/1796 * Add support for animating `startPoint` and `endPoint` of radial gradients by @calda in https://github.com/airbnb/lottie-ios/pull/1798 * Update Core Animation rendering engine to use device RGB color space by @calda in https://github.com/airbnb/lottie-ios/pull/1801 * added mask to bounds flag by @BugorBN in https://github.com/airbnb/lottie-ios/pull/1814 * Add completion callbacks to LottieAnimationView DotLottie initializers by @calda in https://github.com/airbnb/lottie-ios/pull/1810
3.5.0
49 weeks ago
> **Note**: Lottie 3.4.0 added a new rendering engine powered by Core Animation. Please try it out and let us know if you encounter any issues! It will be enabled by default in Lottie 4.0, which we plan on releasing later this month. More information is available in this announcement: https://github.com/airbnb/lottie-ios/discussions/1627 ### Lottie 3.5.0 This version renames several public types, to resolve conflicts with types in Apple frameworks (https://github.com/airbnb/lottie-ios/issues/1420): - `Lottie.Animation` has been renamed to `LottieAnimation`, to resolve a conflict with [`SwiftUI.Animation`](https://developer.apple.com/documentation/swiftui/animation) - `Lottie.Color` has been renamed to `LottieColor`, to resolve a conflict with [`SwiftUI.Color`](https://developer.apple.com/documentation/swiftui/color) - `Lottie.Vector3D` has been renamed to `LottieVector3D`, to resolve a conflict with [`Spatial.Vector3D`](https://developer.apple.com/documentation/spatial/vector3d?changes=latest_major) For consistency with these new names, we have also renamed the following public types: - `Lottie.AnimationView` has been renamed to `LottieAnimationView` - `Lottie.Vector1D` has been renamed to `LottieVector1D` - `Lottie.Vector2D` has been renamed to `LottieVector2D`. For backwards compatibility Lottie 3.5.0 includes `typealias`es for the old names, which map to the new names. These `typealias`es are marked as deprecated and include fix-its to update call-sites to the new name. ### Lottie 4.0 We plan on releasing **Lottie 4.0** in the next few weeks. In Lottie 4.0 we will remove the compatibility typealiases (for `Animation`, `AnimationView`, `Color`, etc) , so code using the old names will no longer compile. This will resolve the naming conflicts with SwiftUI types. Consider updating to Lottie 3.5.0 first, applying the fix-its recommended by the deprecation warnings, and then update to Lottie 4.0 once it is released (Lottie 4.0 will no longer include deprecation warnings with fix-its). Thank you for bearing with us through this transition process! Lottie 4.0 will also make the new Core Animation rendering engine ([added in Lottie 3.4.0](https://github.com/airbnb/lottie-ios/discussions/1627)) the default rendering engine option. As mentioned above, please try out the new rendering engine if you haven't yet and let us know if you encounter any issues! We've been hard at work fixing issues reported by the community. ### Known issues If your application has a storyboard that references `AnimationView`, it may crash when using Lottie 3.5.0 (https://github.com/airbnb/lottie-ios/issues/1771). The fix for this issue is to update all references of `AnimationView` to `LottieAnimationView` and update all references of `Animation` to `LottieAnimation`. This should be resolved in Lottie 4.0, where code using the old names will no longer compile.
iOS macOS tvOS
vapor/vapor 4.83.2
💧 A server-side Swift HTTP web framework.
⭐️ 23,194
🕓 3 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
4.83.2 - HTTPServerErrorHandler: Improve Error Handling for HTTPParserError
3 days ago
## What's Changed HTTPServerErrorHandler: Improve Error Handling for HTTPParserError by @fred-sch in #2922 > Invalid HTTP previously just closed the connection, but did not actually handle the errors. > > This PR uses an adapted version of https://github.com/apple/swift-nio/blob/main/Sources/NIOHTTP1/HTTPServerProtocolErrorHandler.swift to properly catch exceptions if they occur. ## New Contributor - @fred-sch made their first contribution in #2922 🎉 ## Reviewers Thanks to the reviewers for their help: - @MrSkwiggs - @Joannis - @FranzBusch - @Lukasa ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.83.1...4.83.2
4.83.1 - Pass X-Request-Id if present
3 days ago
## What's Changed Pass X-Request-Id if present by @paunik in #3072 > Pass the value from the X-Request-Id to the logger context > > - pass the X-Request-Id header value if present, pass generated UUID if the header not present > > Mentioned: > > - https://github.com/vapor/vapor/issues/2508 > > Why: > > - We needed a way to trace router -> web -> worker on the logger on the heroku and we found this https://devcenter.heroku.com/articles/http-request-id > > Inspiration: > > - https://api.rubyonrails.org/classes/ActionDispatch/RequestId.html ## New Contributor - @paunik made their first contribution in #3072 🎉 ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.83.0...4.83.1
4.83.0 - Support Crypto 3.0.0 in the other package manifest
3 days ago
## What's Changed Support Crypto 3.0.0 in the other package manifest by @gwynne in #3073 > Fixes an oversight made by both Tim and myself in #3070. Full credit to @gregcotten for catching the omission. ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.82.0...4.83.0
4.82.0 - Add support for Swift Crypto 3.0.0
3 days ago
## What's Changed Add support for Swift Crypto 3.0.0 by @0xTim in #3070 > See https://forums.swift.org/t/swift-crypto-3-0-0/67387 for more details ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.81.1...4.82.0
4.81.1 - `Logger.report()` should handle `LocalizedError`, `DecodingError`, and `EncodingError` identically to other errors
5 days ago
## What's Changed `Logger.report()` should handle `LocalizedError`, `DecodingError`, and `EncodingError` identically to other errors by @MahdiBM in #3068 > `LocalizedError.localizedDesceiption` is useless. We shouldn’t use it. > The special handling of `DecodingError` and `EncodingError` also doesn’t do much. ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.81.0...4.81.1
4.81.0 - The swift-backtrace library is no longer needed in 5.9
2 weeks ago
## What's Changed The swift-backtrace library is no longer needed in 5.9 by @gwynne in #3064 > Per https://github.com/swift-server/swift-backtrace/pull/68. ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.80.0...4.81.0
4.80.0 - Make Storage Sendable
4 weeks ago
## What's Changed Make Storage Sendable by @0xTim in #3056 > Make Vapor’s `Storage` and `Application` `Sendable`. This is a key piece in allowing `Request` and `Response` to be `Sendable`. > > Note that types that are stored in `Storage` should now be `Sendable`. If you get any warnings, you may need to update your code for this new change. ###### _This patch was released by @0xTim_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.79.0...4.80.0
4.79.0 - Add Sendable Conformances to underlying types
5 weeks ago
## What's Changed Add Sendable Conformances to underlying types by @0xTim in #3054 > This adds Sendable annotations to many of Vapor’s types and APIs, including the request handlers. > > APIs are marked `@preconcurrency` where it makes sense to reduce warnings for anyone using the release. To fix your code and see the warnings, you can enable strict concurrency checking. > > **Note:** this PR does not touch `Request`, `Response` or `Application` as they require fundamental changes that are larger in scope and will be done in a future release. ## Reviewers Thanks to the reviewers for their help: - @FranzBusch - @Lukasa ###### _This patch was released by @0xTim_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.78.2...4.79.0
4.78.2 - Resolve issue #2650
5 weeks ago
## What's Changed Resolve issue #2650 by @paunik in #2674 > In order to prevent 5xx internal error we try to: > > - validate number of parameters in FormDataDecoder so we can detect when only boundary is present. ## New Contributor - @paunik made their first contribution in #2674 🎉 ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.78.1...4.78.2
4.78.1 - Fix for #2574 Missing quote from value
6 weeks ago
## What's Changed Fix for #2574 Missing quote from value by @paunik in #2839 > - now quotes are always enforced in `DirectiveSerializer.serialize` > - adjusted tests ## New Contributor - @paunik made their first contribution in #2839 🎉 ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.78.0...4.78.1
iOS macOS watchOS tvOS linux macOS iOS
Carthage/Carthage 0.39.1
A simple, decentralized dependency manager for Cocoa
⭐️ 14,858
🕓 6 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
0.39.1
1 week ago
**Fixed** * Support visionOS by using -destination `xros`/`xrsimulator`. Make additive changes to `XCDBLD`’s `SDK`. (#3345). * Fix Makefile to only pass `-static-stdlib` when Xcodes are accommodated. (#3350). **Acknowledgments** Thanks to all contributors.
0.39.0
34 weeks ago
## Fixed - [In Xcode 14, Carthage does not create tvOS & watchOS builds when Bitcode is disabled · Issue #3292 · Carthage/Carthage](https://github.com/Carthage/Carthage/issues/3292) ## What's Changed * Add: --use-xcframeworks check by @ryu1sazae in https://github.com/Carthage/Carthage/pull/3204 * Fix typo in fileReadCorruptFile error description by @TTOzzi in https://github.com/Carthage/Carthage/pull/3231 * README.md: HTTP => HTTPS by @Schweinepriester in https://github.com/Carthage/Carthage/pull/3244 * Update Xcode12Workaround.md by @Huang-Libo in https://github.com/Carthage/Carthage/pull/3248 * Use modern Alamofire version in README by @jshier in https://github.com/Carthage/Carthage/pull/3200 * Fix issue where Carthage doesn’t build for watchOS or tvOS if bitcode is disabled in Xcode 14 by @daltonclaybrook in https://github.com/Carthage/Carthage/pull/3293 * Bump up version to 0.39.0 by @giginet in https://github.com/Carthage/Carthage/pull/3318 ## New Contributors * @ryu1sazae made their first contribution in https://github.com/Carthage/Carthage/pull/3204 * @TTOzzi made their first contribution in https://github.com/Carthage/Carthage/pull/3231 * @Schweinepriester made their first contribution in https://github.com/Carthage/Carthage/pull/3244 * @Huang-Libo made their first contribution in https://github.com/Carthage/Carthage/pull/3248 * @jshier made their first contribution in https://github.com/Carthage/Carthage/pull/3200 * @daltonclaybrook made their first contribution in https://github.com/Carthage/Carthage/pull/3293 **Full Changelog**: https://github.com/Carthage/Carthage/compare/0.38.0...0.39.0
0.38.0 — Prebuilt Parity
2 years ago
**Fixed** * Building XCFrameworks with nested dependencies no longer requires a platform-specific Build directory (i.e. `Carthage/Build/iOS`) to exist (#3135). **Added** * Prebuilt dependencies (for [binary only frameworks](https://github.com/Carthage/Carthage/blob/master/Documentation/Artifacts.md#binary-only-frameworks) and [GitHub release assets](https://github.com/Carthage/Carthage#archive-prebuilt-frameworks-into-one-zip-file)) may use XCFrameworks, which are checked for compatibility and extracted into the Build folder (#3123). See the section below on compatibility information for framework authors. Thanks @igstewart3! :tada: * Project lookup is faster for dependencies which contain multiple xcodeprojs (#3076). **Known issues** * `carthage archive` does not archive built XCFrameworks * Support for making an xcframework archive will be added in a future release. For now, manually create archives by building twice: once with the `--use-xcframeworks` option, and once without. Then, create a zip from the `Carthage/Build` folder. ## How to distribute XCFrameworks while retaining backwards compatibility Since Carthage lets users choose whether they want discrete frameworks or XCFrameworks, we recommend supporting both distribution formats in your binary assets. Replacing discrete frameworks with XCFrameworks in your assets is a **breaking change**, since it will require users to [reintegrate the framework with their project](https://github.com/Carthage/Carthage#migrating-a-project-from-framework-bundles-to-xcframeworks). ### Create separate `.framework.zip` and `.xcframework.zip` archives Starting in 0.38.0, Carthage follows a naming convention to distinguish between XCFrameworks and plain framework bundles: - A release asset with `.xcframework` in the name is considered to contain XCFrameworks - An asset with `.framework` in the name is considered to contain plain framework bundles - Carthage looks to narrow download candidates when comparable filenames are found → the comparison is ‘do the filenames match after removing one «.framework» or one «.xcframework» found string from the filename?'. This allows to Carthage to narrow down to one comparison-matched download, basing direction on whether `--use-xcframeworks` is flagged. Sets entirely 'not-matching-comparison' will see no removal of download candidates. #### GitHub release assets: Upload both archives to the release GitHub releases can have multiple files attached to them. Upload both zip files to your release following the above naming convention. See [the README](https://github.com/Carthage/Carthage#archive-prebuilt-frameworks-into-zip-files) for more information. #### Binary only frameworks: Specify both archives in the binary spec URL using an `alt=` parameter. [Binary project specifications](https://github.com/Carthage/Carthage/blob/master/Documentation/Artifacts.md#binary-project-specification) are JSON documents which map _one_ download URL to _one_ version. To provide multiple asset URLs, join the URLs with an `alt=` query parameter. For example: ```json { "1.2.3": "https://example.com/releases/MyFramework-v1.2.3.framework.zip?alt=https://example.com/releases/MyFramework-v1.2.3.xcframework.zip" } ``` Older versions of Carthage will request the whole URL and will receive the _first_ framework zip (since HTTP servers ignore unknown query parameters). Starting in 0.38.0, Carthage will parse out any `alt` URLs and request them as well, using the same naming convention we use for GitHub assets. For optimal backwards compatibility: - Create an upload a framework zip and an xcframework zip, and give them the same basename, i.e. `MyFramework-v1.2.3.framework.zip` and `MyFramework-v1.2.3.xcframework.zip`. - Publish the binary spec JSON with the framework zip's URL _first_, followed by an `alt=` parameter with the xcframework zip's URL. <details><summary><strong>Example workflow</strong></summary> Suppose we're releasing `v1.2.3` of a project called `MyFramework`: 1. Create an xcframeworks build using --use-xcframeworks: carthage build --use-xcframeworks --no-skip-current zip -r MyFramework-v1.2.3.xcframework.zip Carthage/Build 2. Create a plain frameworks build: carthage build --no-skip-current zip -r MyFramework-v1.2.3.framework.zip Carthage/Build 3. Upload both archives, `MyFramework-v1.2.3.xcframework.zip` and `MyFramework-v1.2.3.framework.zip`. 4. For projects on GitHub, [create a release](https://docs.github.com/en/github/administering-a-repository/managing-releases-in-a-repository#creating-a-release) and include both archives. For a binary-only framework, publish a new version to its spec JSON. Point to the xcframework archive using an `alt=` parameter: ```js { // ... "1.2.3": "https://example.com/releases/MyFramework-v1.2.3.framework.zip?alt=https://example.com/releases/MyFramework-v1.2.3.xcframework.zip" } ``` </details> ### Prefer building with module stability Carthage compares the Swift compiler version used to build an XCFramework [with the currently selected Swift version](https://github.com/Carthage/Carthage#swift-binary-framework-download-compatibility) — allowing the XCFramework to supercede a local-machine build if the downloaded XCFramework: * contains no bundles with «.swiftmodule»-suffixed files, or * any bundle with «.swiftmodule»-suffixed files contains Swift components built under [`BUILD_LIBRARIES_FOR_DISTRIBUTION`](https://swift.org/blog/library-evolution/) build setting and [the current Swift compiler version](https://github.com/Carthage/Carthage/pull/1303) is greater than 5.1, or * any bundle not passing the above was built with [the current compiler version](https://github.com/Carthage/Carthage/pull/1303). 〜 Carthage falls back to building a dependency from source if the prebuilt version is rejected. 〜 Note: [see particulars on Carthage’s determining factors for `BUILD_LIBRARIES_FOR_DISTRIBUTION`](https://github.com/Carthage/Carthage/releases/tag/0.35.0). ✨ This matches Carthage's existing behavior, but is notably different from Swift Package Manager’s behavior, which requires that _all_ XCFrameworks are built for distribution. When you're creating XCFrameworks for a GitHub release, be mindful of this, and consider setting `BUILD_LIBRARIES_FOR_DISTRIBUTION=YES` in your project. Future versions of Carthage's `archive` command may encourage this setting. If you choose to publish an XCFramework _without_ module stability (a.k.a. [`BUILD_LIBRARIES_FOR_DISTRIBUTION`](https://swift.org/blog/library-evolution/) build setting) enabled, consider a naming convention like `*-carthage-abi-unstable.xcframework` to indicate this to your users.
0.37.0 — Architectural Alchemy
2 years ago
**Fixed** * Building a framework using Xcode 12 fails with a build error from `xcrun lipo` (https://github.com/Carthage/Carthage/issues/3019). Fix by passing `--use-xcframeworks` and [re-integrating your dependencies as XCFrameworks](https://github.com/Carthage/Carthage#migrating-a-project-from-framework-bundles-to-xcframeworks), or by using a [workaround xcconfig on Intel-based Macs](https://github.com/Carthage/Carthage/blob/master/Documentation/Xcode12Workaround.md). **Added** * Carthage produces XCFrameworks instead of universal frameworks when `--use-xcframeworks` is passed. (https://github.com/Carthage/Carthage/pull/3071). Thanks @elliottwilliams! XCFrameworks contain multiple discrete framework bundles. Unlike universal frameworks (produced by `lipo`), an XCFramework can contain multiple versions of a framework which share the same processor architecture. Since Xcode 12 added Apple Silicon support to its simulator platforms, the device and simulator versions of a framework both build for `arm64`, hence requiring an XCFramework. To build XCFrameworks into your app, **run Carthage with `--use-xcframeworks` and drag the produced XCFrameworks into your Xcode target’s _Embedded binaries_ section**, _without_ using a `carthage copy-frameworks` script phase. ﹡See the README﹡ for [information on how to upgrade to XCFrameworks](https://github.com/Carthage/Carthage#migrating-a-project-from-framework-bundles-to-xcframeworks). XCFrameworks are the only supported way to build Carthage frameworks for Apple Silicon-based Macs. **Known issues** * `--use-xcframeworks` does not produce an XCFramework for `github` dependencies which download binaries. * Workaround: Pass `--no-use-binaries` to make Carthage rebuild the dependency from source, which will produce an XCFramework. * `carthage archive` does not archive built XCFrameworks, and `--use-xcframeworks` does not produce an xcframework for [`binary` dependencies](https://github.com/Carthage/Carthage/blob/0.36.1/Documentation/Artifacts.md#binary-only-frameworks). * Support for binary xcframeworks will be added in a future release. For now, continue integrating [`binary` dependencies](https://github.com/Carthage/Carthage/blob/0.36.1/Documentation/Artifacts.md#binary-only-frameworks) using the strategy of [platform-specific frameworks](https://github.com/Carthage/Carthage#if-youre-building-for-ios-tvos-or-watchos). **Notes** Under `--use-xcframeworks`, Carthage aims to accommodate something long relied upon: targets that 〈think about targets such as your dependencies ⋯ subdependencies ⋯ dependencies vended by others〉 …that link against «.framework»s in the directory of `Carthage/Build` ﹡as opposed to linking against «.framework»s in [Per-configuration Build Products Path (`CONFIGURATION_BUILD_DIR`)](https://gist.github.com/NSExceptional/2cd98300f7297b75d7b2d929effa2f15#per-configuration-build-products-path-configuration_build_dir).﹡ Such targets will see Carthage extract — for each platform the target builds for — such-platform’s «.framework» bundles from all XCFrameworks, copying them into a temporary directory, and then — via build setting injection into [`FRAMEWORK_SEARCH_PATHS`](https://gist.github.com/NSExceptional/2cd98300f7297b75d7b2d929effa2f15#framework-search-paths-framework_search_paths) — allowing the xcodebuild run an at-the-end-of-[`FRAMEWORK_SEARCH_PATHS`](https://gist.github.com/NSExceptional/2cd98300f7297b75d7b2d929effa2f15#framework-search-paths-framework_search_paths) opportunity to link those extracted-into-temporary-directory «.framework»s (and fulfill a successful compilation). <details> <summary><em>Well, to be more precise…</em></summary> 〜 Well, to be more precise, any scheme where the Carthage-focused target with build setting value for [`FRAMEWORK_SEARCH_PATHS`](https://gist.github.com/NSExceptional/2cd98300f7297b75d7b2d929effa2f15#framework-search-paths-framework_search_paths) specifically containing a subdirectory of `Carthage/Build` will have the at-the-end-of-[`FRAMEWORK_SEARCH_PATHS`](https://gist.github.com/NSExceptional/2cd98300f7297b75d7b2d929effa2f15#framework-search-paths-framework_search_paths) opportunity. </details> This behavior works for framework targets in most cases, since they link against but generally do not embed their framework dependencies, but requires changes if any part of a target’s build process requires the _exact path_ of the framework bundle. If you (_or developers consuming your framework_) encounter build errors when using `carthage build --use-xcframeworks`, you have a few options: - Update your project to link and embed XCFrameworks from `Carthage/Build`, then read the extracted framework from [`CONFIGURATION_BUILD_DIR`](https://gist.github.com/NSExceptional/2cd98300f7297b75d7b2d929effa2f15#per-configuration-build-products-path-configuration_build_dir). You won’t rely on the above ‘at-the-end-of-FRAMEWORK_SEARCH_PATHS opportunity’ behavior, but ﹡you will break compatibility with users who _aren’t_ using the `--use-xcframeworks` flag﹡, so consider other options, proceed with caution, and consider versioning this as a breaking change. - If Carthage fails while building a scheme that contains non-framework targets, break it up into multiple schemes, so that Carthage only builds the framework targets. - Modify your build phases to parse the [`FRAMEWORK_SEARCH_PATHS`](https://gist.github.com/NSExceptional/2cd98300f7297b75d7b2d929effa2f15#framework-search-paths-framework_search_paths) build setting and search each directory in order to find a Carthage framework, rather than hard-coding its path to a `Carthage/Build/<platform>` directory. <details> <summary><em>If you’re struggling to figure out how Carthage focuses on a target…</em></summary> 〜 If you’re struggling to figure out how Carthage focuses on a target within a Xcode project/workspace within a repo and subsequently widens out to choose a scheme based on that, head to https://github.com/Carthage/Carthage/issues/new and attach the label «focused-target» or just mention «focused-target» in the issue’s body text; please make the body text detailed, and priority will be given to issues regarding open source repositories. </details> **Acknowledgements** Thanks @olejnjak, @philipphofmann, and @daisuke-t-jp for their work on documenting the xcconfig workaround. More broadly, we appreciate the community of users who communicated about the problem, came up with a temporary workaround, and were patient while we architected a fix. Thanks @tmspzz, @gjeck, @nighthawk, @chrisballinger, @renep, and @elliottwilliams for their work reviewing pull requests.
0.36.1 — Workspace Well-Being
2 years ago
:information_source: This is a maintenance release to support integrating frameworks on Xcode 12.3 and above. :information_source: This release **does not** include forthcoming support for building XCFrameworks. Expect XCFrameworks in the next release, 0.37.0. **Fixed** * `carthage build` disables a validation added in Xcode 12.3 which prevents some Carthage-built frameworks from being embedded (https://github.com/Carthage/Carthage/pull/3095). * Xcode 12.3 warns when a target embeds framework with slices labeled for multiple platforms (even when the slices are all housed under different architectures); except, _some_ slight sets of platform pairs are permitted. Typically, Carthage's multi-arch frameworks are stripped at build time using `carthage copy-frameworks`, but they may be copied whole in [test targets](https://github.com/Carthage/Carthage#adding-frameworks-to-unit-tests-or-a-framework) and other rare circumstances. * When warnings-as-errors is enabled, this validation warning may fail the build. Carthage disables it internally by setting `VALIDATE_WORKSPACE=NO`. * If you see an error like `Building for iOS Simulator, but the linked and embedded framework 'REDACTED.framework' was built for iOS + iOS Simulator`, set VALIDATE_WORKSPACE=NO in your project's build settings. * Fixed [carthage creating too many tempoary directories during `copy-frameworks` phase](https://github.com/Carthage/Carthage/issues/3056) (Carthage/Carthage#3066). Thanks @tmspzz Thanks @olejnjak, @philipphofmann for improving the documentation since the last release. **Note** <details> <summary>Xcode (at the era of 12.3) does very little when Validate Workspace is enabled. If truly encompassing this facet is important to you…</summary> …try copying a Carthage Checkouts/Build directory to another location, editing Xcode projects to remove any targets that (aside from through `carthage copy-frameworks`) embed Carthage-built things, and copy the xcodebuild invocation from a run of `carthage … --verbose` and modify-it, removing VALIDATE_WORKSPACE=NO. </details>
0.36.0 - Portuguese Pastel
3 years ago
## ⚠️ This version doesn't fix the issue with Xcode 12. See https://github.com/Carthage/Carthage/issues/3019 ⚠️ **Fixed** * Prevent cross device issues in `copy-frameworks` (#3047). Thanks @rudedogdhc! Thank you to @nixnoughtnothing for improvements to the code base! Thank you to @tmspzz for reviewing pull requests!
0.35.1 - Continuous Commitment
3 years ago
## ⚠️ This version doesn't fix the issue with Xcode 12. See https://github.com/Carthage/Carthage/issues/3019 ⚠️ **Fixed** * Fixed copying files across different volumes (#3025). Thanks @rudedogdhc! **Added** * Sort frameworks so changes in .version files are easier to spot (#3015). Thanks @peteranny! * Support `NO_PROXY` or `no_proxy` environment variable (#2991). Thanks @okaverin! * Prevent re-downloading module stable binaries (#3040). Thanks @justAnotherDev! * Remove leftovers of failed archives unzips (#3035). Thanks @tattn! **Improved** * Spelling mistakes in README (#3021). Thanks @thomasaw! * Reflect carthage build requirements in README (#3045). Thanks @chrstphrchvz! * Installing carthage outside of protected folders no longer requires `sudo` (#3024). Thanks @cfelder! * Remove invalid archs by intersecting VALID_ARCHS and ARCHS (#2987). Thanks @jerbob92! Thank you to @jdhealy @tmspzz for reviewing pull requests!
0.35.0 - Carrageenan Cabaletta
3 years ago
Carthage now elides a [certain warning](https://github.com/Carthage/Carthage/blob/0.34.0/Source/CarthageKit/SwiftVersionError.swift#L25) about Swift compiler versions upon truths from three sources: - Swift compiler version (as queried by local machine’s `xcode-select` and possible `TOOLCHAINS` environment variable) being greater than 5.1 - that particular framework’s recorded Swift compiler being greater than 5.1 - that particular framework matching (somewhat) a [glob](https://en.wikipedia.org/wiki/Glob_(programming)#Syntax) (working from framework-bundle-root–level) of `Modules/*swiftmodule*/*.swiftinterface` - note: only one directory matching `Modules/*swiftmodule*/` will continue querying inside of it — with `FileManager.default.contentsOfDirectory` defining that - note: presence of particular architectures (armv7, i386, x86_64, etc.) are **not** taken into account **Note**: As `.swiftinterface` files emission [“currently [as of Swift 5.X] requires library evolution support”](https://swift.org/blog/library-evolution/index.html) — take warning of the Swift Compiler Team’s message that [“Library evolution trades off performance for flexibility”](https://swift.org/blog/library-evolution/index.html) and [comes with caveats](https://swift.org/blog/library-evolution/index.html#interaction-with--enable-testing). • :warning: Not every library vendor will desire to enable `BUILD_LIBRARY_FOR_DISTRIBUTION` in their project’s build settings, or even to field questions on bugs resulting from those adding that scope. _Be kind_ to library vendors that might weigh their potential maintenance/ongoing-qa-debugging work differently then your `BUILD_LIBRARY_FOR_DISTRIBUTION` desires. 〜 Thanks @DavidBrunow for this feature! **Dynamic Intelligent Platform Parsing** Previously, Carthage would propagate errors upon reading non-compiled-in values from `SUPPORTED_PLATFORMS` or `PLATFORM_NAME`. Carthage 0.35.0 [supports `SUPPORTED_PLATFORMS` or `PLATFORM_NAME` dynamically with intelligent parsing from `xcodebuild -showsdks -json`.](https://github.com/Carthage/Carthage/pull/3001) Carthage’s [`--platform` argument](https://github.com/Carthage/Carthage/commit/68d77602ac11e27f753450638527f6ea2a6bce85#diff-908d3140eab5f48b3e5f926de743ef52R232-R246) takes the same input of 2019-era SDKs — however, in alignment with the above: the default (a.k.a. “all”) parameter will allow dynamically-parsed SDKs to propagate. `carthage archive` [still uses the hardcoded four 2019-era SDKs](https://github.com/Carthage/Carthage/commit/68d77602ac11e27f753450638527f6ea2a6bce85#diff-db6bc809697a7fc656230029d748c3feR73-R76). The `carthage cleanup` command — existing on-master, but unshipped-in-tags — no longer makes sense (when set of SDKs are non-fixed across Xcode versions) and has been removed. Dynamic Platform Parsing can occur [from `xcodebuild -showsdks -json`](https://github.com/Carthage/Carthage/commit/68d77602ac11e27f753450638527f6ea2a6bce85#diff-bcd3b8bafc84006ccb8b16295b6707b0R139-R200) with fallbacks to [`BuildSetting` extraction from a Xcode-bundled `xcodeproj`](https://github.com/Carthage/Carthage/commit/68d77602ac11e27f753450638527f6ea2a6bce85#diff-2c8b811867554fe0cd24adead2bd16daR326-R368), and beyond that [falling back to hardcoded 2019-era values](https://github.com/Carthage/Carthage/commit/68d77602ac11e27f753450638527f6ea2a6bce85#diff-2c8b811867554fe0cd24adead2bd16daR380). ⤵️ **Note**: _the dynamic parsing **will** omit SDKs — such as DriverKit — where JSON-derived `canonicalName` and `platform` do not share a common prefix · DriverKit has an ouptut `canonicalName` similar to «driverkit.macosx19.0»._ **Other Breaking Changes** - [Track static frameworks in `.version` files](https://github.com/Carthage/Carthage/pull/2900). Thanks @elliottwilliams! - Old carthage versions will still behave erroneous — but not propagate errors — after parsing sets of newer `.version` files output for Swift static frameworks. - To guarantee output of newer `.version` files for affected Swift static frameworks, change Swift versions and rerun Carthage with the `--cache-builds` flag (even temporarily), or delete `.framework` bundles for affected Swift static ones and rerun Carthage with the `--cache-builds` flag. - [For GitHub Release assets, expand permitted MIME types to include `application/x-zip-compressed`](https://github.com/Carthage/Carthage/pull/2877). Thanks @MatkovIvan! - [Reject invalid](https://github.com/Carthage/Carthage/pull/2765) [binary archives containing the same framework multiple times](https://github.com/Carthage/Carthage/pull/2791). Thanks @tmspzz! - [For binary-spec-ed dependencies and GitHub Release downloads, copy dSYMs if any architecture matches current binary — also affects CarthageKit consumers](https://github.com/Carthage/Carthage/pull/2776). Thanks @hlineholm! - [Conflict less in concurrent strip-framework–dedicated Carthage process invocations via different underlying copying](https://github.com/Carthage/Carthage/pull/2796) — [rather than overwrite straight from process, now temp directory usage prevents conflicts on certain same-file/same-path writes](https://github.com/Carthage/Carthage/pull/2809). Thanks @kalkwarf! - [Fallback to dSYM version parsing for more cases before invalidating cached builds](https://github.com/Carthage/Carthage/pull/2865). Thanks @kmcbride! - [Add `--use-netrc` flag](https://github.com/Carthage/Carthage/pull/2774) under which [basic `~/.netrc` files](https://github.com/Carthage/Carthage/blob/f94766acc9bee35e295eea03c282472c49f49800/Tests/CarthageKitTests/NetrcSpec.swift) facilitate [`binary`-specified framework download](https://github.com/Carthage/Carthage/blob/f656edfe35651b54eec50d814e79d079f8eea7c4/Documentation/Artifacts.md#binary-only-frameworks) authentication. Thanks @mollyIV! **Stability** - [Fix various cases of «Segmentation Fault 11»](https://github.com/Carthage/Carthage/pull/2908). Thanks @taisukeh! - [Extend error messages when reading certain binaries](https://github.com/Carthage/Carthage/pull/2917). Thanks @hlineholm! **Security Enhancing Breaking Change** - [Prevent directory traversal through additional sanitization of `git`-specified repository URL components — specifically nul characters (`\u{0000}`) and periods (`\u{0023}`)](https://github.com/Carthage/Carthage/search?q=%22prevent+directory+traversal%22&type=Commits). Thanks @manicmaniac! - Replacement strings include repeated «Full Width Full Stops» (`\u{FF0E}`) and replacement `␀` (`\u{2400}`). - URL components not starting with periods (`\u{0023}`) _will not_ see inserted «Full Width Full Stops» (`\u{FF0E}`). **Breaking — For Apps Importing Carthage Kit and XCDBLD** <details><summary>For Apps Importing Carthage Kit and XCDBLD</summary></br> - Removed: `XCDBLD.Platform` — replaced (not one-for-one) by `struct SDK` with new method `SDK.platformSimulatorlessFromHeuristic`. - Removed: `XCDBLD`’s enum-based `SDK` — replaced by `struct SDK`. - Removed: `XCDBLD.SDK.platform` and `XCDBLD.SDK.allSDKs`. - Changed: Hashing and equality for `XCDBLD.SDK` is case-insensitive. - Canonical casing for SDK names available through `SDK.knownIn2019YearSDKs` and `SDK.setFromJSONShowSDKs`. - Changed: Various type signature changes [removing `XCDBLD.Platform` and incorporating `XCDBLD.SDK`](https://github.com/Carthage/Carthage/commit/68d77602ac11e27f753450638527f6ea2a6bce85). - Removed: `SDK.from(string:)` — replaced by `SDK.init(name:simulatorHeuristic)`. - Passing an empty string as `simulatorHeuristic` is usually the foremost codepath. - SDK.init(rawValue:) is **not intended** for wide spread use · as it’s limited to only 2019-era hardcoded SDKs. - Removed: `BuildSettings.buildSDKs: SignalProducer<SDK, CarthageError>` — replaced with `BuildSettings.buildSDKRawNames: Set<String>`. - Made Public: Various [`VersionFile`-related API](https://github.com/Carthage/Carthage/pull/2931). Thanks @acecilia! </summary></details> **Thanks to all Contributors** Thank you to @CosynPa, @sidepelican, @chuganzy, @sstadelman (#2781), @giginet (#2761), @ikesyo (#2886, #2785, #2784), @DavidBrunow (#2966, #2967), @mvalentiner, @gubikmic, @sticksen, @nteissler, @ismetanin, @brandonlee503, @yhkaplan, and @tmspzz for improvements to the codebase, tests, and documentation.
0.34.0 - Barometric Ballasting
3 years ago
**⚠️ Carthage source only builds on Xcode 10.0+, thus requiring [macOS High Sierra 10.13.6](https://support.apple.com/en-us/HT208864). ⚠️** Additional workarounds to enable Xcode 11.0, 11.1, and 11.2 betas have been added; see below. **Fixed** * ASCII alphabet for Semantic Version [pre-release](https://semver.org/#spec-item-9) and [build metadata](https://semver.org/#spec-item-10) components [now includes uppercase and lowercase W](https://github.com/Carthage/Carthage/pull/2806/files#diff-aa0796654f69d3d5ad0a58b156377953R37), fixing an omission and completing the alphabet (#2805 #2806). Thanks @drakerr! * Workaround Swift 5.1 compiler crash bug to allow the compilation of Carthage itself on Xcode 11, Xcode 11.1, and Xcode 11.2 betas (#2859). Thanks @michaelmcguire! **Breaking — For Apps Importing Carthage Kit** <details><summary>Removed — as a library dependency — <code>SwiftPM</code> and <code>llbuild</code> and reinstated <code>struct CarthageKit.SemanticVersion</code>.</summary> </br>A [bug in the-tool-SwiftPM's package resolution](https://github.com/apple/swift-package-manager/pull/2197) resulted in disregard for the (crucial) ‘resolved file’ when resolving branch-based dependencies. Which would put us in the position of needing any commit of `apple/swift-package-manager` that didn’t specify its dependency on `apple/swift-llbuild` in the branch-based style. Also criteria for the above, working Swift 4.2.X manifests and compilation _and_ working Swift 5.X manifests and compilation. No such commit of `apple/swift-package-manager` could be found. In addition, some confusion [around `llbuild`'s `sqlite3`](https://github.com/apple/swift-llbuild/commit/f1c9ad9a253cdf1aa89a7f5c99c30b4513b06ddb#diff-37ca2dd15ca0f6b1b49e78db084ef5b9L5-L10) linkage made criteria even more confusing. - Some initializers and methods on `struct Carthage.SemanticVersion` have differences from the previous incarnation found in v0.33.0. - Reinstate `struct CarthageKit.SemanticVersion` in all callsites in codebase and tests, removing `SPMUtility.Version`. - No longer necessary to `import struct Foundation.URL` with the removed import of SPMUtility. - Makefile removes complications which previously supported `llbuild`'s `sqlite3` linkage. - Working Swift 4.2.X compilation is [necessary to support building](https://github.com/Homebrew/brew/blob/7dd0466/Library/Homebrew/os/mac/xcode.rb#L18) for [macOS High Sierra](https://en.wikipedia.org/wiki/MacOS_High_Sierra) on Homebrew bottling infrastructure. </details> **Important** Future updates will address Catalyst and building of XCFrameworks. Thank you for your patience. Thank you to @jdhealy, @sstadelman, @tmspzz, @giginet, @olejnjak, and @ikesyo for improvements to the codebase and the infrastructure. Thank you to @mdiep, @tmspzz, @giginet, and @ikesyo for reviewing pull requests!
0.33.0 - Astrometric Associations
4 years ago
**⚠️ Carthage source only builds on Xcode 10.0+, thus requiring [macOS High Sierra](https://en.wikipedia.org/wiki/MacOS_High_Sierra). ⚠️** In particular, `carthage` compiles under Swift 4.2 and 5.0 with Xcode 10.1 and 10.2. **Fixed** * In cases where `device` and `simulator` destined builds are merged into a single bundle, also merge `-Swift.h` header files from each with [active inclusion of target conditionals](https://github.com/Carthage/Carthage/pull/2748/files#diff-f66644e8cfbcad3c3826395a690ddfbcR367) (#2723, #2748). Thanks @DavidBrunow, @VictorNouvellet, and @buranmert! * [Currently limited](https://github.com/Carthage/Carthage/blob/87e2198/Source/CarthageKit/FrameworkExtensions.swift#L300) to a single pair of `-Swift.h`-suffixed files. Should be sufficient for the vast majority of frameworks. * Under `--cache-builds` mode — * Support headerless Swift-containing frameworks via dSYM parsing (#2622). Thanks @blender! * When run with `--no-skip-current`, produce `.version` files for those additional frameworks (#2636). Thanks @blender! * In support of community tooling, embed partial toolchain information (often `swiftlang` and `clang` versions) in `.version` files for Swift-containing frameworks. Expect these `.version` files to contain different output between Carthage v0.33.0 and previous Carthage versions (#2585, #2707). Thanks @giginet and @kenji21! **Notable** * For file system objects at some level of `Carthage/Checkouts/DependencyX`, delete with `FileManager.removeItem(at:)` if using `--use-submodules` and something exists there that’s not a directory housing a `.git` subdirectory. This matches Carthage’s existing deletion behavior of checkouts without `--use-submodules`. Use caution. (#2654). * In Cartfiles, specifications with `github` at the beginning of the line now error when followed by non-http-or-https-schemed URLs (often `ssh://` or `git://` schemed). We long-standing queried these with web requests, so now errors output earlier in the process with more helpful messaging (#2379). Thanks @ikesyo! * Static frameworks under `--cache-builds` mode highly likely to proceed errantly cache-valid ≈ late caught bug — * Will be correctly cache-invalid upon a version-specification change (including changing the specified SHA); also, upon a toolchain change for a Swift-containing static framework (including after a different `xcode-select`). * The first run of a never-modified-by-Carthage-v0.33.0 `.version` file for a Swift-containing static framework under Carthage v0.33.0 will also cache-invalidate it. * `carthage build <framework>` without `--cache-builds` will always attempt rebuilding it and it's dependencies. <details> <summary><strong>Note for Apps Importing CarthageKit.framework</strong></summary> * Carthage (the CLI executable) is now built exclusively with [SwiftPM](https://github.com/apple/swift-package-manager/). In effect, the Cartfile supporting `CarthageKit.framework` has been removed. Consuming CarthageKit is now [done through SwiftPM](https://swift.org/getting-started/#using-the-package-manager) and CarthageKit is now a static library. </details> **On environment variable [`GIT_SSH_COMMAND`](https://git-scm.com/docs/git#Documentation/git.txt-codeGITSSHCOMMANDcode)** * An SSH prompt (invisble to a `carthage` user) could stop progression when encountering a host not yet public-key-fingerprint verified by the user. Carthage now outputs proper messaging at that point, at the expense of [`GIT_SSH_COMMAND`](https://git-scm.com/docs/git#Documentation/git.txt-codeGITSSHCOMMANDcode) no longer being honored (#2734). Thanks @jlawton! **Improved** * Report read errors from files pointed to by `SCRIPT_INPUT_FILE_LIST_` variables (#2668). Thanks @ferranpujolcamins! * More efficient, less errant querying of git’s representation of file system objects via `ls-tree` (#2617). Thanks @CosynPa! * More efficient `git submodule sync` over multiple dependencies (#2643). Thanks @mdiep! Thank you to @FranklinYu, @DivineDominion, @musbaalbaki, and @salbertson for improvements to the documentation. Thank you to @mxcl, @giginet, @olejnjak, and @ikesyo for improvements to the codebase and the infrastructure. Thank you to @blender, @mdiep, @giginet, @DavidBrunow, @VictorNouvellet, and @ikesyo for reviewing pull requests!
mozilla-mobile/firefox-ios v118.0
Firefox for iOS
⭐️ 11,635
🕓 7 hours ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
v118.0
14 hours ago
# Overview This is our official v118.0 release of Firefox-iOS. It's based on the [v118 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v118) ## Differences between v117.3 & v118.0 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/v117.3...v118.0).
v117.3
1 week ago
# Overview This is our official v117.3 release of Firefox-iOS. It's based on the [v117 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v117) ## Differences between v117.2 & v117.3 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/v117.2...v117.3).
v117.2
2 weeks ago
# Overview This is our official v117.2 release of Firefox-iOS. It's based on the [v117 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v117) ## Differences between v117.1 & v117.2 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/v117.1...v117.2).
v117.1
2 weeks ago
# Overview This is our official v117.1 release of Firefox-iOS. It's based on the [v117 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v117) ## Differences between v117.0 & v117.1 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/v117.0...v117.1).
v117.0
3 weeks ago
# Overview This is our official v117.0 release of Firefox-iOS. It's based on the [v117 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v117) ## Differences between v116.3 & v117.0 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/v116.3...v117.0).
v116.3
5 weeks ago
# Overview This is our official v116.3 release of Firefox-iOS. It's based on the [v116 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v116.2) ## Differences between v116.2 & v116.3 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/v116.2...v116.3).
v116.2
5 weeks ago
# Overview This is our official v116.2 release of Firefox-iOS. It's based on the [v116 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v116.2) ## Differences between v116.1 & v116.2 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/v116.1...v116.2).
v116.1
6 weeks ago
# Overview This is our official v116.1 release of Firefox-iOS. It's based on the [v116 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v116) ## Differences between v116.0 & v116.1 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/v116.0...v116.1).
v116.0
7 weeks ago
# Overview This is our official v116.0 release of Firefox-iOS. It's based on the [v116 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v116) ## Differences between v115.1 & v116.0 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/v115.1...v116.0).
v115.1
9 weeks ago
# Overview This is our official v115.1 release of Firefox-iOS. It's based on the [v115 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v115) # Differences between v115.0 & v115.1 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/v115.0...v115.1).
iOS macOS
microsoft/onnxruntime v1.16.0
ONNX Runtime: cross-platform, high performance ML inferencing and training accelerator
⭐️ 10,446
🕓 5 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
ONNX Runtime v1.16.0
5 days ago
# General * Support for serialization of models >=2GB # APIs * New session option to disable default CPU EP fallback `session.disable_cpu_ep_fallback` * Java * Support for fp16 and bf16 tensors as inputs and outputs, along with utilities to convert between these and fp32 data. On JDK 20 and newer the fp16 conversion methods use the JDK's Float.float16ToFloat and Float.floatToFloat16 methods which can be hardware accelerated and vectorized on some platforms. * Support for external initializers so that large models that can be instantiated without filesystem access * C# * Expose OrtValue API as the new preferred API to run inference in C#. This reduces garbage and exposes direct native memory access via Slice like interfaces. * Make Float16 and BFloat16 full featured fp16 interfaces that support conversion and expose floating properties (e.g. IsNaN, IsInfinity, etc) * C++ * Make Float16_t and BFloat16_t full featured fp16 interfaces that support conversion and expose floating properties (e.g. IsNaN, IsInfinity, etc) # Performance * Improve LLM quantization accuracy with smoothquant * Support 4-bit quantization on CPU * Optimize BeamScore to improve BeamSearch performance * Add FlashAttention v2 support for Attention, MultiHeadAttention and PackedMultiHeadAttention ops # Execution Providers * CUDA EP * Initial fp8 support (QDQ, Cast, MatMul) * Relax CUDA Graph constraints to allow more models to utilize * Allow CUDA allocator to be registered with ONNX Runtime externally * TensorRT EP * CUDA Graph support * Support user provided cuda compute stream * Misc bug fixes and improvements * OpenVINO EP * Support OpenVINO 2023.1 * QNN EP * Enable context binary cache to reduce initialization time * Support QNN 2.12 * Support for resize with asymmetric transformation mode on HTP backend * Ops support: Equal, Less, LessOrEqual, Greater, GreaterOrEqual, LayerNorm, Asin, Sign, DepthToSpace, SpaceToDepth * Support 1D Conv/ConvTranspose * Misc bug fixes and improvements # Mobile * Initial support for [Azure EP](https://onnxruntime.ai/docs/execution-providers/Azure-ExecutionProvider.html) * Dynamic shape support for CoreML * Improve React Native performance with JSI * Mobile support for CLIPImageProcessor pre-processing and CLIP scenario * Swift Package Manager support for ONNX Runtime inference and ONNX Runtime extensions via [onnxruntime-swift-package-manager](https://github.com/microsoft/onnxruntime-swift-package-manager) # Web * webgpu ops coverage improvements (SAM, T5, Whisper) * webnn ops coverage improvements (SAM, Stable Diffusion) * Stability/usability improvements for webgpu # Large model training * ORTModule + OpenAI Triton Integration now available. [See details here](https://github.com/microsoft/onnxruntime/blob/main/docs/ORTModule_Training_Guidelines.md#6-use-openai-triton-to-compute-onnx-sub-graph) * [Label Sparsity compute optimization](https://github.com/microsoft/onnxruntime/blob/main/docs/ORTModule_Training_Guidelines.md#ortmodule_enable_compute_optimizer) support complete and enabled by default starting release 1.16 * **New experimental** embedding [sparsity related optimizations](https://github.com/microsoft/onnxruntime/blob/main/docs/ORTModule_Training_Guidelines.md#ortmodule_enable_embedding_sparse_optimizer) available (disabled by default). * Improves training performance of Roberta in Transformers by 20-30% * Other compute optimizations like Gather/Slice/Reshape upstream support enabled. * Optimizations for [LLaMAv2 (~10% acceleration)](https://github.com/huggingface/optimum/tree/main/examples/onnxruntime/training/text-classification#text-classification) and OpenAI Whisper * Improvements to logging and metrics (initialization overhead, memory usage, statistics convergence tool, etc) system improvements. * PythonOp enhancement: bool and tuple[bool] constants, materialize grads, empty inputs, save in context, customized shape inference, use full qualified name for export. * SCELossInternal/SCELossGradInternal CUDA kernels can handle elements more than std::numeric_limits<int32_t>::max. * Improvements to LayerNorm fusion * [Model cache](https://github.com/microsoft/onnxruntime/blob/main/docs/ORTModule_Training_Guidelines.md#ortmodule_cache_dir) for exported onnx model is introduced to avoid repeatedly exporting a model that is not changed across. # On-Device Training * iOS support available starting this release * Minimal build now available for On-Device Training. Basic binary size ~1.5 MB * ORT-Extensions custom op support enabled through onnxblock for on-device training scenarios # ORT Extensions This ORT release is accompanied by updates to [onnxruntime-extensions](https://github.com/microsoft/onnxruntime-extensions/). Features include: * New Python API gen_processing_models to export ONNX data processing model from Huggingface Tokenizers such as LLaMA , CLIP, XLM-Roberta, Falcon, BERT, etc. * New TrieTokenizer operator for RWKV-like LLM models, and other tokenizer operator enhancements. * New operators for Azure EP compatibility: AzureAudioToText, AzureTextToText, AzureTritonInvoker for Python and NuGet packages. * Processing operators have been migrated to the new [Lite Custom Op API](https://github.com/microsoft/onnxruntime/blob/gh-pages/docs/reference/operators/add-custom-op.md#define-and-register-a-custom-operator) --- # Known Issues * ORT CPU Python package requires execution provider to be explicitly provided. See #17631. Fix is in progress to be patched. --- # Contributions Contributors to ONNX Runtime include members across teams at Microsoft, along with our community members: [fs-eire](https://github.com/fs-eire), [edgchen1](https://github.com/edgchen1), [snnn](https://github.com/snnn), [pengwa](https://github.com/pengwa), [mszhanyi](https://github.com/mszhanyi), [PeixuanZuo](https://github.com/PeixuanZuo), [tianleiwu](https://github.com/tianleiwu), [adrianlizarraga](https://github.com/adrianlizarraga), [baijumeswani](https://github.com/baijumeswani), [cloudhan](https://github.com/cloudhan), [satyajandhyala](https://github.com/satyajandhyala), [yuslepukhin](https://github.com/yuslepukhin), [RandyShuai](https://github.com/RandyShuai), [RandySheriffH](https://github.com/RandySheriffH), [skottmckay](https://github.com/skottmckay), [Honry](https://github.com/Honry), [dependabot[bot]](https://github.com/dependabot[bot]), [HectorSVC](https://github.com/HectorSVC), [jchen351](https://github.com/jchen351), [chilo-ms](https://github.com/chilo-ms), [YUNQIUGUO](https://github.com/YUNQIUGUO), [justinchuby](https://github.com/justinchuby), [PatriceVignola](https://github.com/PatriceVignola), [guschmue](https://github.com/guschmue), [yf711](https://github.com/yf711), [Craigacp](https://github.com/Craigacp), [smk2007](https://github.com/smk2007), [RyanUnderhill](https://github.com/RyanUnderhill), [jslhcl](https://github.com/jslhcl), [wschin](https://github.com/wschin), [kunal-vaishnavi](https://github.com/kunal-vaishnavi), [mindest](https://github.com/mindest), [xadupre](https://github.com/xadupre), [fdwr](https://github.com/fdwr), [hariharans29](https://github.com/hariharans29), [AdamLouly](https://github.com/AdamLouly), [wejoncy](https://github.com/wejoncy), [chenfucn](https://github.com/chenfucn), [pranavsharma](https://github.com/pranavsharma), [yufenglee](https://github.com/yufenglee), [zhijxu-MS](https://github.com/zhijxu-MS), [jeffdaily](https://github.com/jeffdaily), [natke](https://github.com/natke), [jeffbloo](https://github.com/jeffbloo), [liqunfu](https://github.com/liqunfu), [wangyems](https://github.com/wangyems), [er3x3](https://github.com/er3x3), [nums11](https://github.com/nums11), [yihonglyu](https://github.com/yihonglyu), [sumitsays](https://github.com/sumitsays), [zhanghuanrong](https://github.com/zhanghuanrong), [askhade](https://github.com/askhade), [wenbingl](https://github.com/wenbingl), [jingyanwangms](https://github.com/jingyanwangms), [ashari4](https://github.com/ashari4), [gramalingam](https://github.com/gramalingam), [georgen117](https://github.com/georgen117), [sfatimar](https://github.com/sfatimar), [BowenBao](https://github.com/BowenBao), [hanbitmyths](https://github.com/hanbitmyths), [stevenlix](https://github.com/stevenlix), [jywu-msft](https://github.com/jywu-msft)
ONNX Runtime v1.15.1
14 weeks ago
This release fixed the following issues: 1. A coding problem in test/shared_lib/test_inference.cc that it should use ASSERT_NEAR to test float values instead of ASSERT_EQ. Without this change, some DNNL/OpenVino tests would fail on some AMD CPUs. 2. A misaligned error in cublasGemmBatchedHelper function. The error only occurs when CUDA version = 11.8 and the GPU's CUDA Compute capability >=80. (In other words: with TensorFloat-32 support) (#15981) 3. A build issue that build with onnxruntime_ENABLE_MEMORY_PROFILE was broken in 1.15.0 release. (#16124) 4. Native onnxruntime library not loading in Azure App Service. It is because in 1.15.0 we introduced a Windows API call to SetThreadDescription. Though the API is available in all Windows 10 versions, some sandbox environments block using the API. (#15375) 5. An alignment problem for xnnpack EP on Intel/AMD CPUs on PC platforms. 6. Some training header files were missing in the 1.15.0 training nuget package. 7. Some fields in OrtCUDAProviderOptionsV2 struct are not initialized 8. The *.dylib files in ONNX Runtime nuget package are not signed. (#16168) # Known issue 1. Segfaults when loading model with local functions, works fine if model is inlined by ONNX (#16170) 2. Cross building for iOS requires manually downloading protoc (#16238)
ONNX Runtime v1.15.0
17 weeks ago
# Announcements Starting from the next release(ONNX Runtime 1.16.0), at operating system level we will drop the support for - iOS 11 and below. iOS 12 will be the minimum supported version. - CentOS 7, Ubuntu 18.04, and any Linux distro without glibc version >=2.28. At compiler level we will drop the support for - GCC version <= 9 - Visual Studio 2019 Also, we will remove the onnxruntime_DISABLE_ABSEIL build option since we will upgrade protobuf and the new protobuf version will need abseil. # General - [Added support for ONNX Optional type in C# API](https://github.com/microsoft/onnxruntime/pull/15314) - [Added collectives to support multi-GPU inferencing](https://github.com/microsoft/onnxruntime/pull/14399) - Updated macOS build machines to macOS-12, which comes with Xcode 14.2 and we should stop using Xcode 12.4 - Added Python 3.11 support (deprecate 3.7, support 3.8-3.11) in packages for Onnxruntime CPU, Onnxruntime-GPU, Onnxruntime-directml, and onnxruntime-training. - Updated to CUDA 11.8. ONNX Runtime source code is still compatible with CUDA 11.4 and 12.x. - Dropped the support for Windows 8.1 and below - Eager mode code and onnxruntime_ENABLE_EAGER_MODE cmake option are deleted. - Upgraded Mimalloc version from 2.0.3 to 2.1.1 - Upgraded protobuf version from 3.18.3 to 21.12 - New dependency: cutlass, which is only used in CUDA/TensorRT packages. - Upgraded DNNL from 2.7.1 to 3.0 # Build System - On POSIX systems by default we disallow using "root" user to build the code. If needed, you can append "--allow_running_as_root" to your build command to bypass the check. - Add the support for building the source natively on Windows ARM64 with Visual Studio 2022. - Added a Gradle wrapper and updated Gradle version from 6.8.3 to 8.0.1. (Gradle is the tool for building ORT Java package) - When doing cross-compiling, the build scripts will try to download a prebuit protoc from Github instead of building the binary from source. Because now protobuf has many dependencies. It is not easy to setup a build environment for protobuf. # Performance - [Improved string marshalling and reduce GC pressure](https://github.com/microsoft/onnxruntime/pull/15545) - [Added a build option to allow using a lock-free queue in threadpool for improved CPU utilization](https://github.com/microsoft/onnxruntime/pull/14834) - [Fix CPU memory leak due to external weights](https://github.com/microsoft/onnxruntime/pull/15040) - Added fused decoder multi-head attention kernel to improve GPT and decoder models(like T5, Whisper) - Added packing mode to improve encoder models with inputs of large padding ratio - Improved generation algorithm (BeamSearch, TopSampling, GreedySearch) - Improved performance for StableDiffusion, ViT, GPT, whisper models # Execution Providers Two new execution providers: JS EP and QNN EP. ## TensorRT EP - Official support for TensorRT 8.6 - Explicit shape profile overrides - Support for TensorRT plugins via ORT custom op - Improve support for TensorRT options (heuristics, sparsity, optimization level, auxiliary stream, tactic source selection etc.) - Support for TensorRT timing cache - Improvements to our test coverage, specifically for opset16-17 models and package pipeline unit test coverage. - Other misc bugfixes and improvements. ## OpenVINO EP - Support for OpenVINO 2023.0 - Dynamic shapes support for iGPU - Changes to OpenVINO backend to improve first inference latency - Deprecation of HDDL-VADM and Myriad VPU support - Misc bug fixes. ## QNN EP - [Initial Public preview release](https://www.nuget.org/packages/Microsoft.ML.OnnxRuntime.QNN) ## DirectML EP: - Updated to [DirectML 1.12](https://github.com/microsoft/DirectML/blob/master/Releases.md#directml-112) - Opset 16-17 support ## AzureEP - Added support for OpenAI whisper model - Available in a Nuget pkg in addition to Python # Mobile ## New packages - Swift Package Manager for onnxruntime - Nuget package for onnxruntime-extensions (supports Android/iOS for MAUI/Xamarin) - React Native package for onnxruntime can optionally include onnxruntime-extensions ## Pre/Post processing - Added support for built-in pre and post processing for NLP scenarios: classification, question-answering, text-prediction - Added support for built-in pre and post processing for Speech Recognition (Whisper) - Added support for built-in post processing for Object Detection (YOLO). Non-max suppression, draw bounding boxes - Additional CoreML and NNAPI kernels to support customer scenarios - NNAPI: BatchNormalization, LRN - CoreML: Div, Flatten, LeakyRelu, LRN, Mul, Pad, Pow, Sub # Web - [preview] WebGPU support - Support building the source code with "MinGW make" on Windows. # ORT Training ## On-device training: - Official package for On-Device Training now available. On-device training extends ORT Inference solutions to enable training on edge devices. - APIs and Language bindings supported for C, C++, Python, C#, Java. - Packages available for Desktop and Android. - For custom [build](https://onnxruntime.ai/docs/build/training.html#build-for-on-device-training)s refer build instructions. ## Others - Added [graph optimizations]( https://github.com/microsoft/onnxruntime/blob/rel-1.15.0/docs/ORTModule_Training_Guidelines.md#ortmodule_enable_compute_optimizer) which leverage the sparsity in the label data to improve performance. With these optimizations we see performance gains ranging from 4% to 15% for popular HF models over baseline ORT. - Vision transformer models like ViT, BEIT and SwinV2 see upto 44% speedup with ORT Training+ DeepSpeed over PyTorch eager mode on AzureML. - Added optimizations for SOTA models like Dolly and Whisper. ORT Training + DS now gives ~17% speedup for Whisper and ~4% speedup for Dolly over PyTorch eager mode. Dolly optimizations on main branch show a ~40% over eager mode. # Known Issues - The onnxruntime-training 1.15.0 packages published to pypi.org were actually built in Debug mode instead of Release mode. You can get the right one from https://download.onnxruntime.ai/ . We will fix the issue in the next patch release. - XNNPack EP does not work on x86 CPUs without AVX-512 instructions, because we used wrong alignment when allocating buffers for XNNPack to use. - The CUDA EP source code has a build error when CUDA version <11.6. See #16000. - The onnxruntime-training builds are missing the training header files. # Contributions Contributors to ONNX Runtime include members across teams at Microsoft, along with our community members: [snnn](https://github.com/snnn), [fs-eire](https://github.com/fs-eire), [edgchen1](https://github.com/edgchen1), [wejoncy](https://github.com/wejoncy), [mszhanyi](https://github.com/mszhanyi), [PeixuanZuo](https://github.com/PeixuanZuo), [pengwa](https://github.com/pengwa), [jchen351](https://github.com/jchen351), [cloudhan](https://github.com/cloudhan), [tianleiwu](https://github.com/tianleiwu), [PatriceVignola](https://github.com/PatriceVignola), [wangyems](https://github.com/wangyems), [adrianlizarraga](https://github.com/adrianlizarraga), [chenfucn](https://github.com/chenfucn), [HectorSVC](https://github.com/HectorSVC), [baijumeswani](https://github.com/baijumeswani), [justinchuby](https://github.com/justinchuby), [skottmckay](https://github.com/skottmckay), [yuslepukhin](https://github.com/yuslepukhin), [RandyShuai](https://github.com/RandyShuai), [RandySheriffH](https://github.com/RandySheriffH), [natke](https://github.com/natke), [YUNQIUGUO](https://github.com/YUNQIUGUO), [smk2007](https://github.com/smk2007), [jslhcl](https://github.com/jslhcl), [chilo-ms](https://github.com/chilo-ms), [yufenglee](https://github.com/yufenglee), [RyanUnderhill](https://github.com/RyanUnderhill), [hariharans29](https://github.com/hariharans29), [zhanghuanrong](https://github.com/zhanghuanrong), [askhade](https://github.com/askhade), [wschin](https://github.com/wschin), [jywu-msft](https://github.com/jywu-msft), [mindest](https://github.com/mindest), [zhijxu-MS](https://github.com/zhijxu-MS), [dependabot[bot]](https://github.com/dependabot[bot]), [xadupre](https://github.com/xadupre), [liqunfu](https://github.com/liqunfu), [nums11](https://github.com/nums11), [gramalingam](https://github.com/gramalingam), [Craigacp](https://github.com/Craigacp), [fdwr](https://github.com/fdwr), [shalvamist](https://github.com/shalvamist), [jstoecker](https://github.com/jstoecker), [yihonglyu](https://github.com/yihonglyu), [sumitsays](https://github.com/sumitsays), [stevenlix](https://github.com/stevenlix), [iK1D](https://github.com/iK1D), [pranavsharma](https://github.com/pranavsharma), [georgen117](https://github.com/georgen117), [sfatimar](https://github.com/sfatimar), [MaajidKhan](https://github.com/MaajidKhan), [satyajandhyala](https://github.com/satyajandhyala), [faxu](https://github.com/faxu), [jcwchen](https://github.com/jcwchen), [hanbitmyths](https://github.com/hanbitmyths), [jeffbloo](https://github.com/jeffbloo), [souptc](https://github.com/souptc), [ytaous](https://github.com/ytaous) [kunal-vaishnavi](https://github.com/kunal-vaishnavi)
ONNX Runtime v1.14.1
29 weeks ago
This patch addresses packaging issues and bug fixes on top of v1.14.0: * Mac OS Python build for x86 arch (issue: #14663) * DirectML EP fixes: sequence ops (#14442), package naming to remove -dev suffix * CUDA12 build compatibility (#14659) * Performance regression fixes: IOBinding input (#14719), Transformer models (#14732, #14517, #14699) * ORT Training kernel fix (#14727) Only select packages were published for this patch release; others can be found in the attachments below: * Pypi: [onnxruntime](https://pypi.org/project/onnxruntime), [onnxruntime-gpu](https://pypi.org/project/onnxruntime-gpu), [onnxruntime-directml](https://pypi.org/project/onnxruntime-directml), [onnxruntime-training](https://pypi.org/project/onnxruntime-training/) * Nuget: [Microsoft.ML.OnnxRuntime](https://www.nuget.org/packages/Microsoft.ML.OnnxRuntime), [Microsoft.ML.OnnxRuntime.Gpu](https://www.nuget.org/packages/Microsoft.ML.OnnxRuntime.Gpu), [Microsoft.ML.OnnxRuntime.DirectML](https://www.nuget.org/packages/Microsoft.ML.OnnxRuntime.directml), [Microsoft.AI.MachineLearning](https://www.nuget.org/packages/Microsoft.AI.MachineLearning)
ONNX Runtime v1.14.0
32 weeks ago
# Announcements * Building ORT from source will require cmake version >=3.24 instead of >=3.18. # General * [ONNX 1.13](https://github.com/onnx/onnx/releases/tag/v1.13.0) support (opset 18) * Threading * ORT Threadpool is now NUMA aware [(details)](https://onnxruntime.ai/docs/performance/tune-performance.html#numa-support-and-performance-tuning) * New API to set thread affinity ([details](https://onnxruntime.ai/docs/performance/tune-performance.html#set-intra-op-thread-affinity)) * New custom operator APIs * Enables a custom operator to wrap an entire model that is meant to be inferenced with an external API or runtime. * [Details](https://onnxruntime.ai/docs/reference/operators/add-custom-op.html#define-and-register-a-custom-operator) and [example](https://github.com/microsoft/onnxruntime/tree/main/onnxruntime/test/testdata/custom_op_openvino_wrapper_library) * Multi-stream Execution Provider refactoring * Improves GPU utilization by putting parallel inference requests on different GPU streams. Updated for CUDA, TensorRT, and ROCM execution providers * Improves memory efficiency by enabling GPU memory reuse across different streams * Enables Execution Provider developer to customize its stream implementation by providing "Stream" interface in ExecutionProvider API * *[Preview]* [Rust API](https://github.com/microsoft/onnxruntime/tree/main/rust) for ORT - not part of release branch but available to build in main. # Performance * Support of quantization with AMX on Sapphire Rapids processors * CUDA EP performance improvements: * Improve performance of transformer models and decoding methods: beam search, greedy search, and topp sampling. * Stable Diffusion model optimizations * Change cudnn_conv_use_max_workspace default value to be 1 * Performance improvements to GRU and Slice operators # Execution Providers * TensorRT EP * Adds support for TensorRT 8.5 GA versions * Bug fixes * OpenVINO EP * Adds support for OpenVINO 2022.3 * DirectML EP: * Updated to DML [1.10.1](https://www.nuget.org/packages/Microsoft.AI.DirectML) * Additional operators: [NonZero](https://github.com/microsoft/onnxruntime/pull/13768), [Shape](https://github.com/microsoft/onnxruntime/pull/13442), [Size](https://github.com/microsoft/onnxruntime/pull/13442), [Attention](https://github.com/microsoft/onnxruntime/pull/13371), [EmbedLayerNorm](https://github.com/microsoft/onnxruntime/pull/13868), [SkipLayerNorm](https://github.com/microsoft/onnxruntime/pull/13849), [BiasGelu](https://github.com/microsoft/onnxruntime/pull/13795) * Additional data types: [Abs](https://github.com/microsoft/onnxruntime/pull/13470), [Sign](https://github.com/microsoft/onnxruntime/pull/13470), [Where](https://github.com/microsoft/onnxruntime/pull/13443) * Enable SetOptimizedFilePath [export/reload](https://github.com/microsoft/onnxruntime/pull/13913) * Bug fixes/extensions: [allow squeeze-13 axes](https://github.com/microsoft/onnxruntime/pull/13635), [EinSum with MatMul NHCW](https://github.com/microsoft/onnxruntime/pull/13440) * [ROCm EP](https://onnxruntime.ai/docs/execution-providers/ROCm-ExecutionProvider.html): 5.4 support and GA ready * *[Preview]* [Azure EP](https://onnxruntime.ai/docs/execution-providers/Azure-ExecutionProvider.html) - supports AzureML hosted models using Triton for hybrid inferencing on-device and on-cloud # Mobile * Pre/Post processing * Support updating mobilenet and super resolution models to move the pre and post processing into the model, including usage of custom ops for conversion to/from jpg/png * [onnxruntime-extensions python package](https://pypi.org/project/onnxruntime-extensions/) includes the model update script to add pre/post processing to the model * See [example](https://github.com/microsoft/onnxruntime-extensions/blob/main/tutorials/superresolution_e2e.py) model update usage * *[Coming soon]* onnxruntime-extensions packages for Android and iOS with DecodeImage and EncodeImage custom ops * Updated the onnxruntime inference examples to demonstrate end-to-end usage with onnxruntime-extensions package * [SuperResolution model](https://github.com/microsoft/onnxruntime-inference-examples/tree/main/mobile/examples/super_resolution) * XNNPACK * Added support for additional commonly used operators * Add iOS build support * XNNPACK EP is now included in the onnxruntime-c iOS package * Added support for using the ORT allocator in XNNPACK kernels to minimize memory usage # Web * [onnxruntime-extensions](https://github.com/microsoft/onnxruntime-extensions) included in default ort-web build (NLP centric) * XNNPACK Gemm * Improved exception handling * New [utility functions](https://onnxruntime.ai/docs/api/js/index.html) (experimental) to help with exchanging data between images and tensors. # Training * Performance optimizations and bug fixes for Hugging Face models (i.e. Xlnet and Bloom) * Stable diffusion optimizations for training, including support for Resize and InstanceNorm gradients and addition of ORT-enabled examples to the [diffusers library](https://github.com/huggingface/diffusers/tree/main/examples/research_projects/onnxruntime) * FP16 optimizer exposed in torch-ort ([details](https://github.com/microsoft/onnxruntime/blob/main/docs/ORTModule_Training_Guidelines.md#4-use-fp16_optimizer-to-complement-deepspeedapex)) * Bug fixes for Hugging Face models # Known Issues * The [Microsoft.ML.OnnxRuntime.DirectML](https://www.nuget.org/packages/Microsoft.ML.OnnxRuntime.DirectML) package name includes -dev-* suffix. This is functionally equivalent to the release branch build, and a patch is in progress. --- # Contributions Contributors to ONNX Runtime include members across teams at Microsoft, along with our community members: [snnn](https://github.com/snnn), [skottmckay](https://github.com/skottmckay), [edgchen1](https://github.com/edgchen1), [hariharans29](https://github.com/hariharans29), [tianleiwu](https://github.com/tianleiwu), [yufenglee](https://github.com/yufenglee), [guoyu-wang](https://github.com/guoyu-wang), [yuslepukhin](https://github.com/yuslepukhin), [fs-eire](https://github.com/fs-eire), [pranavsharma](https://github.com/pranavsharma), [iK1D](https://github.com/iK1D), [baijumeswani](https://github.com/baijumeswani), [tracysh](https://github.com/tracysh), [thiagocrepaldi](https://github.com/thiagocrepaldi), [askhade](https://github.com/askhade), [RyanUnderhill](https://github.com/RyanUnderhill), [wangyems](https://github.com/wangyems), [fdwr](https://github.com/fdwr), [RandySheriffH](https://github.com/RandySheriffH), [jywu-msft](https://github.com/jywu-msft), [zhanghuanrong](https://github.com/zhanghuanrong), [smk2007](https://github.com/smk2007), [pengwa](https://github.com/pengwa), [liqunfu](https://github.com/liqunfu), [shahasad](https://github.com/shahasad), [mszhanyi](https://github.com/mszhanyi), [SherlockNoMad](https://github.com/SherlockNoMad), [xadupre](https://github.com/xadupre), [jignparm](https://github.com/jignparm), [HectorSVC](https://github.com/HectorSVC), [ytaous](https://github.com/ytaous), [weixingzhang](https://github.com/weixingzhang), [stevenlix](https://github.com/stevenlix), [tiagoshibata](https://github.com/tiagoshibata), [faxu](https://github.com/faxu), [wschin](https://github.com/wschin), [souptc](https://github.com/souptc), [ashbhandare](https://github.com/ashbhandare), [RandyShuai](https://github.com/RandyShuai), [chilo-ms](https://github.com/chilo-ms), [PeixuanZuo](https://github.com/PeixuanZuo), [cloudhan](https://github.com/cloudhan), [dependabot[bot]](https://github.com/dependabot[bot]), [jeffbloo](https://github.com/jeffbloo), [chenfucn](https://github.com/chenfucn), [linkerzhang](https://github.com/linkerzhang), [duli2012](https://github.com/duli2012), [codemzs](https://github.com/codemzs), [oliviajain](https://github.com/oliviajain), [natke](https://github.com/natke), [YUNQIUGUO](https://github.com/YUNQIUGUO), [Craigacp](https://github.com/Craigacp), [sumitsays](https://github.com/sumitsays), [orilevari](https://github.com/orilevari), [BowenBao](https://github.com/BowenBao), [yangchen-MS](https://github.com/yangchen-MS), [hanbitmyths](https://github.com/hanbitmyths), [satyajandhyala](https://github.com/satyajandhyala), [MaajidKhan](https://github.com/MaajidKhan), [smkarlap](https://github.com/smkarlap), [sfatimar](https://github.com/sfatimar), [jchen351](https://github.com/jchen351), [georgen117](https://github.com/georgen117), [wejoncy](https://github.com/wejoncy), [PatriceVignola](https://github.com/PatriceVignola), [adrianlizarraga](https://github.com/adrianlizarraga), [justinchuby](https://github.com/justinchuby), [zhangxiang1993](https://github.com/zhangxiang1993), [gineshidalgo99](https://github.com/gineshidalgo99), [tlh20](https://github.com/tlh20), [xzhu1900](https://github.com/xzhu1900), [jeffdaily](https://github.com/jeffdaily), [suryasidd](https://github.com/suryasidd), [yihonglyu](https://github.com/yihonglyu), [liuziyue](https://github.com/liuziyue), [chentaMS](https://github.com/chentaMS), [jcwchen](https://github.com/jcwchen), [ybrnathan](https://github.com/ybrnathan), [ajindal1](https://github.com/ajindal1), [zhijxu-MS](https://github.com/zhijxu-MS), [gramalingam](https://github.com/gramalingam), [WilBrady](https://github.com/WilBrady), [garymm](https://github.com/garymm), [kkaranasos](https://github.com/kkaranasos), [ashari4](https://github.com/ashari4), [martinb35](https://github.com/martinb35), [AdamLouly](https://github.com/AdamLouly), [zhangyaobit](https://github.com/zhangyaobit), [vvchernov](https://github.com/vvchernov), [jingyanwangms](https://github.com/jingyanwangms), [wenbingl](https://github.com/wenbingl), [daquexian](https://github.com/daquexian), [sreekanth-yalachigere](https://github.com/sreekanth-yalachigere), [NonStatic2014](https://github.com/NonStatic2014), [mayavijx](https://github.com/mayavijx), [mindest](https://github.com/mindest), [jstoecker](https://github.com/jstoecker), [manashgoswami](https://github.com/manashgoswami), [Andrews548](https://github.com/Andrews548), [baowenlei](https://github.com/baowenlei), [kunal-vaishnavi](https://github.com/kunal-vaishnavi)
ONNX Runtime v1.13.1
48 weeks ago
# Announcements * Security issues addressed by this release 1. A protobuf security issue CVE-2022-1941 that impact users who load ONNX models from untrusted sources, for example, a deep learning inference service which allows users to upload their models then runs the inferences in a shared environment. 2. An ONNX security vulnerability that allows reading of tensor_data outside the model directory, which allows attackers to read or write arbitrary files on an affected system that loads ONNX models from untrusted sources. (#12915) * Deprecations * CUDA 10.x support at source code level * Windows 8.x support in Nuget/C API prebuilt binaries. Support for Windows 7+ Desktop versions (including Windows servers) will be retained by building ONNX Runtime from source. * NUPHAR EP code is removed * Dependency versioning updates * C++ 17 compiler is now required to build ORT from source. On Linux, GCC version >=7.0 is required. * Minimal numpy version bumped to 1.21.6 (from 1.21.0) for ONNX Runtime Python packages * Official ONNX Runtime GPU packages now require CUDA version >=11.6 instead of 11.4. # General * Expose all arena configs in Python API in an extensible way * Fix ARM64 NuGet packaging * Fix EP allocator setup issue affecting TVM EP # Performance * Transformers CUDA improvements * Quantization on GPU for BERT - notebook, documentation on QAT, transformer optimization toolchain and quantized kernels. * Add fused attention CUDA kernels for BERT. * Fuse `Add` (bias) and `Transpose` of Q/K/V into one kernel for Attention and LongformerAttention. * Reduce GEMM computation in LongformerAttention with a new weight format. * General quantization (tool and kernel) * [Quantization debugging tool](https://onnxruntime.ai/docs/performance/quantization.html#quantization-debugging) - identify sensitive node/layer from accuracy drop discrepancies * New quantize API based on QuantConfig * New quantized operators: SoftMax, Split, Where # Execution Providers * CUDA EP * Official ONNX Runtime GPU packages are now built with CUDA version 11.6 instead of 11.4, but should still be backwards compatible with 11.4 * TensorRT EP * Build option to link against pre-built onnx-tensorrt parser; this enables potential "no-code" TensorRT minor version upgrades and can be used to build against TensorRT 8.5 EA * Improved nested control flow support * Improve HashId generation used for uniquely identifying TRT engines. Addresses issues such as [TRT Engine Cache Regeneration Issue](https://github.com/triton-inference-server/onnxruntime_backend/issues/145) * TensorRT uint8 support * OpenVINO EP * OpenVINO version upgraded to 2022.2.0 * Support for INT8 QDQ models from [NNCF](https://github.com/openvinotoolkit/nncf/tree/develop/examples/experimental/onnx/) * Support for Intel 13th Gen Core Process (Raptor Lake) * Preview support for Intel discrete graphics cards [Intel Data Center GPU Flex Series](https://www.intel.com/content/www/us/en/products/docs/discrete-gpus/data-center-gpu/flex-series/overview.html) and [Intel Arc GPU](https://www.intel.com/content/www/us/en/products/details/discrete-gpus/arc.html) * Increased test coverage for GPU Plugin * SNPE EP * Add support for [Windows Dev Kit 2023](https://onnxruntime.ai/winarm.html) * [Nuget Package](https://www.nuget.org/packages/Microsoft.ML.OnnxRuntime.Snpe) is now available * DirectML EP * Update to [DML 1.9.1](https://www.nuget.org/packages/Microsoft.AI.DirectML/1.9.1) * [New ops](https://github.com/microsoft/onnxruntime/blob/main/docs/OperatorKernels.md#dmlexecutionprovider): [LayerNormalization](https://github.com/microsoft/onnxruntime/pull/12809), [Gelu](https://github.com/microsoft/onnxruntime/pull/12898/), MatMulScale, [DFT](https://github.com/microsoft/onnxruntime/pull/12710), [FusedMatMul](https://github.com/microsoft/onnxruntime/pull/12898/) (contrib) * Bug fixes: DML EP Fix InstanceNormalization with 3D tensors (#12693), DML EP squeeze all axes when empty (#12649), DirectML GEMM broken in opset 11 and 13 when optional tensor C not provided (#12568) * **[new]** CANN EP - Initial integration of CANN EP contributed by Huawei to support Ascend 310 (#11477) # Mobile * EP infrastructure * Implemented support for additional EPs that use static kernels * Required for EPs like XNNPACK to be supported in minimal build * Removes need for kernel hashes to reduce maintenance overhead for developers * NOTE: ORT format models will need to be regenerated as the format change is NOT backwards compatible. We're replacing hashes for the CPU EP kernels with operator constraint information for operators used by the model so that we can match any static kernels available at runtime. * XNNPack * Added more kernels including QDQ format model support * AveragePool, Softmax, * QLinearConv, QLinearAveragePool, QLinearSoftmax * Added support for XNNPACK using threadpool * See [documentation](https://onnxruntime.ai/docs/execution-providers/Xnnpack-ExecutionProvider.html) for recommendations on how to configure the XNNPACK threadpool * ORT format model peak memory usage * Added ability to use ORT format model directly for initializers to reduce peak memory usage * Enabled via SessionOptions config * https://onnxruntime.ai/docs/reference/ort-format-models.html#load-ort-format-model-from-an-in-memory-byte-array * Set "session.use_ort_model_bytes_directly" and "session.use_ort_model_bytes_for_initializers" to "1" # Web * Support for 4GB memory in webassembly * Upgraded emscripten to 3.1.19 * Build from source support for [onnxruntime-extensions](https://github.com/microsoft/onnxruntime-extensions) and [sentencepiece](https://github.com/microsoft/onnxruntime-extensions/blob/main/docs/custom_ops.md#sentencepiecetokenizer) * Initial support for XNNPACK for optimizations for Wasm # Training * Training packages updated to CUDA version 11.6 and removed CUDA 10.2 and 11.3 * Performance improvements via op fusions like BiasSoftmax and Dropout fusion, Gather to Split fusion etc targeting SOTA models * Added Aten support for GroupNorm, InstanceNormalization, Upsample nearest * Bug fix for SimplifiedLayerNorm, seg fault for alltoall --- # Contributions Contributors to ONNX Runtime include members across teams at Microsoft, along with our community members: [snnn](https://github.com/snnn), [baijumeswani#2baijumeswani](https://github.com/baijumeswani#2baijumeswani), [edgchen1](https://github.com/edgchen1), [iK1D](https://github.com/iK1D), [skottmckay](https://github.com/skottmckay), [cloudhan](https://github.com/cloudhan), [tianleiwu](https://github.com/tianleiwu), [fs-eire](https://github.com/fs-eire), [mszhanyi](https://github.com/mszhanyi), [WilBrady](https://github.com/WilBrady), [hariharans29](https://github.com/hariharans29), [chenfucn](https://github.com/chenfucn), [fdwr](https://github.com/fdwr), [yuslepukhin](https://github.com/yuslepukhin), [wejoncy](https://github.com/wejoncy), [PeixuanZuo](https://github.com/PeixuanZuo), [pengwa](https://github.com/pengwa), [yufenglee](https://github.com/yufenglee), [jchen351](https://github.com/jchen351), [justinchuby](https://github.com/justinchuby), [dependabot[bot]](https://github.com/dependabot[bot]), [RandySheriffH](https://github.com/RandySheriffH), [sumitsays](https://github.com/sumitsays), [wschin](https://github.com/wschin), [wangyems](https://github.com/wangyems), [YUNQIUGUO](https://github.com/YUNQIUGUO), [ytaous](https://github.com/ytaous), [pranavsharma](https://github.com/pranavsharma), [vvchernov](https://github.com/vvchernov), [natke](https://github.com/natke), [Craigacp](https://github.com/Craigacp), [RandyShuai](https://github.com/RandyShuai), [smk2007](https://github.com/smk2007), [zhangyaobit](https://github.com/zhangyaobit), [jcwchen](https://github.com/jcwchen), [yihonglyu](https://github.com/yihonglyu), [georgen117](https://github.com/georgen117), [chilo-ms](https://github.com/chilo-ms), [ashbhandare](https://github.com/ashbhandare), [faxu](https://github.com/faxu), [jstoecker](https://github.com/jstoecker), [gramalingam](https://github.com/gramalingam), [garymm](https://github.com/garymm), [jeffbloo](https://github.com/jeffbloo), [xadupre](https://github.com/xadupre), [jywu-msft](https://github.com/jywu-msft), [askhade](https://github.com/askhade), [RyanUnderhill](https://github.com/RyanUnderhill), [thiagocrepaldi](https://github.com/thiagocrepaldi), [mindest](https://github.com/mindest), [jingyanwangms](https://github.com/jingyanwangms), [wenbingl](https://github.com/wenbingl), [ashari4](https://github.com/ashari4), [sfatimar](https://github.com/sfatimar), [MaajidKhan](https://github.com/MaajidKhan), [souptc](https://github.com/souptc), [HectorSVC](https://github.com/HectorSVC), [weixingzhang](https://github.com/weixingzhang), [zhanghuanrong](https://github.com/zhanghuanrong)
ONNX Runtime v1.12.1
1 year ago
This patch addresses packaging issues and bug fixes on top of v1.12.0. - Java package: MacOS M1 support folder structure fix - Android package: enable optimizations - GPU (TensorRT provider): bug fixes - DirectML: package fix - WinML: bug fixes See #12418 for full list of specific fixes included
ONNX Runtime v1.12.0
1 year ago
# Announcements * For Execution Provider maintainers/owners: the [lightweight compile API](https://github.com/microsoft/onnxruntime/blob/master/include/onnxruntime/core/framework/execution_provider.h#L249) is now the default compiler API for all Execution Providers (this was previously only available for the mobile build). If you have an EP using the [legacy compiler API](https://github.com/microsoft/onnxruntime/blob/master/include/onnxruntime/core/framework/execution_provider.h#L237), please migrate to the lightweight compile API as soon as possible. The legacy API will be deprecated in next release (ORT 1.13). * netstandard1.1 support is being deprecated in this release and will be removed in the next ORT 1.13 release # Key Updates ## General * ONNX spec support * onnx opset 17 * onnx-ml opset 3 (TreeEnsemble update) * BeamSearch operator for encoder-decoder transformers models * Support for invoking individual ops without the need to create a separate graph * For use with custom op development to reuse ORT code * Support for feeding external initializers (for large models) as byte arrays for model inferencing * Build switch to disable usage of abseil library to remove dependency ## Packages * Python 3.10 support * Mac M1 support in Python and Java packages * .NET 6/MAUI support in Nuget C# package * Additional target frameworks: net6.0, net6.0-android, net6.0-ios, net6.0-macos * NOTE: netstandard1.1 support is being deprecated in this release and will be removed in the 1.13 release * [onnxruntime-openvino](https://pypi.org/project/onnxruntime-openvino/1.12.0/) package available on Pypi (from Intel) ## Performance and Quantization * Improved C++ APIs that now utilize RAII for better memory management * Operator performance optimizations, including GatherElements * Memory optimizations to support compute-intensive real-time inferencing scenarios (e.g. audio inferencing scenarios) * CPU usage savings for infrequent inference requests by reducing thread spinning * Memory usage reduction through use of containers from the abseil library, especially inlined vectors used to store tensor shapes and inlined hash maps * New quantized kernels for weight symmetry to improve performance on ARM64 little core (GEMM and Conv) * Specialized kernel to improve performance of quantized Resize by up to 2x speedup * Improved the thread job partition for QLinearConv, demonstrating up to ~20% perf gain for certain models * Quantization tool: improved ONNX shape inference for large models ## Execution Providers * TensorRT EP * TensorRT 8.4 support * Provide option to share execution context memory between TensorRT subgraphs * Workaround long CI test time caused by frequent initialization/de-initialization of TensorRT builder * Improve subgraph partitioning and consolidate TensorRT subgraphs when possible * Refactor engine cache serialization/deserialization logic * Miscellaneous bug fixes and performance improvements * OpenVINO EP * Pre-Built ONNXRuntime binaries with OpenVINO now available on pypi: [onnxruntime-openvino](https://pypi.org/project/onnxruntime-openvino/1.12.0/) * Performance optimizations of existing supported models * New runtime configuration option ‘enable_dynamic_shapes’ added to enable dynamic shapes for each iteration * ORTModule included as part of OVEP Python Package to enable Torch ORT Inference * DirectML EP * Updated to [DirectML 1.9](https://github.com/microsoft/DirectML/blob/master/Releases.md#directml-190) * Opset 13-15 support: [#11827](https://github.com/microsoft/onnxruntime/pull/11827), [#11814](https://github.com/microsoft/onnxruntime/pull/11814), [#11782](https://github.com/microsoft/onnxruntime/pull/11782), [#11772](https://github.com/microsoft/onnxruntime/pull/11772) * Bug fixes: [Xbox command list reuse](https://github.com/microsoft/onnxruntime/pull/12063), [descriptor heap reset](https://github.com/microsoft/onnxruntime/pull/12059), [command allocator memory growth](https://github.com/microsoft/onnxruntime/pull/12114), [negative pad counts](https://github.com/microsoft/onnxruntime/pull/11974), [node suffix removal](https://github.com/microsoft/onnxruntime/pull/11879) * TVM EP - [details](https://onnxruntime.ai/docs/execution-providers/TVM-ExecutionProvider.html) * Updated to add model .dll ingestion and execution on Windows * Updated documentation and CI tests * ***[New]*** SNPE EP - [details](https://onnxruntime.ai/docs/execution-providers/SNPE-ExecutionProvider.html) * ***[Preview]*** XNNPACK EP - initial infrastructure with limited operator support, for use with ORT Mobile and ORT Web * Currently supports Conv and MaxPool, with work in progress to add more kernels ## Mobile * Binary size reductions in Android minimal build - 12% reduction in size of base build with no operator kernels * Added new operator support to NNAPI and CoreML EPs to improve ability to run super resolution and BERT models using NPU * NNAPI: DepthToSpace, PRelu, Gather, Unsqueeze, Pad * CoreML: DepthToSpace, PRelu * Added [Docker file](https://onnxruntime.ai/docs/build/custom.html#android) to simplify running a custom minimal build to create an ORT Android package * Initial XNNPACK EP compatibility ## Web * Memory usage optimizations * Initial XNNPACK EP compatibility ## ORT Training * ***[New]*** ORT Training acceleration is also natively available through [HuggingFace Optimum](https://github.com/huggingface/optimum#training) * ***[New]*** FusedAdam Optimizer now available through the torch-ort package for easier training integration * FP16_Optimizer Support for more DeepSpeed Versions * Bfloat16 support for AtenOp * Added gradient ops for ReduceMax and ReduceMin * Updates to Min and Max grad ops to use distributed logic * Optimizations * Optimized perf for Gelu and GeluGrad kernels for mixed precision models * Enabled fusions for SimplifiedLayerNorm * Added bitmask versions of Dropout, BiasDropout and DropoutGrad which brings ~8x space savings for the mast output. # Known issues * The [Microsoft.ML.OnnxRuntime.DirectML](https://www.nuget.org/packages/Microsoft.ML.OnnxRuntime.DirectML) package on Nuget has an issue and will be fixed in a patch. Fix: #12368 * The [Maven package](https://search.maven.org/artifact/com.microsoft.onnxruntime/onnxruntime) has a packaging issue for Mac M1 builds and will be fixed in a patch. Fix: #12335 / [Workaround discussion](https://github.com/microsoft/onnxruntime/issues/11054#issuecomment-1195391571) * Windows builds are not compatible with Windows 8.x in this release. Please use v1.11 for now. --- # Contributions Contributors to ONNX Runtime include members across teams at Microsoft, along with our community members: [snnn](https://github.com/snnn), [edgchen1](https://github.com/edgchen1), [fdwr](https://github.com/fdwr), [skottmckay](https://github.com/skottmckay), [iK1D](https://github.com/iK1D), [fs-eire](https://github.com/fs-eire), [mszhanyi](https://github.com/mszhanyi), [WilBrady](https://github.com/WilBrady), [justinchuby](https://github.com/justinchuby), [tianleiwu](https://github.com/tianleiwu), [PeixuanZuo](https://github.com/PeixuanZuo), [garymm](https://github.com/garymm), [yufenglee](https://github.com/yufenglee), [adrianlizarraga](https://github.com/adrianlizarraga), [yuslepukhin](https://github.com/yuslepukhin), [dependabot[bot]](https://github.com/dependabot[bot]), [chilo-ms](https://github.com/chilo-ms), [vvchernov](https://github.com/vvchernov), [oliviajain](https://github.com/oliviajain), [ytaous](https://github.com/ytaous), [hariharans29](https://github.com/hariharans29), [sumitsays](https://github.com/sumitsays), [wangyems](https://github.com/wangyems), [pengwa](https://github.com/pengwa), [baijumeswani](https://github.com/baijumeswani), [smk2007](https://github.com/smk2007), [RandySheriffH](https://github.com/RandySheriffH), [gramalingam](https://github.com/gramalingam), [xadupre](https://github.com/xadupre), [yihonglyu](https://github.com/yihonglyu), [zhangyaobit](https://github.com/zhangyaobit), [YUNQIUGUO](https://github.com/YUNQIUGUO), [jcwchen](https://github.com/jcwchen), [chenfucn](https://github.com/chenfucn), [souptc](https://github.com/souptc), [chandru-r](https://github.com/chandru-r), [jstoecker](https://github.com/jstoecker), [hanbitmyths](https://github.com/hanbitmyths), [RyanUnderhill](https://github.com/RyanUnderhill), [georgen117](https://github.com/georgen117), [jywu-msft](https://github.com/jywu-msft), [mindest](https://github.com/mindest), [sfatimar](https://github.com/sfatimar), [HectorSVC](https://github.com/HectorSVC), [Craigacp](https://github.com/Craigacp), [jeffdaily](https://github.com/jeffdaily), [zhijxu-MS](https://github.com/zhijxu-MS), [natke](https://github.com/natke), [stevenlix](https://github.com/stevenlix), [jeffbloo](https://github.com/jeffbloo), [guoyu-wang](https://github.com/guoyu-wang), [daquexian](https://github.com/daquexian), [faxu](https://github.com/faxu), [jingyanwangms](https://github.com/jingyanwangms), [adtsai](https://github.com/adtsai), [wschin](https://github.com/wschin), [weixingzhang](https://github.com/weixingzhang), [wenbingl](https://github.com/wenbingl), [MaajidKhan](https://github.com/MaajidKhan), [ashbhandare](https://github.com/ashbhandare), [ajindal1](https://github.com/ajindal1), [zhanghuanrong](https://github.com/zhanghuanrong), [tiagoshibata](https://github.com/tiagoshibata), [askhade](https://github.com/askhade), [liqunfu](https://github.com/liqunfu)
ONNX Runtime v1.11.1
1 year ago
This is a patch release on 1.11.0 with the following fixes: - Symbolic shape infer error (https://github.com/microsoft/onnxruntime/pull/10674) - Quantization tool bug (https://github.com/microsoft/onnxruntime/pull/10940) - Adds missing numpy type when looking for the ort correspondance (https://github.com/microsoft/onnxruntime/pull/10943) - Profiling tool JSON format bug (https://github.com/microsoft/onnxruntime/pull/11046) - Function bug fix (https://github.com/microsoft/onnxruntime/pull/11148) - Add mobile helpers to Python build (https://github.com/microsoft/onnxruntime/pull/11196) - Scoped GIL release in run_with_iobinding (https://github.com/microsoft/onnxruntime/pull/11248) - Fix output type mapping for JS (https://github.com/microsoft/onnxruntime/pull/11049) All official packages are attached, and Python packages are additionally published to PyPi.
ONNX Runtime v1.11.0
1 year ago
# Key Updates ## General * Support for ONNX 1.11 with opset 16 * Updated protobuf version to 3.18.x * Enable usage of Mimalloc ([details](https://onnxruntime.ai/docs/performance/tune-performance.html#mimalloc-allocator-usage)) * Transformer model helper scripts * [T5 conversion script](https://github.com/microsoft/onnxruntime/blob/master/onnxruntime/python/tools/transformers/models/t5/convert_to_onnx.py) * [GPT2 conversion script](https://github.com/microsoft/onnxruntime/tree/master/onnxruntime/python/tools/transformers#gpt-2-model-conversion) * On Windows, error strings in OrtStatus are now encoded in UTF-8. When you need to print it out to screen, first convert it to a wide char string by using the MultiByteToWideChar Windows API. ## Performance * Memory utilization related performance improvements (e.g. elimination of vectors for small dims) * Performance variance stability improvement through dynamic cost model session option ([details](https://onnxruntime.ai/docs/performance/tune-performance.html#mitigate-high-latency-variance)) * New quantization data format support: S8S8 in QDQ format * Added s8s8 kernels for ARM64 * Support to convert s8s8 to u8s8 automatically for x64 * Improved performance on ARM64 for quantized CNN model through: * New kernels for quantized depthwise Conv * Improved symmetrically quantized Conv by leveraging indirect buffer * New Gemm kernels for symmetric quantized Conv and MatMul * General quantization improvements, including new quantized operators (Resize, ArgMax) and quantization tool updates ## API * Java: Only a single OrtEnv can be created in any given execution of the JVM. Previously, the environment could be closed completely and a fresh one could be created with different parameters (e.g. global thread pool, or logging level) ([details](https://github.com/microsoft/onnxruntime/pull/10670)) ## Packages * Nuget packages * C# packages now tested with .NET 5. .NET Core 2.1 support is deprecated as it has reached end of life support on August 21, 2021. We will closely follow [.NET's support policy](https://dotnet.microsoft.com/en-us/platform/support/policy/dotnet-core) * Removed PDB files. These are attached as release artifacts below. * Pypi packages * Python 3.6 is deprecated as it has reached EOL December 2021. Supported Python versions: 3.7-3.9 * *Note: Mac M1 builds are not yet available in pypi but can be built from source* * OnnxRuntime with OpenVINO support available at [https://pypi.org/project/onnxruntime-openvino/1.11.0/](https://pypi.org/project/onnxruntime-openvino/1.11.0/) ## Execution Providers * CUDA * Enable CUDA provider option configuration for C# to support workspace size configuration from and fix binary compatibility of CUDAProviderOptions C API * Preview support for CUDA Graphs ([details](https://onnxruntime.ai/docs/performance/tune-performance.html#using-cuda-graphs-in-the-cuda-ep)) * TensorRT * TRT 8.2.3 support * Memory footprint optimizations * Support protobuf >= 3.11 * Updated flatbuffers version to 2.0 * Misc Bug Fixes * DirectML * Updated more operators to opset 13 (QuantizeLinear, DequantizeLinear, ReduceSum, Split, Squeeze, Unsqueeze, ReduceSum). * OpenVINO * OpenVINO™ version upgraded to 2022.1.0 - biggest OpenVINO™ upgrade in 3.5 years. This provides functional bug fixes, API Change 2.0 and capability changes from the previous 2021.4.2 LTS release. * Performance Optimizations of existing supported models. * Pre-Built OnnxRuntime Binaries with OpenVINO enabled can be downloaded from [https://github.com/intel/onnxruntime/releases/tag/v4.0](https://github.com/intel/onnxruntime/releases/tag/v4.0) [https://pypi.org/project/onnxruntime-openvino/1.11.0/](https://pypi.org/project/onnxruntime-openvino/1.11.0/) * OpenCL _(in preview)_ * Introduced the EP for OpenCL to use with Mobile GPUs * Available in `experimental/opencl` branch for users to try. Provide feedback through Issues and Discussions in the repo. * README is available [here](https://github.com/microsoft/onnxruntime/blob/experimental/opencl/onnxruntime/core/providers/opencl/README.md). ## Mobile * Added general support for converting a model to NHWC layout at runtime * Execution provider sets preferred layout and shared infrastructure in ORT will ensure the nodes the execution provider is assigned will be in that layout * Added support for runtime optimization with minimal binary size impact * Relevant optimizations are saved in the ORT format model for replay at runtime if applicable * Added support for QDQ format models to the NNAPI EP * Will fall back to CPU EP’s QDQ handling if NNAPI is not available using runtime optimizations * Includes updates to the ORT QDQ optimizers so they work better with mobile scenarios * Added helpers to: * Analyze if a model can be used with the pre-built ORT Mobile package * Update ONNX opset so model can be used with the pre-built package * Convert dynamic inputs into fixed size inputs so that the model can be used with NNAPI/CoreML * Optimize a QDQ format model for use with ORT * Added Android and iOS packages with full ORT builds * These packages have additional support for the full set of opsets and ops for ONNX models at the cost of a larger binary size. ## Web * Build option to create ONNX Runtime WebAssembly static library * Support for concurrent creation of multiple inference sessions * Upgraded emsdk version to 3.1.3 for more stable multi-threads and enables LTO with multi-threads build on WebAssembly. # Known issues * When using tensor sequences/sparse tensors, the generated profile is not valid JSON. (Fixed in https://github.com/microsoft/onnxruntime/pull/10974) * There is a bug in the quantization tool for calibration when choosing percentile algorithm (Fixed in https://github.com/microsoft/onnxruntime/pull/10940). To fix this, please apply the typo fix in the python file. * Mac M # Contributions Contributors to ONNX Runtime include members across teams at Microsoft, along with our community members: [snnn](https://github.com/snnn), [edgchen1](https://github.com/edgchen1), [skottmckay](https://github.com/skottmckay), [yufenglee](https://github.com/yufenglee), [wangyems](https://github.com/wangyems), [yuslepukhin](https://github.com/yuslepukhin), [gwang-msft](https://github.com/gwang-msft), [iK1D](https://github.com/iK1D), [chilo-ms](https://github.com/chilo-ms), [fdwr](https://github.com/fdwr), [ytaous](https://github.com/ytaous), [RandySheriffH](https://github.com/RandySheriffH), [hanbitmyths](https://github.com/hanbitmyths), [chenfucn](https://github.com/chenfucn), [yihonglyu](https://github.com/yihonglyu), [ajindal1](https://github.com/ajindal1), [fs-eire](https://github.com/fs-eire), [souptc](https://github.com/souptc), [tianleiwu](https://github.com/tianleiwu), [YUNQIUGUO](https://github.com/YUNQIUGUO), [hariharans29](https://github.com/hariharans29), [oliviajain](https://github.com/oliviajain), [xadupre](https://github.com/xadupre), [ashari4](https://github.com/ashari4), [RyanUnderhill](https://github.com/RyanUnderhill), [jywu-msft](https://github.com/jywu-msft), [weixingzhang](https://github.com/weixingzhang), [baijumeswani](https://github.com/baijumeswani), [georgen117](https://github.com/georgen117), [natke](https://github.com/natke), [Craigacp](https://github.com/Craigacp), [jeffdaily](https://github.com/jeffdaily), [JingqiaoFu](https://github.com/JingqiaoFu), [zhanghuanrong](https://github.com/zhanghuanrong), [satyajandhyala](https://github.com/satyajandhyala), [smk2007](https://github.com/smk2007), [ryanlai2](https://github.com/ryanlai2), [askhade](https://github.com/askhade), [thiagocrepaldi](https://github.com/thiagocrepaldi), [jingyanwangms](https://github.com/jingyanwangms), [pengwa](https://github.com/pengwa), [scxiao](https://github.com/scxiao), [ashbhandare](https://github.com/ashbhandare), [BowenBao](https://github.com/BowenBao), [SherlockNoMad](https://github.com/SherlockNoMad), [sumitsays](https://github.com/sumitsays), [sfatimar](https://github.com/sfatimar), [mosdav](https://github.com/mosdav), [harshithapv](https://github.com/harshithapv), [liqunfu](https://github.com/liqunfu), [tiagoshibata](https://github.com/tiagoshibata), [gineshidalgo99](https://github.com/gineshidalgo99), [pranavsharma](https://github.com/pranavsharma), [jcwchen](https://github.com/jcwchen), [nkreeger](https://github.com/nkreeger), [xkszltl](https://github.com/xkszltl), [faxu](https://github.com/faxu), [suffiank](https://github.com/suffiank), [stevenlix](https://github.com/stevenlix), [jeffbloo](https://github.com/stevenlix), [feihugis](https://github.com/feihugis)
iOS windows
apple/swift-package-manager swift-DEVELOPMENT-SNAPSHOT-2023-09-24-a
The Package Manager for the Swift Programming Language
⭐️ 9,394
🕓 5 hours ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
0.6.0
3 years ago
3 years ago
Swift 5.2 Release
3 years ago
4 years ago
4 years ago
5 years ago
4 years ago
Swift 4.2.1 Release
4 years ago
Swift 4.2 Release
4 years ago
Release SwiftPM 0.2.1
5 years ago
iOS macOS
apple/swift-nio 2.59.0
Event-driven network application framework for high performance protocol servers & clients, non-blocking.
⭐️ 7,519
🕓 4 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
SwiftNIO 2.59.0
5 days ago
### SemVer Minor - Added `ByteBuffer.hexDump(format:)` (#2475, patch credit to @natikgadzhi) - Make the initializers of `NIOThreadPoolError` public (#2503, patch credit to @omochi) - Make `ByteBuffer` Codable (#2509, patch credit to @natikgadzhi) - `EventLoopFuture/Promise`: only `Sendable` if `Value` is `Sendable` (#2496) - HTTP1: Support users opting-out of us setting framing headers. (#2508) - Support for custom protocols in `DatagramBootstrap` (#2516) ### SemVer Patch - HTTP1: Simplify header separator and crlf (#2513, patch credit to @alex-taffe) - Update `CNIOLLHTTP` to latest `nodejs/llhttp` (#2512) ### Other Changes - Docs: explain the basic safe usage of `ByteBuffer` (#2499, patch credit to @natikgadzhi) - Match casing of reference links to the casing of the actual referenced declaration/module (#2500, patch credit to @tayloraswift) - Update nightly allocation limits (#2502)
SwiftNIO 2.58.0
6 weeks ago
### SemVer Minor - Add support for using `EventLoop`s as custom actor executor (#2388) - Add new `EventLoop` singletons (#2471) - Add bootstrap APIs for VSOCK sockets (#2479) ### SemVer Patch - Fix huge compile time of setUUIDBytes (#2482, patch credit to @sidepelican) - Get Android building again after #2479 (#2490, patch credit to @finagolfin) - Make `System.coreCount` aware of cgroup2 (#2394) - Don't lose or delay writes before `channelActive` (#2486) ### [SPI](https://github.com/apple/swift/blob/main/docs/ReferenceGuides/UnderscoredAttributes.md#_spispiname)(AsyncChannel) changes - Rename the `waitForFinalResult()` methods and provide an `ELF` convenience (#2483) - Add testing interfaces for the stream and writer of the `NIOAsyncChannel` (#2488) - Provide throwing `finish` method on test stream (#2493) - Fix leaked promise in `NIOTypedApplicationProtocolNegotiationHandler` (#2489) - Add async TCP echo example (#2463) - Avoid using deinit to fulfil the protocol negotiation promise (#2497) ### Other Changes - Correct malformed codelink (#2484, patch credit to @tayloraswift) - Update contributor email address (#2481) - Fix 5.9 and nightly allocation limits (#2485) (#2487)
SwiftNIO 2.57.0
9 weeks ago
### [SPI](https://github.com/apple/swift/blob/main/docs/ReferenceGuides/UnderscoredAttributes.md#_spispiname)(AsyncChannel) changes - 🚨Breaking change: Reduce the amount of bootstrap async methods (#2474) - Make `NIOAsyncChannel.Configuration` conform to `Sendable` (#2466) ### SemVer Patch - Skip TCP_NODELAY on sockets that NIO doesn't explicitly support (#2476) - Throw `SocketAddressError` (cf. fatalError) in SocketAddress.convert for unknown address family (#2477)
SwiftNIO 2.56.0
10 weeks ago
### [SPI](https://github.com/apple/swift/blob/main/docs/ReferenceGuides/UnderscoredAttributes.md#_spispiname)(AsyncChannel) changes - 🚨Breaking change: Add configuration for `NIOAsyncChannel` (#2464) - Async support for `NIOPipeBootstrap` (#2458) - Async support for `NIORawSocketBootstrap` (#2460) ### Other Changes - Remove `XCTAsyncTest` usage (#2461) - Restructure `Package.swift` (#2462)
SwiftNIO 2.55.0
11 weeks ago
### SemVer Minor - Make `NIO[Throwing]AsyncSequenceProducer.Source` `Sendable` (#2459) ### SemVer Patch - Add support for Musl libc (#2449) - Close Channel when input & output are closed (#2450) - Correct a few Musl additions from #2449 for Android, plus error if libc not found (#2451, patch credit to @finagolfin) - Use #if canImport(Darwin) where possible (#2446) ### Other Changes - Update RediStack URL in README.md (#2445) - Allow opt-out of PII in CONTRIBUTORS.txt (#2453, patch credit to @therealbnut) - Update mailmap to unify Gwynne's email addresses (#2454, patch credit to @gwynne) - Fix several minor typos in comments found in various files (#2455, patch credit to @gwynne) - Fix last remaining test on Android (#2457, patch credit to @finagolfin) - Adopt the Swift CoC (#2440) - Updated allocation counters in 5.9 (#2456) ### SPI(AsyncChannel) changes - Add `NIOAsyncChannel` based connect methods to `ClientBootstrap` (#2437) - Add `NIOAsyncChannel` based connect and bind methods to `DatagramBootstrap` (#2439) - 🚨Breaking change: Align `ServerBootstrap` bind methods with the initializer style (#2443)
SwiftNIO 2.54.0
16 weeks ago
### SemVer Minor - `EmbeddedChannel`: `getOption(ChannelOptions.allowRemoteHalfClosure)` should not `fatalError` (#2429) ### SemVer Patch - Pooled control message storage. (#2422, patch credit to @ser-0xff) - NIOPOSIX happy eyeballs now hops to the connection event loop when using a custom resolver to avoid data races (#2436) ### Other Changes - Add tests for WebSocketMaskingKey.random() (#2433, patch credit to @gwynne) - Add narrative documentation for NIO's concurrency bridges (#2423) - Include relevant versions (kernel & Swift) in test output (#2425) - Update `update-alloc-limits-...` script (#2430) - Fix flaky test in NIOAsyncWriter (#2431)
SwiftNIO 2.53.0
19 weeks ago
### SemVer Minor - addition of assertSuccess() and assertFailure() on EventLoopFuture (#2417, patch credit to @dkz2) ### SemVer Patch - Tolerate sending data after close(mode: .output) (#2421)
SwiftNIO 2.52.0
20 weeks ago
### SemVer Minor - Add CustomDebugStringConvertible conformance to ByteBuffer (#2418, patch credit to @gwynne) - Add unprocessedBytes property on NIOSingleStepByteToMessageProcessor (#2419)
SwiftNIO 2.51.1
20 weeks ago
### SemVer Patch - Handle close(output) in the pipeline handler. (#2414) - NIOThrowingAsyncSequenceProducer throws when cancelled (#2415) ### Other Changes - Add `AsyncChannel` based `ServerBootstrap.bind()` methods (#2403) - Extend the integration test harness to track FDs (#2411) - AsyncChannelBootstrapTests bind to 0 instead (#2412, #2413)
SwiftNIO 2.51.0
22 weeks ago
### SemVer Minor - Drop Swift 5.5 (#2406) ### SemVer Patch - Handle reentrant reads in ALPNHandler (#2402) - Close accepted FDs if we fail to create Socket (#2407) - Don't have channels stop reading on errors they tolerate. (#2408) ### Other Changes - Add docker-compose file for Swift 5.9 (#2404) - Fix broken docs. (#2405) - Avoid double-closing on fcntl failures (#2409)
linux macOS iOS
uber/RIBs v0.15.4
Uber's cross-platform mobile architecture framework.
⭐️ 7,518
🕓 4 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
v0.15.4
4 days ago
## What's Changed * IntelliJ plugin 0.1.5 by @idanakav in https://github.com/uber/RIBs/pull/613 * Set view tree owners in parent class by @jbarr21 in https://github.com/uber/RIBs/pull/615 * Revert JVM version to 1.8 by @jbarr21 in https://github.com/uber/RIBs/pull/616 **Full Changelog**: https://github.com/uber/RIBs/compare/v0.15.3...v0.15.4
v0.15.3
4 weeks ago
## What's Changed * Add RibCoroutineWorker.bind that receives multiple workers by @FranAguilera in https://github.com/uber/RIBs/pull/607 * Change default CoroutineContext from empty to default for the RibCoroutineWorker<>Worker conversion by @FranAguilera in https://github.com/uber/RIBs/pull/608 * Add `RibCoroutineWorker` factory method with `CoroutineScope` as receiver by @psteiger in https://github.com/uber/RIBs/pull/610 * Update coroutines 1.7.3 by @tyvsmith in https://github.com/uber/RIBs/pull/609 * Bump kotlinx.coroutines.test to 1.7.3 by @psteiger in https://github.com/uber/RIBs/pull/611 **Full Changelog**: https://github.com/uber/RIBs/compare/v0.15.2...v0.15.3
v0.15.2
6 weeks ago
## What's Changed * Add `WorkerBinder.bind` overloads that take in an `Iterable`. by @psteiger in https://github.com/uber/RIBs/pull/604 * Set view tree owners by @jbarr21 in https://github.com/uber/RIBs/pull/606 **Full Changelog**: https://github.com/uber/RIBs/compare/v0.15.1...v0.15.2
v0.15.1
9 weeks ago
## What's Changed * Migrate from deprecated `@JvmDefault` to compiler option `-Xjvm-default=all` by @psteiger in https://github.com/uber/RIBs/pull/576 **Full Changelog**: https://github.com/uber/RIBs/compare/v0.15.0...v0.15.1
v0.15.0
13 weeks ago
## What's Changed * Only complete the worker's scope after calling `Worker.onStop` by @psteiger in https://github.com/uber/RIBs/pull/585 * Improve KDoc on `ActivityLifecycleEvent` by explaining ordering semantics. by @psteiger in https://github.com/uber/RIBs/pull/586 * Make use of `jvmToolchain` for building the project. by @psteiger in https://github.com/uber/RIBs/pull/583 * Revamp Gradle scripts by @psteiger in https://github.com/uber/RIBs/pull/588 * Deprecate old worker by @FranAguilera in https://github.com/uber/RIBs/pull/597 * Allow overriding default CoroutineDispatcher for WorkerBinder calls by @FranAguilera in https://github.com/uber/RIBs/pull/596 * Update README.md by @FranAguilera in https://github.com/uber/RIBs/pull/600 * Deprecate WorkerUnbinder by @FranAguilera in https://github.com/uber/RIBs/pull/601 * Expose ribActionEvents stream by @FranAguilera in https://github.com/uber/RIBs/pull/599 **Full Changelog**: https://github.com/uber/RIBs/compare/v0.14.2...v0.15.0
v0.14.2
19 weeks ago
## What's Changed * Fix potential for deadlocks in `Worker` binding. by @psteiger in https://github.com/uber/RIBs/pull/582 * Add Rib Worker demo app by @FranAguilera in https://github.com/uber/RIBs/pull/575 **Full Changelog**: https://github.com/uber/RIBs/compare/v0.14.1...v0.14.2
v0.14.1
20 weeks ago
## What's Changed ### Breaking changes - `Presenter`, `Interactor` lifecycle are only available on `didLoad`, `didBecomeActive`. Attempting to use it before (e.g. constructor) results in a crash. - `Interactor`, `RibActivity`, `Presenter`, etc, now expose a `lifecycleFlow` as API, supporting mocking. `LifecycleScopeProvider` interface methods are a function of the `lifecycleFlow` and are now finalized. ### PRs * [WorkerBinder] Guard against potential Worker.coroutineContext being null while using Mockito by @FranAguilera in https://github.com/uber/RIBs/pull/573 * Open `lifecycleFlow`, thus enabling it for mocking by @psteiger in https://github.com/uber/RIBs/pull/572 **Full Changelog**: https://github.com/uber/RIBs/compare/v0.14.0...v0.14.1
v0.14.0
20 weeks ago
## What's Changed * Replacing some Behavior/Publish Relay usage in core artifacts with coroutines by @tyvsmith in https://github.com/uber/RIBs/pull/544 * Fix router navigator events source compatibility by @psteiger in https://github.com/uber/RIBs/pull/549 * Enable strict explicit API mode on `rib-base` by @psteiger in https://github.com/uber/RIBs/pull/548 * Reduce `Rx` <-> `Coroutines` interop and allow unconfined coroutines to run eagerly inside Worker's onStart by @psteiger in https://github.com/uber/RIBs/pull/552 * Redesign RouterAndState to avoid router caching by @SergeySmykovskyi in https://github.com/uber/RIBs/pull/550 * Create README for Compose Demo by @Solace-Studios in https://github.com/uber/RIBs/pull/557 * [Rib Worker] Specify CoroutineDispatcher for onStart/onStop and provide WorkerBinder monitoring option by @FranAguilera in https://github.com/uber/RIBs/pull/553 * Fix: podspec and tutorial1 Podfile version updated by @ebubekirsezer in https://github.com/uber/RIBs/pull/534 * Enable explicit api mode for Kotlin libraries by @davissuber in https://github.com/uber/RIBs/pull/561 * Introduce `RibCoroutineWorker` by @psteiger in https://github.com/uber/RIBs/pull/547 * Upgrade code formatters versions by @SergeySmykovskyi in https://github.com/uber/RIBs/pull/558 * Use Kotlin contracts to remove `var` and `!!` usage in `RibCoroutineWorker` by @psteiger in https://github.com/uber/RIBs/pull/563 * Provide option to bind multiple Workers at once on specific RibDispatchers by @FranAguilera in https://github.com/uber/RIBs/pull/564 * Bump Kotlin, Gradle, and other dependencies versions. by @psteiger in https://github.com/uber/RIBs/pull/567 ## New Contributors * @Solace-Studios made their first contribution in https://github.com/uber/RIBs/pull/557 * @FranAguilera made their first contribution in https://github.com/uber/RIBs/pull/553 * @ebubekirsezer made their first contribution in https://github.com/uber/RIBs/pull/534 * @davissuber made their first contribution in https://github.com/uber/RIBs/pull/561 **Full Changelog**: https://github.com/uber/RIBs/compare/v0.13.3...v0.14.0
v0.13.3
26 weeks ago
* [Intellij] Plugin 0.1.5 * [Android] Clear cached CoroutineScope instance once its job completes * [Android] Make all TestDispatchers in TestRibDispatchers use the same TestCoroutineScheduler
v0.13.2
47 weeks ago
- [Android] Reverting binary breaking change from 0.13.1 on Basic Interactor
iOS
SwiftUIX/SwiftUIX 0.1.7
An exhaustive expansion of the standard SwiftUI library.
⭐️ 5,962
🕓 4 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
0.1.7
4 days ago
# Release Notes - Stability improvements and bug fixes. - Fixed compilation for all platforms _except_ visionOS.
0.1.6
10 weeks ago
# Release Notes - Stability improvements and bug fixes. - Fixed compilation for all platforms up to Xcode 15b3.
0.1.5
17 weeks ago
# Release Notes - Stability improvements and bug fixes.
0.1.4
30 weeks ago
# Release Notes - Fix all warnings for Xcode 14.3 beta. - Stability improvements and bug fixes.
0.1.3
51 weeks ago
# Release Notes - Fixes for runtime warnings on iOS 16 and macOS 13 - Stability improvements and bug fixes.
0.1.2
1 year ago
# Release Notes - Fixed compilation for Xcode 13.3.
0.1.1
1 year ago
# Release Notes - Fixed compilation for Xcode 13.2 RC. - Introduced `FrameReader`. - Introduced `RoundedRhombus`. - Refactored `AnyPresentationView`. - Replaced `ErrorContext` with `LocalizedErrorHandler`. - Bug fixes and improvements.
0.1.0
1 year ago
0.0.9
2 years ago
0.0.8
2 years ago
- `CocoaTextField` now offers `CocoaTextField.focused(_:)` for better responder chain control. - `SearchBar` now offers `SearchBar.focused(_:)` for better responder chain control. - `CollectionView` performance is now better - Tons of bug fixes and improvements
iOS macOS watchOS tvOS

Popular Packages

ggerganov/llama.cpp master-fff0e0e
Port of Facebook's LLaMA model in C/C++
⭐️ 41,225
🕓 9 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
b1269
2 days ago
b1266
4 days ago
b1263
4 days ago
b1261
5 days ago
b1260
5 days ago
b1258
5 days ago
b1257
5 days ago
b1256
1 week ago
b1255
1 week ago
b1254
1 week ago
iOS macOS watchOS tvOS
Alamofire/Alamofire 5.8.0
Elegant HTTP Networking in Swift
⭐️ 39,794
🕓 3 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
5.8.0
3 weeks ago
Released on 2023-08-31. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/87?closed=1). #### Added - visionOS support. - Added by [Jon Shier](https://github.com/jshier) in Pull Requests [#3738](https://github.com/Alamofire/Alamofire/pull/3738) and [#3750](https://github.com/Alamofire/Alamofire/pull/3750). - Hooks for initial `HTTPURLResponse` values. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3762](https://github.com/Alamofire/Alamofire/pull/3738). - Android build support. - Added by [Hugo Gonzalez](https://github.com/hggz) in Pull Request [#3744](https://github.com/Alamofire/Alamofire/pull/3744). #### Updated - Async integration to obey automatic cancellation by default. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3757](https://github.com/Alamofire/Alamofire/pull/3757). - Platform `#if` checks. - Updated by [brenno](https://github.com/brennobemoura) in Pull Request [#3756](https://github.com/Alamofire/Alamofire/pull/3756). - Windows CI. - Updated by [Saleem Abdulrasool](https://github.com/compnerd) in Pull Request [#3763](https://github.com/Alamofire/Alamofire/pull/3763). - `URL` conversion tests for 2023 `URL` changes. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3734](https://github.com/Alamofire/Alamofire/pull/3734). - for-loop to `contains`. - Updated by [Mayank Kumar Gupta](https://github.com/Mayank-84) in Pull Request [#3726](https://github.com/Alamofire/Alamofire/pull/3726). #### Fixed - `MultipartFormData` stream to properly obey `bodyContentLength`. - Fixed by [Henrique Valcanaia](https://github.com/hvsw) in Pull Request [#3730](https://github.com/Alamofire/Alamofire/pull/3730). - Unnecessary call to empty init. - Fixed by [Shinolr](https://github.com/Shinolr) in Pull Request [#3742](https://github.com/Alamofire/Alamofire/pull/3742). - Documentation typos. - Fixed by [Jenna](https://github.com/ueunli) in Pull Request [#3733](https://github.com/Alamofire/Alamofire/pull/3733).
5.7.1
19 weeks ago
Released on 2023-05-10. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/86?closed=1). #### Updated - Deployment targets reverted to (macOS 10.12, iOS 10, tvOS 10, and watchOS 3)+ - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3720](https://github.com/Alamofire/Alamofire/pull/3720).
5.7.0
19 weeks ago
Released on 2023-05-09. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/84?closed=1). #### Added - Request body compression support. This is disabled by default. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3701](https://github.com/Alamofire/Alamofire/pull/3701). - `ArrayEncoding.custom` to `URLEncodedFormEncoder` and `URLEncoding`. - Added by [Mike Naquin](https://github.com/naquin) in Pull Request [#3699](https://github.com/Alamofire/Alamofire/pull/3699). - `KeyPathEncoding` to `URLEncodedFormEncoder`. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3689](https://github.com/Alamofire/Alamofire/pull/3689). - `NilEncoding` to `URLEncodedFormEncoder`. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3686](https://github.com/Alamofire/Alamofire/pull/3686). #### Updated - Alamofire now requires Swift 5.5+ and (macOS 10.13, iOS 11, tvOS 11, and watchOS 4)+. - Updated by [Jon Shier](https://github.com/jshier) in Pull Requests [#3670](https://github.com/Alamofire/Alamofire/pull/3670) and [#3717](https://github.com/Alamofire/Alamofire/pull/3717). - `flatMap` to `map` in `HTTPHeaders`. - Updated by [kati](https://github.com/kati-kms) in Pull Request [#3704](https://github.com/Alamofire/Alamofire/pull/3704). - Various CI integrations. - Updated by [Jon Shier](https://github.com/jshier) in Pull Requests [#3685](https://github.com/Alamofire/Alamofire/pull/3685) and [#3712](https://github.com/Alamofire/Alamofire/pull/3712). #### Fixed - Reachability API usage safety. - Fixed by [Jon Shier](https://github.com/jshier) in Pull Request [#3684](https://github.com/Alamofire/Alamofire/pull/3684). - Unused `bufferingPolicy` in `StreamOf`. - Fixed by [Duc](https://github.com/trungducc) in Pull Request [#3668](https://github.com/Alamofire/Alamofire/pull/3668). - Various documentation typos. - Fixed by [Timo Wälisch](https://github.com/TimoWaelischIdealo), [Tony](https://github.com/iamtony), and [uhooi](https://github.com/uhooi) in various PRs.
5.6.4
43 weeks ago
Released on 2022-11-21. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/84?closed=1). #### Fixed - Deprecated OS version support in Swift 5.7 SPM Package. - Fixed by [Guglielmo Faglioni](https://github.com/guidev) in Pull Request [#3665](https://github.com/Alamofire/Alamofire/pull/3665). ## New Contributors * @guidev made their first contribution in https://github.com/Alamofire/Alamofire/pull/3665 **Full Changelog**: https://github.com/Alamofire/Alamofire/compare/5.6.3...5.6.4
5.6.3
44 weeks ago
Released on 2022-11-20. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/83?closed=1). #### Updated - Swift package to 5.7, CI to Xcode 14.1. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3653](https://github.com/Alamofire/Alamofire/pull/3653). #### Fixed - Calls to deprecated cancellation handler function. - Fixed by [Sven Münnich](https://github.com/svenmuennich) in Pull Request [#3657](https://github.com/Alamofire/Alamofire/pull/3657). - Unnecessary protocol conformance on Combine publishers. - Fixed by [MoonkiKim(김문기)](https://github.com/tedKim5178) in Pull Request [#3650](https://github.com/Alamofire/Alamofire/pull/3650). - Don't attempt retry when `Request` has already been cancelled. - Fixed by [Jon Shier](https://github.com/jshier) in Pull Request [#3641](https://github.com/Alamofire/Alamofire/pull/3641). #### New Contributors * @tedKim5178 made their first contribution in https://github.com/Alamofire/Alamofire/pull/3650 * @svenmuennich made their first contribution in https://github.com/Alamofire/Alamofire/pull/3657 **Full Changelog**: https://github.com/Alamofire/Alamofire/compare/5.6.2...5.6.3
Safer Encoding
1 year ago
Released on 2022-07-17. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/82?closed=1). #### Added - Error when object provided to `JSONEcoding` contains values that can't be passed through `JSONSerialization`. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3624](https://github.com/Alamofire/Alamofire/pull/3624). #### Updated - CI support for all supported Xcode, macOS, and Linux versions. - Updated by [Jon Shier](https://github.com/jshier) in Pull Requests [#3607](https://github.com/Alamofire/Alamofire/pull/3607) and [#3622](https://github.com/Alamofire/Alamofire/pull/3622). - Support for various Xcode versions. - Updated by [Jon Shier](https://github.com/jshier) in Pull Requests [#3616](https://github.com/Alamofire/Alamofire/pull/3616) and [#3632](https://github.com/Alamofire/Alamofire/pull/3632). - `Cache-Control` header tests to not require hard-coded delays. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3601](https://github.com/Alamofire/Alamofire/pull/3601). #### Fixed - Swift version check for `SecTrustCopyCertificateChain`. - Fixed by [Jon Shier](https://github.com/jshier) in Pull Request [#3606](https://github.com/Alamofire/Alamofire/pull/3606). - Various documentation issues. - Fixed by [Jacob Lange](https://github.com/jacoblange-dev), [rain2540](https://github.com/rain2540), [bondxf](https://github.com/bondxf), [Ikko Ashimine](https://github.com/eltociear), and [Elon Park](https://github.com/ElonPark) in various Pull Requests.
Missing Cancellation Parameter
1 year ago
Released on 2022-04-17. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/81?closed=1). #### Fixed - Missing `automaticallyCancelling` parameter in `serializingDownloadedFileURL`. - Fixed by [Jon Shier](https://github.com/jshier) in Pull Request [#3597](https://github.com/Alamofire/Alamofire/pull/3597).
Concurrency Redux
1 year ago
Released on 2022-04-13. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/80?closed=1). #### Added - Support for `HTTPMethod.query` to support the [upcoming standard](https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-safe-method-w-body-02). - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3553](https://github.com/Alamofire/Alamofire/pull/3553). - Compile-time Swift version check to enforce minimum supported Swift version. - Added by [Dave Verwer](https://github.com/daveverwer) in Pull Request [#3549](https://github.com/Alamofire/Alamofire/pull/3549). - GitHub Sponsors support. You can now sponsor Alamofire directly through GitHub. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3543](https://github.com/Alamofire/Alamofire/pull/3543). #### Updated - Swift version required to build [🔥 Experimental 🔥] Swift Concurrency support to 5.6.0 to avoid various Apple bugs with Xcode 13.2.0 and 13.2.1. Support now requires Xcode 13.3.1. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3590](https://github.com/Alamofire/Alamofire/pull/3590). - `DownloadRequest` to avoid producing resume data when not explicitly requested on cancellation. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3538](https://github.com/Alamofire/Alamofire/pull/3538). - Testing infrastructure to use XCTestPlans on Apple platforms. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3538](https://github.com/Alamofire/Alamofire/pull/3538). - GitHub Actions support for greater OS coverage, more SPM platforms, and Swift 5.6. - Updated by [Jon Shier](https://github.com/jshier) in Pull Requests [#3534](https://github.com/Alamofire/Alamofire/pull/3534), [#3545](https://github.com/Alamofire/Alamofire/pull/3545), [#3570](https://github.com/Alamofire/Alamofire/pull/3570), and [#3587](https://github.com/Alamofire/Alamofire/pull/3587). #### Fixed - Various Security framework deprecation warnings when deploying to newer OSes. - Fixed by [Jon Shier](https://github.com/jshier) in Pull Request [#3555](https://github.com/Alamofire/Alamofire/pull/3555). - Various documentation issues. - Fixed by [Jon Shier](https://github.com/jshier), [Emanuele Fumagalli](https://github.com/emanuelef), [Huang-Libo](https://github.com/Huang-Libo), and [rain2540](https://github.com/rain2540) in Pull Requests [#3548](https://github.com/Alamofire/Alamofire/pull/3548), [#3562](https://github.com/Alamofire/Alamofire/pull/3562), [#3573](https://github.com/Alamofire/Alamofire/pull/3573), [#3574](https://github.com/Alamofire/Alamofire/pull/3574), and [#3585](https://github.com/Alamofire/Alamofire/pull/3585).
Swift Concurrency
1 year ago
Alamofire 5.5 is the first release where we're labeling features we consider experimental. These features, while fully designed and well tested, rely on language or framework features which may change or require breaking bug fixes, and we'd rather not have to make a major release in that case. So [🔥 Experimental 🔥] features may require breaking changes in minor, rather than major, releases. This will be rare and compatibility should be preserved in most cases, but cannot be guaranteed. Released on 2021-12-13. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/79?closed=1). #### Added - [🔥 Experimental 🔥] support for Swift Concurrency, including `async`-`await` for requests and `StreamOf` for streaming values. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3463](https://github.com/Alamofire/Alamofire/pull/3463). - Generic static accessors for various protocols types for Swift 5.5. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3499](https://github.com/Alamofire/Alamofire/pull/3499). - `.indexInBrackets` options for array encoding in query parameters. - Added by [Tiago Lopes](https://github.com/TiagoMaiaL) in Pull Request [#3516](https://github.com/Alamofire/Alamofire/pull/3516). - `RequestAdapterState` and new protocol requirements for `RequestAdapter` to allow for additional state to be available. - Added by [Christian Noon](https://github.com/cnoon) in Pull Request [#3504](https://github.com/Alamofire/Alamofire/pull/3504). #### Updated - `Session` to more safely target provided custom `DispatchQueue`s for internal use. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3523](https://github.com/Alamofire/Alamofire/pull/3523). - `AFError` message regarding unacceptable `Content-Type`s to sort the types. - Updated by [Timur Yusipov](https://github.com/Usipov) in Pull Request [#3518](https://github.com/Alamofire/Alamofire/pull/3518). - Base Swift language version requirement to 5.3. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3495](https://github.com/Alamofire/Alamofire/pull/3495). - Sample app to show proper loading state for requests. - Updated by [Tiago Lopes](https://github.com/TiagoMaiaL) in Pull Request [#3514](https://github.com/Alamofire/Alamofire/pull/3514). #### Deprecated - `responseJSON` and associated methods, in preference to `responseDecodable`. - Deprecated by [Jon Shier](https://github.com/jshier) in Pull Request [#3502](https://github.com/Alamofire/Alamofire/pull/3502). #### Fixed - Use of `Protected` wrapper when accessing properties of the wrapped values to ensure proper thread-safety. - Fixed by [Jon Shier](https://github.com/jshier) in Pull Request [#3505](https://github.com/Alamofire/Alamofire/pull/3505). - Various documentation typos. - Fixed by [Christos Koninis](https://github.com/csknns), [Tiago Lopes](https://github.com/TiagoMaiaL), and [Eugene Berdnikov](https://github.com/evnik) in various Pull Requests.
Xcode 13 Fixes
2 years ago
Released on 2021-09-20. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/78?closed=1). #### Added - Support for Xcode 13, including a workaround for Combine compilation on older architectures. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3486](https://github.com/Alamofire/Alamofire/pull/3486). - Testing on watchOS. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3449](https://github.com/Alamofire/Alamofire/pull/3449). - Support for building on Windows and Linux. Alamofire is unsupported on these platforms but should build correctly. - Added by [Jon Shier](https://github.com/jshier) and [Alex Taffe](https://github.com/alex-taffe) in Pull Requests [#3446](https://github.com/Alamofire/Alamofire/pull/3446) and [#3462](https://github.com/Alamofire/Alamofire/pull/3462). #### Updated - Usage of `.count >= 0` to `!.isEmpty`. - Updated by [Shafeer P](https://github.com/shafeerp) in Pull Request [#3478](https://github.com/Alamofire/Alamofire/pull/3478). #### Fixed - Async navigation title updating in example app. - Fixed by [Tiago Maia](https://github.com/TiagoMaiaL) in Pull Request [3494](https://github.com/Alamofire/Alamofire/pull/3494). - Various documentation bugs. - Fixed by [Jordan de Laune](https://github.com/jdelaune), [Cédric Luthi](https://github.com/0xced), [Romain Bertozzi](https://github.com/r-mckay), and [Tiago Maia](https://github.com/TiagoMaiaL).
iOS macOS watchOS tvOS
grpc/grpc v1.58.1
The C based gRPC (C++, Python, Ruby, Objective-C, PHP, C#)
⭐️ 39,067
🕓 1 week ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Release v1.58.1
1 week ago
This is release 1.58.1 ([goku](https://github.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core. For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release is primarily for gRPC C++ to support c-ares 1.14. Core / C++ --- - Reintroduced c-ares 1.14 or later support #34314
Release v1.58.0
2 weeks ago
This is release 1.58.0 ([goku](https://github.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core. For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release contains refinements, improvements, and bug fixes, with highlights listed below. Core --- - gRPC 1.58 starts to require c-ares 1.18 or later. - [Deps] Update boringssl 202308211007. ([#34115](https://github.com/grpc/grpc/pull/34115)) - [pick_first] de-experiment pick first. ([#34054](https://github.com/grpc/grpc/pull/34054)) - [build metadata] Bazel to "other build systems" improvements. ([#33803](https://github.com/grpc/grpc/pull/33803)) - [Deps] Update abseil to 20230802. ([#33974](https://github.com/grpc/grpc/pull/33974)) - [c-ares DNS resolver] Fix file descriptor use-after-close bug when c-ares writes succeed but subsequent read fails. ([#33871](https://github.com/grpc/grpc/pull/33871)) C++ --- - [docs] Document Alarm thread-safety guarantees. ([#34092](https://github.com/grpc/grpc/pull/34092)) - Added OpenSSL 3.0 (LTS) support via custom CMake builds (the default is still BoringSSL) Python --- - [Bazel] Enable grpcio-reflection to be used via Bazel. ([#31013](https://github.com/grpc/grpc/pull/31013)) - [packaging] Publish xds-protos as part of the standard package pipeline. ([#33797](https://github.com/grpc/grpc/pull/33797)) Ruby --- - [ruby] update google auth to ~> 1.0. ([#34013](https://github.com/grpc/grpc/pull/34013)) - [Ruby] set metadata_sent after call success. ([#33998](https://github.com/grpc/grpc/pull/33998)) - [ruby] remove unnecessary background thread startup wait logic that interferes with forking. ([#33805](https://github.com/grpc/grpc/pull/33805))
Release v1.58.0-pre1
4 weeks ago
This is a prerelease of gRPC Core 1.58.0 (goku). For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This prerelease contains refinements, improvements, and bug fixes.
Release v1.57.0
6 weeks ago
This is release 1.57.0 ([grounded](https://github.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core. For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release contains refinements, improvements, and bug fixes, with highlights listed below. Core --- - [EventEngine] Change `GetDNSResolver` to return `absl::StatusOr<std::unique_ptr<DNSResolver>>`. ([#33744](https://github.com/grpc/grpc/pull/33744)) - [deps] Remove libuv dependency. ([#33748](https://github.com/grpc/grpc/pull/33748)) - [ssl] Fix SSL stack to handle large handshake messages whose length exceeds the BIO buffer size. ([#33638](https://github.com/grpc/grpc/pull/33638)) - [BoringSSL] Update third_party/boringssl-with-bazel. ([#33690](https://github.com/grpc/grpc/pull/33690)) - [iomgr][EventEngine] Improve server handling of file descriptor exhaustion. ([#33656](https://github.com/grpc/grpc/pull/33656)) - [ruby] experimental client side fork support. ([#33430](https://github.com/grpc/grpc/pull/33430)) - [core] Add a channel argument to set DSCP on streams. ([#28322](https://github.com/grpc/grpc/pull/28322)) - [xDS LB] xDS pick first support. ([#33540](https://github.com/grpc/grpc/pull/33540)) - [tls] Remove use of SSL_CTX_set_client_CA_list for TLS server credentials. ([#33558](https://github.com/grpc/grpc/pull/33558)) - [EventEngine] Simplify `EventEngine::DNSResolver` API. ([#33459](https://github.com/grpc/grpc/pull/33459)) - [iomgr][Windows] Return proper error code to client when connection is reset. ([#33502](https://github.com/grpc/grpc/pull/33502)) - [fork] simplify Fork::SetResetChildPollingEngineFunc to fix nested forking. ([#33495](https://github.com/grpc/grpc/pull/33495)) - [lb pick_first] Enable random shuffling of address list. ([#33254](https://github.com/grpc/grpc/pull/33254)) - [HTTP2] Fix inconsistencies in keepalive configuration. ([#33428](https://github.com/grpc/grpc/pull/33428)) - [c-ares] Upgrade c-ares dependency to 1.19.1. ([#33392](https://github.com/grpc/grpc/pull/33392)) - [Rls] de-experimentalize RLS in XDS. ([#33290](https://github.com/grpc/grpc/pull/33290)) C++ --- - [otel] Add bazel dependency. ([#33548](https://github.com/grpc/grpc/pull/33548)) C# --- - [csharp] Include correct build of Grpc.Tools in nightly packages. ([#33595](https://github.com/grpc/grpc/pull/33595)) - [csharp] reintroduce base_namespace experimental option to C# (with a patch). ([#33535](https://github.com/grpc/grpc/pull/33535)) Objective-C --- - [Protobuf] Upgrade third_party/protobuf to 23.4. ([#33695](https://github.com/grpc/grpc/pull/33695)) Python --- - [posix] Enable systemd sockets for libsystemd>=233. ([#32671](https://github.com/grpc/grpc/pull/32671)) - [python O11Y] Initial Implementation. ([#32974](https://github.com/grpc/grpc/pull/32974)) Ruby --- - [ruby] experimental client side fork support ([#33430](https://github.com/grpc/grpc/pull/33430)) - [ruby] backport "[ruby] remove unnecessary background thread startup wait logic that interferes with forking #33805" to v1.57.x. ([#33846](https://github.com/grpc/grpc/pull/33846)) - [Ruby] remove manual strip in ruby ext conf. ([#33641](https://github.com/grpc/grpc/pull/33641)) - [ruby] simplify shutdown; remove unnecessary attempts at grpc_shutdown. ([#33674](https://github.com/grpc/grpc/pull/33674)) - [ruby] Add `-weak_framework CoreFoundation` to link line. ([#33538](https://github.com/grpc/grpc/pull/33538)) - [Ruby] Fix memory leak in grpc_rb_call_run_batch. ([#33368](https://github.com/grpc/grpc/pull/33368)) - [Ruby] Fix memory leak in grpc_rb_server_request_call. ([#33371](https://github.com/grpc/grpc/pull/33371))
Release v1.55.3
7 weeks ago
This is release 1.55.3 ([grandslam](https://github.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core. For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release contains refinements, improvements, and bug fixes, with highlights listed below. Core --- - [backport][iomgr][EventEngine] Improve server handling of file descriptor exhaustion by @drfloob in https://github.com/grpc/grpc/pull/33669 Python --- - [iOS] Disable posix polling on iOS (#33094) by @gnossen in https://github.com/grpc/grpc/pull/33326
Release v1.54.3
7 weeks ago
This is release 1.54.3 ([gracious](https://github.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core. For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release contains refinements, improvements, and bug fixes, with highlights listed below. Core --- * [backport][iomgr][EventEngine] Improve server handling of file descriptor exhaustion by @drfloob in https://github.com/grpc/grpc/pull/33670
Release v1.53.2
7 weeks ago
This is release gRPC Core 1.53.2 (glockenspiel). For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release contains refinements, improvements, and bug fixes. Core --- - [backport][iomgr][EventEngine] Improve server handling of file descriptor exhaustion by @drfloob in https://github.com/grpc/grpc/pull/33672
Release v1.57.0-pre1
8 weeks ago
This is a prerelease of gRPC Core 1.57.0 (grounded). For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This prerelease contains refinements, improvements, and bug fixes.
Release v1.56.2
10 weeks ago
This is release gRPC Core 1.56.2 (galvanized). For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release contains refinements, improvements, and bug fixes. Core --- - [WRR] backport ([#33694](https://github.com/grpc/grpc/pull/33694)) to 1.56 ([#33698](https://github.com/grpc/grpc/pull/33698)) - [backport][iomgr][EventEngine] Improve server handling of file descriptor exhaustion ([#33667](https://github.com/grpc/grpc/pull/33667))
Release v1.56.1
10 weeks ago
This is release 1.56.1 ([galvanized](https://github.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core. For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release contains refinements, improvements, and bug fixes, with highlights listed below. Core --- - [tls] Backport - Remove use of `SSL_CTX_set_client_CA_list` for TLS server credentials. ([#33583](https://github.com/grpc/grpc/pull/33583))
fastlane/fastlane watchbuild/0.1.4
🚀 The easiest way to automate building and releasing your iOS and Android apps
⭐️ 37,551
🕓 2 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
2.216.0 Fix for match GitLab storage
6 days ago
* [match] fixes missing job-token error in GitLab storage mode (#21520) via Darby Frey (@darbyfrey)
2.215.1 Workaround for Google Play API instability
1 week ago
* [supply] add new SUPPLY_UPLOAD_MAX_RETRIES env var to attempt to solve failed Google API calls (#21518) via Josh Holtz (@joshdholtz)
2.215.0 Improvements
1 week ago
* [spaceship] add request retry with backoff when encountring 429 errors (#21511) via Stefan Natchev (@snatchev) * [supply] introduce a new synchronization logic for screenshots (#21498) via Olivier Halligon (@AliSoftware) * [deliver] validate the status of app version to be ready_for_review before submitting the app (#20515) via 醉 (@404pilot) * [match] Added s3_skip_encryption parameter (#21018) via Morten Bøgh (@mbogh) * [docs] add minor branding guidelines to `CONTRIBUTING.md` (#21495) via Roger Oba (@rogerluan) * [match] prevent directory download from s3 (#20975) via Mark Homoki (@markhomoki) * [xcodes] fix issue where `xcodes` action wouldn't accept beta versions of Xcode (#21434) via apps4everyone (@apps4everyone) * [spaceship] explicit beta group access to all builds at creation (#21478) via Vincent Isambart (@vincentisambart) * [docs] update pull request template to ask contributors to write unit tests (#21427) via Roger Oba (@rogerluan) * [action] deprecate the ensure_xcode_version action (#21448) via Iulian Onofrei (@revolter) * [tests] stop generating rspec temp file in current directory (#21466) via Roger Oba (@rogerluan) * [ci] fix CI by replacing deprecated Xcode versions, and add Xcode 14, Xcode 15, and Ruby 3.1 to test envs (#21465) via Roger Oba (@rogerluan) * [deliver][frameit] add iPhone 14 Pro / 6.1" display type (#21393) via Stefan Natchev (@snatchev) * [spaceship] add missing `AppStoreState` cases (#21312) via Roger Oba (@rogerluan) * [fastlane_core] fix WWDR certificates import flow (#21442) via Paul Taykalo (@PaulTaykalo) * [docs] fix tool name formatting (for `supply`) to be lowercase to pass fastlane docs unit tests (#21426) via Roger Oba (@rogerluan)
2.214.0 Improvements
10 weeks ago
* [spaceship] fix olympus session request error after skipping 2FA Upgrade (#21317) via AbbyM (@AbbyM) * [spaceship] add update method to ConnectAPI::User (#20956) via Vitalii Budnik (@nekrich) * [supply][action] add `download_apk_from_google_play` action (and corresponding `supply` methods) (#21315) via Olivier Halligon (@AliSoftware) * [docs] fix sync_code_signing.md (#21202) via Yuki Sakai (@VeyronSakai) * [fastlane] fix fastlane action template warnings reported by Rubocop (#21310) via Bartosz Kosiorek (@BartoszKosiorek-TomTom) * [docs][match] fix typos, improve wording, incorporate improvements to match documentation examples (#21302) via Roger Oba (@rogerluan) * [match] fixes Gitlab Secure Files API limit (#21361) via Darby Frey (@darbyfrey) * [match] adding access token prompt for GitLab Secure Files Match (#21279) via Darby Frey (@darbyfrey) * [deliver] update upload_price_tier (#21282) via lukethoene (@lukethoene)
2.213.0 Improvements
17 weeks ago
* [core][match] remove obsolete and expired WWDR G1 certificate (#21271) via Frederik Seiffert (@triplef) * [action][ensure_git_status_clean] new ignore_files option for explicitly ignoring files (#21283) via Josh Holtz (@joshdholtz) * [scan] run simulator destination with arch=x86_64 for Xcode 14.3 and up if on Intel (#21284) via Josh Holtz (@joshdholtz) * [match] adding support for self-managed GitLab instances (#21274) via Darby Frey (@darbyfrey) * [pilot] fix increase limit for build query (#21212) via Eric Lindvall (@eric) * [dependency] relax `multipart_post` dependency version requirement (#20870) via Edouard Brière (@edouard)
2.212.2 Improvements and fix for some App Store Connect APIs
23 weeks ago
* [ci] Only run all mac jobs on master and version bump branches (#21088) via Josh Holtz (@joshdholtz) * [spaceship] remove deprecated attributes from apps requests (#21187) via Kohki Miki (@giginet) * [snapshot] fix resolve deadlock in LatestOsVersion#version_for_os (#20329) via stbix (@stbix) * [deliver] Implements `verify` with `altool` for Xcode 14 validation (#20738) via Pol Piella Abadia (@polpielladev) * [action][ensure_git_status_clean] fix incorrect "ignored" param handling (#20976) via Iulian Onofrei (@revolter) * [spaceship] increase limit for build query in distribute to handle multiple platforms (#21087) via Eric Lindvall (@eric)
2.212.1 Fix for Apple ID lockout and Access Forbidden with new hashcash header
30 weeks ago
* [spaceship] Implements new hashcash header in auth flow (#21073) via Josh Holtz (@joshdholtz) * [spaceship] Fix Apple ID 2FA with SMS (#21072) via Josh Holtz (@joshdholtz)
2.212.0 Improvements
31 weeks ago
* [fastlane_core] New FASTLANE_WWDR_USE_HTTP1_AND_RETRIES env (feature flag) to use http 1.1 and retries when installing WWDC certs to fix some CI failures (#21044) via Josh Holtz (@joshdholtz) * [CI] Update deprecated CircleCI images (#20932) via Aaron Brager (@getaaron) * [spaceship] Add language name in stack trace when localization operations fail (#20581) via Cristian Caruceru (@ccaruceru) * [gym] Add show build timing summary option (#20896) via Pol Piella (@polpielladev) * [deliver] add iPad Pro 6th generation (#20993) via Kohki Miki (@giginet) * [action][import_from_git] fix error when cache_path is not specified (#20958) via Vitalii Budnik (@nekrich) * [spaceship] add methods to rename and disable/enable devices (#20928) via Vitalii Budnik (@nekrich) * [spaceship] Remove unused params in ConnectAPI::Device (#20931) via Aaron Brager (@getaaron) * [action][xcodes] add error handling for `xcodes` when running the `installed` cmd (#20867) via Gio Lodi (@mokagio) * [scan] add option to specify result bundle path (#20742) via Benedek Kozma (@Cyberbeni) * [deliver] fix bug when canceling a rejected submission (#20754) via merchang (@merchang) * [fastlane_core] prevent negative argument error for message formatting (#20857) via Akseli Lukkarila (@akselilukkarila) * [spaceship] support fetching `build_bundle_file_sizes` for a `BuildBundle` (#20860) via Liam Nichols (@liamnichols) * [action][update_project_provisioning] redownload AppleIncRootCertificate.cer if file size is 0. (#20812) via Jerry.Qiushi (@JerryZQS) * [docs] add link to Spaceship Debugging docs from Tooling and Debugging docs (#20849) via Rob Mathers (@robmathers) * [screengrab] fix formatting of the `screengrab` / `capture_android_screenshots` docs (#20597) via Olivier Halligon (@AliSoftware) * [action][pod lib lint] fix grammar in success message (#20627) via Tejas Sharma (@tejassharma96) * [match] developer id installer profile for the accessible environments (#20782) via Paul Taykalo (@PaulTaykalo)
2.211.0 Improvements
45 weeks ago
* [release] fix for more forgiving changelog generation for release (#20851) via Josh Holtz (@joshdholtz) * [match][sigh] add support for Apple Silicon Macs in iOS/iPadOS provisioning profiles (#20676) via Philipp Resch (@PinkidG) * [snapshot] fix compiler error on `SnapshotHelper.swift` (#20689) via amcalgates (@amcalgates) * [match] fix match nuke not deleting decrypted files (#20776) via Iulian Onofrei (@revolter) * [docs] update path to iTMSTransporter for Fastlane.swift (#20795) via Rafał Wyszomirski (@rafauke) * [action][update_code_signing_settings] add `sdk` key to update_code_signing_settings (#20655) via gabimoncha (@gabimoncha) * [pilot][deliver] fix private method clone' called for #<Hash> on uploading app (#20662) via freddi(Yuki Aki) (@freddi-kit) * [spaceship] implement resolution center API in Spaceship::ConnectAPI (#20726) via Hiroto Nakamura (@Hiroto-N) * [action] add `xcodes` action, deprecating `xcversion` and `xcode-install` (#20672) via Roger Oba (@rogerluan) * [frameit] fix device detection that would match less specific devices first (#20642) via Guglielmo Faglioni (@guidev) * [deliver] add support to detecting and uploading 6.7" (iPhone 14 Pro Max) screenshots (#20694) via Evgeny Cherpak (@cherpake)
2.210.1 Hotfix for deliver and pilot
1 year ago
* [pilot][deliver] Fix how to encode base64 p8 key on deliver and pilot (#20669) via freddi(Yuki Aki) (@freddi-kit)
AFNetworking/AFNetworking 4.0.1
A delightful networking framework for iOS, macOS, watchOS, and tvOS.
⭐️ 33,354
🕓 35 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Fixes and Updates
3 years ago
Released on Sunday, April 19, 2020. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/milestone/20?closed=1). #### Updated * Project templates and integrations. * Implemented by Kaspik in [#4531](https://github.com/AFNetworking/AFNetworking/pull/4531). * Various CocoaPods podspec settings. * Implemented by ElfSundae in [#4528](https://github.com/AFNetworking/AFNetworking/pull/4528), [#4532](https://github.com/AFNetworking/AFNetworking/pull/4532), and [#4533](https://github.com/AFNetworking/AFNetworking/pull/4533). #### Fixed * Crash during authentication delegate method. * Implemented by Kaspik, ElfSundae, and jshier in [#4542](https://github.com/AFNetworking/AFNetworking/pull/4542), [#4552](https://github.com/AFNetworking/AFNetworking/pull/4552), and [#4553](https://github.com/AFNetworking/AFNetworking/pull/4553). * SPM integration. * Implemented by jshier in [#4554](https://github.com/AFNetworking/AFNetworking/pull/4554). * Improper update instead of replacement of header values. * Implemented by ElfSundae in [#4550](https://github.com/AFNetworking/AFNetworking/pull/4550). * Nullability of some methods. * Implemented by ElfSundae in [#4551](https://github.com/AFNetworking/AFNetworking/pull/4551). * Typos in CHANGELOG. * Implemented by ElfSundae in [#4537](https://github.com/AFNetworking/AFNetworking/pull/4537). * Missing tvOS compatibility for some methods. * Implemented by ElfSundae in [#4536](https://github.com/AFNetworking/AFNetworking/pull/4536). * Missing `FOUNDATION_EXPORT` for `AFJSONObjectByRemovingKeysWithNullValues`. * Implemented by ElfSundae in [#4529](https://github.com/AFNetworking/AFNetworking/pull/4529). #### Removed * Unused UIImage+AFNetworking.h file. * Implemented by ElfSundae in [#4535](https://github.com/AFNetworking/AFNetworking/pull/4535).
A Long Time Coming
3 years ago
Released on Sunday, March 29, 2020. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/milestone/16?closed=1). #### Added * Notificate when a downloaded file has been moved successfully. * Implemented by xingheng in [#4393](https://github.com/AFNetworking/AFNetworking/pull/4393). * Specific error for certificate pinning failure. * Implemented by 0xced in [#3425](https://github.com/AFNetworking/AFNetworking/pull/3425). * `WKWebView` extensions. * Implemented by tjanela in [#4439](https://github.com/AFNetworking/AFNetworking/pull/4439). * Automatic location of certificates in the main bundle for certificate pinning. * Implemented by 0xced in [#3752](https://github.com/AFNetworking/AFNetworking/pull/3752). * User-Agent support for tvOS. * Implemented by ghking in [#4014](https://github.com/AFNetworking/AFNetworking/pull/4014). * Ability for `AFHTTPSessionManager` to recreate its underlying `NSURLSession`. * Implemented by Kaspik in [#4256](https://github.com/AFNetworking/AFNetworking/pull/4256). * Ability to set HTTP headers per request. * Implemented by stnslw in [#4113](https://github.com/AFNetworking/AFNetworking/pull/4113). * Ability to capture `NSURLSessionTaskMetrics`. * Implemented by Caelink in [#4237](https://github.com/AFNetworking/AFNetworking/pull/4237). #### Updated * `dataTaskWithHTTPMethod` to be public. * Implemented by smartinspereira in [#4007](https://github.com/AFNetworking/AFNetworking/pull/4007). * Reachability notification to include the instance which issued the notification. * Implemented by LMsgSendNilSelf in [#4051](https://github.com/AFNetworking/AFNetworking/pull/4051). * `AFJSONObjectByRemovingKeysWithNullValues` to be public. * Implemented by ashfurrow in [#4051](https://github.com/AFNetworking/AFNetworking/pull/4051). * `AFJSONObjectByRemovingKeysWithNullValues` to remove `NSNull` values from `NSArray`s. * Implemented by ashfurrow in [#4052](https://github.com/AFNetworking/AFNetworking/pull/4052). #### Changed * Automated CI to GitHub Actions. * Implemented by jshier in [#4523](https://github.com/AFNetworking/AFNetworking/pull/4523). #### Fixed * Explicit `NSSecureCoding` support. * Implemented by jshier in [#4523](https://github.com/AFNetworking/AFNetworking/pull/4523). * Deprecated API usage on Catalyst. * Implemented by jshier in [#4523](https://github.com/AFNetworking/AFNetworking/pull/4523). * Nullability annotations. * Implemented by jshier in [#4523](https://github.com/AFNetworking/AFNetworking/pull/4523). * `AFImageDownloader` to more accurately cancel downloads. * Implemented by kinarobin in [#4407](https://github.com/AFNetworking/AFNetworking/pull/4407). * Double KVO notifications in `AFNetworkActivityManager`. * Implemented by kinarobin in [#4406](https://github.com/AFNetworking/AFNetworking/pull/4406). * Availability annotations around `NSURLSessionTaskMetrics`. * Implemented by ElfSundae in [#4516](https://github.com/AFNetworking/AFNetworking/pull/4516). * Issues with `associated_object` and subclasses. * Implemented by welcommand in [#3872](https://github.com/AFNetworking/AFNetworking/pull/3872). * Memory leak in example application. * Implemented by svoit in [#4196](https://github.com/AFNetworking/AFNetworking/pull/4196). * Crashes in mulithreaded scenarios and `dispatch_barrier`. * Implemetned by streeter in [#4474](https://github.com/AFNetworking/AFNetworking/pull/4474). * Issues with `NSSecureCoding`. * Implemented by ElfSudae in [#4409](https://github.com/AFNetworking/AFNetworking/pull/4409). * Code style issues. * Implemented by svoit in [#4200](https://github.com/AFNetworking/AFNetworking/pull/4200). * Race condition in `AFImageDownloader`. * Implemented by bbeversdorf in [#4246](https://github.com/AFNetworking/AFNetworking/pull/4246). * Coding style issues. * Implemented by LeeHongHwa in [#4002](https://github.com/AFNetworking/AFNetworking/pull/4002). #### Removed * Support for iOS < 9, macOS < 10.10. * Implemented by jshier in [#4523](https://github.com/AFNetworking/AFNetworking/pull/4523). * All previously deprecated APIs. * Implemented by jshier in [#4523](https://github.com/AFNetworking/AFNetworking/pull/4523). * Unnecessary `__block` capture. * Implemented by kinarobin in [#4526](https://github.com/AFNetworking/AFNetworking/pull/4526). * Workaround for `NSURLSessionUploadTask` creation on iOS 7. * Implemented by kinarobin in [#4525](https://github.com/AFNetworking/AFNetworking/pull/4525). * Workaround for safe `NSURLSessionTask` creation on iOS < 8. * Implemented by kinarobin in [#4401](https://github.com/AFNetworking/AFNetworking/pull/4401). * `UIWebView` extensions. * Implemented by tjanela in [#4439](https://github.com/AFNetworking/AFNetworking/pull/4439).
2.7.0
4 years ago
Released on Tuesday, February 12, 2019. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A2.7.0+is%3Aclosed). #### Fixed * Update Podfile to work on modern CocoaPods * Fixed by [SlaunchaMan](https://github.com/SlaunchaMan) in [#4329](https://github.com/AFNetworking/AFNetworking/pull/4329). * Add nullability specifiers to all `id responseObject` parameters * Fixed by [sashaweiss](https://github.com/sashaweiss) in [#4335](https://github.com/AFNetworking/AFNetworking/pull/4335). * Fix empty content crash on `AFHTTPSessionManager.post` * Fixed by [jcravioto](https://github.com/jcravioto) in [#4296](https://github.com/AFNetworking/AFNetworking/pull/4296).
3.2.1
5 years ago
Released on Friday, May 04, 2018. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A3.2.1+is%3Aclosed). #### Updated * Xcode 9.3 Support * Implemented by Jeff Kelley in [#4199](https://github.com/AFNetworking/AFNetworking/pull/4199). * Update HTTPBin certificates for April 2018. * Implemented by Jeff Kelley in [#4198](https://github.com/AFNetworking/AFNetworking/pull/4198). #### Additional Changes * Remove conflicting nullable specifier on init * Implemented by Nick Brook and Jeff Kelley in [#4182](https://github.com/AFNetworking/AFNetworking/pull/4182). * Use @available if available to silence a warning. * Implemented by Jeff Kelley in [#4138](https://github.com/AFNetworking/AFNetworking/pull/4138). * UIImageView+AFNetworking: Prevent stuck state for malformed urlRequest * Implemented by Adam Duflo and aduflo in [#4131](https://github.com/AFNetworking/AFNetworking/pull/4131). * add the link for LICENSE * Implemented by Liao Malin in [#4125](https://github.com/AFNetworking/AFNetworking/pull/4125). * Fix analyzer warning for upload task creation * Implemented by Jeff Kelley in [#4122](https://github.com/AFNetworking/AFNetworking/pull/4122).
3.2.0
5 years ago
Released on Friday, December 15, 2017. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A3.2.0+is%3Aclosed). #### Added * Config `AFImageDownloader` `NSURLCache` and ask `AFImageRequestCache` implementer if an image should be cached * Implemented by wjehenddher in [#4010](https://github.com/AFNetworking/AFNetworking/pull/4010). * Add `XMLParser`/`XMLDocument` serializer tests * Implemented by skyline75489 in [#3753](https://github.com/AFNetworking/AFNetworking/pull/3753). * Enable custom httpbin URL with `HTTPBIN_BASE_URL` environment variable * Implemented by 0xced in [#3748](https://github.com/AFNetworking/AFNetworking/pull/3748). * `AFHTTPSessionManager` now throws exception if SSL pinning mode is set for non https sessions * Implemented by 0xced in [#3687](https://github.com/AFNetworking/AFNetworking/pull/3687). #### Updated * Update security policy test certificates * Implemented by SlaunchaMan in [#4103](https://github.com/AFNetworking/AFNetworking/pull/4103). * Allow return value of HTTP redirection block to be `NULL` * Implemented by TheDom in [#3975](https://github.com/AFNetworking/AFNetworking/pull/3975). * Clarify documentation for supported encodings in `AFJSONResponseSerializer` * Implemented by skyline75489 in [#3750](https://github.com/AFNetworking/AFNetworking/pull/3750). * Handle Error Pointers according to Cocoa Convention * Implemented by tclementdev in [#3653](https://github.com/AFNetworking/AFNetworking/pull/3653). * Updates `AFHTTPSessionManager` documentation to reflect v3.x change * Implemented by ecaselles in [#3476](https://github.com/AFNetworking/AFNetworking/pull/3476). * Improved code base to generate fewer warnings when using stricter compiler settings * Implemented by 0xced in [3431](https://github.com/AFNetworking/AFNetworking/pull/3431). #### Changed * Change “Mac OS X” and “OS X” references to “macOS” * Implemented by SlaunchaMan in [#4104](https://github.com/AFNetworking/AFNetworking/pull/4104). #### Fixed * Fixed crash around customizing `NSURLCache` size for < iOS 8.2 * Implemented by kcharwood in [#3735](https://github.com/AFNetworking/AFNetworking/pull/3735). * Fixed issue where `UIWebView` extension did not preserve all of the request information * Implemented by skyline75489 in [#3733](https://github.com/AFNetworking/AFNetworking/pull/3733). * Fixed bug with webview delegate callback * Implemented by kcharwood in [#3727](https://github.com/AFNetworking/AFNetworking/pull/3727). * Fixed crash when passing invalid JSON to request serialization * Implemented by 0xced in [#3719](https://github.com/AFNetworking/AFNetworking/pull/3719). * Fixed potential KVO crasher for URL Session Task delegates * Implemented by 0xced in [#3718](https://github.com/AFNetworking/AFNetworking/pull/3718). * Removed ambiguous array creation in `AFSecurityPolicy` * Implemented by sgl0v in [#3679](https://github.com/AFNetworking/AFNetworking/pull/3679). * Fixed issue where `NS_UNAVAILABLE` is not reported for `AFNetworkReachabilityManager` * Implemented by Microbee23 in [#3649](https://github.com/AFNetworking/AFNetworking/pull/3649). * Require app extension api only on watchOS * Implemented by ethansinjin in [#3612](https://github.com/AFNetworking/AFNetworking/pull/3612). * Remove KVO of progress in favor of using the NSURLSession delegate APIs * Implemented by coreyfloyd in [#3607](https://github.com/AFNetworking/AFNetworking/pull/3607). * Fixed an issue where registering a `UIProgessView` to a task that was causing a crash * Implemented by Starscream27 in [#3604](https://github.com/AFNetworking/AFNetworking/pull/3604). * Moved `[self didChangeValueForKey:@"currentState"]` into correct scope * Implemented by chenxin0123 in [#3565](https://github.com/AFNetworking/AFNetworking/pull/3565). * Fixed issue where response serializers did not inherit super class copying * Implemented by kcharwood in [#3559](https://github.com/AFNetworking/AFNetworking/pull/3559). * Fixed crashes due to race conditions with `NSMutableDictionary` access in `AFHTTPRequestSerializer` * Implemented by alexbird in [#3526](https://github.com/AFNetworking/AFNetworking/pull/3526). * Updated dash character to improve markdown parsing for license * Implemented by gemmakbarlow in [#3488](https://github.com/AFNetworking/AFNetworking/pull/3488). #### Removed * Deprecate the unused stringEncoding property of `AFHTTPResponseSerializer` * Implemented by 0xced in [#3751](https://github.com/AFNetworking/AFNetworking/pull/3751). * Removed unused `AFTaskStateChangedContext` * Implemented by yulingtianxia in [#3432](https://github.com/AFNetworking/AFNetworking/pull/3432).
3.1.0
7 years ago
Released on Thursday, March 31, 2016. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A3.1.0+is%3Aclosed). #### Added - Improved `AFImageResponseSerializer` test coverage - Implemented by quellish in [#3367](https://github.com/AFNetworking/AFNetworking/pull/3367). - Exposed `AFQueryStringFromParameters` and `AFPercentEscapedStringFromString` for public use. - Implemented by Kevin Harwood in [#3160](https://github.com/AFNetworking/AFNetworking/pull/3160). #### Updated - Updated Test Suite to run on Xcode 7.3 - Implemented by Kevin Harwood in [#3418](https://github.com/AFNetworking/AFNetworking/pull/3418). - Added white space to URLs in code comment to allow Xcode to properly parse them - Implemented by Draveness in [#3384](https://github.com/AFNetworking/AFNetworking/pull/3384). - Updated documentation to match method names and correct compiler warnings - Implemented by Hakon Hanesand in [#3369](https://github.com/AFNetworking/AFNetworking/pull/3369). - Use `NSKeyValueChangeNewKey` constant in change dictionary rather than hardcoded string. - Implemented by Wenbin Zhang in [#3360](https://github.com/AFNetworking/AFNetworking/pull/3360). - Resolved compiler warnings for documentation errors - Implemented by Ricardo Santos in [#3336](https://github.com/AFNetworking/AFNetworking/pull/3336). #### Changed - Reverted `NSURLSessionAuthChallengeDisposition` to `NSURLSessionAuthChallengeCancelAuthenticationChallenge` for SSL Pinning - Implemented by Kevin Harwood in [#3417](https://github.com/AFNetworking/AFNetworking/pull/3417). #### Fixed - Removed trailing question mark in query string if parameters are empty - Implemented by Kevin Harwood in [#3386](https://github.com/AFNetworking/AFNetworking/pull/3386). - Fixed crash if bad URL was passed into the image downloader - Implemented by Christian Wen and Kevin Harwood in [#3385](https://github.com/AFNetworking/AFNetworking/pull/3385). - Fixed image memory calculation - Implemented by 周明宇 in [#3344](https://github.com/AFNetworking/AFNetworking/pull/3344). - Fixed issue where UIButton image downloading called wrong cancel method - Implemented by duanhong in [#3332](https://github.com/AFNetworking/AFNetworking/pull/3332). - Fixed image downloading cancellation race condition - Implemented by Kevin Harwood in [#3325](https://github.com/AFNetworking/AFNetworking/pull/3325). - Fixed static analyzer warnings on AFNetworkReachabilityManager - Implemented by Jeff Kelley in [#3315](https://github.com/AFNetworking/AFNetworking/pull/3315). - Fixed issue where download progress would not be reported in iOS 7 - Implemented by zwm in [#3294](https://github.com/AFNetworking/AFNetworking/pull/3294). - Fixed status code 204/205 handling - Implemented by Kevin Harwood in [#3292](https://github.com/AFNetworking/AFNetworking/pull/3292). - Fixed crash when passing nil/null for progress in UIWebView extension - Implemented by Kevin Harwood in [#3289](https://github.com/AFNetworking/AFNetworking/pull/3289). #### Removed - Removed workaround for NSJSONSerialization bug that was fixed in iOS 7 - Implemented by Cédric Luthi in [#3253](https://github.com/AFNetworking/AFNetworking/pull/3253).
3.0.4
7 years ago
Released on Friday, December 18, 2015. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A3.0.4+is%3Aclosed). #### Fixed - Fixed issue where `AFNSURLSessionTaskDidResumeNotification` was removed twice - Implemented by Kevin Harwood in [#3236](https://github.com/AFNetworking/AFNetworking/pull/3236).
3.0.3
7 years ago
Released on Wednesday, December 16, 2015. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A3.0.3+is%3Aclosed). #### Added - Added tests for response serializers to increase test coverage - Implemented by Kevin Harwood in [#3233](https://github.com/AFNetworking/AFNetworking/pull/3233). #### Fixed - Fixed `AFImageResponseSerializer` serialization macros on watchOS and tvOS - Implemented by Charles Joseph in [#3229](https://github.com/AFNetworking/AFNetworking/pull/3229).
3.0.2
7 years ago
Released on Monday, December 14, 2015. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A3.0.2+is%3Aclosed). #### Fixed - Fixed a crash in `AFURLSessionManager` when resuming download tasks - Implemented by Chongyu Zhu in [#3222](https://github.com/AFNetworking/AFNetworking/pull/3222). - Fixed issue where background button image would not be updated - Implemented by eofs in [#3220](https://github.com/AFNetworking/AFNetworking/pull/3220).
3.0.1
7 years ago
Released on Friday, December 11, 2015. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A3.0.1+is%3Aclosed). #### Added - Added Xcode 7.2 support to Travis - Implemented by Kevin Harwood in [#3216](https://github.com/AFNetworking/AFNetworking/pull/3216). #### Fixed - Fixed race condition with ImageView/Button image downloading when starting/cancelling/starting the same request - Implemented by Kevin Harwood in [#3215](https://github.com/AFNetworking/AFNetworking/pull/3215).
iOS macOS watchOS tvOS
danielgindi/Charts v4.1.0
Beautiful charts for iOS/tvOS/OSX! The Apple side of the crossplatform MPAndroidChart.
⭐️ 27,011
🕓 1 year ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
5.0.0
15 weeks ago
# A New Name! `Charts` is now called `DGCharts` to prevent conflicts with Apple's SwiftUI Charts. To fix your projects simply replace `import Charts` with `import DGCharts` ## What's Changed * Fix yOffset documentation typo by @erkanyildiz in https://github.com/danielgindi/Charts/pull/4898 * The use of special character in folder name don't allow unzip correct… by @rquesada in https://github.com/danielgindi/Charts/pull/4661 * Unnecessary space Removal and Semicolons are removed by @guptamohit1907 in https://github.com/danielgindi/Charts/pull/5016 * Change library name from Charts to DGCharts by @pmairoldi in https://github.com/danielgindi/Charts/pull/5027 * Adding a tutorial link to README.md by @stepanovgena in https://github.com/danielgindi/Charts/pull/4971 * fixed no used warning by @eren-celik in https://github.com/danielgindi/Charts/pull/4841 * Turn on the BUILD_LIBRARY_FOR_DISTRIBUTION flag by @matopeto in https://github.com/danielgindi/Charts/pull/4912 * bump min version to 13 for ios project by @waterskier2007 in https://github.com/danielgindi/Charts/pull/5062 * Fix Node 12 deprecation warning by @FelixHerrmann in https://github.com/danielgindi/Charts/pull/5043 * Merge from master by @pmairoldi in https://github.com/danielgindi/Charts/pull/5067 * Fix Xcode 14.3 import warnings by @FelixHerrmann in https://github.com/danielgindi/Charts/pull/5041 * remove swift-algorithms package in favor of manully importing needed … by @pmairoldi in https://github.com/danielgindi/Charts/pull/5069 * update ci by @pmairoldi in https://github.com/danielgindi/Charts/pull/5070 * [WIP] Release/5.0.0 by @pmairoldi in https://github.com/danielgindi/Charts/pull/5028 ## New Contributors * @erkanyildiz made their first contribution in https://github.com/danielgindi/Charts/pull/4898 * @rquesada made their first contribution in https://github.com/danielgindi/Charts/pull/4661 * @guptamohit1907 made their first contribution in https://github.com/danielgindi/Charts/pull/5016 * @stepanovgena made their first contribution in https://github.com/danielgindi/Charts/pull/4971 * @eren-celik made their first contribution in https://github.com/danielgindi/Charts/pull/4841 * @matopeto made their first contribution in https://github.com/danielgindi/Charts/pull/4912 * @waterskier2007 made their first contribution in https://github.com/danielgindi/Charts/pull/5062 **Full Changelog**: https://github.com/danielgindi/Charts/compare/v4.1.0...5.0.0
v4.1.0
1 year ago
## What's Changed * Update README.md by @jeremyteh in https://github.com/danielgindi/Charts/pull/4886 * Fix navigation bar transparent issue by @wlixcc in https://github.com/danielgindi/Charts/pull/4875 * Update ChartDataSet.swift by @batikansosun in https://github.com/danielgindi/Charts/pull/4861 * Fixes for Swift 5.7 compiler by @lukeredpath in https://github.com/danielgindi/Charts/pull/4823 * Add double mark for compiler check related with issue #4835 by @eliakorkmaz in https://github.com/danielgindi/Charts/pull/4836 * Fix chart only drawing first entry by @FelixHerrmann in https://github.com/danielgindi/Charts/pull/4829 ## New Contributors * @jeremyteh made their first contribution in https://github.com/danielgindi/Charts/pull/4886 * @wlixcc made their first contribution in https://github.com/danielgindi/Charts/pull/4875 * @batikansosun made their first contribution in https://github.com/danielgindi/Charts/pull/4861 * @lukeredpath made their first contribution in https://github.com/danielgindi/Charts/pull/4823 * @eliakorkmaz made their first contribution in https://github.com/danielgindi/Charts/pull/4836 * @FelixHerrmann made their first contribution in https://github.com/danielgindi/Charts/pull/4829 **Full Changelog**: https://github.com/danielgindi/Charts/compare/v4.0.3...v4.1.0
v4.0.3
1 year ago
## What's Changed * Remove Cocoadocs reference from README by @rph8 in https://github.com/danielgindi/Charts/pull/4812 * Highlighter fix by @kcome in https://github.com/danielgindi/Charts/pull/4721 * Added tutorial links by @phuanggh in https://github.com/danielgindi/Charts/pull/4669 * Update ChartData.swift by @truongtho1603 in https://github.com/danielgindi/Charts/pull/4822 * Properties on axis renderers to Objc (Fixes #4800) by @SLambrakis in https://github.com/danielgindi/Charts/pull/4801 ## New Contributors * @rph8 made their first contribution in https://github.com/danielgindi/Charts/pull/4812 * @kcome made their first contribution in https://github.com/danielgindi/Charts/pull/4721 * @phuanggh made their first contribution in https://github.com/danielgindi/Charts/pull/4669 * @truongtho1603 made their first contribution in https://github.com/danielgindi/Charts/pull/4822 * @SLambrakis made their first contribution in https://github.com/danielgindi/Charts/pull/4801 **Full Changelog**: https://github.com/danielgindi/Charts/compare/v4.0.2...v4.0.3
v4.0.2 Release
1 year ago
- Fixes build issues by replacing `class` protocol conformance to `AnyObject` - Update `swift-algorithms` to 1.0 - Add support for cocoapods for 4.0 - Bump lowest supported versions to iOS 10, macOS 10.12, tvOS 10
v4.0.1 Release
2 years ago
## v4.0.1 Release Thanks @jjatie, 4.0.1 release brings: Support Swift Package Manager and switch to another Snapshot test framework. Use Github Actions instead of Travis CI to run faster and work around Carthage issues against Xcode12. Snapshot UT now supports Apple Silicon. Adopt Swift-Algorithm crafted by Apple and the community. Full [changelog](https://github.com/danielgindi/Charts/blob/master/CHANGELOG.md) ------------- We have merged our long waited 4.0 branch into master. It adopts latest Swift trends and benefits and more flexbile and More swift! This is a huge release as a lot of APIs have changed and adopted new protocols. So please expect it will break your code especially about the collection protocols. We will add a few Pull requests in the near future such as https://github.com/danielgindi/Charts/pull/4411. The pre-release could last a little bit longer since we don't want to push people to update. But we do encourage people to try it out and give us feed back.
Xcode 12 support
3 years ago
Xcode 12 support
v3.5.0 Release
3 years ago
### Build on Xcode 11.4 and latest Swift (pod) Change log:https://github.com/danielgindi/Charts/blob/master/CHANGELOG.md **Merged pull requests:** [Full github commit log](https://github.com/danielgindi/Charts/compare/v3.4.0...v3.5.0) - Fix warnings on current code base [\#4321](https://github.com/danielgindi/Charts/pull/4321) ([liuxuan30](https://github.com/liuxuan30)) - Bugfix/legend offset double [\#4277](https://github.com/danielgindi/Charts/pull/4277) ([danielgindi](https://github.com/danielgindi)) - Fix for \#4274 string comparison issue in ChartData::getDataSetByLabel [\#4275](https://github.com/danielgindi/Charts/pull/4275) ([PeterKaminski09](https://github.com/PeterKaminski09)) - Restored correct velocity sampler [\#4273](https://github.com/danielgindi/Charts/pull/4273) ([danielgindi](https://github.com/danielgindi)) - Bugfix/pie highlight [\#4272](https://github.com/danielgindi/Charts/pull/4272) ([danielgindi](https://github.com/danielgindi)) - Call chartViewDidEndPanning on when \*panning\* is ended [\#4271](https://github.com/danielgindi/Charts/pull/4271) ([danielgindi](https://github.com/danielgindi)) - labelXOffset = 10 is default for radar chart only [\#4270](https://github.com/danielgindi/Charts/pull/4270) ([danielgindi](https://github.com/danielgindi)) - Use faster check for line whether it's inside drawing rect [\#4269](https://github.com/danielgindi/Charts/pull/4269) ([danielgindi](https://github.com/danielgindi)) - Refactor/cleanup [\#4268](https://github.com/danielgindi/Charts/pull/4268) ([danielgindi](https://github.com/danielgindi)) - address \#4033 draw half pie chart more accurate [\#4266](https://github.com/danielgindi/Charts/pull/4266) ([liuxuan30](https://github.com/liuxuan30)) - Update README.md, added link to tutorial about Radar Charts. [\#4258](https://github.com/danielgindi/Charts/pull/4258) ([DavidPiper94](https://github.com/DavidPiper94)) - Changes to fix Catalyst compatibility [\#4254](https://github.com/danielgindi/Charts/pull/4254) ([CAPIStkidd](https://github.com/CAPIStkidd)) - Platform separation [\#4178](https://github.com/danielgindi/Charts/pull/4178) ([jjatie](https://github.com/jjatie)) - introduce gracefully degrading abstractions for dark mode for ios and… [\#4171](https://github.com/danielgindi/Charts/pull/4171) ([motocodeltd](https://github.com/motocodeltd)) - Performed recommended localization and internationalization changes. [\#4162](https://github.com/danielgindi/Charts/pull/4162) ([coltonlemmon](https://github.com/coltonlemmon)) - Use interpolation instead of '+' concatenation for problematic expression [\#4123](https://github.com/danielgindi/Charts/pull/4123) ([Jumhyn](https://github.com/Jumhyn)) - Allowing overriding for YAxisRenderer.drawYLabels [\#4089](https://github.com/danielgindi/Charts/pull/4089) ([muclemente](https://github.com/muclemente)) - move isDrawCirclesEnabled check further up in code to avoid creating … [\#4050](https://github.com/danielgindi/Charts/pull/4050) ([xymtek](https://github.com/xymtek))
3.4.0 Release
3 years ago
### Support Xcode 11 and new Swift 5 ### Bug Fix #4029: Index out of bounds exception in v3.2 in createAccessibleElement #4094: Horizontal Bezier Line Graph Not Drawing Through All Points #4093: Line chart x axis animation is broken #4099: Line renderer did not render lines if their coordinates fell outside of the viewport full change log:https://github.com/danielgindi/Charts/blob/master/CHANGELOG.md pod updated
3.3.0 Release
4 years ago
**This will be a breaking update due to #3847 that we changed dataSet initializers API interface and fixed Xcode warnings for previous release.** ***pod has been updated again to 3.3.0 tag, it's previously using 3.3*** ### Now supports Xcode 10.2 and Swift 5.0 #### Highlights of fixed issues and merged requests: - Renamed `values` to `entries` to reflect the property's type [\#3847](https://github.com/danielgindi/Charts/pull/3847) ([jjatie](https://github.com/jjatie)) - Fix horizontal bar chart not drawing values and add unit tests [\#3906](https://github.com/danielgindi/Charts/pull/3906) ([liuxuan30](https://github.com/liuxuan30)) - fix \#3860. maxHeight didn't count the last label [\#3900](https://github.com/danielgindi/Charts/pull/3900) ([liuxuan30](https://github.com/liuxuan30)) - Migrating to built-in algorithms [\#3892](https://github.com/danielgindi/Charts/pull/3892) ([jjatie](https://github.com/jjatie)) - Use a stock iterator instead of a custom one. [\#3891](https://github.com/danielgindi/Charts/pull/3891) ([phughes](https://github.com/phughes)) - Removed unnecessary \#if statements and unified style to align with Xc… [\#3884](https://github.com/danielgindi/Charts/pull/3884) ([jjatie](https://github.com/jjatie)) - Velocity samples calculation [\#3883](https://github.com/danielgindi/Charts/pull/3883) ([jjatie](https://github.com/jjatie)) - Minor updates for Swift 5 [\#3874](https://github.com/danielgindi/Charts/pull/3874) ([jjatie](https://github.com/jjatie)) - Replace AnyObject with Any [\#3864](https://github.com/danielgindi/Charts/pull/3864) ([jjatie](https://github.com/jjatie)) - Data as any [\#3863](https://github.com/danielgindi/Charts/pull/3863) ([jjatie](https://github.com/jjatie)) - Reassess convenience initializers [\#3862](https://github.com/danielgindi/Charts/pull/3862) ([jjatie](https://github.com/jjatie)) - HorizontalBarChar value label offset calculation [\#3854](https://github.com/danielgindi/Charts/pull/3854) ([chaaarly](https://github.com/chaaarly)) - Create `chartViewDidEndAnimate` in ChartViewDelegate [\#3852](https://github.com/danielgindi/Charts/pull/3852) ([Lcsmarcal](https://github.com/Lcsmarcal)) - Align `ChartLimit.LabelPosition` naming with `UIRectCorner` [\#3846](https://github.com/danielgindi/Charts/pull/3846) ([jjatie](https://github.com/jjatie)) #### Full change log https://github.com/danielgindi/Charts/blob/master/CHANGELOG.md
3.2.2 Release
4 years ago
Highlights: **Implemented enhancements:** - Multiple colors for valueline \(Fixes \#3480\) [\#3709](https://github.com/danielgindi/Charts/pull/3709) ([AlexeiGitH](https://github.com/AlexeiGitH)) - use `useValueColorForLine` to enable the same colors - Add Collection conformances to ChartDataSet types [\#3815](https://github.com/danielgindi/Charts/pull/3815) ([jjatie](https://github.com/jjatie)) - improvements in barRect height calculation [\#3650](https://github.com/danielgindi/Charts/pull/3650) ([potato04](https://github.com/potato04)) **Fixed bugs:** - CombinedChartView's candleData don't display in v3.2.0 [\#3662](https://github.com/danielgindi/Charts/issues/3662) - Incorrect behavior for AxisBase.axisMaxLabels [\#3656](https://github.com/danielgindi/Charts/issues/3656) - Horizontal Bar Chart legend issue [\#3301](https://github.com/danielgindi/Charts/issues/3301) - Fixes sharp edges on the line chart [\#3764](https://github.com/danielgindi/Charts/pull/3764) ([stokatyan](https://github.com/stokatyan)) - Fix wrong assignment to axisMaxLabels property [\#3721](https://github.com/danielgindi/Charts/pull/3721) ([ggirotto](https://github.com/ggirotto)) - Fix legend offset bug for horizontal bar chart \(Fixes \#3301\) [\#3736](https://github.com/danielgindi/Charts/pull/3736) ([SvenMuc](https://github.com/SvenMuc)) - Add missing properties to copy\(with:\) methods [\#3715](https://github.com/danielgindi/Charts/pull/3715) ([dstranz](https://github.com/dstranz)) - Fix applying lineCap value for line chart data sets \(Fixes \#3739\) [\#3740](https://github.com/danielgindi/Charts/pull/3740) ([anton-filimonov](https://github.com/anton-filimonov)) - Fix memory leak after rendering [\#3680](https://github.com/danielgindi/Charts/pull/3680) ([YusukeOba](https://github.com/YusukeOba)) - Fix condition that is checked before `chartTranslated` delegate method call [\#3804](https://github.com/danielgindi/Charts/pull/3804) ([anton-filimonov](https://github.com/anton-filimonov)) **Other merged pull requests:** - fix \#3719 [\#3778](https://github.com/danielgindi/Charts/pull/3778) ([liuxuan30](https://github.com/liuxuan30)) - Turned gradient components and locations into constants [\#3775](https://github.com/danielgindi/Charts/pull/3775) ([jjatie](https://github.com/jjatie)) - add chartScaled\(\) call after double tap in BarLineChartViewBase [\#3770](https://github.com/danielgindi/Charts/pull/3770) ([artemiusmk](https://github.com/artemiusmk)) - fix issue \#3662 [\#3664](https://github.com/danielgindi/Charts/pull/3664) ([Michael-Du](https://github.com/Michael-Du)) - Make NSUIAccessibilityElement initializer public. [\#3654](https://github.com/danielgindi/Charts/pull/3654) ([417-72KI](https://github.com/417-72KI)) - Update document to latest format [\#3621](https://github.com/danielgindi/Charts/pull/3621) ([kemchenj](https://github.com/kemchenj)) - Feature - ChartView Pan Ended Delegate Call [\#3612](https://github.com/danielgindi/Charts/pull/3612) ([AntonTheDev](https://github.com/AntonTheDev)) - Axis Renderers Cleanup [\#3164](https://github.com/danielgindi/Charts/pull/3164) ([jjatie](https://github.com/jjatie)) Full changelog: https://github.com/danielgindi/Charts/blob/master/CHANGELOG.md
iOS macOS tvOS
SDWebImage/SDWebImage 5.18.2
Asynchronous image downloader with cache support as a UIImageView category
⭐️ 24,683
🕓 4 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
5.18.2 - 5.18 Fix
4 days ago
See [all tickets marked for the 5.18.2 release](https://github.com/SDWebImage/SDWebImage/milestone/121) ### Fixes - Fix the SDDisplayLink on watchOS does not behave like other platform #3607
5.18.1 - Privacy Manifest
1 week ago
See [all tickets marked for the 5.18.1 release](https://github.com/SDWebImage/SDWebImage/milestone/120) ### Project - Added the visionOS support for "Build XCFramework" script target #3598 - Added xcprivacy to framework target and SPM #3600 ### Fixes - Fix the JFIF image orientation bug (which does not use EXIF but JFIF metadata) #3597 ### Warnings - Fix one warning because local variable shadows the variable outside of block #3599
5.18.0 - VisionOS and more
3 weeks ago
See [all tickets marked for the 5.18.0 release](https://github.com/SDWebImage/SDWebImage/milestone/119) ### VisionOS - Support to build for visionOS (no package manager support) #3556 - - Note this does not include CocoaPods/SwiftPM support. You need Xcode 15+ Beta to open SDWebImage project and build by yourself ### Features #### UI Category - Added SDWebImageAvoidAutoCancelImage to avoid cancel loading image requests for the same operation key #3592 @mTz0206 - Add better support for stateful view (UIButton) for image URL/progres s state management #3576 #### Downloader - Fix redundant requests for the same url during decoding time #3572 @Mervin1024 #### Decoder - Expose the data and format when SDAnimatedImageRep created with APNG/GIF/WebP/HEICS #3573 - Fix the CGImageCreateScaled to support 16/32 bit depth CGImage (RGB161616) and always preserve pixel format info #3575 ### Fixes - Add extra check for empty data during URLSession data callback #3587
5.17.0 - Reduce RAM with Force Decode
10 weeks ago
See [all tickets marked for the 5.17.0 release](https://github.com/SDWebImage/SDWebImage/milestone/118) ### Performance - Refactory the logic to handle force decode logic to avoid CA copy frame buffer, introduce SDImageForceDecodePolicy detailed control #3559 #3417 - - This fix the issue that non-ImageIO coder (means, WebPCoder) will cause CA to copy bitmap buffers and increase memory usage. - - You can still custom the behavior using the new `SDImageForceDecodePolicy`, defaults to automatic. - For coder plugin who want to opt-in to avoid `CA::copy_image`, use the new `preferredPixelFormat:` and do byte alignment and colorspace convert. ### Fixes - Fix macOS bug that SDImageCoderDecodeScaleDownLimitBytes still use the AnimatedImageRep and beyond the byte limit #3561 - Change macOS `sd_colorAtPoint/sd_colorsWithRect` which may loss colorspace information. Now it correctly convert to sRGB colorspace always. - Fix the CGImageCreateScaled to support 16/32 bit depth CGImage (RGB161616) and always preserve pixel format info #3575
5.16.0 - Limit Bytes && Frame Pool
16 weeks ago
See [all tickets marked for the 5.16.0 release](https://github.com/SDWebImage/SDWebImage/milestone/116) ### Features #### Animated Image - Performance: Introduce frame pool for SDAnimatedImage playback. Solve when multiple image view references the same URL image cause un-wanted decode which waste RAM/CPU #3524 - - Note this currently does not expose the frame pool API. Fire issue if you're facing issues about this change. #### Decoder - Introduce the automatically calculation of thumbnail (include animated/static image) using SDImageCoderDecodeScaleDownLimitBytes #3537 - - This calculation of the UIKit-based animated image frame count as well (only `UIAnimatedImage`, not `SDAnimatedImage`, because `SDAnimatedImage` manage frames dynamically). Fire issue if you're facing issues about this change. - - The `.scaleDownLargeImages` implementation has switched to use this instead of `.thumbnailPixelSize` (5.5.0 - 5.16.0) - - Note this introduce new API and need Coder Plugin update (like WebP/AVIF) ### Documentations - Update some comments to allows SwiftDocC generate better page #3547
5.15.8 - Fix macOS Crash
19 weeks ago
See [all tickets marked for the 5.15.8 release](https://github.com/SDWebImage/SDWebImage/milestone/117) ### Fixes - Try to fix macOS SDDisplayLink crash because of accessing the deallocated objc pointer during CVDisplayLinkRef callback #3531 ### Changes - Update the implementation SDScaledImageForScaleFactor to support SDAnimatedImage #3535
5.15.7 - Fix Crash
20 weeks ago
See [all tickets marked for the 5.15.7 release](https://github.com/SDWebImage/SDWebImage/milestone/115) ### Fixes - Try to solve the strange dispatch group crash in SDSafeExecute by removing inline #3526 ### Performance - Opt when multiple same URLs queried in parallel, which may cause duplicated decode and store disk operation #3523
5.15.6 - Fix watchOS
22 weeks ago
See [all tickets marked for the 5.15.6 release](https://github.com/SDWebImage/SDWebImage/milestone/114) ### Performance - Small improvements to SDDiskCache write perf #3517 - - Note this slightly change the behavior when you manual grab the `SDImageCache.diskCachePath` and remove it without creating new directory, next disk cache write operation will fail, before the restart of App. ### Fixes - Revert the SDDisplayLink for watchOS, fix the animated image duration bug #3520 #3511 ### Warnings - Fix the warning of C function with no param #3519
5.15.5 - Fix
29 weeks ago
See [all tickets marked for the 5.15.5 release](https://github.com/SDWebImage/SDWebImage/milestone/113) ### Fixes - Protect the disk operation when input key is nil and cause exception #3505 #3504 - Fix the blur effect logic by avoid color convert and always use three box-blur methodology #3506
5.15.4 - Hotfix
30 weeks ago
See [all tickets marked for the 5.15.4 release](https://github.com/SDWebImage/SDWebImage/milestone/112) ### Fixes - Fix the crash because of wrong usage of NS_NOESCAPE for SDCallbackQueue async block, should matching DispatchQueue #3500 - - This crash only occurs in specified version of clang compiler. But still recommended to update
iOS macOS watchOS tvOS
airbnb/lottie-ios 4.3.1
An iOS library to natively render After Effects vector animations
⭐️ 24,472
🕓 4 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
4.3.1
5 days ago
**Lottie 4.3.0** adds many new features, including: - Official support for SwiftUI! - A public Core Animation `CALayer` subclass - Support for reduced motion - Support for drop shadow layer effects - Support for visionOS You can learn more about Lottie 4.3.0 in this announcement: **[Lottie 4.3.0 now available, with official support for SwiftUI #2189](https://github.com/airbnb/lottie-ios/discussions/2189)** Lottie 4.3.1 fixes a small regression introduced by 4.3.0: https://github.com/airbnb/lottie-ios/issues/2193 ## New Features * Add SwiftUI `LottieView`, which wraps UIKit `LottieAnimationView` * Add SwiftUI `LottieSwitch`, which wraps UIKit `AnimatedSwitch` (https://github.com/airbnb/lottie-ios/pull/2138) * Add SwiftUI `LottieButton`, which wraps `AnimatedButton` (https://github.com/airbnb/lottie-ios/pull/2139) * `AnimatedSwitch` and `AnimatedButton` now support macOS (https://github.com/airbnb/lottie-ios/pull/2138, https://github.com/airbnb/lottie-ios/pull/2139) * Add `LottieAnimationLayer`, a Core Animation `CALayer` subclass for playing Lottie animations (https://github.com/airbnb/lottie-ios/pull/2073) * Add support for rendering drop shadow layer effects (https://github.com/airbnb/lottie-ios/pull/2142) * Add API for playing multiple markers sequentially (https://github.com/airbnb/lottie-ios/pull/2084) * Play "reduced motion" marker if `UIAccessibility.isReduceMotionEnabled` is true (https://github.com/airbnb/lottie-ios/pull/2110) * Update text provider API to use full `AnimationKeypath` values (https://github.com/airbnb/lottie-ios/pull/2183) * Add support for visionOS (https://github.com/airbnb/lottie-ios/pull/2152) * Drop support for Swift 5.5 (https://github.com/airbnb/lottie-ios/pull/2152) * Add contents gravity configuration to `AnimationImageProvider` (https://github.com/airbnb/lottie-ios/pull/2177) * Add support for customizing stroke width values using `FloatValueProvider` (https://github.com/airbnb/lottie-ios/pull/2179) * Adopt `Sendable` to support using Lottie with strict concurrency enabled (https://github.com/airbnb/lottie-ios/pull/2126) * Add `LottiePlaybackMode` to support declarative playback configuration (https://github.com/airbnb/lottie-ios/pull/2128) * Add option make main thread rendering engine force display update on every frame (https://github.com/airbnb/lottie-ios/pull/2168) * Add a option to prevent caching images from `AnimationImageProvider` (https://github.com/airbnb/lottie-ios/pull/2171) * Add support for customizing gradient values using `GradientValueProvider` (https://github.com/airbnb/lottie-ios/pull/2182) * Added additional support for multiple animations in `DotLottieFile` (https://github.com/airbnb/lottie-ios/pull/2074) * Add helper method to initialize `DotLottieFile` with data (https://github.com/airbnb/lottie-ios/pull/2090) ## Bug fixes * Remove `.../ZipFoundation/README.md` from targets and `*.md*` files from podspec (https://github.com/airbnb/lottie-ios/pull/2057)* * Fix issue where layers with negative X scale values could be pixelated (https://github.com/airbnb/lottie-ios/pull/2067) * Fix warnings when building with Swift 5.9 (https://github.com/airbnb/lottie-ios/pull/2072) * Restructure `ValueProviderStore` to not accumulate multiple values for the same key (https://github.com/airbnb/lottie-ios/pull/2082) * Disable bitcode when building XCFramework (https://github.com/airbnb/lottie-ios/pull/2121) * Fix unhandled file warning when building with SPM ([https://github.com/airbnb/lottie-ios/pull/213](https://github.com/airbnb/lottie-ios/pull/2132)) * Fix support for customizing color of `SolidLayer` using `ColorValueProvider` (https://github.com/airbnb/lottie-ios/pull/2154) * Fix issue where shape items could be unexpectedly ignored (https://github.com/airbnb/lottie-ios/pull/2156) * Fix issue where skew keyframes would unexpectedly not animate (https://github.com/airbnb/lottie-ios/pull/2157) * Fix issue where value providers could be ignored when falling back to main thread rendering engine (https://github.com/airbnb/lottie-ios/pull/2164) Thanks to everyone who contributed to this release!
4.3.0
1 week ago
**Lottie 4.3.0** adds many new features, including: - Official support for SwiftUI! - A public Core Animation `CALayer` subclass - Support for reduced motion - Support for drop shadow layer effects - Support for visionOS You can learn more about Lottie 4.3.0 in this announcement: **[Lottie 4.3.0 now available, with official support for SwiftUI #2189](https://github.com/airbnb/lottie-ios/discussions/2189)** ## New Features * Add SwiftUI `LottieView`, which wraps UIKit `LottieAnimationView` * Add SwiftUI `LottieSwitch`, which wraps UIKit `AnimatedSwitch` (https://github.com/airbnb/lottie-ios/pull/2138) * Add SwiftUI `LottieButton`, which wraps `AnimatedButton` (https://github.com/airbnb/lottie-ios/pull/2139) * `AnimatedSwitch` and `AnimatedButton` now support macOS (https://github.com/airbnb/lottie-ios/pull/2138, https://github.com/airbnb/lottie-ios/pull/2139) * Add `LottieAnimationLayer`, a Core Animation `CALayer` subclass for playing Lottie animations (https://github.com/airbnb/lottie-ios/pull/2073) * Add support for rendering drop shadow layer effects (https://github.com/airbnb/lottie-ios/pull/2142) * Add API for playing multiple markers sequentially (https://github.com/airbnb/lottie-ios/pull/2084) * Play "reduced motion" marker if `UIAccessibility.isReduceMotionEnabled` is true (https://github.com/airbnb/lottie-ios/pull/2110) * Update text provider API to use full `AnimationKeypath` values (https://github.com/airbnb/lottie-ios/pull/2183) * Add support for visionOS (https://github.com/airbnb/lottie-ios/pull/2152) * Drop support for Swift 5.5 (https://github.com/airbnb/lottie-ios/pull/2152) * Add contents gravity configuration to `AnimationImageProvider` (https://github.com/airbnb/lottie-ios/pull/2177) * Add support for customizing stroke width values using `FloatValueProvider` (https://github.com/airbnb/lottie-ios/pull/2179) * Adopt `Sendable` to support using Lottie with strict concurrency enabled (https://github.com/airbnb/lottie-ios/pull/2126) * Add `LottiePlaybackMode` to support declarative playback configuration (https://github.com/airbnb/lottie-ios/pull/2128) * Add option make main thread rendering engine force display update on every frame (https://github.com/airbnb/lottie-ios/pull/2168) * Add a option to prevent caching images from `AnimationImageProvider` (https://github.com/airbnb/lottie-ios/pull/2171) * Add support for customizing gradient values using `GradientValueProvider` (https://github.com/airbnb/lottie-ios/pull/2182) * Added additional support for multiple animations in `DotLottieFile` (https://github.com/airbnb/lottie-ios/pull/2074) * Add helper method to initialize `DotLottieFile` with data (https://github.com/airbnb/lottie-ios/pull/2090) ## Bug fixes * Remove `.../ZipFoundation/README.md` from targets and `*.md*` files from podspec (https://github.com/airbnb/lottie-ios/pull/2057)* * Fix issue where layers with negative X scale values could be pixelated (https://github.com/airbnb/lottie-ios/pull/2067) * Fix warnings when building with Swift 5.9 (https://github.com/airbnb/lottie-ios/pull/2072) * Restructure `ValueProviderStore` to not accumulate multiple values for the same key (https://github.com/airbnb/lottie-ios/pull/2082) * Disable bitcode when building XCFramework (https://github.com/airbnb/lottie-ios/pull/2121) * Fix unhandled file warning when building with SPM ([https://github.com/airbnb/lottie-ios/pull/213](https://github.com/airbnb/lottie-ios/pull/2132)) * Fix support for customizing color of `SolidLayer` using `ColorValueProvider` (https://github.com/airbnb/lottie-ios/pull/2154) * Fix issue where shape items could be unexpectedly ignored (https://github.com/airbnb/lottie-ios/pull/2156) * Fix issue where skew keyframes would unexpectedly not animate (https://github.com/airbnb/lottie-ios/pull/2157) * Fix issue where value providers could be ignored when falling back to main thread rendering engine (https://github.com/airbnb/lottie-ios/pull/2164) Thanks to everyone who contributed to this release!
4.2.0
21 weeks ago
> **Note** > Starting in Lottie 4.0, the Core Animation rendering engine is now enabled by default. > Learn more about this change: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog ## What's Changed * Added support for Opacity, Position, Scale, and Rotation value providers to Core Animation rendering engine (https://github.com/airbnb/lottie-ios/pull/2047) * Updated minimum macOS version to 10.11 (https://github.com/airbnb/lottie-ios/pull/2050) * Fixed issue where rounded corners algorithm would return incorrect path for shapes without any rounded corners (#1964) * Improved dotLottie error handling (https://github.com/airbnb/lottie-ios/pull/1969) * Added support for loading DotLottieFile by name and filename synchronously (https://github.com/airbnb/lottie-ios/pull/1968) * Updated ZIPFoundation to 0.9.16 to resolve `dataCorrupted` errors (https://github.com/airbnb/lottie-ios/pull/1978) * Fixed issue where `**` wildcard incorrectly required matching at least one path component (https://github.com/airbnb/lottie-ios/pull/1988) * Fixed issue where completion handler could be called unexpectedly when setting up animation (https://github.com/airbnb/lottie-ios/pull/1994) * Added `LottieAnimationView.allHierarchyKeypaths()` to get list of animation keypaths at runtime (https://github.com/airbnb/lottie-ios/pull/2004) * Added a warning when playing animation that uses unsupported After Effects expressions (https://github.com/airbnb/lottie-ios/pull/2006) * Added `LottieAnimationView.maskAnimationToBounds` configuration option (https://github.com/airbnb/lottie-ios/pull/2008) * Trim whitespaces and newlines before decoding base 64 string to image (https://github.com/airbnb/lottie-ios/pull/2016) * Added support for configuring `LottieBackgroundBehavior` to Objective-C `CompatibleAnimationView` (https://github.com/airbnb/lottie-ios/pull/2027) * Fixed issue where Trim could be applied to too many shape items (https://github.com/airbnb/lottie-ios/pull/2041) * Set animationLayer to nil when removing oldAnimation (https://github.com/airbnb/lottie-ios/pull/2035) * Fixed issue where Trim strokeStart / strokeEnd could be rendered in incorrect order (https://github.com/airbnb/lottie-ios/pull/2049) * Fixed issue where calling `setValueProvider` would reset animation progress (https://github.com/airbnb/lottie-ios/pull/2052) * Fixed issue where trim offset could be calculated incorrectly (https://github.com/airbnb/lottie-ios/pull/2053) **Full Changelog**: https://github.com/airbnb/lottie-ios/compare/4.1.3...4.2.0
4.1.3
31 weeks ago
> **Note** > Starting in Lottie 4.0, the Core Animation rendering engine is now enabled by default. > Learn more about this change: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog ## What's Changed * Add support for 3D rotations on X and Y axis (https://github.com/airbnb/lottie-ios/pull/1930) * Update color parsing to ignore alpha values for consistency with other platforms (https://github.com/airbnb/lottie-ios/pull/1934) * Allow subclassing `LottieAnimationView` (https://github.com/airbnb/lottie-ios/pull/1937) * Expose `AnimationTextProvider` in objc wrapper (https://github.com/airbnb/lottie-ios/pull/1944) * Add dispatch queue parameter to dotLottie loading methods (https://github.com/airbnb/lottie-ios/pull/1956) * Fix macOS build issues for apps using `Lottie.xcframework` / `lottie-spm` (https://github.com/airbnb/lottie-ios/pull/1960)
4.1.2
35 weeks ago
> **Note** > Starting in Lottie 4.0, the Core Animation rendering engine is now enabled by default. > Learn more about this change: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog 4.1.2 fixes an issue where the [lottie-spm](https://github.com/airbnb/lottie-spm) package would fail to build in some environments: https://github.com/airbnb/lottie-spm/pull/5#issuecomment-1398991609, https://github.com/airbnb/lottie-ios/issues/1926#issuecomment-1398866563 ## 4.1.0 release notes We've added a new way to integrate Lottie into your project using Swift Package Manager. We now provide a separate [lottie-spm](https://github.com/airbnb/lottie-spm) repo that is much smaller than the main lottie-ios repo (~500kb instead of ~300mb). Learn more about this change [here](https://github.com/airbnb/lottie-ios#swift-package-manager). ### Improvements and bug fixes * Made DotLottieAnimation attributes optional to simplify Manifest file (https://github.com/airbnb/lottie-ios/pull/1844) * Fix heap buffer overflow in CGColor+RGB extensions (https://github.com/airbnb/lottie-ios/pull/1858) * Add support for display P3 color space (https://github.com/airbnb/lottie-ios/pull/1857) * Add some missing utility to CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1881) * Fix issue where ShapeTransform could incorrectly affect stroke width (https://github.com/airbnb/lottie-ios/pull/1872) * Fix issue where empty trim item would take precedence over non-empty trim item (https://github.com/airbnb/lottie-ios/pull/1875) * Fix issue where some top-level shape items would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1874) * Fix frame setting issue for CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1878) * Gradient Fill Layer: Support strokes (https://github.com/airbnb/lottie-ios/pull/1818) * Change veryLargeRect size to fix issue with masks (https://github.com/airbnb/lottie-ios/pull/1884) * Fix issue where Fill following other Fill would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1888) * Fix issue where negative `scale.x` values didn't render correctly on iOS 14 (https://github.com/airbnb/lottie-ios/pull/1894) * Fix issue where `LottieAnimationView.currentFrame` would be incorrect after playing animation with `LottieLoopMode.playOnce` (https://github.com/airbnb/lottie-ios/pull/1897) * Fix issue where shape items could be applied in incorrect order (https://github.com/airbnb/lottie-ios/pull/1899) * Fix issue where stroke and fill could be rendered in incorrect order (https://github.com/airbnb/lottie-ios/pull/1903) * Fix issue where `play(fromProgress: 1, toProgress: 0)` animation would not actually play (https://github.com/airbnb/lottie-ios/pull/1908) * Add support for skew animations (https://github.com/airbnb/lottie-ios/pull/1917)
4.1.1
35 weeks ago
> **Note** > Starting in Lottie 4.0, the Core Animation rendering engine is now enabled by default. > Learn more about this change: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog 4.1.1 fixes an issue where the [lottie-spm](https://github.com/airbnb/lottie-spm) package could not be embedded into iOS app builds (#1925), which could cause apps to crash (#1926). ## 4.1.0 release notes We've added a new way to integrate Lottie into your project using Swift Package Manager. We now provide a separate [lottie-spm](https://github.com/airbnb/lottie-spm) repo that is much smaller than the main lottie-ios repo (~500kb instead of ~300mb). Learn more about this change [here](https://github.com/airbnb/lottie-ios#swift-package-manager). ### Improvements and bug fixes * Made DotLottieAnimation attributes optional to simplify Manifest file (https://github.com/airbnb/lottie-ios/pull/1844) * Fix heap buffer overflow in CGColor+RGB extensions (https://github.com/airbnb/lottie-ios/pull/1858) * Add support for display P3 color space (https://github.com/airbnb/lottie-ios/pull/1857) * Add some missing utility to CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1881) * Fix issue where ShapeTransform could incorrectly affect stroke width (https://github.com/airbnb/lottie-ios/pull/1872) * Fix issue where empty trim item would take precedence over non-empty trim item (https://github.com/airbnb/lottie-ios/pull/1875) * Fix issue where some top-level shape items would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1874) * Fix frame setting issue for CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1878) * Gradient Fill Layer: Support strokes (https://github.com/airbnb/lottie-ios/pull/1818) * Change veryLargeRect size to fix issue with masks (https://github.com/airbnb/lottie-ios/pull/1884) * Fix issue where Fill following other Fill would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1888) * Fix issue where negative `scale.x` values didn't render correctly on iOS 14 (https://github.com/airbnb/lottie-ios/pull/1894) * Fix issue where `LottieAnimationView.currentFrame` would be incorrect after playing animation with `LottieLoopMode.playOnce` (https://github.com/airbnb/lottie-ios/pull/1897) * Fix issue where shape items could be applied in incorrect order (https://github.com/airbnb/lottie-ios/pull/1899) * Fix issue where stroke and fill could be rendered in incorrect order (https://github.com/airbnb/lottie-ios/pull/1903) * Fix issue where `play(fromProgress: 1, toProgress: 0)` animation would not actually play (https://github.com/airbnb/lottie-ios/pull/1908) * Add support for skew animations (https://github.com/airbnb/lottie-ios/pull/1917)
4.1.0
35 weeks ago
> **Note** > Starting in Lottie 4.0, the Core Animation rendering engine is now enabled by default. > Learn more about this change: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog We've added a new way to integrate Lottie into your project using Swift Package Manager. We now provide a separate [lottie-spm](https://github.com/airbnb/lottie-spm) repo that is much smaller than the main lottie-ios repo (~500kb instead of ~300mb). Learn more about this change [here](https://github.com/airbnb/lottie-ios#swift-package-manager). ### Improvements and bug fixes * Made DotLottieAnimation attributes optional to simplify Manifest file (https://github.com/airbnb/lottie-ios/pull/1844) * Fix heap buffer overflow in CGColor+RGB extensions (https://github.com/airbnb/lottie-ios/pull/1858) * Add support for display P3 color space (https://github.com/airbnb/lottie-ios/pull/1857) * Add some missing utility to CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1881) * Fix issue where ShapeTransform could incorrectly affect stroke width (https://github.com/airbnb/lottie-ios/pull/1872) * Fix issue where empty trim item would take precedence over non-empty trim item (https://github.com/airbnb/lottie-ios/pull/1875) * Fix issue where some top-level shape items would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1874) * Fix frame setting issue for CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1878) * Gradient Fill Layer: Support strokes (https://github.com/airbnb/lottie-ios/pull/1818) * Change veryLargeRect size to fix issue with masks (https://github.com/airbnb/lottie-ios/pull/1884) * Fix issue where Fill following other Fill would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1888) * Fix issue where negative `scale.x` values didn't render correctly on iOS 14 (https://github.com/airbnb/lottie-ios/pull/1894) * Fix issue where `LottieAnimationView.currentFrame` would be incorrect after playing animation with `LottieLoopMode.playOnce` (https://github.com/airbnb/lottie-ios/pull/1897) * Fix issue where shape items could be applied in incorrect order (https://github.com/airbnb/lottie-ios/pull/1899) * Fix issue where stroke and fill could be rendered in incorrect order (https://github.com/airbnb/lottie-ios/pull/1903) * Fix issue where `play(fromProgress: 1, toProgress: 0)` animation would not actually play (https://github.com/airbnb/lottie-ios/pull/1908) * Add support for skew animations (https://github.com/airbnb/lottie-ios/pull/1917)
4.0.1
41 weeks ago
4.0.1 fixes an issue in 4.0.0 where the install could fail due to issues with Git LFS: #1830, #1834. We now publish `xframework` binaries as a part of our release process: https://github.com/airbnb/lottie-ios/discussions/1807#discussioncomment-4346438 ## Major changes in Lottie 4.0 Learn more about this release: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog * The new Core Animation rendering engine ([first introduced in Lottie 3.4.0](https://github.com/airbnb/lottie-ios/discussions/1627)) is now enabled by default for supported animations. * Specifically, `LottieConfiguration.shared.renderingEngine` now defaults to `.automatic` instead of `.mainThread`. Animations that use features which are not supported by the Core Animation rendering engine will automatically fall back to using the original Main Thread rendering engine. * When using the Core Animation rendering engine, Lottie animations now always animate smoothly regardless of the amount of work being done on the app’s main thread. This **significantly improves animation performance** while also eliminating CPU overhead. * If you encounter any compatibility issues when using `RenderingEngineOption.automatic`, please file an issue with a copy of your animation json. * `DecodingStrategy.dictionaryBased` is now enabled by default * The new dictionary-based decoding implementation is 2x faster than the previous `Codable` decoding implementation * If you encounter any compatibility issues with this new decoding implementation, please file an issue with a copy of your animation json. * Backwards compatibility typealiases for `Animation`, `AnimationView`, `Color`, `Vector1D`, `Vector2D`, and `Vector3D`, which were introduced in [Lottie 3.5.0](https://github.com/airbnb/lottie-ios/releases), have been removed to resolve conflicts with types in Apple frameworks. These types are now named `LottieAnimation`, `LottieAnimationView`, `LottieColor`, `LottieVector1D`, `LottieVector2D`, and `LottieVector3D`. * The default `LottieBackgroundBehavior` used by `LottieAnimationView` is now `.pauseAndRestore` instead of `pause`. * Lottie for iOS now supports the [dotLottie file format](https://dotlottie.io/). * The library's minimum-supported Swift version is now Swift 5.5. XCFramework checksum: b6d8b0b81975d91965b8bb00cffb0eae4b3d94538b6950a90bc1366afd5d4239
4.0.0
41 weeks ago
Learn more about this release: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog ## Major changes * The new Core Animation rendering engine ([first introduced in Lottie 3.4.0](https://github.com/airbnb/lottie-ios/discussions/1627)) is now enabled by default for supported animations. * Specifically, `LottieConfiguration.shared.renderingEngine` now defaults to `.automatic` instead of `.mainThread`. Animations that use features which are not supported by the Core Animation rendering engine will automatically fall back to using the original Main Thread rendering engine. * When using the Core Animation rendering engine, Lottie animations now always animate smoothly regardless of the amount of work being done on the app’s main thread. This **significantly improves animation performance** while also eliminating CPU overhead. * If you encounter any compatibility issues when using `RenderingEngineOption.automatic`, please file an issue with a copy of your animation json. * `DecodingStrategy.dictionaryBased` is now enabled by default * The new dictionary-based decoding implementation is 2x faster than the previous `Codable` decoding implementation * If you encounter any compatibility issues with this new decoding implementation, please file an issue with a copy of your animation json. * Backwards compatibility typealiases for `Animation`, `AnimationView`, `Color`, `Vector1D`, `Vector2D`, and `Vector3D`, which were introduced in [Lottie 3.5.0](https://github.com/airbnb/lottie-ios/releases), have been removed to resolve conflicts with types in Apple frameworks. These types are now named `LottieAnimation`, `LottieAnimationView`, `LottieColor`, `LottieVector1D`, `LottieVector2D`, and `LottieVector3D`. * The default `LottieBackgroundBehavior` used by `LottieAnimationView` is now `.pauseAndRestore` instead of `pause`. * Lottie for iOS now supports the [dotLottie file format](https://dotlottie.io/). * The library's minimum-supported Swift version is now Swift 5.5. ## Full changelog * Use `RenderingEngineOption.automatic` by default by @calda in https://github.com/airbnb/lottie-ios/pull/1764 * Fix issue where inverted mask layer was clipped incorrectly by @calda in https://github.com/airbnb/lottie-ios/pull/1763 * Bump to 4.0.0, remove backwards compatibility typealiases by @calda in https://github.com/airbnb/lottie-ios/pull/1768 * Update `LottieBackgroundBehavior.default` from `.pause` to `.pauseAndRestore` for Main Thread rendering engine by @calda in https://github.com/airbnb/lottie-ios/pull/1770 * Adds ability to not play the frame of the end marker (#1758) by @lennartstolz in https://github.com/airbnb/lottie-ios/pull/1772 * Change LottieAnimationHelpers default animation cache to LRUAnimationCache.shared (#1773) by @pejato in https://github.com/airbnb/lottie-ios/pull/1778 * Update LottieConfiguration to use DecodingStrategy.dictionaryBased by default by @marcelofabri in https://github.com/airbnb/lottie-ios/pull/1777 * Allow customizing default AnimationCacheProvider by @marcelofabri in https://github.com/airbnb/lottie-ios/pull/1779 * Replace LRUAnimationCache with a thread-safe NSCache-based cache by @marcelofabri in https://github.com/airbnb/lottie-ios/pull/1783 * Update minimum Swift version to 5.5 by @calda in https://github.com/airbnb/lottie-ios/pull/1787 * Adds .lottie file load capability to LottieAnimation by @eharrison in https://github.com/airbnb/lottie-ios/pull/1785 * Add Rounded Corners by @johnny-duo in https://github.com/airbnb/lottie-ios/pull/1795 * Add rounded corner support to Core Animation rendering engine by @calda in https://github.com/airbnb/lottie-ios/pull/1796 * Add support for animating `startPoint` and `endPoint` of radial gradients by @calda in https://github.com/airbnb/lottie-ios/pull/1798 * Update Core Animation rendering engine to use device RGB color space by @calda in https://github.com/airbnb/lottie-ios/pull/1801 * added mask to bounds flag by @BugorBN in https://github.com/airbnb/lottie-ios/pull/1814 * Add completion callbacks to LottieAnimationView DotLottie initializers by @calda in https://github.com/airbnb/lottie-ios/pull/1810
3.5.0
49 weeks ago
> **Note**: Lottie 3.4.0 added a new rendering engine powered by Core Animation. Please try it out and let us know if you encounter any issues! It will be enabled by default in Lottie 4.0, which we plan on releasing later this month. More information is available in this announcement: https://github.com/airbnb/lottie-ios/discussions/1627 ### Lottie 3.5.0 This version renames several public types, to resolve conflicts with types in Apple frameworks (https://github.com/airbnb/lottie-ios/issues/1420): - `Lottie.Animation` has been renamed to `LottieAnimation`, to resolve a conflict with [`SwiftUI.Animation`](https://developer.apple.com/documentation/swiftui/animation) - `Lottie.Color` has been renamed to `LottieColor`, to resolve a conflict with [`SwiftUI.Color`](https://developer.apple.com/documentation/swiftui/color) - `Lottie.Vector3D` has been renamed to `LottieVector3D`, to resolve a conflict with [`Spatial.Vector3D`](https://developer.apple.com/documentation/spatial/vector3d?changes=latest_major) For consistency with these new names, we have also renamed the following public types: - `Lottie.AnimationView` has been renamed to `LottieAnimationView` - `Lottie.Vector1D` has been renamed to `LottieVector1D` - `Lottie.Vector2D` has been renamed to `LottieVector2D`. For backwards compatibility Lottie 3.5.0 includes `typealias`es for the old names, which map to the new names. These `typealias`es are marked as deprecated and include fix-its to update call-sites to the new name. ### Lottie 4.0 We plan on releasing **Lottie 4.0** in the next few weeks. In Lottie 4.0 we will remove the compatibility typealiases (for `Animation`, `AnimationView`, `Color`, etc) , so code using the old names will no longer compile. This will resolve the naming conflicts with SwiftUI types. Consider updating to Lottie 3.5.0 first, applying the fix-its recommended by the deprecation warnings, and then update to Lottie 4.0 once it is released (Lottie 4.0 will no longer include deprecation warnings with fix-its). Thank you for bearing with us through this transition process! Lottie 4.0 will also make the new Core Animation rendering engine ([added in Lottie 3.4.0](https://github.com/airbnb/lottie-ios/discussions/1627)) the default rendering engine option. As mentioned above, please try out the new rendering engine if you haven't yet and let us know if you encounter any issues! We've been hard at work fixing issues reported by the community. ### Known issues If your application has a storyboard that references `AnimationView`, it may crash when using Lottie 3.5.0 (https://github.com/airbnb/lottie-ios/issues/1771). The fix for this issue is to update all references of `AnimationView` to `LottieAnimationView` and update all references of `Animation` to `LottieAnimation`. This should be resolved in Lottie 4.0, where code using the old names will no longer compile.
iOS macOS tvOS
ReactiveX/RxSwift 6.6.0
Reactive Programming in Swift
⭐️ 23,583
🕓 19 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Onyx 🪨
19 weeks ago
## RxSwift 6.6.0 🪨 - New helpful conversions to `Infallible` - Fix an issue with continuation leak for `async/await` bridge - Improve atomicity of `BooleanDisposable` - Crash workaround for `Table/CollectionViewDelegateProxy` - New `Infallible` helpers for `CombineLatest` - More minor fixes and updates - Support catalyst for xcframework distribution
Atlas
1 year ago
## 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: ```swift 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](https://github.com/ReactiveX/RxSwift/blob/main/Documentation/SwiftConcurrency.md) for additional information: https://github.com/ReactiveX/RxSwift/blob/main/Documentation/SwiftConcurrency.md
Ethan.2
2 years ago
Support Xcode 12.5
5.Throwback
2 years ago
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
2 years ago
# 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 to `withUnretained`. This exists for all traits and types: `Observable`, `Driver`, `Signal`, `Infallible`, `Completable`, `Single`, `Maybe` #2290 - `Reactive` now supports structs and value-types again, with the dynamic look-up specifically dealing with `AnyObject`s #2285 - Fix xcframework support for `RxCocoa` (Drag in new **RxCocoaRuntime.xcframework** alongside `RxCocoa`) - Freeze `MaybeEvent` and `CompletableEvent` #2271 #2272 - Fix missing **RxCocoaRuntime.h** header in `RxCocoa` podspec #2281 - Remove invalid **libswiftXCTest.dylib** linking to support Xcode 12.5 - Print URLRequest body `httpBody`, regardless of HTTP Method #2288
Ethan
2 years ago
# RxSwift 6 is here! ### New year, new version, new logo - such an exciting day! 🥳 <p align="center"> <img src="https://github.com/ReactiveX/RxSwift/raw/main/assets/RxSwift_Logo.png" width="25%" alt="RxSwift Logo" /> </p> To get a glimpse of what this new major version packs, check out the following blog post: [What's new in RxSwift 6](https://dev.to/freak4pc/what-s-new-in-rxswift-6-2nog) > **Note**: RxSwift 6 supports Xcode 12 and Swift 5.3 and has a minimum deployment target of iOS 9. - All `ReactiveCompatible` objects (`.rx` namespace) get `Binder`s for all properties for free using `@dynamicMemberLookup`. - New `Infallible` object which is identical to `Observable` with the guarantee of never failing. - Add variadic `drive()` and `emit()` to multiple observers and relays. - New `decode(type:decoder:)` operator for `ObsrvableType`s of `Data`. - `SingleEvent` is now simply `Result<Element, Swift.Error>` and methods changed accordingly (e.g. `subscribe(onSuccess:onFailure:)`). - Add `ReplayRelay`. - Add new `withUnretained(_:)` operator. - Add `distinctUntilChanged(at keyPath:)`. - Add `UIApplication` Reactive extensions . - Rename `catchError(_:)` to `catch(_:)`. - Rename `catchErrorJustReturn(_:)` to `catchAndReturn(_:)`. - Rename `elementAt(_:)` to `element(at:)`. - Rename `retryWhen(_:)` to `retry(when:)`. - Rename `takeUntil(_:)` to `take(until:)` and `takeUntil(behavior:_:)` to `take(until:behavior:)`. - Rename `takeWhile(_:)` to `take(while:)` and `takeWhile(behavior:_:)` to `take(while:behavior:)`. - Rename `take(_:)` duration overload to `take(for:)` (e.g. `take(for: .seconds(3))`). - Rename `skipWhile(_:)` to `skip(while:)`. - Rename `takeUntil(_:)` to `take(until:)`. - Rename `observeOn` and `subscribeOn` to `observe(on:)` and `subscribe(on:)`. - `ignoreElements()` now returns `Observable<Never>`. - Make `SharedSequence` conform to `ObservableConvertibleType`. - Add `onDisposed` to `Maybe`, `Completable` and `Single`. - Unify and optimize swizzling extensions into a single one. - Add `DisposeBag` function builder to allow easy comma-less initialization of a `DisposeBag`. - Advance support of XCFrameworks by enabling `BUILD_LIBRARY_FOR_DISTRIBUTION` and cleaning up. - Move URLSession logging settings to a more appropriate URLSession.rx.shouldLogRequest configurable closure. - Many, many, **many** quality of life bugs and fixes.
2 years ago
# RxSwift 6.0.0 RC2 **This is the second and (probably) final Release Candidate of RxSwift 6.** **The official 6.0.0 should be released in the upcoming weeks and should be mostly identical to this.** > **Note**: RxSwift 6 supports Xcode 12 and Swift 5.3 and has a minimum deployment target of iOS 9. Everything in RC1, plus: - Support for XCFrameworks, with binaries now bundled with each release. - Updated tests for new `Infallible` trait. - Fix an issue building for watchOS. - Move `URLSession` logging settings to a more appropriate `URLSession.rx.shouldLogRequest` configurable closure. - README, CI, and additional house cleaning.
6.0.0 RC1
2 years ago
# RxSwift 6.0.0 RC1 **This is the first Release Candidate of RxSwift 6.** > **Note**: RxSwift 6 supports Xcode 12 and Swift 5.3 and has a minimum deployment target of iOS 9. - All `ReactiveCompatible` objects (`.rx` namespace) get `Binder`s for all properties for free using `@dynamicMemberLookup`. - New `Infallible` object which is identical to `Observable` with the guarantee of never failing. - Add variadic `drive()` and `emit()` to multiple observers and relays. - New `decode(type:decoder:)` operator for `ObsrvableType`s of `Data`. - `SingleEvent` is now simply `Result<Element, Swift.Error>` and methods changed accordingly (e.g. `subscribe(onSuccess:onFailure:)`). - Add `ReplayRelay`. - Add `distinctUntilChanged(at keyPath:)`. - Add `UIApplication` Reactive extensions . - Rename `catchError(_:)` to `catch(_:)`. - Rename `catchErrorJustReturn(_:)` to `catchAndReturn(_:)`. - Rename `elementAt(_:)` to `element(at:)`. - Rename `retryWhen(_:)` to `retry(when:)`. - Rename `takeUntil(_:)` to `take(until:)` and `takeUntil(behavior:_:)` to `take(until:behavior:)`. - Rename `takeWhile(_:)` to `take(while:)` and `takeWhile(behavior:_:)` to `take(while:behavior:)`. - Rename `take(_:)` duration overload to `take(for:)` (e.g. `take(for: .seconds(3))`). - Rename `skipWhile(_:)` to `skip(while:)`. - Rename `takeUntil(_:)` to `take(until:)`. - Rename `observeOn` and `subscribeOn` to `observe(on:)` and `subscribe(on:)`. - `ignoreElements()` now returns `Observable<Never>`. - Make `SharedSequence` conform to `ObservableConvertibleType`. - Add `onDisposed` to `Maybe`, `Completable` and `Single`. - Unify and optimize swizzling extensions into a single one. - Add `DisposeBag` function builder to allow easy comma-less initialization of a `DisposeBag`. - Advance support of `xcframework`s by enabling `BUILD_LIBRARY_FOR_DISTRIBUTION` and cleaning up. - Many, many, **many** quality of life bugs and fixes.
Catalyst.1
3 years ago
This update is mandatory if you want to use RxSwift in Xcode 11.4 / Swift 5.2 on macOS. * Make `NSTextView` not weak for Swift 5.2 and up. #2125 * Add `WKWebView` navigation delegate reactive extensions. #2144 Note: - The pre-built Carthage binary was built using Xcode 11.4 / Swift 5.2 - We no longer guarantee support for Xcode 10.x. Maintaining these is counter-intuitive as they're over a year old and are ridden with bugs. Other improvements and additions can be found in the project's [CHANGELOG.md](CHANGELOG.md) ### Note: The pre-built Carthage binary was built using Xcode 11.4.1 / Swift 5.2.2
Catalyst
3 years ago
This release removes UIWebView Reactive Extensions due to [Apple's hard deprecation, starting April 2020](https://developer.apple.com/news/?id=12232019b) which also allows RxSwift to be used in Catalyst apps. #2062 Other improvements and additions can be found in the project's [CHANGELOG.md](CHANGELOG.md) ### Note: The pre-built Carthage binary was built using Xcode 11.3.1 / Swift 5.1.3
iOS macOS watchOS tvOS linux macOS iOS
vapor/vapor 4.83.2
💧 A server-side Swift HTTP web framework.
⭐️ 23,194
🕓 3 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
4.83.2 - HTTPServerErrorHandler: Improve Error Handling for HTTPParserError
3 days ago
## What's Changed HTTPServerErrorHandler: Improve Error Handling for HTTPParserError by @fred-sch in #2922 > Invalid HTTP previously just closed the connection, but did not actually handle the errors. > > This PR uses an adapted version of https://github.com/apple/swift-nio/blob/main/Sources/NIOHTTP1/HTTPServerProtocolErrorHandler.swift to properly catch exceptions if they occur. ## New Contributor - @fred-sch made their first contribution in #2922 🎉 ## Reviewers Thanks to the reviewers for their help: - @MrSkwiggs - @Joannis - @FranzBusch - @Lukasa ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.83.1...4.83.2
4.83.1 - Pass X-Request-Id if present
3 days ago
## What's Changed Pass X-Request-Id if present by @paunik in #3072 > Pass the value from the X-Request-Id to the logger context > > - pass the X-Request-Id header value if present, pass generated UUID if the header not present > > Mentioned: > > - https://github.com/vapor/vapor/issues/2508 > > Why: > > - We needed a way to trace router -> web -> worker on the logger on the heroku and we found this https://devcenter.heroku.com/articles/http-request-id > > Inspiration: > > - https://api.rubyonrails.org/classes/ActionDispatch/RequestId.html ## New Contributor - @paunik made their first contribution in #3072 🎉 ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.83.0...4.83.1
4.83.0 - Support Crypto 3.0.0 in the other package manifest
3 days ago
## What's Changed Support Crypto 3.0.0 in the other package manifest by @gwynne in #3073 > Fixes an oversight made by both Tim and myself in #3070. Full credit to @gregcotten for catching the omission. ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.82.0...4.83.0
4.82.0 - Add support for Swift Crypto 3.0.0
3 days ago
## What's Changed Add support for Swift Crypto 3.0.0 by @0xTim in #3070 > See https://forums.swift.org/t/swift-crypto-3-0-0/67387 for more details ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.81.1...4.82.0
4.81.1 - `Logger.report()` should handle `LocalizedError`, `DecodingError`, and `EncodingError` identically to other errors
5 days ago
## What's Changed `Logger.report()` should handle `LocalizedError`, `DecodingError`, and `EncodingError` identically to other errors by @MahdiBM in #3068 > `LocalizedError.localizedDesceiption` is useless. We shouldn’t use it. > The special handling of `DecodingError` and `EncodingError` also doesn’t do much. ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.81.0...4.81.1
4.81.0 - The swift-backtrace library is no longer needed in 5.9
2 weeks ago
## What's Changed The swift-backtrace library is no longer needed in 5.9 by @gwynne in #3064 > Per https://github.com/swift-server/swift-backtrace/pull/68. ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.80.0...4.81.0
4.80.0 - Make Storage Sendable
4 weeks ago
## What's Changed Make Storage Sendable by @0xTim in #3056 > Make Vapor’s `Storage` and `Application` `Sendable`. This is a key piece in allowing `Request` and `Response` to be `Sendable`. > > Note that types that are stored in `Storage` should now be `Sendable`. If you get any warnings, you may need to update your code for this new change. ###### _This patch was released by @0xTim_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.79.0...4.80.0
4.79.0 - Add Sendable Conformances to underlying types
5 weeks ago
## What's Changed Add Sendable Conformances to underlying types by @0xTim in #3054 > This adds Sendable annotations to many of Vapor’s types and APIs, including the request handlers. > > APIs are marked `@preconcurrency` where it makes sense to reduce warnings for anyone using the release. To fix your code and see the warnings, you can enable strict concurrency checking. > > **Note:** this PR does not touch `Request`, `Response` or `Application` as they require fundamental changes that are larger in scope and will be done in a future release. ## Reviewers Thanks to the reviewers for their help: - @FranzBusch - @Lukasa ###### _This patch was released by @0xTim_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.78.2...4.79.0
4.78.2 - Resolve issue #2650
5 weeks ago
## What's Changed Resolve issue #2650 by @paunik in #2674 > In order to prevent 5xx internal error we try to: > > - validate number of parameters in FormDataDecoder so we can detect when only boundary is present. ## New Contributor - @paunik made their first contribution in #2674 🎉 ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.78.1...4.78.2
4.78.1 - Fix for #2574 Missing quote from value
6 weeks ago
## What's Changed Fix for #2574 Missing quote from value by @paunik in #2839 > - now quotes are always enforced in `DirectiveSerializer.serialize` > - adjusted tests ## New Contributor - @paunik made their first contribution in #2839 🎉 ###### _This patch was released by @gwynne_ **Full Changelog**: https://github.com/vapor/vapor/compare/4.78.0...4.78.1
iOS macOS watchOS tvOS linux macOS iOS

New Releases

kukai-wallet/kukai-core-swift 1.0.1
Kukai Core Swift is a native Swift library for interacting with the Tezos blockchain and other applications in the Tezos ecosystem
⭐️ 10
🕓 5 minutes ago
iOS
alibabacloud-sdk-swift/polardb-20170801 2.1.0
Alibaba Cloud polardb SDK for Go
⭐️ 0
🕓 9 minutes ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
2.1.0
5 hours ago
- Generated 2017-08-01 for `polardb`.
2.0.3
4 days ago
- Generated 2017-08-01 for `polardb`.
2.0.2
1 week ago
- Generated 2017-08-01 for `polardb`.
2.0.1
1 week ago
- Generated 2017-08-01 for `polardb`.
2.0.0
2 weeks ago
- Generated 2017-08-01 for `polardb`.
1.0.2
42 weeks ago
- Support GDN feature.
1.0.1
50 weeks ago
- Support serverless feature.
1.0.0
1 year ago
- Generated 2017-08-01 for `polardb`.
iOS macOS watchOS tvOS
apple/swift-docc swift-DEVELOPMENT-SNAPSHOT-2023-09-24-a
Documentation compiler that produces rich API reference documentation and interactive tutorials for your Swift framework or package.
⭐️ 997
🕓 19 minutes ago
iOS macOS linux android
NotifySDK/notify-sdk-ios v2.3.4
iOS SDK for notification and verification powered by https://notify.mail.ru/
⭐️ 2
🕓 56 minutes ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Release 2.3.4 (184)
13 hours ago
Release 2.3.3 (183)
4 weeks ago
Release 2.3.2 (182)
4 weeks ago
Release 2.3.1 (181)
5 weeks ago
Release 2.2.1 (180)
10 weeks ago
Release 2.1.4 (179)
18 weeks ago
Release 2.1.3 (177)
26 weeks ago
Release 2.1.2 (176)
33 weeks ago
Release 2.1.1 (175)
36 weeks ago
Release 2.1.0 (174)
39 weeks ago
iOS
apple/swift-openapi-generator 0.2.3
Generate Swift client and server code from an OpenAPI document.
⭐️ 644
🕓 1 hour ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Swift OpenAPI Generator 0.2.3
7 hours ago
## New feature flags - `urlEncodedForm` enables support for generating Codable types for `application/x-www-form-urlencoded` request bodies ## What's Changed ### SemVer Patch * Add url form encoder & decoder by @bfrearson in https://github.com/apple/swift-openapi-generator/pull/283 * Bump OpenAPIKit to RC.2 by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/293 * YAML diagnostics collector should have stable output by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/295 ### Other Changes * Fixes #78 - Explicitly name reusable header types as 'response header' types by @PARAIPAN9 in https://github.com/apple/swift-openapi-generator/pull/284 * Move warning about strict concurrency into PlatformChecks.swift by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/289 ## New Contributors * @bfrearson made their first contribution in https://github.com/apple/swift-openapi-generator/pull/283 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.2.2...0.2.3
Swift OpenAPI Generator 0.2.2
1 week ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * Add support for nullable schemas by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/248 * Bump OpenAPIKit to beta.5 by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/266 * Escape negative numbers in integer-backed enums by @PARAIPAN9 in https://github.com/apple/swift-openapi-generator/pull/274 * [Generator] Fix nested coding by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/271 ### Other Changes * Fixes #114 - Add scoped imports by @PARAIPAN9 in https://github.com/apple/swift-openapi-generator/pull/184 * Audit for the word "content" incorrectly used to refer to body in public API by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/256 * Use per-type imports everywhere by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/264 * Add compatibility suite with selected OpenAPI documents by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/267 * Delete temporary build directories in compatibility test by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/277 * Run integration test in $TMPDIR or /tmp by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/279 * Compile with -warnings-as-errors in CI (incl. StrictSendability) by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/281 * Generate all requested modes in parallel by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/280 ## New Contributors * @PARAIPAN9 made their first contribution in https://github.com/apple/swift-openapi-generator/pull/184 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.2.1...0.2.2
Swift OpenAPI Generator 0.2.1
3 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * Support integer-backed enums by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/242 ### Other Changes * Update GreetingService for 0.2.0 and update docs by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/240 * Update Supported-OpenAPI-features.md by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/243 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.2.0...0.2.1
Swift OpenAPI Generator 0.2.0
3 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> **⚠️ Contains API-breaking changes.** See the full announcement on the [Swift forums](https://forums.swift.org/t/swift-openapi-generator-0-2-0-released-openapi-3-1-multiple-content-types/67053). ## What's Changed ### SemVer Minor * Prepare 0.2.0 release (API breaking changes) by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/218 * Stop generating empty input/output structs (query, headers, ...) by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/235 * Include parameters in the content type name by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/236 ### SemVer Patch * Bump OpenAPIKit - fixes a server variable parsing issue by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/233 ### Other Changes * Fix typos by @Sajjon in https://github.com/apple/swift-openapi-generator/pull/237 * Docs fixes by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/238 ## New Contributors * @Sajjon made their first contribution in https://github.com/apple/swift-openapi-generator/pull/237 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.1.13...0.2.0
Swift OpenAPI Generator 0.1.13
3 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * [Generator] Integrate the new URI and String coders by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/226 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.1.12...0.1.13
Swift OpenAPI Generator 0.1.12
3 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * Support OpenAPI 3.1 in addition to 3.0 by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/219 * Allow refs to oneOf/anyOf inside a oneOf with a discriminator by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/224 * Allow non-unique values in oneOf.discriminator.mapping by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/225 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.1.11...0.1.12
Swift OpenAPI Generator 0.1.11
4 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * [Generator] Accept header by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/185 ### Other Changes * [Proposal] SOAR-0003 Type-safe Accept headers by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/201 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.1.10...0.1.11
Swift OpenAPI Generator 0.1.10
4 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * Emit JSON path reference in comments for all generated types by @takeshi-1000 in https://github.com/apple/swift-openapi-generator/pull/196 * [Generator] Stop generating an undocumented case for enums/oneOfs by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/205 * Fix warning in generated server code by @arthurcro in https://github.com/apple/swift-openapi-generator/pull/209 * All descriptions defined in the OpenAPI document are generated by @takeshi-1000 in https://github.com/apple/swift-openapi-generator/pull/213 * Additional 'case' blocks cannot appear after the 'default' block of a 'switch' by @dpasirst in https://github.com/apple/swift-openapi-generator/pull/212 * Bump OpenAPIKit to 3.0.0-beta.1 by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/215 ### Other Changes * [Docs] Clarify what constitutes a breaking change of generated code by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/200 * Document using Server-sent Events with OpenAPI by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/208 * Remove redundant Equatable conformances in code generation by @arthurcro in https://github.com/apple/swift-openapi-generator/pull/214 ## New Contributors * @dpasirst made their first contribution in https://github.com/apple/swift-openapi-generator/pull/212 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.1.9...0.1.10
Swift OpenAPI Generator 0.1.9
5 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * Nullable enums with an empty string fail to get generated by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/176 * Stop treating schema warnings as errors by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/178 * Allow more types of subschemas in anyOf/allOf by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/179 * [Bugfix] Finalize diagnostics even when an error is thrown by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/187 * Ignore inline schemas in oneOf with discriminator by @simonjbeaumont in https://github.com/apple/swift-openapi-generator/pull/189 * Retain operation level parameters over path level ones by @arthurcro in https://github.com/apple/swift-openapi-generator/pull/183 * SOAR-0002: Improved naming of content types by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/170, https://github.com/apple/swift-openapi-generator/pull/194 * Fix range responses by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/198 ### Other Changes * Enable strict concurrency checking in CI by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/191 ## New Contributors * @arthurcro made their first contribution in https://github.com/apple/swift-openapi-generator/pull/183 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.1.8...0.1.9
Swift OpenAPI Generator 0.1.8
6 weeks ago
<!-- Release notes generated using configuration in .github/release.yml at main --> ## What's Changed ### SemVer Patch * Forward schema warnings to diagnostics by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/174 * [Generator] Support unexploded query items by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/171 ### Other Changes * Refactor ContentType + improve content type matching by @czechboy0 in https://github.com/apple/swift-openapi-generator/pull/173 **Full Changelog**: https://github.com/apple/swift-openapi-generator/compare/0.1.7...0.1.8
iOS macOS watchOS tvOS linux macOS iOS
uxcam/ios-sdk 3.6.6
This is the UXCam iOS SDK
⭐️ 7
🕓 1 hour ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
v3.6.6
11 hours ago
v3.6.5
4 weeks ago
iOS
kf99916/ProgressWebViewController 3.1.0
A webViewController implemented by WKWebView with a progress bar in the navigation bar
⭐️ 71
🕓 1 hour ago
iOS
malcommac/sentry-cocoa-sdk-xcframeworks 8.13.0
A mirror for https://github.com/getsentry/sentry-cocoa to add support for binary (xcframework) distribution with swift package manager.
⭐️ 3
🕓 2 hours ago
iOS macOS watchOS tvOS
clockworkone/cwmarketing-sdk-ios 0.0.55
iOS SDK for cw.marketing service
⭐️ 2
🕓 2 hours ago
iOS watchOS tvOS
kennic/FrameLayoutKit 7.0.0
A super fast and easy-to-use layout library for iOS. FrameLayoutKit supports complex layouts, including chaining and nesting layout with simple and intuitive operand syntax.
⭐️ 59
🕓 2 hours ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
DSL syntax
14 hours ago
This release enables DSL Syntax for shorter and cleaner code. <table> <tr><td>Regular syntax</td> <td>DSL syntax</td></tr> <tr> <td> ```swift frameLayout + VStackLayout { $0 + titleLabel $0 + subTitleLabel ($0 + 0).flexible() $0 + button $0 + HStackLayout { ($0 + messageView).flexible() ($0 + 5) ($0 + iconView).padding(top: 5) } } ``` </td> <td> ```swift frameLayout + VStackView { titleLabel subTitleLabel FlexibleSpace() button HStackView { StackItem(messageView).flexible() SpaceItem(5) StackItem(iconView).padding(top: 4) } } ``` </td> </tr> </table> More simplify functions: Old: ```swift frameLayout.padding(top: 16, left: 16, bottom: 16, right: 16) frameLayout.align(vertical: .top, horizontal: .right) frameLayout + VStackLayout { messageLayout = ($0 + messageView) messageLayout.padding(top: 16, left: 16, bottom: 16, right: 16) } ``` New: ```swift frameLayout.padding(16) frameLayout.aligns(.top, .right) frameLayout + VStackLayout { ($0 + messageView).assign(to: &messageLayout).padding(16) } ```
1 week ago
6.7.0
3 weeks ago
Now able to display as skeletonMode: ``` swift frameLayout.isSkeletonMode(true) frameLayout.skeletonColor(.lightGray) // able to set skeleton color if you want to ```
12 weeks ago
28 weeks ago
- `frameLayout(with: UIView)` should find from all childrens
Chainable syntax
29 weeks ago
5.3.x: - minItemSize, maxItemSize, fixedItemSize for StackFrameLayout - bug fixes 5.4.x - 6.x: - Chainable syntax - Supports binding views, lazy binding frame to views - FLView as default UIView with frameLayout enabled - Support generic type in `generic` branch
5.2.6
2 years ago
Fixed wrong layout for vertical bottom distribution
5.2.5
2 years ago
Fixed wrong calculation in sizeThatFits for .center and .equal in horizontal mode
5.2.4
2 years ago
5.2.3
2 years ago
iOS tvOS

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics