Repository navigation
Command groups to support duplicate command names and better help support - #4285
Merged
Merged
Conversation
Add extension load testing Add internal CommandGroup class to CommandService dotnet-dump analyze -c/--command will exit on any parsing errors or exceptions in the command command help not displayed on parsing errors/invalid options Add INIT_API_CHECK_MANAGED native SOS command macro Rename clrmodules command to assemblies and keep clrmodules as an alias Support static HelpInvoke/FilterInvoke methods Add command service testing Better command service help interface Returns help text instead of printing it on the console directly. ICommandService.DisplayHelp() => GetHelpText() Fix some SOS scripts Return error code for command line option errors in native SOS Load next to executing assembly first when hosted under desktop Framework Test using "clrstack" instead of "Threads" Replace testing u with clru Remove old runtime dumps from DebugServices tests. Skip tests that load 6.0 runtime/DAC because of injection activation DAC bug. Add more general command filter mechanism Add FilterType property to Command attribute Remove OS filter command flags NativeAddressHelper service work Better help sorting Move Windows managed command stubs to separate file Add SOS.Hosting services to SOS.Extensions for better native command help. This requires the special ManagedOnlyCommandFilter service to prevent recursion of the C++ commands. On Windows this recursion is from "C++ command" -> "checking if managed version" -> "executing the command in SOS.Hosting" -> "C++ command". Help is now uniform across managed/native, alphabetized and filtered by the current runtime.
leculver
approved these changes
Oct 4, 2023
leculver
left a comment
Contributor
There was a problem hiding this comment.
I have a lot of comments and suggestions, but I don't think anything in particular is wrong or blocking so I'm marking this approved. Feel free to implement these suggestions, or not. I will take another look if you push any changes in response here.
I'm not sure I understand what happens if two commands with the same name all pass the filter by mistake. Otherwise I think this is a good direction.
leculver
approved these changes
Oct 4, 2023
hoyosjs
approved these changes
Oct 4, 2023
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add extension load testing that includes duplicate command names.
Add internal CommandGroup class to CommandService
dotnet-dump analyze -c/--command will exit on any parsing errors or exceptions in the command
command help not displayed on parsing errors/invalid options
Add INIT_API_CHECK_MANAGED native SOS command macro
Rename clrmodules command to assemblies and keep clrmodules as an alias
Support static HelpInvoke/FilterInvoke methods
Add command service testing
Better command service help interface. Returns help text instead of printing it on the console directly. ICommandService.DisplayHelp() => GetHelpText(). Better help sorting.
Fix some SOS scripts
Return error code for command line option errors in native SOS
Load next to executing assembly first when hosted under desktop Framework
Test using "clrthreads" instead of "Threads"
Replace testing "u" with "clru"
Add more general command filter mechanism. Add FilterType property to Command attribute. Remove OS filter command flags.
NativeAddressHelper service work
Move Windows managed command stubs to separate file
Add SOS.Hosting services to SOS.Extensions for better native command help. This requires the special ManagedOnlyCommandFilter service to prevent recursion of the C++ commands. On Windows this recursion is from "C++ command" -> "checking if managed version" -> "executing the command in SOS.Hosting" -> "C++ command".
Help is now uniform across managed/native, alphabetized and filtered by the current runtime.