Commit Graph

131 Commits

Author SHA1 Message Date
Magesh K
1e29e3e713 [AltBackup+Schemes]: Fixes for URL schemes throughout both AltBackup and SideStore apps 2024-12-26 21:15:29 +05:30
Magesh K
6bcf82bf60 [cleanup]: Added TODOs in the comments 2024-12-26 21:15:29 +05:30
Magesh K
ebf148dfb9 [cleanup]: renamed identifiers from io.altstore.xxxx to io.sidestore.xxxx 2024-12-26 21:15:29 +05:30
Magesh K
904c23fd95 [altsign]: commented out code which requires release from altsign-marketplace branch 2024-12-26 21:15:29 +05:30
Magesh K
2f27328f54 clean-checkpoint-2-restore-missing 2024-12-26 21:15:29 +05:30
Magesh K
d43d1b9a9d clean-checkpoint-1 2024-12-26 21:15:29 +05:30
Riley Testut
ba3c4b528b [AltStoreCore] Migrates Core Data model from v16 to v17 2024-12-26 21:15:29 +05:30
Riley Testut
f29f466833 Throws error if marketplace app is missing buildVersion 2024-12-26 21:15:29 +05:30
Riley Testut
a9d55f0c91 Fixes “transformable properties not using secure transformer” runtime warnings 2024-12-26 21:15:29 +05:30
Riley Testut
d3ded82f16 Throws error when adding marketplace source to non-marketplace AltStore (and vice versa) 2024-12-26 21:15:29 +05:30
Riley Testut
b533ebcea0 Supports “custom” pledge amounts for Patreon apps 2024-12-26 21:15:29 +05:30
Riley Testut
6c02e51aba Uses alternate app icon for AltStore in My Apps, if one is chosen 2024-12-26 21:15:29 +05:30
Riley Testut
ff629ff74a [AltStoreCore] Migrates Core Data model from v15 to v16 2024-12-26 21:15:29 +05:30
Riley Testut
d6b27ac72b [AltStoreCore] Makes PledgeTier.name optional to match Patreon API 2024-12-26 21:15:29 +05:30
Riley Testut
a358602f05 [AltStoreCore] Fixes parsing Patreon responses containing tiers with null titles 2024-12-26 21:15:29 +05:30
Riley Testut
d7da6a09b4 Revert "Fixes always showing non-featured apps last in FeaturedViewController"
This reverts commit f76e3a12b6.

We’re not sure we want to commit to this behavior, so reverting for now.
2024-12-26 21:15:29 +05:30
Riley Testut
c9c5ce69f5 [AltStoreCore] Migrates Core Data model from v14 to v15 2024-12-26 21:15:29 +05:30
Riley Testut
a197a92280 Fixes always showing non-featured apps last in FeaturedViewController 2024-12-26 21:15:29 +05:30
Riley Testut
808c197117 Fixes showing “Update” for Patreon apps with inactive pledges 2024-12-26 21:15:29 +05:30
Riley Testut
04c0b07c54 Randomizes featured source + app order at app launch 2024-12-26 21:15:29 +05:30
Riley Testut
86ea72db9e Supports filtering apps in BrowseViewController by category 2024-12-26 21:15:29 +05:30
Riley Testut
027435edce [AltStoreCore] Adds StoreApp.category + StoreCategory enum 2024-12-26 21:15:29 +05:30
Riley Testut
3f56e84563 Changes NewsCollectionViewCell image aspect ratio to 3:2
Also updates fonts to use dynamic text styles.
2024-12-26 21:15:29 +05:30
Riley Testut
b5b645503e Supports updating apps from (almost) all AppBannerViews
Previously, you could only update apps from MyAppsViewController and AppViewController.
2024-12-26 21:15:29 +05:30
Riley Testut
60c33bb61e Fixes AltStore still being refreshing even after pledge expires 2024-12-26 21:15:29 +05:30
Riley Testut
fde9d41aa2 Limits installed Patreon apps that no longer have active pledge
Patreon apps with inactive pledges still support these actions:
* Backed up
* Deactivated
* Export backup
2024-12-26 21:15:29 +05:30
Riley Testut
919b38b37e Switches from StoreApp.isBeta to isPledged to determine whether app is visible
If StoreApp.isHiddenWithoutPledge == false (default), we’ll still show the app.
2024-12-26 21:15:29 +05:30
Riley Testut
9dc15389fd [AltStoreCore] Renames PatreonAccount.isPatron to isAltStorePatron 2024-12-26 21:15:29 +05:30
Riley Testut
97025b3730 [AltStoreCore] Adds AppProtocol.storeApp
Simplifies retrieving the associated StoreApp for an app.
2024-12-26 21:15:29 +05:30
Riley Testut
54d9cff53a Verifies StoreApp.isPledged status when updating source 2024-12-26 21:15:29 +05:30
Riley Testut
54909ca7e7 [AltStoreCore] Adds Pledge, PledgeReward, and PledgeTier
Allows us to cache pledges for current user, which can be used to determine if user has access to Patreon-only apps.
2024-12-26 21:15:29 +05:30
Riley Testut
8f6d8d5450 [AltStoreCore] Refactors PatreonAPI to reduce duplicate logic 2024-12-26 21:15:29 +05:30
Riley Testut
4ba44d8722 [AltStoreCore] Updates StoreApp to support Patreon-exclusive apps 2024-12-26 21:15:29 +05:30
Riley Testut
f96bcb7c71 [AltStoreCore] Generalizes Source.sourceID(from:) logic into URL.normalized()
Allows comparing URLs that may have slight (but irrelevant) differences (e.g. trailing slashes).
2024-12-26 21:15:29 +05:30
Riley Testut
561b59f63c [AltStoreCore] Migrates Core Data model from v13 to v14 2024-12-26 21:15:29 +05:30
Riley Testut
d21c746920 Replaces BrowseCollectionViewCell with AppCardCollectionViewCell
* Handles dynamic screenshot sizes
* Allows swiping through screenshots
* Supports iPhone + iPad screenshots
2024-12-26 21:15:29 +05:30
Riley Testut
a790bbf691 Supports both iPhone + iPad screenshots
Prefers showing screenshots for current device, but falls back to all screenshots if there are no relevant ones.
2024-12-26 21:15:29 +05:30
Riley Testut
422cde9706 Accurately displays dynamically-sized screenshots in AppViewController 2024-12-26 21:15:29 +05:30
Riley Testut
ee7d7343a9 [AltStoreCore] Adds AppScreenshot to support dynamically-sized screenshots
Preserves StoreApp.imageURL field in database model for backwards compatibility.
2024-12-26 21:15:29 +05:30
Riley Testut
faa4c0f17f [AltStoreCore] Generates Source.identifier from sourceURL 2024-12-26 21:15:29 +05:30
Riley Testut
5a8aab3f07 [AltStoreCore] Fixes ALTAppPrivacyPermission.synthesizedName for legacy permissions 2024-12-26 21:15:29 +05:30
Riley Testut
00bcdec0dc Revises appPermissions JSON format
• Split into `entitlements` and `privacy` sections
• `entitlements` is an array of entitlement keys
• `privacy` is a dictionary mapping UsageDescription keys to their descriptions
2024-12-26 21:15:29 +05:30
Riley Testut
2a0fdaace0 [AltStoreCore] Fixes DatabaseManager.startForPreview() deadlock 2024-12-26 21:15:29 +05:30
Riley Testut
b2258f32cb Refactors SourceViewController into dedicated tab
* Updates UI to use source icons + tint colors
* Adds Edit button + swipe actions
2024-12-26 21:15:29 +05:30
Riley Testut
79c7e994e8 [AltStoreCore] Adds Source.isRecommended
Also replaces legacy “Trusted Sources” references with “Recommended Sources”
2024-12-26 21:15:29 +05:30
Riley Testut
691d20ae0a [AltStoreCore] Updates DatabaseManager to support #Preview macro
Synchronously loads database via startForPreview(), and also erases database for DEBUG builds.
2024-12-26 21:15:29 +05:30
Riley Testut
19f2a3dd29 [AltStoreCore] Fixes “any ALTAppPermission cannot conform to 'Hashable’” Xcode 15 compiler error 2024-12-26 21:15:29 +05:30
Riley Testut
c78d359a07 [AltWidget] Adds interactive Active Apps widget to view + refresh all active apps (iOS 17+) 2024-12-26 21:15:29 +05:30
Riley Testut
d97f1315a6 [AltStoreCore] Updates AltStore12ToAltStore13 mapping model for latest model changes
* Non-optional AppPermission.usageDescription
* Non-optional AppPermission.appBundleID
* Added AppPermission.sourceID
2024-12-26 21:15:29 +05:30
Riley Testut
222617273c [AltStoreCore] Fixes incorrectly merging permissions for same app from different sources 2024-12-26 21:15:29 +05:30