Skip to content

Don't defer input evaluation to REPL backend #376

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

Merged
merged 2 commits into from
Jun 5, 2025

Conversation

serenity4
Copy link
Contributor

Fixes #373.

The fix implemented in #367 spawned a new task for the evaluation, but this eventually synchronized with the backend too (through a backend Channel), still causing a deadlock (or at least, in certain circumstances).

This was largely inspired from JuliaDebug/Infiltrator.jl#139, which sidesteps backend synchronization entirely.

@oscardssmith
Copy link
Contributor

Can this have a test added to make sure this doesn't regress in the future?

@serenity4
Copy link
Contributor Author

serenity4 commented Jun 5, 2025

Execution via the REPL mode is already tested here, but it seems the terminal-based tests haven't been running since 1.6. Our use of TerminalRegressionTests.jl is broken and it doesn't appear trivial to fix, so I would suggest to merge this and tackle the revival of these tests in another PR.

@serenity4
Copy link
Contributor Author

serenity4 commented Jun 5, 2025

#308 was an attempt to fix these tests but it seems efforts have been abandoned since.

@oscardssmith
Copy link
Contributor

@KristofferC can you approve CI?

@ReubenJ
Copy link

ReubenJ commented Jun 5, 2025

Nice! Thank you for attending to this. Can confirm that this works for me locally 🥳

@codecov-commenter
Copy link

codecov-commenter commented Jun 5, 2025

Codecov Report

Attention: Patch coverage is 0% with 8 lines in your changes missing coverage. Please review.

Project coverage is 50.82%. Comparing base (5327ede) to head (268b262).
Report is 17 commits behind head on master.

Files with missing lines Patch % Lines
src/repl.jl 0.00% 8 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #376      +/-   ##
==========================================
- Coverage   51.03%   50.82%   -0.22%     
==========================================
  Files           9        9              
  Lines         821      850      +29     
==========================================
+ Hits          419      432      +13     
- Misses        402      418      +16     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@KristofferC
Copy link
Member

Tests need to be updated for nightly and this is not tested anyway.

@KristofferC KristofferC merged commit 853060a into JuliaDebug:master Jun 5, 2025
2 of 6 checks passed
@serenity4
Copy link
Contributor Author

Thanks @KristofferC!

@serenity4 serenity4 deleted the fix-deadlock branch June 5, 2025 16:16
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.

evaluation mode is broken on julia v1.11
5 participants