Repository navigation
Integrate Babylon React Native into the Babylon Native monorepo - #1949
Draft
CedricGuillemet wants to merge 331 commits into
Draft
CedricGuillemet wants to merge 331 commits into
CedricGuillemet wants to merge 331 commits into
Conversation
* setup react windows project * start on cmake definition for babylon react native for uwp * cache some helper logic * change setup to x64 for local testing * add source files * add some needed files * working winrt plugin initialization * more windows work * failing during linker * add options to vcxproj to try and unblock debug builds * move to use jsi * fix modules * add react-native-windows dependency * working compilation * current state * current proto changes * working native input compilation * fix playground solution * close to working * working windows logic * hacked app setup to support working windows logic * working vr * move BabylonNative dll definition and add arm64 support * fix babylonnative to build in module folder * fix submodule declarations * remove unneeded build scripts * add clean solution * working build * working build * typescript content needs cleaned up * things need cleaned up but we will try a clean repo * fix package.json definition * remove debug logic * get metro to play nice with new exclusion list * add x86, arm build support * revert files * packages working * add reset function and allow babylonnative to build from modules folder * fix package path resolution for react native windows * prepare for draft review * comment out slider, needs work to fix * move to newest babylonnative and fix gitmodule repo * remove unneeded package-lock * remove untrue comments * remove unneeded comments * fix namespace comment names * avoid checking in bin log * revert unneeded metro.config.js changes * get npm install working vs using yarn * get project to work with npm install * add readme tips * fix permissions and slider initialization issues * add step value to fix windows slider usage * rename babylon native component to avoid lib collisions * rename to BabylonReactNative * ready for review * update build steps * cleanup some unneeded changes * avoid moving to new commit * add event revokers * add uwp build logic * revert settings file * remove files and update documentation * address review comments * address more review comments * Update Modules/@babylonjs/react-native/EngineHook.ts Co-authored-by: Ryan Tremblay <ryantrem@msn.com> * address review comments * move hmd render behaviors to enginehook * remove unneeded dev dependencies * move engine logic into engineview * Update Modules/@babylonjs/react-native/EngineHook.ts Co-authored-by: Ryan Tremblay <ryantrem@msn.com> * address review comments * remove unneeded reference * Update Apps/Playground/App.tsx Co-authored-by: Ryan Tremblay <ryantrem@msn.com> Co-authored-by: Ryan Tremblay <ryantrem@msn.com>
* setup react windows project * start on cmake definition for babylon react native for uwp * cache some helper logic * change setup to x64 for local testing * add source files * add some needed files * working winrt plugin initialization * more windows work * failing during linker * add options to vcxproj to try and unblock debug builds * move to use jsi * fix modules * add react-native-windows dependency * working compilation * current state * current proto changes * working native input compilation * fix playground solution * close to working * working windows logic * hacked app setup to support working windows logic * working vr * move BabylonNative dll definition and add arm64 support * fix babylonnative to build in module folder * fix submodule declarations * remove unneeded build scripts * add clean solution * working build * working build * typescript content needs cleaned up * things need cleaned up but we will try a clean repo * fix package.json definition * remove debug logic * get metro to play nice with new exclusion list * add x86, arm build support * revert files * packages working * add reset function and allow babylonnative to build from modules folder * fix package path resolution for react native windows * prepare for draft review * comment out slider, needs work to fix * move to newest babylonnative and fix gitmodule repo * remove unneeded package-lock * remove untrue comments * remove unneeded comments * fix namespace comment names * avoid checking in bin log * revert unneeded metro.config.js changes * get npm install working vs using yarn * get project to work with npm install * add readme tips * fix permissions and slider initialization issues * add step value to fix windows slider usage * rename babylon native component to avoid lib collisions * rename to BabylonReactNative * ready for review * update build steps * cleanup some unneeded changes * avoid moving to new commit * add event revokers * add uwp build logic * revert settings file * remove files and update documentation * address review comments * address more review comments * Update Modules/@babylonjs/react-native/EngineHook.ts Co-authored-by: Ryan Tremblay <ryantrem@msn.com> * address review comments * move hmd render behaviors to enginehook * remove unneeded dev dependencies * move engine logic into engineview * Update Modules/@babylonjs/react-native/EngineHook.ts Co-authored-by: Ryan Tremblay <ryantrem@msn.com> * working windows packaging * avoid combining gulp files * address review comments * remove unneeded reference * update vcxproj and package choices * remove additional solution to prevent react-native-windows version conflicts * remove unneeded solution and update module * packages appear ready for usage * clean up things for review * execute file copies in parallel * revert unneeded changes * revert settings file Co-authored-by: Ryan Tremblay <ryantrem@msn.com>
* attempt changes * fix workflows * address review comments * avoid specifying number of processors * reduce powershell usage in favor of gulp tasks
* move to newer versions of react-native and fix android * add pc android build support * avoid updating ndk * Fix Podfiles * Add lost comment * Fix SafeAreaView background color for iOS * fix android packaged so files * Fixes for gulpfile.js * Split PackageTest into two apps - one for testing with RN 0.63.1, and one for testing with RN 0.64.0-rc.0 Change packages Android min api level back to 18 * final review comments Co-authored-by: Ryan Tremblay <ryan.tremblay@microsoft.com>
* fix native input usage for uwp * branch ready for native input * get app working with mouse input events * move to different submodule commits * avoid exposing device type * update content to reflect BabylonNative pr * work with babylon native changes * move to correct commit * update package references and validate uwp build * Update Modules/@babylonjs/react-native/ios/BabylonNativeInterop.mm Co-authored-by: Ryan Tremblay <ryantrem@msn.com> * Update Modules/@babylonjs/react-native/ios/BabylonNativeInterop.mm Co-authored-by: Ryan Tremblay <ryantrem@msn.com> * address review comments * try fix pr ci * move to master backslash fix Co-authored-by: Ryan Tremblay <ryantrem@msn.com>
…abylonJS#154) * move react-native-windows content * working react-native-windows builds * rearrange git status * avoid uploading for new windows package publishing * change publish directory for windows * working windows build? * remove unused packages * add bundle step to build pr * remove unneeded bundle step * test publish * add back @babylonjs/react-native packaging * avoid checking in an installed package-lock.json for @babylonjs/react-native * confirm packaging works * add peer dependency on @babylonjs/react-native * update package lock
…ylonJS#157) * fix webxrsessionmanager propagation * address review comments
* fix webxrsessionmanager propagation * address review comments * remove unnecessary promise
* add pointer capture * add todo
…lonJS#164) * change project reference structure * update react-native-windows dependencies * make vcxproj file more legible
* complete merge * enable all UWP build flavors for pr validation and build playground * convert tasks to matrix * fix x86 directories
…bylonJS#163) * add additional items * try and decrease precompiled header size for BabylonReactNative * update pch.h definition * include header files for extension * include newer commits * fix napi-jsi build break * move openxr header into babylonreactnative repo * move back to main repo * move to newer commit * Update Package/gulpfile.js Co-authored-by: rgerd <rgerd@users.noreply.github.com> * reduce number of gulp tasks Co-authored-by: rgerd <rgerd@users.noreply.github.com>
* Update Babylon Native and update CaptureSession accordingly
…ylonJS#181) * update packages * rename folder and move off of release candidates * working playground * update peer dependencies * update packages
… tooling (BabylonJS#188) * move to most recent master * move to most recent master and rebuild cmake solutions * add conditional step for building babylonnative static libs
* Update BN commitid * related updates * sse for bx * up BN * use macos15 * metal-cpp * Update BabylonNative and Babylon.js Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 15954b52-b707-4d01-8f9e-2272ec2fdfac * Update BabylonNative commit Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 15954b52-b707-4d01-8f9e-2272ec2fdfac * Restore Babylon.js 9.0 compatibility Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 15954b52-b707-4d01-8f9e-2272ec2fdfac --------- Copilot-Session: 15954b52-b707-4d01-8f9e-2272ec2fdfac
Bumps [fast-uri](https://github.com/fastify/fast-uri) from 3.1.2 to 3.1.6. - [Release notes](https://github.com/fastify/fast-uri/releases) - [Commits](fastify/fast-uri@v3.1.2...v3.1.6) --- updated-dependencies: - dependency-name: fast-uri dependency-version: 3.1.6 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Cedric Guillemet <1312968+CedricGuillemet@users.noreply.github.com>
…#740) Bumps [body-parser](https://github.com/expressjs/body-parser) from 1.20.5 to 1.20.6. - [Release notes](https://github.com/expressjs/body-parser/releases) - [Changelog](https://github.com/expressjs/body-parser/blob/master/HISTORY.md) - [Commits](expressjs/body-parser@1.20.5...1.20.6) --- updated-dependencies: - dependency-name: body-parser dependency-version: 1.20.6 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Cedric Guillemet <1312968+CedricGuillemet@users.noreply.github.com>
BabylonJS#738) Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.14.2 to 3.15.2. - [Changelog](https://github.com/nodeca/js-yaml/blob/3.15.2/CHANGELOG.md) - [Commits](nodeca/js-yaml@3.14.2...3.15.2) --- updated-dependencies: - dependency-name: js-yaml dependency-version: 3.15.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Cedric Guillemet <1312968+CedricGuillemet@users.noreply.github.com> Co-authored-by: Gary Hsu <bghgary@users.noreply.github.com>
…S#743) Bumps [browserslist](https://github.com/browserslist/browserslist) from 4.28.2 to 4.28.8. - [Release notes](https://github.com/browserslist/browserslist/releases) - [Changelog](https://github.com/browserslist/browserslist/blob/main/CHANGELOG.md) - [Commits](browserslist/browserslist@4.28.2...4.28.8) --- updated-dependencies: - dependency-name: browserslist dependency-version: 4.28.8 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Cedric Guillemet <1312968+CedricGuillemet@users.noreply.github.com>
…ylonJS#744) Bumps [@xmldom/xmldom](https://github.com/xmldom/xmldom) to 0.8.15 and updates ancestor dependency [react-native-windows](https://github.com/microsoft/react-native-windows/tree/HEAD/vnext). These dependencies need to be updated together. Updates `@xmldom/xmldom` from 0.7.13 to 0.8.15 - [Release notes](https://github.com/xmldom/xmldom/releases) - [Changelog](https://github.com/xmldom/xmldom/blob/master/CHANGELOG.md) - [Commits](xmldom/xmldom@0.7.13...0.8.15) Updates `react-native-windows` from 0.81.21 to 0.81.35 - [Release notes](https://github.com/microsoft/react-native-windows/releases) - [Changelog](https://github.com/microsoft/react-native-windows/blob/react-native-windows_v0.81.35/vnext/CHANGELOG.md) - [Commits](https://github.com/microsoft/react-native-windows/commits/react-native-windows_v0.81.35/vnext) --- updated-dependencies: - dependency-name: "@xmldom/xmldom" dependency-version: 0.8.15 dependency-type: indirect - dependency-name: react-native-windows dependency-version: 0.81.35 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Cedric Guillemet <1312968+CedricGuillemet@users.noreply.github.com>
…bylonJS#746) Bumps [baseline-browser-mapping](https://github.com/web-platform-dx/baseline-browser-mapping) from 2.10.30 to 2.11.21. - [Release notes](https://github.com/web-platform-dx/baseline-browser-mapping/releases) - [Commits](web-platform-dx/baseline-browser-mapping@v2.10.30...v2.11.21) --- updated-dependencies: - dependency-name: baseline-browser-mapping dependency-version: 2.11.21 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [joi](https://github.com/hapijs/joi) from 17.13.3 to 17.13.7. - [Commits](hapijs/joi@v17.13.3...v17.13.7) --- updated-dependencies: - dependency-name: joi dependency-version: 17.13.7 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Cedric Guillemet <1312968+CedricGuillemet@users.noreply.github.com>
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.14.2 to 3.15.2. - [Changelog](https://github.com/nodeca/js-yaml/blob/3.15.2/CHANGELOG.md) - [Commits](nodeca/js-yaml@3.14.2...3.15.2) --- updated-dependencies: - dependency-name: js-yaml dependency-version: 3.15.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Cedric Guillemet <1312968+CedricGuillemet@users.noreply.github.com>
…in extension (BabylonJS#745) AGP 9 ships built-in Kotlin support and registers the kotlin extension itself. Applying the Kotlin plugin again fails configuration with "Cannot add extension with name 'kotlin'". Check for the extension directly, which needs no AGP version table and covers AGP 10, where the android.builtInKotlin opt-out is removed. Co-authored-by: Cedric Guillemet <1312968+CedricGuillemet@users.noreply.github.com>
Bumps [shell-quote](https://github.com/ljharb/shell-quote) from 1.8.3 to 1.10.0. - [Changelog](https://github.com/ljharb/shell-quote/blob/main/CHANGELOG.md) - [Commits](ljharb/shell-quote@v1.8.3...v1.10.0) --- updated-dependencies: - dependency-name: shell-quote dependency-version: 1.10.0 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Cedric Guillemet <1312968+CedricGuillemet@users.noreply.github.com>
…onJS#737) Bumps [brace-expansion](https://github.com/juliangruber/brace-expansion) from 1.1.14 to 1.1.18. - [Release notes](https://github.com/juliangruber/brace-expansion/releases) - [Commits](juliangruber/brace-expansion@v1.1.14...v1.1.18) --- updated-dependencies: - dependency-name: brace-expansion dependency-version: 1.1.18 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Cedric Guillemet <1312968+CedricGuillemet@users.noreply.github.com> Co-authored-by: Gary Hsu <bghgary@users.noreply.github.com>
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.29.0 to 7.29.7. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.29.7/packages/babel-core) --- updated-dependencies: - dependency-name: "@babel/core" dependency-version: 7.29.7 dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…nJS#751) Removes [tar](https://github.com/isaacs/node-tar). It's no longer used after updating ancestor dependency [just-scripts](https://github.com/microsoft/just). These dependencies need to be updated together. Removes `tar` Updates `just-scripts` from 0.44.8 to 2.6.2 - [Commits](https://github.com/microsoft/just/commits/just-scripts_v2.6.2) --- updated-dependencies: - dependency-name: tar dependency-version: dependency-type: indirect - dependency-name: just-scripts dependency-version: 2.6.2 dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Cedric Guillemet <1312968+CedricGuillemet@users.noreply.github.com>
Combine the safe lockfile-only updates from BabylonJS#750, BabylonJS#753, BabylonJS#756, and BabylonJS#757 so they share one CI run. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Bumps and [ws](https://github.com/websockets/ws). These dependencies needed to be updated together. Updates `ws` from 6.2.3 to 6.2.6 - [Release notes](https://github.com/websockets/ws/releases) - [Commits](websockets/ws@6.2.3...6.2.6) Updates `ws` from 7.5.10 to 7.5.13 - [Release notes](https://github.com/websockets/ws/releases) - [Commits](websockets/ws@6.2.3...6.2.6) --- updated-dependencies: - dependency-name: ws dependency-version: 6.2.6 dependency-type: indirect - dependency-name: ws dependency-version: 7.5.13 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together. Updates `braces` from 2.3.2 to 3.0.3 - [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/braces/commits/3.0.3) Updates `gulp` from 4.0.2 to 5.0.1 - [Release notes](https://github.com/gulpjs/gulp/releases) - [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md) - [Commits](gulpjs/gulp@v4.0.2...v5.0.1) --- updated-dependencies: - dependency-name: braces dependency-version: 3.0.3 dependency-type: indirect - dependency-name: gulp dependency-version: 5.0.1 dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Fix Windows embedded source build Use the React Native Windows generated C++/WinRT projections for the CMake build and add blocking source and package CI coverage. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Pin Windows CI to Visual Studio 2022 The windows-latest image now uses Visual Studio 2026 and no longer contains the requested 10.0.22621 SDK. Use the runner matching the v143 CMake generator and project toolset. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Support RNW new architecture on Windows Use RNW's architecture-aware C++ project integration and disable Windows App SDK transitive verification for the Playground's native module build. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Update Windows test dependencies Use the RNW patch containing the corrected Windows App SDK package and skip schema codegen for BRN's hand-written native module. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Build Windows tests against RNW NuGet Generate the Playground with explicit Fabric and NuGet settings, and protect the CMake projection path from trailing-backslash quote parsing. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Isolate Windows package build test Build the autolinked BRN project directly, keep RNW dependencies on NuGet, and avoid executable packaging during CMake compiler probes. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Provide solution context to Windows tests Pass the generated solution metadata required by RNW while building only the BRN project. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Shorten Windows native build paths Place generated CMake projects under the consumer solution build directory so deeply nested MSBuild tracking files remain below MAX_PATH. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Compact Windows native build identity Keep CMake outputs below legacy MSBuild path limits while preserving platform, configuration, toolset, and generator isolation. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Remove obsolete device update calls Babylon Native now performs frame synchronization in the rendering-frame methods; its DeviceUpdate compatibility shim is intentionally a no-op and deprecated. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Test Windows package with legacy architecture Generate the Windows test app through the react-native-test-app API so Fabric can be explicitly disabled while retaining the RNW NuGet dependency path. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Align Windows native C++ ABI Compile the CMake bridge as C++20, matching React Native Windows and the embedded Babylon Native dependency graph so C++/WinRT selects the same coroutine and source-location ABI. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Add XR controls regression coverage Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Fix cross-platform Playground XR controls Keep controls visible and interactive above native engine surfaces, surface XR startup failures, and declare ARCore as an optional Android capability. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Bump braces and gulp in /Package (BabylonJS#760) Bumps [braces](https://github.com/micromatch/braces) to 3.0.3 and updates ancestor dependency [gulp](https://github.com/gulpjs/gulp). These dependencies need to be updated together. Updates `braces` from 2.3.2 to 3.0.3 - [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/braces/commits/3.0.3) Updates `gulp` from 4.0.2 to 5.0.1 - [Release notes](https://github.com/gulpjs/gulp/releases) - [Changelog](https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md) - [Commits](gulpjs/gulp@v4.0.2...v5.0.1) --- updated-dependencies: - dependency-name: braces dependency-version: 3.0.3 dependency-type: indirect - dependency-name: gulp dependency-version: 5.0.1 dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Address PR review feedback Preserve legacy RNW imports, validate complete Windows consumers, honor the packaged dependency lockfile, and report XR stop failures accurately. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Build Windows consumers with C++20 The full RNW solution compiles coroutine-based Hermes sources that require the same C++20 standard as the native bridge. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Fix Windows consumer project graph Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Build generated Windows app target Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Keep Windows native modules on RNW NuGet Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Configure RNW NuGet for Windows projects Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Isolate Windows consumer project builds Restore and build each autolinked project independently so MSBuild cannot traverse into React Native Windows source projects.\n\nCo-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Force RNW NuGet mode in Windows CI Import the generated consumer setting before each C++ project evaluates its RNW references, ensuring native modules consume the matching NuGet projections and binaries.\n\nCo-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Enforce RNW NuGet environment in CI Set the RNW NuGet properties in the MSBuild process environment and assert each native project evaluates the expected mode before restore and build.\n\nCo-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Make RNW NuGet mode a global property Pass UseExperimentalNuget directly to every MSBuild root and reject projects that still evaluate an RNW source reference before restore.\n\nCo-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Normalize RNW NuGet metadata references Replace resolved Microsoft.ReactNative WinMD inputs with the consumer-selected NuGet package path before C++/WinRT generates MIDL references.\n\nCo-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Normalize final CppWinRT MIDL inputs Remove stale Microsoft.ReactNative metadata from every C++/WinRT reference collection immediately before generating MIDL inputs.\n\nCo-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Remove legacy RNW source imports in CI Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Complete RNW NuGet consumer build Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Enforce C++20 on generated Windows app Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Disable legacy coroutines for Windows app Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Work around RNTA IAsyncAction await Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Make RNTA coroutine workaround robust Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Normalize RNW runtime package payload Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Normalize RNW PRI input snapshot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Limit Windows CI to linked app build Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [shelljs](https://github.com/shelljs/shelljs) from 0.8.4 to 0.8.5. - [Release notes](https://github.com/shelljs/shelljs/releases) - [Changelog](https://github.com/shelljs/shelljs/blob/main/CHANGELOG.md) - [Commits](shelljs/shelljs@v0.8.4...v0.8.5) --- updated-dependencies: - dependency-name: shelljs dependency-version: 0.8.5 dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Cedric Guillemet <1312968+CedricGuillemet@users.noreply.github.com>
* Update BabylonNative pin with NativeXR JSI compatibility fix Pin CedricGuillemet/BabylonNative commit ebb8a00 from draft PR #17, based on upstream 628986b. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 00e98a65-803d-48bb-8d36-da55ab233dfe * Update Playground ARCore SDK to 1.56.0 Override the module default only in the Android test app and document the version. Validated the ARM64 release build and XR tracking on Pixel 9a. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 00e98a65-803d-48bb-8d36-da55ab233dfe * Pin merged upstream NativeXR JSI fix Update BabylonNative to feb0227 and restore the BabylonJS archive URL after the JSI fix merged. Revalidated source preparation, TypeScript compilation, Android release build, device rendering, manually confirmed XR tracking, and suspend/resume with Playground ARCore 1.56.0. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 00e98a65-803d-48bb-8d36-da55ab233dfe * Pin Playground RNW to match published NuGet packages Keep react-native-windows at the already-locked 0.81.35 so installing the packaged BabylonReactNative artifact cannot float to npm-only 0.81.37 and restore incompatible 0.82.0 NuGet binaries. Synchronize both Playground manifests and lockfiles. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 00e98a65-803d-48bb-8d36-da55ab233dfe --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 00e98a65-803d-48bb-8d36-da55ab233dfe
* Update BabylonNative to f4d9efb Pin the latest BabylonNative master revision, including the JsRuntimeHost dependency update. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 74d06f45-92ac-4835-acc2-8ed89229b9eb * Remove obsolete minz links for updated BabylonNative Update iOS and Windows consumers after BabylonNative stopped producing the minz library; refresh the iOS podspec checksum. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 74d06f45-92ac-4835-acc2-8ed89229b9eb --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 74d06f45-92ac-4835-acc2-8ed89229b9eb
* docs: synchronize READMEs with 2.0.6 and current build setup Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 8d68c500-a3eb-4b2e-8726-17b7f4073d8f * docs: use Babylon Native workspace for iOS Playground Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 8d68c500-a3eb-4b2e-8726-17b7f4073d8f * docs: record resolved Playground version baselines Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 8d68c500-a3eb-4b2e-8726-17b7f4073d8f * docs: update READMEs for 2.0.7 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 8d68c500-a3eb-4b2e-8726-17b7f4073d8f --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 8d68c500-a3eb-4b2e-8726-17b7f4073d8f
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: baba94fb-c4c7-4db1-b40e-0f96acd08f31
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: baba94fb-c4c7-4db1-b40e-0f96acd08f31
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: baba94fb-c4c7-4db1-b40e-0f96acd08f31
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: baba94fb-c4c7-4db1-b40e-0f96acd08f31
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: baba94fb-c4c7-4db1-b40e-0f96acd08f31
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: baba94fb-c4c7-4db1-b40e-0f96acd08f31
Packaged builds remain disconnected through the shared native wrapper. Local Gradle configuration accepts the change and reaches dependency fetching; full local Android configuration is blocked by the SDK Ninja Windows path limit. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: baba94fb-c4c7-4db1-b40e-0f96acd08f31
Keep upstream Hermes nightly jobs and publication gating inside the BabylonNative stage, retaining the ReactNative stage unchanged. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: baba94fb-c4c7-4db1-b40e-0f96acd08f31
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Bring Babylon React Native into the Babylon Native monorepo at
Embedding/ReactNative, preserving the Playground name and BRN's rewritten Git history.BabylonJS/BabylonReactNativemaster at721b33ff6303fad3757a9c645abd8f13e2a3fcba, excluding.githuband.vscode. Keep its README and original license/security information; reuse the root contribution policy. No BRN tags are pushed.Repo/depslayout and existing binary library paths. Android no longer forces disconnected mode for developer builds; packaged builds still enable it in the shared wrapper.Package/Assembled, excluding apps, documentation, install scripts, CI, andEmbedding/ReactNativeitself. Preserve CMake dependency staging/pruning and remove ZIP/rename dependencies..github/workflows/reactnative-*.ymlfiles with React Native display names; GitHub does not discover workflows in subdirectories. Update reusable-workflow references, documentation links, and the PR path filter accordingly.reactnative-*.ymlassembly, tarball, platform-build, and package-consumer workflows. Merge current upstream changes while preserving its Hermes nightly jobs and native publication gating inside the BabylonNative stage.react-native/vX.Y.Zas npm versionX.Y.Zthroughreactnative-publish.yml; provide manual preview publishing throughreactnative-publish-preview.yml.Build, nested_deps, and packaged native source/dependency trees from module TypeScript compilation.Temporary CI wiring -- remove before merge
.github/workflows/ci.ymlunconditionally calls./.github/workflows/reactnative-pr.ymlfor this draft. This is marked# TEMPORARY: remove before mergeand included in the aggregate check. Remove the temporary wiring before merging. The separate path-filtered entry avoids duplicate builds while this call exists and automatically resumes direct execution when it is removed.Validation and CI fixes
npx gulp buildAssembledandvalidateAssembledpassed.npm packpassed; verified required native/dependency/license files and absence of recursive React Native copies or Git metadata.Graphicsin Release. Confirmed the packaged iOS entry selects its bundled toolchain without downloads.Graphics. Root native CMake files are unchanged and do not include React Native.gulp setupDevpassed with physically populated iOSBuild, Android.cxx/_deps, and packagedRepo/depstrees; their TypeScript files were excluded. Temporary verification files were removed.7efcb661in CI run 38886973160: Android, iOS, and Windows source builds; assembly; packaging; and all three packaged-consumer builds. This confirms both the generated-TypeScript exclusions and the Android developer FetchContent fix.Repository setup and follow-ups
Publishing requires a BabylonNative repository secret named
NPM_TOKENwith permission to publish@babylonjs/react-native.Not included: npm trusted publishing, the future of the old BabylonReactNative repository, or switching BRN to consume
Babylon::Embedding.