[debug] Correctly process #dbg during load-file#951
Merged
Conversation
94e23d8 to
ee12846
Compare
8a071d7 to
ab60972
Compare
ericdallo
approved these changes
Oct 9, 2025
ericdallo
left a comment
There was a problem hiding this comment.
As a user, I've been using this and no issues so far! thank you!
5c99e0a to
ff8e820
Compare
ff8e820 to
0f4819b
Compare
Member
Author
|
Tests pass now. I'm going to merge this. @bbatsov We are good to release nrepl 1.5.0 next week and start rolling this out to CIDER. |
|
Your efforts are much appreciated @alexander-yakushev 👏🏻 |
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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-filein place, it now becomes possible to correctly instrument functions with#dbgand 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-evalloop, 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.