Skip to content

Nuke 0.4.0

Compare
Choose a tag to compare
@kean kean released this 04 Oct 14:48

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