diff --git a/swift/.smartconfig.json b/.smartconfig.json similarity index 84% rename from swift/.smartconfig.json rename to .smartconfig.json index 5007b6f..5594b9f 100644 --- a/swift/.smartconfig.json +++ b/.smartconfig.json @@ -2,11 +2,13 @@ "@git.zone/tsswift": { "defaultScheme": "SocialIO", "defaultConfiguration": "Debug", - "derivedDataPath": ".build/xcode-derived-data", + "derivedDataPath": "swift/.build/xcode-derived-data", "parallelBuilds": true, "parallelTests": false, "buildPlatforms": ["macos", "ios", "ipad"], "testPlatforms": ["macos"], + "watchPlatforms": ["macos", "ios", "ipad"], + "watchDebounceMs": 1200, "defaultPlatform": "macos", "app": { "bundleId": "io.social.app" @@ -19,7 +21,7 @@ "initialCommand": "socialio://mailbox/inbox" }, "screenshots": { - "scenariosFile": "Automation/ui-screenshot-routes.txt", + "scenariosFile": "swift/Automation/ui-screenshot-routes.txt", "outputDir": "/tmp/socialio-ui-review", "reviewPlatforms": ["ios", "ipad", "macos"], "launchDelayMs": 2000, diff --git a/package.json b/package.json index 15ab327..3e3132b 100644 --- a/package.json +++ b/package.json @@ -9,6 +9,7 @@ "swift:build:macos": "tsswift build --path swift/SocialIO.xcodeproj --platform macos", "swift:test": "tsswift test --path swift/SocialIO.xcodeproj", "swift:run": "tsswift run --path swift/SocialIO.xcodeproj", + "swift:watch": "tsswift watch --path swift/SocialIO.xcodeproj", "swift:launch": "tsswift launch --path swift/SocialIO.xcodeproj", "swift:command:inbox": "tsswift command --path swift/SocialIO.xcodeproj --route socialio://mailbox/inbox", "swift:screenshots:ios": "tsswift screenshots --path swift/SocialIO.xcodeproj --platform ios", @@ -17,6 +18,6 @@ "swift:review": "tsswift review --path swift/SocialIO.xcodeproj" }, "devDependencies": { - "@git.zone/tsswift": "0.3.0" + "@git.zone/tsswift": "0.4.1" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0e83485..c0e5928 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,8 +9,8 @@ importers: .: devDependencies: '@git.zone/tsswift': - specifier: 0.3.0 - version: 0.3.0 + specifier: 0.4.1 + version: 0.4.1 packages: @@ -39,8 +39,8 @@ packages: '@design.estate/dees-element@2.2.4': resolution: {integrity: sha512-O9cA6flBMMd+pBwMQrZXwAWel9yVxgokolb+Em6gvkXxPJ0P/B5UDn4Vc2d4ts3ta55PTBm+l2dPeDVGx/bl7Q==} - '@git.zone/tsswift@0.3.0': - resolution: {integrity: sha512-gP/OKcxNUYgUZvNru/MXMGs0e5LMiM3Qxk4f4oDkgadbahMBGjBK/umtgV+ptph27YmBItOfGIlxtOvtH3X5+w==} + '@git.zone/tsswift@0.4.1': + resolution: {integrity: sha512-ouljDoZOYEnMze90z7342Cvie8TYTVTJPvJAhiWY9d4Pwt3zn+Uc9VW2DurLxBX3FMAPjZ1fMfy5LZoFgivkaQ==} hasBin: true '@isaacs/cliui@9.0.0': @@ -996,7 +996,7 @@ snapshots: - supports-color - vue - '@git.zone/tsswift@0.3.0': + '@git.zone/tsswift@0.4.1': dependencies: '@push.rocks/smartcli': 4.0.20 '@push.rocks/smartconfig': 6.1.0 diff --git a/readme.md b/readme.md index 588ad66..46f1e06 100644 --- a/readme.md +++ b/readme.md @@ -31,15 +31,17 @@ corepack pnpm swift:emulators corepack pnpm swift:build corepack pnpm swift:test corepack pnpm swift:run +corepack pnpm swift:watch corepack pnpm swift:launch corepack pnpm swift:review ``` -This repo now uses `@git.zone/tsswift` with project config in `swift/.smartconfig.json`. +This repo now uses `@git.zone/tsswift` with project config in the repo-root `.smartconfig.json`. - `build` targets macOS, iPhone Simulator, and iPad Simulator in parallel - `test` targets macOS, which matches the current test bundle setup - `run` defaults to macOS unless you pass `--platform ios` or `--platform ipad` +- `watch` rebuilds and relaunches macOS, iPhone, and iPad app instances on file changes - `launch` starts the app with the configured control-file transport enabled - `review` replaces the old shell-script review loop and captures screenshot sets for iPhone, iPad, and macOS