Skip to content

Conversation

@DavidBoike
Copy link
Member

@DavidBoike DavidBoike commented Oct 24, 2023

  • Reduces the size of the self-contained installer from 316 MB to 188 MB (59.4% of original)
  • Reduces the size of the PowerShell module from 480 MB to 227 MB (47.3% of original)

It does so by:

  1. Storing one set of transport plugins, rather than copying them to all three apps
  2. In transport/persistence plugins, not including dependencies of the abstraction project as these binaries will be "merged" as runtime (<ProjectReference Include="**.csproj" Private="false" ExcludeAssets="runtime" />)
  3. Not including RavenDB server artifacts in each instance
  4. Reducing dependencies that were only used to get a Type or String value (Lucene)

@DavidBoike DavidBoike changed the base branch from master to no-installer October 24, 2023 22:19
@DavidBoike DavidBoike self-assigned this Oct 24, 2023
<ItemGroup>
<ProjectReference Include="..\ServiceControl.Infrastructure\ServiceControl.Infrastructure.csproj" />
<ProjectReference Include="..\ServiceControl.Persistence\ServiceControl.Persistence.csproj" />
<!-- Private=false & ExcludeAssets=runtime prevent repeatedly including binary dependencies of ServiceControl.Persistence in each persister directory -->
Copy link
Member

Choose a reason for hiding this comment

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

Makes sense as those assemblies are already there at runtime. I thought copying was only done for packages and executables but likely that is pre SDK behavior.

Base automatically changed from no-installer to master October 25, 2023 17:49
@DavidBoike DavidBoike marked this pull request as ready for review October 25, 2023 19:43
@DavidBoike DavidBoike merged commit 7ad7836 into master Oct 25, 2023
@DavidBoike DavidBoike deleted the optimize-binaries branch October 25, 2023 21:57
@DavidBoike DavidBoike added this to the 5.0.0 milestone Nov 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants