[PR #624] [MERGED] New Cache System #1687

Closed
opened 2026-03-03 19:08:23 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/PlayCover/PlayCover/pull/624
Author: @amirsaam
Created: 12/24/2022
Status: Merged
Merged: 12/29/2022
Merged by: @Depal1

Base: developHead: New-Cache-System


📝 Commits (10+)

  • 6901c86 New Cache System
  • e5230f5 Update README.md
  • add4d95 Update Localizable.strings
  • ba0ffa9 Update Cacher.swift
  • 40ed7a2 Update MenuBarView.swift
  • 5bdc9e2 Merge branch 'develop' into New-Cache-System
  • 163e8ab Merge branch 'PlayCover:develop' into New-Cache-System
  • 178aaf2 Merge branch 'PlayCover:develop' into New-Cache-System
  • dea4b1e load time fix
  • 1a16eea code cleanup

📊 Changes

10 files changed (+233 additions, -237 deletions)

View changed files

📝 PlayCover.xcodeproj/project.pbxproj (+38 -4)
📝 PlayCover/Model/ITunesResponse.swift (+20 -2)
PlayCover/Utils/Cacher.swift (+55 -0)
PlayCover/Utils/ImageCache.swift (+0 -166)
📝 PlayCover/Views/App Views/PlayAppView.swift (+37 -26)
📝 PlayCover/Views/App Views/StoreAppView.swift (+52 -25)
📝 PlayCover/Views/AppSettingsView.swift (+17 -12)
📝 PlayCover/Views/MenuBarView.swift (+11 -1)
📝 PlayCover/en.lproj/Localizable.strings (+1 -1)
📝 README.md (+2 -0)

📄 Description

  • New Cacher class has been introduced in Cacher.swift that uses DataCache package
  • Removed ImageCache class and rewrote the logic and reworked all usages of it
  • Exposed getITunesData function so any part of PlayCover can use it as a function as it should not be in a class that is unrelated to its functionality
  • Online Images now are being cached via CachedAsyncImage package that uses URLCache as memory
  • Installed app icons extracted as NSImage and will be updated on each update (fixes old ImageCache bug)

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/PlayCover/PlayCover/pull/624 **Author:** [@amirsaam](https://github.com/amirsaam) **Created:** 12/24/2022 **Status:** ✅ Merged **Merged:** 12/29/2022 **Merged by:** [@Depal1](https://github.com/Depal1) **Base:** `develop` ← **Head:** `New-Cache-System` --- ### 📝 Commits (10+) - [`6901c86`](https://github.com/PlayCover/PlayCover/commit/6901c86fcdcfb79017c0232f32497e9f29aac9ee) New Cache System - [`e5230f5`](https://github.com/PlayCover/PlayCover/commit/e5230f544daf08d00b8e72af98d4c84343570849) Update README.md - [`add4d95`](https://github.com/PlayCover/PlayCover/commit/add4d9564e22ebdff9cfda8b29078f6074b67fdc) Update Localizable.strings - [`ba0ffa9`](https://github.com/PlayCover/PlayCover/commit/ba0ffa9dcae5e2a7772607f35077c733e60d2fbd) Update Cacher.swift - [`40ed7a2`](https://github.com/PlayCover/PlayCover/commit/40ed7a2ace239c509d7c6d938766055056f9ab44) Update MenuBarView.swift - [`5bdc9e2`](https://github.com/PlayCover/PlayCover/commit/5bdc9e21995b893cd97dce0cf08a32eabb12c9ae) Merge branch 'develop' into New-Cache-System - [`163e8ab`](https://github.com/PlayCover/PlayCover/commit/163e8ab461c3c1bae6f0a7a0f42c4e21714722ee) Merge branch 'PlayCover:develop' into New-Cache-System - [`178aaf2`](https://github.com/PlayCover/PlayCover/commit/178aaf21fd5cfb518bfd0e43f3e9a23e1cf3f6ff) Merge branch 'PlayCover:develop' into New-Cache-System - [`dea4b1e`](https://github.com/PlayCover/PlayCover/commit/dea4b1e07b68169bd36087717590bfbacf5c4e40) load time fix - [`1a16eea`](https://github.com/PlayCover/PlayCover/commit/1a16eea537515f8d652c21dff5008b9ccaed2274) code cleanup ### 📊 Changes **10 files changed** (+233 additions, -237 deletions) <details> <summary>View changed files</summary> 📝 `PlayCover.xcodeproj/project.pbxproj` (+38 -4) 📝 `PlayCover/Model/ITunesResponse.swift` (+20 -2) ➕ `PlayCover/Utils/Cacher.swift` (+55 -0) ➖ `PlayCover/Utils/ImageCache.swift` (+0 -166) 📝 `PlayCover/Views/App Views/PlayAppView.swift` (+37 -26) 📝 `PlayCover/Views/App Views/StoreAppView.swift` (+52 -25) 📝 `PlayCover/Views/AppSettingsView.swift` (+17 -12) 📝 `PlayCover/Views/MenuBarView.swift` (+11 -1) 📝 `PlayCover/en.lproj/Localizable.strings` (+1 -1) 📝 `README.md` (+2 -0) </details> ### 📄 Description - New `Cacher` class has been introduced in `Cacher.swift` that uses `DataCache` package - Removed `ImageCache` class and rewrote the logic and reworked all usages of it - Exposed `getITunesData` function so any part of PlayCover can use it as a function as it should not be in a class that is unrelated to its functionality - Online Images now are being cached via CachedAsyncImage package that uses URLCache as memory - Installed app icons extracted as NSImage and will be updated on each update (fixes old `ImageCache` bug) --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-03 19:08:23 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/PlayCover#1687
No description provided.