Riley Testut
2681cc3a8e
[AltStoreCore] Adds StoreApp.category + StoreCategory enum
2023-12-08 14:04:36 -06:00
Riley Testut
2d267a1e99
Switches from StoreApp.isBeta to isPledged to determine whether app is visible
...
If StoreApp.isHiddenWithoutPledge == false (default), we’ll still show the app.
2023-12-01 16:49:56 -06:00
Riley Testut
a1038d8850
Verifies StoreApp.isPledged status when updating source
2023-12-01 16:49:56 -06:00
Riley Testut
417837049f
[AltStoreCore] Updates StoreApp to support Patreon-exclusive apps
2023-12-01 16:49:56 -06:00
Riley Testut
cd67222237
Supports both iPhone + iPad screenshots
...
Prefers showing screenshots for current device, but falls back to all screenshots if there are no relevant ones.
2023-10-19 16:24:56 -05:00
Riley Testut
26a05d323f
[AltStoreCore] Adds AppScreenshot to support dynamically-sized screenshots
...
Preserves StoreApp.imageURL field in database model for backwards compatibility.
2023-10-11 15:05:27 -05:00
Riley Testut
d0eb2f2b0a
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
2023-10-10 14:47:00 -05:00
Riley Testut
d7bbf78b6b
[AltStoreCore] Fixes incorrectly merging permissions for same app from different sources
2023-05-30 15:28:49 -05:00
Riley Testut
13248c05e7
Revises appPermissions format in source JSON
...
Before, appPermissions was one array containing all permissions of different types.
Now, we split entitlement and privacy permissions into separate “entitlements” and “privacy” child arrays.
2023-05-30 12:57:45 -05:00
Riley Testut
ced82ef4e3
[AltStoreCore] Renames StoreApp.latestVersionString to _version
2023-05-18 15:54:13 -05:00
Riley Testut
e97e48ba13
Supports app versions with explicit build versions
...
AltStore will now consider an update available if either:
* The source’s marketing version doesn’t match installed app’s version
* The source declares a build version AND it doesn’t match the install app’s build version
The installed app matches an app version if both maketing versions match, and the build versions match (if provided by the source).
2023-05-18 15:48:17 -05:00
Riley Testut
45ed24bfb5
Verifies downloaded app’s permissions match source
...
Renames source JSON permissions key to “appPermissions” in order to preserve backwards compatibility, since we’ve changed the schema for permissions.
2023-05-12 18:26:24 -05:00
Riley Testut
3e3d9a45ed
[AltStoreCore] Fixes incorrectly merging app versions for same app from different sources
2023-04-04 17:50:06 -05:00
Riley Testut
6edd92da78
[AltStoreCore] Supports additional source JSON values for detailed “About” page
2023-04-04 14:19:49 -05:00
Riley Testut
f0a022c9ec
Replaces StoreApp.setVersions() preconditionFailure with runtime error
...
It’s more common than expected for apps to not have any app versions, so better to fail gracefully than crash.
2023-01-24 15:05:02 -06:00
Riley Testut
1cfd83bbb7
Hides app updates that don’t support device’s OS version
2023-01-24 15:03:09 -06:00
Riley Testut
3574ed2ed9
Removes unnecessary StoreApp convenience properties
2023-01-24 15:03:09 -06:00
Riley Testut
7ea1ad5af0
Replaces StoreApp.latestVersion with latestSupportedVersion + latestAvailableVersion
...
We now store the latest supported version as a relationship on StoreApp, rather than the latest available version. This allows us to reference the latest supported version in predicates and sort descriptors.
However, we kept the underlying Core Data property name the same to avoid extra migration.
2023-01-24 15:00:31 -06:00
Riley Testut
bcea3359ef
Migrates Core Data model from v10 to v11
2022-09-13 14:46:03 -07:00
Riley Testut
46cd2be37d
Supports new “versions” key in source JSON
...
Allows sources to list multiple versions of an app.
Preserves backwards compatibility by assigning legacy version values when assigning AppVersions.
2022-09-12 17:07:15 -07:00
Riley Testut
33674397b1
Adds AppVersion Core Data entity
...
Preserves redundant fields on StoreApp in database model for backwards compatibility.
2022-09-12 15:42:33 -07:00
Riley Testut
00439fe292
Adds LoggedError Core Data entity
...
Allows us to save certain errors to disk so that they can be viewed again later from an error log.
2022-09-08 16:15:16 -05:00
Riley Testut
3b45ab7f62
Updates AltSign dependency
2020-12-03 16:06:03 -06:00
Riley Testut
f1a39e1a1f
[AltStoreCore] Refactors core AltStore logic into AltStoreCore framework
...
AltStoreCore will contain all shared AltStore code between AltStore and any app extensions. Initially, it includes all AltStore model logic.
2020-09-03 16:39:08 -07:00