Conversation
This commit updates `CFBundleVersion` in `MiddleDrag/Info.plist` to use `$(MARKETING_VERSION)` instead of a hardcoded `1`. Sparkle compares the local build version (`CFBundleVersion`) against the appcast version. With a hardcoded value of `1`, Sparkle was constantly perceiving that an update was available, even when the marketing versions matched, creating an endless update loop. By setting `CFBundleVersion` to match the `MARKETING_VERSION`, Sparkle correctly identifies when the application is up-to-date.
There was a problem hiding this comment.
Pull request overview
Adjusts the app’s bundle versioning to prevent Sparkle from repeatedly offering an update that is already installed.
Changes:
- Updates
CFBundleVersioninInfo.plistto reference a build setting macro instead of a hard-coded value.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| <string>$(MARKETING_VERSION)</string> | ||
| <key>CFBundleVersion</key> | ||
| <string>1</string> | ||
| <string>$(MARKETING_VERSION)</string> |
There was a problem hiding this comment.
CFBundleVersion is Apple’s build number and is expected to be a monotonically increasing (typically numeric) value; using $(MARKETING_VERSION) can break this expectation (e.g., if the marketing version includes non-numeric suffixes or doesn’t change between builds). Prefer setting CFBundleVersion to $(CURRENT_PROJECT_VERSION) and, if you truly need them to match for Sparkle, set CURRENT_PROJECT_VERSION to the desired value in Build Settings (or configure Sparkle/appcast to compare against the intended key).
| <string>$(MARKETING_VERSION)</string> | |
| <string>$(CURRENT_PROJECT_VERSION)</string> |
No description provided.