Commit Graph

1476 Commits

Author SHA1 Message Date
Riley Testut
a0991f21eb Supports viewing all NewsItems and StoreApps for a source 2024-12-26 21:15:29 +05:30
Riley Testut
9265fd5a5d Shows detailed source “About” page when adding 3rd-party sources
Allows users to preview sources before adding them to their AltStore.
2024-12-26 21:15:29 +05:30
Riley Testut
a3e67a9adb Refactors SourcesViewController from Main.storyboard to new Sources.storyboard
Also refactors BannerCollectionViewCell to AppBannerCollectionViewCell to support initializing from code.
2024-12-26 21:15:29 +05:30
Riley Testut
57837d37dd [AltStoreCore] Adds Source.isAdded
Convenience property to determine whether a source has been added to the user’s AltStore.
2024-12-26 21:15:29 +05:30
Riley Testut
f3493e0a9e [AltStoreCore] Adds @AsyncManaged property wrapper
Same as @Managed, except it supports using Swift Concurrency to fetch values from its managedObject’s managedObjectContext.
2024-12-26 21:15:29 +05:30
Riley Testut
fc4a8b09a5 [AltStoreCore] Adds NSManagedObjectContext.performAsync() to wrap iOS 15+ async perform()
Allows us to use Swift Concurrency with Core Data pre-iOS 15.
2024-12-26 21:15:29 +05:30
Riley Testut
b8e8ce8aac [AltStoreCore] Fixes incorrect Source.featuredApps relationship post-merging 2024-12-26 21:15:29 +05:30
Riley Testut
f89562eab9 Fixes CollapsingTextView “TextKit 1 compatibility mode” runtime warning 2024-12-26 21:15:29 +05:30
Riley Testut
256b0c14f5 [AltStoreCore] Supports additional source JSON values for detailed “About” page 2024-12-26 21:15:29 +05:30
Riley Testut
403b34c39c Fixes error fetching Friend Zone patrons due to unexpected nil name 2024-12-26 21:15:29 +05:30
Riley Testut
b12e33d5c9 Removes unnecessary @available annotations 2024-12-26 21:15:29 +05:30
Riley Testut
ae11777359 Removes unnecessary #available checks 2024-12-26 21:15:29 +05:30
Riley Testut
f892be0019 Fixes UIApplication.setMinimumBackgroundFetchInterval() deprecation warning 2024-12-26 21:15:29 +05:30
Riley Testut
a23753588c Fixes peek & pop deprecation warnings 2024-12-26 21:15:29 +05:30
Riley Testut
8fb0304728 Fixes UIApplication.keyWindow deprecation warning 2024-12-26 21:15:29 +05:30
Riley Testut
74a0d0f580 Fixes Scanner.scanHexInt32 deprecation warning 2024-12-26 21:15:29 +05:30
Riley Testut
36c965959b Fixes UIActivityIndicatorView.style deprecation warnings 2024-12-26 21:15:29 +05:30
Riley Testut
9eb1029fb4 [Shared] Updates projects to recommended settings (Xcode 14.1) 2024-12-26 21:15:29 +05:30
Riley Testut
d4f98f3a94 [AltStoreCore] Fixes Core Data “Using nil or insecure value transformer” warnings 2024-12-26 21:15:29 +05:30
Riley Testut
e31d7f21f0 Fixes “Plain Style unsupported in a Navigation Item” warnings 2024-12-26 21:15:29 +05:30
Riley Testut
9c35c9b1c1 Silences “Double-quoted include in framework header” warnings 2024-12-26 21:15:29 +05:30
Riley Testut
3505a07482 Fixes “App doesn’t declare if it can open files in-place” warning 2024-12-26 21:15:29 +05:30
Riley Testut
bd0a6982d4 [Shared] Updates CocoaPods dependencies 2024-12-26 21:15:29 +05:30
Riley Testut
a452376ac5 [Shared] Raises deployment targets to iOS 14.0 and macOS 11.0 2024-12-26 21:15:29 +05:30
Riley Testut
5208e19b1f [AltTests] Replaces iOS 16+ URL(filePath:) with URL(fileURLWithPath:) 2024-12-26 21:15:29 +05:30
Riley Testut
c8a3ff0a9c Fixes triggering false positives with some malware detectors
Renames UserDefaults.isMacDirtyCowSupported to .isCowExploitSupported
2024-12-26 21:15:29 +05:30
Riley Testut
b59c59de4a Adds “Clear Cache” description to Techy Things section footer 2024-12-26 21:15:29 +05:30
Riley Testut
a5b1a320de Hides MacDirtyCow settings on iOS 15.7.2
MacDirtyCow supports iOS 14.0 - 15.7.1 and 16.0 - 16.1.2, but not 15.7.2
2024-12-26 21:15:29 +05:30
Riley Testut
7042e9acbe Fixes SourcesViewController crash on iOS 12
Apparently changing NSLayoutConstraint priorities from required to optional (and vice versa) isn’t supported, even though it works on iOS 13+. Who knew!
2024-12-26 21:15:29 +05:30
Riley Testut
a2c05c8099 Fixes incorrect “View Error Log” cell appearance 2024-12-26 21:15:29 +05:30
Riley Testut
68d49bd1ca Force-enables “Enforce 3-App Limit” if iOS version does not support MacDirtyCow exploit
Prevents “Enforce 3-App Limit” remaining enabled after updating iOS version without a way to disable it.
2024-12-26 21:15:29 +05:30
Riley Testut
05ef72ddfd Adds “Clear Cache” button to remove temporary files and uninstalled app backups 2024-12-26 21:15:29 +05:30
Riley Testut
07d5a7551f Supports sideloading more than 3 apps via MacDirtyCow exploit
The MacDirtyCow exploit allows users to remove the 3 active apps limit on iOS 16.1.2 and earlier. To support this, we’ve added a new (hidden) “Enforce 3-App Limit” setting that can be disabled to allow sideloading more than 3 apps.
2024-12-26 21:15:29 +05:30
Riley Testut
d76b258073 Fixes non-readable error toast view when an authentication error occurs 2024-12-26 21:15:29 +05:30
Riley Testut
31d5d024dd Caches MergeErrors when refreshing sources to view later in SourcesViewController 2024-12-26 21:15:29 +05:30
Riley Testut
47fb8ff3eb Fixes incorrect StoreApp.versions order post-merge 2024-12-26 21:15:29 +05:30
Riley Testut
3e6f48b1bb [Shared] Fixes pattern matching non-ALTErrorEnum error codes 2024-12-26 21:15:29 +05:30
Riley Testut
19a405fe56 Fixes adding failures to NSErrors with nil localizedFailureReasons 2024-12-26 21:15:29 +05:30
Riley Testut
3e6c08f458 [AltTests] Enables Code Coverage 2024-12-26 21:15:29 +05:30
Riley Testut
5c942dc150 [AltTests] Adds error handling tests
Passes all tests

[Review] Refactors tests to be more readable

Removes unnecessary code
2024-12-26 21:15:29 +05:30
Riley Testut
ce0e5d6c50 Adds AltTests test target 2024-12-26 21:15:29 +05:30
Riley Testut
6396794963 Moves “View Error Log” setting to new Techy Things section 2024-12-26 21:15:29 +05:30
Riley Testut
f4856bd435 Fixes “missing provisioning profile” error when refreshing DEBUG builds
Removes embedded XCTest (+ dSYM) bundles before resigning for DEBUG builds.
2024-12-26 21:15:29 +05:30
Riley Testut
4e2d62cf95 [Shared] Ignores ALTWrappedError NSLocalizedDescription user info value if it == failure + failure reason 2024-12-26 21:15:29 +05:30
Riley Testut
1741aff153 [Shared] Encodes all CodableError codable user info values, not just recognized types 2024-12-26 21:15:29 +05:30
Riley Testut
9b50d2269c [Shared] Fixes error encoding CodableError Int/UInt user info values 2024-12-26 21:15:29 +05:30
Riley Testut
f03507e348 [Shared] Uses underlying error messages (if available) for ALTServerError.invalidRequest/.invalidResponse 2024-12-26 21:15:29 +05:30
Riley Testut
c34bcce5ea Updates VerificationError.errorDescription to match ALTLocalizedError default implementation 2024-12-26 21:15:29 +05:30
Riley Testut
5bb677f6d9 Fixes refreshing tweaked apps with removed app extensions
In addition to removing the app extensions themselves, we also need to remove references to them from SC_Info/Manifest.plist in the app bundle (if the file exists). Otherwise, subsequent installations (resigning, (de)-activating, etc.) will fail due to “missing” app extensions.
2024-12-26 21:15:29 +05:30
Riley Testut
c9d64986bd Revises “check for updates” error title 2024-12-26 21:15:29 +05:30