refactor(package-manager)!: extend the API and provide access to spawn child (#18576)# Why Fixes ENG-7545 This proposal PR changes the API of the (node) package managers, with the goal of:
refactor(package-manager)!: extend the API and provide access to spawn child (#18576)# Why Fixes ENG-7545 This proposal PR changes the API of the (node) package managers, with the goal of: - Having the right API options to install/remove packages to `dependencies`/`devDependencies`/global deps - Having access to the actual `spawnAsync` child, to pipe logs into different systems (for example in EAS build) - Allowing us to fix a couple of annoying DX issues (see follow up PRs) > This is further outlined in the Package Manager API proposal. Before merging this one, we need to merge these other PRs to not-break `main`. Any feedback on the proposal is welcome, especially while in draft. - https://github.com/expo/expo/pull/19343 - https://github.com/expo/expo/pull/19344 # How See Package Manager API proposal. # Test Plan > These changes are backward incompatible and require a new version update. This change also allowed us to implement the following fixes (all stacked PRs): - https://github.com/expo/expo/pull/19343 - https://github.com/expo/expo/pull/19344 - https://github.com/expo/expo/pull/19342 - https://github.com/expo/expo/pull/19340 - https://github.com/expo/expo/pull/19341 - https://github.com/expo/expo/pull/19764 - https://github.com/expo/expo/pull/19835 - https://github.com/expo/expo/pull/21189 # Checklist <!-- Please check the appropriate items below if they apply to your diff. This is required for changes to Expo modules. --> - [x] Documentation is up to date to reflect these changes (eg: https://docs.expo.dev and README.md). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md) - [ ] This diff will work correctly for `expo prebuild` & EAS Build (eg: updated a module plugin).
show more ...