diff --git a/CHANGELOG.md b/CHANGELOG.md
index d77da0c7..ebd41ede 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,4 @@
-## [5.0.0 Major release - Customizable SDWebImage, on Mar 31th, 2019](https://github.com/rs/SDWebImage/releases/tag/5.0.0)
+## [5.0.0 Major release - Customizable SDWebImage, on Apr 2nd, 2019](https://github.com/rs/SDWebImage/releases/tag/5.0.0)
See [all tickets marked for the 5.0.0 release](https://github.com/SDWebImage/SDWebImage/milestone/15)
### Features
diff --git a/Docs/API-Diff/5.0/apidiff.html b/Docs/API-Diff/5.0/apidiff.html
index e1820677..23548b60 100644
--- a/Docs/API-Diff/5.0/apidiff.html
+++ b/Docs/API-Diff/5.0/apidiff.html
@@ -517,6 +517,7 @@
Added SDImageLoader
Added -[SDImageLoader canRequestImageForURL:]
Added -[SDImageLoader requestImageWithURL:options:context:progress:completed:]
+Added -[SDImageLoader shouldBlockFailedURLWithURL:error:]
@@ -770,6 +771,34 @@
+
Modified SDWebImageDownloadStartNotification
+
+ | Declaration |
+From | NSString *const _Nonnull SDWebImageDownloadStartNotification |
+To | NSNotificationName _Nonnull const SDWebImageDownloadStartNotification |
+
+
+
Modified SDWebImageDownloadReceiveResponseNotification
+
+ | Declaration |
+From | NSString *const _Nonnull SDWebImageDownloadReceiveResponseNotification |
+To | NSNotificationName _Nonnull const SDWebImageDownloadReceiveResponseNotification |
+
+
+
Modified SDWebImageDownloadStopNotification
+
+ | Declaration |
+From | NSString *const _Nonnull SDWebImageDownloadStopNotification |
+To | NSNotificationName _Nonnull const SDWebImageDownloadStopNotification |
+
+
+
Modified SDWebImageDownloadFinishNotification
+
+ | Declaration |
+From | NSString *const _Nonnull SDWebImageDownloadFinishNotification |
+To | NSNotificationName _Nonnull const SDWebImageDownloadFinishNotification |
+
+
Modified SDWebImageDownloaderProgressBlock
| Declaration |
diff --git a/Docs/SDWebImage-5.0-Migration-guide.md b/Docs/SDWebImage-5.0-Migration-guide.md
index b71060b7..5c56755d 100644
--- a/Docs/SDWebImage-5.0-Migration-guide.md
+++ b/Docs/SDWebImage-5.0-Migration-guide.md
@@ -108,6 +108,15 @@ prefetcher.cancelPrefetching()
prefetcher.prefetchURLs([url1, url2])
```
+#### Error codes and domain
+For image loading from network, if you don't pass `SDWebImageRetryFailed` option, we'll try to blocking some URLs which is indeed mark as failed.
+
+This check is done previously in a hard-coded logic for specify error codes. However, due to some compatible issue, we don't check the error domain. (Learn about [NSError's domain and codes](https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/ErrorHandlingCocoa/ErrorObjectsDomains/ErrorObjectsDomains.html)) And arbitrarily block some codes which may from custom download operation implementations.
+
+Since in 5.x, we supports custom loaders which can use any third-party SDKs, and have their own error domain and error codes. So we now only filter the error codes in [NSURLErrorDomain](https://developer.apple.com/documentation/foundation/nsurlerrordomain). If you have already using some error codes without error domain check, or you use [Custom Download Operation](https://github.com/SDWebImage/SDWebImage/wiki/Advanced-Usage#custom-download-operation-40), be sure to update it with the right way.
+
+At the same time, our framework errors, now using the formal `SDWebImageErrorDomain` with the pre-defined codes. Check `SDWebImageError.h` for details.
+
### API Changes
#### SDImageCache
diff --git a/README.md b/README.md
index f245dbaa..083e0282 100644
--- a/README.md
+++ b/README.md
@@ -42,9 +42,10 @@ As such, we have moved/built new modules to [SDWebImage org](https://github.com/
#### Coders for additional image formats
- [SDWebImageWebPCoder](https://github.com/SDWebImage/SDWebImageWebPCoder) - coder for WebP image format. Based on [libwebp](https://chromium.googlesource.com/webm/libwebp)
-- [SDWebImageHEIFCoder](https://github.com/SDWebImage/SDWebImageHEIFCoder) - coder to support HEIF image without Apple's `Image/IO framework`
-- [SDWebImageAPNGCoder](https://github.com/SDWebImage/SDWebImageAPNGCoder) - coder for APNG format (animated PNG)
+- [SDWebImageHEIFCoder](https://github.com/SDWebImage/SDWebImageHEIFCoder) - coder to support HEIF image without Apple's `Image/IO framework`, iOS 8+/macOS 10.10+ support.
- [SDWebImageBPGCoder](https://github.com/SDWebImage/SDWebImageBPGCoder) - coder for BPG format
+- [SDWebImageFLIFCoder](https://github.com/SDWebImage/SDWebImageFLIFCoder) - coder for FLIF format
+- and more from community!
#### Loaders
- [SDWebImagePhotosPlugin](https://github.com/SDWebImage/SDWebImagePhotosPlugin) - plugin to support loading images from Photos (using `Photos.framework`)
@@ -59,12 +60,6 @@ As such, we have moved/built new modules to [SDWebImage org](https://github.com/
You can use those directly, or create similar components of your own.
-## Beta version
-
-SDWebImage's 5.0 version is nearing completion. Which introduce many new features like Animated ImageView and Transformer. We also provide a more modularized design used for advanced user customization.
-
-You can check the latest [5.x branch](https://github.com/SDWebImage/SDWebImage/tree/5.x) to know about the current status. We'd love you to have a try with the beta version and provide any feedback. If you'd love, check [SDWebImage 5.0 Migration Guide](https://github.com/SDWebImage/SDWebImage/wiki/5.0-Migration-guide) and prepare for the migration.
-
## Requirements
- iOS 8.0 or later
@@ -108,7 +103,7 @@ You can check the latest [5.x branch](https://github.com/SDWebImage/SDWebImage/t
* Objective-C
```objective-c
-#import
+#import
...
[imageView sd_setImageWithURL:[NSURL URLWithString:@"http://www.domain.com/path/to/image.jpg"]
placeholderImage:[UIImage imageNamed:@"placeholder.png"]];
@@ -200,10 +195,10 @@ If this is your first time using Carthage in the project, you'll need to go thro
### Import headers in your source files
-In the source files where you need to use the library, import the header file:
+In the source files where you need to use the library, import the umbrella header file:
```objective-c
-#import
+#import
```
### Build Project
diff --git a/SDWebImage.xcodeproj/project.pbxproj b/SDWebImage.xcodeproj/project.pbxproj
index ff59b89b..eff850c9 100644
--- a/SDWebImage.xcodeproj/project.pbxproj
+++ b/SDWebImage.xcodeproj/project.pbxproj
@@ -59,10 +59,8 @@
325312D0200F09910046BF1E /* SDWebImageTransition.m in Sources */ = {isa = PBXBuildFile; fileRef = 325312C7200F09910046BF1E /* SDWebImageTransition.m */; };
3257EAF921898AED0097B271 /* SDImageGraphics.h in Headers */ = {isa = PBXBuildFile; fileRef = 3257EAF721898AED0097B271 /* SDImageGraphics.h */; settings = {ATTRIBUTES = (Public, ); }; };
3257EAFA21898AED0097B271 /* SDImageGraphics.h in Headers */ = {isa = PBXBuildFile; fileRef = 3257EAF721898AED0097B271 /* SDImageGraphics.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 3257EAFB21898AED0097B271 /* SDImageGraphics.h in Headers */ = {isa = PBXBuildFile; fileRef = 3257EAF721898AED0097B271 /* SDImageGraphics.h */; settings = {ATTRIBUTES = (Public, ); }; };
3257EAFC21898AED0097B271 /* SDImageGraphics.m in Sources */ = {isa = PBXBuildFile; fileRef = 3257EAF821898AED0097B271 /* SDImageGraphics.m */; };
3257EAFD21898AED0097B271 /* SDImageGraphics.m in Sources */ = {isa = PBXBuildFile; fileRef = 3257EAF821898AED0097B271 /* SDImageGraphics.m */; };
- 3257EAFE21898AED0097B271 /* SDImageGraphics.m in Sources */ = {isa = PBXBuildFile; fileRef = 3257EAF821898AED0097B271 /* SDImageGraphics.m */; };
325C460222339330004CAE11 /* SDImageAssetManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 325C460022339330004CAE11 /* SDImageAssetManager.h */; settings = {ATTRIBUTES = (Private, ); }; };
325C460322339330004CAE11 /* SDImageAssetManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 325C460022339330004CAE11 /* SDImageAssetManager.h */; settings = {ATTRIBUTES = (Private, ); }; };
325C460422339330004CAE11 /* SDImageAssetManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 325C460122339330004CAE11 /* SDImageAssetManager.m */; };
@@ -843,7 +841,6 @@
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
- 3257EAFB21898AED0097B271 /* SDImageGraphics.h in Headers */,
806BE07E2142C65200E02143 /* SDWebImageMapKit.h in Headers */,
80B6DFCD2142B71600BCB334 /* MKAnnotationView+WebCache.h in Headers */,
);
@@ -1105,7 +1102,6 @@
buildActionMask = 2147483647;
files = (
80B6DFA72142B71600BCB334 /* MKAnnotationView+WebCache.m in Sources */,
- 3257EAFE21898AED0097B271 /* SDImageGraphics.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};