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

debug: Indefinitely stuck in dape:starting #172

Open
RomeoV opened this issue Jan 13, 2025 · 4 comments
Open

debug: Indefinitely stuck in dape:starting #172

RomeoV opened this issue Jan 13, 2025 · 4 comments

Comments

@RomeoV
Copy link

RomeoV commented Jan 13, 2025

Thanks for adding the new DebugAdapter.jl integration with dape.
Unfortunately, I can't get it to work -- the dape UI windows open, but then I am indefinitely stuck at status dape:starting. I have already set the dape-request-timeout to 120 seconds, because sometimes Julia needs to still compile something. However, it doesn't seem to help.

Has anybody had any luck using the new extension?

This is on emacs 30, with julia 1.10, and

# dape version
      Build: HEAD -> master, origin/master, origin/HEAD 60d817f 2025-01-10 00:08:44 +0000
# julia-snail version
      Build: HEAD -> master, origin/master, origin/HEAD 24f79a0 2024-12-16 12:18:25 -0800

Could the problem be related to the json parser changes in emacs 30?

@gcv
Copy link
Owner

gcv commented Jan 13, 2025

I don't know, sorry. I don't use dape (yet...). @iNecas, any ideas?

@iNecas
Copy link
Contributor

iNecas commented Jan 14, 2025

There are still some changes to make it working end2end, I first was working with the changes in the DebugAdapter julia-vscode/DebugAdapter.jl#95. During the review, it seems like it's better place to make the corresponding changes in he dape itself (there are some incompatibilities when it comes to passing null values).

So short time solution would be to use local DebugAdapter with the patches applied. The proper solution would be to make corresponding changes in dape, but unfortunately I don't have capacity now to work on those.

@RomeoV
Copy link
Author

RomeoV commented Jan 14, 2025

I can verifify that this works with the DebugAdapter.jl fork from the PR.
One option to consider is using the Julia 1.11 [sources] feature, and specifying the fork in the Project.toml file.
That would allow users to use this feature without further fuss, provided they initially use Julia 1.11 to resolve the dependencies.

It can however lead to an annoying bug. If the first time the extension is loaded is with Julia < 1.11, then the wrongly resolved Manifest.toml needs to be deleted manually later.

For reference, the new Project.toml would look like this:

# ~/.e/.l/s/r/j/e/debug (master)> cat Project.toml 
[deps]
DebugAdapter = "17994d07-08fe-42cc-bc1b-7af499b1ea47"

[sources]
DebugAdapter = {url = "https://github.com/iNecas/DebugAdapter.jl", rev="dape-compatibility"}

@gcv
Copy link
Owner

gcv commented Jan 14, 2025

Another possibility is to monkey-patch DebugAdapter from the extension itself. (i.e. check the installed version of DebugAdapter, and if it’s affected, dynamically replace the affected code.)

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

No branches or pull requests

3 participants