Releases: software-mansion/react-native-reanimated
4.2.0
Key changes
- Shared Element Transition on the New Architecture (feature flag) by @bartlomiejbloniarz in #7466
- Sync animated styles back to React (force render for settled animations) by @tomekzaw in #8529
- Reduce
libreanimate.sosize by @piaskowyk in #8259 - feat: 3D and 2D CSS transform matrix integration by @MatiPl01 in #8195
- feat: react-native-strict-api types supports with backwards compatibility by @MatiPl01 in #8136
- feat: Add support for
filterproperty by @patrycjakalinska in #8451 - feat: Add support for filter property to CSS by @patrycjakalinska in #8483
- feat: Add support for static PlatformColor by @patrycjakalinska in #8341
- feat: add support for DynamicColorIOS by @patrycjakalinska in #8221
- feat: Add working [email protected] by @patrycjakalinska in #8248
- feat: Enable animating transform string by @patrycjakalinska in #8585
- feat: Add context to style processors by @MatiPl01 in #8689
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
hermesvminstead oflibhermeson 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
animationIterationCountby @MatiPl01 in #8572 - fix: Use correct
transformOriginprocessor 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
interpolateimplementation 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
- fix: Implement correct CSS boxShadow interpolation by @MatiPl01 in #8177
- fix: Implement correct transparent color interpolation by @MatiPl01 in #8398
- fix: Use correct color processor in CSS by @MatiPl01 in #8393
- fix: Transparent color crashes on Android by @MatiPl01 in #8688
- fix: Move
DynamicColorIOShandling logic to theprocessColorfunction by @MatiPl01 in #8617 - fix: Move
PlatformColorprocessing to theprocessColorby @MatiPl01 in #8670 - fix: Add check for nullable in DynamicColorIOS by @patrycjakalinska in #8544
- fix: Do not process PlatformColor by @patrycjakalinska in #8553
- fix: Support for animating only one of boxShadow properties on Android by @patrycjakalinska in #8350
- fix: DynamicColorIOS bug by @patrycjakalinska in #8279
- fix: Incorrect transparent color behavior in CSS transitions by @MatiPl01 in #8542
- fix: Crash when 'none' string is passed for the SVG
fillproperty by @MatiPl01 in #8672 - fix: Change CSS allowDiscrete prop to allow-discrete, revert non-CSS prop changes in docs by @MatiPl01 in #8349
- Fix synchronous props for
PlatformColoron Android by @tomekzaw in #8687 - chore: Move SVG color to a separate SVGBrush struct by @MatiPl01 in #8402
- chore: Unify
processColorfunction implementation by @MatiPl01 in #8433
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
CSSAnimationsManagerby @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
ReducedMotionis on by @m-bert in https:...
Reanimated - 4.1.6
What's Changed
Adding Worklets 0.7.x to compatible versions accepted by Reanimated.
- cherry-pick(Reanimated): Fix Reanimated Static Check Nightly CI by @patrycjakalinska in #8606
- chore(Reanimated): use Worklets from npm on 4.1-stable branch by @tjzel in #8705
- release(Reanimated): 4.1.6 by @tjzel in #8702
Full Changelog: 4.1.5...4.1.6
Worklets - 0.7.1
What's Changed
Key changes
Features
-
Docs for Synchronizable, new memory type https://docs.swmansion.com/react-native-worklets/docs/memory/synchronizable
-
New API to register custom serializable types, support for nitro::HybridObject https://docs.swmansion.com/react-native-worklets/docs/memory/registerCustomSerializable
-
Optimized web bundle size with platform-specific file extensions.
-
New C++ API to get WorkletRuntime instance from its
jsi::Runtime. -
New C++ APIs for scheduling on WorkletRuntime
-
TypeScript types for options of Worklets Babel Plugin https://docs.swmansion.com/react-native-worklets/docs/worklets-babel-plugin/plugin-options#how-to-use
-
Added public mocks for Jest testing
Breaking
- fix(Worklets): runOnUIAsync signature by @tjzel in #8470
- refactor(Worklets): remove public header dir by @tjzel in #8678
Other changes
- chore(Worklets): bump Bundle Mode patches by @tjzel in #8310
- chore(Worklets): fix PlatformChecker init by @tjzel in #8300
- feat(Worklets): simpler Bundle Mode by @tjzel in #8293
- fix(Worklets): Bundle Mode accidentally toggling in Expo54 by @tjzel in #8335
- fix(Worklets): re-workletizing in bundle mode by @tjzel in #8428
- refactor(Worklets): RuntimeBindings by @tjzel in #8409
- chore: Remove
ReanimatedErrorandWorkletsErrorfrom global types by @MatiPl01 in #8435 - chore(docs): rename reanimated to worklets babel plugin by @maciekstosio in #8449
- refactor(Worklets): swap scheduleOn and runOn implementations by @tjzel in #8452
- chore(Worklets): remove runtime-string association from RuntimeManager by @tjzel in #8443
- feat(Worklets): add deprecation sidebar label by @tjzel in #8468
- chore(Worklets): fix use of resolveWeak for Bundle Mode by @tjzel in #8490
- fix(worklets-docs):
og-imagesgeneration by @skusnierz in #8495 - chore(Worklets): swap runOnRuntime and scheduleOnRuntime impl by @tjzel in #8494
- fix(Worklets): fix version script by @tjzel in #8503
- fix(Worklets): missing REACT_NATIVE_MINOR_VERSION on iOS by @tjzel in #8516
- chore(Worklets): replace deprecated BigStringBuffer with JSBigString by @tjzel in #8601
- Revert worklets visibility changes (from #8408) by @wisniewskij in #8608
- feat(worklets): adjust the view of the video promoting worklets by @skusnierz in #8611
- feat(Worklets): use int64 for BigInt when possible by @tjzel in #8557
- fix(Worklets): strip RN Runtime assertions only for other runtimes by @tjzel in #8531
- chore(Worklets): rename plugin opts by @tjzel in #8630
- Configure OIDC in nightly publish action for worklets by @kmagiera in #8654
- Bump setup-node action and node versions for worklets publishing by @kmagiera in #8660
- chore(Worklets): AvailableFrom label in docs by @tjzel in #8669
- feat(Worklets): allow disabling worklet classes by @tjzel in #8634
- feat(Worklets): docs for registerCustomSerializable by @tjzel in #8668
- docs(Worklets): Swizzle Paginator and TOC from
t-rex-uiby @patrycjakalinska in #8674 - refactor(Worklets): remove public header dir by @tjzel in #8678
- fix(Worklets): prefab cache issue for prefab consumers by @tjzel in #8684
New Contributors
- @joshkeldam made their first contribution in #8346
- @Elham13 made their first contribution in #8347
- @pawicao made their first contribution in #8415
- @wisniewskij made their first contribution in #8439
- @alexphl made their first contribution in #8591
- @flexbox made their first contribution in #8692
Full Changelog: worklets-0.6.1...worklets-0.7.1
Worklets - 0.7.0
Deprecated - see the release for Worklets 0.7.1 instead.
Full Changelog: worklets-0.6.1...worklets-0.7.0
3.18.2
What's Changed
- chore(3.18): Remove format from blame by @patrycjakalinska in #8614
- chore: Fix failing CIs on 3.18 by @patrycjakalinska in #8593
- chore(3.18): Set yarn berry in CI - compatibility check by @patrycjakalinska in #8651
- release(Reanimated): 3.18.2 by @patrycjakalinska in #8644
Full Changelog: 3.18.1...3.18.2
3.19.4
What's Changed
- fix: Entering layout animations not working on Android by @MatiPl01 in #8501
- fix useAnimatedRef breaking on SectionList by @MatiPl01 in #8532
- Fix
Keyframemock (#6961) by @MatiPl01 in #8570 - Fix disappearing views when exiting LA is used on web with strict mode by @MatiPl01 in #8568
- Fix web crashes if there is no DOM element and other little issues by @MatiPl01 in #8583
Full Changelog: 3.19.3...3.19.4
4.1.5
4.1.4
What's Changed
- Fix flaky RN$Bridgeless assertion (#8406) by @tjzel in #8477
- Export correct createAnimatedComponent (#8395) by @MatiPl01 in #8482
- Use
hermesvminstead oflibhermeson RN 0.82+ by @MatiPl01 in #8488 - Remove missing animationName CSS prop warning (#8448) by @MatiPl01 in #8479
- Fix parsing layout animations on web (#8404) by @tjzel in #8476
- Fix inline props processing (#8447) by @MatiPl01 in #8480
- Implement correct transparent color interpolation (#8398) by @MatiPl01 in #8481
- useAnimatedRef breaking on SectionList (#8301) by @tjzel in #8478
- fix: Type issues after merging cherry-picks by @MatiPl01 in #8489
- Web CSS animation restarting on navigation between screens (#8472) by @MatiPl01 in #8485
- Make obtaining logger config safer (#8527) by @MatiPl01 in #8528
- fix: Safe merge for user config in Spring Animation (#8533) by @patrycjakalinska in #8534
- fix: Use correct color processor in CSS animations and transitions by @MatiPl01 in #8566
- Fix disappearing views when exiting LA is used on web with strict mode by @MatiPl01 in #8569
- Fix incorrect detach call in web
CSSAnimationsManagerby @MatiPl01 in #8575
Full Changelog: 4.1.3...4.1.4
Release 3.18.1
What's Changed
- (cherry-pick) fix: bump to C++20 by @MatiPl01 in #7700
- chore: Remove CI state badges from readme by @MatiPl01 in #7703
- (cherry-pick) fix: Crash in useScrollViewOffset if animatedRef is not initialized by @MatiPl01 in #7701
- (cherry-pick) fix: useScrollViewOffset not working after delayed ref initialization by @MatiPl01 in #7704
- (cherry-pick) chore: Remove duplicate code from useAnimatedRef implementation by @MatiPl01 in #7705
- (cherry-pick) Update NativeEventsManager.ts by @MatiPl01 in #7707
- (cherry-pick) fix: useHandler updating on every render, even if dependencies didn't change by @MatiPl01 in #7706
- (cherry-pick) [Web] Do not call getBoundingClientRect on every update by @MatiPl01 in #7712
- fix: Not working window size dependent layout animations by @MatiPl01 in #7710
- (cherry pick) Fix sticky header by @MatiPl01 in #7708
- (cherry-pick) Don't run exiting animations on modal removal by @MatiPl01 in #7709
- fix: Prevent uninitialized ScrollView warning from showing up on unmount by @MatiPl01 in #7711
- (cherry-pick) feat: Add CellRendererComponentStyle to Animated.FlatList by @MatiPl01 in #7713
- [3.18] Fix layout animations on Android by @piaskowyk in #7757
- (cherry-pick) Fix reparenting by @MatiPl01 in #7792
- (cherry-pick) Fix zombie view when parent is moved by @MatiPl01 in #7793
- (cherry-pick) Fix dynamic updates of layout animations by @MatiPl01 in #7813
- (cherry-pick) [Fabric LA] Mark deleted nodes as DELETED by @MatiPl01 in #7819
- (cherry-pick) [Fabric LA] Add progress batching by @MatiPl01 in #7817
- (cherry-pick) fix: Accordion example crashing on web by @MatiPl01 in #7833
- cherry-pick: Add support for RN 0.81 in packages (without example apps) by @MatiPl01 in #7834
- fix: Remaining issue fixes by @MatiPl01 in #7839
- (cherry-pick) fix: precision errors in color interpolation keeping the animation to run forever by @MatiPl01 in #7846
- (cherry-pick)fix: Fix for multiple surfaces by @patrycjakalinska in #8556
- release(Reanimated): 3.18.1 by @patrycjakalinska in #8561
Full Changelog: 3.18.0...3.18.1