Twitter Image Pipline v2.23.1 Release Notes

    • ⚡️ Optimize the rendered cache unloading when clearMemoryCachesOnApplicationBackgroundEnabled is YES
      • When the app goes into the background, the rendered cache used to clear the oldest rendered images and just keep a max of 50% of the rendered cache capacity for when the app resumes
      • This was mostly effective for keeping the on screen images in cache avoiding any flashing UI, but had edge cases that could lead flashing or holding onto too much in memory that isn't needed for app resumes
      • Now, the rendered cache will turn each cache entry as weak and on app resume, these weak entries will be made strong again.
      • This will have the effect of all rendered cache images with no references being purged, but all those references being retained
      • Effectively, any UI that is holding the rendered images will keep those around for when the app resumes, making it seemless
      • For any UI that has unloaded its images when not visible, those images will be purged and will reload when the view becomes visible again
      • This works especially well with TIPImageViewFetchHelper when disappearanceBehavior is TIPImageViewDisappearanceBehaviorUnload or TIPImageViewDisappearanceBehaviorReplaceWithPlaceholder