ILRepack Documentation

repository·master·Indexed 23 days ago

https://github.com/gluck/il-repack

An open-source tool used to merge multiple .NET assemblies into a single assembly, serving as a replacement for ILMerge and Mono.Merge. It can be installed as a global dotnet tool via 'dotnet tool install -g dotnet-ilrepack'. The tool supports various scenarios including WPF libraries, signed applications, XAML classes, user controls, and WPF theming files.

Tokens
687
Snippets
1
Records
7
Agent score
80%

What's inside ILRepack

  1. Verify ILRepack compatibility with XAML User Controls

    master

    This scenario verifies that ILRepack correctly handles user controls that are defined in external libraries and subsequently used within XAML files.

    To verify success:

    1. Run the test/application.
    2. Confirm that the MainWindow is properly loaded and displayed.
    3. Check the exit code: an exit code of 0 indicates success, while 1 indicates that exceptions occurred during execution.
  2. Install ILRepack via dotnet tool

    master

    You can install ILRepack as a global dotnet tool. Once installed, you can run the tool directly using the ilrepack command. Note that you do not need to prefix the command with dotnet (e.g., use ilrepack instead of dotnet ilrepack).

    PS C:\> dotnet tool install -g dotnet-ilrepack
  3. Verify ILRepack compatibility with WPF theming files

    master
    This scenario verifies that ILRepack correctly handles WPF theming files, specifically themes/generic.xaml. A successful integration is confirmed if the MainWindow of the target application loads and displays without exceptions. The application execution returns an exit code of 0 for success or 1 if exceptions occur during execution.
  4. Verify ILRepack compatibility with WPF libraries and signed applications

    master

    This scenario serves as a verification test to ensure ILRepack functions correctly when repacking applications that utilize popular WPF libraries or require digital signatures.

    Successful verification is indicated by:

    1. The MainWindow of the sample application loading and displaying properly.
    2. The application exiting with code 0 (success) or 1 (exception occurred).

    Supported library types in this test scenario include:

    • System.Windows.Interactivity
    • MahApps
    • Extended.Wpf.Toolkit
    • Signed repacked applications
  5. Verify ILRepack compatibility with XAML classes

    master

    This scenario verifies that ILRepack correctly handles classes referenced within XAML files, such as IValueConverter implementations.

    To verify success, run the test and ensure that the MainWindow loads and displays properly without exceptions. The application exit code indicates the result:

    • 0: Success (MainWindow loaded and shown).
    • 1: Failure (Exceptions occurred during execution).
  6. Verify ILRepack support for nested library user controls in XAML

    master

    This scenario verifies that ILRepack correctly handles user controls that depend on other user controls located in different, nested libraries when used within XAML.

    In this context, a nested library user control is defined as a user control that consumes other user controls from a separate library.

    To verify success:

    1. Ensure the MainWindow loads and displays properly.
    2. Check the application exit code: 0 indicates success, while 1 indicates that exceptions occurred during execution.