Skip to content

feat: Support custom CFBundleVersion for iOS and macOS #13030

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 10 commits into from
Apr 12, 2025

Conversation

velocitysystems
Copy link
Contributor

@velocitysystems velocitysystems commented Mar 19, 2025

This PR resolves #12479 and adds support for specifying a custom CFBundleVersion for iOS and macOS.
It allows a custom build number to be injected i.e. from CI and used in Info.plist when building an application bundle.

Specifically this resolves the issue where multiple builds cannot be submitted to TestFlight for a single version i.e. 1.0.0 (1), 1.0.0 (2) which is a blocking issue for CI/CD automation. It follows the same approach used for specifying versionCode for Android and adds a new bundle configuration property for iOS and macOS: bundleVersion.

See PR 3216 with related documentation changes.

cc: @lucasfernog

@velocitysystems
Copy link
Contributor Author

@lucasfernog @FabianLars PR has been rebased and is ready for review.

Copy link
Contributor

github-actions bot commented Apr 2, 2025

Package Changes Through 4cf7ecb

There are 8 changes which include tauri-bundler with minor, tauri with minor, tauri-runtime with minor, tauri-runtime-wry with minor, tauri-utils with minor, @tauri-apps/cli with minor, tauri-cli with minor, @tauri-apps/api with minor

Planned Package Versions

The following package releases are the planned based on the context of changes in this pull request.

package current next
@tauri-apps/api 2.4.1 2.5.0
tauri-utils 2.3.1 2.4.0
tauri-bundler 2.3.1 2.4.0
tauri-runtime 2.5.1 2.6.0
tauri-runtime-wry 2.5.1 2.6.0
tauri-codegen 2.1.1 2.1.2
tauri-macros 2.1.1 2.1.2
tauri-plugin 2.1.1 2.1.2
tauri-build 2.1.1 2.1.2
tauri 2.4.1 2.5.0
@tauri-apps/cli 2.4.1 2.5.0
tauri-cli 2.4.1 2.5.0

Add another change file through the GitHub UI by following this link.


Read about change files or the docs at github.com/jbolda/covector

@velocitysystems velocitysystems force-pushed the bundle_version branch 2 times, most recently from 20cac59 to b1b76f2 Compare April 4, 2025 15:57
@FabianLars FabianLars added this to the 2.5 milestone Apr 5, 2025
@velocitysystems
Copy link
Contributor Author

@FabianLars Just rebased the PR. I was seeing an unrelated CI failure for Linux but should be resolved by running again.

@velocitysystems
Copy link
Contributor Author

@FabianLars Looks like it's still happening with the Ubuntu runner:

Caused by:
  process didn't exit successfully: `/target/debug/build/libc-3e67b6bac2b95bd0/build-script-build` (exit status: 1)
  --- stderr
  /target/debug/build/libc-3e67b6bac2b95bd0/build-script-build: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /target/debug/build/libc-3e67b6bac2b95bd0/build-script-build)
  /target/debug/build/libc-3e67b6bac2b95bd0/build-script-build: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /target/debug/build/libc-3e67b6bac2b95bd0/build-script-build)
  /target/debug/build/libc-3e67b6bac2b95bd0/build-script-build: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /target/debug/build/libc-3e67b6bac2b95bd0/build-script-build)
warning: build failed, waiting for other jobs to finish...
error: failed to run custom build command for `serde v1.0.217`

@FabianLars
Copy link
Member

do you mean the android ones? just ignore them, idk why it fails but since nothing in your pr touches android stuff and it also fails in other prs i won't require it to be resolved for this to get merged 🤷

@lucasfernog
Copy link
Member

looks good overall, i'll test tomorrow

@lucasfernog
Copy link
Member

bundle version was already being set at build time via xcodegen, so I needed to push some changes (plist addition alone wouldn't work)

lucasfernog
lucasfernog previously approved these changes Apr 12, 2025
@lucasfernog lucasfernog merged commit 0aa48fb into tauri-apps:dev Apr 12, 2025
29 of 30 checks passed
@github-project-automation github-project-automation bot moved this from 📬Proposal to 🔎 In audit in Roadmap Apr 12, 2025
@velocitysystems velocitysystems deleted the bundle_version branch April 12, 2025 13:31
lucasfernog added a commit that referenced this pull request Apr 12, 2025
follow-up for #13030 and tauri-apps/cargo-mobile2#450

the bundle version validation has been updated, now it can actually handle one or two integers (e.g. `100` or `10.7`) instead of just full triple semver strings (e.g. `10.7.1`).
lucasfernog added a commit that referenced this pull request Apr 12, 2025
* feat(cli): enhance iOS bundle version formatting

follow-up for #13030 and tauri-apps/cargo-mobile2#450

the bundle version validation has been updated, now it can actually handle one or two integers (e.g. `100` or `10.7`) instead of just full triple semver strings (e.g. `10.7.1`).

* lint
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: 🔎 In audit
Development

Successfully merging this pull request may close these issues.

[feat] Support custom CFBundleVersion for iOS and macOS
3 participants