Releases: microsoft/perfview
Releases · microsoft/perfview
PerfView and TraceEvent 3.1.24
Roll-up through 2025/08/26.
- Implement NuGet Central Package Version Management [#2262]
- Fix broken stacks warning for universal traces [#2268]
- Fix jitted code symbols in universal traces to show assembly names instead of memfd:doublemapper [#2269]
- Use themed background brush for menu and filter [#2272]
- Improve rendering and dark mode [#2274]
- Implement configurable symbol server authentication with /SymbolsAuth command line argument for PerfView and HeapDump [#2278]
- Add a themed dialog [#2276]
- Fix regression: "Goto Item in Callers/Callees" now accumulates across all threads [#2284]
- Fix parsing issues and add support for additional events to the Linux perf text file parser [#2286]
- Fix TraceLog live session RelatedActivityID/ContainerID corruption by preserving ExtendedData [#2285]
- NetTrace LabelList metadata overrides and metadata flushing [#2281]
- Fix NullReferenceException in ProviderBrowser.LevelSelected when deselecting level [#2289]
PerfView and TraceEvent 3.1.23
Roll-up through 2025/07/11.
- Fixed TraceEvent CaptureState API to support previously unsupported keyword configurations. [#2222]
- Added Exception Stacks view for .nettrace files to enhance exception diagnostics. [#2223]
- Corrected outdated documentation references to "GC Heap Alloc Stacks". [#2224]
- Fixed off-by-one error in P/Invoke buffer handling for Windows volume events. [#2227]
- Fixed broken links in the PerfView user guide. [#2225]
- Improved error handling by throwing when TdhEnumerateProviders fails, enabling better diagnostics. [#2177]
- Added AutomationProperties.Name to the Process Selection DataGrid for improved accessibility. [#2239]
- Fixed focus indicator visibility for hyperlinks in dark mode and high contrast themes. [#2235]
- Addressed NullReferenceException in Anti-Malware view. [#2233]
- Fixed WebView2 crash on close by implementing proper disposal pattern. [#2230]
- Added support for native AOT gcdumps, expanding compatibility with modern .NET workloads. [#2242]
- Fixed NVDA screen reader issue where Theme menu items did not announce selection state. [#2237]
- Extended PredefinedDynamicTraceEventParser to support dynamic events from additional sources. [#2232]
- Implemented MSFZ symbol format support in SymbolReader. [#2244]
- Removed usage of DefaultAzureCredential, simplifying authentication dependencies. [#2255]
- Added option to hide TimeStamp columns in the EventWindow View menu. [#2247]
- Fixed NVDA screen reader reporting incorrect list count for File menu separators. [#2257]
- Fixed unhandled exception when double-clicking in scroll bar area with no content. [#2254]
- Fixed universal symbol conversion for overlapping mappings. [#2252]
- Fixed TraceEvent.props to respect ProcessorArchitecture when RuntimeIdentifier is set. [#2249]
PerfView and TraceEvent 3.1.22
Roll-up through 2025/06/04.
- Added GC Heap Analyzer support for .nettrace files to enhance memory analysis workflows. [#2216]
- Introduced PredefinedDynamicTraceEventParser for known TraceLogging events, improving trace event parsing. [#2220]
- Enabled selection of process trees in the process selection dialog for multi-process analysis, allowing deeper inspection across related processes. [#2195]
- Implemented sorting for the Duration column in the process selection dialog using TotalDurationSeconds, improving usability. [#2194]
- Improved NetTrace parameter parsing for better command-line flexibility. [#2200]
- Fixed GetActiveSessionNames to handle ERROR_MORE_DATA, resolving session enumeration issues. [#2196]
- Fixed ObjectDisposedException when opening Net OS Heap Alloc Stacks, improving stability. [#2212]
- Fixed null reference exception in GenFragmentationPercent method, enhancing reliability. [#2211]
- Fixed TreeView auto-expansion when opening trace files. [#2218]
- Fixed StackViewer issue where "Set Time Range" reset "Goto Items by callees". [#2208]
- Fixed markdown table formatting when copying from the stack viewer. [#2203]
- Fixed TraceEvent NuGet package to exclude Windows-specific native DLLs. [#2215]
- Removed PDB generation for .NET Core assemblies using CrossGen, reducing build overhead. [#2202]
- Made symbol server timeout configurable and removed dead code in SymbolReader. [#2209]
- Changed help ribbons to use textblocks, enabling tab navigation. [#2201]
PerfView and TraceEvent 3.1.21
Roll-up through 2025/05/02.
- Change NetTrace format version support
- Add /OSHeapMaxMB to set a max size for OS heap sessions
- Implement Nettrace Support for Traces with Universal Providers
- Implement R2R Symbol Lookup for Linux Traces
- Fix NetTrace parsing for Start/Stop event names
- Fix IndexOutOfRangeException in ProcessGlobalHistory
PerfView and TraceEvent 3.1.20
Roll-up through 2025/04/01.
- Flamegraph and drill-in menu improvements
- Performance improvements around unhandled event dispatch
- Add configurable real-time delay in TraceLogEventSource
- Don't queue another flush during a real-time ETW session if one is already in-process
- Allow configuration of rundown providers for real-time EventPipe sessions
- Fix stack handling for NetTrace V4
- Add multi-line view for events viewer
- Misc accessibility fixes
PerfView and TraceEvent 3.1.19
Roll-up through 2025/01/30.
- Added missing time information in the Raw XML View for GCStats.
- Updated activity computation logic to support OpenTelemetry events.
- Changed timestamp values to use QPC time based on UTC for Relogger.
- Fixed issues with report command handling.
- Addressed various POH-related issues.
- Implemented file-size limitation for rundown using an ETW-based approach.
PerfView and TraceEvent 3.1.18
Roll-up through 2024/12/11.
- Fixed
perfcollect
install script on Azure Linux 3. - Updated
System.Text.Json
to address dotnet/announcements#329.
PerfView and TraceEvent 3.1.17
Roll-up through 2024/11/08.
- Numerous accessibility fixes to PerfView. This includes switching out the previous web browser plugin to use WebView2.
- Breaking changes to FastSerialization to ensure that only expected types are deserialized. This addresses potential vulnerabilities during deserialization of untrusted input. Details at #2121.
PerfView and TraceEvent 3.1.16
Roll-up through 2024/10/11.
- Performance improvements to DynamicParser.
- Fixed GetFileNameWithoutExtensionNoIllegalChars to only trim known file extensions.
- Fixed a memory leak when processing EventPipe traces.
- Added support for private/in-process loggers.
PerfView and TraceEvent 3.1.15
- Fixed an issue where
/buildLayout
resulted in an error when the user hadn't previously run PerfView on the machine.