Skip to content

Handle satellite assemblies in the Blazor build targets #18207

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
merged 2 commits into from
Jan 15, 2020

Conversation

pranavkm
Copy link
Contributor

@pranavkm pranavkm commented Jan 8, 2020

  • Pass the same closure of assemblies that is used by the SDK's linker to Blazor's linker and ResolveBlazorRuntimeDependencies task
  • Quote the mono linker path

Fixes #17644
Fixes #17754

-->
<ItemGroup>
<!-- Assemblies from packages -->
<_BlazorManagedRuntimeAssemby Include="@(RuntimeCopyLocalItems)" />
Copy link
Contributor Author

Choose a reason for hiding this comment

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

/cc @nguerrera in case you have suggestions on a better way of doing this.

@pranavkm pranavkm added area-blazor Includes: Blazor, Razor Components feature-blazor-wasm This issue is related to and / or impacts Blazor WebAssembly labels Jan 8, 2020
@pranavkm pranavkm added this to the blazor-wasm-3.2-preview1 milestone Jan 8, 2020

var bootJsonPath = Path.Combine(buildOutputDirectory, "dist", "_framework", "blazor.boot.json");
Assert.FileContains(result, bootJsonPath, "\"Microsoft.CodeAnalysis.CSharp.dll\"");
Assert.FileContains(result, bootJsonPath, "\"fr\\/Microsoft.CodeAnalysis.CSharp.resources.dll\"");
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Satellite assemblies get listed in the boot json. I verified that they get downloaded and loaded. But localization itself didn't seem to be working. At this point, I've only made sure that having satellite assemblies doesn't cause things to fail.

* Pass the same closure of assemblies that is used by the SDK's linker to Blazor's linker and ResolveBlazorRuntimeDependencies task
* Quote the mono linker path

Fixes #17644
Fixes #17754
@pranavkm pranavkm force-pushed the prkrishn/satellite-assemblies branch from 9643b72 to 80a6787 Compare January 10, 2020 18:43
<UsingTask TaskName="GenerateTypeGranularityLinkingConfig" AssemblyFile="$(BlazorTasksPath)" />
<Target Name="_GenerateTypeGranularLinkerDescriptor"
Copy link
Contributor Author

Choose a reason for hiding this comment

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

@SteveSandersonMS this is now incremental:

image

My guess is that for BlazorCreateRootDescriptorFile, the inputs doesn't need to be @(IntermediateAssembly) - we don't need to recreate the file, if the contents of the file changes,only it's name which is almost never true, but I guess we can figure that out later.

@pranavkm
Copy link
Contributor Author

Ping

Copy link
Member

@javiercn javiercn left a comment

Choose a reason for hiding this comment

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

I've taken a look and things seem reasonable.

I'm not an expert on this area, but I think the change is correct and an improvement to the current situation. I'm trusting the test covers and validates the scenario appropriately.

@pranavkm pranavkm merged commit 4ab5fe6 into blazor-wasm Jan 15, 2020
@pranavkm pranavkm deleted the prkrishn/satellite-assemblies branch January 15, 2020 18:44
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 feature-blazor-wasm This issue is related to and / or impacts Blazor WebAssembly
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants