SDWebImage v5.0.0 Release Notes
Release Date: 2019-04-02 // almost 5 years ago-
๐ See all tickets marked for the 5.0.0 release
๐ Features
Animated Image
- Introduce
SDAnimatedImageView
andSDAnimatedImage
for full stack solution of animated images. - ๐ Supports custom coders for nearly every animated image format.
- ๐ Supports progressive loading for animated images.
- ๐ iOS/tvOS/macOS cross-platform support.
Transformer
- Using transformer to apply image processing after image was loaded.
- Built-in transformer for common usage: Rounded Corner, Resize, Crop, Flip, Rotate, Tint Color, Blur Effect, Core Image Filter...
- Convenient category methods for
UIImage
/NSImage
Custom Loader
- Using
SDImageLoader
protocol to implements your own image loader. - Not limited on HTTP, you can even using SDWebImage with PhotoKit and third-party SDKs.
- ๐ Supports multiple loaders at the same time when using
SDImageLoadersManager
.
Custom Cache
- Using
SDImageCache
protocol to implement your own image cache. - Standalone disk cache and memory cache class for advanced usage and customization.
- ๐ Supports multiple caches at the same time when using
SDImageCachesManager
.
Indicator
- ๐ Use indicator to provide a loading view, customizable.
- Built-in Activity Indicator and Progress Indicator.
- ๐ iOS/tvOS/macOS cross-platform support.
๐ Plugins
- ๐ All external image format coders are plugins. Supports WebP, HEIF, BPG, FLIF, SVG, PDF... Choose what you need in: Coder Plugin List
- ๐ PhotoKit loader as a plugin: SDWebImagePhotosPlugin
- ๐ FLAnimatedImage integration as a plugin: SDWebImageFLPlugin
- ๐ YYImage/YYCache integration as a plugin: SDWebImageYYPlugin
๐ Improvements
Swift
- ๐ Better Swift support with some manual renaming APIs.
- Full nullability annotation.
- Using class property for shared instance.
- Using
NS_TYPED_ENUM
andNS_STRING_ENUM
for better generated APIs.
API
- Using context option to control detail behavior for each image request beyond the limit of enums.
- Using prefetcher to manage token (list of URL requests) to avoid conflict.
- ๐ Use request modifier to modify constructed URLRequest.
Project
- ๐ Supports the latest Xcode 10.
- ๐ Supports iOS 8.0+/tvOS 9.0+/watchOS 2.0+/macOS 10.10+.
- ๐ MapKit support for Carthage moved the standalone
SDWebImageMapKit
target. - Using module map and umbrella headers.
Migration
Check 5.0 migration guide for the migration from 4.x to 5.x.
- Introduce