Skip to content

Commit 03c0441

Browse files
committed
feat: migrate iOS project from CocoaPods to Swift Package Manager for SQLCipher integration
1 parent 73f87b1 commit 03c0441

103 files changed

Lines changed: 722 additions & 285301 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ios.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ jobs:
4444
KEYCHAIN_NAME: app-signing
4545
run: fastlane setup_certificates_lane
4646
- name: Pre-build with Gradle
47-
run: ./gradlew :app:ios-kit:linkPodReleaseFrameworkIosArm64
47+
run: ./gradlew :app:ios-kit:linkReleaseFrameworkIosArm64
4848
- name: AppStore build lane with gym
4949
working-directory: ./app/iosApp
5050
run: fastlane appstore_build_gym_lane

.gitignore

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,19 @@ app/android/note_room_key_store.jks
6565

6666
### iOS
6767
# Generated files
68-
/app/iosApp/iosApp.xcworkspace/xcuserdata/
68+
/app/iosApp/KotlinMultiplatformLinkedPackage/.build/
69+
/app/iosApp/KotlinMultiplatformLinkedPackage/**/.swiftpm/
70+
/.swiftpm-locks/default/swiftImport/.build/
71+
/.swiftpm-locks/default/swiftImport/Package.swift
72+
/.swiftpm-locks/default/swiftImport/Sources/
73+
/.swiftpm-locks/default/swiftImport/subpackages/
74+
/.swiftpm-locks/default/swiftPMCheckout/
6975
/app/iosApp/fastlane/report.xml
7076

77+
# Xcode user-specific state
78+
**/xcuserdata/
79+
*.xcuserstate
80+
7181
# Built application files
7282
/app/iosApp/iosApp.app.dSYM.zip
7383
/app/iosApp/iosApp.ipa

.swiftpm-locks/default/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
swiftPMCheckout/

.swiftpm-locks/default/swiftImport/Package.resolved

Lines changed: 14 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

AGENTS.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
- Core: `core/domain`, `core/presentation`, `core/data/db-sqldelight` (default), `core/data/db-room` (optional), `core/test/common`.
1212
- Features: `feature/backup/{domain,ui}`, `feature/console/{domain,presentation,ui}`, `feature/file-explorer/data`.
1313
- UI: `core/ui` (common Compose code and resources), `core/test/ui` (multiplatform Compose UI tests), `core/test/jvm` (JVM-specific UI test utilities).
14-
- Apps: `app/android`, `app/desktop`, `app/web`, `app/ios-kit` (CocoaPods framework), `app/iosApp` (Xcode project).
14+
- Apps: `app/android`, `app/desktop`, `app/web`, `app/ios-kit` (SwiftPM-linked framework), `app/iosApp` (Xcode project).
1515
- Tooling: `build-logic` (Gradle conventions), `thirdparty` (vendored modules), `gradle/libs.versions.toml` (versions).
1616
- Switch DB module via `gradle.properties` key `CORE_DATA_DB_MODULE`.
1717

@@ -21,7 +21,7 @@
2121
- Android instrumentation tests: `./gradlew :app:android:connectedCheck` (requires emulator/device; uses AndroidX Test Orchestrator).
2222
- Desktop app: `./gradlew :app:desktop:run` (launches JVM desktop Compose app).
2323
- Desktop UI tests: `./gradlew :app:desktop:jvmTest` (uses `uiTestJUnit4`).
24-
- iOS: `cd iosApp && pod install` then open `iosApp/iosApp.xcworkspace` in Xcode and run. Regenerate podspec if needed: `./gradlew :app:ios-kit:podspec`.
24+
- iOS: open `app/iosApp/iosApp.xcodeproj` in Xcode and run. Kotlin frameworks and SwiftPM packages are built and embedded by the Gradle build phase.
2525
- iOS UI tests: `./gradlew :app:ios-kit:iosSimulatorArm64Test` (requires iOS simulator; uses multiplatform Compose UI tests).
2626
- Web app: `./gradlew :app:web:wasmJsBrowserDevelopmentRun --continuous` (launches the web app in a browser with hot reload).
2727
- Web UI tests: `./gradlew :app:web:wasmJsBrowserTest` (requires Chrome binary via `CHROME_BIN` environment variable; uses Karma/Chrome headless).

CONTRIBUTING.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -446,9 +446,7 @@ cd NoteDelight
446446

447447
#### iOS
448448
```bash
449-
cd app/iosApp
450-
pod install
451-
open iosApp.xcworkspace
449+
open app/iosApp/iosApp.xcodeproj
452450
# Build and run in Xcode
453451
```
454452

0 commit comments

Comments
 (0)