* '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