bugsnag / bugsnag-expo

MIT License
11 stars 5 forks source link

[PLAT-8778] EAS Plugin Monorepo compatibility (v46) #57

Closed gingerbenw closed 1 year ago

gingerbenw commented 1 year ago

Goal

To enable source-maps plugin to work for an expo project in a monorepo, based on yarn workspaces

Design

The @bugsnag/expo-eas-sourcemaps-plugin updates the android and iOS build configuration with the necessary steps to execute an upload using the @bugsnag/source-maps library, and has a hardcoded path to the relevant binaries. (in node_modules)

We must prevent these binaries from being hoisted when using yarn workspaces, so after selecting the option to automatically uploads source maps, the cli tool will:

This will prevent the dependencies from being hoisted, and therefore enable the plugin to upload source maps during eas build

Testing

Installed and built expo project using eas from within a monorepo, and as a standalone application using yarn v1.x and v3.x, tests updated