Skip to content
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

[EAGER_BUNDLE] CommandError: Unknown arguments: --eager #2680

Closed
markwitt1 opened this issue Nov 10, 2024 · 1 comment
Closed

[EAGER_BUNDLE] CommandError: Unknown arguments: --eager #2680

markwitt1 opened this issue Nov 10, 2024 · 1 comment
Labels
needs review Issue is ready to be reviewed by a maintainer

Comments

@markwitt1
Copy link

Build/Submit details page URL

No response

Summary

When building an App (on Expo 52) with latest eas-cli

Managed or bare?

Bare

Environment

expo-env-info 1.2.0 environment info:
System:
OS: macOS 14.2
Shell: 5.9 - /bin/zsh
Binaries:
Node: 22.8.0 - ~/.nvm/versions/node/v22.8.0/bin/node
npm: 10.8.2 - ~/.nvm/versions/node/v22.8.0/bin/npm
Watchman: 2024.11.04.00 - /opt/homebrew/bin/watchman
Managers:
CocoaPods: 1.16.2 - /opt/homebrew/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 23.5, iOS 17.5, macOS 14.5, tvOS 17.5, visionOS 1.2, watchOS 10.5
IDEs:
Xcode: 15.4/15F31d - /usr/bin/xcodebuild
npmPackages:
expo: ~51.0.37 => 52.0.0-preview.23
expo-router: ~3.5.23 => 4.0.0-preview.14
react: 18.2.0 => 18.3.1
react-native: 0.75.4 => 0.76.1
Expo Workflow: bare

Enabled experimental React Native Directory checks. Unset the EXPO_DOCTOR_ENABLE_DIRECTORY_CHECK environment variable to disable this check.
✔ Check package.json for common issues
✔ Check Expo config for common issues
✔ Check for common project setup issues
✔ Check dependencies for packages that should not be installed directly
✔ Check npm/ yarn versions
✔ Check for issues with Metro config
✔ Check native tooling versions
✔ Check if the project meets version requirements for submission to app stores
✔ Check for app config fields that may not be synced in a non-CNG project
✔ Check that native modules do not use incompatible support packages
✔ Check for legacy global CLI installed locally
✔ Check Expo config (app.json/ app.config.js) schema
✖ Validate packages against React Native Directory package metadata
✖ Check that packages match versions required by installed Expo SDK
✖ Check that native modules use compatible support package versions for installed Expo SDK

Detailed check results:

Expected package @expo/config-plugins@~9.0.0
Found invalid:
@expo/[email protected]
(for more info, run: npm why @expo/config-plugins)
Advice: Upgrade dependencies that are using the invalid package versions.

The following issues were found when validating your dependencies against React Native Directory:
Untested on New Architecture: @likashefqet/react-native-image-zoom
No metadata available: @dev-plugins/react-query, @expo-google-fonts/fira-code, @expo-google-fonts/noto-sans, @expo-google-fonts/outfit, @gluestack-ui/button, @gluestack-ui/nativewind-utils, @gluestack-ui/overlay, @gluestack-ui/pressable, @gluestack-ui/toast, @uidotdev/usehooks, clsx, marked, openapi-fetch, openapi-react-query, posthog-react-native-session-replay, prism-react-renderer, socket.io-client, tailwind-merge, tailwindcss, text-encoding-polyfill
Advice:

  • Use libraries that are actively maintained and support the New Architecture. Find alternative libraries with https://reactnative.directory.
  • Add packages to expo.doctor.reactNativeDirectoryCheck.exclude in package.json to selectively skip validations, if the warning is not relevant.
  • Update React Native Directory to include metadata for unknown packages. Alternatively, set expo.doctor.reactNativeDirectoryCheck.listUnknownPackages in package.json to false to skip warnings about packages with no metadata, if the warning is not relevant.

The following packages should be updated for best compatibility with the installed expo version:
@react-native-async-storage/[email protected] - expected version: 1.23.1
[email protected] - expected version: ~0.29.4
[email protected] - expected version: 6.4.1
[email protected] - expected version: 4.12.0
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.

Error output

No response

Reproducible demo or steps to reproduce from a blank project

Create expo app with following deps:

"dependencies": {
"@dev-plugins/react-query": "^0.0.7",
"@expo-google-fonts/fira-code": "^0.2.3",
"@expo-google-fonts/noto-sans": "^0.2.3",
"@expo-google-fonts/outfit": "^0.2.3",
"@expo/vector-icons": "^14.0.4",
"@gluestack-ui/button": "^1.0.7",
"@gluestack-ui/nativewind-utils": "^1.0.25",
"@gluestack-ui/overlay": "^0.1.15",
"@gluestack-ui/pressable": "^0.1.16",
"@gluestack-ui/toast": "^1.0.7",
"@invertase/react-native-apple-authentication": "^2.4.0",
"@likashefqet/react-native-image-zoom": "^4.2.0",
"@react-native-async-storage/async-storage": "1.23.1",
"@react-native-firebase/app": "^21.0.0",
"@react-native-firebase/app-check": "^21.0.0",
"@react-native-firebase/auth": "^21.2.0",
"@react-native-google-signin/google-signin": "^13.1.0",
"@react-navigation/bottom-tabs": "~6.5.7",
"@react-navigation/material-top-tabs": "^6.6.14",
"@react-navigation/native": "~6.1.6",
"@sentry/react-native": "^5.24.3",
"@tanstack/react-query": "^5.59.13",
"@uidotdev/usehooks": "^2.4.1",
"clsx": "^2.1.1",
"expo": "~51.0.37",
"expo-application": "~5.9.1",
"expo-av": "~14.0.7",
"expo-blur": "~13.0.2",
"expo-build-properties": "~0.12.5",
"expo-dev-client": "~4.0.28",
"expo-document-picker": "~12.0.2",
"expo-font": "~12.0.10",
"expo-haptics": "~13.0.1",
"expo-image": "~1.13.0",
"expo-localization": "~15.0.3",
"expo-router": "~3.5.23",
"expo-sharing": "~12.0.1",
"expo-splash-screen": "~0.27.6",
"expo-store-review": "~7.0.2",
"expo-system-ui": "~3.0.7",
"expo-updates": "~0.25.27",
"expo-web-browser": "~13.0.3",
"marked": "5.0.2",
"nativewind": "^4.1.10",
"openapi-fetch": "^0.12.2",
"openapi-react-query": "^0.2.0",
"posthog-react-native": "^3.3.4",
"posthog-react-native-session-replay": "^0.1.3",
"prism-react-renderer": "^2.4.0",
"react": "18.2.0",
"react-content-loader": "^7.0.2",
"react-native": "0.75.4",
"react-native-gesture-handler": "~2.16.2",
"react-native-marked": "^6.0.5",
"react-native-pager-view": "6.3.0",
"react-native-purchases": "^8.2.2",
"react-native-reanimated": "~3.10.1",
"react-native-safe-area-context": "4.10.5",
"react-native-screens": "4.0.0",
"react-native-svg": "15.2.0",
"socket.io-client": "^4.8.0",
"tailwind-merge": "^2.5.3",
"tailwindcss": "^3.4.13",
"text-encoding-polyfill": "^0.6.7"
},

@markwitt1 markwitt1 added the needs review Issue is ready to be reviewed by a maintainer label Nov 10, 2024
@szdziedzic
Copy link
Member

Hey,

This new EAGER_BUNDLE phase should only be executed for SDK 52 builds. We detect the SDK version for the build in EAS CLI based on the actually installed SDK version, which in your case is 52:

expo: ~51.0.37 => 52.0.0-preview.23

But during the build, we don't use your local node_modules but rather install them from scratch based on the package.json contents and lockfile.

My guess is that you were operating on a branch on which you tested SDK 52, then you switched to the main branch to trigger a build but didn't run a npm install to revert packages to the correct versions for this branch, that's what caused EAS CLI to detect SDK 52 when it was 51 in package.json

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs review Issue is ready to be reviewed by a maintainer
Projects
None yet
Development

No branches or pull requests

2 participants