-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Can't use hermes with the Microsoft.ReactNative NuGet packages #11251
Comments
microsoft-github-policy-service
bot
added
the
Needs: Triage 🔍
New issue that needs to be reviewed by the issue management team (label applied by bot)
label
Feb 21, 2023
chrisglein
added
Scenario: NuGet
Area: JavaScript Engine
and removed
Needs: Triage 🔍
New issue that needs to be reviewed by the issue management team (label applied by bot)
labels
Feb 23, 2023
chrisglein
added
enhancement
Area: Tests
Area: Fabric
Support Facebook Fabric
and removed
enhancement
Area: Tests
Area: Fabric
Support Facebook Fabric
labels
Feb 27, 2023
YajurG
added
the
Recommend: Backlog
Recommend that issue should be given Backlog milestone.
label
Aug 28, 2023
chiaramooney
removed
the
Recommend: Backlog
Recommend that issue should be given Backlog milestone.
label
Sep 19, 2023
jonthysell
added a commit
that referenced
this issue
Nov 9, 2023
## Description This PR makes Hermes the default JS engine for RNW going forward. For now, this is still managed by setting the `<UseHermes>` MSBuild property. However, if the property is not explicitly set, the default value in `JSEngine.props` will now be `true` instead of `false`. The property will remain exposed (and now set to `true`) in project's `ExperimentalFeatures.props` files. This will be done for new projects created with the `npx react-native-windows-init` command targeting versions with this change. (Use or omission of the `--useHermes` flag will no longer be recognized at project creation time). Hermes will also be the default for projects created with the new `npx react-native init-windows` CLI command. Current users attempting to *upgrade* their existing projects with these tools will be given a warning if they were previously using the Chakra engine, and instructions to revert back to using Chakra if necessary. However, support for Chakra will be deprecated in the future, so best to migrate sooner rather than later. In addition, this PR should also enable Hermes use when consuming the official (experimental) NuGet package binaries. Finally, this PR updates our CI infrastructure to instead denote "Chakra" (rather than "Hermes") for builds and tests. ### Type of Change - New feature (non-breaking change which adds functionality) - Breaking change (fix or feature that would cause existing functionality to not work as expected) - This change requires a documentation update ### Why Hermes is the officially supported and maintained JS engine for React Native, and as time goes on, the cost of maintain Chakra (which hasn't been updated in years) only increases. The "new" architecture includes Hermes. Resolves #11251 ### What See above ## Screenshots N/A ## Testing Ran existing tests ## Changelog Should this change be included in the release notes: yes Hermes is now the default JS engine for all new projects and will eventually be the only supported JS engine.
jonthysell
added a commit
to jonthysell/react-native-windows
that referenced
this issue
Nov 9, 2023
This PR backports microsoft#12321 to 0.73. This PR makes Hermes the default JS engine for RNW going forward. For now, this is still managed by setting the `<UseHermes>` MSBuild property. However, if the property is not explicitly set, the default value in `JSEngine.props` will now be `true` instead of `false`. The property will remain exposed (and now set to `true`) in project's `ExperimentalFeatures.props` files. This will be done for new projects created with the `npx react-native-windows-init` command targeting versions with this change. (Use or omission of the `--useHermes` flag will no longer be recognized at project creation time). Hermes will also be the default for projects created with the new `npx react-native init-windows` CLI command. Current users attempting to *upgrade* their existing projects with these tools will be given a warning if they were previously using the Chakra engine, and instructions to revert back to using Chakra if necessary. However, support for Chakra will be deprecated in the future, so best to migrate sooner rather than later. In addition, this PR should also enable Hermes use when consuming the official (experimental) NuGet package binaries. Finally, this PR updates our CI infrastructure to instead denote "Chakra" (rather than "Hermes") for builds and tests. - New feature (non-breaking change which adds functionality) - Breaking change (fix or feature that would cause existing functionality to not work as expected) - This change requires a documentation update Hermes is the officially supported and maintained JS engine for React Native, and as time goes on, the cost of maintain Chakra (which hasn't been updated in years) only increases. The "new" architecture includes Hermes. Resolves microsoft#11251 See above N/A Ran existing tests Should this change be included in the release notes: yes Hermes is now the default JS engine for all new projects and will eventually be the only supported JS engine.
jonthysell
added a commit
that referenced
this issue
Nov 10, 2023
This PR backports #12321 to 0.73. ## Description This PR makes Hermes the default JS engine for RNW going forward. For now, this is still managed by setting the `<UseHermes>` MSBuild property. However, if the property is not explicitly set, the default value in `JSEngine.props` will now be `true` instead of `false`. The property will remain exposed (and now set to `true`) in project's `ExperimentalFeatures.props` files. This will be done for new projects created with the `npx react-native-windows-init` command targeting versions with this change. (Use or omission of the `--useHermes` flag will no longer be recognized at project creation time). Hermes will also be the default for projects created with the new `npx react-native init-windows` CLI command. Current users attempting to *upgrade* their existing projects with these tools will be given a warning if they were previously using the Chakra engine, and instructions to revert back to using Chakra if necessary. However, support for Chakra will be deprecated in the future, so best to migrate sooner rather than later. In addition, this PR should also enable Hermes use when consuming the official (experimental) NuGet package binaries. Finally, this PR updates our CI infrastructure to instead denote "Chakra" (rather than "Hermes") for builds and tests. ### Type of Change - New feature (non-breaking change which adds functionality) - Breaking change (fix or feature that would cause existing functionality to not work as expected) - This change requires a documentation update ### Why Hermes is the officially supported and maintained JS engine for React Native, and as time goes on, the cost of maintain Chakra (which hasn't been updated in years) only increases. The "new" architecture includes Hermes. Resolves #11251 ### What See above ## Screenshots N/A ## Testing Ran existing tests ## Changelog Should this change be included in the release notes: yes Hermes is now the default JS engine for all new projects and will eventually be the only supported JS engine.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Problem Description
Microsoft.ReactNative must be built with
UseHermes
set so the proper#defines
s include the code necessary for Hermes to work.However the Microsoft.ReactNative NuGet packages aren't built with that flag, so even if you set the correct properties, Hermes won't be used.
Steps To Reproduce
npx react-native-windows-init --overwrite --useHermes --experimentalNuGetDependency
npx react-native run-windows
Expected Results
The app builds and runs with Hermes
CLI version
npx react-native --version
Environment
Target Platform Version
10.0.19041
Target Device(s)
Desktop
Visual Studio Version
Visual Studio 2022
Build Configuration
Debug
Snack, code example, screenshot, or link to a repository
No response
The text was updated successfully, but these errors were encountered: