ILSpy 8 is based on .NET 6.0 compared to .NET Framework 4.7.2 for the previous generations of ILSpy. All artifacts except the self-contained distribution are built framework-dependent, which means .NET 6.0 must be installed prior to starting ILSpy. This is true for:
the installer
the framework-dependent zip
the VSIXs
Functionality is supposed to be unchanged and fully functional in this release compared to 7.2. If something works in 7.2 but not 8.0-alpha1, please file a bug.
Breaking Changes
ILSpy 8.0 will target net60-windows (see #2642) and all plugins will have to be migrated to the new platform.
Note: The ICSharpCode.Decompiler engine and NuGet package will continue to target netstandard2.0
Platform-independent APIs will be moved to ICSharpCode.ILSpyX, currently that includes (but is not limited to):
LoadedAssembly and AssemblyList APIs
PdbProvider APIs
LoadedAssembly.WaitUntilLoaded() was removed, because it leads to bugs; use await LoadedAssembly.GetLoadResultAsync() instead
The MSIX project has been removed and the installer introduced in 7.x will take its place in the Microsoft Store going forward (at RC/RTM).
Contributions
ilspycmd received support for the "nested directories" option on project export. (see #2636 by @GreyXor)
ilspycmd support for generating a solution from multiple projects (based on code provided by @marwie in #2364)
Namespace nesting in ILSpy tree view (based on code provided by @ds5678 in #2667)
Fix the ordering of COM interface methods, properties, and events to appear in their originally defined order (see #2639 by @zhuman)
Enhancements
Performance optimization of analyzers (see #2643)
Bug fixes
#2634: target expressions of delegate references were not decompiled correctly
#2632: Make sure that changing the setting "ExpandMemberDefinitions" has an effect when refreshing a decompiled view.
#2629: Indentation of method-call chains.
#2653: ILSpy reports wrong visibility for overridden protected internal properties if located in another assembly.
#2610: Explicitly qualify members in TemplateBindings.
#2655: TranslateArrayInitializer crashes with out of order array init
And many other fixes, for a full list click here. Download