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
UI for setting compiled funcs/mods #1888
Conversation
and allow list of compiled methods to be changed on the fly
This is amazing! Should we remove the UI for compile mode in the breakpoints section then? |
Hm, we maybe can move the functionality to our own UI, but I'm not as confident in my own sync code compared to the breakpoint handling. Will play around with adding an extra button to toggle compiled mode though. Oh, and I also don't know how to display this only for Julia debug sessions, but I'm pretty sure there is a way. |
Now supports setting functions as interpreted, so we can force all of Base to run in compiled mode except for some functions (I've set a list of default functions here, but not sure how sensible that one is). Requires JuliaDebug/JuliaInterpreter.jl#468. |
"Base.", | ||
"-Base.!", | ||
"-Base.all", | ||
"-Base.all!", |
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.
Are these by defining module, or by namespace module?
i.e. will this also compile my overoads of Base.map(f, ::MyType)
etc?
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.
These are for all methods of that function, so -Base.map
will force interpreted mode for all overloads.
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.
We should look into working out how to do it by definitition location, but that can be a follow up PR?
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.
Well, this list could be method based instead of function based, but I'm not sure whether that's particularly useful.
I do think there's some reason to think seriously about interpreting |
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.
Fantastic, just needs a merge conflict resolution.
Co-authored-by: Lyndon White <oxinabox@ucc.asn.au>
Ok, breakpoints now work at least in |
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.
Needs merge conflict resolution. Looks to me as if someone updated the submodules on the branch, which is never a good idea :)
Yeah, I checked in submodules because this needed a branch of DebugAdapter to work. Should be all good now :) |
Requires julia-vscode/DebugAdapter.jl#31.
Fixes #1880.
There are still a few issues with the UI and I'd like to add an input because the default search is kinda bad (too fuzzy).