-
Notifications
You must be signed in to change notification settings - Fork 5.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(metro-config): use explicit @expo/metro-config
dependency with resolved module paths
#25804
Merged
byCedric
merged 8 commits into
main
from
@bycedric/metro-config/resolve-proper-metro-config
Dec 11, 2023
Merged
fix(metro-config): use explicit @expo/metro-config
dependency with resolved module paths
#25804
byCedric
merged 8 commits into
main
from
@bycedric/metro-config/resolve-proper-metro-config
Dec 11, 2023
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
byCedric
requested review from
ide,
tsapeta,
brentvatne,
EvanBacon and
marklawlor
as code owners
December 7, 2023 15:47
expo-bot
added
bot: passed checks
ExpoBot has nothing to complain about
and removed
bot: suggestions
ExpoBot has some suggestions
labels
Dec 7, 2023
3 tasks
ide
approved these changes
Dec 7, 2023
EvanBacon
reviewed
Dec 8, 2023
byCedric
force-pushed
the
@bycedric/metro-config/resolve-proper-metro-config
branch
from
December 9, 2023 14:21
90f8db9
to
e675729
Compare
ide
requested changes
Dec 9, 2023
…ve the right version When using monorepos or isolated modules, this version could change depending on other installed packages. This changes the dependency from implicit to explicit and makes it more stable.
This renamed metro config package is the one we need to extend from in the future
…tending default config After chatting with @huntie, the `@react-native/metro-config` is expected to not-touch on any Expo surface and is solely used for React Native without Expo. This means that we will still extend from `metro-config`, and apply the patches from `@react-native/metro-config` ourselves.
byCedric
force-pushed
the
@bycedric/metro-config/resolve-proper-metro-config
branch
from
December 11, 2023 11:22
e675729
to
01cc315
Compare
ide
approved these changes
Dec 11, 2023
byCedric
deleted the
@bycedric/metro-config/resolve-proper-metro-config
branch
December 11, 2023 19:11
3 tasks
EvanBacon
added a commit
that referenced
this pull request
Dec 13, 2023
# Why - fix regression in #25804 <!-- Please describe the motivation for this PR, and link to relevant GitHub issues, forums posts, or feature requests. --> # How <!-- How did you build this feature or fix this bug and why? --> # Test Plan - Nothing in place to prevent this from regressing. We should probably have e2e web tests now. <!-- 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 `npx expo prebuild` & EAS Build (eg: updated a module plugin). --------- Co-authored-by: Expo Bot <34669131+expo-bot@users.noreply.github.com>
onizam95
pushed a commit
to onizam95/expo-av-drm
that referenced
this pull request
Jan 15, 2024
…resolved module paths (expo#25804) # Why Unfortunately, `metro-config` does not always return the fully resolved path of dependencies within the default metro config. This causes issues when using isolated modules (pnpm or npm). # How - Added explicit `@expo/metro-config` dependency to `expo` → This solves the same issue as expo#23580, but simplified. - Resolve `transformer.asyncRequireModulePath` to either `@expo/metro-runtime` or `metro-runtime/src/modules/asyncRequire` (with prio for `@expo/metro-runtime` when installed) # Test Plan TBD, will provide a repo to test. # 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 `npx expo prebuild` & EAS Build (eg: updated a module plugin).
onizam95
pushed a commit
to onizam95/expo-av-drm
that referenced
this pull request
Jan 15, 2024
# Why - fix regression in expo#25804 <!-- Please describe the motivation for this PR, and link to relevant GitHub issues, forums posts, or feature requests. --> # How <!-- How did you build this feature or fix this bug and why? --> # Test Plan - Nothing in place to prevent this from regressing. We should probably have e2e web tests now. <!-- 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 `npx expo prebuild` & EAS Build (eg: updated a module plugin). --------- Co-authored-by: Expo Bot <34669131+expo-bot@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Why
Unfortunately,
metro-config
does not always return the fully resolved path of dependencies within the default metro config. This causes issues when using isolated modules (pnpm or npm).How
@expo/metro-config
dependency toexpo
→ This solves the same issue as fix(expo,cli): export
@expo/metro-config
from controlling@expo/cli
instead of using implicit dependency #23580, but simplified.transformer.asyncRequireModulePath
to either@expo/metro-runtime
ormetro-runtime/src/modules/asyncRequire
(with prio for@expo/metro-runtime
when installed)Test Plan
TBD, will provide a repo to test.
Checklist
npx expo prebuild
& EAS Build (eg: updated a module plugin).