iohook icon indicating copy to clipboard operation
iohook copied to clipboard

Does not work in nodejs v14.0.0+

Open jincandev opened this issue 3 years ago • 17 comments

Expected Behavior

Works in nodejs v14.0.0+

Current Behavior

Negative!

Possible Solution

Steps to Reproduce (for bugs)

  1. Install Nodejs v14.16.0 and msys2

  2. download iohook-master from github

  3. run the command node build.js --runtime node --version 14.16.0 --abi 83 --no-upload and output iohook.node and uiohook.dll after build success

  4. It's interrupted when run with nodejs application but no any exception,for example: image

  5. After testing, the built file is available when I switch the Nodejs's version back to v12.6.0,

Context

Your Environment

  • Version used: node.js 14.16.0
  • Environment name and version (e.g. Chrome 39, node.js 5.4):
  • Operating System and version (desktop or mobile):
  • Link to your project:

jincandev avatar Apr 20 '21 09:04 jincandev

Broken on Node 14 for Linux too.

metal450 avatar May 01 '21 00:05 metal450

unninstall on control painel and install 12.13 on this link https://nodejs.org/en/blog/release/v12.13.0/ it worked for me

Rabyt avatar Jun 05 '21 11:06 Rabyt

I can't replicate this. I'm using Node 14 on both linux and windows. Please inform if this issue is still happening.

ash0x0 avatar Jun 11 '21 17:06 ash0x0

@ash0x0 image

There's still something wrong with my computer

jincandev avatar Jun 15 '21 06:06 jincandev

also having similar issues with node 14.11.0

BrentAureli avatar Jun 17 '21 03:06 BrentAureli

There are other issues blocking this from being fixed right now. I suspect it's related to another issue in input helper. If someone has added info or traces please provide them. Otherwise, this is on my todo once blocking issues have been fixed. Possible workaround: using another version of node, try 12 maybe.

ash0x0 avatar Jun 17 '21 04:06 ash0x0

Any ETA when this can be fixed? Appreciate for looking inot it.

veeramarni avatar Jul 26 '21 16:07 veeramarni

Any ETA when this can be fixed? Appreciate for looking inot it.

Unfortunately this one is a big one. It basically requires changing the addon definition and how it's built as well as some core code. Not soon I'd say unless someone can take it on.

ash0x0 avatar Jul 31 '21 15:07 ash0x0

This affects nodejs only right? I want to make sure Electron works fine.

veeramarni avatar Jul 31 '21 15:07 veeramarni

Well, to use electron you still need the node package in development. IF (big if) this works with a node 14+ and electron <12 combination then it'd only work in production (after electron app is packaged) and not in development. This will probably work but it'd be a massive pain to say the least because you wouldn't be able to run in development. You could disable the use of iohook in development and you'd test it in production to get around that issue for what that's worth.

ash0x0 avatar Jul 31 '21 15:07 ash0x0

Is there a branch you working on for these issues? Just want to know whether we reached dead-end using this package or will have updates soon. If you can provide more instructions on how to solve the issues, we can see if anyone of us with C language experience to engage in this project.

veeramarni avatar Aug 02 '21 15:08 veeramarni

Is there a branch you working on for these issues? Just want to know whether we reached dead-end using this package or will have updates soon. If you can provide more instructions on how to solve the issues, we can see if anyone of us with C language experience to engage in this project.

I didn't work on this issue. More focused on getting things working that don't require major overhaul or that I actually have pinned down. I don't have this one pinned down and not sure what the reason is because I haven't been able to repro but my best guess is this is related to the gyp definition and would require updating to make sure it works for versions 14+.

ash0x0 avatar Aug 02 '21 15:08 ash0x0

@ash0x0 Ok I will check on the gyp definition then if it is just because of node version change. Also, should this repo use the latest 1.2 version of libuiohook?

veeramarni avatar Aug 02 '21 15:08 veeramarni

@ash0x0 Ok I will check on the gyp definition then if it is just because of node version change. Also, should this repo use the latest 1.2 version of libuiohook?

No unfortunately. I tried to rebase on latest and things broke. The libuiohook included in the repo is heavily modified with fixes for iohook so it'll require some careful cherrypicking work to update libuiohook and it'll require updating the addon code as well.

ash0x0 avatar Aug 02 '21 15:08 ash0x0

What do you need to get this issue reproduced so you can look into the Node 14?

veeramarni avatar Aug 02 '21 16:08 veeramarni

What do you need to get this issue reproduced so you can look into the Node 14?

Even if I do repro it, I really don't have the time for it now. If you're in a rush I suggest you downgrade your node version. If you can't, I'd say try another 14.x version. It's working for me with 14.17.4 and electron 12 in both development and production.

ash0x0 avatar Aug 02 '21 17:08 ash0x0

same issue with node versions: v14.17.6 v14.18.1

etapic avatar Oct 20 '21 20:10 etapic