Skip to content

Release 1.0.1: first-run permission fix - #6

Merged
LucaGerlich merged 1 commit into
mainfrom
release/1.0.1
Aug 18, 2026
Merged

Release 1.0.1: first-run permission fix#6
LucaGerlich merged 1 commit into
mainfrom
release/1.0.1

Conversation

@LucaGerlich

Copy link
Copy Markdown
Owner

Ships the first-run Input Monitoring fix (PR #5) to users, and closes a version-numbering trap in the release pipeline.

Version guards

release.sh passed MARKETING_VERSION on the command line but left CURRENT_PROJECT_VERSION alone. Sparkle compares build numbers, so 1.0.1 would have shipped advertising the same build as 1.0.0 and would never have been offered as an update — the update mechanism would look fine and silently do nothing.

The project file is now the single source of truth, and the script refuses to build if:

  • the project's MARKETING_VERSION does not match the requested version, or
  • the build number is not greater than the one the published appcast already advertises.

Changes

  • MARKETING_VERSION 1.0 → 1.0.1 (it was also inconsistent with the shipped 1.0.0, since the old override masked it)
  • CURRENT_PROJECT_VERSION 1 → 2

Merging this lets me run Scripts/release.sh 1.0.1 — which will also be the first real end-to-end test of the Sparkle update path, from an installed 1.0.0.

Bumps MARKETING_VERSION to 1.0.1 and CURRENT_PROJECT_VERSION to 2, and makes
the project file the single source of truth for both.

release.sh previously passed MARKETING_VERSION on the command line, which left
CURRENT_PROJECT_VERSION untouched. Sparkle compares build numbers, so a 1.0.1
built that way would have advertised the same build as 1.0.0 and would never
have been offered as an update. The script now verifies that the project's
MARKETING_VERSION matches the requested version, and refuses to build when the
build number is not greater than the one the published appcast advertises.
Copilot AI lite review requested due to automatic review settings August 18, 2026 18:26

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates InputPilot’s release pipeline and Xcode project versioning to ensure Sparkle updates are correctly offered (by enforcing a monotonically increasing build number) while shipping the 1.0.1 release.

Changes:

  • Add preflight version/build-number guards to Scripts/release.sh, and stop overriding MARKETING_VERSION at archive time.
  • Bump MARKETING_VERSION to 1.0.1 and CURRENT_PROJECT_VERSION to 2 in the Xcode project.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
Scripts/release.sh Adds version/build-number validation against the Xcode project and (optionally) the committed appcast; removes command-line override of MARKETING_VERSION.
InputPilot.xcodeproj/project.pbxproj Updates marketing version and build number across project build configurations/targets for the 1.0.1 release.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread Scripts/release.sh
Comment on lines +56 to +60
echo "==> Checking versions"
BUILD_SETTINGS="$(xcodebuild -project InputPilot.xcodeproj -target InputPilot -configuration Release -showBuildSettings 2>/dev/null)"
PROJECT_VERSION="$(echo "$BUILD_SETTINGS" | awk -F' = ' '/ MARKETING_VERSION =/ {print $2; exit}' | tr -d ' ')"
BUILD_NUMBER="$(echo "$BUILD_SETTINGS" | awk -F' = ' '/ CURRENT_PROJECT_VERSION =/ {print $2; exit}' | tr -d ' ')"

@LucaGerlich
LucaGerlich merged commit 451ee75 into main Aug 18, 2026
2 checks passed
@LucaGerlich
LucaGerlich deleted the release/1.0.1 branch August 18, 2026 19:01
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