Skip to content
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

Extract debugger #1905

Merged
merged 7 commits into from
Apr 24, 2020
Merged

Extract debugger #1905

merged 7 commits into from
Apr 24, 2020

Conversation

qwwdfsad
Copy link
Collaborator

@qwwdfsad qwwdfsad commented Apr 6, 2020

No description provided.

@qwwdfsad qwwdfsad force-pushed the extract-debugger branch 4 times, most recently from 04b1e50 to fddaee8 Compare April 6, 2020 17:44
@qwwdfsad
Copy link
Collaborator Author

JFYI: javap -v DebugProbesKt.class | grep major (javap can't process .bin files)

@qwwdfsad qwwdfsad marked this pull request as ready for review April 21, 2020 19:13
@qwwdfsad qwwdfsad requested a review from elizarov April 21, 2020 19:14
Copy link
Contributor

@elizarov elizarov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

DebugProbesKt.class should not be committed. There is a .bin file committed to resources, which is enough.

@qwwdfsad qwwdfsad requested a review from elizarov April 22, 2020 15:31
Copy link
Contributor

@elizarov elizarov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚀 Good to go (with one inessential comment)

@qwwdfsad
Copy link
Collaborator Author

Asked Volodya to verify this branch against IDEA, will merge after his approve

    * Extract DebugProbesImpl, CoroutineInfo and State to kotlinx-coroutines-core
    * Introduce AgentPremain that works without ByteBuddy to kotlinx-coroutines-core, so it now can be used as Java agent and all debug info can be extracted via reflection or JDWP
    * Reflective lookup of ByteBuddy attach to resolve cyclic dependency between core and debug modules
…cally in order to avoid reflective call to Installer.agentmain
@qwwdfsad qwwdfsad merged commit 70a7487 into develop Apr 24, 2020
@qwwdfsad qwwdfsad deleted the extract-debugger branch April 24, 2020 11:59
qwwdfsad added a commit that referenced this pull request Apr 24, 2020
This is debug agent machinery rework in order to prepare for IDEA integration

    * Extract internal DebugProbesImpl to kotlinx-coroutines-core
    * Introduce AgentPremain that works without ByteBuddy to kotlinx-coroutines-core, so it now can be used as Java agent and all debug info can be extracted via reflection or JDWP
    * Reflective lookup of ByteBuddy attach to resolve cyclic dependency between core and debug modules
    * Reduce public API surface, introduce JDWP-specific API
    * Introduce a mechanism to produce a DebugProbesKt.bin and verify them against the golden value
recheej pushed a commit to recheej/kotlinx.coroutines that referenced this pull request Dec 28, 2020
This is debug agent machinery rework in order to prepare for IDEA integration

    * Extract internal DebugProbesImpl to kotlinx-coroutines-core
    * Introduce AgentPremain that works without ByteBuddy to kotlinx-coroutines-core, so it now can be used as Java agent and all debug info can be extracted via reflection or JDWP
    * Reflective lookup of ByteBuddy attach to resolve cyclic dependency between core and debug modules
    * Reduce public API surface, introduce JDWP-specific API
    * Introduce a mechanism to produce a DebugProbesKt.bin and verify them against the golden value
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants