MBot Posted February 28, 2022 Posted February 28, 2022 New Language Features C# 7.0 pattern matching C# 8.0 stackalloc in nested contexts C# 9.0 skip locals init C# 9 covariant returns C# 10 file-scoped namespace declarations C# 10 abstract static interface members Updated pattern detection for Roslyn 4.0 Updated pattern detection for Mono C# compiler 5.x Updates pattern detection for Roslyn 3.11 Contributions Introduce MSI-based installer (by @Rpinski in #2558) ILSpyCmd: Added support for single-file bundles (by @Freakness109 in #2499) Support loading compressed Xamarin assemblies (by @cpraehaus in #2471) BAML decompiler: Add missing x:Static (by @wwh1004 and @bert2 in #2536) Various improvements in pattern detection for records (by @yyjdelete in #2476) Add TypeDefinitionDocuments to custom debug information data (by @davidwengier in #2578) Fix MainWindow.OpenLink for net6.0 (by @yyjdelete in #2585) Fix loading icons embedded as resources (by @AustinWise in #2595) Use Trace.Listeners instead of Debug.Listeners (by @yyjdelete in #2555) Updated ReadyToRun. (by @cshung in #2489) Analyzers: Return valid modules only (by @zvirja in #2496) Extensibility: Make SearchTermMatches virtual (by @beaverden in #2494) Fix null check in BamlDecompilerTypeSystem.HasType (by @yyjdelete in #2509) Updated Chinese translation (by @Nyerst in #2606) Enhancements Assembly resolver: GetReferenceAssemblyPath now picks closest available version #1175: Added inassembly: and innamespace: search predicates #2298: Allow to change the DecompilerTextView's font size through scrolling. #2404: Cache decompilation results when switching tabs Better support for voice commands/keyboard navigation Proper support for long paths in Windows 10 in WholeProjectDecompiler. #2608: Support for submenu items Added hyperlinks to metadata explorer tables Add simple public API for XamlDecompiler Improved performance of LoadedAssembly.GetTargetFrameworkId, LoadedAssembly.GetRuntimePackAsync and others #2368: Dim namespaces containing only internal types Improved window menu Added "Copy results" menu item to Analyzer #2550 and #2551: Fix tab and focus handling #2330: Added an option to toggle namespace sub-directory support in project export Added ETW instrumentation to the decompiler for performance measurements Added DecompilerTypeSystem.CreateAsync to allow asynchronous initialization #2522: Support backticks in fully-qualified names when searching for type #2520: The matched pairs are hardly visible in the dark theme Add "Extract package entry" context menu entry for binaries inside bundles/packages IL disassembly: Option to show raw offsets and instruction bytes IL disassembly: Show header sizes Bug fixes Dirkster99/AvalonDock#324 Navigator window a11y fixes #2579: Use "ILSpyInstance" mutex to wait until the first ILSpy instance is ready to receive WM_COPYDATA #2615: Overflow check did not work reliably due to fp rounding error #2612: Decompilation of newarr with int.MaxValue causes OOME #2622: Fix crash in ExpressionBuilder when decompiling object initializer composed of readonly properties #2533: Various bugfixes in pinned-region detection. #2547 and #2495: Improved decompilation of VB.NET decimal constants. #2544: Do not produce syntax errors with interpolated strings #2545: LINQ does not support null-forgiving operator, suppress transform. #2541: Add explicit unchecked() around non-constant cast of constant to nint #2518: "Other resources" section in resource files was not properly displayed #2534: Handle default implementations of properties and events in interfaces #2458, #2459: Fixed various correctness issues in IL code generated by C++/CLI #2530: Stability fixes in pattern matching detection #2378: Stability fixes in deconstruction detection #2379: This fixes an issue where return statements within try-blocks could turn into goto statements #2052: BAML-to-XAML: Resolve namespaces of properties #1858 and #2188: Improved decompilation of display-classes #2424: Suppress the string==null special-case within the string class itself #2092: aggressively inline code in compiler-generated lambdas and expression trees And many other fixes, for a full list click here ilspycmd Removed .NET Core 2.1 TFM, added .NET 6.0 TFM Visual Studio AddIn Allow to open ILSpy on project and package references We now have an addin for VS2022 https://marketplace.visualstudio.com/items?itemName=SharpDevelopTeam.ILSpy2022 that is separate from the legacy addin. Download
Recommended Posts