DreamPiggy
720a0974d4
Fix SwiftPM issue
2023-01-10 12:49:20 +08:00
DreamPiggy
397f851240
Update test case
2023-01-09 22:14:53 +08:00
DreamPiggy
e21e9f19e6
Update Carthage project
2023-01-09 22:08:48 +08:00
DreamPiggy
e1e0841102
Rename the internal property to avoid misleading
2023-01-09 22:08:48 +08:00
DreamPiggy
007100d18f
Supports the old store cache API without context, which does not supports callback queue customization
2023-01-09 22:08:48 +08:00
DreamPiggy
1b086711ae
Fix the issue because of main queue label hack
2023-01-09 22:08:48 +08:00
DreamPiggy
43d74211c3
Added test case `testSDCallbackQueue`
2023-01-09 22:08:48 +08:00
DreamPiggy
90eeb4d830
Deprecate SDWebImagePrefetcher.delegateQueue, translate to use context[SDWebImageContextCallbackQueue] instead
2023-01-09 18:06:14 +08:00
DreamPiggy
5a4b4cf16d
Change the asyncSafe to the queue level configuration, introduce SDCallbackPolicy
2023-01-09 18:06:14 +08:00
DreamPiggy
67520b9f55
Fix the new added storeCache API which passing callbackQueue
2023-01-06 19:49:35 +08:00
DreamPiggy
fdd9a98210
Do not check nil block, useless in our use case
2023-01-06 19:36:03 +08:00
DreamPiggy
57403c9d3f
Rename to use `dispatch_block_t` alias
2023-01-06 19:09:39 +08:00
DreamPiggy
b5d712a378
Implements the Callback queue dispatch
...
Fix some missing components
2023-01-06 18:52:31 +08:00
DreamPiggy
43ec4726e1
Added context option `callbackQueue` for advanced user to control which queue to callback
...
This is used for user who call SDWebImage outside from main queue and need precise queue control, such as avoid chain queue blocking (like AVKit lazy load)
2023-01-04 18:47:50 +08:00
DreamPiggy
4178d12a44
Bumped version to 5.14.3
...
update CHANGELOG
2022-12-27 20:03:04 +08:00
DreamPiggy
8be9f2c3f9
Merge pull request #3461 from dreampiggy/bugfix/yuv420_jpeg_hevc
...
Fix the iOS 15+ force-decode hack break Apple's HEIF and JPEG YUV420 optimization
2022-12-27 19:57:48 +08:00
DreamPiggy
d2221403e1
Removed the unused options for CGImageSourceCopyPropertiesAtIndex
2022-12-27 19:55:12 +08:00
DreamPiggy
a53eb92988
Update the test case `test23ThatThumbnailEncodeCalculation`
...
This regression test should also been reverted
2022-12-27 19:23:58 +08:00
DreamPiggy
a99c0de68d
Fix the iOS 15+ force-decode hack break Apple's HEIF and JPEG YUV420 optimization
...
The lazyDecode logic effect the static image as well. Should roll back and only check for animated image
2022-12-27 18:58:21 +08:00
DreamPiggy
7bc087b081
Merge pull request #3460 from dreampiggy/feat/ioqueue_concurrent_config
...
Added `ioQueueAttributes` to use concurrent or control QoS for image cache internal IO Queue
2022-12-27 17:57:09 +08:00
DreamPiggy
ffc91663bf
Added test case `test48CacheUseConcurrentIOQueue`
2022-12-27 17:37:07 +08:00
DreamPiggy
c60e6714dd
Added `ioQueueAttributes` to use concurrent or control QoS for image cache internal IO Queue
2022-12-27 17:24:07 +08:00
DreamPiggy
0274aa85fe
Merge pull request #3452 from kinarobin/fetch-frame-early-for-animated-image-render
...
[Performance]when frame timestamp not reached, we should prefetch frame in advance for image render.
2022-12-27 16:51:54 +08:00
DreamPiggy
707db2e016
Merge pull request #3459 from dreampiggy/bugfix/player_cache_poster_image
...
The poster image should not trigger a frameChange callback
2022-12-27 15:47:17 +08:00
DreamPiggy
717461459f
Hack the first frame to ensure it always displayed in first screen refresh
2022-12-26 19:05:39 +08:00
DreamPiggy
b5db7fac68
The poster image should not trigger a frameChange callback
2022-12-26 18:53:55 +08:00
kinarobin
a15f594869
prefetch image in advance
2022-12-02 21:24:36 +08:00
DreamPiggy
3312bf5e67
Bumped version to 5.14.2
...
update CHANGELOG
2022-11-14 18:49:54 +08:00
DreamPiggy
430ef4d73c
Merge pull request #3443 from dreampiggy/project/move_assert_check_to_demo_tests
...
Move the SD_CHECK_CGIMAGE_RETAIN_SOURCE assertion to SDWebImage Demo and Tests only
2022-11-14 18:47:05 +08:00
DreamPiggy
9c0c715d6a
Move the SD_CHECK_CGIMAGE_RETAIN_SOURCE assertion to SDWebImage Demo and Tests only
...
This does not effects user who use this framework, only useful for ourselves to ensure Apple does not break our code
2022-11-14 17:07:29 +08:00
DreamPiggy
80683c20d8
Bumped version to 5.14.1
...
update CHANGELOG
2022-11-11 15:35:47 +08:00
DreamPiggy
a97d502304
Merge pull request #3439 from dreampiggy/bugfix/thread_safe_callback
...
Fix the missing lock for callbackTokens which may cause thread-safe issue
2022-11-11 15:30:36 +08:00
DreamPiggy
736f3f41f7
Move block before sending to the main queue
...
This can avoid some life cycle issue and increase performance
2022-11-11 14:29:20 +08:00
DreamPiggy
384b2d7c8b
Fix the missing lock for callbackTokens which may cause thread-safe issue
2022-11-11 14:22:49 +08:00
DreamPiggy
bc3f09ccbd
Merge pull request #3436 from dreampiggy/bugfix/ios16_pdf_use_coregraphics
...
Use CoreGraphics to decode PDF instead of ImageIO to solve iOS 16's issue
2022-11-11 14:17:17 +08:00
DreamPiggy
30f165abd5
Change from instance method to class method
2022-11-11 00:07:32 +08:00
DreamPiggy
f4706453d6
Use CoreGraphics to decode PDF instead of ImageIO to solve iOS 16's issue
...
We no longer use ImageIO to decode PDF, seems they don't maintain that kSDCGImageSourceRasterizationDPI
Copy the code from SDWebImagePDFCoder, need to update
2022-11-10 23:54:14 +08:00
DreamPiggy
8a26bb3f3d
Merge pull request #3434 from dreampiggy/bugfix/underlying_queue_crash_ios12
...
Fix the iOS 12 crash because the underlyingQueue is nil
2022-11-10 22:41:26 +08:00
DreamPiggy
d96ea392d1
Fix the iOS 12 crash because the underlyingQueue is nil
...
Use NSOperation dependency to solve this issue
2022-11-10 22:03:12 +08:00
DreamPiggy
b6aa428b7d
Bumped version to 5.14.0
...
update CHANGELOG
2022-11-08 22:48:52 +08:00
DreamPiggy
35b28d4179
Merge pull request #3430 from dreampiggy/feat/add_is_thumbnail
...
Added the helper convenient API `sd_isThumbnail`
2022-11-08 22:42:00 +08:00
DreamPiggy
bfa91a291b
Added the helper convenient API `sd_isThumbnail`
...
Fix the metadata does not saved
2022-11-08 22:40:36 +08:00
DreamPiggy
03b46475eb
Revert #2792 , the autoreleasepool does not solve the issue
2022-11-08 21:49:26 +08:00
DreamPiggy
6ce59aa8c1
Merge pull request #3429 from dreampiggy/perf/remove_conforms_to_protocol
...
Replace conformsToProtocol call with appropriate respondsToSelector check to improve performance
2022-11-08 21:44:07 +08:00
DreamPiggy
7ddf3214e6
Fix the test case again on below iOS 15
2022-11-08 21:18:20 +08:00
DreamPiggy
f8d353b50c
Update test case `test06ThatUsingACustomDownloaderOperationWorks`
2022-11-08 20:04:36 +08:00
DreamPiggy
9aa27b61e8
Replace conformsToProtocol call with appropriate respondsToSelector check
...
This effect API called with multiple times, for some one-time setup and important check, the conformsToProtocol is remained
2022-11-08 20:04:15 +08:00
DreamPiggy
359036eae9
Merge pull request #3428 from dreampiggy/opt/avoid_store_again_when_origin_disk_exits
...
Avoid store again when origin disk cache hit during Thumbnail or Transformer with smaller pixel size
2022-11-08 19:16:05 +08:00
DreamPiggy
6a9b578369
Added test case `test21ThatQueryOriginalDiskCacheFromThumbnailShouldNotWriteBackDiskCache`
2022-11-08 18:51:47 +08:00
riv1r
9599a78ff9
Fix del redundant autoreleasepool ( #3388 )
...
* fix:del redundant autoreleasepool, because frameProperties is not a __autoreleasing reference object, for-Loop does not cause untimely release
* fix:del redundant autoreleasepool, because frame is strongly referenced by frames, for-Loop does not cause untimely release
* fix:del redundant autoreleasepool, because sourceTileImageRef is released by CGImageRelease, for-Loop does not cause untimely release
Co-authored-by: chendongran06039 <chendongran06039@hellobike.com>
Co-authored-by: DreamPiggy <lizhuoli1126@126.com>
2022-11-08 17:29:49 +08:00