History log of /expo/packages/@expo/cli/src/start/server/BundlerDevServer.ts (Results 1 – 25 of 29)
Revision Date Author Comments
# edeec536 06-Sep-2023 Evan Bacon <[email protected]>

chore(cli): delete @expo/dev-server (#24272)

# Why

- I tried this before but the logs endpoint was blocking it.
- I forked the dev server when I wrote the original `expo/cli`, been
meaning to d

chore(cli): delete @expo/dev-server (#24272)

# Why

- I tried this before but the logs endpoint was blocking it.
- I forked the dev server when I wrote the original `expo/cli`, been
meaning to delete the original for a while. The duplicate code and
indirection is making the new server features harder to implement.

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

# How

- Copy/paste remaining code from `@expo/dev-server` in to `@expo/cli`.
- Delete `@expo/dev-server`.
- Drop unused `/logs` and json parser middleware.
- Drop logging mocks.
- Drop experimental Webpack native support.
- Drop legacy react-native middleware support (no longer needed since
everything is versioned).

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

# Test Plan

- Tests should keep passing.
- Need to do some actual runs since there aren't any e2e tests for
various parts of dev-server.

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


# 429dc7fc 26-Aug-2023 Evan Bacon <[email protected]>

fix(expo, asset, cli)!: unify asset hashing (#24090)

# Why

Convert the `../` segments of the server URL to `_` to support
monorepos. This same transformation takes place in
`AssetSourceResolver

fix(expo, asset, cli)!: unify asset hashing (#24090)

# Why

Convert the `../` segments of the server URL to `_` to support
monorepos. This same transformation takes place in
`AssetSourceResolver.web` (expo-assets, expo-image) and
`persistMetroAssets` of Expo CLI, this originally came from the [Metro
opinion](https://github.com/react-native-community/cli/blob/2204d357379e2067cebe2791e90388f7e97fc5f5/packages/cli-plugin-metro/src/commands/bundle/getAssetDestPathIOS.ts#L19C5-L19C10).

The purpose is to ensure no URL like `/foo/../bar.png` is requested, as
the result would be `/bar.png` which wouldn't work. The of how to handle
this didn't come from us, but we do need to ensure it's unified. At a
high-level, this does prevent the usage of certain files, as
`/foo/../bar.png` will be `/foo/_bar.png`, meaning a file named
`/foo/_bar.png` cannot also exist. This logic, while applied at runtime,
is actually only valid for production exports as we don't move or alias
files in development. The only way to have valid development files is to
ensure `../` never appears in the URL, i.e. by using
`unstable_serverRoot`.

- Drop legacy `expo/tools/hashAssetFiles.js` in favor of `expo-asset`
version.
- Unify runtime logic of asset file loading for monorepos.
- Split out of https://github.com/expo/expo/pull/23911

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

show more ...


# 9ba03fb0 23-Aug-2023 Will Schurman <[email protected]>

[config][cli] Remove classic manifest types (#24054)


# 8a424beb 11-Aug-2023 James Ide <[email protected]>

[lint] Upgrade to Prettier v3, typescript-eslint to v6 (#23544)

Why
---
Prettier 3 is out. Add support for it with this linter config.

**Note for reviewer:** the first commit is the one with th

[lint] Upgrade to Prettier v3, typescript-eslint to v6 (#23544)

Why
---
Prettier 3 is out. Add support for it with this linter config.

**Note for reviewer:** the first commit is the one with the actual
changes. The rest of this PR are changes to get the linter passing
(mostly autofix).

How
---
Update eslint-config-prettier and eslint-plugin-prettier. To address
deprecation warnings, also update typescript-eslint/parser and
typescript-eslint/eslint-plugin.
Because of an update to typescript-eslint/parser, we need to suppress
deprecation warnings (documented in a comment).

Regenerated test snapshots. Due to the upgraded dependencies, typecasts
and optional chaining are now auto-fixable by lint. This converts
warnings into autofixes.

Test Plan
---
`yarn test` in the linter config. Run `expotools check --all --fix-lint
--no-build --no-test --no-uniformity-check` to try this config on the
whole repo.

---------

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

show more ...


# 065a44f7 04-Jul-2023 Cedric van Putten <[email protected]>

fix(cli, dev-server): add `SYSTEMROOT` for `open` when opening browsers on Windows (#23287)

# Why

Fixes #23252

# How

- `open` has a bug on Windows, where it [uses
`process.env.SYSTEMROOT`]

fix(cli, dev-server): add `SYSTEMROOT` for `open` when opening browsers on Windows (#23287)

# Why

Fixes #23252

# How

- `open` has a bug on Windows, where it [uses
`process.env.SYSTEMROOT`](https://github.com/sindresorhus/open/blob/main/index.js#L173)
instead of
[`process.env.SystemRoot`](https://en.wikipedia.org/wiki/Environment_variable#:~:text=The%20%25SystemRoot%25%20variable%20is%20a,including%20the%20drive%20and%20path.)
- This causes the executed command to run with `undefined\\...`
- There has been no fix yet, and due to `open` being fully ESM now, we
probably can't upgrade too

> See various issues
[#300](https://github.com/sindresorhus/open/issues/300),
[#292](https://github.com/sindresorhus/open/issues/292),
[#270](https://github.com/sindresorhus/open/issues/270), or
[#205](https://github.com/sindresorhus/open/issues/205)

This basically sets the missing `SYSTEMROOT` when trying to open a
browser on Windows. It's fixed in both `@expo/cli` as well as
`@expo/dev-server` (to open the Chrome DevTools).

# Test Plan

This has to be tested on Windows.

- `$ yarn create expo ./test-browser -t tabs@beta`
- `$ cd ./test-browser`
- `$ yarn start`
- Try pressing the following keys:
- `j` -> to open the Chrome DevTools, after connecting a device. Should
work as expected.
- `w` -> to open the browser with Metro web. Should work as expected.

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


# e32ccf9f 21-Jun-2023 Evan Bacon <[email protected]>

feat(cli): improve offline support (#22961)

# Why

Offline support is sometimes needed in parts of other commands besides
`start`, this PR introduces an `EXPO_OFFLINE` env var which can be
gener

feat(cli): improve offline support (#22961)

# Why

Offline support is sometimes needed in parts of other commands besides
`start`, this PR introduces an `EXPO_OFFLINE` env var which can be
generally used to force offline support.
<!--
Please describe the motivation for this PR, and link to relevant GitHub
issues, forums posts, or feature requests.
-->

# How

- `EXPO_OFFLINE`
- Show a better error message when your computer is connected to wifi
but there's no signal.
- Assert in `npx expo login` and `npx expo register` when `EXPO_OFFLINE`
is set.
- Fail better when validating versions offline.

In the case of running `npx expo` without wifi:

## Before

```
june-16 �� nexpo
Starting project at /Users/evanbacon/Documents/GitHub/lab/june-16
Starting Metro Bundler
Unable to reach Expo servers. Falling back to using the cached dependency map (bundledNativeModules.json) from the package "expo" installed in your project.
FetchError: request to https://api.expo.dev/v2/versions/latest failed, reason: getaddrinfo ENOTFOUND api.expo.dev
FetchError: request to https://api.expo.dev/v2/versions/latest failed, reason: getaddrinfo ENOTFOUND api.expo.dev
at ClientRequest.<anonymous> (/Users/evanbacon/Documents/GitHub/expo/node_modules/node-fetch/lib/index.js:1491:11)
at ClientRequest.emit (node:events:513:28)
at TLSSocket.socketErrorListener (node:_http_client:502:9)
at TLSSocket.emit (node:events:513:28)
at emitErrorNT (node:internal/streams/destroy:151:8)
at emitErrorCloseNT (node:internal/streams/destroy:116:3)
at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
```

## After

```
june-16 �� nexpo
Starting project at /Users/evanbacon/Documents/GitHub/lab/june-16
Starting Metro Bundler
Unable to reach Expo servers. Falling back to using the cached dependency map (bundledNativeModules.json) from the package "expo" installed in your project.
CommandError: Network connection is unreliable. Try again with the environment variable `EXPO_OFFLINE=1` to skip network requests.
```


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

# Test Plan

- Updated tests and added new tests for things like the register
command.

---------

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

show more ...


# 94b54ec3 20-Jun-2023 Evan Bacon <[email protected]>

chore(cli, docs): update typed routes (#22848)

# Why

I keep getting DMs about this feature being confusing so I'm doing a
pass to try and bring it to parity with the rest of our offering.

<!-

chore(cli, docs): update typed routes (#22848)

# Why

I keep getting DMs about this feature being confusing so I'm doing a
pass to try and bring it to parity with the rest of our offering.

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

# How

- Update the experimental docs to not be a general "TypeScript" guide
but rather, be focused on the "Typed Routes" feature.
- Use the new `experiments.typedRoutes` flag and not an environment
variable. https://github.com/expo/universe/pull/12590
- Drop flag misinfo in the Expo CLI docs "This includes support for the
network inspector."
- Add a slightly more e2e test for the side-effects.
- Document how to actually turn the feature on.

---------

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

show more ...


# a7e47f4d 16-Jun-2023 Evan Bacon <[email protected]>

feat(cli): Add ability to switch runtimes during start. (#22924)

# Why

- We're going to start making the `--dev-client` flag be on more
aggressively, i.e. favoring custom builds over Expo Go mor

feat(cli): Add ability to switch runtimes during start. (#22924)

# Why

- We're going to start making the `--dev-client` flag be on more
aggressively, i.e. favoring custom builds over Expo Go more.
- This doesn't lean one way or the other, but it does make it easier to
course correct if we guess wrong. We'll also be adding an explicit flag
to force the initial mode.
- Some caveats:
- The custom `--scheme` is not currently respected.
- Non-dev-client runs will validate versions, here we don't validate
versions during the swap.

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

# How

- Press `s` to swap runtime modes. This can happen with `npx expo
start`, `run:ios`, and `run:android`

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

# Test Plan

- TBD

# 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]>
Co-authored-by: Brent Vatne <[email protected]>

show more ...


# eceee436 13-Apr-2023 Mark Lawlor <[email protected]>

feat(@expo/cli): manage expo-env.d.ts when EXPO_USE_TYPED_ROUTES is enabled (#22096)

# Why

Sister PR to https://github.com/expo/router/pull/481 and
https://github.com/expo/router/pull/477

Thi

feat(@expo/cli): manage expo-env.d.ts when EXPO_USE_TYPED_ROUTES is enabled (#22096)

# Why

Sister PR to https://github.com/expo/router/pull/481 and
https://github.com/expo/router/pull/477

This automatically creates a `expo-env.d.ts` file that is managed by
Expo. It will populate the `tsconfig.json` and add it to `gitignore`.
The file is ignored as it is managed by Expo CLI and may change between
patches.

Additionally, types are now generated when bundling.

# Test Plan

Create a new Expo Router application using the branch
`marklawlor/expo-env`

`EXPO_USE_TYPED_ROUTES=true nexpo start`

Observe that

- [ ] `expo-env.d.ts` was created
- [ ] New types are available (such as `hover` on PressableState)
- [ ] `expo-env.d.ts` is added to the `gitignore file

Running the `nexpo start` without `EXPO_USE_TYPED_ROUTES` will remove
the generated content.

# Checklist

Documentation will be added to the Expo Router docs

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


# 6a750d06 08-Apr-2023 Evan Bacon <[email protected]>

feat(cli, metro-config): environment variable support (#21983)

# Why

- It's nice to be able to use uncommitted values in your app, based on
the environment. This feels very familiar to web devel

feat(cli, metro-config): environment variable support (#21983)

# Why

- It's nice to be able to use uncommitted values in your app, based on
the environment. This feels very familiar to web developers.
- Values that are prefixed with `EXPO_PUBLIC_` will be inlined in the
bundle when bundling normally (e.g. not for Node.js).
- `.env` files are loaded into memory and applied to the process during
a run. This also means that they're available in `app.config.js`.
- During development-only, environment variables are exposed on the
`process.env` object (non-enumerable) to ensure they're available
between fast refresh updates.
<!--
Please describe the motivation for this PR, and link to relevant GitHub
issues, forums posts, or feature requests.
-->

# How

- Create new package `@expo/env` which is used to hydrate env variables
in a unified way. I plan to open another PR in `eas-cli` which uses this
package to fill in environment variables before uploading. NOTE:
environment variables that are defined in eas.json are not available in
Expo CLI when building locally, but are available in the cloud since
they'll be on the process, this means they effectively emulate
`.env.production`.
- Update templates to gitignore local env files.
- Add basic documentation to the versioned metro guide (more to come).


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

# Test Plan

- [ ] E2E rendering test
- [ ] E2E Node.js rendering test
- [x] Unit tests for serializer
- [x] Tests for env package

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

show more ...


# 1117330a 07-Apr-2023 Mark Lawlor <[email protected]>

feat: typed route generation for expo router (#21651)

> Draft PR - just seeking feedback on the implementation.

# Why

WIP implementation of route generation for Expo Router.

# How

## Typ

feat: typed route generation for expo router (#21651)

> Draft PR - just seeking feedback on the implementation.

# Why

WIP implementation of route generation for Expo Router.

# How

## Typescript bootstrapping

This is expands the Typescript bootstrapping to also accommodate for
long-lived typescript watchers.
- Changes `waitForMetroToObserveTypeScriptFile` to
`metroWatchTypeScriptFiles`
- Processes are now responsible to disabling their watcher
- tsconfig can optionally be watched

## Type generation

`typedRouteGenerator` is invokes after the CLI has bootstrapped
TypeScript.
- Generates types only for absolute paths
- Supports static and dynamic routes
- Supports URL normalisation (TODO: Need unit tests for these!)
- Supports dynamic route parameter typing

# Test Plan

`EXPO_ROUTER_TYPED_ROUTES=true nexpo start`

// Todo

# Checklist

- [x] Documentation is up to date to reflect these changes (eg:
https://docs.expo.dev and README.md).
- [x] Conforms with the [Documentation Writing Style
Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
- [x] This diff will work correctly for `expo prebuild` & EAS Build (eg:
updated a module plugin).

---------

Co-authored-by: Evan Bacon <[email protected]>

show more ...


# 0a6ddb20 13-Mar-2023 Evan Bacon <[email protected]>

feat(cli): add basic static rendering for router projects (#21572)

# Why

- Implement an experimental static rendering system for Metro websites
using Expo Router.
- Behavior is undocumented and

feat(cli): add basic static rendering for router projects (#21572)

# Why

- Implement an experimental static rendering system for Metro websites
using Expo Router.
- Behavior is undocumented and highly experimental.

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

# How

- Add support to `start` and `export` which pre-renders static web pages
to HTML to improve SEO support on web.
- The system implements [React Navigation's
SSR](https://reactnavigation.org/docs/server-rendering) support.
- Head elements can be used with `import { Head } from
'expo-router/head'`.
- The root HTML is not exposed to the user.
- There are no data fetching mechanisms.
- There's no ability to provide a 404 page or other server features.


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

# Test Plan

- e2e test for exporting a router project statically.
- `EXPO_USE_STATIC=1 yarn expo` -> websites are pre-rendered before
being served.
- `EXPO_USE_STATIC=1 yarn expo export -p web` -> static routes are
rendered to static HTML files by the same name (dynamic routes are not
supported).


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


# fd055557 06-Mar-2023 Kudo Chien <[email protected]>

[cli][dev-menu][go] add react devtools (#21462)

# Why

close ENG-7468
close ENG-7469

# How

- [cli] add websocket proxy to forward react-devtools events.
- [cli] add static page for react-d

[cli][dev-menu][go] add react devtools (#21462)

# Why

close ENG-7468
close ENG-7469

# How

- [cli] add websocket proxy to forward react-devtools events.
- [cli] add static page for react-devtools frontend. since react-devtools only ships commonjs format, this pr tries to use jspm to support it on browsers.
- [dev-menu][go] listen `reconnectDevTools` metro websocket event and send `RCTDevMenuShown` to js for app to reconnect devtools websocket

# Test Plan

manual test only. please let me know if there's any proper points to add unit tests

show more ...


# 33643b60 04-Mar-2023 Evan Bacon <[email protected]>

feat(cli): auto setup typescript during start (#21475)

# Why

- Some users are confused about how to use the fully automated
TypeScript setup. It currently runs when you run `npx expo start` in a

feat(cli): auto setup typescript during start (#21475)

# Why

- Some users are confused about how to use the fully automated
TypeScript setup. It currently runs when you run `npx expo start` in a
project with `tsconfig.json` or any TypeScript file in the project.
- This change will run the TypeScript check continuously until
TypeScript is setup. This only applies to projects using Metro, and
currently is only run in `npx expo start`, and the run commands (when
the server is started in the current window, e.g. not headless mode).

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

# How

- Fork the `runServer` function from Metro into the CLI so we can access
the Metro bundler instance directly.
- Use Metro's native file watching to observe new TypeScript files being
added to the project (within the observable files). This is fast and
ensures we don't accidentally block a thread that otherwise could've
been used for bundling.
- The TypeScript continuous check only runs once, if you remove
TypeScript and add it back in the same process, then nothing happens.
This is a performance optimization.
- If TypeScript is enabled while the process is running, the user will
not be prompted to install, the packages will just install in the
project. Failures will be displayed in the running process, and no more
attempts will be made.
- If TypeScript is detected on start then the existing system will be
used and the continuous check will be skipped, this means projects
already using TypeScript won't have any technical performance hit.


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

# Test Plan

- In a project without TypeScript:
- `npx expo`
- `touch tsconfig.json` or `mv index.js index.tsx` or `touch foo.tsx`
- TypeScript is automatically installed for the project.
- `EXPO_NO_TYPESCRIPT_SETUP` voids this behavior
- Added unit tests.

<!--
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]>
Co-authored-by: Cedric van Putten <[email protected]>

show more ...


# 5404abc1 14-Feb-2023 Evan Bacon <[email protected]>

Close config file watchers to ensure process can exit. (#21199)

# Why

This was a bug and now it's fixed.

# How

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

# Test P

Close config file watchers to ensure process can exit. (#21199)

# Why

This was a bug and now it's fixed.

# How

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

# Test Plan

Start and stop the dev server in `expo start`, this should now
completely close and not hang open.

---------

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

show more ...


# 57a0d514 08-Nov-2022 Kudo Chien <[email protected]>

[cli] Fix start hermes debugger crash when starting with --dev-client (#19919)


# a91e9b85 14-Oct-2022 Evan Bacon <[email protected]>

feat(cli): open tunnels on web (#19504)

* feat: open tunnel urls with metro web

* Update CHANGELOG.md

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

Co-authored-by: Expo Bot <34669131+expo-bot@us

feat(cli): open tunnels on web (#19504)

* feat: open tunnel urls with metro web

* Update CHANGELOG.md

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

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

* Update BundlerDevServer-test.ts

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

show more ...


# 212e3a1a 26-Sep-2022 Eric Samelson <[email protected]>

[cli] ensure that development build is installed when opening interstitial page (#18836)

Co-authored-by: evanbacon <[email protected]>


# 674b4f9d 08-Sep-2022 Evan Bacon <[email protected]>

fix(cli): hide server rate limiting warning during `npx expo start` (#19038)

* Hide server rate limiting warning during `npx expo start`

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

Co-authored-by

fix(cli): hide server rate limiting warning during `npx expo start` (#19038)

* Hide server rate limiting warning during `npx expo start`

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

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

* Update BundlerDevServer.ts

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

show more ...


# 81e9e3be 09-Aug-2022 Evan Bacon <[email protected]>

feat(cli): handle all development session errors directly (#18499)

* feat(cli): handle all development session errors directly

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

Co-authored-by: Expo Bot

feat(cli): handle all development session errors directly (#18499)

* feat(cli): handle all development session errors directly

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

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

* Update DevelopmentSession.ts

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


# 474a7a4b 21-Jun-2022 Evan Bacon <[email protected]>

chore(cli): migrate to debug package (#17084)

* chore(cli): migrate to debug package

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

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

chore(cli): migrate to debug package (#17084)

* chore(cli): migrate to debug package

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

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

* Update checkPackages.ts

* Update packages/@expo/cli/src/start/platforms/android/ADBServer.ts

* Update ADBServer.ts

* Update activateWindow.ts

* Update adb.ts

* migrate new methods to debug

* Update variadic.ts

* Update yarn.lock

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

show more ...


# 161657f3 14-Jun-2022 Evan Bacon <[email protected]>

fix(cli): prevent starting tunnel on web to ensure native works (#17666)

* fix(cli): prevent starting tunnel on web to ensure native works

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

Co-authored-

fix(cli): prevent starting tunnel on web to ensure native works (#17666)

* fix(cli): prevent starting tunnel on web to ensure native works

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

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

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

show more ...


# 3d6e487d 27-Apr-2022 Evan Bacon <[email protected]>

feat(cli): add `run:android` command (#17187)

* feat(cli): add `run:android` command

* added partial e2e test

* fix platforms showing up in terminal ui

* fix launching by link

* Update p

feat(cli): add `run:android` command (#17187)

* feat(cli): add `run:android` command

* added partial e2e test

* fix platforms showing up in terminal ui

* fix launching by link

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

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

* fix platforms showing up in terminal ui

fix launching by link

fixup tests

Delete resolveArgs-test.ts.snap

* revert changes

* Update index-test.ts

Update WebpackBundlerDevServer.ts

Update WebpackBundlerDevServer.ts

Update WebpackBundlerDevServer.ts

Update PlatformManager.ts

* Update index-test.ts

* update structure

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

show more ...


# edc92349 22-Apr-2022 Juwan Wheatley <[email protected]>

[@expo/cli] Close development session when CLI is stopped (#17170)

* [@expo/cli] Close development session when CLI is stopped

* update changelog

* remove await

* add tests


12