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
Copy file name to clipboardExpand all lines: docs/reference/content/installation-guide/index.md
+14-7Lines changed: 14 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -28,20 +28,27 @@ The MongoDB driver depends on several other packages, including:
28
28
* mongodb-core
29
29
* bson
30
30
* kerberos
31
+
* bson-ext
31
32
* node-gyp
32
33
33
-
The only native extension is the `kerberos`extension. This is a `peer dependency` for the `mongodb` module. This means that if you need to use `kerberos` you will need to add the `kerberos` module to your module's dependencies.
34
+
The `kerberos`and `bson-ext` extensions are native C++ extension. These are optional extensions and are not required for the driver to function.
34
35
35
-
If you have **NPM 2.0** or earlier NPM will attempt to download and build the `kerberos` module if you do not have it defined as a dependency in your module. However, from **NPM 3.0** onwards NPM will not attempt to build the `kerberos` module but instead print a warning in your install log that looks something like the following.
36
+
## bson-ext Module
37
+
38
+
The `bson-ext` module is an alternative **BSON** parser that is written in C++. It delivers better deserialization performance and similar or somewhat better serialization performance to the pure javascript parser.
39
+
40
+
If you wish to use the `bson-ext` module you will need to add the `bson-ext` module to your module's dependencies.
36
41
37
42
```
38
-
npm WARN EPEERINVALID [email protected] requires a peer of kerberos@~0.0 but none was installed.
43
+
npm install bson-ext --save
39
44
```
40
45
41
-
This tells you that the driver could not resolve its `peer dependency`. However, don't worry. You only need the `kerberos` module if you intend to use `kerberos`, in which case you can add it to your package.json by doing the following:
46
+
## kerberos Module
47
+
48
+
If you need to use `kerberos` module you will need to add the `kerberos` module to your module's dependencies.
42
49
43
50
```
44
-
npm install kerberos@0.0.x
51
+
npm install kerberos --save
45
52
```
46
53
47
54
The `kerberos` package is a C++ extension that requires a build environment to be installed on your system. You must be able to build Node.js itself to be able to compile and install the `kerberos` module. Furthermore the `kerberos` module requires the MIT Kerberos package to correctly compile on UNIX operating systems. Consult your UNIX operating system package manager for what libraries to install.
@@ -109,8 +116,8 @@ This should rebuild the driver successfully if you have everything set up correc
109
116
110
117
### Other possible issues
111
118
112
-
If Python is installed incorrectly, it can cause problems for `gyp`. It's a good idea to test your
113
-
deployment environment first by trying to build Node.js itself on the server in question, as this should unearth
119
+
If Python is installed incorrectly, it can cause problems for `gyp`. It's a good idea to test your
120
+
deployment environment first by trying to build Node.js itself on the server in question, as this should unearth
114
121
any issues with broken packages (and there are a lot of broken packages out there).
115
122
116
123
Another thing is to ensure your user has write permission to wherever the Node.js modules are being installed.
0 commit comments