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

[wasm] Support mono runtime components #55680

Merged
merged 8 commits into from
Jul 15, 2021

Conversation

radekdoulik
Copy link
Member

@radekdoulik radekdoulik commented Jul 14, 2021

This should fix #55608

Context: #54565

@ghost
Copy link

ghost commented Jul 14, 2021

Tagging subscribers to 'arch-wasm': @lewing
See info in area-owners.md if you want to be subscribed.

Issue Details
Author: radekdoulik
Assignees: -
Labels:

arch-wasm, area-Codegen-AOT-mono

Milestone: -

@lewing lewing requested a review from thaystg July 14, 2021 21:13
@radekdoulik radekdoulik marked this pull request as ready for review July 14, 2021 21:33
Copy link
Member

@lewing lewing left a comment

Choose a reason for hiding this comment

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

LGTM, lets wait for @radical to have a chance to object but I'll land it tonight if the tests are green.

@radekdoulik
Copy link
Member Author

It should solve the release size regression. For Debug configurations we would need to change more of the build logic I think. So these lines https://github.com/dotnet/runtime/blob/main/src/mono/wasm/Makefile#L51-L55 are still needed for runtime build.

@lewing
Copy link
Member

lewing commented Jul 14, 2021

It should solve the release size regression. For Debug configurations we would need to change more of the build logic I think. So these lines https://github.com/dotnet/runtime/blob/main/src/mono/wasm/Makefile#L51-L55 are still needed for runtime build.

yeah that makes sense for the default build that ends up in the runtime pack

@thaystg
Copy link
Member

thaystg commented Jul 14, 2021

It should solve the release size regression. For Debug configurations we would need to change more of the build logic I think. So these lines https://github.com/dotnet/runtime/blob/main/src/mono/wasm/Makefile#L51-L55 are still needed for runtime build.

I'm sorry, I don't understand, what do you mean by "solve the release size regression", are you talking about a release webassembly app or a release runtime?

@lewing
Copy link
Member

lewing commented Jul 14, 2021

I'm sorry, I don't understand, what do you mean by "solve the release size regression"

#55608

This should link in the stub components (debugger and hot-reload) in a Release configuration build when the workload is installed

@radekdoulik
Copy link
Member Author

Yes, as Larry says. The webassembly app Release configuration. It can be also overriden by setting @(_MonoComponent) in the app project for now. Later we can add properly documented itemgroup or property.

@lewing
Copy link
Member

lewing commented Jul 14, 2021

@azure-pipelines
runtime (Libraries Build windows x64 Debug)

D:\workspace\_work\1\s\.dotnet\sdk\6.0.100-preview.4.21255.9\MSBuild.dll /nologo -maxcpucount /m -verbosity:m /v:minimal /bl:D:\workspace\_work\1\s\artifacts\log\Debug\ToolsetRestore.binlog /clp:Summary /clp:ErrorsOnly;NoSummary /nr:False /p:ContinuousIntegrationBuild=True /p:TreatWarningsAsErrors=true /p:__ToolsetLocationOutputFile=D:\workspace\_work\1\s\artifacts\toolset\6.0.0-beta.21359.3.txt /t:__WriteToolsetLocation /warnaserror D:\workspace\_work\1\s\artifacts\toolset\restore.proj
D:\workspace\_work\1\s\artifacts\toolset\restore.proj : error : Unable to load the service index for source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json.
Build failed with exit code 1. Check errors above.
See log: D:\workspace\_work\1\s\artifacts\log\Debug\ToolsetRestore.binlog

@radical
Copy link
Member

radical commented Jul 14, 2021

Needs a test in wasm.build.tests .

@lewing
Copy link
Member

lewing commented Jul 15, 2021

Looks like we need to fix the non-workload build for one.

@lewing
Copy link
Member

lewing commented Jul 15, 2021

The issue now looks like there is some code that expects the debugger to always exist @radical and @thaystg are looking into it

@thaystg
Copy link
Member

thaystg commented Jul 15, 2021

I think I will push a fix soon.

@lewing
Copy link
Member

lewing commented Jul 15, 2021

runtime-dev-innerloop (Build windows x86 release MSBuild_CMake) is

dotnet-install: To check the list of dependencies, go to https://docs.microsoft.com/dotnet/core/install/windows#dependencies
dotnet-install: Installation finished
D:\workspace\_work\1\s\.dotnet\sdk\6.0.100-preview.4.21255.9\MSBuild.dll /nologo -maxcpucount /m -verbosity:m /v:minimal /bl:D:\workspace\_work\1\s\artifacts\log\Release\ToolsetRestore.binlog /clp:Summary /clp:ErrorsOnly;NoSummary /nr:False /p:ContinuousIntegrationBuild=True /p:TreatWarningsAsErrors=true /p:__ToolsetLocationOutputFile=D:\workspace\_work\1\s\artifacts\toolset\6.0.0-beta.21359.3.txt /t:__WriteToolsetLocation /warnaserror D:\workspace\_work\1\s\artifacts\toolset\restore.proj
D:\workspace\_work\1\s\artifacts\toolset\restore.proj : error : Unable to load the service index for source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json.
D:\workspace\_work\1\s\artifacts\toolset\restore.proj : error : Unable to load the service index for source https://pkgs.dev.azure.com/dnceng/public/_packaging/nuget-build/nuget/v3/index.json.
D:\workspace\_work\1\s\artifacts\toolset\restore.proj : error : Unable to find package Microsoft.DotNet.Arcade.Sdk with version (= 6.0.0-beta.21359.3)
D:\workspace\_work\1\s\artifacts\toolset\restore.proj : error :   - Found 178 version(s) in dotnet-tools [ Nearest version: 5.0.0-beta.19558.13 ]
D:\workspace\_work\1\s\artifacts\toolset\restore.proj : error :   - Found 0 version(s) in richnav
D:\workspace\_work\1\s\artifacts\toolset\restore.proj : error :   - Found 0 version(s) in dotnet-eng
D:\workspace\_work\1\s\artifacts\toolset\restore.proj : error :   - Found 0 version(s) in dotnet-public
D:\workspace\_work\1\s\artifacts\toolset\restore.proj : error :   - Found 0 version(s) in dotnet6-transport
D:\workspace\_work\1\s\artifacts\toolset\restore.proj : error :   - Found 0 version(s) in dotnet6
D:\workspace\_work\1\s\artifacts\toolset\restore.proj : error :   - Found 0 version(s) in nuget-build
D:\workspace\_work\1\s\artifacts\toolset\restore.proj : error MSB4236: The SDK 'Microsoft.DotNet.Arcade.Sdk' specified could not be found.
Build failed with exit code 1. Check errors above.
See log: D:\workspace\_work\1\s\artifacts\log\Release\ToolsetRestore.binlog

@lewing
Copy link
Member

lewing commented Jul 15, 2021

runtime (CoreCLR Product Build windows x64 release PGO) failed from feed errors

@radical
Copy link
Member

radical commented Jul 15, 2021

In a follow up PR, a test could be added, eg. that converts src/tests/FunctionalTests/WebAssembly/Browser/HotReload/ to a wasm.build.tests test.

Fix helix work item prefix
@lewing
Copy link
Member

lewing commented Jul 15, 2021

runtime (CoreCLR Product Build Linux_musl arm release) is

Starting: Publish product build
==============================================================================
Task         : Publish build artifacts
Description  : Publish build artifacts to Azure Pipelines or a Windows file share
Version      : 1.186.0
Author       : Microsoft Corporation
Help         : https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/publish-build-artifacts
==============================================================================
Async Command Start: Upload Artifact
Async Command End: Upload Artifact
##[error]Network is unreachable
Finishing: Publish product build

microsoft/azure-pipelines-tasks#15049

@lewing
Copy link
Member

lewing commented Jul 15, 2021

This is a browser only change and the browser lanes are green.

@lewing lewing merged commit dfdec3b into dotnet:main Jul 15, 2021
@ghost ghost locked as resolved and limited conversation to collaborators Aug 14, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
arch-wasm WebAssembly architecture area-Codegen-AOT-mono
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Perf] [WASM] Regression in dotnet.wasm
4 participants