Releases: microsoft/react-native-windows
React Native Windows 0.66.0-preview.1
We're excited to release our first preview build of react-native-windows
0.66! There have been many changes to both react-native-windows
and react-native
itself and we would love your feedback on anything that doesn't work as expected.
How to upgrade
You can view the differences between different versions of C++ applications using a special version of React Native Upgrade Helper.
Upgrade helper does not yet support C# projects or projects using experimental features. It is recommended to generate a new project using react-native-windows-init
for projects not supported by Upgrade Helper.
What's New
-
Fast Hermes in debug builds: We previously used debug builds of Hermes when you built your application in a debug configuration. We've heard feedback that this impacted usability, and now use an optimized JS engine regardless of whether your application is running in release or debug.
-
Lower power consumption when using timers: Long running timers, such as those set by
setInterval()
, previously required RNW to do work every frame. We've fixed this, to let your application sleep until wake-up time. -
Better error UI: Your bundle failing to load previously showed a blank screen, requiring debugging your application to get actionable feedback. We now show a native redbox UI with the JavaScript exception.
-
Windows 10 SDK version 10.0.19041.0: We now use the latest Windows SDK, included with Visual Studio. Note that you may still need to install previous SDKs to use community modules that have not yet updated.
-
Hermes sampling profiler: In addition to heap space, you can now profile Hermes CPU usage via a sampling profiler.
-
Improved responsiveness with expensive callbacks: We now coalesce events for layout and pointer movement to ensure your application stays responsive if JavaScript callbacks are expensive.
-
More accessibility roles: We've added support for the
togglebutton
andheader
accessibility roles. -
Autolinking support for more community modules: React Native Windows has long-supported autolinking, but not all community modules for Windows were built to be compatible. Autolinking now has a heuristic to link any NPM dependencies that are likely Windows community modules.
-
Native console redirection: You can now redirect the output of the JavaScript
console
object using theReactInstanceSettings::NativeLogger
property. -
JSValue XAML conversion helpers: We've added additional helpers to
JSValueXaml.h
to make it easier to write ViewManagers that serialize XAML types. -
Greater BackHandler control: You can now control whether to handle back events via the React Native BackHandler, or in native code, using
QuirkSettings::SetBackHandlerKind
. -
Bug-fixes and improvements: We've made many more fixes across the platform. Expect less crashes, more correct behavior, and more quality of life improvements for developers.
Breaking Changes
-
Removal of Picker, DatePicker, PickerWindows: The various versions of Picker were previously deprecated as part of lean-core efforts. These components are removed in 0.66. The
@react-native-community/datetimepicker
and@react-native-picker/picker
community modules can be used for the same functionality. -
UseExperimentalNuget configuration: Projects using the
Microsoft.ReactNative
NuGet package should now declareUseExperimentalNuget
in theirExperimentalFeatures.props
file instead of theirvcxproj
orcsproj
file.
React Native Windows 0.65.1
This is patch release of react-native-windows, fixing bugs or adding non-breaking enhancements. To see a summary of changes in this major release, see release notes for React Native Windows 0.65.0.
New changes
- 9f4c303 [0.65] Consume Node-Api V8 JSI Runtime (julio.rocha@microsoft.com)
- c5ab033 Lib project will use the app's ExperimentalFeatures.props (asklar@microsoft.com)
React Native Windows 0.64.16
This is patch release of react-native-windows, fixing bugs or adding non-breaking enhancements. To see a summary of changes in this major release, see release notes for React Native Windows 0.64.0.
New changes
- 0672713 [0.64] Consume Node-Api V8 JSI Runtime (julio.rocha@microsoft.com)
React Native Windows 0.63.37
This is patch release of react-native-windows, fixing bugs or adding non-breaking enhancements. To see a summary of changes in this major release, see release notes for React Native Windows 0.63.0.
New changes
- 096eea6 [0.63] Consume Node-Api V8 JSI Runtime (julio.rocha@microsoft.com)
React Native Windows 0.65.0
We're excited to release React Native Windows 0.65.0. There have been more new features, bugfixes, and enhancements than we can count, with some of the significant ones listed below.
Getting Started documentation
React Native 0.65 announcement
How to upgrade
You can now view the differences between different versions of C++ applications using a special version of React Native Upgrade Helper.
Upgrade helper does not yet support C# projects or projects using experimental features. It is recommended to generate a new project using react-native-windows-init
for projects not supported by Upgrade Helper.
What's New
-
Hermes debugging and profiling: You can now debug and profile the heap-usage of your JavaScript code running on Hermes. See this document for details.
-
New component capabilities: We've added Windows support for some existing, and some all new properties, including:
<Button>
:tabIndex
<Pressable>
:onKeyDown
/onKeyUp
<TextInput>
:autoFocus
,clearTextOnSubmit
,submitKeyEvents
<Image>
: SVG data URI insource
-
TraceLogging based ETW events: We now expose the ability to record ETW events for various framework actions. See Event Tracing in React Native for Windows for details.
-
Hermes 0.8.0 with improved garbage collector: Hermes 0.8.0 introduces The Hades Garbage Collector, which dramatically reduces GC pause times.
-
More consistent styling for <Button>: The stock
<Button>
component has been updated with a look-and-feel consistent with other Windows controls. -
WinUI 2.6: We upgraded from WinUI 2.3 to WinUI 2.6, offering more refined native controls.
-
Hermes support for C# applications: You can now create a C# application that uses Hermes. See how to use Hermes here.
-
FlatList performance improvements: Several performance issues causing excessive renders when using FlatList have been fixed.
-
Opt-in fast builds: Set the
RNW_FASTBUILD
environment variable totrue
to enables building with larger PCH's. This leads to a much faster build, at the expense of higher system requirements to build successfully. -
IViewManagerCreateWithProperties: View managers may implement
IViewManagerCreateWithProperties
to receive properties at the time of view creation, simplifying cases where different properties may lead to different native views. -
Bug-fixes and improvements: The above just scratches the surface of the work that has been happening! We've been continually making bug fixes and improvements across the project.
Breaking Changes
-
Legacy WebSocket implementation: We introduced a new WebSocket stack in 0.64, along with the
QuirkSettings::SetUseLegacyWebSocketModule
function to opt-out of it. This setting is now removed, and the new implementation is always used. -
32-bit ARM support: We removed support for 32-bit ARM processors, which are used on some Windows IoT Core devices.
-
WinUI 3 Islands: React Native Windows now targets WinUI 3 preview 4 when set to use WinUI 3. This requires changes for applications using WinUI 3 with XAML Islands.
React Native Windows 0.64.15
This is patch release of react-native-windows, fixing bugs or adding non-breaking enhancements. To see a summary of changes in this major release, see release notes for React Native Windows 0.64.0.
New changes
- 4cb55d3 Promote 0.64 to legacy (ngerlem@microsoft.com)
React Native Windows 0.65.0-preview.8
This is a preview of the next version of react-native-windows. To see a summary of changes in this major release, see release notes for React Native Windows 0.65.0-preview.1.
New changes
- 932058d Fix issue using react-native-debugger with react-native-windows (30809111+acoates-ms@users.noreply.github.com)
React Native Windows 0.65.0-preview.7
This is a preview of the next version of react-native-windows. To see a summary of changes in this major release, see release notes for React Native Windows 0.65.0-preview.1.
New changes
- c66c4ee "0.65" -> "Future Version" in deprecation warnings (ngerlem@microsoft.com)
React Native Windows 0.64.14
This is patch release of react-native-windows, fixing bugs or adding non-breaking enhancements. To see a summary of changes in this major release, see release notes for React Native Windows 0.64.0.
New changes
- 5a03cd6 DisconnectFromView can be called on an view that has no connected tag. Also fix exceptions to be thrown by value as the rest of the code expects them to be (asklar@microsoft.com)
- 276d608 Batch calls to alert() instead of crashing (asklar@microsoft.com)
React Native Windows 0.65.0-preview.6
This is a preview of the next version of react-native-windows. To see a summary of changes in this major release, see release notes for React Native Windows 0.65.0-preview.1.
New changes
- 0997fa6 Integrate 0.65.0-rc.2 (ngerlem@microsoft.com)
- f0e8256 DisconnectFromView can be called on an view that has no connected tag. Also fix exceptions to be thrown by value as the rest of the code expects them to be (asklar@microsoft.com)
- a9d7f97 Batch calls to alert() instead of crashing (asklar@microsoft.com)