Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/SDWebImage/SDWebImage

Asynchronous image downloader with cache support as a UIImageView category
https://github.com/SDWebImage/SDWebImage

Update test case for display link and revert the protect code

3440b7c0fbea6ba00acc5e8d0a4a59dc81ce5645 authored almost 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3497 from dreampiggy/bugfix/same_url_failed_callback_times

Fix the issue when multiple request for same url failed, the completedBlock will callback more t...

940f991ca1d6724aec2610af07d5e58608515997 authored almost 2 years ago by DreamPiggy <[email protected]>
Added test case `test31ThatMultipleRequestForSameURLFailedCallback` to ensure behavior

9bc52079792f2ab63bdb98d56578e42777ee4dff authored almost 2 years ago by DreamPiggy <[email protected]>
Fix the issue when multiple request for same url failed, the completedBlock will callback more times

b25864cc71560f5a0070b871ce337fde751431c0 authored almost 2 years ago by DreamPiggy <[email protected]>
Update README.md

Added the explanation for SD prefix

9cf8d125f522df0a7c3956f3828522ef2b6975fc authored almost 2 years ago by DreamPiggy <[email protected]>
Try to fix display link callback duration calculation issue, using next timestamp for iOS 10+ / watchOS, previous timestamp for iOS 9

271e8d8b12569b3af3c428ff2f8ca6913f6604d9 authored almost 2 years ago by DreamPiggy <[email protected]>
Fix macOS Demo applicationDidFinishLaunching not called

8bd4e72c331ff082a3add70a6e2dab206fcd6c08 authored almost 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3489 from SDWebImage/ci

Try to fix codecov upload issue using token

a47bc00770240901a1c99a26c0dad638fa899917 authored almost 2 years ago by DreamPiggy <[email protected]>
Try to fix codecov upload issue using token

205b57cc1df07c6f825c3739ad630a95913cbc6e authored almost 2 years ago by DreamPiggy <[email protected]>
Bumped version to 5.15.2

update CHANGELOG

7ccdcb02fb0ab47409a6602769cea0486be2a209 authored almost 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3484 from dreampiggy/garden/objc_bool_yes_no

Code garden to change Objc bool from true/false to YES/NO

2382c58421f86cd226a0b1eb4d590ef8f8d7a09a authored almost 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3483 from dreampiggy/bugfix/atomic_logic_fix

Fix the atomic logic between downloader and operation again

6b25d9854aef0a8a9df29d9ac69d8786a8f26f8d authored almost 2 years ago by DreamPiggy <[email protected]>
Change Objc BOOL true/false into correct YES/NO

f2d76101815904b9f82665f6ea7f1dbb4b5339a8 authored almost 2 years ago by DreamPiggy <[email protected]>
Fix the atomic logic between downloader and operation again

Remove the wrong logic to modify queue priority when re-use operation

7cec27bab922dc91a310dbb7ba5f3eb61a237ad3 authored almost 2 years ago by DreamPiggy <[email protected]>
Bumped version to 5.15.1

update CHANGELOG

1f48e5a37959de4ea240c12b68227c10f6c4d6e2 authored almost 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3480 from dreampiggy/bugfix/data_copy_crash

Remove the unused extra copy for `SDAnimatedImage` data initializer

eecc7e43800da45cc34e2814a99c298218c5b7ab authored almost 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3479 from dreampiggy/bugfix/fix_async_block_operation_race

Try to fix the SDAsyncBlockOperation's race condition

247cbcfd9729a4e9d1e06366be081bdaa9387b75 authored almost 2 years ago by DreamPiggy <[email protected]>
Remove the unused extra copy for `SDAnimatedImage` data initializer

fbe8880ab7277df8f4f54cc5ba6a41e3313db152 authored almost 2 years ago by DreamPiggy <[email protected]>
Try to fix the SDAsyncBlockOperation's race condition

Use the correct way for subclassing NSOperation

02969011b09a4af9a0d1dc0c45cd655fd599f82c authored almost 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3477 from dreampiggy/bugfix/ensure_downloader_callback_atomic

Ensure the Downloader and DownloaderOperation callback the completion in atomic and never miss one

a052164350a6542eb7245ed1341972b4d84623e0 authored almost 2 years ago by DreamPiggy <[email protected]>
Change all placeholder.com sample from http into https

1ec6cd06f70110daadffaeb7671fd15ee6f3d881 authored almost 2 years ago by DreamPiggy <[email protected]>
Added test case `test31ThatMultipleRequestForSameURLNeverSkipCallback` to ensure all download request for same url always callback

b6910be155de74fecd43992fceb99cd65157bd51 authored almost 2 years ago by DreamPiggy <[email protected]>
Revert back the NSOperationQueue, seems has better performance on this cases (may dispatch multiple block but not important, one finished is OK)

0c94e540bcded53fef6aba0ad3882844ab72a1ce authored almost 2 years ago by DreamPiggy <[email protected]>
Try not introduce new public API for operation, attach the `isCompleted` property using associated object from downloader, ensure compatibility

6e1fee7834276add072674f0802a824f8b040a41 authored almost 2 years ago by DreamPiggy <[email protected]>
Ensure the DownloaderOperation callback the completion in atomic and never miss one

The downloader will now check and ignore a `transferedDataFinished` operation (which is callback...

43b94130c7f94a497f39001f17a4fa2499c3874c authored almost 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3474 from dreampiggy/bugfix/atomic_fix

Avoid compiler generate the wrong property attribute with non-atomic

f25cc6bb1c595ef0165039360534d587e451ff8a authored almost 2 years ago by DreamPiggy <[email protected]>
Avoid compiler generate the wrong property attribute with non-atomic

a66ff8e5c9bfa32067c9f5c840efdb89d9104bad authored almost 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3473 from dreampiggy/bugfix/create_options

Fix the issue the fallback logic of ImageIO Source should avoid passing any UTI hint

8a6dcf88820754e529e22c054c160089ded6fece authored almost 2 years ago by DreamPiggy <[email protected]>
Fix the issue the fallback logic of ImageIO Source should avoid passing any UTI hint

a80af99d0af5873bf017ff15a89072ca1f20add9 authored almost 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3471 from GiddyGoatGaming/patch-1

Bump actions/checkout to v3

6f8121c604ce580c5968f117f8829ef0a83d3071 authored almost 2 years ago by DreamPiggy <[email protected]>
Bump actions/checkout to v3

5b34168e645618f4d97f46d5fd6c8d40b2834b98 authored almost 2 years ago by Spencer Comfort <[email protected]>
Bumped version to 5.15.0

update CHANGELOG

6c6b951845a520fa7e8356e28adb5339c0f008d3 authored almost 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3469 from dreampiggy/feat/animated_image_encode

Added encodeWithFrames API for animation encoding in custom coder, better for usage

975502b4a6dc9629027fc08ff085bc97efb1d7d6 authored almost 2 years ago by DreamPiggy <[email protected]>
Update test case

9dd8b6c08b2d70103741044bfbee78eac2f7bacf authored almost 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3468 from dreampiggy/feat/decode_solution_change

Update the decode solution to allows CoreGraphics avoid using any UIKit method

a01715e19605bc8d657174d553fd3781c01a74ef authored almost 2 years ago by DreamPiggy <[email protected]>
Change the immutable frames array

0bdb7865c77599803a55966816d232a02576096f authored almost 2 years ago by DreamPiggy <[email protected]>
Opt the macOS legacy animated encode, with the weak assigned frames to avoid re-decode again

It's still recommended to use the new API

985c84be75530dc18e999cc42b050ba700d08226 authored almost 2 years ago by DreamPiggy <[email protected]>
Added encodeWithFrames API for animation encoding in custom coder, better for usage

The exist API need wrap the frames into a new image and extract, consume RAM and CPU

8ec3bc83d7c13828abed5efb63fb2dc212ca69da authored almost 2 years ago by DreamPiggy <[email protected]>
Update the decode solution to allows CoreGraphics avoid using any UIKit method

This is back compatible to old version's RAM behavior

c0f70234725b7a9f49a3489c17b66e8834f26687 authored almost 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3466 from dreampiggy/feat/encode_options

Added `SDWebImageContextImageEncodeOptions` to pass encode options like compression quality to S...

7c63bad41c0cde5ccc023f70a61ef434c726da4c authored almost 2 years ago by DreamPiggy <[email protected]>
Fix the wrong test because now ioQueue and encodeQueue is different thing, we should not assume calling storeImage and queryDiskCache get the data (they are not guarded by the same serial queue)

911a9a86a0392231155990b4b67f7b29c9ef51d3 authored almost 2 years ago by DreamPiggy <[email protected]>
Fix the wrong behavior after 5.15.0 cache changes

e083ab293fc591526805d95d1ae9f431252747e6 authored almost 2 years ago by DreamPiggy <[email protected]>
Update test case test08ThatImageTransformerWork with encode options

78fa0a9cb5a7eedfe82a0a5b3aea2ebff0ed5100 authored almost 2 years ago by DreamPiggy <[email protected]>
Adjustment for manager && cache call, add deprecation

08ec6cf2534388b5d41f90501e9b1a20301213a8 authored almost 2 years ago by DreamPiggy <[email protected]>
Change the cache's encoding in global queue to avoid block ioQueue for IO read/write, performance related

246cfa935d326ee7dc8a6898f4377c814175e942 authored almost 2 years ago by DreamPiggy <[email protected]>
Added `SDWebImageContextImageEncodeOptions` to pass encode options like compression quality to SDImageCache storeImage API

d93a08fc917e251497173388a8e2b0744f96a5da authored almost 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3465 from dreampiggy/feat/callback_queue

Added context option `callbackQueue` and `SDCallbackQueue` wrapper for advanced user to control ...

05f7fb9b0d96696e31bdbb0bd3928183f151dbef authored almost 2 years ago by DreamPiggy <[email protected]>
Fix SwiftPM issue

720a0974d48e83797a1d654191d585eaef74f01d authored about 2 years ago by DreamPiggy <[email protected]>
Update test case

397f8512403e28f0f79e9fa20e3f2d256b2ed0fd authored about 2 years ago by DreamPiggy <[email protected]>
Update Carthage project

e21e9f19e61efcf29bb2edf0ded2b77ee5c8002a authored about 2 years ago by DreamPiggy <[email protected]>
Added test case `testSDCallbackQueue`

43d74211c3bce2964f28668e9d0f5c4498280851 authored about 2 years ago by DreamPiggy <[email protected]>
Rename the internal property to avoid misleading

e1e0841102c60101ebd37acee6dbe1837ebd9a42 authored about 2 years ago by DreamPiggy <[email protected]>
Supports the old store cache API without context, which does not supports callback queue customization

007100d18ff5aec992a81581ab23ab9f774e80d5 authored about 2 years ago by DreamPiggy <[email protected]>
Fix the issue because of main queue label hack

1b086711aedc4a66c80ae39cb3fd3d794190396f authored about 2 years ago by DreamPiggy <[email protected]>
Deprecate SDWebImagePrefetcher.delegateQueue, translate to use context[SDWebImageContextCallbackQueue] instead

90eeb4d8306470eb178bafce8c3a0be7b6e4a82d authored about 2 years ago by DreamPiggy <[email protected]>
Change the asyncSafe to the queue level configuration, introduce SDCallbackPolicy

5a4b4cf16db34328b4e6ddad41fa3e095c3f8efb authored about 2 years ago by DreamPiggy <[email protected]>
Fix the new added storeCache API which passing callbackQueue

67520b9f55b064ab8e63d55eddd0e97a2bf34e58 authored about 2 years ago by DreamPiggy <[email protected]>
Do not check nil block, useless in our use case

fdd9a98210f2591901a57eff51c539d61bbcc06f authored about 2 years ago by DreamPiggy <[email protected]>
Rename to use `dispatch_block_t` alias

57403c9d3fb5ebf14dbfad843e0fa9cf026917f2 authored about 2 years ago by DreamPiggy <[email protected]>
Implements the Callback queue dispatch

Fix some missing components

b5d712a3783911ed427faef1903c6aa54fd0aa56 authored about 2 years ago by DreamPiggy <[email protected]>
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...

43ec4726e112ce7cb85b28b3751f1e07492801ef authored about 2 years ago by DreamPiggy <[email protected]>
Bumped version to 5.14.3

update CHANGELOG

4178d12a44691182c2eb79c70281b14cb73f4cbf authored about 2 years ago by DreamPiggy <[email protected]>
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

8be9f2c3f93142362e94117ef2cdbf019dbb4976 authored about 2 years ago by DreamPiggy <[email protected]>
Removed the unused options for CGImageSourceCopyPropertiesAtIndex

d2221403e10fb9c6d8f10141db98aaaaf1f88679 authored about 2 years ago by DreamPiggy <[email protected]>
Update the test case `test23ThatThumbnailEncodeCalculation`

This regression test should also been reverted

a53eb929886b11658bac15f5908021c61ee340c1 authored about 2 years ago by DreamPiggy <[email protected]>
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 animat...

a99c0de68d58cb68257b449c2c835ebdabb2f61a authored about 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3460 from dreampiggy/feat/ioqueue_concurrent_config

Added `ioQueueAttributes` to use concurrent or control QoS for image cache internal IO Queue

7bc087b081e28cf42b65ef10c3c718ce1697df44 authored about 2 years ago by DreamPiggy <[email protected]>
Added test case `test48CacheUseConcurrentIOQueue`

ffc91663bf6c85e54faecd5f8dd2196b56e529fe authored about 2 years ago by DreamPiggy <[email protected]>
Added `ioQueueAttributes` to use concurrent or control QoS for image cache internal IO Queue

c60e6714dd34af904065bad943ea868dbd3a40b2 authored about 2 years ago by DreamPiggy <[email protected]>
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 ren...

0274aa85fe69a997eae3a4de9275225762d56a22 authored about 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3459 from dreampiggy/bugfix/player_cache_poster_image

The poster image should not trigger a frameChange callback

707db2e01669605602d72e50a8454e7782a4e789 authored about 2 years ago by DreamPiggy <[email protected]>
Hack the first frame to ensure it always displayed in first screen refresh

717461459fe51ad7eda1f804e50d3c417c92cbfd authored about 2 years ago by DreamPiggy <[email protected]>
The poster image should not trigger a frameChange callback

b5db7fac682c3c4d7af8a9188cafce20f301a47d authored about 2 years ago by DreamPiggy <[email protected]>
prefetch image in advance

a15f594869f8ea56f86d77a30fc7678d5f8bd01d authored about 2 years ago by kinarobin <[email protected]>
Bumped version to 5.14.2

update CHANGELOG

3312bf5e67b52fbce7c3caf431b0cda721a9f7bb authored about 2 years ago by DreamPiggy <[email protected]>
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

430ef4d73ca268d8efcefad08d3ac020af91c750 authored about 2 years ago by DreamPiggy <[email protected]>
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 doe...

9c0c715d6aba8bfaec5f5440c4e2cd581b321bae authored about 2 years ago by DreamPiggy <[email protected]>
Bumped version to 5.14.1

update CHANGELOG

80683c20d8f15e10ac1ce605cca5008a295846bd authored about 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3439 from dreampiggy/bugfix/thread_safe_callback

Fix the missing lock for callbackTokens which may cause thread-safe issue

a97d5023041ff0cf59f25d07dfbf78fd68d90036 authored about 2 years ago by DreamPiggy <[email protected]>
Move block before sending to the main queue

This can avoid some life cycle issue and increase performance

736f3f41f74c70a5c82546238cc25d377cb51436 authored about 2 years ago by DreamPiggy <[email protected]>
Fix the missing lock for callbackTokens which may cause thread-safe issue

384b2d7c8be97bb52eed789662b4b97f5a58ab17 authored about 2 years ago by DreamPiggy <[email protected]>
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

bc3f09ccbd4b09d343c86e9071029946ac34313f authored about 2 years ago by DreamPiggy <[email protected]>
Change from instance method to class method

30f165abd5444cf83a8e30f239139c820dd926e6 authored about 2 years ago by DreamPiggy <[email protected]>
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 kSDCGImageSourceRasteriza...

f4706453d6de61b2b397e1fee26d517cd9f4e6b3 authored about 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3434 from dreampiggy/bugfix/underlying_queue_crash_ios12

Fix the iOS 12 crash because the underlyingQueue is nil

8a26bb3f3d22dd503052834fb6c82eff98b4f7aa authored about 2 years ago by DreamPiggy <[email protected]>
Fix the iOS 12 crash because the underlyingQueue is nil

Use NSOperation dependency to solve this issue

d96ea392d16b509a9c63ccee61ae6d28b0b36d08 authored about 2 years ago by DreamPiggy <[email protected]>
Bumped version to 5.14.0

update CHANGELOG

b6aa428b7d01a36e7857b09b4acb320ad7ee5170 authored about 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3430 from dreampiggy/feat/add_is_thumbnail

Added the helper convenient API `sd_isThumbnail`

35b28d417938a712b2e4af4fcf5331d43349e16c authored about 2 years ago by DreamPiggy <[email protected]>
Added the helper convenient API `sd_isThumbnail`

Fix the metadata does not saved

bfa91a291bd530048f8546e782d9f45941550e55 authored about 2 years ago by DreamPiggy <[email protected]>
Revert #2792, the autoreleasepool does not solve the issue

03b46475eb95d96cc7159f7ae47de3507fa1c603 authored about 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3429 from dreampiggy/perf/remove_conforms_to_protocol

Replace conformsToProtocol call with appropriate respondsToSelector check to improve performance

6ce59aa8c118c19a497f712a7bc97e7479238ee7 authored about 2 years ago by DreamPiggy <[email protected]>
Fix the test case again on below iOS 15

7ddf3214e6529471c352dc61db26ad8fb3c957c6 authored about 2 years ago by DreamPiggy <[email protected]>
Update test case `test06ThatUsingACustomDownloaderOperationWorks`

f8d353b50ca1356e385ba9e3b3751bd1f7fe3875 authored about 2 years ago by DreamPiggy <[email protected]>
Replace conformsToProtocol call with appropriate respondsToSelector check

This effect API called with multiple times, for some one-time setup and important check, the con...

9aa27b61e8573fac9259fa6e99d2feb299a109ae authored about 2 years ago by DreamPiggy <[email protected]>
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 ...

359036eae97b456cceedfa2b0fa101820bb4040c authored about 2 years ago by DreamPiggy <[email protected]>
Added test case `test21ThatQueryOriginalDiskCacheFromThumbnailShouldNotWriteBackDiskCache`

6a9b578369595eea596abc2f2c5c94dcf5de298a authored about 2 years ago by DreamPiggy <[email protected]>
Fix del redundant autoreleasepool (#3388)

* fix:del redundant autoreleasepool, because frameProperties is not a __autoreleasing reference ...

9599a78ff99b32021c012a014397e5562399c4da authored about 2 years ago by riv1r <[email protected]>
Avoid store original disk cache again when using thumbnail or transformer from the full size data

This solve #3395

f93cf968327635b61bf0a9fac5cc0de0dcc398ec authored about 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3427 from dreampiggy/bugfix/logic_nullable_check

Add the possible nullable logic check when the force-decode/copy failed

5a89f80816729be295915e9edad2712d748f4438 authored about 2 years ago by DreamPiggy <[email protected]>
Merge pull request #3426 from dreampiggy/bugfix/UTI_hint_ignore_dynamic_log

Ignore the dynamic UTI type hint to avoid extra log

cdd77d5ebeab885b85f8df1342480eeeab295a52 authored about 2 years ago by DreamPiggy <[email protected]>