History log of /expo/packages/@expo/cli/src/utils/nodeEnv.ts (Results 1 – 1 of 1)
Revision Date Author Comments
# 2dd43328 24-Feb-2023 Evan Bacon <[email protected]>

feat(cli)!: set node and babel env for CLI commands (#21337)

# Why

- User's may want to dynamically configure Metro or their Expo Config
file to work differently when bundling for production env

feat(cli)!: set node and babel env for CLI commands (#21337)

# Why

- User's may want to dynamically configure Metro or their Expo Config
file to work differently when bundling for production environments, they
can now do this by utilizing the standard `NODE_ENV` environment
variable. We've been doing this with Webpack since it was introduced.
<!--
Please describe the motivation for this PR, and link to relevant GitHub
issues, forums posts, or feature requests.
-->

# How

- Set `NODE_ENV` and `BABEL_ENV` environment variables to `development`
or `production` in `start`, `export`, `customize`, `install`, `run:ios`,
`run:android`, `config`, `prebuild` commands based on the input mode.
- This can be overwritten by setting `NODE_ENV` and `BABEL_ENV` manually
before running. `BABEL_ENV` will be set to `NODE_ENV` if defined.
- Most commands can safely default to assuming `development`.
- Only thing that this doesn't cover is `npx react-native bundle` and
`npx react-native start` (building from Xcode/Android Studio). We'll
need to change these commands in the future but it shouldn't be blocking
for this PR.


<!--
How did you build this feature or fix this bug and why?
-->

# Test Plan

<!--
Please describe how you tested this change and how a reviewer could
reproduce your test, especially if this PR does not include automated
tests! If possible, please also provide terminal output and/or
screenshots demonstrating your test/reproduction.
-->

# Checklist

<!--
Please check the appropriate items below if they apply to your diff.
This is required for changes to Expo modules.
-->

- [ ] 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).

---------

Co-authored-by: Expo Bot <[email protected]>

show more ...