Skip to content

v6.6.0

Latest

Choose a tag to compare

@ElektroKill ElektroKill released this 20 Jun 17:07
e2bada2

After... 2 years, finally a new stable release!

Before the changelog, one important note: There will not be an official dnSpy AI integration, or an MCP server, or whatever else. Stop asking! Find an extension, make one yourself, or just vibecode it, and if it doesn't work, don't ask me, ask the extension developer... or AI.

New features:

  • Added a new String References tool window, which allows viewing all strings present in the .NET metadata and method bodies (thanks to @Washi1337).
  • Added a new .NET 10 distribution (dnSpy-net), which is not self-contained and contains both x64 and x86 binaries. This is intended as a more modern alternative to the dnSpy-netframework distribution. This is the recommended distribution if you have .NET 10 already installed on your system.
  • Added support for the Windows 11 Snap Layout feature for dnSpy windows.
  • dnSpy now detects when it is being run under Wine on Linux and disables WPF hardware acceleration to improve compatibility.
  • SDK style projects can now be exported from dnSpy.Console.
  • dnSpy's XML syntax highlighter now properly supports CDATA.
  • Added support for the AllowByRefLike metadata flag on generic parameters in edit dialogs.
  • Added support for generating .slnx solution files when exporting the decompilation to a project file.

Improvements and bug fixes:

  • Updated from .NET 8 to .NET 10.
  • Ensure the Save Module window appears for at least some time on screen to signal that the module was actually written.
  • Fixed the decompilation of the calling convention field of DllImport for .NET.
  • Fixed export of resources with MemoryStream type when generating RESX files.
  • Added additional monospace fallback fonts to improve compatibility for running dnSpy under Wine.
  • Fixed incorrect thread exit codes being displayed in the debugger Output dialog.
  • Improved UI tooltips for metadata members with partially corrupted metadata.
  • Added more safeguards against StackOverflowException in the decompiler.
  • Fixed a rare decompiler crash relating to the C# fixed statement.
  • Properly escape resource names in the treeview.
  • BAML decompiler now adds x:FieldModifier when necessary.
  • Improved exporting BAML files to project files.
  • Tweaked C# decompiler variable naming algorithm.
  • Fixed BAML decompiler moving readonly properties into XML attributes, resulting in invalid code.
  • The assembly resolver now considers the *.runtimeconfig.json file.
  • Fixed incorrect syntax in IL disassembler and improved accuracy.
  • Truncate the content of the long string resources when displaying them.
  • Fixed unnatural scrolling on laptops equipped with precision touchpads.
  • Set DOTNET_ReadyToRun to 0 when debugging using CoreCLR.
  • Fixed decompiler crashes for runtime-async methods.
  • Improved IL disassembly of exported types and nested types with namespaces.
  • Updated translations.

Dependency updates:

  • Updated dnlib to 4.5.0
  • Updated VS MEF to 17.13.41
  • Updated Roslyn to 5.3.0
  • Updated NuGet.Configuration to 7.6.0
  • Updated dbgshim.dll component to the latest version

New Contributors

Full Changelog: v6.5.1...v6.6.0

Thanks to everyone for reporting issues, opening pull requests, and supporting the project through other means! This release would not have been possible otherwise :P A special thanks goes out to all my current and past GitHub Sponsors for supporting this project and me working on it!

SHA-256 hashes:
dnSpy-net.zip: 025dc4e02540e9afa9ab0121c8b2a3fff5e9e515835823a74a9e5635bd4d4302
dnSpy-net-win32.zip: 6ec1271aabb6503985e4d6299b0929aaa72f995a17a68d3233d5a3363092cdca
dnSpy-net-win64.zip: 8ed48f165dc355e869f3a0037ad4f9216147f995a5ae0258b296eeef1f73aab0
dnSpy-netframework.zip: 2eadb7f4931ad1882d10477cf57185d288cacc6e3abf9958e7ae73c0a0f31dd1