-
Notifications
You must be signed in to change notification settings - Fork 5.1k
Delete unused corpublish support and multi appdomain support in the debugger #117688
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR removes the unused CorPublish (COM publication) support from the debugger infrastructure and simplifies multi-appdomain handling in favor of single-domain debugging. The changes also eliminate another usage of the CoreCLR Win32 PAL mutexes by removing cross-process AppDomain enumeration functionality.
- Removes the entire CorPublish API infrastructure for cross-process AppDomain enumeration
- Simplifies debugger AppDomain handling by replacing IPC-based AppDomain tracking with direct event notifications
- Eliminates Win32 PAL mutex usage in the AppDomain enumeration code
Reviewed Changes
Copilot reviewed 19 out of 19 changed files in this pull request and generated 1 comment.
Show a summary per file
File | Description |
---|---|
src/coreclr/vm/dbginterface.h | Removes IPC-based AppDomain methods and adds direct AppDomainCreated callback |
src/coreclr/vm/ceemain.cpp | Removes TODO comments about AppDomain IPC cleanup |
src/coreclr/vm/appdomain.cpp | Replaces IPC AppDomain tracking with direct debugger notifications |
src/coreclr/pal/src/handlemgr/handleapi.cpp | Simplifies handle duplication by removing cross-process remoting |
src/coreclr/pal/prebuilt/inc/corpub.h | Deletes entire CorPublish header file |
src/coreclr/pal/prebuilt/idl/corpub_i.cpp | Deletes CorPublish interface implementation |
src/coreclr/inc/corpub.idl | Deletes CorPublish IDL definitions |
src/coreclr/inc/CMakeLists.txt | Removes corpub.idl from build |
src/coreclr/dlls/mscordbi/mscordbi.src | Updates export comments to remove CorPublish references |
src/coreclr/debug/shared/dbgtransportsession.cpp | Removes AppDomain control block transport methods |
src/coreclr/debug/inc/dbgtransportsession.h | Removes AppDomain transport infrastructure |
src/coreclr/debug/inc/dbgappdomain.h | Deletes AppDomainEnumerationIPCBlock structure and methods |
src/coreclr/debug/ee/debugger.h | Removes IPC AppDomain methods and replaces with direct notifications |
src/coreclr/debug/ee/debugger.cpp | Removes extensive IPC AppDomain management code |
src/coreclr/debug/di/stdafx.h | Removes corpub.h include |
src/coreclr/debug/di/rspriv.h | Removes CorPublish class declarations |
src/coreclr/debug/di/rsmain.cpp | Updates initialization comments |
src/coreclr/debug/di/publish.cpp | Deletes entire CorPublish implementation |
src/coreclr/debug/di/cordb.cpp | Removes CorPublish class factory support |
Tagging subscribers to this area: @steveisok, @dotnet/dotnet-diag |
Remove the unused CorPub support and simplify appdomain handling in the debugger.
This allows us to remove another usage of the CoreCLR Win32 PAL mutexes