1

What is this package for?

What problem does it solve?

How should it be used?

Example https://sitecore.myget.org/feed/sc-packages/package/nuget/Sitecore.Assemblies.Platform/9.3.0

2

3 Answers 3

3

If you want to use Helix Publishing Pipeline which is allows Helix solutions to be published as a single unit, with content from modules (like views and config patches) being automatically included. but in order to exclude Sitecore assemblies from being published, you will need to include the nuget package you asked for.

See from the Git Repo:

Excluding Sitecore assemblies In many cases it may be desirable to exclude from publish the assemblies that ship with Sitecore, either to reduce the size of the deployment artifact, or to reduce the chance of overriding assemblies with incorrect versions.

Helix Publishing Pipeline supports excluding Sitecore assemblies either individually, from Sitecore Assemblies NuGet packages (available on the sc-packages feed, e.g. Sitecore.Assemblies.Platform) or from assembly lists (text lists for each release, available from SDN).

1
  • Yep, in context of the HPP this makes a lot more sense. Jan 28, 2021 at 21:29
1

It Provides the SitecoreAssemblies item group for assemblies that ship with the main Sitecore platform roles (CM/CD/etc), which should be excluded from deployment.

Here are some examples:

1

The behaviour of Sitecore.Assemblies.Platform is described here and in better detail here. It is essentially used to list out all the default Sitecore assemblies so that you can exclude them from the build automatically, thereby decreasing the size of your build artifacts which will help improve deployment time.

Sitecore.Assemblies.Platform gets used by MSBuild if you have something like the following as part of your solution (this example from here):

<!--
Use the SitecoreAssemblies ItemGroup provided by the Sitecore.Assemblies.Platform
package in order to prevent built-in Sitecore assemblies from publishing.
https://doc.sitecore.com/developers/93/sitecore-experience-manager/en/sitecore-assembly-list-nuget-packages.html

Delay executing this target until after Compile in order to
ensure the NuGet package targets have been evaluated.
-->
<ItemGroup>
    <ExcludeFromPackageFiles Include="@(SitecoreAssemblies -> 'bin\%(Filename)%(Extension)')" />
    <ExcludeFromPackageFiles Include="@(SitecoreAssemblies -> 'bin\%(Filename).pdb')" />
    <ExcludeFromPackageFiles Include="@(SitecoreAssemblies -> 'bin\%(Filename).xml')" />
</ItemGroup>

More info on this MSBuild feature is here.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.