Skip to content

Releases: ReactVision/viro

v2.43.0

14 Apr 21:24
18d5a30
Compare
Choose a tag to compare

📦 Release Notes – v2.43.0

🚀 What’s New

This release brings important stability improvements across both iOS and Android, along with full compatibility for Expo 52+ and React Native 0.76.9+. It also resolves a series of crashes and memory issues related to component unmounting, AR navigation, and property updates.


🔧 Fixes & Improvements

To improve compatibility, we've relaxed the version constraints for React Native and Expo. Projects can now run on Expo SDK 52 or higher, and React Native 0.76.9 or above, making upgrades smoother and less restrictive.

On iOS, we addressed crashes occurring during component unmounting—especially around navigation—by adding extra safety checks when accessing nodes and parent portal references. We've also improved the unmounting sequence to avoid accessing invalid memory.

For both platforms, we fixed errors that were happening when updating shadow node properties. These issues were caused by operations on null or already-detached nodes. We’ve added defensive coding, including try-catch wrappers and detailed error logging. On Android specifically, the onTearDown() method has been rewritten to ensure proper cleanup of resources, cancellation of active tasks, and state resets.

We also tackled AR-related crashes, especially on iOS, where the app could crash if methods were called on the SceneNavigator during teardown. Now, AR sessions are correctly finalised during cleanup.

Finally, we resolved memory leaks tied to ViroARPlaneSelector. This was caused by abrupt unmounting and improper handling of its child components. The selector logic has been refactored to ensure stability and prevent crashes.


✅ Recommended Update

To take advantage of all these fixes, we recommend updating your project to use:

  • Expo SDK 52 or later
  • React Native 0.76.9 or later

🧰 Troubleshooting

If you encounter issues after updating, first ensure your project is using the latest version of Expo. Most problems are resolved by aligning with the supported SDK and React Native versions.

v2.41.6

09 Jun 19:24
Compare
Choose a tag to compare

This is a hot fix, I found the Expo plugin was broken because of dependencies mismatch that cause a crash when trying to use ViroVideo.

It also updates the telemetry route, pointing it to ReactVision servers instead of the old NativeVision.

v2.41.5

08 Jun 22:09
Compare
Choose a tag to compare

This homologates the NPM version with the Github version because of an issue publishing it.

v2.41.4

08 Jun 22:02
Compare
Choose a tag to compare

What's Changed

  • Fix ViroARPlaneSelector Exception thrown while executing UI block: -[VRTQuad setOnClick:]: unrecognized selector sent to instance by @doranteseduardo

Full Changelog: v2.41.3...v2.41.4

v2.41.3

05 Jun 03:06
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v2.41.1...v2.41.3

v2.41.1

06 Mar 20:32
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2.41.0...v2.41.1

v2.41.0

24 Feb 00:16
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2.40.1...v2.41.0

v2.40.1

19 Feb 15:28
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2.24.0...v2.40.1

v2.40.0

16 Feb 22:55
52a330e
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2.23.2...v2.24.0

FROM BOBBY: I apologize, I mistyped the version number. I'm going to install release-it so this doesn't happen again. The tag is correct, but NPM has 2.40.0. Future versions will skip 2.24.x-2.39.x due to my mistake.

v2.23.3

10 Feb 16:51
Compare
Choose a tag to compare
  • fixes isARSupportedOnDevice throwing error (#262)

Full Changelog: v2.23.2...v2.23.3