Releases: kean/Nuke
Releases · kean/Nuke
Nuke 3.1.1
- Demo project update to support CocoaPods 1.0
- #69 Bitcode support for Carthage builds, thanks to @vincentsaluzzo
Nuke 3.1.0
- #64 Fix a performance regression: images are now decoded once per DataTask like they used to
- #65 Fix an issue with custom on-disk cache (
ImageDiskCaching
) which was calledsetData(_:response:forTask:)
method when the error wasn't nil - Add notifications for NSURLSessionTask state changes to enable activity indicators (based on kean/Nuke-Alamofire-Plugin#4)
Nuke 3.0
- Update for Swift 2.2
- Move
ImagePreheatingController
to a standalone package Preheat - Remove deprecated
suspend
method fromImageTask
- Remove
ImageFilterGaussianBlur
and Core Image helper functions which are now part of Core Image Integration Guide - Cleanup project structure (as expected by SPM)
ImageManager
constructor now has a default value for configuration
Changes in UI extensions:
nk_setImageWith(URL:)
method no longer resizes images by default, because resizing is not effective in most cases- Remove
nk_setImageWith(request:options:placeholder:)
method, it's trivial ImageLoadingView
default implementation no longer implements "Cross Dissolve" animations, useImageViewLoadingOptions
instead (seeanimations
orhandler
property)- Remove
ImageViewDefaultAnimationDuration
, useImageViewLoadingOptions
instead (seeanimations
property) ImageDisplayingView
protocol now has a singlenk_displayImage(_)
method instead of ank_image
property- Remove
nk_targetSize
property fromUI(NS)View
extension
Nuke 2.3.0
- #60 Add custom on-disk caching support (see
ImageDiskCaching
protocol) - Reduce dynamic dispatch
Nuke 2.2.0
ImageTask
suspend
method is deprecated, implementation does nothingImageLoader
now limits a number of concurrentNSURLSessionTasks
- Add
maxConcurrentSessionTaskCount
property toImageLoaderConfiguration
- Add
taskReusingEnabled
property toImageLoaderConfiguration
- Add Swift Package Manager support
- Update documentation
Nuke 2.1.0
- #57
ImageDecompressor
now usesCGImageAlphaInfo.NoneSkipLast
for opaque images - Add
ImageProcessorWithClosure
that can be used for creating anonymous image filters ImageLoader
ensures thread safety of image initializers by running decoders on aNSOperationQueue
withmaxConcurrentOperationCount=1
. However,ImageDecoder
class is now also made thread safe.
Nuke 2.0.1
- #53 ImageRequest no longer uses NSURLSessionTaskPriorityDefault, which requires CFNetwork that doesn't get added as a dependency automatically
Nuke 2.0
Nuke now has an official website!
Main Changes
- #48 Update according to Swift API Design Guidelines. All APIs now just feel right.
- Add
ImageRequestMemoryCachePolicy
enum that specifies the wayImageManager
interacts with a memory cache;NSURLRequestCachePolicy
no longer affects memory cache - Add
UIImage
extension with helper functions forCore Image
:nk_filter(_:)
, etc. - Add
ImageFilterGaussianBlur
as an example of a filter on top ofCore Image
framework - #17 Add
priority
toImageRequest
- Add
removeResponseForKey()
method toImageMemoryCaching
protocol and the corresponding method toImageManager
- Implement congestion control for
ImageLoader
that preventsNSURLSession
trashing - Simplify
ImageLoaderDelegate
by combining methods that were customizing processing in a single high-level method:imageLoader(_:processorFor:image:)
. Users now have more control over processing - Add
NSURLResponse?
parameter todecode
method fromImageDecoding
protocol ImageDataLoading
protocol no longer hasisLoadEquivalentRequest(_:toRequest)
andisCacheEquivalentRequest(_:toRequest)
. Those methods are now part ofImageLoaderDelegate
and they have default implementationImageResponseInfo
is now a struct- Improved error reporting (codes are now stored in enum, more codes were added, error is now created with a failure reason)
UI Extensions Changes
- Move
nk_imageTask(_:didFinishWithResponse:options)
method toImageLoadingView
protocol, that's really where it belongs to - Add
handler
property toImageViewLoadingOptions
that allows you to completely override display/animate logic inImageLoadingView
- Remove
nk_prepareForReuse
method fromImageLoadingView
extensions (useless) - Remove
placeholder
fromImageViewLoadingOptions
, move it to a separate argument which is only available onImageDisplayingView
s - Add
animated
,userInfo
toImageViewLoadingOptions
ImageViewLoadingOptions
is now nonull everywhere- Add
setImageWith(task:options:)
method toImageViewLoadingController
Other Changes
- If you add a completion handler for completed task, the response is now marked as
isFastResponse = true
- Fix an issue that allowed incomplete image downloads to finish successfully when using built-in networking
equivalentProcessors(rhs:lhs:)
function is now private (and it also is renamed)- Remove public
isLoadEquivalentToRequest(_:)
andisCacheEquivalentToRequest(_:)
methods fromImageRequest
extension - Add
ImageTaskProgress
struct that represents load progress, movefractionCompleted
property fromImageTask
toImageTaskProgress
- Remove public helper function
allowsCaching
fromImageRequest
extension - Remove deprecated
XCPSetExecutionShouldContinueIndefinitely
from playground
Nuke 1.4.0
- #46 Add option to disable memory cache storage (thanks to @RuiAAPeres)
Nuke 1.3.0
- Add Core Image Integration Guide
- Fill most of the blanks in the documentation
- #47 Fix target size rounding errors in image downscaling (Pyry Jahkola @pyrtsa)
- Add
imageScale
property toImageDecoder
class that returns scale to be used when creatingUIImage
(iOS, tvOS, watchOS only) - Wrap each iteration of
ImageProcessorComposition
in anautoreleasepool