-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Permalink
Choose a base ref
{{ refName }}
default
Choose a head ref
{{ refName }}
default
Comparing changes
Choose two branches to see what’s changed or to start a new pull request.
If you need to, you can also or
learn more about diff comparisons.
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also .
Learn more about diff comparisons here.
base repository: software-mansion/react-native-reanimated
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 3.16.3
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
...
head repository: software-mansion/react-native-reanimated
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 3.16.4
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
- 5 commits
- 11 files changed
- 5 contributors
Commits on Dec 9, 2024
-
fix: brownfield integration (#6774)
## Summary In brownfield, ` // we need only one instance because SurfacePresenter is the same during the application lifetime` is false since you can destroy RN and create it again. ## Test plan Run Reanimated in brownfield and try to create and destroy the whole RN a couple of times.
Configuration menu - View commit details
-
Copy full SHA for 34fa4de - Browse repository at this point
Copy the full SHA 34fa4deView commit details -
fix: Empty array & null checks in handleTabNavigatorChange method fixes
#6698 (#6700) Fixes: Shared Element Transition (Solution provided) #6698 Add safety checks in handleTabNavigatorChange to prevent crash This fixes a crash that occurs when _disappearingScreens array is empty or contains invalid objects by adding appropriate null checks and bounds checking. The crash would occur when: - The _disappearingScreens array is empty - navTabScreen or its reactSuperview is null - targetScreen is null App was crashing during shared element transition because of invalid array access. Fixes #6698 --------- Co-authored-by: Krzysztof Piaskowy <krzysztof.piaskowy@swmansion.com>
Configuration menu - View commit details
-
Copy full SHA for 7a16ea6 - Browse repository at this point
Copy the full SHA 7a16ea6View commit details -
Fix crash caused by using
ShareableHandle
in multiple remote runtim……es (#6796) ## Summary Fixes Expensify/react-native-live-markdown#574. See root cause analysis in Expensify/react-native-live-markdown#574 (comment). This PR fixes a crash caused by calling `ShareableHandle::toJSValue` with second remote runtime after initializing `remoteValue_` with a `jsi::Value` belonging to the first remote runtime. I assume that this is a rare scenario so we only memoize the value for the first remote runtime and we recreate the value for all subsequent runtimes. ## Test plan Reproduction: <details> <summary>EmptyExample.tsx</summary> ```tsx import { Text, StyleSheet, View } from 'react-native'; import React from 'react'; import { createWorkletRuntime, runOnRuntime, useAnimatedStyle, } from 'react-native-reanimated'; const regex = /\d/; const workletRuntime = createWorkletRuntime('another'); export default function EmptyExample() { useAnimatedStyle(() => { console.log('useAnimatedStyle', String(regex)); return {}; }); runOnRuntime(workletRuntime, () => { 'worklet'; console.log('runOnRuntime', String(regex)); return {}; })(); return ( <View style={styles.container}> <Text>Hello world!</Text> </View> ); } const styles = StyleSheet.create({ container: { flex: 1, alignItems: 'center', justifyContent: 'center', }, }); ``` </details>
Configuration menu - View commit details
-
Copy full SHA for d94a8a7 - Browse repository at this point
Copy the full SHA d94a8a7View commit details -
Clear
operationsInBatch_
before terminating UI runtime (#6779)## Summary This PR fixes the following crash that happens during a reload due to `jsi::Value` outliving the UI runtime. The offending `jsi::Value` comes from `operationsInBatch_` inside `ReanimatedModuleProxy` (formerly `NativeReanimatedModule`. In `~ReanimatedModuleProxy` we manually clear data structures containing `jsi::Value` prior to resetting `uiWorkletRuntime_` which effectively terminates the runtimes. It looks like we forgot about `operationsInBatch_`. <img width="1624" alt="Screenshot 2024-12-02 at 13 00 08" src="https://github.com/user-attachments/assets/23c8df28-885e-45e7-b88c-779edc3c4fb5"> ## Test plan 1. Launch FabricExample app 2. Reload the app several times 3. Repeat steps 1 and 2 several times
Configuration menu - View commit details
-
Copy full SHA for b97ba4f - Browse repository at this point
Copy the full SHA b97ba4fView commit details -
Configuration menu - View commit details
-
Copy full SHA for f612edd - Browse repository at this point
Copy the full SHA f612eddView commit details
Loading
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff 3.16.3...3.16.4