What's Changed
New features
- ✨ Publish New Docs ✨ by @kacperkapusciak in #4904
- Support for
react-native-macos
by @jfedak in #4912 - Add basic JS implementation support for
react-native-windows
by @piaskowyk in #4917 - Reduce motion in animations - #4748 #4884 https://docs.swmansion.com/react-native-reanimated/docs/guides/accessibility
- _log for complex types by @t0ms0n00 in #4857
- Add
setNativeProps
helper function on UI runtime by @tomekzaw in #4595 - Expose APIs for integrating with worklets by @tomekzaw in #4944
- Expose
libreanimated
to be consumed via prefab by @tomekzaw in #5005 - Add clamp worklet by @kowczarz in #4960
Fixes
- Mock REAInitializer for backward compatibility by @piaskowyk in #4880
- Add default implementations for blocks from AnimationsManager on iOS by @piaskowyk in #4878
- Reintroduce
onReanimatedPropsChange
by @Latropos in #4821 - Add missing nullcheck for nativeProxy on Fabric by @piaskowyk in #5016
- Enable
NDEBUG
in production builds by @tomekzaw in #4902 - Remove
DEBUG
flag whenPRODUCTION
env is not set by @j-piasecki in #4918 - Fix event dispatcher broken on ios with expo-dev-client by @Kudo in #4926
- Fix passing remote functions as arguments to
runOnJS
by @tomekzaw in #4617 - Remove
setNextLayoutAnimationGroup
call by @tomekzaw in #4955 - Fix
useAnimatedProps
on web by @m-bert in #4977 - Fix scrollTo crash by @m-bert in #4984
- Improve timestamp calculations by @Latropos in #4856
Improvements
- Add CI to check react-native nightly build by @piaskowyk in #4843
- Add CI to check Expo dev-client nightly build by @piaskowyk in #4818
- [SET] Run animation only for source view by @piaskowyk in #4879
- Lock
weakNativeReanimatedModule
using conditionals by @tomekzaw in #4871 - Use pair as key in handlers map by @jfedak in #4766
- Add nightly CI to check TS compatibility with different RN versions by @tjzel in #4908
- Better reanimated shadow tree commit detection by @michalmaka in #4949
- Fix
useAnimatedSensor
vector velocity on Android by @kowczarz in #4933 - Use original function's name inside worklet by @tjzel in #4951
- Adjust Web Android sensors to works the same as native iOS and Android by @wojtus7 in #4956
- Unify error messages and add Troubleshooting section to docs by @tjzel in #4915
- Add warning - component style is overwritten with animation style. by @Latropos in #4969
- Fix dynamic_cast (RTTI) by adding key function to shareables by @tomekzaw in #4995
- Fixed crash on reload on RN 0.73 by moving propsRegistry and hooks to nativeReanimatedModule by @michalmaka in #4982
- Resolve headers name conflict with expo-dev-client by @piaskowyk in #5010
- Fix compatibility with older rn-screens version by @piaskowyk in #5014
- Fix crash on reload in
ShareableRemoteFunction
by @tomekzaw in #5015 - Fix withDecay infinite updates issue by @MatiPl01 in #4699
- Add fallback to setImmediate for Expo Router static rendering by @javascripter in #4665
Fabric
- Replace old shadow nodes in PropsRegistry with new ones by @michalmaka in #4986
- Added optimization to shouldSkipCommit mechanism by @michalmaka in #4958
- Removed unnecessary copies of UIManager and ContextContainer by @michalmaka in #4812
- Store last reanimated root as atomic ptr, avoid copying and locking by @michalmaka in #4813
- Removed unnecessary lock during committing shadowTree by @michalmaka in #4826
- Moved (de)registration of ReanimatedCommitHook to its con/de-structor by @michalmaka in #4810
- Improved skipping commits by @michalmaka in #4833
- Added some includes to make headers self sufficient by @michalmaka in #5021
Typescript
- Minor adjustments to types in useAnimatedRef and related by @tjzel in #4709
- Unify AnimateStyle types by @tjzel in #4855
- Hotfix: allow transform to be a string in useAnimatedStyle by @tjzel in #4881
- Allow nullables in useAnimatedRef scrollable node getters by @tjzel in #4864
- Remove return type from function components by @tomekzaw in #4928
- Fix
AnimatedStyle
for good by @tjzel in #4923 - Improve entry exit animation types by @Latropos in #4998
New Contributors
@m-bert @t0ms0n00 @gerzonc @schriker @kowczarz @aleqsio @Gaohaoyang @MatiPl01
🙌 Thank you for your contributions!
Package build: https://github.com/software-mansion/react-native-reanimated/actions/runs/6147177203
Full Changelog: 3.4.0...3.5.0