vshaxe / hashlink-debugger

Visual Studio Code Debugger for Haxe/HashLink applications
https://hashlink.haxe.org/
MIT License
57 stars 23 forks source link

HL debugger no longer works in latest vscode #97

Closed deepnight closed 3 years ago

deepnight commented 3 years ago

Absolutely nothing happens. Builds and tasks still run, but running debugger just does nothing anymore. It worked just fine before this morning update :)

VScode

Version: 1.56.0 (system setup)
Commit: cfa2e218100323074ac1948c885448fdf4de2a7f
Date: 2021-05-04T22:09:06.405Z
Electron: 12.0.4
Chrome: 89.0.4389.114
Node.js: 14.16.0
V8: 8.9.255.24-electron.0
OS: Windows_NT x64 10.0.19042
rcstuber commented 3 years ago

Confirming same issue for Mac. Let's have a look...

Version: 1.56.0
Commit: cfa2e218100323074ac1948c885448fdf4de2a7f
Date: 2021-05-04T22:06:21.189Z
Electron: 12.0.4
Chrome: 89.0.4389.114
Node.js: 14.16.0
V8: 8.9.255.24-electron.0
OS: Darwin x64 19.2.0
ncannasse commented 3 years ago

@Gama11 any insight on what might be causing this ?

rcstuber commented 3 years ago

When running the debug extension adapter on a custom port and connecting via debugServer: 4711 everything works fine. VSCode throws no errors in any of its logs, at least none that I found.

kLabz commented 3 years ago

Gama11 on discord:

it often needs an update on electron updates since it bundles some dependencies that are linked against a specific version https://github.com/vshaxe/hashlink-debugger/blob/master/Makefile#L2

deepnight commented 3 years ago

When running the debug extension adapter on a custom port and connecting via debugServer: 4711 everything works fine. VSCode throws no errors in any of its logs, at least none that I found.

How do you change that? 🤔

rcstuber commented 3 years ago

@deepnight It requires you to have the hashlink-debugger project locally. See my response here: https://github.com/vshaxe/hashlink-debugger/issues/96#issuecomment-823853835

ncannasse commented 3 years ago

it often needs an update on electron updates since it bundles some dependencies that are linked against a specific version https://github.com/vshaxe/hashlink-debugger/blob/master/Makefile#L2

I tried to upgrade to Electron 12 but it didn't work out. Looking into @rcstuber solution to understand what's going on here.

ncannasse commented 3 years ago

I've located the issue which is related to ffi-napi module loading but I can't make it to work so I posted a message here https://github.com/node-ffi-napi/node-ffi-napi/issues/156

rcstuber commented 3 years ago

Nice catch! Haven't been able to try myself, but maybe there is some useful info here apart from the usual electron rebuild step: https://www.electronjs.org/docs/tutorial/using-native-node-modules

Edit: I tried the various methods suggested on the page above to build the modules for Electron, including using the electron-rebuild tool. I also tried upgrading the ffi-napi and ref-napi modules, because they now ship with prebuild native extensions for Electron, but neither using those nor running npm with --build-from-source lead to any success. When running the adapter remotely it runs in a regular node process, which seems to work fine. Odd.

ncannasse commented 3 years ago

@rcstuber took a few hours to figure things out, turned it was an old incompatible ffi-napi version :'( . Could you rebuild the OSX bindings and update the prebuild in Makefile so I can make a release ?

rcstuber commented 3 years ago

Oh shuuut, I could have saved you those hours if I hadn't forgotten to actually run haxe build.hxmlafter pulling a clean repo into my extensions folder :-/ Sorry!

rcstuber commented 3 years ago

I created a PR https://github.com/vshaxe/hashlink-debugger/pull/99. I removed the steps to copy the ffi-napi and ref-napi native extensions, since those new releases should come pre-bundled with required prebuilds via NPM. This also includes the fixes needed to properly compile under Haxe 4.2.1. –– did you not stumbled upon this error yet? @ncannasse

ncannasse commented 3 years ago

@rcstuber actually it seems I can run perfectly fine with the prebuilt without any requirement for native builds, so I have cleanup Makefile and push a new version, which should work on all OS out of the box. Can you confirm it works on OSX ?

rcstuber commented 3 years ago

Double checked and YES, it's now working by just running npm install. Apparently they've also provide pre-builds for deasync. Great, less hassle for releases!

ncannasse commented 3 years ago

It does in my install

Le mer. 12 mai 2021 à 22:28, rcstuber @.***> a écrit :

Are you sure you haven't got files lying around? Because the deasync module does not ship with any prebuild *.node files and would require a node-gyp build step afaik.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/vshaxe/hashlink-debugger/issues/97#issuecomment-840075634, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAHZXQFDIYQDRZ4K5QXMWQLTNLQIHANCNFSM44GRAKDA .

rcstuber commented 3 years ago

@ncannasse Yes works, I updated my reply. If that's the case you could also adapt the README for manual installation to simply run npm install.

deepnight commented 3 years ago

Where can we get the fixed build? 🤔

ncannasse commented 3 years ago

If you update to vscode 1.56 it will install (v 1.1.2)

Le jeu. 13 mai 2021 à 16:35, Sébastien Bénard @.***> a écrit :

Where can we get the fixed build? 🤔

— You are receiving this because you modified the open/close state. Reply to this email directly, view it on GitHub https://github.com/vshaxe/hashlink-debugger/issues/97#issuecomment-840603458, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAHZXQHMKWVGSXLWFUZULILTNPPSJANCNFSM44GRAKDA .

deepnight commented 3 years ago

👌

hammeron-art commented 3 years ago

I'm with the same issue in vscode 1.57.1 and hashlink-debugger 1.1.2 Windows. It builds but nothing happens after it.

matrefeytontias commented 3 years ago

Same here with VS Code 1.61.1 and hashlink-debugger v1.1.2 Windows. Most of the time it works, but then the debugger will randomly refuse to run with Could not start debugger on port 6112. No idea how to make it work again apart from a complete reboot of the computer, as reloading the environment won't unlock it.