Skip to content
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

feat(cli): adds expo-canary and expo-beta cli opts #2581

Merged
merged 6 commits into from Dec 15, 2023

Conversation

frankcalise
Copy link
Contributor

@frankcalise frankcalise commented Dec 7, 2023

Describe your PR

  • Adds ability for a user to utilize the Beta or Canary release of Expo via the dist-tags at npm
  • Mostly interested in trying out the new Debugger experience
  • Plans on using this for CI uses especially, to find bugs ahead of time with future releases
  • Pretty much the equivalent of taking an existing Ignite / Expo project and doing the following:
bun install expo@canary
npx expo install --fix
npx expo prebuild --clean

Notes

  • Probably should refactor the experimental flags code since we'd end up writing this block to parse the flag for each new one we decide to add

Test Locally

  • Checkout the branch
  • Run:
yarn build
cd ..
ignite/bin/ignite new ignite-canary-cli --debug --install-deps=true --packager=bun --overwrite --remove-demo --workflow=prebuild --experimental=expo-canary --yes 

Details

  • Adds --experimental=expo-canary or --experimental=expo-beta cli flag (can be combined with new architecture, ie: --experimental=expo-canary,new-arch
  • Finds latest Expo Beta or Canary version published to NPM and switches the dependency in package.json
  • After dependency install, runs npx expo install --fix to get the proper set of Expo supporting dependency beta/canary versions
    • Note: npx expo install --fix doesn't install ALL deps, just the expo ones, so had to run this in addition to the packager install

  • Appends expo-font to app.json plugins (this is temporary, once SDK 50 is released this will just be updated in the boilerplate)

Screenshots

image

image

image

@frankcalise frankcalise changed the title feat(cli): adds expo canary exp flag feat(cli): adds expo-canary and expo-beta cli opts Dec 13, 2023
@frankcalise frankcalise marked this pull request as ready for review December 13, 2023 02:57
Copy link
Member

@jamonholmgren jamonholmgren left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very nice. Do we need to document it anywhere in the repo? Probably need to document the whole --experimental= options here or somewhere like it.

https://github.com/infinitered/ignite/blob/master/docs/Ignite-CLI.md#options-1

@frankcalise
Copy link
Contributor Author

frankcalise commented Dec 13, 2023

Very nice. Do we need to document it anywhere in the repo? Probably need to document the whole --experimental= options here or somewhere like it.

https://github.com/infinitered/ignite/blob/master/docs/Ignite-CLI.md#options-1

@jamonholmgren This will be taken care of in Monday's super secret release so we don't have to double back on fixing it

image

@jamonholmgren
Copy link
Member

@frankcalise Perfect!

@frankcalise frankcalise merged commit 6206e22 into master Dec 15, 2023
1 check passed
@frankcalise frankcalise deleted the feat/expo-canary branch December 15, 2023 00:50
infinitered-circleci pushed a commit that referenced this pull request Dec 15, 2023
# [9.2.0](v9.1.1...v9.2.0) (2023-12-15)

### Bug Fixes

* **boilerplate:** set up eslint-plugin-reactotron ([#2589](#2589) by [@frankcalise](https://github.com/frankcalise)) ([5227b89](5227b89))
* **boilerplate:** ts-node version ([#2588](#2588) by [@frankcalise](https://github.com/frankcalise)) ([370698d](370698d))

### Features

* **cli:** adds expo-canary and expo-beta cli opts ([#2581](#2581) by [@frankcalise](https://github.com/frankcalise)) ([6206e22](6206e22))
@infinitered-circleci
Copy link

🎉 This PR is included in version 9.2.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants