Skip to content

Add Linux CI for VoiceyCore SwiftPM unit tests#32

Merged
jonathanKingston merged 1 commit into
mainfrom
jkt/auto/linux-core-ci-98ad
May 8, 2026
Merged

Add Linux CI for VoiceyCore SwiftPM unit tests#32
jonathanKingston merged 1 commit into
mainfrom
jkt/auto/linux-core-ci-98ad

Conversation

@jonathanKingston

Copy link
Copy Markdown
Owner

Summary

Adds a small amount of Linux-side CI by extracting Foundation-only transcription helpers into a VoiceyCore library and running swift test for that module on Ubuntu.

Details

  • VoiceyCore: TextCleanup and VoiceCommand live under Sources/VoiceyCore/ with a public API so the macOS app target can import VoiceyCore.
  • Package.swift: On Linux (#if os(Linux)), the manifest only declares VoiceyCore plus VoiceyCoreTests, so swift package resolve / swift test never pull in WhisperKit, KeyboardShortcuts, or other Apple-tied dependencies. On macOS, the existing executable graph is unchanged aside from linking VoiceyCore.
  • Tests: The former TextCleanupTests now target VoiceyCore in Tests/VoiceyCoreTests/ and run on Linux and macOS.
  • Workflow: .github/workflows/linux-core-tests.yml uses swift-actions/setup-swift (5.10) and swift test --filter VoiceyCoreTests.

Full app compilation remains on the macOS build.yml job; this workflow only guards the shared text/voice-command logic.

Open in Web Open in Cursor 

Introduce a Foundation-only VoiceyCore library (text cleanup and voice
command defaults) so Ubuntu CI can run swift test without Apple SDKs.

Package.swift uses a Linux-specific manifest branch that omits the app
target and third-party packages; macOS keeps the full graph and links
Voicey against VoiceyCore. Add a GitHub Actions workflow that runs
VoiceyCoreTests on ubuntu-latest.
@jonathanKingston
jonathanKingston marked this pull request as ready for review May 8, 2026 02:57
@jonathanKingston
jonathanKingston merged commit e7b2065 into main May 8, 2026
3 checks passed
@cursor
cursor Bot deleted the jkt/auto/linux-core-ci-98ad branch May 27, 2026 20:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants