Build/Submit details page URL
No response
Summary
Auto-increment feature in EAS doesn’t work when my app version doesn’t follow the valid X.X.X format. We use semver prerelease identifiers like 3.1.0-alpha.25 for internal tests via Firebase App Distribution before releasing to production. Although Apple doesn’t allow this format, our production versions are properly tagged, such as 3.1.0. While I understand that EAS tries to validate the version number, it would be helpful to have an option to bypass this validation, allowing me to use the auto-increment feature.
I have "appVersionSource": "remote" and "autoIncrement": true set in my eas.json, and here’s the output of eas build --platform ios --profile preview --local. Also, my version in app.config.ts is 1.0.0-dev.3.
★ eas-cli@13.4.2 is now available.
To upgrade, run npm install -g eas-cli.
Proceeding with outdated version.
(node:98263) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
No environment variables with visibility "Plain text" and "Sensitive" found for the "preview" environment on EAS servers.
Environment variables loaded from the "preview" build profile "env" configuration: SENTRY_AUTH_TOKEN, EXPO_PUBLIC_APP_VARIANT.
The required format for "version" field from app.json/app.config.ts is one to three period-separated integers, such as 10.14.1. The string can only contain numeric characters (0-9) and periods. Current value: 1.0.0-dev.3. Edit the "version" field in your app.json/app.config.ts to match the required format. Learn more: https://developer.apple.com/documentation/bundleresources/information_property_list/cfbundleshortversionstring
Error: build command failed.
Managed or bare?
Managed
Environment
expo-env-info 1.2.1 environment info:
System:
OS: macOS 15.1
Shell: 5.9 - /bin/zsh
Binaries:
Node: 23.3.0 - /opt/homebrew/bin/node
npm: 10.9.0 - /opt/homebrew/bin/npm
Managers:
CocoaPods: 1.16.2 - /opt/homebrew/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 24.1, iOS 18.1, macOS 15.1, tvOS 18.1, visionOS 2.1, watchOS 11.1
IDEs:
Android Studio: 2024.1 AI-241.18034.62.2411.12071903
Xcode: 16.1/16B40 - /usr/bin/xcodebuild
npmPackages:
expo: ~51.0.36 => 51.0.36
expo-router: ~3.5.23 => 3.5.23
react: 18.3.1 => 18.3.1
react-dom: 18.3.1 => 18.3.1
react-native: ~0.75.4 => 0.75.4
npmGlobalPackages:
eas-cli: 13.3.0
Expo Workflow: bare
Running 14 checks on your project...
✔ Check Expo config for common issues
✔ Check package.json for common issues
✔ Check dependencies for packages that should not be installed directly
✔ Check for common project setup issues
(node:147) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
✔ Check npm/ yarn versions
✔ Check if the project meets version requirements for submission to app stores
✔ Check for issues with metro config
✔ Check for app config fields that may not be synced in a non-CNG project
✔ Check native tooling versions
✔ Check for legacy global CLI installed locally
✔ Check that native modules do not use incompatible support packages
✖ Check that packages match versions required by installed Expo SDK
✔ Check Expo config (app.json/ app.config.js) schema
✔ Check that native modules use compatible support package versions for installed Expo SDK
Detailed check results:
(node:393) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
The following packages should be updated for best compatibility with the installed expo version:
@sentry/react-native@5.33.1 - expected version: ~5.24.3
expo@51.0.36 - expected version: ~51.0.39
expo-dev-client@4.0.27 - expected version: ~4.0.29
expo-notifications@0.28.18 - expected version: ~0.28.19
expo-router@3.5.23 - expected version: ~3.5.24
expo-splash-screen@0.27.5 - expected version: ~0.27.7
react-native-safe-area-context@4.11.0 - expected version: 4.10.5
react-native-svg@15.6.0 - expected version: 15.2.0
@types/react@18.3.11 - expected version: ~18.2.79
typescript@5.6.2 - expected version: ~5.3.3
Your project may not work correctly until you install the expected versions of the packages.
Found outdated dependencies
Advice: Use 'npx expo install --check' to review and upgrade your dependencies.
One or more checks failed, indicating possible issues with the project.
Error output
No response
Reproducible demo or steps to reproduce from a blank project
- Add
"appVersionSource": "remote" and "autoIncrement": true to eas.json.
- Set your version to
1.0.0-dev.3 in app.config.ts.
- Run eas build command with iOS platform.
Build/Submit details page URL
No response
Summary
Auto-increment feature in EAS doesn’t work when my app version doesn’t follow the valid X.X.X format. We use semver prerelease identifiers like 3.1.0-alpha.25 for internal tests via Firebase App Distribution before releasing to production. Although Apple doesn’t allow this format, our production versions are properly tagged, such as 3.1.0. While I understand that EAS tries to validate the version number, it would be helpful to have an option to bypass this validation, allowing me to use the auto-increment feature.
I have
"appVersionSource": "remote"and"autoIncrement": trueset in my eas.json, and here’s the output ofeas build --platform ios --profile preview --local. Also, my version inapp.config.tsis1.0.0-dev.3.★ eas-cli@13.4.2 is now available. To upgrade, run npm install -g eas-cli. Proceeding with outdated version. (node:98263) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead. (Use `node --trace-deprecation ...` to show where the warning was created) No environment variables with visibility "Plain text" and "Sensitive" found for the "preview" environment on EAS servers. Environment variables loaded from the "preview" build profile "env" configuration: SENTRY_AUTH_TOKEN, EXPO_PUBLIC_APP_VARIANT. The required format for "version" field from app.json/app.config.ts is one to three period-separated integers, such as 10.14.1. The string can only contain numeric characters (0-9) and periods. Current value: 1.0.0-dev.3. Edit the "version" field in your app.json/app.config.ts to match the required format. Learn more: https://developer.apple.com/documentation/bundleresources/information_property_list/cfbundleshortversionstring Error: build command failed.Managed or bare?
Managed
Environment
Error output
No response
Reproducible demo or steps to reproduce from a blank project
"appVersionSource": "remote"and"autoIncrement": truetoeas.json.1.0.0-dev.3inapp.config.ts.