question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Incorrect version/build number in iOS IPA’s Info.plist with Xcode 13

See original GitHub issue

New Issue Checklist

  • Updated turtle-cli to the latest version (yarn global add turtle-cli or npm install --global turtle-cli).
  • I read the Contribution Guidelines.
  • I read docs.expo.dev (Managed Workflow > Distributing Your App).
  • I searched for existing GitHub issues.
  • I enclosed the complete output when running turtle, including the stack trace and command used.

Issue Description

The app version number (expo.version) and build number (expo.ios.buildNumber) are not correctly set in the build’s Info.plist when using npx turtle build:ios with Xcode 13.

Command executed
npx expo publish --release-channel XXX
npx turtle build:ios \
    --release-channel XXX \
    --team-id YYY \
    --dist-p12-path distribution-certificate.p12 \
    --provisioning-profile-path provisioning-profile.mobileprovision \
    --output build.ipa

Result

build.ipa/Payload/ExpoKitApp.app/Info.plist contains

	<key>CFBundleShortVersionString</key>
	<string>1.0</string>

and

	<key>CFBundleVersion</key>
	<string>2.15.3</string>

which are not the values I defined as expo.version and expo.ios.buildNumber in my app.config.json.

Environment

$ expo diagnostics
  Expo CLI 4.12.0 environment info:
    System:
      OS: macOS 11.6
      Shell: 5.8 - /bin/zsh
    Binaries:
      Node: 14.17.6 - /usr/local/opt/node@14/bin/node
      Yarn: 1.22.11 - /usr/local/bin/yarn
      npm: 6.14.15 - /usr/local/opt/node@14/bin/npm
      Watchman: 2021.09.13.00 - /usr/local/bin/watchman
    Managers:
      CocoaPods: 1.11.2 - /usr/local/bin/pod
    SDKs:
      iOS SDK:
        Platforms: iOS 15.0, DriverKit 20.4, macOS 11.3, tvOS 15.0, watchOS 8.0
      Android SDK:
        API Levels: 21, 30
        Build Tools: 30.0.3
        System Images: android-16 | Google APIs Intel x86 Atom, android-21 | Google APIs Intel x86 Atom, android-30 | Google Play Intel x86 Atom
    IDEs:
      Android Studio: 4.2 AI-202.7660.26.42.7351085
      Xcode: 13.0/13A233 - /usr/bin/xcodebuild
    npmPackages:
      expo: ^42.0.0 => 42.0.3 
      react: 16.13.1 => 16.13.1 
      react-native: https://github.com/expo/react-native/archive/sdk-42.0.0.tar.gz => 0.63.2 
    npmGlobalPackages:
      expo-cli: 4.12.0
    Expo Workflow: managed
$ turtle --version
0.22.5

Cause/workaround

The problem seems related to Xcode 13. After installing Xcode 12.5.1 and configuring it as version for my Command Line Tools using xcode-select, the problem disappeared.

This Fastlane issue seems like it might be related: https://github.com/fastlane/fastlane/issues/19352

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Comments:5 (3 by maintainers)

github_iconTop GitHub Comments

1reaction
wkozyra95commented, Sep 30, 2021

I just published turtle-cli@beta that should fix the issue. I’m not sure when this fix will land as latest because I need to make sure that it does not break older xcode versions

0reactions
wkozyra95commented, Oct 4, 2021

fix was released in the latest turtle-cli

Read more comments on GitHub >

github_iconTop Results From Across the Web

Xcode 13 app archiving is modifying framework plist
The Frameworks of the created app will have their Info.plist modified. ... If your app has an invalid number (like one that was...
Read more >
What is an error analyzing app version when distributing from ...
I want to distribute app, but I received the error. I don't know the cause. I use Xcode Version 13.0 (13A233). An error...
Read more >
Path to the final IPA file | Page 2 - Unity Forum
For anyone attempting this today, try ${UNITY_PLAYER_PATH} in your post-build script. For iOS this points to the .ipa location. For WebGL it ...
Read more >
Xcode 13 Missing Info.plist - Use Your Loaf
When you create a new SwiftUI project with Xcode 13, or later, you may notice it doesn't have an Info.plist file. What's going...
Read more >
Build numbering and app versioning - Bitrise Docs
Setting up iOS versioning for apps using Xcode 13+ · Add the Set Xcode Project Build Number Step to your Workflow. · Set...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found