Compare commits

..
Author SHA1 Message Date
james.maes 466a1e655c Merge pull request 'ci: shared ci-workflows macOS workflow; fix the Xcode 27 Document ambiguity (blocked: runner has no GUI session)' (#3) from ci/shared-macos into main
macos / macos (push) Successful in 14s
build / macos (push) Successful in 14s
2026-11-08 23:28:56 +00:00
James MaesandClaude Opus 5.5 be68c9f1bb ci: build only on CI; run the app-hosted tests locally
macos / macos (push) Successful in 16s
build / macos (push) Successful in 16s
The grogu runner has no GUI session, so xcodebuild test cannot reach
testmanagerd. CI compiles the app and the test bundle unsigned
(build-for-testing); the README documents running just test locally.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 17:24:40 -06:00
James MaesandClaude Opus 5.5 77b9274434 ci: pin the shared workflow to v1
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 07:46:19 -06:00
James MaesandClaude Opus 5.5 ab3731e0df fix: qualify Markdown.Document for the Xcode 27 SDK
macos / macos (push) Failing after 14s
build / macos (push) Failing after 14s
SwiftUI now declares a Document protocol, so the unqualified name in the
plain-text visitor is ambiguous and the build fails.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 07:37:16 -06:00
James MaesandClaude Opus 5.5 4536db3f09 ci: build on the shared ci-workflows macOS workflow
macos / macos (push) Failing after 16s
build / macos (push) Failing after 16s
Runs the repository's build (and tests where it has them) on the KOF macOS
host runner through ci-workflows macos.yaml.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-08 07:34:06 -06:00
4 changed files with 27 additions and 4 deletions

No files matched your search

+16
View File
@@ -0,0 +1,16 @@
name: build
on:
push:
branches: ['**']
tags: ['v*']
jobs:
macos:
uses: self:KofTwentyTwo/ci-workflows/.gitea/workflows/macos.yaml@v1
secrets: inherit
with:
# Build only: the app and the test bundle are compiled unsigned, the tests are not run. They are
# app-hosted XCTests and the grogu runner has no GUI session for testmanagerd; run `just test`
# locally before merging (README, Building from Source). Package.swift has no test target.
commands: |
xcodegen generate
xcodebuild -quiet -project markdownViewr.xcodeproj -scheme markdownViewr -destination 'platform=macOS' CODE_SIGNING_ALLOWED=NO build-for-testing
-2
View File
@@ -1,2 +0,0 @@
# Sparkle SUPublicEDKey: EdDSA public verification key, not a secret (exact historical finding only)
b3940a3656a8dbc8d669825ed1d0cc0ec9e619d4:project.yml:generic-api-key:66
+9
View File
@@ -61,3 +61,12 @@ just run
```
`just --list` shows all available recipes.
### Tests
The tests are app-hosted XCTests (`markdownViewrTests`). CI builds the app and the test bundle unsigned
but does not run them (the CI macOS runner has no GUI session), so run them locally before merging:
```bash
just test # xcodegen generate first if the project is stale
```
+2 -2
View File
@@ -60,7 +60,7 @@ struct MarkdownDocument: FileDocument {
let rawContent = frontmatter != nil ? body : markdown
let content = preProcessSubscript(rawContent, enabled: extensions.subscript_)
let document = Markdown.Document(parsing: content)
let document = Document(parsing: content)
var htmlVisitor = HTMLConverter()
html += htmlVisitor.visit(document)
return applyExtensions(html, extensions: extensions)
@@ -127,7 +127,7 @@ struct MarkdownDocument: FileDocument {
}
private static func renderFrontmatterAsMarkdown(_ yaml: String) -> String {
let document = Markdown.Document(parsing: "---\n\(yaml)\n---")
let document = Document(parsing: "---\n\(yaml)\n---")
var htmlVisitor = HTMLConverter()
return htmlVisitor.visit(document)
}