helloadhavan/github_issues huggingface dataset:
Repository: facebook/react
Pull request: [DevTools] Run e2e Regression Tests Hourly on Circle CI

Modifies Circle CI so we run e2e regression tests hourly on Circle CI

Changed files:
filename: .circleci/config.yml
patch: @@ -241,6 +241,36 @@ jobs:
       - run: ./scripts/circleci/download_devtools_regression_build.js << parameters.version >> --replaceBuild
       - run: node ./scripts/jest/jest-cli.js --build --project devtools --release-channel=experimental --reactVersion << parameters.version >> --ci
 
+  run_devtools_e2e_tests_for_versions:
+    docker: *docker
+    environment: *environment
+    parallelism: *TEST_PARALLELISM
+    parameters:
+      version:
+        type: string
+    steps:
+      - checkout
+      - attach_workspace:
+          at: .
+      - run: yarn workspaces info | head -n -1 > workspace_info.txt
+      - *restore_node_modules
+      - run:
+          name: Install nested packages from Yarn cache
+          command: yarn --frozen-lockfile --cache-folder ~/.cache/yarn
+      - run:
+          name: Playwright install deps
+          command: |
+            npx playwright install
+            sudo npx playwright install-deps
+      - run: ./scripts/circleci/download_devtools_regression_build.js << parameters.version >>
+      - run:
+          environment:
+            RELEASE_CHANNEL: experimental
+          command: ./scripts/circleci/run_devtools_e2e_tests.js << parameters.version >>
+      - run:
+          name: Cleanup build regression folder
+          command: rm -r ./build-regression
+
   yarn_lint_build:
     docker: *docker
     environment: *environment
@@ -542,6 +572,17 @@ workflows:
                 - "16.8" # hooks
                 - "17.0" 
                 - "18.0"
+      - run_devtools_e2e_tests_for_versions:
+          requires:
+            - build_devtools_and_process_artifacts
+          matrix:
+            parameters:
+              version:
+                - "16.0"
+                - "16.5" # schedule package
+                - "16.8" # hooks
+                - "17.0" 
+                - "18.0"
 
   # Used to publish a prerelease manually via the command line
   publish_preleases:
Repository: denoland/deno
Pull request: fix(ext/node): Add missing `node:path` exports

Apparently `path/posix` and `path/win32` have circular exports. I do not know why.

Additionally there's a deprecated function `_makeLong` which is just `toNamespacedPath`

Changed files:
filename: ext/node/polyfills/path/_posix.ts
patch: @@ -478,6 +478,9 @@ export function parse(path: string): ParsedPath {
 
   return ret;
 }
+
+export const _makeLong = toNamespacedPath;
+
 export default {
   basename,
   delimiter,
@@ -492,4 +495,5 @@ export default {
   resolve,
   sep,
   toNamespacedPath,
+  _makeLong,
 };

filename: ext/node/polyfills/path/_win32.ts
patch: @@ -953,6 +953,8 @@ export function parse(path: string): ParsedPath {
   return ret;
 }
 
+export const _makeLong = toNamespacedPath;
+
 export default {
   basename,
   delimiter,
@@ -967,4 +969,5 @@ export default {
   resolve,
   sep,
   toNamespacedPath,
+  _makeLong,
 };

filename: ext/node/polyfills/path/mod.ts
patch: @@ -36,6 +36,7 @@ export const {
   resolve,
   sep,
   toNamespacedPath,
+  _makeLong,
 } = path;
 export default path;
 export * from "ext:deno_node/path/common.ts";

filename: ext/node/polyfills/path/posix.ts
patch: @@ -18,6 +18,9 @@ export const {
   resolve,
   sep,
   toNamespacedPath,
+  _makeLong,
 } = path.posix;
 
+export const posix = path.posix;
+export const win32 = path.win32;
 export default path.posix;

filename: ext/node/polyfills/path/win32.ts
patch: @@ -18,6 +18,9 @@ export const {
   resolve,
   sep,
   toNamespacedPath,
+  _makeLong,
 } = path.win32;
 
+export const posix = path.posix;
+export const win32 = path.win32;
 export default path.win32;
Repository: facebook/react
Pull request: [DevTools] devtools-test-shell Regression App fixes

Made a couple of fixes to the `devtools-test-shell`
* test selectors aren't available in > React v18.0 either, so we'll need to mock the test selector functions there as well
* `react-dom/client` should map to `react-dom/client` and not `react-dom`

Changed files:
filename: packages/react-devtools-shell/src/e2e-regression/app.js
patch: @@ -22,4 +22,10 @@ function mountTestApp() {
 mountTestApp();
 
 // ReactDOM Test Selector APIs used by Playwright e2e tests
-window.parent.REACT_DOM_APP = ReactDOM;
+// If they don't exist, we mock them
+window.parent.REACT_DOM_APP = {
+  createTestNameSelector: name => `[data-testname="${name}"]`,
+  findAllNodes: (container, nodes) =>
+    container.querySelectorAll(nodes.join(' ')),
+  ...ReactDOM,
+};

filename: packages/react-devtools-shell/webpack.config.js
patch: @@ -193,7 +193,7 @@ const e2eRegressionApp = semver.lt(REACT_VERSION, '18.0.0')
       {
         react: resolve(E2E_APP_BUILD_DIR, 'react'),
         'react-dom': resolve(E2E_APP_BUILD_DIR, 'react-dom'),
-        'react-dom/client': resolve(E2E_APP_BUILD_DIR, 'react-dom'),
+        'react-dom/client': resolve(E2E_APP_BUILD_DIR, 'react-dom/client'),
         scheduler: resolve(E2E_APP_BUILD_DIR, 'scheduler'),
       },
     );
Repository: ggml-org/llama.cpp
Pull request: scripts : add option to compare commits in Debug

Some changes like https://github.com/ggml-org/llama.cpp/pull/13706#issuecomment-2907697542 have more pronounced performance effects when running in Debug build. This PR adds an option to do that:

```bash
CMAKE_OPTS="-DCMAKE_BUILD_TYPE=Debug" ./scripts/compare-commits.sh ...
```

Changed files:
filename: scripts/compare-commits.sh
patch: @@ -17,14 +17,14 @@ rm -f llama-bench.sqlite > /dev/null
 
 # to test a backend, call the script with the corresponding environment variable (e.g. GGML_CUDA=1 ./scripts/compare-commits.sh ...)
 if [ -n "$GGML_CUDA" ]; then
-    cmake_opts="-DGGML_CUDA=ON"
+    CMAKE_OPTS="${CMAKE_OPTS} -DGGML_CUDA=ON"
 fi
 
 dir="build-bench"
 
 function run {
     rm -fr ${dir} > /dev/null
-    cmake -B ${dir} -S . $cmake_opts > /dev/null
+    cmake -B ${dir} -S . ${CMAKE_OPTS} > /dev/null
     cmake --build ${dir} -t llama-bench > /dev/null
     ${dir}/bin/llama-bench -o sql -oe md $bench_args | sqlite3 llama-bench.sqlite
 }
Repository: electron/electron
Pull request: fix: EyeDropper working in devtools (31-x-y)

Backport of #43685

See that PR for details.


Notes: Fixed an issue where clicking the eyedropper icon did nothing instead of opening an eyedropper for color selection as expected.

Changed files:
filename: shell/browser/ui/inspectable_web_contents.cc
patch: @@ -798,6 +798,7 @@ void InspectableWebContents::SetEyeDropperActive(bool active) {
   if (delegate_)
     delegate_->DevToolsSetEyeDropperActive(active);
 }
+
 void InspectableWebContents::ShowCertificateViewer(
     const std::string& cert_chain) {}
 
@@ -995,6 +996,13 @@ void InspectableWebContents::CloseContents(content::WebContents* source) {
   CloseDevTools();
 }
 
+std::unique_ptr<content::EyeDropper> InspectableWebContents::OpenEyeDropper(
+    content::RenderFrameHost* frame,
+    content::EyeDropperListener* listener) {
+  auto* delegate = web_contents_->GetDelegate();
+  return delegate ? delegate->OpenEyeDropper(frame, listener) : nullptr;
+}
+
 void InspectableWebContents::RunFileChooser(
     content::RenderFrameHost* render_frame_host,
     scoped_refptr<content::FileSelectListener> listener,

filename: shell/browser/ui/inspectable_web_contents.h
patch: @@ -206,6 +206,9 @@ class InspectableWebContents
   bool HandleKeyboardEvent(content::WebContents*,
                            const content::NativeWebKeyboardEvent&) override;
   void CloseContents(content::WebContents* source) override;
+  std::unique_ptr<content::EyeDropper> OpenEyeDropper(
+      content::RenderFrameHost* frame,
+      content::EyeDropperListener* listener) override;
   void RunFileChooser(content::RenderFrameHost* render_frame_host,
                       scoped_refptr<content::FileSelectListener> listener,
                       const blink::mojom::FileChooserParams& params) override;
Repository: vercel/next.js
Pull request: fix(CI): Wait for lock when running apt-get

Sometimes this step can fail because something else has the lock (I'm not sure what, as I thought these things run in isolated containers), but we can mitigate this by waiting for the lock up to 60 seconds.

![Screenshot 2025-05-08 at 9.33.10 PM.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/HAZVitxRNnZz8QMiPn4a/f12de549-6cf0-48f0-959f-cf7595994e15.png)

We also call `apt` instead of `apt-get` in some of our CI scripts, but use of `apt` in scripts is discouraged as the CLI interface is unstable. `apt` does automatically wait for the lock, so those places don't have this problem.

More details here: https://blog.sinjakli.co.uk/2021/10/25/waiting-for-apt-locks-without-the-hacky-bash-scripts/

Closes PACK-4558

Changed files:
filename: .github/actions/setup-rust/action.yml
patch: @@ -19,7 +19,9 @@ runs:
     - name: 'Install LLD (LLVM Linker) for Linux'
       if: runner.os == 'Linux'
       shell: bash
-      run: sudo apt-get -y update && sudo apt-get install -y lld
+      run: |
+        sudo apt-get -y -o DPkg::Lock::Timeout=60 update
+        sudo apt-get -o DPkg::Lock::Timeout=60 -y install lld
 
     - name: 'Add cargo problem matchers'
       shell: bash
Repository: facebook/react
Pull request: [DevTools] mock requestAnimationFrame with setTimeout as a temporary fix for #24626

## Summary

A temporary fix for #24626. 

<!--
 Explain the **motivation** for making this change. What existing problem does the pull request solve?
-->

## How did you test this change?

I created a chrome extension locally and loaded it in Chrome v104. The original issue is gone


https://user-images.githubusercontent.com/1001890/170839899-d36aafeb-61a7-4315-9cac-53e85afef271.mov




<!--
  Demonstrate the code is solid. Example: The exact commands you ran and their output, screenshots / videos if the pull request changes the user interface.
  How exactly did you verify that your PR solves the issue you wanted to solve?
  If you leave this empty, your PR will very likely be closed.
-->


Changed files:
filename: packages/react-devtools-extensions/src/main.js
patch: @@ -30,6 +30,23 @@ const LOCAL_STORAGE_SUPPORTS_PROFILING_KEY =
 const isChrome = getBrowserName() === 'Chrome';
 const isEdge = getBrowserName() === 'Edge';
 
+// since Chromium v102, requestAnimationFrame no longer fires in devtools_page (i.e. this file)
+// mock requestAnimationFrame with setTimeout as a temporary workaround
+// https://github.com/facebook/react/issues/24626
+// The polyfill is based on https://gist.github.com/jalbam/5fe05443270fa6d8136238ec72accbc0
+if (isChrome || isEdge) {
+  const FRAME_TIME = 16;
+  let lastTime = 0;
+  window.requestAnimationFrame = function(callback, element) {
+    const now = window.performance.now();
+    const nextTime = Math.max(lastTime + FRAME_TIME, now);
+    return setTimeout(function() {
+      callback((lastTime = nextTime));
+    }, nextTime - now);
+  };
+  window.cancelAnimationFrame = clearTimeout;
+}
+
 let panelCreated = false;
 
 // The renderer interface can't read saved component filters directly,
Repository: facebook/react
Pull request: Explicitly set `highWaterMark` to 0 for `ReadableStream`

## Summary

This is because not all streaming implementations (e.g. Cloudflare) respect the default behavior of settings `highWaterMark` to 0 for byte streams: https://github.com/facebook/react/commit/75662d6a7d135df9d10055f49c3a4ca09fe4efcc 

Related Hydrogen bug: https://github.com/Shopify/hydrogen/issues/1383

Being explicit guarantees the intended behavior across runtimes. I've contacted Cloudflare, and they are working on fixing this in their implementation in the meantime.

## How did you test this change?

- Added the `highWaterMark` manually in the compiled source code
- Deployed to e.g. Cloudflare and observed the intended results


Changed files:
filename: packages/react-dom/src/server/ReactDOMFizzServerBrowser.js
patch: @@ -53,15 +53,19 @@ function renderToReadableStream(
     });
 
     function onShellReady() {
-      const stream: ReactDOMServerReadableStream = (new ReadableStream({
-        type: 'bytes',
-        pull(controller) {
-          startFlowing(request, controller);
+      const stream: ReactDOMServerReadableStream = (new ReadableStream(
+        {
+          type: 'bytes',
+          pull(controller) {
+            startFlowing(request, controller);
+          },
+          cancel(reason) {
+            abort(request);
+          },
         },
-        cancel(reason) {
-          abort(request);
-        },
-      }): any);
+        // $FlowFixMe size() methods are not allowed on byte streams.
+        {highWaterMark: 0},
+      ): any);
       // TODO: Move to sub-classing ReadableStream.
       stream.allReady = allReady;
       resolve(stream);

filename: packages/react-server-dom-webpack/src/ReactFlightDOMServerBrowser.js
patch: @@ -33,16 +33,20 @@ function renderToReadableStream(
     options ? options.onError : undefined,
     context,
   );
-  const stream = new ReadableStream({
-    type: 'bytes',
-    start(controller) {
-      startWork(request);
+  const stream = new ReadableStream(
+    {
+      type: 'bytes',
+      start(controller) {
+        startWork(request);
+      },
+      pull(controller) {
+        startFlowing(request, controller);
+      },
+      cancel(reason) {},
     },
-    pull(controller) {
-      startFlowing(request, controller);
-    },
-    cancel(reason) {},
-  });
+    // $FlowFixMe size() methods are not allowed on byte streams.
+    {highWaterMark: 0},
+  );
   return stream;
 }
Repository: ggml-org/llama.cpp
Pull request: cuda : avoid cuGetErrorString when not needed

ref #13788

Not sure if this is correct, but without this patch I cannot build the project with `VMM = OFF` in `Debug` mode:

```bash
cmake -B build-cuda-no-vmm -DGGML_CUDA=ON -DGGML_CUDA_NO_VMM=ON -DCMAKE_BUILD_TYPE=Debug
cmake --build build-cuda-no-vmm -j
```

Output:
```
...

/usr/bin/ld: ../../bin/libggml-cuda.so: undefined reference to `cuGetErrorString'
collect2: error: ld returned 1 exit status
gmake[2]: *** [examples/gguf/CMakeFiles/llama-gguf.dir/build.make:101: bin/llama-gguf] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:2968: examples/gguf/CMakeFiles/llama-gguf.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....
/usr/bin/ld: ../../bin/libggml-cuda.so: undefined reference to `cuGetErrorString'
collect2: error: ld returned 1 exit status
gmake[2]: *** [examples/gguf-hash/CMakeFiles/llama-gguf-hash.dir/build.make:107: bin/llama-gguf-hash] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:2861: examples/gguf-hash/CMakeFiles/llama-gguf-hash.dir/all] Error 2
[ 48%] Linking CXX static library libmtmd_audio.a
[ 48%] Built target mtmd_audio
[ 48%] Linking CXX shared library ../bin/libllama.so
[ 48%] Built target llama
gmake: *** [Makefile:146: all] Error 2
```

Note that it builds without this patch in `Release`.

Changed files:
filename: ggml/src/ggml-cuda/common.cuh
patch: @@ -168,7 +168,7 @@ void ggml_cuda_error(const char * stmt, const char * func, const char * file, in
 
 #define CUBLAS_CHECK(err) CUDA_CHECK_GEN(err, CUBLAS_STATUS_SUCCESS, cublas_get_error_str)
 
-#if !defined(GGML_USE_HIP)
+#if !defined(GGML_USE_HIP) && !defined(GGML_CUDA_NO_VMM)
 static const char * cu_get_error_str(CUresult err) {
     const char * err_str;
     cuGetErrorString(err, &err_str);
Repository: electron/electron
Pull request: fix: EyeDropper working in devtools

#### Description of Change

Closes https://github.com/electron/electron/issues/36203.

Fixes an issue where clicking the eyedropper icon did nothing instead of opening an eyedropper for color selection as expected. To fix this, we needed to implement `OpenEyeDropper` in `InspectableWebContents`

<details><summary>After Fix</summary>
<p>

![picker_working](https://github.com/user-attachments/assets/d8835c3b-be42-4e9d-a872-6353d2697691)

</p>
</details> 

#### Checklist
<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->

- [x] PR description included and stakeholders cc'd
- [x] `npm test` passes
- [x] [PR release notes](https://github.com/electron/clerk/blob/main/README.md) describe the change in a way relevant to app developers, and are [capitalized, punctuated, and past tense](https://github.com/electron/clerk/blob/main/README.md#examples).

#### Release Notes

Notes: Fixed an issue where clicking the eyedropper icon did nothing instead of opening an eyedropper for color selection as expected. 


Changed files:
filename: shell/browser/ui/inspectable_web_contents.cc
patch: @@ -784,6 +784,7 @@ void InspectableWebContents::SetEyeDropperActive(bool active) {
   if (delegate_)
     delegate_->DevToolsSetEyeDropperActive(active);
 }
+
 void InspectableWebContents::ZoomIn() {
   double new_level = GetNextZoomLevel(GetDevToolsZoomLevel(), false);
   SetZoomLevelForWebContents(GetDevToolsWebContents(), new_level);
@@ -965,6 +966,13 @@ void InspectableWebContents::CloseContents(content::WebContents* source) {
   CloseDevTools();
 }
 
+std::unique_ptr<content::EyeDropper> InspectableWebContents::OpenEyeDropper(
+    content::RenderFrameHost* frame,
+    content::EyeDropperListener* listener) {
+  auto* delegate = web_contents_->GetDelegate();
+  return delegate ? delegate->OpenEyeDropper(frame, listener) : nullptr;
+}
+
 void InspectableWebContents::RunFileChooser(
     content::RenderFrameHost* render_frame_host,
     scoped_refptr<content::FileSelectListener> listener,

filename: shell/browser/ui/inspectable_web_contents.h
patch: @@ -208,6 +208,9 @@ class InspectableWebContents
   bool HandleKeyboardEvent(content::WebContents*,
                            const input::NativeWebKeyboardEvent&) override;
   void CloseContents(content::WebContents* source) override;
+  std::unique_ptr<content::EyeDropper> OpenEyeDropper(
+      content::RenderFrameHost* frame,
+      content::EyeDropperListener* listener) override;
   void RunFileChooser(content::RenderFrameHost* render_frame_host,
                       scoped_refptr<content::FileSelectListener> listener,
                       const blink::mojom::FileChooserParams& params) override;
Repository: denoland/deno
Pull request: fix: linux canonicalization checks

<!--
Before submitting a PR, please read https://docs.deno.com/runtime/manual/references/contributing

1. Give the PR a descriptive title.

  Examples of good title:
    - fix(std/http): Fix race condition in server
    - docs(console): Update docstrings
    - feat(doc): Handle nested reexports

  Examples of bad title:
    - fix #7123
    - update docs
    - fix bugs

2. Ensure there is a related issue and it is referenced in the PR text.
3. Ensure there are tests that cover the changes.
4. Ensure `cargo test` passes.
5. Ensure `./tools/format.js` passes without changing files.
6. Ensure `./tools/lint.js` passes.
7. Open as a draft PR if your work is still in progress. The CI won't run
   all steps, but you can add '[ci]' to a commit message to force it to.
8. If you would like to run the benchmarks on the CI, add the 'ci-bench' label.
-->


Changed files:
filename: ext/fs/std_fs.rs
patch: @@ -1069,8 +1069,10 @@ fn open_with_access_check(
     };
     (*access_check)(false, &path, &options)?;
     // On Linux, /proc may contain magic links that we don't want to resolve
-    let needs_canonicalization = !is_windows_device_path
-      && (!cfg!(target_os = "linux") || path.starts_with("/proc"));
+    let is_linux_special_path = cfg!(target_os = "linux")
+      && (path.starts_with("/proc") || path.starts_with("/dev"));
+    let needs_canonicalization =
+      !is_windows_device_path && !is_linux_special_path;
     let path = if needs_canonicalization {
       match path.canonicalize() {
         Ok(path) => path,
Repository: nodejs/node
Pull request: src: use env strings to create sqlite results


Changed files:
filename: src/env_properties.h
patch: @@ -90,6 +90,7 @@
   V(cached_data_string, "cachedData")                                          \
   V(cache_key_string, "cacheKey")                                              \
   V(change_string, "change")                                                   \
+  V(changes_string, "changes")                                                 \
   V(channel_string, "channel")                                                 \
   V(chunks_sent_since_last_write_string, "chunksSentSinceLastWrite")           \
   V(clone_unsupported_type_str, "Cannot clone object of unsupported type.")    \
@@ -215,6 +216,7 @@
   V(jwk_y_string, "y")                                                         \
   V(kill_signal_string, "killSignal")                                          \
   V(kind_string, "kind")                                                       \
+  V(last_insert_rowid_string, "lastInsertRowid")                               \
   V(length_string, "length")                                                   \
   V(library_string, "library")                                                 \
   V(line_number_string, "lineNumber")                                          \

filename: src/node_sqlite.cc
patch: @@ -694,10 +694,6 @@ void StatementSync::Run(const FunctionCallbackInfo<Value>& args) {
   }
 
   Local<Object> result = Object::New(env->isolate());
-  Local<String> last_insert_rowid_string =
-      FIXED_ONE_BYTE_STRING(env->isolate(), "lastInsertRowid");
-  Local<String> changes_string =
-      FIXED_ONE_BYTE_STRING(env->isolate(), "changes");
   sqlite3_int64 last_insert_rowid =
       sqlite3_last_insert_rowid(stmt->db_->Connection());
   sqlite3_int64 changes = sqlite3_changes64(stmt->db_->Connection());
@@ -713,9 +709,12 @@ void StatementSync::Run(const FunctionCallbackInfo<Value>& args) {
   }
 
   if (result
-          ->Set(env->context(), last_insert_rowid_string, last_insert_rowid_val)
+          ->Set(env->context(),
+                env->last_insert_rowid_string(),
+                last_insert_rowid_val)
           .IsNothing() ||
-      result->Set(env->context(), changes_string, changes_val).IsNothing()) {
+      result->Set(env->context(), env->changes_string(), changes_val)
+          .IsNothing()) {
     return;
   }
Repository: facebook/react
Pull request: [DevTools] Modify DevTools e2e test script for regression tests

Modified the `run_devtools_e2e_tests` script so that you can pass in a React version. If you pass in a version, it will build the DevTools shell and run the e2e tests with that version.

Changed files:
filename: scripts/circleci/run_devtools_e2e_tests.js
patch: @@ -6,7 +6,7 @@ const {spawn} = require('child_process');
 const {join} = require('path');
 
 const ROOT_PATH = join(__dirname, '..', '..');
-
+const reactVersion = process.argv[2];
 const inlinePackagePath = join(ROOT_PATH, 'packages', 'react-devtools-inline');
 const shellPackagePath = join(ROOT_PATH, 'packages', 'react-devtools-shell');
 
@@ -74,7 +74,15 @@ function runTestShell() {
 
   logBright('Starting testing shell server');
 
-  serverProcess = spawn('yarn', ['start'], {cwd: shellPackagePath});
+  if (!reactVersion) {
+    serverProcess = spawn('yarn', ['start'], {cwd: shellPackagePath});
+  } else {
+    serverProcess = spawn('yarn', ['start'], {
+      cwd: shellPackagePath,
+      env: {...process.env, REACT_VERSION: reactVersion},
+    });
+  }
+
   serverProcess.stdout.on('data', data => {
     if (`${data}`.includes('Compiled successfully.')) {
       logBright('Testing shell server running');
@@ -106,8 +114,15 @@ function runTestShell() {
 
 async function runEndToEndTests() {
   logBright('Running e2e tests');
+  if (!reactVersion) {
+    testProcess = spawn('yarn', ['test:e2e'], {cwd: inlinePackagePath});
+  } else {
+    testProcess = spawn('yarn', ['test:e2e'], {
+      cwd: inlinePackagePath,
+      env: {...process.env, REACT_VERSION: reactVersion},
+    });
+  }
 
-  testProcess = spawn('yarn', ['test:e2e'], {cwd: inlinePackagePath});
   testProcess.stdout.on('data', data => {
     // Log without formatting because Playwright applies its own formatting.
     const formatted = format(data);