Skip to content

Comments

[browser][CoreCLR] smoke test libraries on V8 and Firefox#124641

Open
pavelsavara wants to merge 7 commits intodotnet:mainfrom
pavelsavara:v8_testing
Open

[browser][CoreCLR] smoke test libraries on V8 and Firefox#124641
pavelsavara wants to merge 7 commits intodotnet:mainfrom
pavelsavara:v8_testing

Conversation

@pavelsavara
Copy link
Member

  • smoke test V8 + FF
  • version check for shells

- version check for shell
@pavelsavara pavelsavara added this to the 11.0.0 milestone Feb 20, 2026
@pavelsavara pavelsavara self-assigned this Feb 20, 2026
Copilot AI review requested due to automatic review settings February 20, 2026 14:36
@pavelsavara pavelsavara added arch-wasm WebAssembly architecture area-Infrastructure-coreclr os-browser Browser variant of arch-wasm labels Feb 20, 2026
@dotnet-policy-service
Copy link
Contributor

Tagging subscribers to this area: @agocke, @dotnet/runtime-infrastructure
See info in area-owners.md if you want to be subscribed.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR expands the WebAssembly/CoreCLR smoke-test matrix to run library tests on Firefox and a V8 shell, and adds runtime version gating in the JS loader to fail fast on unsupported Node.js / shell versions.

Changes:

  • Add Node.js (>= 18) and V8 shell (>= 14) version checks to validateWasmFeatures() in the JS loader bootstrap.
  • Update the runtime pipeline to run CoreCLR wasm smoke/library tests on Firefox and V8 in addition to Chrome.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
src/native/libs/Common/JavaScript/loader/bootstrap.ts Adds engine/runtime version checks during wasm feature validation.
eng/pipelines/runtime.yml Enables additional wasm test scenarios (Firefox + V8) for CoreCLR library smoke tests.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings February 20, 2026 14:42
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.

Copilot AI review requested due to automatic review settings February 20, 2026 14:56
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

@pavelsavara
Copy link
Member Author

Log

[15:52:29] info: Warning: unknown flag --expose_wasm.
[15:52:29] info: Try --help for options
[15:52:29] info: Incoming arguments: --setenv=DOTNET_TEST_WEBSOCKETHOST=127.0.0.1:35879 --setenv=DOTNET_TEST_HTTPHOST=127.0.0.1:35879 --setenv=DOTNET_TEST_REMOTE_LOOP_HOST=127.0.0.1:35879 --setenv=DOTNET_TEST_SECUREWEBSOCKETHOST=127.0.0.1:33769 --setenv=DOTNET_TEST_SECUREHTTPHOST=127.0.0.1:33769 --setenv=DOTNET_TEST_HTTP2HOST=127.0.0.1:33769 --setenv=XHARNESS_LOG_TEST_START=true --run WasmTestRunner.dll System.Runtime.InteropServices.JavaScript.Tests.dll -parallelThreads 1 -notrait category=IgnoreForCI -notrait category=OuterLoop -notrait category=failing
[15:52:29] info: Application arguments: --run WasmTestRunner.dll System.Runtime.InteropServices.JavaScript.Tests.dll -parallelThreads 1 -notrait category=IgnoreForCI -notrait category=OuterLoop -notrait category=failing
[15:52:29] info: WASM EXIT 1
[15:52:29] info: Process v8 exited with 1

@pavelsavara
Copy link
Member Author

Firefox went just fine: Log

@pavelsavara pavelsavara requested a review from lewing as a code owner February 20, 2026 16:45
Copy link
Member

@radekdoulik radekdoulik left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you, LGTM

export function verifyEnvironment () {
mono_assert(ENVIRONMENT_IS_SHELL || typeof globalThis.URL === "function", "This browser/engine doesn't support URL API. Please use a modern version. See also https://aka.ms/dotnet-wasm-features");
mono_assert(typeof globalThis.BigInt64Array === "function", "This browser/engine doesn't support BigInt64Array API. Please use a modern version. See also https://aka.ms/dotnet-wasm-features");
mono_assert(ENVIRONMENT_IS_SHELL || typeof globalThis.URL === "function", "This browser/engine doesn't support URL API. Please use a modern version. See also https://learn.microsoft.com/en-us/aspnet/core/blazor/supported-platforms");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We typically omit en-us in the doc URLs so that the URL opens localized content based on user preferences.

const message = ENVIRONMENT_IS_NODE
? "Please install `node-fetch` and `node-abort-controller` npm packages to enable HTTP client support. See also https://aka.ms/dotnet-wasm-features"
: "This browser doesn't support fetch API. Please use a modern browser. See also https://aka.ms/dotnet-wasm-features";
? "Please install `node-fetch` and `node-abort-controller` npm packages to enable HTTP client support. See also https://learn.microsoft.com/en-us/aspnet/core/blazor/supported-platforms"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we have any official docs for node? I think the node links can point to internal runtime docs (maybe even have direct links without aka.ms indirection).

Copilot AI review requested due to automatic review settings February 20, 2026 17:18
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 12 out of 12 changed files in this pull request and generated no new comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

arch-wasm WebAssembly architecture area-Infrastructure-coreclr os-browser Browser variant of arch-wasm

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

4 participants