Skip to content

Repo cleanup: tests, CI, license, README rewrite - #1

Merged
Junk-debug merged 1 commit into
mainfrom
chore/repo-cleanup
Oct 15, 2026
Merged

Junk-debug merged 1 commit into
mainfrom
chore/repo-cleanup

Conversation

@Junk-debug

Copy link
Copy Markdown
Owner

Summary

General tidy-up of the repo: a crash fix, tests, CI, a license and an up-to-date README.

Fix

  • Stored hotkey / hold-key indices were used to index option arrays without bounds checks in a few places (menu bar badge, Behavior settings). An index saved by an older build with a different option list would crash. Added holdKeyOption(at:) / hotKeyOption(at:) that fall back to the default, and used them everywhere.

Tooling

  • Test target with unit tests for the Markdown parser and --- section splitting.
  • GitHub Actions CI (macos-15): swift build, swift test, ./build.sh.
  • build.sh ad-hoc signs the .app bundle.
  • Info.plist: LSMinimumSystemVersion 14.0.
  • .gitignore: .swiftpm/, xcuserdata/, DerivedData/.
  • MIT LICENSE.

Docs

  • README rewritten: why, features, install (incl. opening an un-notarized app), usage, shortcuts table, limitations, intended use, how it works, project layout, development.
  • Dropped the outdated "single main.swift" note.
  • Softened the screen-capture claim (README + welcome note): sharingType = .none is respected by video-call apps but not guaranteed for every capture tool.

Test plan

  • swift build — no warnings
  • swift test — 10/10 pass
  • ./build.sh — bundle builds and is ad-hoc signed
  • CI green on this PR

- Fix crash when a stored hotkey/hold-key index is out of range
  (holdKeyOption(at:) / hotKeyOption(at:) fall back to the default)
- Add unit tests for the Markdown parser and section splitting
- Add GitHub Actions CI: build, test, bundle the app
- build.sh: ad-hoc sign the app bundle
- Info.plist: set LSMinimumSystemVersion 14.0
- .gitignore: ignore .swiftpm, xcuserdata, DerivedData
- Add MIT LICENSE
- Rewrite README: install, usage, shortcuts, limitations,
  intended use, how it works; drop outdated single-file note
- Soften the screen-capture claim in the welcome note
@Junk-debug
Junk-debug merged commit b903345 into main Oct 15, 2026
1 check passed
@Junk-debug
Junk-debug deleted the chore/repo-cleanup branch October 15, 2026 14:14
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.

1 participant