[debug] Correctly process #dbg during load-file #951
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.
This is the tock to nrepl/nrepl#391 's tick. These two PRs are enough to fix #946.
With the updated
load-file
in place, it now becomes possible to correctly instrument functions with#dbg
and other debug-related reader tags when doingC-c C-k
. I thought it was gonna be trivial from here but woe is me. First of all, I wanted to drop the old approach of double-reading the code. It's ugly. The forms are now only read once by theinterruptible-eval
loop, just like the gods intended. We pass a custom read function for that because:Re: capturing the form source code. This proved to be PITA. See
comment-trimming-read+string
.Of course, the debugger has to continue working with older nREPLs down to 1.0.0. That's why all the older code remained, and I only introduced the new path for the new nREPL.
What else can I say? This crap works now, I sincerely hated doing this, gg go next.