Uhmmm, how do I even make a release in 2026? I guess I'll just use AI. [20 minutes of fighting with AI later] I guess doing it manually will work too :D
Speaking of AI... 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 Referencestool 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 thednSpy-netframeworkdistribution. 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
AllowByRefLikemetadata flag on generic parameters in edit dialogs. - Added support for generating
.slnxsolution 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
DllImportfor .NET. - Fixed export of resources with
MemoryStreamtype when generatingRESXfiles. - Added additional monospace fallback fonts to improve compatibility for running dnSpy under Wine.
- Fixed incorrect thread exit codes being displayed in the debugger
Outputdialog. - Improved UI tooltips for metadata members with partially corrupted metadata.
- Added more safeguards against
StackOverflowExceptionin the decompiler. - Fixed a rare decompiler crash relating to the C#
fixedstatement. - Properly escape resource names in the treeview.
- BAML decompiler now adds
x:FieldModifierwhen 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.jsonfile. - 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.
- 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
- @zuoyuanchun made their first contribution in #337
- @SlimeNull made their first contribution in #345
- @jfevia made their first contribution in #366
- @kant2002 made their first contribution in #464
- @Washi1337 made their first contribution in #472
- @oolanlongoo made their first contribution in #420
Full Changelog: v6.5.1...v6.6.0-rc1
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: ee0a000032e8a6a6624bef6a429aed4bb2ca214cdbb2943e46d6fa38e8f33d99
dnSpy-net-win32.zip: 1b9f5b15eb13a31106df97b40d80f2c648882c47588ac6b5388665dcfc3e85e2
dnSpy-net-win64.zip: c612c74f04e01895576fa64c0d2638e946551d9749eabdf200f5224a2e758daa
dnSpy-netframework.zip: f41a3cb0e2d095cc5a6ec17490ef8d7f0a1e74c5c38093900137e6357dae26da