Reopen Expo Build? EAS build leads to production white screen of death

Can you re-open expo build? Our app was running great with expo build and now we are paying for eas and stuck with the white screen of death. There were alot of breaking changes from sdk 44 to 45 and the app runs on iOS simulator and Xcode but when building and publishing the IPA file to Apple Test Flight consistently opens with a white screen. I went through all deprecated packages and the upgrade process but hit a wall here, It doesn’t feel like the eas build process is production ready, there are plenty of other complaints about this. I think our next step is to export and not use eas at all.

Hi @avantassel

I doubt they will re-enable the Classic build service, since it was deprecated since November 2021 if I remember correctly. Over a year, anyway.

There are some differences between dev builds and production builds. This is because it makes the development experience work better and faster, but then make the production app smaller and disable console.log() calls etc.

Because of these differences, unfortunately it can happen that something works in development and then fails in production. The first thing I would try is make the development environment closer to the production build and see if you can reproduce the error. You do this by enabling minification and disabling “dev” mode:

npx expo run --no-dev --minify

(You could also try one option at a time and then both together.)

Hopefully you’ll get some indication as to what’s going wrong and you can fix it.

By the way, you might want to create a “preview” build to install on the device instead of having to submit the app to Testflight. See Internal distribution

If --no-dev --minify doesn’t point you in the right direction, maybe see if the device logs tell you anything.

EDIT: Also, you can contact them on Contact Us — Expo if necessary.

I found out what is going on, eas build re-runs yarn install and does not use the existing node_modules directory like expo build did. We have some custom packages needed here. Is there anyway to tell eas build to use the existing node_modules directory and not run yarn install?

I see you created another thread for that question. As Brent said in that thread, patch-package will probably do what you need.

It uses a post-install script to apply patches to things in your node_modules.