Skip to content

[msbuild] Sign Xamarin.iOS.Tasks.dll and Xamarin.Mac.Tasks.dll. Fixes #9835.#12831

Merged
rolfbjarne merged 2 commits intodotnet:mainfrom
rolfbjarne:msbuild-strongname
Sep 28, 2021
Merged

[msbuild] Sign Xamarin.iOS.Tasks.dll and Xamarin.Mac.Tasks.dll. Fixes #9835.#12831
rolfbjarne merged 2 commits intodotnet:mainfrom
rolfbjarne:msbuild-strongname

Conversation

@rolfbjarne
Copy link
Member

We need to strongname our MSBuild assemblies, so that different versions
can be loaded side-by-side (one example being having both a legacy and a
.NET project in the same solution).

This required setting a version for Xamarin.iOS.Tasks.dll and
Xamarin.Mac.Tasks.dll, otherwise strong-naming won't work properly (all
versions of an assembly would have the same identity).

Also sign the corresponding test assemblies, since they poke into the
internals of the task assemblies.

Fixes #9835.

…ks.dll.

This is required for strong-naming to work properly (otherwise all assemblies will have the same version).
…otnet#9835.

We need to strongname our MSBuild assemblies, so that different versions can
be loaded side-by-side (one example being having both a legacy and a .NET
project in the same solution).

This also required signing the corresponding test assemblies, since they poke
into the internals of the task assemblies.

Fixes dotnet#9835.
@rolfbjarne rolfbjarne added the not-notes-worthy Ignore for release notes label Sep 24, 2021
Copy link
Contributor

@chamons chamons left a comment

Choose a reason for hiding this comment

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

I have a foreboding feeling that this will come back again, as every time I've dealt with strong naming there was some issue.

PR looks great though.


[assembly: AssemblyCompanyAttribute ("Microsoft Corp.")]
[assembly: AssemblyFileVersionAttribute (VersionConstants.XamarinMacVersion)]
[assembly: AssemblyInformationalVersionAttribute (VersionConstants.XamarinMacVersion + "." + VersionConstants.NuGetPrereleaseIdentifier + "+" + VersionConstants.NuGetBuildMetadata)]
Copy link
Contributor

Choose a reason for hiding this comment

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

I would have prefer string interpolation ;)

@vs-mobiletools-engineering-service2
Copy link
Collaborator

❌ [PR Build] Tests failed on Build ❌

Tests failed on Build.

API diff

✅ API Diff from stable

View API diff

API & Generator diff

API Diff (from PR only) (no change)
Generator Diff (only version changes)

GitHub pages

Results can be found in the following github pages (it might take some time to publish):

Test results

1 tests failed, 136 tests passed.

Failed tests

  • introspection/Mac Catalyst [dotnet]/Debug [dotnet]: TimedOut (Execution timed out after 1200 seconds.
    No test log file was produced)

Pipeline on Agent XAMBOT-1104.BigSur'
Merge 0617689 into 9a299ae

@rolfbjarne
Copy link
Member Author

Test failure is unrelated (https://github.com/xamarin/maccore/issues/2414).

Copy link
Contributor

@mauroa mauroa left a comment

Choose a reason for hiding this comment

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

Should we add the same for Xamarin.iOS.Windows.Tasks.csproj? It contains the HotRestart and Windows Tasks/Targets

@rolfbjarne
Copy link
Member Author

Should we add the same for Xamarin.iOS.Windows.Tasks.csproj? It contains the HotRestart and Windows Tasks/Targets

Yes, I think it would be a good idea. I think that can be done in a different PR though.

@rolfbjarne rolfbjarne merged commit 7dc2d9a into dotnet:main Sep 28, 2021
@rolfbjarne rolfbjarne deleted the msbuild-strongname branch September 28, 2021 15:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

not-notes-worthy Ignore for release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[.NET 6] Change the identify of the Xamarin.iOS.Tasks.dll and Xamarin.Localization.MSBuild.dll so that they're not duplicated across packages.

6 participants