- move the webp component + the libwebp dependency to SDWebImage/SDWebImageWebPCoder (including tests and demo)
- Xcode 9.4
- instead of directly linking the Demos to the frameworks, using CocoaPods (`Examples/Podfile`). This allows using SDWebImage/SDWebImageWebPCoder into our examples so we keep the WebP demos
- demos code cleanup and warnings resolved
- all links from docs (README, Migration guide, CHANGELOG) are full links, so they work even from external pages (i.e. https://cocoapods.org/pods/SDWebImage).
- added "Additional modules" section to README
* 'master' of https://github.com/rs/SDWebImage:
Bumped version to 4.3.3
Add cacheKeyFilter to allow user provide modified version of data when storing the disk cache in SDWebImageManager
# Conflicts:
# SDWebImage/SDWebImageManager.h
* 'master' of https://github.com/rs/SDWebImage:
Bumped version to 4.3.2
Follow Apple's doc, add NSOperation only after all configuration done.
Update the comments
Fix that iOS 8 NSURLSessionTaskPriorityHigh symbol not defined in Foundation framework and cause crash
* 'master' of https://github.com/rs/SDWebImage:
Bumped version to 4.3.1
update CHANGELOG
Create a subclass of NSCache using a weak cache. Only remove the cache when memory warning and sync back the alive instance from weak cache into cache.
# Conflicts:
# SDWebImage/SDImageCache.m
* 'master' of https://github.com/rs/SDWebImage:
Bumped version to 4.3.0
update CHANGELOG
Update the readme
Update the readme and issue template
Use a lock to ensure headers mutable dictionary thread-safe
Do not hard-code cache policy. Use SDWebImageDownloaderUseNSURLCache to check
Use the correct way to specify cancel if the response status code is invalid.
Ensure all the session delegate completionHandler called. Fix the leak when response error code below iOS 10
Fix the issue that prefetcher will cause stack overflow is the input urls list is huge because of recursion function call
Update the comments for image transition
Expose the associate FLAnimatedImage to user for advanced usage. Update the comments
* 'master' of https://github.com/rs/SDWebImage:
Update the spec file to define the dependency version for libwebp
Bugfix for loopCount (#2155)
Fix that 0 pixels error should be used when width OR height is zero but not AND
Avoid user accidentally invalidates the session used in shared downloader
Remove the extra memory warning notification for AutoPurgeCache
- open the decoding/encoding procedures to the users
- switch from hardcoded decoding/encoding to pluginable decoders/encoders (builtin + user created)
- `SDWebImageCodersManager` is a singleton holding an array of `SDImageCoder` (protocol). Even though a singleton is not necesarily a good pattern, in this case it eliminates dealing with passing this array around
- uses a priority queue behind scenes, which means the latest added coders have priority.
- the priority is crucial when encoding/decoding something, we go through the list and ask each coder if they can handle the current data (see `canDecodeFromData:`, `canEncodeToFormat:`, `canIncrementallyDecodeFromData:`)
- each coder must conform to this protocol `SDImageCoder` describing all the required behavior for a coder
- we provide 3 built-in coders: `SDWebImageImageIOCoder` (for JPEG, PNG, TIFF), `SDWebImageGIFCoder` (for GIF), `SDWebImageWebPCoder` (for WebP and animated WebP)
- the user of SDWebImage can create custom coders by conforming to `SDImageCoder` and adding the coders to `SDWebImageCodersManager`. See `addCoder:` or `removeCoder:` or `coders` getter to get the array
- in order to preserve backwards compatibility, the UIImage categories were preserved, calling the new coders APIs described above