Commit Graph

146 Commits

Author SHA1 Message Date
Kinarobin 959a1618cb Delete prepare shell when archive static library and update manual installation doc. (#2685)
* Delete prepare shell when archive static library and update manual installation Doc

* Update the Manual Install Guide, with both the Build SDWebImage as Framework or Static Library, as well as using SDWebImage as Sub Xcode Project

* Re-format the Manual Installation Guide to make it easy to read

* Updated to the latest Manual Install Guide

* Update the latest manual install guide
2019-04-10 16:45:48 +08:00
DreamPiggy 319322fbd5 Update the Readme, migration guide and API-diff to the latest version 2019-04-02 21:38:17 +08:00
DreamPiggy 110b49633f Fix the warning of deprecated project localization after upgrading Xcode 10.2 2019-03-26 18:03:14 +08:00
DreamPiggy 08c6e22906 Rename metamacro.h filename with SDmetamacro.h 2019-03-21 19:38:09 +08:00
DreamPiggy 367f4454b6 Add the private @weakify @strongify @onExit macros to simplify the code in implementation files 2019-03-21 19:38:09 +08:00
DreamPiggy 146530e1a2 Change the naming of private headers of internal methods, from `+Private.h` naming into `Internal.h` naming, follow other popular framework's naming rules 2019-03-10 10:53:46 +08:00
DreamPiggy 6bab2de69a Move some internal classes into private header files, make it easy to maintain the code 2019-03-09 15:25:44 +08:00
DreamPiggy cf0738abd9 Move the SDAsyncBlockOperation into the private header folder, this class is only used inside framework 2019-03-06 13:05:22 +08:00
DreamPiggy 2ce3b706c8 Fix the issue that SDWebImagePrefetch in 5.x, will submit all prefetch URLs to manager without any limit, which cause the disk cache query pending until all finished
Because they are implementation details, we can not always assume the cache and downloader use a load balancing algorithm
2019-03-03 16:52:44 +08:00
DreamPiggy b866c6aa97 Merge branch 'master' of https://github.com/SDWebImage/SDWebImage into 5.x
# Conflicts:
#	CHANGELOG.md
#	SDWebImage.podspec
#	SDWebImage.xcodeproj/project.pbxproj
#	SDWebImage/FLAnimatedImage/FLAnimatedImageView+WebCache.m
#	SDWebImage/SDImageCache.m
#	SDWebImage/SDWebImageDownloaderOperation.m
#	SDWebImage/UIView+WebCache.m
#	Tests/SDWebImage Tests.xcodeproj/project.pbxproj
2019-01-03 14:54:37 +08:00
DreamPiggy c95be0994e Update the category's naming for memory cache cost, a little code enhancement to avoid NSNumber generation 2019-01-03 12:08:18 +08:00
Bogdan Poplauschi edb9c45859 Xcode 10 - upgraded schemes, using xcode10 Travis image, removed some deprecated methods from our demos + formatting
Using xcconfig files - easier to maintain all the settings appart from target files, less conflicts, can reuse the values
2018-11-11 20:19:33 -06:00
zhongwuzw 3fbb7856e5 Transform protocol to category 2018-11-11 21:39:12 +08:00
DreamPiggy 025c5f833b Expose the all image graphics methods to public method, make it easy for coder plugin user to reuse it instead of duplicate code 2018-10-31 15:25:52 +08:00
Bogdan Poplauschi ae552f9350 Merged SDWebImage iOS + SDWebImage OSX + SDWebImage tvOS + SDWebImage watchOS targets into SDWebImage target (supports all platforms)
Merged SDWebImage iOS static + SDWebImage watchOS static targets into SDWebImage static target (supports all platforms)
Created dedicated SDWebImageMapKit target
All this is done for:
- ability to install via Carthage without MapKit dependency now we generate SDWebImage.framework and SDWebImageMapKit.framework so the users can choose to link against core or core+MapKit.
- simpler management of targets (no need to duplicate effort).
Replacement for #2078

Merged SDWebImage iOS + SDWebImage OSX + SDWebImage tvOS + SDWebImage watchOS targets into SDWebImage target (supports all platforms)
Merged SDWebImage iOS static + SDWebImage watchOS static targets into SDWebImage static target (supports all platforms)
Created dedicated SDWebImageMapKit target
All this is done for:
- ability to install via Carthage without MapKit dependency now we generate SDWebImage.framework and SDWebImageMapKit.framework so the users can choose to link against core or core+MapKit.
- simpler management of targets (no need to duplicate effort).
Replacement for #2078
2018-09-11 18:27:27 +03:00
Bogdan Poplauschi 64123734c3 Move webp component (and libwebp dependency) to SDWebImage/SDWebImageWebPCoder
- 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
2018-09-07 12:40:25 +03:00
DreamPiggy 982ade8824 Remove all FLAnimatedImage from the Core SDWebImage repo. Move the code to SDWebImageFLPlugin repo 2018-07-13 22:17:02 +08:00
DreamPiggy a82a4e15b2 Renaming UIImage+WebCache to the correct naming UIImage+Metadata, make clear of the category usage 2018-06-25 13:52:46 +08:00
DreamPiggy f96c94ef7d Renaming all `SDWebImageLoader` -> `SDImageLoader` 2018-06-06 14:41:44 +08:00
Bogdan Poplauschi ebfe2cedc2 Merge pull request #2306 from dreampiggy/renaming_coder_protocol_and_coders
Renaming coder protocol and coders
2018-04-26 19:08:34 +03:00
Bogdan Poplauschi 18ecf8f96e Merge pull request #2305 from dreampiggy/renaming_coder_helper
Renaming SDWebImageFrame & SDWebImageCoderHelper
2018-04-26 18:54:50 +03:00
DreamPiggy 6e5a0ea5f0 Rename Image/IO GIF APNG WebP coders to without `Web` prefix.
Rename `SDWebImageCodersManager` to `SDImageCodersManager`
2018-04-26 23:12:54 +08:00
DreamPiggy 15bceab71c Rename `SDWebImageCoder` to `SDImageCoder`.
Rename `SDWebImageProgressiveCoder` to `SDProgressiveImageCoder`
Rename `SDWebImageAnimatedCoder` to `SDAnimatedImageCoder`
2018-04-26 23:05:13 +08:00
DreamPiggy 9ee3dac978 Renaming `SDWebImageFrame` -> `SDImageFrame`. `SDWebImageCoderHelper` -> `SDImageCoderHelper` 2018-04-26 23:04:20 +08:00
DreamPiggy e862ea1b8e Rename all `SDWebImageTransformer` to `SDImageTransformer` 2018-04-26 23:03:44 +08:00
DreamPiggy f81480189d Add modulemap files for SDWebImage to support modular framework, move the WebP & GIF into subdirectory to make Podspec works 2018-04-19 17:25:39 +08:00
Bogdan Poplauschi af0eaccbc5 Merge pull request #2292 from dreampiggy/refactor_cache_webcache_protocol
Fix the custom cache protocol naming
2018-04-19 10:39:39 +03:00
Bogdan Poplauschi eded5f026c Merge pull request #2293 from dreampiggy/refactor_naming_NSImge_category
Renaming the NSImage category naming to `NSImage+Compatibility`
2018-04-19 10:26:51 +03:00
DreamPiggy 7cf58ad7c5 Renaming the NSImage category naming to `NSImage+Compatibility`, because it's only used for Cross-platform compatibility code. `Additions` is too wide 2018-04-18 21:14:34 +08:00
DreamPiggy 57db312cc5 Add `SDWebImageLoader` protocol for custom image loader. Also introduce the `SDWebImageLoadersManager` to manage multiple loaders with priority 2018-04-18 20:26:14 +08:00
DreamPiggy 734c6821d5 Rename the cache protocol to `SDImageCache` protocol 2018-04-18 19:24:23 +08:00
DreamPiggy bee5425078 Rename the caches manager without `Web` prefix 2018-04-18 19:24:22 +08:00
Bogdan Poplauschi 5426a720f7
Merge pull request #2278 from dreampiggy/refactor_cache_webcache_protocol
Refactor cache - Support custom web cache
2018-04-18 14:06:50 +03:00
DreamPiggy 9f770b6c19 Refactor to support custom image cache used for web manager. Supports caches manager with multiple caches and op policy 2018-04-18 14:40:56 +08:00
DreamPiggy 60d58ef977 Refactor all current custom error in SDWebImageErrorDomain with error code. Also using NS_ERROR_ENUM to provide better Swift API 2018-04-18 13:26:20 +08:00
Bogdan Poplauschi 1bc4662bde Merge pull request #2282 from dreampiggy/refactor_memory_cache_disk_cache
Refactor cache - Support custom memory cache & disk cache
2018-04-17 12:14:06 +03:00
DreamPiggy 62058d209d Add memory cache and disk cache protocol, make our image cache just like a wrapper to call the disk cache implementation 2018-04-17 11:09:56 +08:00
DreamPiggy 3d7896f663 Adopt the current cache key filter and cache serializer to support using in context options. Using a protocol based object store block instead block itself. 2018-04-14 18:18:45 +08:00
DreamPiggy 55256d0091 Use a protocol instance instead of block for request modifier. This can solve the problem that Swift user is hard to grab the block back stored in dictionary. 2018-04-07 15:56:34 +08:00
DreamPiggy c3892d7d08 Move all download settings into SDWebImageDownloaderConfig, make it more easy to use with clear API.
Deprecate `createNewSessionWithConfiguration`, which make downloader not sync with URLSession. If user need to specify sharedDownloader config, just modify the defaultDownloaderConfig instead.
2018-04-05 00:15:53 +08:00
DreamPiggy d5cc827bf8 Move the animated image files into single group 2018-03-29 20:28:50 +08:00
DreamPiggy 082c5af565 Add APNG coder to support static PNG & APNG rendering. Also update macOS's SDAnimatedImageRep 2018-03-29 17:45:56 +08:00
DreamPiggy 87bbcdc46f Introduce SDAnimatedImage and SDAnimatedImageView for high performance animated image rendering on iOS & macOS 2018-03-25 17:23:12 +08:00
DreamPiggy 464d725368 Adopt the transformer to cache & manager. Use a new context option SDWebImageContextCustomTransformer to bind the transformer
Drop old way of delegate method for transformer. Add two new delegate methods to allow advanced use case after we remove that.
2018-03-17 21:18:19 +08:00
DreamPiggy b4ea87f6c5 Add image transformer protocol and class. Add UIImage+Transformer category including common image geometry, tinting, blur effect processor. 2018-03-17 21:18:19 +08:00
DreamPiggy e7e3caae72 Merge branch 'master' of https://github.com/rs/SDWebImage into 5.x
* 'master' of https://github.com/rs/SDWebImage:
  Fix CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF warning
  Disable travis-ci email notification
  Fix prefetcher test to first clear the disk cache, and manager test to only fulfill the finished one
  Improve the travis-ci to not clean the build for dynamic framework to speed up the demo build
  Create a subclass of NSBitmapImageRep to fix the GIF frame duration issue on macOS
  Use lock instead of barrier queue to keep callbacks block thread-safe
  Decode the image in the operation level's queue instead of URLSession delegate queue. Because URLSession delegate queue is a barrier queue and shared between different operations
  Expose the read write to FLAnimatedImage associate to the UIImage to allow advanced feature like placeholder
  Fix that SDImageCacheQueryDataWhenInMemory should response cacheType to memory cache when the in-memory cache hit (#2218)
  Update the docs
  Improvement download operation for priority and some protect (#2208)
  Update the readme about macOS minimum deployment target version
  Fix the macOS wrong minimum deployment target version to 10.9. And also fix the warning on Xcode 9 by enable more warning options

# Conflicts:
#	SDWebImage.podspec
#	SDWebImage.xcodeproj/project.pbxproj
#	SDWebImage/SDImageCache.m
#	SDWebImage/SDWebImageDownloaderOperation.m
#	SDWebImage/SDWebImageFrame.h
2018-02-21 18:59:03 +08:00
DreamPiggy fc1fd0a74e Create a subclass of NSBitmapImageRep to fix the GIF frame duration issue on macOS 2018-02-18 17:52:13 +08:00
DreamPiggy e012b36679 Refactor the image indicator usage for UIView category. Use two protocol `SDWebImageIndicator` & `SDWebImageProgressIndicator` to make this more customizable. Implement two class about activity indicator and progress indicator for both UIKit/AppKit 2018-02-04 14:37:51 +08:00
DreamPiggy aacca305c0 Fix the macOS wrong minimum deployment target version to 10.9. And also fix the warning on Xcode 9 by enable more warning options 2018-02-01 13:20:55 +08:00
DreamPiggy f05a1bf96f Merge branch 'master' of https://github.com/rs/SDWebImage into 5.x
* 'master' of https://github.com/rs/SDWebImage:
  Update the comments and a little enhancement for FLAnimatedImageView Category
  Use a dispatch semaphore to keep thread safe for downloader because it need the hold cancel and add procedure be thread-safe
  Add the current image/alternateImage url for NSButton category. A little code refactoring
  Update macOS demo to add a clear cache button using NSButton category
  Fix that reset alternateImage cancel the image load operation for NSButton+WebCache
  Add WebCache category for NSButton on macOS
  A little enhancement to avoid block capture the heap object
  Use a internal method to avoid thread-safe issue for file manager. Remove that checkIOQueue and add sync version exist API
  Add the image transition argument for all UIView+WebCache, make this easy for user to do some fade transition. It also reuse the current setImageBlock and make it easy to customize

# Conflicts:
#	SDWebImage.xcodeproj/project.pbxproj
#	SDWebImage/SDImageCache.h
#	SDWebImage/SDImageCache.m
#	SDWebImage/UIView+WebCache.h
#	SDWebImage/UIView+WebCache.m
#	WebImage/SDWebImage.h
2018-01-26 22:19:55 +08:00