chore(m9): toolchain, CI config, and core syntax demotion (Slice 1) #105

Merged
gronod merged 1 commits from feat/m9-slice1-config-and-core-syntax into milestone/m9-monterey 2026-09-11 20:26:54 +01:00
Owner

Slice 1 of the M9 Monterey retarget plan (Phases 0 & 2).

project.yml

  • Deployment target macOS: "12.0" across all targets (app, unit tests, UI tests).
  • MACOSX_DEPLOYMENT_TARGET: "12.0" and INFOPLIST_KEY_LSMinimumSystemVersion: "12.0".
  • SWIFT_VERSION: "5.0" (Xcode 14.2 rejects "5.7").
  • Removed SWIFT_STRICT_CONCURRENCY; added OTHER_SWIFT_FLAGS: ["$(inherited)", "-strict-concurrency=minimal"].

Package.swift (ICCeryCore)

  • swift-tools-version: 5.7, platform .macOS(.v12).

CI (.gitea/workflows/macos.yml)

  • All jobs now runs-on: macos-12.
  • Added Xcode 14 assertion step before xcodegen.
  • Added host-tool prerequisite checks (xcodegen, dmgbuild).

Core syntax demotion

  • Reverted typed throws in CGATSParser (throws(CGATSParseError) -> throws); callers remain compatible without call-site changes.
  • Replaced Task.sleep(for:) with Task.sleep(nanoseconds:) preserving exact timing in ArgyllRunner (100 ms, 500 ms XY park x2), ProcessManager (2 s watchdog), WizardViewModel (UInt64(delay * 1e9)), SettingsViewModel (1.5 s).

Test files, view models, and views are intentionally untouched — partitioned into later slices.

Assignee: gronod

Slice 1 of the M9 Monterey retarget plan (Phases 0 & 2). ## project.yml - Deployment target `macOS: "12.0"` across all targets (app, unit tests, UI tests). - `MACOSX_DEPLOYMENT_TARGET: "12.0"` and `INFOPLIST_KEY_LSMinimumSystemVersion: "12.0"`. - `SWIFT_VERSION: "5.0"` (Xcode 14.2 rejects "5.7"). - Removed `SWIFT_STRICT_CONCURRENCY`; added `OTHER_SWIFT_FLAGS: ["$(inherited)", "-strict-concurrency=minimal"]`. ## Package.swift (ICCeryCore) - `swift-tools-version: 5.7`, platform `.macOS(.v12)`. ## CI (.gitea/workflows/macos.yml) - All jobs now `runs-on: macos-12`. - Added Xcode 14 assertion step before xcodegen. - Added host-tool prerequisite checks (xcodegen, dmgbuild). ## Core syntax demotion - Reverted typed throws in `CGATSParser` (`throws(CGATSParseError)` -> `throws`); callers remain compatible without call-site changes. - Replaced `Task.sleep(for:)` with `Task.sleep(nanoseconds:)` preserving exact timing in ArgyllRunner (100 ms, 500 ms XY park x2), ProcessManager (2 s watchdog), WizardViewModel (UInt64(delay * 1e9)), SettingsViewModel (1.5 s). Test files, view models, and views are intentionally untouched — partitioned into later slices. Assignee: gronod
gronod added 1 commit 2026-09-11 20:03:25 +01:00
Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
gronod self-assigned this 2026-09-11 20:03:31 +01:00
gronod merged commit 3184c50fb9 into milestone/m9-monterey 2026-09-11 20:26:54 +01:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: gronod/iccery-v2-mac#105