Skip to content

Internalization not happening completely #74

@sivak4Net

Description

@sivak4Net

In our project, we previously used ILRepack.Lib.MSBuild.Task version 2.0.18.2, which successfully merged all dependent assemblies and converted their types to internal. This behavior was critical for avoiding type conflicts, especially with commonly used libraries like Newtonsoft.Json.

Recently, we upgraded directly to version 2.0.43, and observed a change in behavior: not all types from merged assemblies are being converted to internal. For example, classes from Newtonsoft.Json remain publicly accessible in the merged output, as highlighted in the attached image. This is causing conflicts on the consumer side, since clients may also reference Newtonsoft.Json independently.

While converting Newtonsoft.Json to a dependent package is technically feasible, our requirement is to deliver a fully bundled library due to the diversity in client environments (.NET versions and frameworks). Therefore, we need a solution that ensures all merged types are internalized, as was previously possible.

Any guidance or support on resolving this issue with the latest ILRepack version would be greatly appreciated.

Image

ILRepact.targets:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions