Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

release: 3.17.0-rc.1 #6819

Merged
merged 36 commits into from
Dec 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
6af6d2e
docs: worklets on the Web are just JavaScript functions (#6737)
kacperkapusciak Nov 21, 2024
79ea845
chore(Worklets): SingleInstanceChecker (#6694)
tjzel Nov 21, 2024
8c110b5
Update ReanimatedPackage to supported stable API (#6730)
jakex7 Nov 22, 2024
1d52db3
chore(deps): bump cross-spawn from 6.0.5 to 6.0.6 (#6729)
dependabot[bot] Nov 22, 2024
3e39168
Replace findNodeHandle with reading _componentViewTag (#6720)
gaearon Nov 22, 2024
f54fb3c
refactor(Worklets): Move shareable creation to Worklets (#6576)
tjzel Nov 22, 2024
16cd933
Fix bug in useSharedValueMock (#6742)
sumo-slonik Nov 22, 2024
65b520c
chore: migrate npx react-native init (#6628)
coado Nov 22, 2024
3212ae4
refactor(Worklets): Move `messageQueue` to Worklets (#6577)
tjzel Nov 25, 2024
b28dc07
fix: restore `classic` runtime for @babel/preset-react (#6760)
tjzel Nov 25, 2024
3a1622d
Make `makeShareableCloneRecursive` more readable (#5724)
tjzel Nov 26, 2024
95d7de6
refactor: rename MessageQueueThread (#6750)
tjzel Nov 26, 2024
26decdc
Restore `nativeStateSource` in `makeShareableCloneRecursive` (#6763)
bartlomiejbloniarz Nov 26, 2024
f47d4d1
refactor: rename cpp NativeReanimatedModule to ReanimatedModuleProxy …
tjzel Nov 27, 2024
394f2c2
refactor: rename cpp NativeWorkletsModule to WorkletsModuleProxy (#6767)
tjzel Nov 27, 2024
556edaf
Clear `operationsInBatch_` before terminating UI runtime (#6779)
tomekzaw Dec 3, 2024
a566fbc
Assert that `workletsModuleProxy` is found (#6780)
tomekzaw Dec 3, 2024
64053b9
chore: rephrase render shared value read warning (#6785)
tjzel Dec 3, 2024
d381387
Refactor findNodeHandler (#6736)
piaskowyk Dec 4, 2024
07ac12b
docs: fix `useEvent` typos, tweak wording of main `README` opening su…
sorenfrederiksen Dec 4, 2024
5ffa3bb
fix: Empty array & null checks in handleTabNavigatorChange method fix…
aymather Dec 4, 2024
135e431
fix: brownfield integration (#6774)
WoLewicki Dec 4, 2024
0445ac6
refactor(Worklets): move PlatformLogger (#6794)
tjzel Dec 6, 2024
4878597
Cache `worklets` (#6758)
piaskowyk Dec 6, 2024
8b30dbf
Workaround for V8EXECUTOR_LIB NOTFOUND error in worklets CMakeLists.t…
dlee Dec 9, 2024
5d7305a
Fix crash caused by using `ShareableHandle` in multiple remote runtim…
tomekzaw Dec 9, 2024
bf937e7
refactor: restore JSCallInvoker (#6783)
tjzel Dec 9, 2024
d351c28
refactor(Worklets): move JSScheduler (#6762)
tjzel Dec 9, 2024
d1af592
refactor(Worklets): move UIScheduler (#6789)
tjzel Dec 10, 2024
2189b43
fix: missing `.get()` in `useDerivedValue` mock (#6809)
kirillzyusko Dec 12, 2024
9735871
feat(Worklets): react-native-worklets node package stub (#6806)
tjzel Dec 12, 2024
6d0694a
chore: remove extraneous packageManager field (#6814)
tjzel Dec 12, 2024
8a00947
refactor: move _WORKLET injection to Worklets decorator (#6816)
tjzel Dec 12, 2024
5e86bab
chore: add cmake formatting and linting (#6811)
tjzel Dec 13, 2024
02c1217
chore: bump repo to RN 0.76.5 (#6818)
tjzel Dec 13, 2024
9a44142
release: 3.17.0-rc.1
tjzel Dec 13, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 10 additions & 8 deletions .github/workflows/V8-reanimated-build-check-nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,17 +33,19 @@ jobs:
java-version: '17'
- name:
Setup Yarn
# Sometimes `npx react-native init` fails due to dependency mismatches or other
# rather vague errors. This is a workaround for that.
# Sometimes `npx @react-native-community/cli init` fails at random.
# Pre-installing it with Yarn seems to improve stability.
run: corepack enable && yarn init
- name: Install React Native
run: yarn add react-native
- name: Install React Native CLI
run: yarn add @react-native-community/cli
- name: Create app
run: |
yarn react-native init ${{ env.APP_NAME }} --version ${{env.LATEST_SUPPORTED_RN_VERSION_IN_V8}} --skip-install --pm yarn --skip-install --install-pods false --skip-git-init
- name: Setup Yarn Modern
run: yarn rnc-cli init ${{ env.APP_NAME }} --version ${{env.LATEST_SUPPORTED_RN_VERSION_IN_V8}} --skip-install --pm yarn --install-pods false --skip-git-init
- name: Setup Yarn Modern in app
working-directory: ${{ env.APP_NAME }}
run: touch yarn.lock && yarn set version berry && yarn config set nodeLinker node-modules
run: |
touch yarn.lock
yarn set version berry
yarn config set nodeLinker node-modules
- name: Install dependencies
working-directory: ${{ env.APP_NAME }}
run: yarn install
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/example-ios-build-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,4 +58,4 @@ jobs:

- name: Build app
working-directory: ${{ matrix.working-directory }}
run: npx react-native run-ios --no-packager
run: yarn react-native run-ios --no-packager
2 changes: 1 addition & 1 deletion .github/workflows/expo-devclient-build-check-nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ jobs:
- name: Build app (iOS)
working-directory: ${{ env.APP_NAME }}
if: ${{ matrix.platform == 'iOS' }}
run: npx react-native run-ios --simulator='iPhone 14' --terminal='Terminal'
run: yarn react-native run-ios --terminal='Terminal'
- name: Build app (Android)
working-directory: ${{ env.APP_NAME }}/android
if: ${{ matrix.platform == 'Android' }}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,15 +35,17 @@ jobs:
# TODO: Put Monorepo template into a separate repo/package
run: echo '{"name":"rnos-monorepo-tester","version":"1.0.0","license":"MIT","private":true,"workspaces":{"packages":["RootApp","packages/PackageApp", "AppA", "AppB"],"nohoist":["**/react","**/react-dom","**/react-native","**/react-native/**","**/react-native-codegen","**/react-native-dev-menu"]}}' > package.json
- name: Install dependencies
working-directory: monorepo
run: yarn install
- name: Install React Native CLI
working-directory: monorepo
run: yarn add -W @react-native-community/cli
- name: Create RootApp
working-directory: monorepo
# TODO: Revise if we want to hardcode 0.73 here.
run: npx react-native@0.73 init RootApp --skip-install --version 0.73
run: yarn rnc-cli init RootApp --skip-install --pm yarn --install-pods false --skip-git-init
- name: Create PackageApp
working-directory: monorepo/packages
# TODO: Revise if we want to hardcode 0.73 here.
run: npx react-native@0.73 init PackageApp --skip-install --version 0.73
run: yarn rnc-cli init PackageApp --skip-install --pm yarn --install-pods false --skip-git-init

- name: Install dependencies for RootApp
working-directory: monorepo/RootApp
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ jobs:
cancel-in-progress: true
steps:
- name: Setup Yarn
# Sometimes `npx react-native init` fails due to dependency mismatches or other
# rather vague errors. This is a workaround for that.
# Sometimes `npx @react-native-community/cli init` fails at random.
# Pre-installing it with Yarn seems to improve stability.
run: corepack enable && yarn init
- name: Set up JDK 18
if: ${{ matrix.platform == 'Android' }}
Expand All @@ -41,14 +41,16 @@ jobs:
if npm view react-native dist-tags | grep -q 'next:' ; then
echo "REACT_NATIVE_TAG=next" >> $GITHUB_ENV
fi
- name: Install React Native
run: yarn add react-native@${{ env.REACT_NATIVE_TAG }}
- name: Install React Native CLI
run: yarn add @react-native-community/cli
- name: Create app
run: |
yarn react-native init ${{ env.APP_NAME }} --version ${{ env.REACT_NATIVE_TAG }} --pm yarn --skip-install --install-pods false --skip-git-init
- name: Setup Yarn Modern
run: yarn rnc-cli init ${{ env.APP_NAME }} --version ${{ env.REACT_NATIVE_TAG }} --pm yarn --skip-install --install-pods false --skip-git-init
- name: Setup Yarn Modern in app
working-directory: ${{ env.APP_NAME }}
run: touch yarn.lock && yarn set version berry
run: |
touch yarn.lock
yarn set version berry
yarn config set nodeLinker node-modules
- name: Install Reanimated
working-directory: ${{ env.APP_NAME }}
run: yarn add "react-native-reanimated@https://github.com/software-mansion/react-native-reanimated.git#workspace=react-native-reanimated&commit=${{ github.sha }}"
Expand All @@ -67,7 +69,7 @@ jobs:
- name: Build app (iOS)
if: ${{ matrix.platform == 'iOS' }}
working-directory: ${{ env.APP_NAME }}
run: yarn react-native run-ios --simulator='iPhone 14'
run: yarn react-native run-ios --terminal='Terminal'
- name: Build app (Android)
if: ${{ matrix.platform == 'Android' }}
working-directory: ${{ env.APP_NAME }}/android
Expand Down
17 changes: 13 additions & 4 deletions .github/workflows/reanimated-compatibility-check-nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,13 +44,22 @@ jobs:
uses: actions/setup-node@v3
with:
node-version: 18
- name:
Setup Yarn
# Sometimes `npx @react-native-community/cli init` fails at random.
# Pre-installing it with Yarn seems to improve stability.
run: corepack enable && yarn init
- name: Install React Native CLI
run: yarn add @react-native-community/cli
- name: Create app
run: |
npx react-native@latest init ${{env.APP_NAME}} --version ${{ matrix.react-native.version }} --skip-install --pm yarn --skip-install --install-pods 0 --skip-git-init
- name: Setup Yarn Modern
run: yarn rnc-cli init ${{env.APP_NAME}} --version ${{ matrix.react-native.version }} --skip-install --pm yarn --install-pods 0 --skip-git-init
- name: Setup Yarn Modern in app
# For convenience, sometimes there are vague issues with RN CLI and Yarn Legacy on the runner.
working-directory: ${{ env.APP_NAME }}
run: corepack enable && yarn set version berry
run: |
touch yarn.lock
yarn set version berry
yarn config set nodeLinker node-modules
- name: Install Reanimated
working-directory: ${{ env.APP_NAME }}
run: yarn add "react-native-reanimated@https://github.com/software-mansion/react-native-reanimated.git#workspace=react-native-reanimated&commit=${{ github.sha }}"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,20 +21,37 @@ jobs:
concurrency:
group: ios-static-framework-${{ matrix.react-native-architecture }}-${{ github.ref }}
cancel-in-progress: true
env:
APP_NAME: app
steps:
- name: Create React Native app
run: npx react-native init app
- name: Setup Yarn
# Sometimes `npx @react-native-community/cli init` fails at random.
# Pre-installing it with Yarn seems to improve stability.
run: corepack enable && yarn init
- name: Install React Native
run: yarn add @react-native-community/cli
- name: Create app
run: yarn rnc-cli init ${{ env.APP_NAME }} --skip-install --pm yarn --install-pods false --skip-git-init
- name: Setup Yarn Modern in app
working-directory: ${{ env.APP_NAME }}
run: |
touch yarn.lock
yarn set version berry
yarn config set nodeLinker node-modules
- name: Install dependencies
working-directory: ${{ env.APP_NAME }}
run: yarn install
- name: Install Reanimated
working-directory: app
working-directory: ${{ env.APP_NAME }}
run: yarn add "react-native-reanimated@https://github.com/software-mansion/react-native-reanimated.git#workspace=react-native-reanimated&commit=${{ github.sha }}"
- name: Install Paper Pods
if: ${{ matrix.react-native-architecture == 'Paper' }}
working-directory: app/ios
working-directory: ${{env.APP_NAME}}/ios
run: export USE_FRAMEWORKS=static NO_FLIPPER=1 && bundle install && bundle exec pod install
- name: Install Fabric Pods
if: ${{ matrix.react-native-architecture == 'Fabric' }}
working-directory: app/ios
run: export USE_FRAMEWORKS=static NO_FLIPPER=1 RCT_NEW_ARCH_ENABLED=1 && bundle install && bundle exec pod install
working-directory: ${{env.APP_NAME}}/ios
run: export USE_FRAMEWORKS=static NO_FLIPPER=1 RCT_NEW_ARCH_ENABLED=1 && bundle install && bundle exec pod update
- name: Build app
working-directory: app
run: npx react-native run-ios --no-packager
working-directory: ${{env.APP_NAME}}/ios
run: xcodebuild -workspace ${{env.APP_NAME}}.xcworkspace -scheme ${{env.APP_NAME}} -configuration Debug -destination 'generic/platform=iOS Simulator' build | xcpretty
Original file line number Diff line number Diff line change
Expand Up @@ -25,17 +25,21 @@ jobs:
with:
distribution: 'zulu'
java-version: '17'
- name: Setup Yarn
# Sometimes `npx react-native init` fails due to dependency mismatches or other
# rather vague errors. This is a workaround for that.
- name:
Setup Yarn
# Sometimes `npx @react-native-community/cli init` fails at random.
# Pre-installing it with Yarn seems to improve stability.
run: corepack enable && yarn init --yes
- name: Install React Native
run: yarn add @react-native-community/cli
- name: Create app
run: yarn rnc-cli init ${{ env.APP_NAME }} --pm yarn --skip-install --install-pods false --skip-git-init
- name: Setup Yarn Modern
- name: Setup Yarn Modern in app
working-directory: ${{ env.APP_NAME }}
run: touch yarn.lock && yarn set version berry
run: |
touch yarn.lock
yarn set version berry
yarn config set nodeLinker node-modules
- name: Install dependencies
working-directory: ${{ env.APP_NAME }}
run: yarn
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@
> Reanimated 3 is here! Check out our [documentation page](https://docs.swmansion.com/react-native-reanimated/) for more information

React Native Reanimated provides a more comprehensive,
low level abstraction for the Animated library API to be built
on top of and hence allow for much greater flexibility especially when it
comes to gesture based interactions.
low-level abstraction for the Animated library API on which to build,
allowing for much greater flexibility, especially when it comes to
gesture-based interactions.

### Nightly CI state

Expand Down
6 changes: 1 addition & 5 deletions apps/common-app/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,11 @@
"@react-native-async-storage/async-storage": "*",
"@react-native-community/slider": "*",
"@react-native-masked-view/masked-view": "*",
"@react-native-picker/picker": "*",
"@react-navigation/bottom-tabs": "*",
"@react-navigation/native": "*",
"@react-navigation/native-stack": "*",
"@react-navigation/stack": "*",
"@shopify/flash-list": "*",
"@stylexjs/babel-plugin": "*",
"d3-shape": "*",
"react": "*",
"react-dom": "*",
Expand All @@ -35,13 +33,11 @@
"@react-native-async-storage/async-storage": "^1.24.0",
"@react-native-community/slider": "^4.5.5",
"@react-native-masked-view/masked-view": "^0.3.1",
"@react-native-picker/picker": "^2.9.0",
"@react-navigation/bottom-tabs": "^7.0.0",
"@react-navigation/native": "^7.0.0",
"@react-navigation/native-stack": "^7.0.0",
"@react-navigation/stack": "^7.0.0",
"@shopify/flash-list": "^1.7.1",
"@stylexjs/babel-plugin": "^0.7.5",
"@tsconfig/react-native": "^3.0.0",
"@types/d3-shape": "^3.1.1",
"d3-shape": "^3.2.0",
Expand All @@ -50,7 +46,7 @@
"patch-package": "^8.0.0",
"prettier": "^3.3.3",
"react": "18.3.1",
"react-native": "^0.76.1",
"react-native": "0.76.5",
"react-native-gesture-handler": "2.20.2",
"react-native-pager-view": "^6.4.1",
"react-native-reanimated": "workspace:*",
Expand Down
Loading
Loading