Skip to content

PhyxionNL/AssemblyPatcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AssemblyPatcher Nuget

An MSBuild task that modifies existing assemblies to add InternalsVisibleTo attributes, remove sealed modifiers, add virtual keywords, or change access modifiers to public.

Usage

Add the NuGet package to your project:

<PackageReference Include="AssemblyPatcher">
   <PrivateAssets>all</PrivateAssets>
   <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>

Add an InternalsVisibleTo attribute to SomeAssembly with OwnAssembly as the assembly name:

<ItemGroup>
   <AddInternalsVisibleTo Include="SomeAssembly" AssemblyName="OwnAssembly" />
</ItemGroup>

Remove sealed modifiers from types in SomeAssembly:

<ItemGroup>
   <RemoveSealedFrom Include="SomeAssembly" />
   <!-- or filtered -->
   <RemoveSealedFrom Include="SomeAssembly" TypeNames="SomeAssembly.TypeA;SomeAssembly.Folder.*" />
</ItemGroup>

Add virtual keywords in SomeAssembly:

<ItemGroup>
   <AddVirtualTo Include="SomeAssembly" />
   <!-- or filtered -->
   <AddVirtualTo Include="SomeAssembly" MemberNames="SomeAssembly.Types::Member*" />
</ItemGroup>

Change access modifiers to public in SomeAssembly:

<ItemGroup>
   <MakePublic Include="SomeAssembly" />
   <!-- or filtered -->
   <MakePublic Include="SomeAssembly" MemberNames="SomeAssembly.Types::Member*" />
   <MakePublic Include="SomeAssembly" TypeNames="SomeAssembly.TypeA" />
</ItemGroup>

License

MIT

About

An MSBuild task that modifies existing assemblies to add InternalsVisibleTo attributes, remove sealed modifiers, add virtual keywords, or change access modifiers to public.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

 
 
 

Contributors

Languages