title: Electron 7 fails to build native modules
body: <p>I'm building an electron app that is running native modules. I upgraded to Electron 7 but since then I'm getting the following error when I'm building the app using electron-forge.</p>
  
  <p>I also upgraded my node version to 12.8.1. </p>
  
  <p>In order to load native modules, I'm using a <a href="https://www.npmjs.com/package/@saleae/ffi" rel="nofollow noreferrer">fork</a> of node-ffi.</p>
  
  <p>How do I fix that?</p>
  
  <p>Thanks!</p>
  
  <pre><code>An unhandled error has occurred inside Forge:
  gyp info it worked if it ends with ok
  gyp info using node-gyp@5.0.5
  gyp info using node@12.8.1 | darwin | x64
  gyp info find Python using Python version 2.7.16 found at "/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python"
  gyp info spawn /System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python
  gyp info spawn args [
  gyp info spawn args   '/Users/rani/Documents/Code/Saleae/monorepo/packages/electron/node_modules/node-gyp/gyp/gyp_main.py',
  gyp info spawn args   'binding.gyp',
  gyp info spawn args   '-f',
  gyp info spawn args   'make',
  gyp info spawn args   '-I',
  gyp info spawn args   '/Users/rani/Documents/Code/Saleae/monorepo/packages/electron/node_modules/ref/build/config.gypi',
  gyp info spawn args   '-I',
  gyp info spawn args   '/Users/rani/Documents/Code/Saleae/monorepo/packages/electron/node_modules/node-gyp/addon.gypi',
  gyp info spawn args   '-I',
  gyp info spawn args   '/Users/rani/.electron-gyp/7.1.0/include/node/common.gypi',
  gyp info spawn args   '-Dlibrary=shared_library',
  gyp info spawn args   '-Dvisibility=default',
  gyp info spawn args   '-Dnode_root_dir=/Users/rani/.electron-gyp/7.1.0',
  gyp info spawn args   '-Dnode_gyp_dir=/Users/rani/Documents/Code/Saleae/monorepo/packages/electron/node_modules/node-gyp',
  gyp info spawn args   '-Dnode_lib_file=/Users/rani/.electron-gyp/7.1.0/&lt;(target_arch)/node.lib',
  gyp info spawn args   '-Dmodule_root_dir=/Users/rani/Documents/Code/Saleae/monorepo/packages/electron/node_modules/ref',
  gyp info spawn args   '-Dnode_engine=v8',
  gyp info spawn args   '--depth=.',
  gyp info spawn args   '--no-parallel',
  gyp info spawn args   '--generator-output',
  gyp info spawn args   'build',
  gyp info spawn args   '-Goutput_dir=.'
  gyp info spawn args ]
  gyp info spawn make
  gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
    CXX(target) Release/obj.target/binding/src/binding.o
  ../src/binding.cc:222:30: error: no matching member function for call to 'BooleanValue'
    bool persistent = info[3]-&gt;BooleanValue(v8::Isolate::GetCurrent()-&gt;GetCurrentContext()).ToChecked();
                      ~~~~~~~~~^~~~~~~~~~~~
  /Users/rani/.electron-gyp/7.1.0/include/node/v8.h:2653:8: note: candidate function not viable: no known conversion from 'Local&lt;v8::Context&gt;' to 'v8::Isolate *' for 1st argument
    bool BooleanValue(Isolate* isolate) const;
         ^
  /Users/rani/.electron-gyp/7.1.0/include/node/v8.h:2662:43: note: candidate function not viable: requires 0 arguments, but 1 was provided
    V8_DEPRECATED("Use maybe version", bool BooleanValue() const);
                                            ^
  ../src/binding.cc:582:3: error: no matching member function for call to 'Set'
    SET_SIZEOF(int8, int8_t);
    ^~~~~~~~~~~~~~~~~~~~~~~~
  ../src/binding.cc:581:9: note: expanded from macro 'SET_SIZEOF'
    smap-&gt;Set(Nan::New&lt;v8::String&gt;( #name ).ToLocalChecked(), Nan::New&lt;v8::Uint32&gt;(static_cast&lt;uint32_t&gt;(sizeof(type))));
    ~~~~~~^~~
  /Users/rani/.electron-gyp/7.1.0/include/node/v8.h:3455:37: note: candidate function not viable: requires 3 arguments, but 2 were provided
    V8_WARN_UNUSED_RESULT Maybe&lt;bool&gt; Set(Local&lt;Context&gt; context,
                                      ^
  /Users/rani/.electron-gyp/7.1.0/include/node/v8.h:3458:37: note: candidate function not viable: requires 3 arguments, but 2 were provided
    V8_WARN_UNUSED_RESULT Maybe&lt;bool&gt; Set(Local&lt;Context&gt; context, uint32_t index,
                                      ^
  ../src/binding.cc:583:3: error: no matching member function for call to 'Set'
    SET_SIZEOF(uint8, uint8_t);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~
  ...
  </code></pre>