Releases: kean/Nuke
Releases · kean/Nuke
Nuke 0.5.0
This is a pre-1.0 version, first major release which is going to be available soon.
Major
- #18 ImageTask can now be suspended (see
suspend()
method). AddsuspendLoadingForImageTask(_:)
method toImageLoading
protocol - #24 ImageRequest can now be initialized with NSURLRequest. ImageDataLoading
imageDataTaskWithURL(_:progressHandler:completionHandler:)
method changed toimageDataTaskWithRequest(_:progressHandler:completionHandler:)
. First parameter is ImageRequest, return value change from NSURLSessionDataTask to NSURLSessionTask. - ImageLoader no longer limits number of concurrent NSURLSessionTasks (which had several drawbacks)
- Add base ImagePreheatingController class
- Multiple preheating improvements: significantly simplified implementation; visible index paths are now subtracted from preheat window; performance improvements.
Minor
- BUGFIX: When subscribing to an existing NSURLSessionTask user was receiving progress callback with invalid totalUnitCount
- Add public
equivalentProcessors(lhs:rhs:) -> Bool
function that works on optional processors - Add essential documentation
Nuke 0.4.0
Major
- Make ImageLoading protocol and ImageLoader class public
- Make ImageManager
cachedResponseForRequest(_:)
andstoreResponse(_:forRequest:)
methods public - Make ImageRequestKey class and ImageRequestKeyOwner protocol public
- Remove unused ImageManaging and ImagePreheating protocols
Minor
- #13 BUGFIX: Crash on 32-bit iOS simulator on Mac with 16Gb+ of RAM (@RuiAAPeres)
- BUGFIX: Processing operation might not get cancelled in certain situations
- ImageProcessing protocol now provides default implementation for
isEquivalentToProcessor(_:)
method including separate implementation for processors that also conform to Equatable protocol. - Add identifier: Int property to ImageTask
- ImageRequestKey now relies on Hashable and Equatable implementation provided by NSObject
- ImageMemoryCaching protocol now works with ImageRequestKey class
Plumbing
- Adopt multiple Swift best practices (tons of them in fact)
- ImageManager is now fully responsible for memory caching and preheating, doesn't delegate any work to ImageLoader (simplifies its implementation and limits dependencies)
- Remove ImageRequestKeyType enum
- Rename ImageManagerLoader to ImageLoader
- Simply ImageManagerLoader (now ImageLoader) implementation
- Add multiple unit tests
Nuke 0.3.1
- #10 Fix Carthage build
Nuke 0.3.0
- ImageTask now acts like a promise
- ImageManager.shared is now a property instead of a method
- ImageTask progress is now created lazily
- Add maxConcurrentTaskCount to ImageManagerConfiguration
- Move taskWithURL method to ImageManaging extension
- Add ImagePreheating protocol
- Multiple improvements across the board
Nuke 0.2.2
- Add limited Carthage support (doesn't feature FLAnimatedImage and Alamofire integration yet, you'll have to stick with CocoaPods for that)
- ImageTask resume() and cancel() methods now return Self
- ImageTask completion property is now public
- Minor implementation improvements
Nuke 0.2.1
- Add ImageCollectionViewPreheatingController (yep)
- Add Image Preheating Guide
- Add preheating demo
Nuke 0.2.0
Major
- Optional Alamofire integration via 'Nuke/Alamofire' subspec
- Optional FLAnimatedImage integration via 'Nuke/GIF' subspec
- More concise API
- Add image filters to ImageRequest
- Add ImageManaging protocol
- Add ImageDecoderComposition
- Add ImageProcessorComposition
- watchOS
- Add convenience functions that forward calls to the shared manager
Minor
- Use ErrorType
- Add removeAllCachedImages method
- ImageRequest userInfo is now Any? so that you can pass anything including closures
- ImageResponseInfo now has userInfo: Any? property
- ImageResponseInfo is now a struct
- CachedImageResponse renamed to ImageCachedResponse; userInfo is now Any?
- Multiple improvements across the board