Revision Date Author Comments
# d4de237f 01-Aug-2023 Evan Bacon <[email protected]>

feat(expo)!: drop logging endpoint (#18596)

# Why

- In the new versioned CLI we don't support the logging endpoint,
instead favoring the logging WebSocket setup by `metro-runtime`.
- Dropping s

feat(expo)!: drop logging endpoint (#18596)

# Why

- In the new versioned CLI we don't support the logging endpoint,
instead favoring the logging WebSocket setup by `metro-runtime`.
- Dropping support for `logUrl` will break logging in the legacy
`expo-cli start` command, no logs will show up.
- Drop `Logs` module: `import { Logs } from 'expo';`.
- Drop stack trace filter that removes `react-native-logging.fx` since
we no longer need it.
- Also removes the "temporary workaround"s from 2018 that filter out
warnings from the lottie package.
- Drop direct dependency on `invariant`, `pretty-format`, `fbemitter`

> This doesn't add breaking changes to the local Expo CLI, only the
deprecated global CLI.

# Test Plan

- Copied the JS expo files into a new project and websockets continued
to send logs.

# 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 ...


# 465d3694 26-Jul-2023 Evan Bacon <[email protected]>

feat(cli): dynamically enable lazy bundling (#23675)

# Why

If a package is using `import()` syntax, it needs to have
`@expo/metro-runtime` installed and imported somewhere. This issue
partially

feat(cli): dynamically enable lazy bundling (#23675)

# Why

If a package is using `import()` syntax, it needs to have
`@expo/metro-runtime` installed and imported somewhere. This issue
partially goes away in RN 73, and is not a problem in `expo-router`.

<!--
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

<!--
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 <[email protected]>

show more ...


# 60d28ff6 03-Jun-2023 Evan Bacon <[email protected]>

feat(cli): Add support for Metro lazy bundling (#22724)

# Why

- Companion to https://github.com/expo/router/pull/622

<!--
Please describe the motivation for this PR, and link to relevant GitH

feat(cli): Add support for Metro lazy bundling (#22724)

# Why

- Companion to https://github.com/expo/router/pull/622

<!--
Please describe the motivation for this PR, and link to relevant GitHub
issues, forums posts, or feature requests.
-->

# How

- Add `lazy` query parameter for Metro requests and `EXPO_NO_METRO_LAZY`
to disable the feature. Abiding by
https://github.com/react-native-community/discussions-and-proposals/blob/main/proposals/0605-lazy-bundling.md#__loadbundleasync-in-metro

# Test Plan

- Works when used with https://github.com/expo/router/pull/622

---------

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

show more ...


# be2ffbef 13-Feb-2023 Evan Bacon <[email protected]>

feat(cli, metro-config): implement new unstable_serverRoot feature (#21088)

# Why

- Metro web doesn't work with monorepos because requests that look up
past the project root like `/../../` will

feat(cli, metro-config): implement new unstable_serverRoot feature (#21088)

# Why

- Metro web doesn't work with monorepos because requests that look up
past the project root like `/../../` will be collapsed to `/` which
breaks a number of features.
- Metro added `unstable_serverRoot` which we now automatically set to
the workspace root when `EXPO_USE_METRO_WORKSPACE_ROOT=1` is enabled. If
this works well at scale, we'll enable the feature by default.

<!--
Please describe the motivation for this PR, and link to relevant GitHub
issues, forums posts, or feature requests.
-->

---------

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

show more ...


# 6d6b81f9 23-Jun-2022 Evan Bacon <[email protected]>

feat(cli): add web support to metro (#17927)

* feat: add web support for metro

* undo patch

* Update index.js

* Update MetroBundlerDevServer.ts

* Add second bundler dev server

* Add d

feat(cli): add web support to metro (#17927)

* feat: add web support for metro

* undo patch

* Update index.js

* Update MetroBundlerDevServer.ts

* Add second bundler dev server

* Add dev loading view to web

* Put feature behind EXPO_USE_METRO_WEB flag

* Move custom config into CLI

* Add support for assets across platforms

* reduce

* Added upstream web support

* Update webTemplate.ts

* Update CHANGELOG.md

* Update instantiateMetro.ts

* Update instantiateMetro.ts

* Update index.js

* Added bundle splitting support

* Update startAsync.ts

* Fixed default settings

* Add ability to copy from public folder

* wip: redirect unmatched routes to `/` on web

* fix fallback api

* Update exportApp.ts

* Update instantiateMetro.ts

* Update exportApp.ts

* clean up handler

* fixup

* clean up

* add web to export test

* Update start-test.ts

* added static serving for web

* Update packages/@expo/cli/CHANGELOG.md

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

* Update yarn.lock

lint fix

fix tests

* Update export-test.ts

* added template tests

* Create HistoryFallbackMiddleware-test.ts

* test ManifestMiddleware

* Create ServeStaticMiddleware-test.ts

* refactor multiplatform

* Update ManifestMiddleware-test.ts

* Update withMetroMultiPlatform.ts

* Update for latest metro

* Update packages/@expo/cli/src/export/resolveOptions.ts

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

show more ...


# 8d307f52 23-Mar-2022 Evan Bacon <[email protected]>

chore: refactor `expo/cli` to `@expo/cli` package (#16717)

* chore: refactor `expo/cli` to `@expo/cli` package

* Update CODEOWNERS

* fix linking

* fix lint script

* fix build file

* f

chore: refactor `expo/cli` to `@expo/cli` package (#16717)

* chore: refactor `expo/cli` to `@expo/cli` package

* Update CODEOWNERS

* fix linking

* fix lint script

* fix build file

* fix e2e tests

* lint before build

* use mock version

show more ...