v12.0.0
This version of React Native CLI targets React Native 0.73 and includes numerous bug fixes, features and performance improvements.
Breaking changes
- change default
taskPrefix
inbuild-android
command fromassemble
tobundle
by @szymonrybczak in #1913 - update Node minimum version to 18 by @Shubham1429 in #1986
- Fix ability to override commands via config by @huntie in #1999
- Remove fallback flow for Metro config defaults (0.73) by @huntie in #1972
- remove
--configuration
option frombuild/run-ios
by @szymonrybczak in #2028- Migration: Use
--mode
instead
- Migration: Use
- remove
--variant
option fromrun/build-android
command by @szymonrybczak in #2026.- Migration: Use
--mode
instead
- Migration: Use
- Delete source for
cli-plugin-metro
, remove from builtin commands by @huntie in #2055 - Remove unreferenced utils from
cli-tools
by @huntie in #2066
Performance
- move pods installation from
init
to ios-specific commands by @TMisiukiewicz in #2077- force Pods installation by passing:
--force-pods
- force Pods installation by passing:
- remove Gradle task check on run-android by @TMisiukiewicz in #2144
Fixes
- move launchPackager files into
src/
by @szymonrybczak in #1900 - Drop @react-native/metro-config dep for RN 0.72 config fallback by @huntie in #1899
- change permission in
launchPackager.command
when building packages by @szymonrybczak in #1904 - add missing arguments to
adb shell
inrun-android
command by @szymonrybczak in #1916 - delete
com.
prefix in package name by @szymonrybczak in #1915 - str.replace not a function issue by @adamTrz in #1909
- trim whitespace in
parseTasksFromGradleFile
on Windows by @szymonrybczak in #1933 - add missing argument to xcodebuild shell (destination) by @MichelBahl in #1934
--verbose
option not working forrun-ios
by @szymonrybczak in #1946- always add
--verbose
to the command by @szymonrybczak in #1953 - fix Xcode defaulting to 'Release' by @tido64 in #1957
- add logger to doctor unhandled errors by @jeferson-sb in #1962
- Potential EEXIST error when iOS asset catalog dir already exists by @robhogan in #1976
- remove
@ts-ignore
incli-plugin-metro
by @szymonrybczak in #1975 - init when there's a package.json in folder by @thymikee in #1980
- resolver.resolveRequest is always undefined by @ammarahm-ed in #1982
- remove useless check in
upgrade
command by @szymonrybczak in #1968 - "Multiple Podfiles were found" due to vendor inclusion by @robhogan in #1988
- doclinks should not select a default platform by @blakef in #1882
- Add flipper protocol support by @lunaleaps in #2003
- allow DevTools to connect by @tido64 in #2008
- ignore Pods and Hermes files when looking for AndroidManifest by @szymonrybczak in #2014
- fix : Getting rid of duplicate gradle error messages by @arushikesarwani94 in #2004
- adjust
doctor
command to work with customios/
folder location by @szymonrybczak in #1998 - use
none
as platform for printing upgrading link by @szymonrybczak in #2018 - typo in option description by @szymonrybczak in #2025
- Fix loading Metro config from alternative config path by @huntie in #2043
- ensure bundle destination directory exist by @tido64 in #2040
- does not override user-defined reporter by @zhiqingchen in #2024
- prevent booting already booted simulators by @szymonrybczak in #2033
- change request response in
/status
endpoint by @szymonrybczak in #2056 - fix crash when
--mode
is specified by @tido64 in #1958 - Adjust wording for dev server port taken messages by @huntie in #2067
- get only tasks for passed type by @szymonrybczak in #2062
- improve providing project name in
init
command by @szymonrybczak in #2071 - add missing
--force-pods
flag forrun-ios
andbuild-ios
by @TMisiukiewicz in #2082 - restore simulator, device, and UDID args on
run-ios
command by @huntie in #2086 - Creating cache for scoped packages by @TMisiukiewicz in #2089
- avoid chmod on read stream close by @JLHwung in #2096
- Add 'code-insiders' to launchEditor by @joshuayoes in #2092
- add missing shebang to
launchPackager.command
by @szymonrybczak in #2097 - skip pods installation when it's already installed by @TMisiukiewicz in #2112
- properly handle errors by @szymonrybczak in #2113
- remove hardcoded path to iOS folder by @szymonrybczak in #2111
- install pods on ios-commands with New Arch by @TMisiukiewicz in #2122
- Workaround JSON.stringify failing on large arrays with the error… by @paddlefish in #2051
- delete useless mocking in e2e tests by @szymonrybczak in #2103
- get scheme from
xcodeProject
name by @szymonrybczak in #2121 - fallback first to
yarn
whenbun
not available by @szymonrybczak in #2133 - do not ask for port change when
--no-packager
provided by @szymonrybczak in #2128 - add missing dependency by @szymonrybczak in #2140
- remove eslint warnings by @szymonrybczak in #2142
- check if there are any available simulators or physical devices by @szymonrybczak in #2102
- force users to use
nodeLinker: node-modules
when installing template packages by @szymonrybczak in #2135
Features
- only show --verbose flag if there are hidden logs by @blakef in #1925
- added --user flag to run-android command by @adamTrz in #1869
- add
--target
option by @szymonrybczak in #1928 - add
watchModeCommandParams
toreact-native.config.js
by @szymonrybczak in #1937 - add packager healthcheck to report if packager is running correctly by @tarunrajput in #1941
- update doctor to reflect Java >= 17 by @szymonrybczak in #2045
- enable pausing handling keystrokes in watch mode by @szymonrybczak in #2041
- add invoking CLI's scripts for launching Metro in
run-ios
command by @szymonrybczak in #2021 - read main activity from
AndroidManifest.xml
automatically by @szymonrybczak in #1967 - extract android applicationId by @adamTrz in #1951
- add Bun to
init
command by @TMisiukiewicz in #2073 - upgrade Android Studio version when installing on Windows by @szymonrybczak in #2072
- adjust healthchecks based on where command was ran by @szymonrybczak in #2049
- handle better canceling prompts by @szymonrybczak in #2138
- update section related to updating CLI by @szymonrybczak in #2139
- create git repository in
init
command by @szymonrybczak in #2088- Disable by passing:
--create-git-repo false
- Disable by passing:
- opt-in pod install with ios commands by @TMisiukiewicz in #2116
Chore & Maintenance
- chore: add
--force-publish
to lerna to sync releases by @thymikee in #1898 - Adding RN docs link for JDK install error by @arushikesarwani94 in #1902
- refactor: remove useless parameter by @FE-Sadhu in #1906
- chore: Upgrade metro dependencies to 0.76.2 by @huntie in #1910
- docs: add missing
--mode
description by @szymonrybczak in #1914 - chore: Upgrading metro dependencies to 0.76.3 by @arushikesarwani94 in #1921
- docs: update react-native Podfile template link by @hahnlee in #1926
- Upgrade Metro to 0.76.4 by @motiz88 in #1935
- Refactor upgrade command to just link to upgrade helper by @blakef in #1879
- chore(doctor): update Java version range to be strictly 11-18 by @tarunrajput in #1940
- Reintroduce tvOS as valid simulator version when matching for simulators by @Killavus in #1929
- Upgrade metro dependencies to 0.76.5 by @huntie in #1943
- chore: improve codebase by @szymonrybczak in #1945
- ci: run E2E tests on Windows by @szymonrybczak in #1949
- chore: use slash for windows paths by @szymonrybczak in #1954
- chore: Remove
generateStaticViewConfigs
option from bundle command by @huntie in #1970 - chore: Remove
fs-extra
reference fromcli-plugin-metro
by @huntie in #1971 - Update
react-native run-ios
command error output. by @cpojer in #1978 - download correct sourceMap for dev/prod profiles, add warning for Expo Dev menu profiles by @phryneas in #1833
- docs: replace
master
withmain
by @szymonrybczak in #1974 - Update Metro dependencies to 0.76.7 by @robhogan in #1991
- docs: sync status with current state of
upgrade
command by @szymonrybczak in #1994 - docs: update PR template by @szymonrybczak in #1995
- Update contributing guide with missing step to test local changes by @sbalay in #2000
- chore: use Homebrew for installing
ios-deploy
by @szymonrybczak in #2013 - chore: Upgrading Metro dependencies to 0.77.0 by @arushikesarwani94 in #2007
- npmPackageName should be resolved from project root, not from
cli-plugin-metro
by @acoates-ms in #1996 - docs: CONTRIBUTING.md typo error by @zhiqingchen in #2023
- docs: fix link to
profile-hermes
command by @badbeoti in #2029 - chore: Upgrade Metro to 0.78.0 by @motiz88 in #2047
- chore: bump
lerna
to7.1.3
by @szymonrybczak in #2017 - chore: upgrade GitHub actions by @szymonrybczak in #2034
- docs(android): remove deprecated
--root
and--appFolder
options by @szymonrybczak in #2027 - Rename /status project root header by @huntie in #2060
- docs: add
npx
prefix beforereact-native
command by @szymonrybczak in #2035 - chore(e2e): check for undefined code before printing fail by @thymikee in #2061
- Do not attempt to search for manifest in test folders by @cortinico in #2075
- [Android] Prepare auto-linking for double publishing by @cipolleschi in #2076
- Add remote debugging deprecation header by @huntie in #2081
- refactor(iOS): remove unintended flags from build-ios by @thymikee in #2078
- Add AndroidTV to platforms.md docs by @okwasniewski in #2118
- bump:
envinfo
to 7.10.0 by @szymonrybczak in #2104 - Update remote debugging deprecation notice by @huntie in #2125
- chore: upgrade typescript & eslint by @szymonrybczak in #2130
- chore: replace
rimraf
package withfs
calls by @szymonrybczak in #2141
New Contributors
- @FE-Sadhu made their first contribution in #1906
- @hahnlee made their first contribution in #1926
- @MichelBahl made their first contribution in #1934
- @tarunrajput made their first contribution in #1940
- @Killavus made their first contribution in #1929
- @jeferson-sb made their first contribution in #1962
- @phryneas made their first contribution in #1833
- @ammarahm-ed made their first contribution in #1982
- @sbalay made their first contribution in #2000
- @lunaleaps made their first contribution in #2003
- @Shubham1429 made their first contribution in #1986
- @zhiqingchen made their first contribution in #2023
- @badbeoti made their first contribution in #2029
- @JLHwung made their first contribution in #2096
- @joshuayoes made their first contribution in #2092
- @paddlefish made their first contribution in #2051
Full Changelog: v11.1.1...v12.0.0
``