helloadhavan/github_issues huggingface dataset:
Repository: electron/electron
Pull request: fix: crash when renderer process crashes while webview is reloading

Backport of #46735

See that PR for details.


Notes: Fix crash when renderer process crashes while webview is reloading


Changed files:
filename: shell/browser/api/electron_api_web_contents.cc
patch: @@ -4101,6 +4101,14 @@ void WebContents::ExitPictureInPicture() {
   PictureInPictureWindowManager::GetInstance()->ExitPictureInPicture();
 }
 
+bool WebContents::ShouldFocusPageAfterCrash(content::WebContents* source) {
+  // WebView uses WebContentsViewChildFrame, which doesn't have a Focus impl
+  // and triggers a fatal NOTREACHED.
+  if (is_guest())
+    return false;
+  return true;
+}
+
 void WebContents::DevToolsSaveToFile(const std::string& url,
                                      const std::string& content,
                                      bool save_as,

filename: shell/browser/api/electron_api_web_contents.h
patch: @@ -755,6 +755,7 @@ class WebContents final : public ExclusiveAccessContext,
   content::PictureInPictureResult EnterPictureInPicture(
       content::WebContents* web_contents) override;
   void ExitPictureInPicture() override;
+  bool ShouldFocusPageAfterCrash(content::WebContents* source) override;
 
   // InspectableWebContentsDelegate:
   void DevToolsSaveToFile(const std::string& url,

filename: spec/webview-spec.ts
patch: @@ -1895,6 +1895,28 @@ describe('<webview> tag', function () {
 
         expect(channel).to.equal('onbeforeunload');
       });
+
+      it('does not crash when renderer process crashes', async function () {
+        // It takes more time to wait for the rendering process to crash
+        this.timeout(120000);
+        await loadWebView(w, {
+          nodeintegration: 'on',
+          webpreferences: 'contextIsolation=no',
+          src: blankPageUrl
+        });
+        // Create a crash in the rendering process of a webview
+        await w.executeJavaScript(`new Promise((resolve, reject) => {
+          webview.addEventListener('render-process-gone', (e) => resolve({...e}), {once: true})
+          webview.executeJavaScript('process.crash()', true)
+        })`);
+        // Reload the webview and the main process will not crash.
+        await w.executeJavaScript(`new Promise((resolve, reject) => {
+          webview.reload()
+          webview.addEventListener('did-finish-load', () => {
+            resolve()
+          })
+        })`);
+      });
     });
 
     describe('<webview>.goForward()', () => {
Repository: facebook/react
Pull request: Bump React 19 beta to RC

This updates the Canary label from "beta" to "rc".

We will publish an actual RC (e.g. 19.0.0-rc.0) too; this only changes the label in the canary releases.

Changed files:
filename: .circleci/config.yml
patch: @@ -646,7 +646,7 @@ workflows:
           # because this used to be called the "next" channel and some
           # downstream consumers might still expect that tag. We can remove this
           # after some time has elapsed and the change has been communicated.
-          dist_tag: "canary,next,beta"
+          dist_tag: "canary,next,rc"
       - publish_prerelease:
           name: Publish to Experimental channel
           requires:
@@ -675,7 +675,7 @@ workflows:
           name: Publish to Canary channel
           commit_sha: << pipeline.git.revision >>
           release_channel: stable
-          dist_tag: "canary,next,beta"
+          dist_tag: "canary,next,rc"
       - publish_prerelease:
           name: Publish to Experimental channel
           requires:

filename: ReactVersions.js
patch: @@ -26,7 +26,7 @@ const ReactVersion = '19.0.0';
 //
 // It only affects the label used in the version string. To customize the
 // npm dist tags used during publish, refer to .circleci/config.yml.
-const canaryChannelLabel = 'beta';
+const canaryChannelLabel = 'rc';
 
 const stablePackages = {
   'eslint-plugin-react-hooks': '5.1.0',
Repository: huggingface/transformers
Pull request: Fix warning for output_attentions=True

# What does this PR do?

With the `@check_model_inputs` decorator, we no longer check and fallback to the `eager` attention in the Attention module's code, let's notify users to set proper attention implementation. Otherwise, we are silently getting `None` attentions even if we specify `output_attentions=True` (because the default attention is `sdpa`)


Changed files:
filename: src/transformers/utils/generic.py
patch: @@ -1010,6 +1010,21 @@ def wrapper(self, *args, **kwargs):
         collected_outputs = defaultdict(tuple)
         monkey_patched_layers = []
 
+        # Check attention implementation is properly set for capturing attention outputs
+        if recordable_keys.get("output_attentions", False):
+            supported_attn = ["eager", "eager_paged", "flex_attention"]
+            config_attn = getattr(self.config, "_attn_implementation", None)
+            sub_configs = [getattr(self.config, key, None) for key in self.config.sub_configs]
+            sub_configs_attn = [
+                getattr(config, "_attn_implementation", None) for config in sub_configs if config is not None
+            ]
+            if config_attn not in supported_attn or any(attn not in supported_attn for attn in sub_configs_attn):
+                warnings.warn(
+                    f"`output_attentions=True` is not supported with `attn_implementation` other than {supported_attn}. "
+                    "Please use `model.set_attn_implementation('eager')` to enable capturing attention outputs.",
+                    UserWarning,
+                )
+
         def make_capture_wrapper(module, orig_forward, key, index):
             @wraps(orig_forward)
             def wrapped_forward(*args, **kwargs):
Repository: nodejs/node
Pull request: meta: add marco-ippolito to security release stewards

I'd like to join the security release stewards

Fixes: https://github.com/nodejs/TSC/issues/1764

Changed files:
filename: README.md
patch: @@ -880,6 +880,9 @@ releases on a rotation basis as outlined in the
 * [Datadog](https://www.datadoghq.com/)
   * [bengl](https://github.com/bengl) -
     **Bryan English** <<bryan@bryanenglish.com>> (he/him)
+* [HeroDevs](https://www.herodevs.com/)
+  * [marco-ippolito](https://github.com/marco-ippolito) -
+    **Marco Ippolito** <<marcoippolito54@gmail.com>> (he/him)
 * [NodeSource](https://nodesource.com/)
   * [juanarbol](https://github.com/juanarbol) -
     **Juan José Arboleda** <<soyjuanarbol@gmail.com>> (he/him)
Repository: ggml-org/llama.cpp
Pull request: [SYCL]fix ci crash about SSM_CONV

Miss "break" lead to UT of SSM_CONV case fault.

Changed files:
filename: ggml/src/ggml-sycl/ggml-sycl.cpp
patch: @@ -3933,6 +3933,7 @@ static bool ggml_sycl_compute_forward(ggml_backend_sycl_context & ctx, struct gg
             break;
         case GGML_OP_SSM_CONV:
             ggml_sycl_ssm_conv(ctx, dst);
+            break;
         case GGML_OP_ROLL:
             ggml_sycl_roll(ctx, dst);
             break;
Repository: denoland/deno
Pull request: fix(tunnel): misc fixes

fix some misc issues in tunnels

Changed files:
filename: cli/main.rs
patch: @@ -715,19 +715,12 @@ async fn resolve_flags_and_init(
     .map(|files| files.iter().map(PathBuf::from).collect());
   load_env_variables_from_env_files(env_file_paths.as_ref(), flags.log_level);
 
-  if deno_lib::args::has_flag_env_var("DENO_CONNECTED")
-    && matches!(
-      flags.subcommand,
-      DenoSubcommand::Run { .. }
-        | DenoSubcommand::Serve { .. }
-        | DenoSubcommand::Task { .. }
-    )
-  {
+  if deno_lib::args::has_flag_env_var("DENO_CONNECTED") {
     flags.tunnel = true;
   }
 
   // Tunnel sets up env vars and OTEL, so connect before everything else.
-  if flags.tunnel {
+  if flags.tunnel && !matches!(flags.subcommand, DenoSubcommand::Deploy) {
     if let Err(err) = initialize_tunnel(&flags).await {
       exit_for_error(
         err.context("Failed to start with tunnel"),
@@ -1102,7 +1095,9 @@ async fn initialize_tunnel(
           format!("https://{}:{}", addr.hostname(), addr.port())
         };
 
-        log::info!(
+        // We explicitly use eprintln instead of log here since
+        // there is a circular dep between tunnel and telemetry
+        eprintln!(
           "{}",
           colors::green(format!("You are connected to {endpoint}"))
         );
@@ -1113,7 +1108,9 @@ async fn initialize_tunnel(
         } else {
           "".into()
         };
-        log::info!(
+        // We explicitly use eprintln instead of log here since
+        // there is a circular dep between tunnel and telemetry
+        eprintln!(
           "{}",
           colors::green(format!(
             "Reconnecting tunnel in {}s...{}",
Repository: ollama/ollama
Pull request: fix: trim space in modelfile fields

only trim whitespace for FROM, ADAPTER, and PARAMETER since whitespace in LICENSE, TEMPLATE, SYSTEM might be significant

resolves #1390


Changed files:
filename: parser/parser.go
patch: @@ -37,10 +37,13 @@ func Parse(reader io.Reader) ([]Command, error) {
 		switch string(bytes.ToUpper(fields[0])) {
 		case "FROM":
 			command.Name = "model"
-			command.Args = string(fields[1])
+			command.Args = string(bytes.TrimSpace(fields[1]))
 			// copy command for validation
 			modelCommand = command
-		case "LICENSE", "TEMPLATE", "SYSTEM", "PROMPT", "ADAPTER":
+		case "ADAPTER":
+			command.Name = string(bytes.ToLower(fields[0]))
+			command.Args = string(bytes.TrimSpace(fields[1]))
+		case "LICENSE", "TEMPLATE", "SYSTEM", "PROMPT":
 			command.Name = string(bytes.ToLower(fields[0]))
 			command.Args = string(fields[1])
 		case "PARAMETER":
@@ -50,7 +53,7 @@ func Parse(reader io.Reader) ([]Command, error) {
 			}
 
 			command.Name = string(fields[0])
-			command.Args = string(fields[1])
+			command.Args = string(bytes.TrimSpace(fields[1]))
 		case "EMBED":
 			return nil, fmt.Errorf("deprecated command: EMBED is no longer supported, use the /embed API endpoint instead")
 		default:
Repository: electron/electron
Pull request: fix: crash on reconversion with google IME and editcontext on macOS

#### Description of Change

Backports https://chromium-review.googlesource.com/c/chromium/src/+/6470915
Refs https://github.com/microsoft/vscode/issues/230303

#### Release Notes

Notes: fix crash on reconversion with google IME and editcontext on macOS

Changed files:
filename: patches/chromium/.patches
patch: @@ -145,3 +145,4 @@ fix_win32_synchronous_spellcheck.patch
 fix_enable_wrap_iter_in_string_view_and_array.patch
 fix_linter_error.patch
 revert_enable_crel_for_arm32_targets.patch
+mac_fix_check_on_ime_reconversion_due_to_invalid_replacement_range.patch

filename: patches/chromium/mac_fix_check_on_ime_reconversion_due_to_invalid_replacement_range.patch
patch: @@ -0,0 +1,43 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Keren Zhu <kerenzhu@chromium.org>
+Date: Fri, 18 Apr 2025 11:02:46 -0700
+Subject: mac: fix CHECK on IME reconversion due to invalid replacement range
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+It appears that Google Japanese IME can call -setMarkedText: with an
+invalid replacement range when doing text reconversion (変換, i.e.,
+conversion between different text with same pronunciation). This range
+is a NSRange and NSRange.location is supposed to be NSNotFound (2^31-1)
+for invalid range, but the IME can pass in 2^32. Subsequently causing
+CHECK error.
+
+This CL fixes the issue by converting such invalid NSRange to
+gfx::InvalidRange using FromPossiblyInvalidNSRange(range).
+
+Fixed: 409864204
+Change-Id: I08ff426a933ef76aa81e33af59aa32e2ac0b674d
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6470915
+Commit-Queue: Keren Zhu <kerenzhu@chromium.org>
+Reviewed-by: Marijn Kruisselbrink <mek@chromium.org>
+Cr-Commit-Position: refs/heads/main@{#1448935}
+
+diff --git a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
+index f2499bc084312a09b2324567d270fc1b899e7617..12ee7e75e437426f28002c7c9f4d5f5b5016ec53 100644
+--- a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
++++ b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
+@@ -2415,9 +2415,10 @@ - (void)setMarkedText:(id)string
+   if ([self isHandlingKeyDown] && !_isReconversionTriggered) {
+     _setMarkedTextReplacementRange = gfx::Range(replacementRange);
+   } else {
+-    _host->ImeSetComposition(_markedText, _imeTextSpans,
+-                             gfx::Range(replacementRange), newSelRange.location,
+-                             NSMaxRange(newSelRange));
++    _host->ImeSetComposition(
++        _markedText, _imeTextSpans,
++        gfx::Range::FromPossiblyInvalidNSRange(replacementRange),
++        newSelRange.location, NSMaxRange(newSelRange));
+   }
+ 
+   [[self inputContext] invalidateCharacterCoordinates];
Repository: facebook/react
Pull request: Remove 2 no longer existing files from inlinedHostConfig

Remove 2 no longer existing files from inlinedHostConfig

While looking for `.classic` forks, I noticed these files no longer exist.


Changed files:
filename: scripts/shared/inlinedHostConfigs.js
patch: @@ -404,8 +404,6 @@ module.exports = [
       'react-dom/src/server/ReactDOMLegacyServerImpl.js', // not an entrypoint, but only usable in *Browser and *Node files
       'react-dom/src/server/ReactDOMLegacyServerBrowser.js', // react-dom/server.browser
       'react-dom/src/server/ReactDOMLegacyServerNode.js', // react-dom/server.node
-      'react-dom/src/server/ReactDOMLegacyServerNode.classic.fb.js',
-      'react-dom/src/server/ReactDOMLegacyServerNodeStream.js', // file indirection to support partial forking of some methods in *Node
       'shared/ReactDOMSharedInternals',
     ],
     isFlowTyped: true,
Repository: huggingface/transformers
Pull request: Mark `Aimv2ModelTest::test_eager_matches_sdpa_inference_04_fp16_pad_right_sdpa_kernels` as flaky

# What does this PR do?

Without this, we get 0.026% of failure rate.

Changed files:
filename: tests/models/aimv2/test_modeling_aimv2.py
patch: @@ -24,6 +24,7 @@
 
 from transformers import Aimv2Config, Aimv2TextConfig, Aimv2VisionConfig
 from transformers.testing_utils import (
+    is_flaky,
     require_torch,
     require_vision,
     slow,
@@ -469,6 +470,10 @@ def test_load_vision_text_config(self):
             self.assertDictEqual(config.text_config.to_dict(), text_config.to_dict())
 
     @parameterized.expand(TEST_EAGER_MATCHES_SDPA_INFERENCE_PARAMETERIZATION)
+    @is_flaky(
+        max_attempts=2,
+        description="sdpa gets nan values in some places while eager is fine. Except those places, the values are close",
+    )
     def test_eager_matches_sdpa_inference(
         self,
         name,
Repository: vercel/next.js
Pull request: [test] Lint `*.test.tsx` as test files

Vade noticed something Lint should've caught: https://github.com/vercel/next.js/pull/83372/files#r2318266199

Changed files:
filename: .eslintrc.json
patch: @@ -38,7 +38,13 @@
   },
   "overrides": [
     {
-      "files": ["test/**/*.js", "test/**/*.ts", "**/*.test.ts"],
+      "files": [
+        "test/**/*.js",
+        "test/**/*.ts",
+        "test/**/*.tsx",
+        "**/*.test.ts",
+        "**/*.test.tsx"
+      ],
       "excludedFiles": ["test/tmp/**"],
       "extends": ["plugin:jest/recommended"],
       "rules": {

filename: test/unit/next-dynamic.test.tsx
patch: @@ -1,7 +1,6 @@
 /**
  * @jest-environment jsdom
  */
-import React from 'react'
 import { act, render } from '@testing-library/react'
 import '@testing-library/jest-dom'
 import dynamic from 'next/dynamic'
Repository: electron/electron
Pull request: fix: crash on reconversion with google IME and editcontext on macOS

Backport of #46688

See that PR for details.


Notes: fix crash on reconversion with google IME and editcontext on macOS

Changed files:
filename: patches/chromium/.patches
patch: @@ -146,3 +146,4 @@ fix_drag_and_drop_icons_on_windows.patch
 chore_remove_conflicting_allow_unsafe_libc_calls.patch
 fix_take_snapped_status_into_account_when_showing_a_window.patch
 chore_modify_chromium_handling_of_mouse_events.patch
+mac_fix_check_on_ime_reconversion_due_to_invalid_replacement_range.patch

filename: patches/chromium/mac_fix_check_on_ime_reconversion_due_to_invalid_replacement_range.patch
patch: @@ -0,0 +1,43 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Keren Zhu <kerenzhu@chromium.org>
+Date: Fri, 18 Apr 2025 11:02:46 -0700
+Subject: mac: fix CHECK on IME reconversion due to invalid replacement range
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+It appears that Google Japanese IME can call -setMarkedText: with an
+invalid replacement range when doing text reconversion (変換, i.e.,
+conversion between different text with same pronunciation). This range
+is a NSRange and NSRange.location is supposed to be NSNotFound (2^31-1)
+for invalid range, but the IME can pass in 2^32. Subsequently causing
+CHECK error.
+
+This CL fixes the issue by converting such invalid NSRange to
+gfx::InvalidRange using FromPossiblyInvalidNSRange(range).
+
+Fixed: 409864204
+Change-Id: I08ff426a933ef76aa81e33af59aa32e2ac0b674d
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6470915
+Commit-Queue: Keren Zhu <kerenzhu@chromium.org>
+Reviewed-by: Marijn Kruisselbrink <mek@chromium.org>
+Cr-Commit-Position: refs/heads/main@{#1448935}
+
+diff --git a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
+index cb65efb56849d57e2e656f90d5b1d737ba2d952d..baad4cf7479646a25967892ef267bcea90c01ad0 100644
+--- a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
++++ b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
+@@ -2430,9 +2430,10 @@ - (void)setMarkedText:(id)string
+   if ([self isHandlingKeyDown] && !_isReconversionTriggered) {
+     _setMarkedTextReplacementRange = gfx::Range(replacementRange);
+   } else {
+-    _host->ImeSetComposition(_markedText, _imeTextSpans,
+-                             gfx::Range(replacementRange), newSelRange.location,
+-                             NSMaxRange(newSelRange));
++    _host->ImeSetComposition(
++        _markedText, _imeTextSpans,
++        gfx::Range::FromPossiblyInvalidNSRange(replacementRange),
++        newSelRange.location, NSMaxRange(newSelRange));
+   }
+ 
+   [[self inputContext] invalidateCharacterCoordinates];
Repository: facebook/react
Pull request: Enable `enableUnifiedSyncLane` for React Native (Meta)

## Summary

Enables the `enableUnifiedSyncLane` feature flag for React Native (Meta).

## How did you test this change?

```
$ yarn test
$ yarn flow fabric
```

Changed files:
filename: packages/shared/forks/ReactFeatureFlags.native-fb-dynamic.js
patch: @@ -26,5 +26,4 @@ export const enableDeferRootSchedulingToMicrotask = __VARIANT__;
 export const enableFastJSX = __VARIANT__;
 export const enableInfiniteRenderLoopDetection = __VARIANT__;
 export const enableRefAsProp = __VARIANT__;
-export const enableUnifiedSyncLane = __VARIANT__;
 export const passChildrenWhenCloningPersistedNodes = __VARIANT__;

filename: packages/shared/forks/ReactFeatureFlags.native-fb.js
patch: @@ -28,7 +28,6 @@ export const {
   enableFastJSX,
   enableInfiniteRenderLoopDetection,
   enableRefAsProp,
-  enableUnifiedSyncLane,
   passChildrenWhenCloningPersistedNodes,
 } = dynamicFlags;
 
@@ -42,6 +41,7 @@ export const enableProfilerTimer = __PROFILE__;
 export const enableProfilerCommitHooks = __PROFILE__;
 export const enableProfilerNestedUpdatePhase = __PROFILE__;
 export const enableUpdaterTracking = __PROFILE__;
+export const enableUnifiedSyncLane = true;
 export const enableCache = true;
 export const enableComponentStackLocations = true;
 export const enableLegacyCache = false;
Repository: ggml-org/llama.cpp
Pull request: CANN: GGML_CANN_ACL_GRAPH works only if USE_ACL_GRAPH was enabled

The documentation should state that `GGML_CANN_ACL_GRAPH` is only effective if `USE_ACL_GRAPH` was enabled at compilation time.


Changed files:
filename: docs/backend/CANN.md
patch: @@ -313,7 +313,12 @@ Converting the matmul weight format from ND to NZ to improve performance. Enable
 
 ### GGML_CANN_ACL_GRAPH
 
-Operators are executed using ACL graph execution, rather than in op-by-op (eager) mode. Enabled by default.
+Operators are executed using ACL graph execution, rather than in op-by-op (eager) mode. Enabled by default. This option is only effective if `USE_ACL_GRAPH` was enabled at compilation time. To enable it, recompile using:
+
+```sh
+cmake -B build -DGGML_CANN=on -DCMAKE_BUILD_TYPE=release -DUSE_ACL_GRAPH=ON
+cmake --build build --config release
+```
 
 ### GGML_CANN_GRAPH_CACHE_CAPACITY
Repository: facebook/react
Pull request: Upgrade jest and jsdom

## Summary

This brings:
 - jest* up from 29.4.2 -> 29.7.0
 - jsdom up from 20.0.0 -> 22.1.0

While the latest version of jest-dom-environment still wants `jsdom@^20.0.0`, it can safely use at least up to `jsdom@22.1.0`. See https://github.com/jestjs/jest/pull/13825#issuecomment-1564015010 for details.

Upgrading to latest versions lets us improve some WheelEvent tests and will make it possible to test a much simpler FormData construction approach (see #29018)

## How did you test this change?

Ran `yarn test` and `yarn test --prod` successfully

Changed files:
filename: package.json
patch: @@ -137,6 +137,7 @@
     "flags": "node ./scripts/flags/flags.js"
   },
   "resolutions": {
-    "react-is": "npm:react-is"
+    "react-is": "npm:react-is",
+    "jsdom": "22.1.0"
   }
 }

filename: packages/react-dom/src/__tests__/ReactDOMFizzServer-test.js
patch: @@ -4357,7 +4357,7 @@ describe('ReactDOMFizzServer', () => {
         pipe(writable);
       });
       expect(window.getComputedStyle(document.body).backgroundColor).toMatch(
-        'blue',
+        'rgb(0, 0, 255)',
       );
     });
 
@@ -4386,7 +4386,7 @@ describe('ReactDOMFizzServer', () => {
         pipe(writable);
       });
       expect(window.getComputedStyle(document.body).backgroundColor).toMatch(
-        'red',
+        'rgb(255, 0, 0)',
       );
     });
   });

filename: packages/react-dom/src/events/__tests__/SyntheticWheelEvent-test.js
patch: @@ -65,11 +65,8 @@ describe('SyntheticWheelEvent', () => {
       root.render(<div onWheel={onWheel} />);
     });
 
-    let event = new MouseEvent('wheel', {
+    let event = new WheelEvent('wheel', {
       bubbles: true,
-    });
-    // jsdom doesn't support these so we add them manually.
-    Object.assign(event, {
       deltaX: 10,
       deltaY: -50,
     });
@@ -78,7 +75,7 @@ describe('SyntheticWheelEvent', () => {
     event = new MouseEvent('wheel', {
       bubbles: true,
     });
-    // jsdom doesn't support these so we add them manually.
+    // jsdom doesn't support these legacy Webkit properties so we add them manually.
     Object.assign(event, {
       wheelDeltaX: -10,
       wheelDeltaY: 50,
@@ -106,15 +103,15 @@ describe('SyntheticWheelEvent', () => {
     });
 
     container.firstChild.dispatchEvent(
-      new MouseEvent('wheel', {
+      new WheelEvent('wheel', {
         bubbles: true,
         deltaX: 10,
         deltaY: -50,
       }),
     );
 
     container.firstChild.dispatchEvent(
-      new MouseEvent('wheel', {
+      new WheelEvent('wheel', {
         bubbles: true,
         deltaX: 10,
         deltaY: -50,