You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jun 18, 2021. It is now read-only.
Repository navigation
This repository was archived by the owner on Jun 18, 2021. It is now read-only.
IIRC the due (and timeout fields used on non-Windows) are private fields that we ended up using as there wasn't a public way to read the timer information. Long term the correct thing to is probably look at libuv/libuv#1255 again -- In the meantime we should see if we can work around this in node-report.
@mhdawson Yes. My fear is this is only fixable at compile time, which would mean any node-report binaries compiled against Node.js v10 prior to the libuv update (<v10.7.0) would be incompatible with Node.js v10 post libuv update (>v10.7.0) and vice versa.
For reference, against Node.js v10, the reported failure on Windows looks like this:
> node-gyp rebuild
C:\workspace\nodereport-continuous-integration\MACHINE\win2012r2\node-report>if not defined npm_config_node_gyp (node "C:\workspace\nodereport-continuous-integration\MACHINE\win2012r2\node-v10.7.0-win-x64\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "C:\workspace\nodereport-continuous-integration\MACHINE\win2012r2\node-v10.7.0-win-x64\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" rebuild )
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
node_report.cc
module.cc
utilities.cc
win_delay_load_hook.cc
C:\Program Files (x86)\Windows Kits\8.1\Include\um\dbghelp.h(1544): warning C4091: 'typedef ': ignored on left of '' when no variable is declared (compiling source file ..\src\node_report.cc) [C:\workspace\nodereport-continuous-integration\MACHINE\win2012r2\node-report\build\api.vcxproj]
C:\Program Files (x86)\Windows Kits\8.1\Include\um\dbghelp.h(3190): warning C4091: 'typedef ': ignored on left of '' when no variable is declared (compiling source file ..\src\node_report.cc) [C:\workspace\nodereport-continuous-integration\MACHINE\win2012r2\node-report\build\api.vcxproj]
..\src\utilities.cc(421): error C2039: 'due': is not a member of 'uv_timer_s' [C:\workspace\nodereport-continuous-integration\MACHINE\win2012r2\node-report\build\api.vcxproj]
C:\Users\Administrator\.node-gyp\10.7.0\include\node\uv.h(800): note: see declaration of 'uv_timer_s'
gyp ERR! build error
@richardlau the potential incompatibility with the Node binary is another good reason why moving into core is a good idea. Please update if you figure out what the impact is going to be.
Activity
richardlau commentedon Jul 30, 2018
IIRC the
due(andtimeoutfields used on non-Windows) are private fields that we ended up using as there wasn't a public way to read the timer information. Long term the correct thing to is probably look at libuv/libuv#1255 again -- In the meantime we should see if we can work around this in node-report.mhdawson commentedon Jul 30, 2018
@richardlau are you investigating how to work around it?
richardlau commentedon Jul 31, 2018
@mhdawson Yes. My fear is this is only fixable at compile time, which would mean any node-report binaries compiled against Node.js v10 prior to the libuv update (<v10.7.0) would be incompatible with Node.js v10 post libuv update (>v10.7.0) and vice versa.
richardlau commentedon Jul 31, 2018
I'm also updating https://ci.nodejs.org/job/nodereport-continuous-integration/ to add v10 and update the nightly version (nodejs/build#1421).
For reference, against Node.js v10, the reported failure on Windows looks like this:
https://ci.nodejs.org/job/nodereport-continuous-integration/215/MACHINE=win2012r2/console
mhdawson commentedon Aug 2, 2018
@richardlau the potential incompatibility with the Node binary is another good reason why moving into core is a good idea. Please update if you figure out what the impact is going to be.
Fix build on Windows with libuv 1.22 and later
richardlau commentedon Dec 19, 2018
In the end it turns out this is much simpler than anticipated since libuv/libuv@95c5bf8#diff-8eef231986656444fd461ec05249614cL533 preserved the layout of the structs. Fix in #118.
Fix build on Windows with libuv 1.22 and later