Skip to content

Releases: kean/Nuke

Nuke 1.2.0

15 Nov 11:51
Compare
Choose a tag to compare
  • #20 Add preheating for UITableView (see ImagePreheatingControllerForTableView class)
  • #41 Enhanced tvOS support thanks to @joergbirkhold
  • #39 UIImageView: ImageLoadingView extension now available on tvOS
  • Add factory method for creating session tasks in ImageDataLoader
  • Improved documentation

Nuke 1.1.1

30 Oct 21:18
Compare
Choose a tag to compare
  • #35 ImageDecompressor now uses 32 bpp, 8 bpc, CGImageAlphaInfo.PremultipliedLast pixel format which adds support for images in an obscure formats, including 16 bpc and more
  • Improve docs

Nuke 1.1.0

23 Oct 17:52
Compare
Choose a tag to compare
  • #25 Add tvOS support
  • #33 Add app extensions support for OSX target (other targets were already supported)

Nuke 1.0.0

18 Oct 17:00
Compare
Choose a tag to compare
  • #30 Add new protocols and extensions to make it easy to add full featured image loading capabilities to custom UI components. Here's how it works:
extension MKAnnotationView: ImageDisplayingView, ImageLoadingView {
    // That's it, you get default implementation of all the methods in ImageLoadingView protocol
    public var nk_image: UIImage? {
        get { return self.image }
        set { self.image = newValue }
    }
}
  • #30 Add UIImageView extension instead of custom UIImageView subclass
  • Back to the Mac! All new protocol and extensions for UI components (#30) are also available on a Mac, including new NSImageView extension.
  • #26 Add getImageTaskWithCompletion(_:) method to ImageManager
  • Add essential documentation
  • Add handy extensions to ImageResponse

Nuke 0.5.1

13 Oct 17:19
Compare
Choose a tag to compare

Nuke is now available almost everywhere. Also got rid of CocoaPods subspecs.

New Supported Platforms

  • CocoaPods, Nuke, watchOS
  • CocoaPods, Nuke, OSX
  • CocoaPods, NukeAlamofirePlugin, watchOS
  • CocoaPods, NukeAlamofirePlugin, OSX
  • Carthage, Nuke, watchOS
  • Carthage, Nuke, OSX
  • Carthage, NukeAlamofirePlugin, iOS
  • Carthage, NukeAlamofirePlugin, watchOS
  • Carthage, NukeAlamofirePlugin, OSX

Repo Changes

Code Changes

  • #9, #19 ImageTask now has a closure for progress instead of NSProgress
  • Rename ImageLoadingDelegate to ImageLoadingManager
  • Add ImageLoaderDelegate with factory method to construct image decompressor, and shouldProcessImage(_:) method
  • Make ImageRequest extensions public
  • Make ImageTask constructor public; Annotate abstract methods.

Nuke 0.5.0

09 Oct 13:58
Compare
Choose a tag to compare

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). Add suspendLoadingForImageTask(_:) method to ImageLoading protocol
  • #24 ImageRequest can now be initialized with NSURLRequest. ImageDataLoading imageDataTaskWithURL(_:progressHandler:completionHandler:) method changed to imageDataTaskWithRequest(_: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

04 Oct 14:48
Compare
Choose a tag to compare

Major

  • Make ImageLoading protocol and ImageLoader class public
  • Make ImageManager cachedResponseForRequest(_:) and storeResponse(_: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

22 Sep 04:16
Compare
Choose a tag to compare
  • #10 Fix Carthage build

Nuke 0.3.0

21 Sep 09:05
Compare
Choose a tag to compare
  • 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

20 Sep 08:52
Compare
Choose a tag to compare
  • 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