| #
9b1b5ec6 |
| 09-Sep-2023 |
Evan Bacon <[email protected]> |
Add support for bun as a package manager. (#24344)
# Why
- Follow up for https://github.com/expo/expo/pull/24168 adding support
for install, prebuild, etc. to use bun as well.
---------
Co
Add support for bun as a package manager. (#24344)
# Why
- Follow up for https://github.com/expo/expo/pull/24168 adding support
for install, prebuild, etc. to use bun as well.
---------
Co-authored-by: Expo Bot <[email protected]>
show more ...
|
| #
8d3f3824 |
| 13-Feb-2023 |
Cedric van Putten <[email protected]> |
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 ...
|
| #
e0694585 |
| 07-Oct-2022 |
Cedric van Putten <[email protected]> |
[cli] Add assert with possibly intended variadic argument (#19396)
* [cli] Add recover to show intended command for npx expo install
* [cli] Fix extraneous space and tests
* [cli] Add changelo
[cli] Add assert with possibly intended variadic argument (#19396)
* [cli] Add recover to show intended command for npx expo install
* [cli] Fix extraneous space and tests
* [cli] Add changelog entry
* docs(cli): use proper changelog entry
Co-authored-by: Evan Bacon <[email protected]>
Co-authored-by: Evan Bacon <[email protected]>
show more ...
|
| #
dfe12d45 |
| 19-May-2022 |
Evan Bacon <[email protected]> |
feat(cli): add `customize` command (#17186)
* feat(cli): add `customize` command
* Update packages/@expo/cli/CHANGELOG.md
Co-authored-by: Expo Bot <[email protected]>
feat(cli): add `customize` command (#17186)
* feat(cli): add `customize` command
* Update packages/@expo/cli/CHANGELOG.md
Co-authored-by: Expo Bot <[email protected]>
* Update customizeAsync.ts
* Update customizeAsync.ts
* Update index-test.ts
* Refactor
* refactor and test
* Improve help
* Added e2e tests
* Update packages/@expo/cli/src/customize/generate.ts
Co-authored-by: Cedric van Putten <[email protected]>
* Update export-web-test.ts
Co-authored-by: Expo Bot <[email protected]>
Co-authored-by: Cedric van Putten <[email protected]>
show more ...
|
| #
6caf5755 |
| 12-May-2022 |
Evan Bacon <[email protected]> |
feat(cli): add `--pnpm` option to `install` and `prebuild` command (#17366)
* feat(cli): add `--pnpm` option to `install` command
* Added pnpm support to prebuild command
* Update resolveOptio
feat(cli): add `--pnpm` option to `install` and `prebuild` command (#17366)
* feat(cli): add `--pnpm` option to `install` command
* Added pnpm support to prebuild command
* Update resolveOptions-test.ts
* Update packages/@expo/cli/CHANGELOG.md
Co-authored-by: Expo Bot <[email protected]>
* Update resolveOptions-test.ts
* update help
Co-authored-by: Expo Bot <[email protected]>
show more ...
|
| #
c94ad8a2 |
| 15-Apr-2022 |
Evan Bacon <[email protected]> |
feat(cli): add `--check` and `--fix` flags to install command (#17048)
* feat(cli): add `--check` and `--fix` flags to install command
Add a flag `--check` which runs the doctor check against the
feat(cli): add `--check` and `--fix` flags to install command (#17048)
* feat(cli): add `--check` and `--fix` flags to install command
Add a flag `--check` which runs the doctor check against the installed packages, then prompt to install the corrected packages. If the command is run in CI then no prompt will be given and the process with exit with non-zero exit code (1).
Additionally adds the `--fix` flag which skips the prompt and exiting behavior. This can be used in CI to naively ensure packages are always correct: `npx expo install --fix`.
In this logical scenario `--fix` acts as a more privileged version of `--check`. Meaning the flags should never be used together. I also considered the inverse structure `--fix --dry-run` which would act the same as `--check` but would allow for coherency in the arguments since you would have less of a chance to provide bad arguments.
I opted for the `--check` flag for this initial commit because it allows for the interactive prompt to fix when run outside of CI, and acts as expected in CI. Whereas `--dry-run` exiting with non-zero seems unexpected as running without `--dry-run` would not exit with non-zero (unless for some unrelated error).
This feature also combines all three sources for known versions before doing validation, this means the check run during `start` will utilize the same sources as the install check.
In addition, I've also added `react-native`, `react`, `react-dom`, and `react-native-web` to the `bundledNativeModules.json` so the React versions are all checked as well.
The result is a unified validation system across the CLI.
This feature supersedes the `expo doctor --fix-dependencies` command, while adding the additional ability to check/fix only a certain set of packages, i.e. `npx expo install react-native --check`
* Update CHANGELOG.md
* skip installing when all dependencies are fine
* testing install check
* fix tests
* added install e2e tests
* Update CHANGELOG.md
* Update validateDependenciesVersions-test.ts
* Update packages/expo/CHANGELOG.md
Co-authored-by: Expo Bot <[email protected]>
* Update getMissingPackages-test.ts
* Update install-test.ts
* Update install-test.ts
* Update react-native
Co-authored-by: Expo Bot <[email protected]>
show more ...
|
| #
09bb6093 |
| 29-Mar-2022 |
Evan Bacon <[email protected]> |
feat(cli): add `npx expo install` command (#16756)
* feat: add `expo install` command
* test: improve test coverage
* chore: improved testing
* Updated e2e tests
* Update CHANGELOG.md
feat(cli): add `npx expo install` command (#16756)
* feat: add `expo install` command
* test: improve test coverage
* chore: improved testing
* Updated e2e tests
* Update CHANGELOG.md
* Update packages/@expo/cli/CHANGELOG.md
Co-authored-by: Expo Bot <[email protected]>
* Update getVersionedPackages.ts
* lint fix
* Update getVersionedPackages-test.ts
* Delete index-test.ts
* Update index-test.ts
* improve documentation
* Update args.ts
Co-authored-by: Expo Bot <[email protected]>
show more ...
|