Skip to content

Remove Blazor WASM SDK from repo #29427

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

Merged
11 commits merged into from
Jan 20, 2021
Merged

Remove Blazor WASM SDK from repo #29427

11 commits merged into from
Jan 20, 2021

Conversation

captainsafia
Copy link
Member

@captainsafia captainsafia commented Jan 19, 2021

Part of #27455.

  • Bump SDK and runtime versions in global.json to required versions
  • Remove Blazor WASM SDK projects and references
  • Disable ErrorOnDuplicatePublishOutputFiles in helix builds to workaround issue with eager conflict resolution checks in new SDK
  • Update RunTests.proj target to net6.0 to support new runtime
  • Add platform compat checks to DataProtection following changes in new runtime
  • Update output check in TemplatePackageInstaller to check for stderr
  • Skip broke Publish_NoBuild_CopiesStaticWebAssetsToDestinationFolder test

@captainsafia captainsafia force-pushed the safia/remove-blazor-sdk branch 2 times, most recently from a16b387 to 7562cb2 Compare January 19, 2021 17:19
@captainsafia captainsafia force-pushed the safia/remove-blazor-sdk branch from bad39d3 to fbe1288 Compare January 19, 2021 23:15
@captainsafia captainsafia force-pushed the safia/remove-blazor-sdk branch from d396189 to 0f7c674 Compare January 20, 2021 01:17
@Pilchie Pilchie added the area-blazor Includes: Blazor, Razor Components label Jan 20, 2021
@captainsafia captainsafia changed the title Remove Blazor WASM Sdk in repo Remove Blazor WASM SDK from repo Jan 20, 2021
@captainsafia captainsafia marked this pull request as ready for review January 20, 2021 18:34
@captainsafia captainsafia requested a review from a team as a code owner January 20, 2021 18:34
@captainsafia captainsafia requested a review from wtgodbe January 20, 2021 20:08
Copy link
Member

@wtgodbe wtgodbe left a comment

Choose a reason for hiding this comment

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

Infra parts LGTM other than the nit

@ghost
Copy link

ghost commented Jan 20, 2021

Hello @captainsafia!

Because this pull request has the auto-merge label, I will be glad to assist with helping to merge this pull request once all check-in policies pass.

p.s. you can customize the way I help with merging this pull request, such as holding this pull request until a specific person approves. Simply @mention me (@msftbot) and give me an instruction to get started! Learn more here.

@ghost ghost merged commit bdec803 into master Jan 20, 2021
@ghost ghost deleted the safia/remove-blazor-sdk branch January 20, 2021 22:02
and ends up marking the same files in different projects as duplicates of each other. We disable this check here to work
around this issue. -->
<PropertyGroup>
<ErrorOnDuplicatePublishOutputFiles>false</ErrorOnDuplicatePublishOutputFiles>
Copy link
Contributor

Choose a reason for hiding this comment

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

Why is this now an issue❔ If anything, the build should run smoother without the Blazor WASM SDK.

Copy link
Member Author

Choose a reason for hiding this comment

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

We bumped the version of the SDK we are one and picked up a change to the conflict resolution targets mention here so this workaround is necessary since this is new code.

Copy link
Contributor

Choose a reason for hiding this comment

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

Is this necessary everywhere (as it is now) or just in a couple of projects❔ Having it here concerns me…

Copy link
Member Author

Choose a reason for hiding this comment

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

This only affects a couple of projects, particularly the test sites that we use which end up having a lot of common files (wwwroot/style.css for example) which trigger this buggy code path. I'm working on opening a bug in the SDK repo to see if there is an issue with this.

@@ -2,7 +2,7 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net5.0</TargetFramework>
<TargetFramework>net6.0</TargetFramework>
Copy link
Contributor

Choose a reason for hiding this comment

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

Why is this changing here❔ We've been intentionally using the older TFM since the net6.0 transition without any related problems.

Copy link
Member Author

Choose a reason for hiding this comment

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

I had to update the runtime when updating the SDK and was trying to fix the following issue:

Running tests: /datadisks/disk1/work/9804089C/w/B36509CF/e/.dotnet9476/dotnet run --no-restore --project RunTests/RunTests.csproj -- --target Diagnostics.FunctionalTests.dll --runtime 6.0.0-ci --queue Ubuntu.1604.Amd64.Open --arch x64 --quarantined false --ef 6.0.0-alpha.1.21069.1 --helixTimeout 00:30:00
It was not possible to find any compatible framework version
The framework 'Microsoft.NETCore.App', version '5.0.0' was not found.
  - The following frameworks were found:
      6.0.0-alpha.1.21061.20 at [/datadisks/disk1/work/9804089C/w/B36509CF/e/.dotnet9476/shared/Microsoft.NETCore.App]
      6.0.0-alpha.1.21070.2 at [/datadisks/disk1/work/9804089C/w/B36509CF/e/.dotnet9476/shared/Microsoft.NETCore.App]

Copy link
Contributor

Choose a reason for hiding this comment

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

That sounds like a side effect of the SDK no longer bundling the runtimes though it might be a bug in the specific version. @dsplaisted any suggestions❔

@@ -67,6 +70,8 @@ private static void AddDataProtectionServices(IServiceCollection services)
{
if (OSVersionUtil.IsWindows())
{
// Assertion for platform compat analyzer
Debug.Assert(RuntimeInformation.IsOSPlatform(OSPlatform.Windows));
Copy link
Contributor

Choose a reason for hiding this comment

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

What changed to make this necessary❔ Same for src/DataProtection/DataProtection/src/EphemeralDataProtectionProvider.cs

Copy link
Member Author

Choose a reason for hiding this comment

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

New runtime dependency introduced some platform compat changes.

Copy link
Contributor

Choose a reason for hiding this comment

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

What "new runtime dependency"❔ Tests should be using the runtimes we explicitly install and not the default version specified in the SDK.

Copy link
Member Author

Choose a reason for hiding this comment

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

My statement wasn't very clear. I updated the dotnet version we specify in global.json which brought in some API changes related to platform compat that I addressed here and below.

logLevel: LogLevel.Debug,
formatString: "Reading data from registry key '{RegistryKeyName}', value '{Value}'.");

if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
Copy link
Contributor

Choose a reason for hiding this comment

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

What led to the new platform-compatibility checks here❔

dougbu pushed a commit to dougbu/razor-compiler that referenced this pull request Nov 17, 2021
* Remove Blazor WASM Sdk in repo

* Bump dotnet and fix platform compat issues

* Remove Blazor WASM SDK from solution files

* Disable removal of Web.Spa 6.0 templates

* Update check for uninstalled templates

* Commit broken tests and fix installer check

* Remove BlazorWebAssemblySdkDirectoryRoot references

* Try to resolve Helix publish issues

* Disable ErrorOnDuplicatePublishOutputFiles property

* Bump tfm in Helix test project

* Add explainer note in Workaround.props

Commit migrated from dotnet/aspnetcore@bdec803c73df
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-blazor Includes: Blazor, Razor Components
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants