-
-
Notifications
You must be signed in to change notification settings - Fork 74
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
feat(dap): support dynamically compiled executable #64
feat(dap): support dynamically compiled executable #64
Conversation
9edccf1
to
43f32b0
Compare
d7d05db
to
a58b7c7
Compare
Thanks. This looks great! |
I noticed an issue with sourcemaps crop up too, I haven't got that quite right yet:
The I wonder if I can find an easy-ish way of running the nix tests. Would they run in a VM? |
Oh, I see... I can sudo nix flake check -L \
--extra-experimental-features nix-command \
--extra-experimental-features flakes and get at least the results of what would happen in GHA. |
🤔 This bit:
... makes me think I may have got the structure of |
I've just pushed a fix for the |
You can also add those flags to your |
Thanks for the tips, will revise in next day or so. |
454662d
to
599231f
Compare
- adds add_dynamic_library_paths - adds load_rust_types
1c93809
to
3107caf
Compare
@mrcjkb Hello! Finally managed to circle back to this. I think I've addressed the outstanding issues. Wonder if it's worth getting it merged to save on conflicts, and I'll address testing in a separate PR? But up to you obviously. |
Oh, and could you enable checks on this PR please? Thx! |
Actually, looking at the current tests I might need a tiny bit of guidance on what to test so I don't end up wasting your time 🙂 |
Awesome 🚀 I don't have time today, but I should be able to look at this tomorrow. |
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.
I just tested this manually with both lldb
and codelldb.
- With
lldb
, everything seems to work fine. - With
codelldb
, I get:Error on launch: Could not parse launch configuration: invalid type: sequence, expected a map
Note: I have force-pushed a rebase to your branch. As the fixes are relatively small, I will see if I have time to fix them myself 😄
'DKLD_LIBRARY_PATH=' .. rustc_target_path .. sep .. target_path .. sep .. '$DYLD_LIBRARY_PATH' | ||
) | ||
else | ||
table.insert( |
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.
issue: As with init_commands
previously, environment
will grow indefinitely. We can prevent this in the same way, by using a table with the workspace root as the key.
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.
Shoot, yep ty will fix.
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.
Oh nvm, I see you're on it :) I'll keep looking at the launch.json thing.
Merging into another branch where I can implement the fixes for Thanks for the great contribution @richchurcher! |
9f27450
into
mrcjkb:support-dynamic-libs-fixes
Continuing in #72 |
This:
lldb-vscode
by default (with the ability to disable)lldb-dap
if present (on newer installations, this will replacelldb-vscode
) ... which now that I've rebased, I see you already did!rustc_sysroot
path (because they came from reading stdout)Sorry for cramming so many little bits and pieces in at once, this is basically just a "fix some of the things that were blockers for me with lldb-vscode". My main use-case was to get Bevy engine debugging working, which this does.
I'm submitting it as a WIP so you can have a quick scan and tell me if you agree with the approach, as I don't write a great deal of Lua and there are probably some wildly non-idiomatic things you can point out! I've tried to follow the overall approach of what was there before though.
I'll look at adding some tests and tidying up tomorrow.