Skip to content

Commit 077e61e

Browse files
remove unnecessary dependencies from node bindings
1 parent 6269b22 commit 077e61e

13 files changed

+596
-3535
lines changed

.evergreen/config.yml

+1-55
Original file line numberDiff line numberDiff line change
@@ -512,23 +512,11 @@ tasks:
512512
vars:
513513
test_env: PROJECT_DIRECTORY=${project_directory}
514514

515-
- name: build-and-test-node
516-
commands:
517-
- func: "fetch source"
518-
- func: "build and test node"
519-
- func: "attach node xunit results"
520-
521515
- name: build-and-publish-node
522516
commands:
523517
- func: "fetch source"
524518
- func: "build and publish node"
525519

526-
- name: build-and-test-node-no-peer-dependencies
527-
commands:
528-
- func: "fetch source"
529-
- func: "build and test node no peer dependencies"
530-
- func: "attach node xunit results"
531-
532520
# Note: keep this disabled unless you want master to force-push
533521
- name: build-and-test-node-force-publish
534522
commands:
@@ -927,7 +915,7 @@ tasks:
927915
- name: rpm-package-build
928916
tags: [packaging]
929917
run_on: &docker-distros
930-
# * The RHEL76-docker distro runs an old and unsupported version of Docker.
918+
# * The RHEL76-docker distro runs an old and unsupported version of Docker.
931919
# * (We requires the --mount parameter)
932920
- ubuntu2004-small
933921
- ubuntu2004
@@ -1003,8 +991,6 @@ buildvariants:
1003991
- build-and-test-and-upload
1004992
- build-and-test-shared-bson
1005993
- build-and-test-asan
1006-
- build-and-test-node
1007-
- build-and-test-node-no-peer-dependencies
1008994
- build-and-publish-node
1009995
- test-java
1010996
- name: publish-packages
@@ -1017,8 +1003,6 @@ buildvariants:
10171003
- build-and-test-and-upload
10181004
- build-and-test-shared-bson
10191005
- build-and-test-asan-mac
1020-
- build-and-test-node
1021-
- build-and-test-node-no-peer-dependencies
10221006
- build-and-publish-node
10231007
- build-and-test-csharp
10241008
- test-python
@@ -1063,8 +1047,6 @@ buildvariants:
10631047
- build-and-test-and-upload
10641048
- build-and-test-shared-bson
10651049
- build-and-test-csharp
1066-
- build-and-test-node
1067-
- build-and-test-node-no-peer-dependencies
10681050
- build-and-publish-node
10691051
- test-java
10701052
- windows-upload-check
@@ -1090,8 +1072,6 @@ buildvariants:
10901072
tasks:
10911073
- build-and-test-and-upload
10921074
- build-and-test-shared-bson
1093-
- build-and-test-node
1094-
- build-and-test-node-no-peer-dependencies
10951075
- test-java
10961076
- name: publish-packages
10971077
distros:
@@ -1108,8 +1088,6 @@ buildvariants:
11081088
- build-and-test-and-upload
11091089
- build-and-test-shared-bson
11101090
- build-and-test-asan
1111-
- build-and-test-node
1112-
- build-and-test-node-no-peer-dependencies
11131091
- test-java
11141092
- name: publish-packages
11151093
distros:
@@ -1126,8 +1104,6 @@ buildvariants:
11261104
- build-and-test-and-upload
11271105
- build-and-test-shared-bson
11281106
- build-and-test-asan
1129-
- build-and-test-node
1130-
- build-and-test-node-no-peer-dependencies
11311107
- name: publish-packages
11321108
distros:
11331109
- rhel70-small
@@ -1142,8 +1118,6 @@ buildvariants:
11421118
- build-and-test-and-upload
11431119
- build-and-test-shared-bson
11441120
- build-and-test-asan
1145-
- build-and-test-node
1146-
- build-and-test-node-no-peer-dependencies
11471121
- test-java
11481122
- name: publish-packages
11491123
distros:
@@ -1159,8 +1133,6 @@ buildvariants:
11591133
- build-and-test-and-upload
11601134
- build-and-test-shared-bson
11611135
- build-and-test-asan
1162-
- build-and-test-node
1163-
- build-and-test-node-no-peer-dependencies
11641136
- test-java
11651137
- name: publish-packages
11661138
distros:
@@ -1177,8 +1149,6 @@ buildvariants:
11771149
- build-and-test-and-upload
11781150
- build-and-test-shared-bson
11791151
- build-and-test-asan
1180-
- build-and-test-node
1181-
- build-and-test-node-no-peer-dependencies
11821152
- test-java
11831153
- name: publish-packages
11841154
distros:
@@ -1208,8 +1178,6 @@ buildvariants:
12081178
tasks:
12091179
- build-and-test-and-upload
12101180
- build-and-test-shared-bson
1211-
- build-and-test-node
1212-
- build-and-test-node-no-peer-dependencies
12131181
- test-python
12141182
- test-java
12151183
- name: publish-packages
@@ -1239,8 +1207,6 @@ buildvariants:
12391207
tasks:
12401208
- build-and-test-and-upload
12411209
- build-and-test-shared-bson
1242-
- build-and-test-node
1243-
- build-and-test-node-no-peer-dependencies
12441210
- test-java
12451211
- name: publish-packages
12461212
distros:
@@ -1257,8 +1223,6 @@ buildvariants:
12571223
- build-and-test-and-upload
12581224
- build-and-test-shared-bson
12591225
- build-and-test-asan
1260-
- build-and-test-node
1261-
- build-and-test-node-no-peer-dependencies
12621226
- test-java
12631227
- name: publish-packages
12641228
distros:
@@ -1275,8 +1239,6 @@ buildvariants:
12751239
- build-and-test-and-upload
12761240
- build-and-test-shared-bson
12771241
- build-and-test-asan
1278-
- build-and-test-node
1279-
- build-and-test-node-no-peer-dependencies
12801242
- test-java
12811243
- name: publish-packages
12821244
distros:
@@ -1293,8 +1255,6 @@ buildvariants:
12931255
- build-and-test-and-upload
12941256
- build-and-test-shared-bson
12951257
- build-and-test-asan
1296-
- build-and-test-node
1297-
- build-and-test-node-no-peer-dependencies
12981258
- build-and-publish-node
12991259
- test-java
13001260
- name: publish-packages
@@ -1312,8 +1272,6 @@ buildvariants:
13121272
- build-and-test-and-upload
13131273
- build-and-test-shared-bson
13141274
- build-and-test-asan
1315-
- build-and-test-node
1316-
- build-and-test-node-no-peer-dependencies
13171275
- build-and-test-csharp
13181276
- test-java
13191277
- name: publish-packages
@@ -1341,8 +1299,6 @@ buildvariants:
13411299
- build-and-test-and-upload
13421300
- build-and-test-shared-bson
13431301
- build-and-test-asan
1344-
- build-and-test-node
1345-
- build-and-test-node-no-peer-dependencies
13461302
- test-java
13471303
- name: publish-packages
13481304
distros:
@@ -1360,8 +1316,6 @@ buildvariants:
13601316
- build-and-test-and-upload
13611317
- build-and-test-shared-bson
13621318
- build-and-test-asan
1363-
- build-and-test-node
1364-
- build-and-test-node-no-peer-dependencies
13651319
- build-and-test-csharp
13661320
- test-java
13671321
- upload-java
@@ -1378,8 +1332,6 @@ buildvariants:
13781332
- build-and-test-and-upload
13791333
- build-and-test-shared-bson
13801334
- build-and-test-asan
1381-
- build-and-test-node
1382-
- build-and-test-node-no-peer-dependencies
13831335
- test-java
13841336
- name: publish-packages
13851337
distros:
@@ -1397,8 +1349,6 @@ buildvariants:
13971349
- build-and-test-and-upload
13981350
- build-and-test-shared-bson
13991351
- build-and-test-asan
1400-
- build-and-test-node
1401-
- build-and-test-node-no-peer-dependencies
14021352
# see https://jira.mongodb.org/browse/MONGOCRYPT-515
14031353
#- build-and-test-csharp
14041354
- test-java
@@ -1417,8 +1367,6 @@ buildvariants:
14171367
- build-and-test-and-upload
14181368
- build-and-test-shared-bson
14191369
- build-and-test-asan
1420-
- build-and-test-node
1421-
- build-and-test-node-no-peer-dependencies
14221370
- test-java
14231371
- name: publish-packages
14241372
distros:
@@ -1447,8 +1395,6 @@ buildvariants:
14471395
compile_env: MACOS_UNIVERSAL=ON CMAKE=/opt/homebrew/bin/cmake
14481396
tasks:
14491397
- build-and-test-and-upload
1450-
- build-and-test-node
1451-
- build-and-test-node-no-peer-dependencies
14521398
- build-and-publish-node
14531399
- test-python
14541400
- test-java

bindings/node/.eslintrc.json

+18-5
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,11 @@
22
"root": true,
33
"extends": [
44
"eslint:recommended",
5-
"plugin:prettier/recommended"
5+
"plugin:prettier/recommended",
6+
"plugin:@typescript-eslint/eslint-recommended",
7+
"plugin:@typescript-eslint/recommended"
68
],
9+
"ignorePatterns": "lib/**/*",
710
"env": {
811
"node": true,
912
"mocha": true,
@@ -13,6 +16,7 @@
1316
"ecmaVersion": 2019
1417
},
1518
"plugins": [
19+
"@typescript-eslint",
1620
"prettier"
1721
],
1822
"rules": {
@@ -34,8 +38,17 @@
3438
"prettier/prettier": "error",
3539
"no-console": "error",
3640
"valid-typeof": "error",
37-
"eqeqeq": ["error", "always", {"null": "ignore"}],
38-
"strict": ["error", "global"],
41+
"eqeqeq": [
42+
"error",
43+
"always",
44+
{
45+
"null": "ignore"
46+
}
47+
],
48+
"strict": [
49+
"error",
50+
"global"
51+
],
3952
"no-restricted-syntax": [
4053
"error",
4154
{
@@ -58,9 +71,9 @@
5871
},
5972
"overrides": [
6073
{
61-
// Settings for javascript test files
74+
// Settings for test files
6275
"files": [
63-
"test/**/*.js"
76+
"test/**/*.ts"
6477
],
6578
"rules": {
6679
"no-console": "off",

bindings/node/.gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,7 @@ deps
2020
*.tgz
2121

2222
xunit.xml
23+
24+
# built typescript
25+
lib
26+
prebuilds
File renamed without changes.
File renamed without changes.

bindings/node/binding.gyp

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
]
1919
},
2020
'sources': [
21-
'src/mongocrypt.cc'
21+
'addon/mongocrypt.cc'
2222
],
2323
'xcode_settings': {
2424
'GCC_ENABLE_CPP_EXCEPTIONS': 'YES',

bindings/node/etc/prepare.js

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
#! /usr/bin/env node
2+
var cp = require('child_process');
3+
var fs = require('fs');
4+
var os = require('os');
5+
6+
if (fs.existsSync('src')) {
7+
cp.spawn('npm', ['run', 'build:ts'], { stdio: 'inherit', shell: os.platform() === 'win32' });
8+
} else {
9+
if (!fs.existsSync('lib')) {
10+
console.warn('MongoDB: No compiled javascript present, the driver is not installed correctly.');
11+
}
12+
}

0 commit comments

Comments
 (0)