project.yml declared `info: path: TopManager/Info.plist` without
properties, so every `xcodegen generate` rewrote Info.plist with
XcodeGen's defaults, 1.0 (1). That silently undid the version bump in
cf88044: its message says 1.1.1 (3), but the commit actually set
Info.plist back to 1.0 (1).
The version now lives in MARKETING_VERSION / CURRENT_PROJECT_VERSION in
project.yml, and the generated Info.plist references them. Regenerating
is idempotent and the built app reports 1.1.1 (3).
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
74 sor
1.9 KiB
YAML
74 sor
1.9 KiB
YAML
name: TopManager
|
|
options:
|
|
bundleIdPrefix: com.topmanager
|
|
deploymentTarget:
|
|
macOS: "13.0"
|
|
xcodeVersion: "15.0"
|
|
createIntermediateGroups: true
|
|
|
|
settings:
|
|
base:
|
|
MACOSX_DEPLOYMENT_TARGET: "13.0"
|
|
SWIFT_VERSION: "5.9"
|
|
CODE_SIGN_STYLE: Automatic
|
|
ENABLE_HARDENED_RUNTIME: YES
|
|
DEVELOPMENT_TEAM: "P3663392R2"
|
|
|
|
targets:
|
|
TopManager:
|
|
type: application
|
|
platform: macOS
|
|
sources:
|
|
- path: TopManager
|
|
excludes:
|
|
- "**/.DS_Store"
|
|
settings:
|
|
base:
|
|
PRODUCT_BUNDLE_IDENTIFIER: com.topmanager.app
|
|
INFOPLIST_FILE: TopManager/Info.plist
|
|
CODE_SIGN_ENTITLEMENTS: TopManager/TopManager.entitlements
|
|
PRODUCT_NAME: TopManager
|
|
GENERATE_INFOPLIST_FILE: NO
|
|
SWIFT_EMIT_LOC_STRINGS: YES
|
|
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
|
|
# The app version lives here. `xcodegen generate` rewrites Info.plist from
|
|
# the `info` block below, so a version typed into Info.plist gets reset.
|
|
MARKETING_VERSION: "1.1.1"
|
|
CURRENT_PROJECT_VERSION: "3"
|
|
info:
|
|
path: TopManager/Info.plist
|
|
properties:
|
|
CFBundleShortVersionString: $(MARKETING_VERSION)
|
|
CFBundleVersion: $(CURRENT_PROJECT_VERSION)
|
|
|
|
TopManagerTests:
|
|
type: bundle.unit-test
|
|
platform: macOS
|
|
sources:
|
|
- path: TopManagerTests
|
|
excludes:
|
|
- "**/.DS_Store"
|
|
dependencies:
|
|
- target: TopManager
|
|
settings:
|
|
base:
|
|
PRODUCT_BUNDLE_IDENTIFIER: com.topmanager.TopManagerTests
|
|
GENERATE_INFOPLIST_FILE: YES
|
|
TEST_HOST: "$(BUILT_PRODUCTS_DIR)/TopManager.app/Contents/MacOS/TopManager"
|
|
BUNDLE_LOADER: "$(TEST_HOST)"
|
|
CODE_SIGN_STYLE: Automatic
|
|
|
|
schemes:
|
|
TopManager:
|
|
build:
|
|
targets:
|
|
TopManager: all
|
|
TopManagerTests: [test]
|
|
run:
|
|
config: Debug
|
|
test:
|
|
config: Debug
|
|
targets:
|
|
- TopManagerTests
|
|
gatherCoverageData: false
|