All Versions
129
Latest Version
Avg Release Cycle
33 days
Latest Release
524 days ago

Changelog History
Page 8

  • v5.0.0-beta3 Changes

    August 30, 2018

    ๐Ÿš€ See all tickets marked for the 5.0.0 release

    ๐Ÿ”‹ Features

    • Minimum progress interval config for SDWebImageDownloader #2415 #2437 1d8454d
    • ๐Ÿ”‹ Feature disk cache migration from 4.x #2417 #2433
    • โž• Add SDImageFormatHEIF represent mif1 && msf1 brands #2423 (imported from 4.4.3)
    • โž• Add default HTTP User-Agent for specific system #2409 (imported from 4.4.3)
    • Replace valueForKey with objectForKey when access NSDictionary #2399
    • ๐Ÿ‘Œ Improved unit tests #2438 #2434
    • โœจ Enhanced contributing guide #2416
    • Adopt all the protocol APIs which contains getter value to use property instead, to make the API easy to use or Swift user #2452
    • โœ‚ Remove sd_setAnimationImagesWithURLs API, because its cause ambiguity, behave not consistently and have rare use case #2459
    • ๐Ÿ‘Œ Improved SDAnimatedImage protocol with initWithData:scale:options: #2453
    • Extra args for SDSetImageBlock (added cacheType and imageURL) #2449

    ๐Ÿ›  Fixes

    • Fix that using NS_TYPED_ENUM on SDImageFormat cause the existing Swift API (sd_UTTypeFromImageFormat) naming changed #2413
    • ๐Ÿ›  Fix that downloader options about image decoding is not correctly set #2414
    • ๐Ÿ‘‰ Make download receive response notification only dispatch to specific observer #2426
    • ๐Ÿ›  Fix a race condition during progressive animation load in SDAnimatedImageView #2435
    • ๐Ÿ›  Fix the bug that SDWebImageContextCacheKeyFilter wrongly be used as cache serializer and cause crash #2451
    • ๐Ÿ›  Fix resource key invalid when clean cached disk file #2462
    • โž• Add no expiration file support of disk cache #2461
  • v5.0.0-beta2 Changes

    July 31, 2018

    ๐Ÿš€ See all tickets marked for the 5.0.0 release

    ๐Ÿ”‹ Features

    • โž• Add SDImageCoderWebImageContext coder option, which allow custom coder plugin, to receive the context option from top-level API #2405
    • ๐Ÿš€ Updated all existing diagrams for 5.0 release + added new ones (small detailed diagrams for the most important components) #2407

    ๐Ÿ›  Fixes

    • ๐Ÿ›  Fix nullable key for sd_imageLoadOperationForKey #2389
    • Replace __bridge_transfer with __bridge when convert from CFStringRef to NSString #2392
    • Rename sd_UTTypeFromSDImageFormat to sd_UTTypeFromImageFormat #2395
    • Change SDImageFormat to use NS_TYPED_EXTENSIBLE_ENUM instead of fixed enum, to allow custom coder plugins to extend it #2400
  • v5.0.0-beta Changes

    July 17, 2018

    ๐Ÿš€ See all tickets marked for the 5.0.0 release

    Infrastructure

    • the new requirements are iOS 8.0+ and macOS 10.10+ #2147
    • Xcode 9+

    Backwards incompatible changes

    โšก๏ธ See the 5.0 Migration Guide for a list of comprehensive changes and the way to update your code

    ๐Ÿ”‹ Features

    • ๐Ÿ”จ Introduce SDAnimatedImageView, SDAnimatedImage and refactor the way we handle animated images #2140
    • โž• Added APNG support via dedicated coder SDImageAPNGCoder #2149
    • ๐Ÿ”จ Refactored SDWebImageDownloader configs, separated them into a dedicated SDWebImageDownloaderConfig object #2263
    • ๐Ÿ”จ Refactored the way we work with the scale factor #2266
    • Created request and response modifier #2261
    • ๐Ÿ”จ Refactor Cache Path API #2276
    • ๐Ÿ”จ Refactor custom cache serializer & headers filter for request level #2280
    • ๐Ÿ”จ Refactor cache - Support custom memory cache & disk cache #2282
    • ๐Ÿ”จ Refactor cache - Support custom web cache #2278
    • ๐Ÿ”จ Refactor - custom image loader - Supports loader protocol #2256
    • ๐Ÿ‘‰ Use SDWebImageAvoidDecodeImage to allow user to control force decode feature for individual image request #2283

    • ๐Ÿ‘€ SDImageCache supports disk cache writing options. See SDImageCacheConfig diskCacheWritingOptions #2148

    • SDImageCache now uses NSData writeToFile:options:error instead of NSFileManager createFileAtPath:contents:attributes #2148

    • ๐Ÿšš Moved SDImageCache maxMemoryCost and SDImageCache maxMemoryCountLimit to SDImageCacheConfig #2151

    • โž• Added SDImageCache diskImageDataExistsWithKey: synchronous method #2151

    • Moved UIImage sd_imageLoopCount and UIImage isGIF (and renamed to sd_isAnimated) to UIImage+Metadata category, removed the outdated methods #2152

    • ๐Ÿšš Move context and other type definitions to a separate header (SDWebImageDefine) to allow to be included without dependency #2188

    • Pass context arg from the top level APIs to the bottom level APIs to allow specify logic in the future #2189 d6a3e2c c24c3d3

    • ๐Ÿ”จ Refactor the image indicator by creating SDWebImageIndicator and SDWebImageProgressIndicator protocols and two concrete classes that implement activity and progress indicators for both UIKit and AppKit #2185 46b62cf

    • ๐Ÿ”จ Refactor the implementation of SDWebImagePrefetcher so it behaves more like a "shared instance" object, similar to other platform classes. Each instance will manage its own list of urls. #2191 1efc247 92f3d2c bc164d6

    • ๐Ÿ”จ Refactored and enhanced the way we allow image transformations. Switched from a single delegate method to composition of SDImageTransformer #2219

    • ๐Ÿ’… API style refactoring - #2250

      • Use property instead of setters and getters to make the property available in Swift
      • Use class property with the correct name instead of +(instanceType)sharedInstance in singleton to make it more easy to use in Swift. The generated interface should be simple open class var shared { get }
      • Add all nullability annotation to avoid any AnyObject! implicitly unwrapped optionals (Except that null_resettable)
      • Add all Core Foundation Ownership using CF_RETURNS_RETAINED for Get Rule and CF_RETURNS_NOT_RETAINED for Create Rule to avoid any Unmanaged CF value
      • Change all key for Dictionary with NS_STRING_ENUM to make it easy to use in Swift with dot syntax
      • Change all global value type which represent enum with NS_TYPED_ENUM to make it easy to use in Swift with dot syntax
    • โœ‚ Remove the extra calculation of image orientation for ImageIO coder & Fix macOS image orientation #2271

    • Added SDWebImageError (defined as NS_ERROR_ENUM) to group all our errors together #2290

    • โž• Added tests for macOS

    • โž• Add the SDWebImageContextStoreCacheType context option to specify target cache type when the image is downloaded by manager and will store to cache #2360

    • ๐Ÿ”‹ Feature watchOS WKInterfaceImage with sd_setImageWithURL #2331

    • โž• Add options to specify query cache sync/async behavior #2312

    ๐Ÿ›  Fixes

    • SDWebImageManager loadImageWithURL:options:progress:completed: changed the completed param requirement from nullable to nonnull #2164
  • v4.4.8 Changes

    December 27, 2019

    ๐Ÿ›  Fixes

    • ๐Ÿ›  Fix the issue that "There may be no complete callback when download the picture of the local path" #2916
    • ๐Ÿ›  Fix the crash when using NSCache delegate with SDMemoryCache default implementation on dealloc #2899
    • ๐Ÿ›  Fix the thread safe issue with Downloader and DownloaderOperation during cancel #2903
  • v4.4.7 Changes

    June 05, 2019

    ๐Ÿ›  Fixes

    • ๐Ÿ›  Fix compatability for Xcode 11 #2744
    • ๐Ÿ›  Fix the SDAnimatedImageRep which use the deprecated API and cause compile issue on Xcode 11 #2745

    ๐Ÿ”‹ Feature

    • Define SDWebImageDownloader convenience method #2633

    Project

    • โšก๏ธ Update libwebp constraint to lower 2.0 #2628
  • v4.4.6 Changes

    February 26, 2019

    ๐Ÿš€ See all tickets marked for the 4.4.6 release

    ๐Ÿ›  Fixes

    • ๐Ÿ›  Fix the unused user header search path warning for CocoaPods 1.6.0. #2622
    • ๐Ÿ›  Fix that WebP with custom ICC Profile will randomly crash, because CGColorSpaceCreateWithICCProfile does not copy the ICC data pointer #2621
    • ๐Ÿ›  Fix the issue when WebP contains the ICC Profile with colorSpace other than RGB, which cause the CGImageCreate failed #2627

    Project

    • โšก๏ธ Update the libwebp dependency to support using 1.0 version and above #2625

    ๐ŸŽ Performances

    • ๐Ÿ†“ Nil imageData before decode process to free memory #2624
  • v4.4.5 Changes

    January 31, 2019

    ๐Ÿš€ See all tickets marked for the 4.4.5 release

    ๐Ÿ›  Fixes

    • โช Revert the modular framework, try to fix some user's install issue when using SDWebImage in prefix header #2604
    • ๐Ÿ›  Fix wrong decompression scale calculation #2608
    • ๐Ÿ›  Fix shouldDecode check when image format is GIF #2606
    • ๐Ÿ›  Fix modify data pointer if webp image scaled down #2607
  • v4.4.4 Changes

    January 26, 2019

    ๐Ÿš€ See all tickets marked for the 4.4.4 release

    ๐Ÿ›  Fixes

    • ๐Ÿ›  Fix memory cache image cost miscalculation for 4.x #2486
    • ๐Ÿ›  Fix background download for 4.x #2570
    • ๐Ÿ›  Fix race condition for creation of download operation when isCancelled is YES but isFinished is NO #2574
    • ๐Ÿ›  Fix the current image cost (pixels) for FLAnimatedImage #2558
    • ๐Ÿ›  Fix the FLAnimatedImage compatible code issue by introduce a private API #2588
    • ๐Ÿ›  Fix that WebP image with ICC Profile does not show color correctly, should use the profile colorspace instead of device colorspace #2585
    • ๐Ÿ›  Fix potential memory leaks for ICCP && optimize ICCP handler #2596
    • ๐Ÿ›  Fix that WebP decoder in master branch, does not consider the global shouldDecompressImages config and always do pre-draw for static WebP images #2592
    • ๐Ÿ›  Fix rare crash when NSMapTable empty keys #2556
    • Retain operation when post download related notifications (Hopefully fix, but if you face crash, please open a issue) #2576

    ๐ŸŽ Performances

    • Prioritize SDWebImageDownloaderHighPriority if operation already exists #2575

    Project

    • Let SD can be imported using static library by CocoaPods using DEFINES_MODULE #2549
  • v4.4.3 Changes

    November 25, 2018

    ๐Ÿš€ See all tickets marked for the 4.4.3 release

    ๐Ÿ›  Fixes

    • โช Revert the hack code for FLAnimatedImage, because of the FLAnimatedImage initializer method blocks the main queue #2441
    • ๐Ÿ›  Fix extention long length of file name #2516 6c6d848
    • ๐Ÿ›  Fix resource key invalid when clean cached disk file #2463
    • ๐Ÿ›  Fix the test case testFLAnimatedImageViewSetImageWithURL because of remote resource is not available #2450
    • โž• Add default HTTP User-Agent for specific system #2409
    • โž• Add SDImageFormatHEIF represent mif1 && msf1 brands #2423
    • โœ‚ remove addProgressCallback, add createDownloaderOperationWithUrl #2336
    • ๐Ÿ›  Fix the bug when FLAnimatedImageView firstly show one EXIF rotation JPEG UIImage, later animated GIF FLAnimatedImage will also be rotated #2406
    • Replace SDWebImageDownloaderOperation with NSOperation<SDWebImageDownloaderOperationInterface> to make generic #2397
    • ๐Ÿ›  Fix wrong image cache type when disk and memory cache missed #2529
    • ๐Ÿ›  Fix FLAnimatedImage version check issue for custom property optimalFrameCacheSize && predrawingEnabled #2543

    ๐ŸŽ Performances

    • โž• Add autoreleasepool to release autorelease objects in advance when using GCD for 4.x #2475
    • โšก๏ธ Optimize when scale = 1 #2520

    ๐Ÿ“„ Docs

    • โšก๏ธ Updated URLs after project was transfered to SDWebImage organization #2510 f9d05d9
    • Tidy up spacing for README.md #2511
    • โœ‚ Remove versioneye from README #2424
  • v4.4.2 Changes

    July 18, 2018

    ๐Ÿš€ See all tickets marked for the 4.4.2 release

    ๐Ÿ”‹ Features

    • Ability to change the clear cache option SDImageCacheConfig.diskCacheExpireType #2357
    • โž• Add option to enable or disable weak memory cache for SDImageCache via SDImageCacheConfig.shouldUseWeakMemoryCache #2379
    • โž• Add cache control for FLAnimatedImage, this allow user to disable memory cache for associated FLAnimatedImage instance #2378
    • โž• Add diskImageDataForKey: sync API for SDImageCache to directly get the image data from disk #2391

    ๐Ÿ›  Fixes

    • SDWebImageManager.runningOperations type changed from Array to Set #2382
    • Keep the information about image's original compressed format #2390
    • ๐Ÿ›  Fix FLAnimatedImageView+WebCache delayed draw due to #2047 which is now reverted #2393
    • Check for nullable key when cancel image load operation #2386
    • Replace __bridge_transfer with __bridge when convert from CFStringRef to NSString #2394