Authored by Bogdan Poplauschi

Changelog update

1 -## [4.0.0 - In progress](https://github.com/rs/SDWebImage/tree/4.x) 1 +## [4.0.0 beta - New platforms (Mac OS X and watchOS) + refactoring, on Oct 5th, 2016](https://github.com/rs/SDWebImage/releases/tag/4.0.0-beta)
  2 +
  3 +See [all tickets marked for the 4.0.0 release](https://github.com/rs/SDWebImage/milestone/3)
2 4
3 #### Infrastructure: 5 #### Infrastructure:
4 6
@@ -15,7 +17,7 @@ @@ -15,7 +17,7 @@
15 - `SDWebImage iOS Demo` 17 - `SDWebImage iOS Demo`
16 - `SDWebImage TV Demo` 18 - `SDWebImage TV Demo`
17 - `SDWebImage Watch Demo` 19 - `SDWebImage Watch Demo`
18 -- bumped `libwep` version to `0.5.0` 20 +- bumped `libwep` version to `0.5.1`
19 - improved unit testing code coverage (*35%* -> **77%**) and integrated [CodeCov](https://codecov.io/gh/rs/SDWebImage) 21 - improved unit testing code coverage (*35%* -> **77%**) and integrated [CodeCov](https://codecov.io/gh/rs/SDWebImage)
20 22
21 #### Backwards incompatible changes 23 #### Backwards incompatible changes
@@ -61,6 +63,9 @@ @@ -61,6 +63,9 @@
61 - Got rid of `removeImageForKey:` and `removeImageForKey:fromDisk:` from `SDImageCache` that looked sync but were async. Left only the 2 async ones 63 - Got rid of `removeImageForKey:` and `removeImageForKey:fromDisk:` from `SDImageCache` that looked sync but were async. Left only the 2 async ones
62 - Removed `UIImageView` `sd_cancelCurrentHighlightedImageLoad` 64 - Removed `UIImageView` `sd_cancelCurrentHighlightedImageLoad`
63 - Added `sd_` prefix to the activity indicator related methods (`setShowActivityIndicatorView:`, `setIndicatorStyle:`, `showActivityIndicatorView`, `addActivityIndicator`, `removeActivityIndicator`) #1640 65 - Added `sd_` prefix to the activity indicator related methods (`setShowActivityIndicatorView:`, `setIndicatorStyle:`, `showActivityIndicatorView`, `addActivityIndicator`, `removeActivityIndicator`) #1640
  66 +- Use `dispatch_main_async_safe` for all the completion blocks on the main queue (used to be `dispatch_sync`) - avoiding locks.
  67 +- Removed `dispatch_main_sync_safe` as it can be mistakenly used
  68 +- Add `url` as param to progress block `SDWebImageDownloaderProgressBlock` - #984
64 69
65 #### Features: 70 #### Features:
66 71
@@ -76,13 +81,24 @@ @@ -76,13 +81,24 @@
76 - Created `SDWebImageDownloaderOperationInterface` to describe the behavior of a downloader operation. Any custom operation must conform to this protocol df3b6a5 81 - Created `SDWebImageDownloaderOperationInterface` to describe the behavior of a downloader operation. Any custom operation must conform to this protocol df3b6a5
77 - Refactored all the duplicate code from our `WebCache` categories into a `UIView` `WebCache` category. All the other categories will make calls to this one. Customization of setting the image is done via the `setImageBlock` and the `operationKey` e1840c3 82 - Refactored all the duplicate code from our `WebCache` categories into a `UIView` `WebCache` category. All the other categories will make calls to this one. Customization of setting the image is done via the `setImageBlock` and the `operationKey` e1840c3
78 - Due to the change above, the activity indicator can now be added to `UIButton`, `MKAnnotationView`, `UIImageView` 83 - Due to the change above, the activity indicator can now be added to `UIButton`, `MKAnnotationView`, `UIImageView`
  84 +- Animated WebP support #1438
  85 +- The shared objects (not really singletons) should allow subclassing, therefore the return type of the shared resource method should be `instancetype` and not a fixed type - c57cf7e
  86 +- Allow to specify `NSURLSessionConfiguration` for `SDWebImageDownloader` #1654
  87 +- Add `url` as param to progress block `SDWebImageDownloaderProgressBlock` - #984
79 88
80 #### Fixes: 89 #### Fixes:
81 90
82 - Fix multiple requests for same image and then canceling one #883 + 8a78586 91 - Fix multiple requests for same image and then canceling one #883 + 8a78586
83 - Fixed #1444 and the master build thanks to [@kenmaz](https://github.com/kenmaz/SDWebImage/commit/5034c334be50765dfe4e97c48bcb74ef64175188) 92 - Fixed #1444 and the master build thanks to [@kenmaz](https://github.com/kenmaz/SDWebImage/commit/5034c334be50765dfe4e97c48bcb74ef64175188)
84 - Fixed an issue with the `SDWebImageDownloaderOperation` : `cancelInternal` was not called because of the old mechanism rellying on the `thread` property - probably because that thread did not have a runloop. Removed that and now cancelInternal is called as expected f4bdae6 93 - Fixed an issue with the `SDWebImageDownloaderOperation` : `cancelInternal` was not called because of the old mechanism rellying on the `thread` property - probably because that thread did not have a runloop. Removed that and now cancelInternal is called as expected f4bdae6
85 - 94 +- Replaced #781 on replacing dispatch_sync with dispatch_async for the main queue 062e50a f7e8246 c77adf4 fdb8b2c 265ace4 0c47bc3. Check for main queue instead of main thread.
  95 +- Fixed #1619 iOS 10 crash (`setObjectForKey: object cannot be nil`) - #1676 7940577
  96 +- Fixed #1326 #1424 (`Carthage bitcode issue`) - #1593
  97 +- Fixed #1639 via #1657 (`Add support for downloading images behind redirect`)
  98 +- Replaced #1537 via 9cd6779 - fixed a potential retain cycle
  99 +- Updated `dispatch_main_async_safe` macro in order to avoid redefinition when included as Pod
  100 +- Fixed #1089 by updating the docs on the calling queue for the `progressBlock` (background queue)
  101 +- Fixed a compilation issue on `FLAnimatedImageView+WebCache` - #1687
86 102
87 ## [3.8.2 Patch release for 3.8.0 on Sep 5th, 2016](https://github.com/rs/SDWebImage/releases/tag/3.8.2) 103 ## [3.8.2 Patch release for 3.8.0 on Sep 5th, 2016](https://github.com/rs/SDWebImage/releases/tag/3.8.2)
88 104