github software-mansion/react-native-reanimated 4.2.0

latest release: 4.1.6
3 hours ago

Key changes

Other changes

React Native Compatibility & Dependency Updates

  • chore: Bump RN to 0.82 stable by @MatiPl01 in #8351
  • chore: bump RN to 0.82.rc-4 by @tjzel in #8299
  • fix: Add React Native 0.82 compatibility support by @joshkeldam in #8346
  • Use hermesvm instead of libhermes on RN 0.82+ by @tomekzaw in #8192
  • Compatibility with new Hermes by @piaskowyk in #8268
  • Drop compatibility for React Native 0.78 by @tomekzaw in #8411
  • Remove CMake conditionals and unused shared libraries from outdated React Native versions by @tomekzaw in #8193
  • chore: Bump RN in example apps to latest versions by @MatiPl01 in #8197
  • chore: Bump react-native-pager-view to v7 by @MatiPl01 in #8278
  • chore: use automatic jsx runtime and bump react-native-builder-bob by @tjzel in #7451
  • chore: use same versions of dependencies in monorepo where applicable by @tjzel in #7702

CSS & Transform Improvements

  • fix: Invalid default CSS transforms value by @MatiPl01 in #8562
  • fix: Invalid default CSS transforms value by @MatiPl01 in #8574
  • fix: Correct CSS transform perspective interpolation for values close to 0 by @MatiPl01 in #8649
  • fix: CSS transform crashes caused by incorrectly thrown error by @MatiPl01 in #8546
  • fix: CSS animation early finish for fractional animationIterationCount by @MatiPl01 in #8572
  • fix: Use correct transformOrigin processor for native CSS style processing by @MatiPl01 in #8623
  • chore: Remove unnecessary checks from css value constructors by @MatiPl01 in #8185
  • chore: Reduce CSS ValueInterpolator templating by @MatiPl01 in #8198
  • chore: Remove double templating in css variant by @MatiPl01 in #8229
  • chore: Some CSS code improvements by @MatiPl01 in #8249
  • chore: Move CSSValue construction from CSSValueVariant to interpolator factory by @MatiPl01 in #8255
  • chore: Move interpolator configs to a single implementation file by @MatiPl01 in #8258
  • chore: Move some CSS props to the common dir by @MatiPl01 in #8392
  • chore: Move transforms and matrix implementations from headers to cpp files by @MatiPl01 in #8262
  • chore: Simplify and optimize interpolate implementation by @MatiPl01 in #8397
  • chore: Move SVG color to a separate SVGBrush struct by @MatiPl01 in #8402
  • chore: Move common parts of transforms and filters style interpolator to the base class by @MatiPl01 in #8590
  • chore: More detailed invalid CSS keyframes object error message by @MatiPl01 in #8618
  • chore: Move CSS SVG opacity interpolator to common interpolators by @MatiPl01 in #8652

Color & Style Processing

Web-Specific Fixes

  • fix(Reanimated): parsing layout animations on web by @tjzel in #8404
  • fix: web types by @tjzel in #8401
  • fix: Animated style and switch not working in Freeze Example on web by @MatiPl01 in #8467
  • fix: Web example app hot-reload not working on sources change by @MatiPl01 in #8469
  • fix: Web CSS animation restarting on navigation between screens by @MatiPl01 in #8472
  • fix: CSS transition immediate finished state in web example by @MatiPl01 in #8498
  • fix: Views disappearing on web when exiting layout animation is used with StrictMode by @MatiPl01 in #8567
  • fix: Incorrect detach call in web CSSAnimationsManager by @MatiPl01 in #8573
  • fix: Web crashes if there is no DOM element and other little issues by @MatiPl01 in #8581
  • [Web LA] Ensure callbacks are called when ReducedMotion is on by @m-bert in #8208
  • fix: Web example runtime crash caused by invalid babel config by @MatiPl01 in #8417

Animation & Layout Animation Fixes

  • fix: Animated styles not registered after unfreeze by @MatiPl01 in #8325
  • Fix inline props processing by @MatiPl01 in #8447
  • fix: Animated style and switch not working in Freeze Example on web by @MatiPl01 in #8467
  • Fix synchronous props updates on iOS below RN 0.81 by @tomekzaw in #8427
  • Restore fast path with synchronouslyUpdateViewOnUIThread on iOS by @tomekzaw in #8367
  • Skip flushing layout animation requests when handling events on Android by @tomekzaw in #8459
  • [LA] Add check if view is mounted on Android by @bartlomiejbloniarz in #8083

Performance & Build Optimizations

Interpolator & Helper Refactoring

  • chore: Pass interpolator config via helper struct by @MatiPl01 in #8165
  • chore: Return unique_ptr from TransformOperationInterpolator interpolate method by @MatiPl01 in #8342
  • chore: Move SVG color to a separate SVGBrush struct by @MatiPl01 in #8402
  • chore: Relocate style processors to the common dir by @MatiPl01 in #8391

Error Handling & Logging

  • fix: Initialize logger before all other things by @MatiPl01 in #8227
  • fix: Don't pass uninitialized ref to dispatchCommand, add warnings by @MatiPl01 in #8327
  • fix: Replace old link to worklet error "Tried to synchrounously call a non worklet function..." by @patrycjakalinska in #8319
  • fix: Make obtaining logger config safer by @MatiPl01 in #8527
  • fix(Reanimated): vague exceptions on missing microtaskQueueFinalizers array by @tjzel in #8530
  • fix(Reanimated): warn only once when exiting animation overwrites styles by @tjzel in #8645
  • chore(Reanimated): Add warning when animated styles are passed to non-animated component. by @patrycjakalinska in #8662
  • fix(Reanimated): false positive animated style in non-animated component error in InlinePropManager by @tjzel in #8677

Testing & Test Infrastructure

Bug Fixes & Misc

Codebase Maintenance & Refactoring

Hooks & Integration

  • Automatically workletize callbacks from Gesture Handler hooks api by @j-piasecki in #8599
  • fix: SharedValue returned by useAnimatedKeyboard not receiving keyboard position updates by @MatiPl01 in #8571
  • Add getDynamicFeatureFlag function by @tomekzaw in #8548
  • Ignore deep imports warning in common-app by @tomekzaw in #8539

CI/CD & Publishing

Compiler & Code Quality

New Contributors

Full Changelog: 4.1.5...4.2.0

Don't miss a new react-native-reanimated release

NewReleases is sending notifications on new releases.