feat: complete Tasks 21-28 — backend integration, security hardening, UI tests & CI
- Add Apple Sign-In backend (JWKS verification, account linking, session management) - Implement push notification deep linking with NotificationDeepLinkRouter - Add jailbreak detection, runtime integrity monitoring, secure enclave service - Implement OAuth social login, token refresh, and secure logout flows - Add image caching (memory/disk), optimizer, upload queue, async semaphore - Implement notification analytics, type preferences, and category setup - Expand UI test suite with UITestBase, accessibility, auth flow, performance tests - Add CI pipeline for iOS UI tests (3 device sizes) and performance benchmarks - Restructure Xcode project to manual groups with KordantWidgets target - Add SwiftLint, Swift Collections/Algorithms/GoogleSignIn dependencies - Update project.yml for XcodeGen with new targets and configurations
This commit is contained in:
@@ -26,6 +26,9 @@ packages:
|
||||
Algorithms:
|
||||
url: https://github.com/apple/swift-algorithms
|
||||
from: "1.0.0"
|
||||
GoogleSignIn:
|
||||
url: https://github.com/google/GoogleSignIn-iOS
|
||||
from: "7.0.0"
|
||||
|
||||
targets:
|
||||
Kordant:
|
||||
@@ -34,19 +37,27 @@ targets:
|
||||
deploymentTarget: "17.0"
|
||||
sources:
|
||||
- path: Kordant
|
||||
includes:
|
||||
- "**/*.swift"
|
||||
- "**/*.strings"
|
||||
- "PrivacyInfo.xcprivacy"
|
||||
excludes:
|
||||
- "**/*.xcodeproj"
|
||||
- path: Sources/Shared
|
||||
settings:
|
||||
base:
|
||||
PRODUCT_BUNDLE_IDENTIFIER: com.frenocorp.kordant
|
||||
PRODUCT_NAME: Kordant
|
||||
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS: YES
|
||||
INFOPLIST_FILE: Kordant/Info.plist
|
||||
INFOPLIST_FILE: Info.plist
|
||||
dependencies:
|
||||
- target: KordantWidgets
|
||||
- package: Collections
|
||||
product: Collections
|
||||
- package: Algorithms
|
||||
product: Algorithms
|
||||
- package: GoogleSignIn
|
||||
product: GoogleSignIn
|
||||
preBuildScripts:
|
||||
- name: SwiftLint
|
||||
script: |
|
||||
@@ -71,6 +82,25 @@ targets:
|
||||
dependencies:
|
||||
- target: Kordant
|
||||
|
||||
KordantWidgets:
|
||||
type: app-extension
|
||||
platform: iOS
|
||||
deploymentTarget: "17.0"
|
||||
sources:
|
||||
- path: KordantWidgets
|
||||
includes:
|
||||
- "**/*.swift"
|
||||
- "PrivacyInfo.xcprivacy"
|
||||
- path: Sources/Shared
|
||||
settings:
|
||||
base:
|
||||
PRODUCT_BUNDLE_IDENTIFIER: com.frenocorp.kordant.widgets
|
||||
PRODUCT_NAME: KordantWidgets
|
||||
SKIP_INSTALL: YES
|
||||
INFOPLIST_FILE: KordantWidgets/Info.plist
|
||||
CODE_SIGN_ENTITLEMENTS: KordantWidgets/KordantWidgets.entitlements
|
||||
SWIFT_VERSION: "5.9"
|
||||
|
||||
KordantUITests:
|
||||
type: bundle.ui-testing
|
||||
platform: iOS
|
||||
@@ -89,6 +119,7 @@ schemes:
|
||||
build:
|
||||
targets:
|
||||
Kordant: all
|
||||
KordantWidgets: all
|
||||
KordantTests: [test]
|
||||
KordantUITests: [test]
|
||||
run:
|
||||
|
||||
Reference in New Issue
Block a user