Update native modules doc

This commit is contained in:
Eran Tiktin 2015-10-05 17:48:48 +03:00
parent c22ffd863b
commit 87e0c812e9

View file

@ -6,16 +6,17 @@ the location of Electron's headers when building native modules.
## Native Node Module Compatibility ## Native Node Module Compatibility
Since Node v0.11.x there were vital changes in the V8 API. So generally all Native modules might break when Node starts using a new version of V8.
native modules written for Node v0.10.x won't work for newer Node or io.js To make sure the module you're interested in will work with Electron, you should
versions. And because Electron internally uses __io.js v3.1.0__, it has the check if it supports the internal Node version used by Electron.
same problem. You can check what version of Node is used in Electron by looking it up in
the [releases](https://github.com/atom/electron/releases) page or by using
`process.version` (see [Quick Start](https://github.com/atom/electron/blob/master/docs/tutorial/quick-start.md)
for example).
To solve this, you should use modules that support Node v0.11.x or later, Consider using [NAN](https://github.com/nodejs/nan/) for your own modules, since
[many modules](https://www.npmjs.org/browse/depended/nan) do support both now. it makes it easier to support multiple versions of Node. It's also helpful for
For old modules that only support Node v0.10.x, you should use the porting old modules to newer versions of Node so they can work with Electron.
[nan](https://github.com/rvagg/nan) module to port it to v0.11.x or later
versions of Node or io.js.
## How to Install Native Modules ## How to Install Native Modules