Edit this page
Learn about the current limitations of EAS Build.
Edit this page
EAS Build is designed to work for any React Native project. However, it is good to be aware of certain limitations that we plan to address since they could prevent you from being able to use the service for your applications or might cause an inconvenience.
The resources available might be insufficient to build your app if your build process requires a significant amount of memory. In this case, consider using a large
resource class in the eas.json. See Android-specific resource class and iOS-specific resource class.
See Server infrastructure reference for more information. It contains the most up-to-date information about the current specifications of the Android (Ubuntu) and iOS (macOS) build servers.
Build jobs for Android install npm and Maven dependencies from a local cache. Build jobs for iOS install npm dependencies from a local cache, but there is no caching for CocoaPods yet.
Intermediate artifacts like node_modules directories are not cached and restored (for example, based on package-lock.json or yarn.lock), but if you commit them to your Git repository then they will be uploaded to build servers.
See dependency caching for more information.
If your build takes longer than 2 hours to run, it will be canceled. This limit is lower on the free plan, and the limit is subject to change in the future.
Note: Official guidance for package managers other than Yarn is limited.
While you likely can have success using other monorepo tools like Nx if you are willing to dig in and understand the tooling and get your hands dirty, the Expo team will be unable to provide support and guidance on those tools. We recommend using Yarn Workspaces because it is the only monorepo tool that we provide first-class integration with at the moment.
To be notified as progress is made on these items, you can subscribe to the EAS newsletter on expo.dev/eas.