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!: RN 0.72.6 and Expo 49 #2446

Merged
merged 78 commits into from
Nov 16, 2023
Merged

feat!: RN 0.72.6 and Expo 49 #2446

merged 78 commits into from
Nov 16, 2023

Conversation

frankcalise
Copy link
Contributor

@frankcalise frankcalise commented May 24, 2023

Ignite Exp[ress]o ☕

  • v9.0.0
  • Full Expo, including RN template

Please verify the following:

  • yarn test jest tests pass with new tests, if relevant
  • README.md has been updated with your changes, if relevant

Describe your PR

  • Upgrades react-native to react-native@0.72.6
  • Upgrades expo to expo@49.0.18
  • Adds FlashList
  • Reworks react-native-bootsplash CLI for Expo only and removes related dependency
  • Fixes issue where @expo/metro-config@^0.7.1 didn't allow for npx expo run:android or npx expo run:ios to work properly without expo-dev-client by removing this dependency (brought down by Expo with the correct version)
  • Removes other unused dev dependencies
  • Regenerated the native dir templates via npx expo run:[platform] for better EAS compatibility
  • Adds expo-build-properties and configuration in app.json for enabling New Architecture
  • Adds CLI switch for enabling New Architecture, --experimentalNewArch
  • Removes deprecated --expo switch and related code
  • Rework TS path setup to utilize built-in Expo config and remove babel-plugin-root-import
  • EAS Build ready
  • Passes TS Strict mode type checks
  • Reactotron v3 beta
  • Expo Config Plugin for Android 12 Splash Screen
  • Removed bin\ directory with unused setup script and now unnecessary postinstall shell script (moved patch-package to package.json postinstall)
  • Support for bun as a package manager
  • Expo Go compatibility version set
  • new component ListView, a HOC for FlashList that renders a FlatList if running RTL

Taste Testing

npx ignite-cli@next new PizzaApp

frankcalise and others added 6 commits July 13, 2023 07:51
* fix(cli): update generator for expo only

* refactor(boilerplate): App to typescript

* chore: simplify w/ expo

* chore: reanimated deps, other dep clean up

* fix(boilerplate): removed problematic @expo/metro-config to run dev client

* chore: updated native dirs as per expo dev client build

* chore: updates to latest Expo SDK

* test: update app-icon / splash section

* fix(cli): rename bridging header and entitlements

* chore(boilerplate): dep update

* docs(folder-structure): updated for rework

* chore: updates due to structure changes, tests passing 🤞

* fix(generators): add new line to end of app.json

* chore: update reactotron dev deps

* fix(boilerplate): WelcomeScreen needs this import even if demo removed

* fix(cli): remove deprecrated expo flag

* fix(boilerplate): match babel config more closely to expo default

* chore(cli): reactotron deps

* feat(cli): prompt for enabling new arch

* chore: remove unused log statements

* chore: expect TS error for now

* chore(boilerplate): RN 0.72.3

---------

Co-authored-by: Joshua Yoes <joshua.r.yoes@gmail.com>
@frankcalise frankcalise changed the title feat: RN 0.72.0 and Expo 49 feat: RN 0.72.3 and Expo 49 Jul 14, 2023
@frankcalise frankcalise marked this pull request as ready for review July 14, 2023 22:18
@frankcalise
Copy link
Contributor Author

@joshuayoes there are two @ts-expect-error I added over in boilerplate/app/devtools/ReactotronConfig.ts if you want to take a look. Otherwise I think we are fully TS strict compatible now 🎉

@frankcalise frankcalise changed the title feat: RN 0.72.3 and Expo 49 feat!: RN 0.72.3 and Expo 49 Jul 14, 2023
@frankcalise
Copy link
Contributor Author

@mazenchami For the remaining TS strict changes, look at this commit in particular c3fd3c5

@jamonholmgren
Copy link
Member

Ready for full review, @frankcalise ?

@frankcalise
Copy link
Contributor Author

@jamonholmgren yup

@frankcalise frankcalise changed the title feat!: RN 0.72.5 and Expo 49 feat!: RN 0.72.6 and Expo 49 Oct 26, 2023
@jaslam-ca
Copy link

Any updated dates for getting this merged into master for a final 9.x release?

@jamonholmgren
Copy link
Member

Really hoping by ... early next week. I know you all have heard that before. 😅

jamonholmgren and others added 4 commits November 7, 2023 20:23
* chore: remove unused deps, upgrade mobx

* chore: bump expo version

* fix(cli): remove expo-device from expo go compat
* Add timeout to avoid long hangs

* Let's do 10 minutes to be safe

* Remove bun from CI for now

* Install bun

* Remove bun lockfile

* Adds --no-timeout flag

* fix(cli): no timeout switch

---------

Co-authored-by: Frank Calise <fcalise@gmail.com>
@jamonholmgren
Copy link
Member

Update: targeting Thursday! Blog post is mostly done. Probably soft-launch tomorrow, announce Thursday.

* chore: update rn version, expo compat

add ignite version in app.json

* feat(cli): include ignite version in app.json
…lise)

* fix(cli): remove demo markup if keeping demo files

* fix(remove-demo-markup): bump prettier for satisfies TS support

* fix(remove-demo-markup): remove-file deletes
@frankcalise frankcalise merged commit b4868b9 into master Nov 16, 2023
1 check passed
@frankcalise frankcalise deleted the feat/rn-72-expo-49 branch November 16, 2023 22:02
@aslamj
Copy link

aslamj commented Nov 16, 2023

Awesome, thanks, @frankcalise, for this PR merge. Now waiting for the v9.0.0 to finish and get published.

infinitered-circleci pushed a commit that referenced this pull request Nov 16, 2023
# [9.0.0](v8.11.3...v9.0.0) (2023-11-16)

### Features

* RN 0.72.6 and Expo 49 ([#2446](#2446)) ([b4868b9](b4868b9))

### BREAKING CHANGES

* ☕️🔥 Ignite version 9, code-named ("Exp[ress]o"), is the latest and largest update to the popular battle-tested React Native boilerplate. 🔥 ☕️

Changes include:

* Full Expo integration
* Expo 49
* React Native 0.72
* FlashList
* New ListView component
* TypeScript strict mode
* Experimental New Architecture support
* Streamlined codebase
* EAS Build compatibility
* Expo SplashScreen
* Reactotron v3
* Bun support
* Enhanced developer experience
* Many bugfixes and DX improvements

Read all about it in our blog article!

https://shift.infinite.red/announcing-ignite-9-0-exp-ress-o-89ab5801937d
@infinitered-circleci
Copy link

🎉 This PR is included in version 9.0.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
Labels
Projects
None yet