From 55e31c402514d139a92dcb92c8019d4570169592 Mon Sep 17 00:00:00 2001 From: Francis Tyers Date: Wed, 21 Oct 2020 16:06:54 +0100 Subject: [PATCH] update for NodeJS 15 --- native_client/javascript/Makefile | 7 +- .../javascript/abi_crosswalk_priv.json | 2206 +++++++++++++++++ taskcluster/.shared.yml | 16 +- taskcluster/tc-all-vars.sh | 4 +- taskcluster/tc-electron-tests.sh | 3 + taskcluster/tc-electron_tflite-tests.sh | 3 + taskcluster/tc-node-tests-prod.sh | 3 + taskcluster/tc-node-tests.sh | 3 + taskcluster/tc-node_tflite-tests-prod.sh | 3 + taskcluster/tc-node_tflite-tests.sh | 3 + .../test-nodejs_15x-armbian-arm64-opt.yml | 14 + .../test-nodejs_15x-darwin-amd64-opt.yml | 15 + .../test-nodejs_15x-raspbian-rpi3-opt.yml | 14 + taskcluster/test-nodejs_15x-win-amd64-opt.yml | 14 + .../test-nodejs_15x_16k-linux-amd64-opt.yml | 16 + ...s_15x_16k-linux-amd64-prod_pbmodel-opt.yml | 14 + ...s_15x_16k_multiarchpkg-linux-amd64-opt.yml | 16 + ...tiarchpkg-linux-amd64-prod_pbmodel-opt.yml | 14 + ..._15x_16k_multiarchpkg-linux-tflite-opt.yml | 16 + ...js_15x_16k_tflite-linux-amd64-prod-opt.yml | 14 + .../test-nodejs_15x_8k-linux-amd64-opt.yml | 16 + ...js_15x_8k-linux-amd64-prod_pbmodel-opt.yml | 14 + ...js_15x_8k_multiarchpkg-linux-amd64-opt.yml | 16 + ...tiarchpkg-linux-amd64-prod_pbmodel-opt.yml | 14 + ...s_15x_8k_multiarchpkg-linux-tflite-opt.yml | 16 + ...ejs_15x_8k_tflite-linux-amd64-prod-opt.yml | 14 + ...ejs_15x_multiarchpkg-armbian-arm64-opt.yml | 14 + ...dejs_15x_multiarchpkg-darwin-amd64-opt.yml | 15 + ...ejs_15x_multiarchpkg-darwin-tflite-opt.yml | 15 + ...ejs_15x_multiarchpkg-raspbian-rpi3-opt.yml | 14 + ...-nodejs_15x_multiarchpkg-win-amd64-opt.yml | 14 + ...t-nodejs_15x_multiarchpkg-win-cuda-opt.yml | 14 + ...nodejs_15x_multiarchpkg-win-tflite-opt.yml | 14 + 33 files changed, 2578 insertions(+), 10 deletions(-) create mode 100644 native_client/javascript/abi_crosswalk_priv.json create mode 100644 taskcluster/test-nodejs_15x-armbian-arm64-opt.yml create mode 100644 taskcluster/test-nodejs_15x-darwin-amd64-opt.yml create mode 100644 taskcluster/test-nodejs_15x-raspbian-rpi3-opt.yml create mode 100644 taskcluster/test-nodejs_15x-win-amd64-opt.yml create mode 100644 taskcluster/test-nodejs_15x_16k-linux-amd64-opt.yml create mode 100644 taskcluster/test-nodejs_15x_16k-linux-amd64-prod_pbmodel-opt.yml create mode 100644 taskcluster/test-nodejs_15x_16k_multiarchpkg-linux-amd64-opt.yml create mode 100644 taskcluster/test-nodejs_15x_16k_multiarchpkg-linux-amd64-prod_pbmodel-opt.yml create mode 100644 taskcluster/test-nodejs_15x_16k_multiarchpkg-linux-tflite-opt.yml create mode 100644 taskcluster/test-nodejs_15x_16k_tflite-linux-amd64-prod-opt.yml create mode 100644 taskcluster/test-nodejs_15x_8k-linux-amd64-opt.yml create mode 100644 taskcluster/test-nodejs_15x_8k-linux-amd64-prod_pbmodel-opt.yml create mode 100644 taskcluster/test-nodejs_15x_8k_multiarchpkg-linux-amd64-opt.yml create mode 100644 taskcluster/test-nodejs_15x_8k_multiarchpkg-linux-amd64-prod_pbmodel-opt.yml create mode 100644 taskcluster/test-nodejs_15x_8k_multiarchpkg-linux-tflite-opt.yml create mode 100644 taskcluster/test-nodejs_15x_8k_tflite-linux-amd64-prod-opt.yml create mode 100644 taskcluster/test-nodejs_15x_multiarchpkg-armbian-arm64-opt.yml create mode 100644 taskcluster/test-nodejs_15x_multiarchpkg-darwin-amd64-opt.yml create mode 100644 taskcluster/test-nodejs_15x_multiarchpkg-darwin-tflite-opt.yml create mode 100644 taskcluster/test-nodejs_15x_multiarchpkg-raspbian-rpi3-opt.yml create mode 100644 taskcluster/test-nodejs_15x_multiarchpkg-win-amd64-opt.yml create mode 100644 taskcluster/test-nodejs_15x_multiarchpkg-win-cuda-opt.yml create mode 100644 taskcluster/test-nodejs_15x_multiarchpkg-win-tflite-opt.yml diff --git a/native_client/javascript/Makefile b/native_client/javascript/Makefile index a3543d53..05eaff55 100644 --- a/native_client/javascript/Makefile +++ b/native_client/javascript/Makefile @@ -6,11 +6,14 @@ PROJECT_NAME ?= deepspeech PROJECT_VERSION ?= $(shell cat ../../training/deepspeech_training/VERSION | tr -d '\n') NPM_ROOT ?= $(shell npm root) +NODE_PRE_GYP_ABI_CROSSWALK_FILE ?= $(NPM_ROOT)/../abi_crosswalk_priv.json + NODE_MODULES_BIN ?= $(NPM_ROOT)/.bin/ ifeq ($(findstring _NT,$(OS)),_NT) # On Windows, we seem to need both in PATH for node-pre-gyp as well as tsc # they do not get installed the same way. NODE_MODULES_BIN := $(shell cygpath -u $(NPM_ROOT)/.bin/):$(shell cygpath -u `dirname "$(NPM_ROOT)"`) +NODE_PRE_GYP_ABI_CROSSWALK_FILE := $(shell cygpath -u $(NPM_ROOT)/../abi_crosswalk_priv.json) endif include ../definitions.mk @@ -47,13 +50,13 @@ configure: deepspeech_wrap.cxx package.json npm-dev PATH="$(NODE_MODULES_BIN):${PATH}" $(NODE_BUILD_TOOL) configure $(NODE_BUILD_VERBOSE) build: configure deepspeech_wrap.cxx - PATH="$(NODE_MODULES_BIN):${PATH}" AS=$(AS) CC=$(CC) CXX=$(CXX) LD=$(LD) CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(RPATH_NODEJS) $(LDFLAGS)" LIBS=$(LIBS) $(NODE_BUILD_TOOL) $(NODE_PLATFORM_TARGET) $(NODE_RUNTIME) $(NODE_ABI_TARGET) $(NODE_DEVDIR) $(NODE_DIST_URL) --no-color rebuild $(NODE_BUILD_VERBOSE) + PATH="$(NODE_MODULES_BIN):${PATH}" NODE_PRE_GYP_ABI_CROSSWALK=$(NODE_PRE_GYP_ABI_CROSSWALK_FILE) AS=$(AS) CC=$(CC) CXX=$(CXX) LD=$(LD) CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(RPATH_NODEJS) $(LDFLAGS)" LIBS=$(LIBS) $(NODE_BUILD_TOOL) $(NODE_PLATFORM_TARGET) $(NODE_RUNTIME) $(NODE_ABI_TARGET) $(NODE_DEVDIR) $(NODE_DIST_URL) --no-color rebuild $(NODE_BUILD_VERBOSE) copy-deps: build $(call copy_missing_libs,lib/binding/*/*/*/deepspeech.node,lib/binding/*/*/) node-wrapper: copy-deps build - PATH="$(NODE_MODULES_BIN):${PATH}" $(NODE_BUILD_TOOL) $(NODE_PLATFORM_TARGET) $(NODE_RUNTIME) $(NODE_ABI_TARGET) $(NODE_DEVDIR) $(NODE_DIST_URL) --no-color package $(NODE_BUILD_VERBOSE) + PATH="$(NODE_MODULES_BIN):${PATH}" NODE_PRE_GYP_ABI_CROSSWALK=$(NODE_PRE_GYP_ABI_CROSSWALK_FILE) $(NODE_BUILD_TOOL) $(NODE_PLATFORM_TARGET) $(NODE_RUNTIME) $(NODE_ABI_TARGET) $(NODE_DEVDIR) $(NODE_DIST_URL) --no-color package $(NODE_BUILD_VERBOSE) npm-pack: clean package.json index.ts npm-dev PATH="$(NODE_MODULES_BIN):${PATH}" tsc && $(NPM_TOOL) pack $(NODE_BUILD_VERBOSE) diff --git a/native_client/javascript/abi_crosswalk_priv.json b/native_client/javascript/abi_crosswalk_priv.json new file mode 100644 index 00000000..d6294739 --- /dev/null +++ b/native_client/javascript/abi_crosswalk_priv.json @@ -0,0 +1,2206 @@ +{ + "0.1.14": { + "node_abi": null, + "v8": "1.3" + }, + "0.1.15": { + "node_abi": null, + "v8": "1.3" + }, + "0.1.16": { + "node_abi": null, + "v8": "1.3" + }, + "0.1.17": { + "node_abi": null, + "v8": "1.3" + }, + "0.1.18": { + "node_abi": null, + "v8": "1.3" + }, + "0.1.19": { + "node_abi": null, + "v8": "2.0" + }, + "0.1.20": { + "node_abi": null, + "v8": "2.0" + }, + "0.1.21": { + "node_abi": null, + "v8": "2.0" + }, + "0.1.22": { + "node_abi": null, + "v8": "2.0" + }, + "0.1.23": { + "node_abi": null, + "v8": "2.0" + }, + "0.1.24": { + "node_abi": null, + "v8": "2.0" + }, + "0.1.25": { + "node_abi": null, + "v8": "2.0" + }, + "0.1.26": { + "node_abi": null, + "v8": "2.0" + }, + "0.1.27": { + "node_abi": null, + "v8": "2.1" + }, + "0.1.28": { + "node_abi": null, + "v8": "2.1" + }, + "0.1.29": { + "node_abi": null, + "v8": "2.1" + }, + "0.1.30": { + "node_abi": null, + "v8": "2.1" + }, + "0.1.31": { + "node_abi": null, + "v8": "2.1" + }, + "0.1.32": { + "node_abi": null, + "v8": "2.1" + }, + "0.1.33": { + "node_abi": null, + "v8": "2.1" + }, + "0.1.90": { + "node_abi": null, + "v8": "2.2" + }, + "0.1.91": { + "node_abi": null, + "v8": "2.2" + }, + "0.1.92": { + "node_abi": null, + "v8": "2.2" + }, + "0.1.93": { + "node_abi": null, + "v8": "2.2" + }, + "0.1.94": { + "node_abi": null, + "v8": "2.2" + }, + "0.1.95": { + "node_abi": null, + "v8": "2.2" + }, + "0.1.96": { + "node_abi": null, + "v8": "2.2" + }, + "0.1.97": { + "node_abi": null, + "v8": "2.2" + }, + "0.1.98": { + "node_abi": null, + "v8": "2.2" + }, + "0.1.99": { + "node_abi": null, + "v8": "2.2" + }, + "0.1.100": { + "node_abi": null, + "v8": "2.2" + }, + "0.1.101": { + "node_abi": null, + "v8": "2.3" + }, + "0.1.102": { + "node_abi": null, + "v8": "2.3" + }, + "0.1.103": { + "node_abi": null, + "v8": "2.3" + }, + "0.1.104": { + "node_abi": null, + "v8": "2.3" + }, + "0.2.0": { + "node_abi": 1, + "v8": "2.3" + }, + "0.2.1": { + "node_abi": 1, + "v8": "2.3" + }, + "0.2.2": { + "node_abi": 1, + "v8": "2.3" + }, + "0.2.3": { + "node_abi": 1, + "v8": "2.3" + }, + "0.2.4": { + "node_abi": 1, + "v8": "2.3" + }, + "0.2.5": { + "node_abi": 1, + "v8": "2.3" + }, + "0.2.6": { + "node_abi": 1, + "v8": "2.3" + }, + "0.3.0": { + "node_abi": 1, + "v8": "2.5" + }, + "0.3.1": { + "node_abi": 1, + "v8": "2.5" + }, + "0.3.2": { + "node_abi": 1, + "v8": "3.0" + }, + "0.3.3": { + "node_abi": 1, + "v8": "3.0" + }, + "0.3.4": { + "node_abi": 1, + "v8": "3.0" + }, + "0.3.5": { + "node_abi": 1, + "v8": "3.0" + }, + "0.3.6": { + "node_abi": 1, + "v8": "3.0" + }, + "0.3.7": { + "node_abi": 1, + "v8": "3.0" + }, + "0.3.8": { + "node_abi": 1, + "v8": "3.1" + }, + "0.4.0": { + "node_abi": 1, + "v8": "3.1" + }, + "0.4.1": { + "node_abi": 1, + "v8": "3.1" + }, + "0.4.2": { + "node_abi": 1, + "v8": "3.1" + }, + "0.4.3": { + "node_abi": 1, + "v8": "3.1" + }, + "0.4.4": { + "node_abi": 1, + "v8": "3.1" + }, + "0.4.5": { + "node_abi": 1, + "v8": "3.1" + }, + "0.4.6": { + "node_abi": 1, + "v8": "3.1" + }, + "0.4.7": { + "node_abi": 1, + "v8": "3.1" + }, + "0.4.8": { + "node_abi": 1, + "v8": "3.1" + }, + "0.4.9": { + "node_abi": 1, + "v8": "3.1" + }, + "0.4.10": { + "node_abi": 1, + "v8": "3.1" + }, + "0.4.11": { + "node_abi": 1, + "v8": "3.1" + }, + "0.4.12": { + "node_abi": 1, + "v8": "3.1" + }, + "0.5.0": { + "node_abi": 1, + "v8": "3.1" + }, + "0.5.1": { + "node_abi": 1, + "v8": "3.4" + }, + "0.5.2": { + "node_abi": 1, + "v8": "3.4" + }, + "0.5.3": { + "node_abi": 1, + "v8": "3.4" + }, + "0.5.4": { + "node_abi": 1, + "v8": "3.5" + }, + "0.5.5": { + "node_abi": 1, + "v8": "3.5" + }, + "0.5.6": { + "node_abi": 1, + "v8": "3.6" + }, + "0.5.7": { + "node_abi": 1, + "v8": "3.6" + }, + "0.5.8": { + "node_abi": 1, + "v8": "3.6" + }, + "0.5.9": { + "node_abi": 1, + "v8": "3.6" + }, + "0.5.10": { + "node_abi": 1, + "v8": "3.7" + }, + "0.6.0": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.1": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.2": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.3": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.4": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.5": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.6": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.7": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.8": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.9": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.10": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.11": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.12": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.13": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.14": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.15": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.16": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.17": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.18": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.19": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.20": { + "node_abi": 1, + "v8": "3.6" + }, + "0.6.21": { + "node_abi": 1, + "v8": "3.6" + }, + "0.7.0": { + "node_abi": 1, + "v8": "3.8" + }, + "0.7.1": { + "node_abi": 1, + "v8": "3.8" + }, + "0.7.2": { + "node_abi": 1, + "v8": "3.8" + }, + "0.7.3": { + "node_abi": 1, + "v8": "3.9" + }, + "0.7.4": { + "node_abi": 1, + "v8": "3.9" + }, + "0.7.5": { + "node_abi": 1, + "v8": "3.9" + }, + "0.7.6": { + "node_abi": 1, + "v8": "3.9" + }, + "0.7.7": { + "node_abi": 1, + "v8": "3.9" + }, + "0.7.8": { + "node_abi": 1, + "v8": "3.9" + }, + "0.7.9": { + "node_abi": 1, + "v8": "3.11" + }, + "0.7.10": { + "node_abi": 1, + "v8": "3.9" + }, + "0.7.11": { + "node_abi": 1, + "v8": "3.11" + }, + "0.7.12": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.0": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.1": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.2": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.3": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.4": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.5": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.6": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.7": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.8": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.9": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.10": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.11": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.12": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.13": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.14": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.15": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.16": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.17": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.18": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.19": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.20": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.21": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.22": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.23": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.24": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.25": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.26": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.27": { + "node_abi": 1, + "v8": "3.11" + }, + "0.8.28": { + "node_abi": 1, + "v8": "3.11" + }, + "0.9.0": { + "node_abi": 1, + "v8": "3.11" + }, + "0.9.1": { + "node_abi": 10, + "v8": "3.11" + }, + "0.9.2": { + "node_abi": 10, + "v8": "3.11" + }, + "0.9.3": { + "node_abi": 10, + "v8": "3.13" + }, + "0.9.4": { + "node_abi": 10, + "v8": "3.13" + }, + "0.9.5": { + "node_abi": 10, + "v8": "3.13" + }, + "0.9.6": { + "node_abi": 10, + "v8": "3.15" + }, + "0.9.7": { + "node_abi": 10, + "v8": "3.15" + }, + "0.9.8": { + "node_abi": 10, + "v8": "3.15" + }, + "0.9.9": { + "node_abi": 11, + "v8": "3.15" + }, + "0.9.10": { + "node_abi": 11, + "v8": "3.15" + }, + "0.9.11": { + "node_abi": 11, + "v8": "3.14" + }, + "0.9.12": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.0": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.1": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.2": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.3": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.4": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.5": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.6": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.7": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.8": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.9": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.10": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.11": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.12": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.13": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.14": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.15": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.16": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.17": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.18": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.19": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.20": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.21": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.22": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.23": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.24": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.25": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.26": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.27": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.28": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.29": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.30": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.31": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.32": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.33": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.34": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.35": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.36": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.37": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.38": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.39": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.40": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.41": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.42": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.43": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.44": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.45": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.46": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.47": { + "node_abi": 11, + "v8": "3.14" + }, + "0.10.48": { + "node_abi": 11, + "v8": "3.14" + }, + "0.11.0": { + "node_abi": 12, + "v8": "3.17" + }, + "0.11.1": { + "node_abi": 12, + "v8": "3.18" + }, + "0.11.2": { + "node_abi": 12, + "v8": "3.19" + }, + "0.11.3": { + "node_abi": 12, + "v8": "3.19" + }, + "0.11.4": { + "node_abi": 12, + "v8": "3.20" + }, + "0.11.5": { + "node_abi": 12, + "v8": "3.20" + }, + "0.11.6": { + "node_abi": 12, + "v8": "3.20" + }, + "0.11.7": { + "node_abi": 12, + "v8": "3.20" + }, + "0.11.8": { + "node_abi": 13, + "v8": "3.21" + }, + "0.11.9": { + "node_abi": 13, + "v8": "3.22" + }, + "0.11.10": { + "node_abi": 13, + "v8": "3.22" + }, + "0.11.11": { + "node_abi": 14, + "v8": "3.22" + }, + "0.11.12": { + "node_abi": 14, + "v8": "3.22" + }, + "0.11.13": { + "node_abi": 14, + "v8": "3.25" + }, + "0.11.14": { + "node_abi": 14, + "v8": "3.26" + }, + "0.11.15": { + "node_abi": 14, + "v8": "3.28" + }, + "0.11.16": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.0": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.1": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.2": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.3": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.4": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.5": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.6": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.7": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.8": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.9": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.10": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.11": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.12": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.13": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.14": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.15": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.16": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.17": { + "node_abi": 14, + "v8": "3.28" + }, + "0.12.18": { + "node_abi": 14, + "v8": "3.28" + }, + "1.0.0": { + "node_abi": 42, + "v8": "3.31" + }, + "1.0.1": { + "node_abi": 42, + "v8": "3.31" + }, + "1.0.2": { + "node_abi": 42, + "v8": "3.31" + }, + "1.0.3": { + "node_abi": 42, + "v8": "4.1" + }, + "1.0.4": { + "node_abi": 42, + "v8": "4.1" + }, + "1.1.0": { + "node_abi": 43, + "v8": "4.1" + }, + "1.2.0": { + "node_abi": 43, + "v8": "4.1" + }, + "1.3.0": { + "node_abi": 43, + "v8": "4.1" + }, + "1.4.1": { + "node_abi": 43, + "v8": "4.1" + }, + "1.4.2": { + "node_abi": 43, + "v8": "4.1" + }, + "1.4.3": { + "node_abi": 43, + "v8": "4.1" + }, + "1.5.0": { + "node_abi": 43, + "v8": "4.1" + }, + "1.5.1": { + "node_abi": 43, + "v8": "4.1" + }, + "1.6.0": { + "node_abi": 43, + "v8": "4.1" + }, + "1.6.1": { + "node_abi": 43, + "v8": "4.1" + }, + "1.6.2": { + "node_abi": 43, + "v8": "4.1" + }, + "1.6.3": { + "node_abi": 43, + "v8": "4.1" + }, + "1.6.4": { + "node_abi": 43, + "v8": "4.1" + }, + "1.7.1": { + "node_abi": 43, + "v8": "4.1" + }, + "1.8.1": { + "node_abi": 43, + "v8": "4.1" + }, + "1.8.2": { + "node_abi": 43, + "v8": "4.1" + }, + "1.8.3": { + "node_abi": 43, + "v8": "4.1" + }, + "1.8.4": { + "node_abi": 43, + "v8": "4.1" + }, + "2.0.0": { + "node_abi": 44, + "v8": "4.2" + }, + "2.0.1": { + "node_abi": 44, + "v8": "4.2" + }, + "2.0.2": { + "node_abi": 44, + "v8": "4.2" + }, + "2.1.0": { + "node_abi": 44, + "v8": "4.2" + }, + "2.2.0": { + "node_abi": 44, + "v8": "4.2" + }, + "2.2.1": { + "node_abi": 44, + "v8": "4.2" + }, + "2.3.0": { + "node_abi": 44, + "v8": "4.2" + }, + "2.3.1": { + "node_abi": 44, + "v8": "4.2" + }, + "2.3.2": { + "node_abi": 44, + "v8": "4.2" + }, + "2.3.3": { + "node_abi": 44, + "v8": "4.2" + }, + "2.3.4": { + "node_abi": 44, + "v8": "4.2" + }, + "2.4.0": { + "node_abi": 44, + "v8": "4.2" + }, + "2.5.0": { + "node_abi": 44, + "v8": "4.2" + }, + "3.0.0": { + "node_abi": 45, + "v8": "4.4" + }, + "3.1.0": { + "node_abi": 45, + "v8": "4.4" + }, + "3.2.0": { + "node_abi": 45, + "v8": "4.4" + }, + "3.3.0": { + "node_abi": 45, + "v8": "4.4" + }, + "3.3.1": { + "node_abi": 45, + "v8": "4.4" + }, + "4.0.0": { + "node_abi": 46, + "v8": "4.5" + }, + "4.1.0": { + "node_abi": 46, + "v8": "4.5" + }, + "4.1.1": { + "node_abi": 46, + "v8": "4.5" + }, + "4.1.2": { + "node_abi": 46, + "v8": "4.5" + }, + "4.2.0": { + "node_abi": 46, + "v8": "4.5" + }, + "4.2.1": { + "node_abi": 46, + "v8": "4.5" + }, + "4.2.2": { + "node_abi": 46, + "v8": "4.5" + }, + "4.2.3": { + "node_abi": 46, + "v8": "4.5" + }, + "4.2.4": { + "node_abi": 46, + "v8": "4.5" + }, + "4.2.5": { + "node_abi": 46, + "v8": "4.5" + }, + "4.2.6": { + "node_abi": 46, + "v8": "4.5" + }, + "4.3.0": { + "node_abi": 46, + "v8": "4.5" + }, + "4.3.1": { + "node_abi": 46, + "v8": "4.5" + }, + "4.3.2": { + "node_abi": 46, + "v8": "4.5" + }, + "4.4.0": { + "node_abi": 46, + "v8": "4.5" + }, + "4.4.1": { + "node_abi": 46, + "v8": "4.5" + }, + "4.4.2": { + "node_abi": 46, + "v8": "4.5" + }, + "4.4.3": { + "node_abi": 46, + "v8": "4.5" + }, + "4.4.4": { + "node_abi": 46, + "v8": "4.5" + }, + "4.4.5": { + "node_abi": 46, + "v8": "4.5" + }, + "4.4.6": { + "node_abi": 46, + "v8": "4.5" + }, + "4.4.7": { + "node_abi": 46, + "v8": "4.5" + }, + "4.5.0": { + "node_abi": 46, + "v8": "4.5" + }, + "4.6.0": { + "node_abi": 46, + "v8": "4.5" + }, + "4.6.1": { + "node_abi": 46, + "v8": "4.5" + }, + "4.6.2": { + "node_abi": 46, + "v8": "4.5" + }, + "4.7.0": { + "node_abi": 46, + "v8": "4.5" + }, + "4.7.1": { + "node_abi": 46, + "v8": "4.5" + }, + "4.7.2": { + "node_abi": 46, + "v8": "4.5" + }, + "4.7.3": { + "node_abi": 46, + "v8": "4.5" + }, + "4.8.0": { + "node_abi": 46, + "v8": "4.5" + }, + "4.8.1": { + "node_abi": 46, + "v8": "4.5" + }, + "4.8.2": { + "node_abi": 46, + "v8": "4.5" + }, + "4.8.3": { + "node_abi": 46, + "v8": "4.5" + }, + "4.8.4": { + "node_abi": 46, + "v8": "4.5" + }, + "4.8.5": { + "node_abi": 46, + "v8": "4.5" + }, + "4.8.6": { + "node_abi": 46, + "v8": "4.5" + }, + "4.8.7": { + "node_abi": 46, + "v8": "4.5" + }, + "4.9.0": { + "node_abi": 46, + "v8": "4.5" + }, + "4.9.1": { + "node_abi": 46, + "v8": "4.5" + }, + "5.0.0": { + "node_abi": 47, + "v8": "4.6" + }, + "5.1.0": { + "node_abi": 47, + "v8": "4.6" + }, + "5.1.1": { + "node_abi": 47, + "v8": "4.6" + }, + "5.2.0": { + "node_abi": 47, + "v8": "4.6" + }, + "5.3.0": { + "node_abi": 47, + "v8": "4.6" + }, + "5.4.0": { + "node_abi": 47, + "v8": "4.6" + }, + "5.4.1": { + "node_abi": 47, + "v8": "4.6" + }, + "5.5.0": { + "node_abi": 47, + "v8": "4.6" + }, + "5.6.0": { + "node_abi": 47, + "v8": "4.6" + }, + "5.7.0": { + "node_abi": 47, + "v8": "4.6" + }, + "5.7.1": { + "node_abi": 47, + "v8": "4.6" + }, + "5.8.0": { + "node_abi": 47, + "v8": "4.6" + }, + "5.9.0": { + "node_abi": 47, + "v8": "4.6" + }, + "5.9.1": { + "node_abi": 47, + "v8": "4.6" + }, + "5.10.0": { + "node_abi": 47, + "v8": "4.6" + }, + "5.10.1": { + "node_abi": 47, + "v8": "4.6" + }, + "5.11.0": { + "node_abi": 47, + "v8": "4.6" + }, + "5.11.1": { + "node_abi": 47, + "v8": "4.6" + }, + "5.12.0": { + "node_abi": 47, + "v8": "4.6" + }, + "6.0.0": { + "node_abi": 48, + "v8": "5.0" + }, + "6.1.0": { + "node_abi": 48, + "v8": "5.0" + }, + "6.2.0": { + "node_abi": 48, + "v8": "5.0" + }, + "6.2.1": { + "node_abi": 48, + "v8": "5.0" + }, + "6.2.2": { + "node_abi": 48, + "v8": "5.0" + }, + "6.3.0": { + "node_abi": 48, + "v8": "5.0" + }, + "6.3.1": { + "node_abi": 48, + "v8": "5.0" + }, + "6.4.0": { + "node_abi": 48, + "v8": "5.0" + }, + "6.5.0": { + "node_abi": 48, + "v8": "5.1" + }, + "6.6.0": { + "node_abi": 48, + "v8": "5.1" + }, + "6.7.0": { + "node_abi": 48, + "v8": "5.1" + }, + "6.8.0": { + "node_abi": 48, + "v8": "5.1" + }, + "6.8.1": { + "node_abi": 48, + "v8": "5.1" + }, + "6.9.0": { + "node_abi": 48, + "v8": "5.1" + }, + "6.9.1": { + "node_abi": 48, + "v8": "5.1" + }, + "6.9.2": { + "node_abi": 48, + "v8": "5.1" + }, + "6.9.3": { + "node_abi": 48, + "v8": "5.1" + }, + "6.9.4": { + "node_abi": 48, + "v8": "5.1" + }, + "6.9.5": { + "node_abi": 48, + "v8": "5.1" + }, + "6.10.0": { + "node_abi": 48, + "v8": "5.1" + }, + "6.10.1": { + "node_abi": 48, + "v8": "5.1" + }, + "6.10.2": { + "node_abi": 48, + "v8": "5.1" + }, + "6.10.3": { + "node_abi": 48, + "v8": "5.1" + }, + "6.11.0": { + "node_abi": 48, + "v8": "5.1" + }, + "6.11.1": { + "node_abi": 48, + "v8": "5.1" + }, + "6.11.2": { + "node_abi": 48, + "v8": "5.1" + }, + "6.11.3": { + "node_abi": 48, + "v8": "5.1" + }, + "6.11.4": { + "node_abi": 48, + "v8": "5.1" + }, + "6.11.5": { + "node_abi": 48, + "v8": "5.1" + }, + "6.12.0": { + "node_abi": 48, + "v8": "5.1" + }, + "6.12.1": { + "node_abi": 48, + "v8": "5.1" + }, + "6.12.2": { + "node_abi": 48, + "v8": "5.1" + }, + "6.12.3": { + "node_abi": 48, + "v8": "5.1" + }, + "6.13.0": { + "node_abi": 48, + "v8": "5.1" + }, + "6.13.1": { + "node_abi": 48, + "v8": "5.1" + }, + "6.14.0": { + "node_abi": 48, + "v8": "5.1" + }, + "6.14.1": { + "node_abi": 48, + "v8": "5.1" + }, + "6.14.2": { + "node_abi": 48, + "v8": "5.1" + }, + "6.14.3": { + "node_abi": 48, + "v8": "5.1" + }, + "6.14.4": { + "node_abi": 48, + "v8": "5.1" + }, + "6.15.0": { + "node_abi": 48, + "v8": "5.1" + }, + "6.15.1": { + "node_abi": 48, + "v8": "5.1" + }, + "6.16.0": { + "node_abi": 48, + "v8": "5.1" + }, + "6.17.0": { + "node_abi": 48, + "v8": "5.1" + }, + "6.17.1": { + "node_abi": 48, + "v8": "5.1" + }, + "7.0.0": { + "node_abi": 51, + "v8": "5.4" + }, + "7.1.0": { + "node_abi": 51, + "v8": "5.4" + }, + "7.2.0": { + "node_abi": 51, + "v8": "5.4" + }, + "7.2.1": { + "node_abi": 51, + "v8": "5.4" + }, + "7.3.0": { + "node_abi": 51, + "v8": "5.4" + }, + "7.4.0": { + "node_abi": 51, + "v8": "5.4" + }, + "7.5.0": { + "node_abi": 51, + "v8": "5.4" + }, + "7.6.0": { + "node_abi": 51, + "v8": "5.5" + }, + "7.7.0": { + "node_abi": 51, + "v8": "5.5" + }, + "7.7.1": { + "node_abi": 51, + "v8": "5.5" + }, + "7.7.2": { + "node_abi": 51, + "v8": "5.5" + }, + "7.7.3": { + "node_abi": 51, + "v8": "5.5" + }, + "7.7.4": { + "node_abi": 51, + "v8": "5.5" + }, + "7.8.0": { + "node_abi": 51, + "v8": "5.5" + }, + "7.9.0": { + "node_abi": 51, + "v8": "5.5" + }, + "7.10.0": { + "node_abi": 51, + "v8": "5.5" + }, + "7.10.1": { + "node_abi": 51, + "v8": "5.5" + }, + "8.0.0": { + "node_abi": 57, + "v8": "5.8" + }, + "8.1.0": { + "node_abi": 57, + "v8": "5.8" + }, + "8.1.1": { + "node_abi": 57, + "v8": "5.8" + }, + "8.1.2": { + "node_abi": 57, + "v8": "5.8" + }, + "8.1.3": { + "node_abi": 57, + "v8": "5.8" + }, + "8.1.4": { + "node_abi": 57, + "v8": "5.8" + }, + "8.2.0": { + "node_abi": 57, + "v8": "5.8" + }, + "8.2.1": { + "node_abi": 57, + "v8": "5.8" + }, + "8.3.0": { + "node_abi": 57, + "v8": "6.0" + }, + "8.4.0": { + "node_abi": 57, + "v8": "6.0" + }, + "8.5.0": { + "node_abi": 57, + "v8": "6.0" + }, + "8.6.0": { + "node_abi": 57, + "v8": "6.0" + }, + "8.7.0": { + "node_abi": 57, + "v8": "6.1" + }, + "8.8.0": { + "node_abi": 57, + "v8": "6.1" + }, + "8.8.1": { + "node_abi": 57, + "v8": "6.1" + }, + "8.9.0": { + "node_abi": 57, + "v8": "6.1" + }, + "8.9.1": { + "node_abi": 57, + "v8": "6.1" + }, + "8.9.2": { + "node_abi": 57, + "v8": "6.1" + }, + "8.9.3": { + "node_abi": 57, + "v8": "6.1" + }, + "8.9.4": { + "node_abi": 57, + "v8": "6.1" + }, + "8.10.0": { + "node_abi": 57, + "v8": "6.2" + }, + "8.11.0": { + "node_abi": 57, + "v8": "6.2" + }, + "8.11.1": { + "node_abi": 57, + "v8": "6.2" + }, + "8.11.2": { + "node_abi": 57, + "v8": "6.2" + }, + "8.11.3": { + "node_abi": 57, + "v8": "6.2" + }, + "8.11.4": { + "node_abi": 57, + "v8": "6.2" + }, + "8.12.0": { + "node_abi": 57, + "v8": "6.2" + }, + "8.13.0": { + "node_abi": 57, + "v8": "6.2" + }, + "8.14.0": { + "node_abi": 57, + "v8": "6.2" + }, + "8.14.1": { + "node_abi": 57, + "v8": "6.2" + }, + "8.15.0": { + "node_abi": 57, + "v8": "6.2" + }, + "8.15.1": { + "node_abi": 57, + "v8": "6.2" + }, + "8.16.0": { + "node_abi": 57, + "v8": "6.2" + }, + "8.16.1": { + "node_abi": 57, + "v8": "6.2" + }, + "8.16.2": { + "node_abi": 57, + "v8": "6.2" + }, + "8.17.0": { + "node_abi": 57, + "v8": "6.2" + }, + "9.0.0": { + "node_abi": 59, + "v8": "6.2" + }, + "9.1.0": { + "node_abi": 59, + "v8": "6.2" + }, + "9.2.0": { + "node_abi": 59, + "v8": "6.2" + }, + "9.2.1": { + "node_abi": 59, + "v8": "6.2" + }, + "9.3.0": { + "node_abi": 59, + "v8": "6.2" + }, + "9.4.0": { + "node_abi": 59, + "v8": "6.2" + }, + "9.5.0": { + "node_abi": 59, + "v8": "6.2" + }, + "9.6.0": { + "node_abi": 59, + "v8": "6.2" + }, + "9.6.1": { + "node_abi": 59, + "v8": "6.2" + }, + "9.7.0": { + "node_abi": 59, + "v8": "6.2" + }, + "9.7.1": { + "node_abi": 59, + "v8": "6.2" + }, + "9.8.0": { + "node_abi": 59, + "v8": "6.2" + }, + "9.9.0": { + "node_abi": 59, + "v8": "6.2" + }, + "9.10.0": { + "node_abi": 59, + "v8": "6.2" + }, + "9.10.1": { + "node_abi": 59, + "v8": "6.2" + }, + "9.11.0": { + "node_abi": 59, + "v8": "6.2" + }, + "9.11.1": { + "node_abi": 59, + "v8": "6.2" + }, + "9.11.2": { + "node_abi": 59, + "v8": "6.2" + }, + "10.0.0": { + "node_abi": 64, + "v8": "6.6" + }, + "10.1.0": { + "node_abi": 64, + "v8": "6.6" + }, + "10.2.0": { + "node_abi": 64, + "v8": "6.6" + }, + "10.2.1": { + "node_abi": 64, + "v8": "6.6" + }, + "10.3.0": { + "node_abi": 64, + "v8": "6.6" + }, + "10.4.0": { + "node_abi": 64, + "v8": "6.7" + }, + "10.4.1": { + "node_abi": 64, + "v8": "6.7" + }, + "10.5.0": { + "node_abi": 64, + "v8": "6.7" + }, + "10.6.0": { + "node_abi": 64, + "v8": "6.7" + }, + "10.7.0": { + "node_abi": 64, + "v8": "6.7" + }, + "10.8.0": { + "node_abi": 64, + "v8": "6.7" + }, + "10.9.0": { + "node_abi": 64, + "v8": "6.8" + }, + "10.10.0": { + "node_abi": 64, + "v8": "6.8" + }, + "10.11.0": { + "node_abi": 64, + "v8": "6.8" + }, + "10.12.0": { + "node_abi": 64, + "v8": "6.8" + }, + "10.13.0": { + "node_abi": 64, + "v8": "6.8" + }, + "10.14.0": { + "node_abi": 64, + "v8": "6.8" + }, + "10.14.1": { + "node_abi": 64, + "v8": "6.8" + }, + "10.14.2": { + "node_abi": 64, + "v8": "6.8" + }, + "10.15.0": { + "node_abi": 64, + "v8": "6.8" + }, + "10.15.1": { + "node_abi": 64, + "v8": "6.8" + }, + "10.15.2": { + "node_abi": 64, + "v8": "6.8" + }, + "10.15.3": { + "node_abi": 64, + "v8": "6.8" + }, + "10.16.0": { + "node_abi": 64, + "v8": "6.8" + }, + "10.16.1": { + "node_abi": 64, + "v8": "6.8" + }, + "10.16.2": { + "node_abi": 64, + "v8": "6.8" + }, + "10.16.3": { + "node_abi": 64, + "v8": "6.8" + }, + "10.17.0": { + "node_abi": 64, + "v8": "6.8" + }, + "10.18.0": { + "node_abi": 64, + "v8": "6.8" + }, + "10.18.1": { + "node_abi": 64, + "v8": "6.8" + }, + "10.19.0": { + "node_abi": 64, + "v8": "6.8" + }, + "10.20.0": { + "node_abi": 64, + "v8": "6.8" + }, + "10.20.1": { + "node_abi": 64, + "v8": "6.8" + }, + "11.0.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.1.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.2.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.3.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.4.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.5.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.6.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.7.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.8.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.9.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.10.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.10.1": { + "node_abi": 67, + "v8": "7.0" + }, + "11.11.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.12.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.13.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.14.0": { + "node_abi": 67, + "v8": "7.0" + }, + "11.15.0": { + "node_abi": 67, + "v8": "7.0" + }, + "12.0.0": { + "node_abi": 72, + "v8": "7.4" + }, + "12.1.0": { + "node_abi": 72, + "v8": "7.4" + }, + "12.2.0": { + "node_abi": 72, + "v8": "7.4" + }, + "12.3.0": { + "node_abi": 72, + "v8": "7.4" + }, + "12.3.1": { + "node_abi": 72, + "v8": "7.4" + }, + "12.4.0": { + "node_abi": 72, + "v8": "7.4" + }, + "12.5.0": { + "node_abi": 72, + "v8": "7.5" + }, + "12.6.0": { + "node_abi": 72, + "v8": "7.5" + }, + "12.7.0": { + "node_abi": 72, + "v8": "7.5" + }, + "12.8.0": { + "node_abi": 72, + "v8": "7.5" + }, + "12.8.1": { + "node_abi": 72, + "v8": "7.5" + }, + "12.9.0": { + "node_abi": 72, + "v8": "7.6" + }, + "12.9.1": { + "node_abi": 72, + "v8": "7.6" + }, + "12.10.0": { + "node_abi": 72, + "v8": "7.6" + }, + "12.11.0": { + "node_abi": 72, + "v8": "7.7" + }, + "12.11.1": { + "node_abi": 72, + "v8": "7.7" + }, + "12.12.0": { + "node_abi": 72, + "v8": "7.7" + }, + "12.13.0": { + "node_abi": 72, + "v8": "7.7" + }, + "12.13.1": { + "node_abi": 72, + "v8": "7.7" + }, + "12.14.0": { + "node_abi": 72, + "v8": "7.7" + }, + "12.14.1": { + "node_abi": 72, + "v8": "7.7" + }, + "12.15.0": { + "node_abi": 72, + "v8": "7.7" + }, + "12.16.0": { + "node_abi": 72, + "v8": "7.8" + }, + "12.16.1": { + "node_abi": 72, + "v8": "7.8" + }, + "12.16.2": { + "node_abi": 72, + "v8": "7.8" + }, + "12.16.3": { + "node_abi": 72, + "v8": "7.8" + }, + "13.0.0": { + "node_abi": 79, + "v8": "7.8" + }, + "13.0.1": { + "node_abi": 79, + "v8": "7.8" + }, + "13.1.0": { + "node_abi": 79, + "v8": "7.8" + }, + "13.2.0": { + "node_abi": 79, + "v8": "7.9" + }, + "13.3.0": { + "node_abi": 79, + "v8": "7.9" + }, + "13.4.0": { + "node_abi": 79, + "v8": "7.9" + }, + "13.5.0": { + "node_abi": 79, + "v8": "7.9" + }, + "13.6.0": { + "node_abi": 79, + "v8": "7.9" + }, + "13.7.0": { + "node_abi": 79, + "v8": "7.9" + }, + "13.8.0": { + "node_abi": 79, + "v8": "7.9" + }, + "13.9.0": { + "node_abi": 79, + "v8": "7.9" + }, + "13.10.0": { + "node_abi": 79, + "v8": "7.9" + }, + "13.10.1": { + "node_abi": 79, + "v8": "7.9" + }, + "13.11.0": { + "node_abi": 79, + "v8": "7.9" + }, + "13.12.0": { + "node_abi": 79, + "v8": "7.9" + }, + "13.13.0": { + "node_abi": 79, + "v8": "7.9" + }, + "13.14.0": { + "node_abi": 79, + "v8": "7.9" + }, + "14.0.0": { + "node_abi": 83, + "v8": "8.1" + }, + "14.1.0": { + "node_abi": 83, + "v8": "8.1" + }, + "14.2.0": { + "node_abi": 83, + "v8": "8.1" + }, + "14.3.0": { + "node_abi": 83, + "v8": "8.1" + }, + "15.0.0": { + "node_abi": 88, + "v8": "8.6" + } +} diff --git a/taskcluster/.shared.yml b/taskcluster/.shared.yml index 2ceb0546..cc8651c0 100644 --- a/taskcluster/.shared.yml +++ b/taskcluster/.shared.yml @@ -52,6 +52,7 @@ nodejs: prep_12: 'echo "deb http://deb.nodesource.com/node_12.x xenial main" > /etc/apt/sources.list.d/nodesource.list && wget -qO- https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -' prep_13: 'echo "deb http://deb.nodesource.com/node_13.x xenial main" > /etc/apt/sources.list.d/nodesource.list && wget -qO- https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -' prep_14: 'echo "deb http://deb.nodesource.com/node_14.x xenial main" > /etc/apt/sources.list.d/nodesource.list && wget -qO- https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -' + prep_15: 'echo "deb http://deb.nodesource.com/node_15.x xenial main" > /etc/apt/sources.list.d/nodesource.list && wget -qO- https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -' packages_docs_bionic: apt: 'nodejs' apt_pinning: '(echo "Package: nodejs" && echo "Pin: origin deb.nodesource.com" && echo "Pin-Priority: 999") > /etc/apt/preferences' @@ -65,28 +66,31 @@ nodejs: prep_12: 'echo "deb http://deb.nodesource.com/node_12.x buster main" > /etc/apt/sources.list.d/nodesource.list && wget -qO- https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -' prep_13: 'echo "deb http://deb.nodesource.com/node_13.x buster main" > /etc/apt/sources.list.d/nodesource.list && wget -qO- https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -' prep_14: 'echo "deb http://deb.nodesource.com/node_14.x buster main" > /etc/apt/sources.list.d/nodesource.list && wget -qO- https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -' + prep_15: 'echo "deb http://deb.nodesource.com/node_15.x buster main" > /etc/apt/sources.list.d/nodesource.list && wget -qO- https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -' brew: prep_10: 'export NVM_DIR=$TASKCLUSTER_TASK_DIR/homebrew-tests/.nvm/ && source "$TASKCLUSTER_TASK_DIR/homebrew-tests/opt/nvm/nvm.sh" && nvm use 10.20.1' prep_11: 'export NVM_DIR=$TASKCLUSTER_TASK_DIR/homebrew-tests/.nvm/ && source "$TASKCLUSTER_TASK_DIR/homebrew-tests/opt/nvm/nvm.sh" && nvm use 11.15.0' prep_12: 'export NVM_DIR=$TASKCLUSTER_TASK_DIR/homebrew-tests/.nvm/ && source "$TASKCLUSTER_TASK_DIR/homebrew-tests/opt/nvm/nvm.sh" && nvm use 12.17.0' prep_13: 'export NVM_DIR=$TASKCLUSTER_TASK_DIR/homebrew-tests/.nvm/ && source "$TASKCLUSTER_TASK_DIR/homebrew-tests/opt/nvm/nvm.sh" && nvm use 13.14.0' prep_14: 'export NVM_DIR=$TASKCLUSTER_TASK_DIR/homebrew-tests/.nvm/ && source "$TASKCLUSTER_TASK_DIR/homebrew-tests/opt/nvm/nvm.sh" && nvm use 14.3.0' + prep_15: 'export NVM_DIR=$TASKCLUSTER_TASK_DIR/homebrew-tests/.nvm/ && source "$TASKCLUSTER_TASK_DIR/homebrew-tests/opt/nvm/nvm.sh" && nvm use 15.0.0' win: prep_10: '/usr/bin/wget.exe https://nodejs.org/dist/v10.20.1/node-v10.20.1-win-x64.zip && ""C:\Program Files\7-zip\7z.exe"" x -o$TASKCLUSTER_NODE_DIR -tzip -aoa node-v10.20.1-win-x64.zip && rm node-*.zip && export PATH=$TASKCLUSTER_TASK_DIR/bin/node-v10.20.1-win-x64/:$PATH' prep_11: '/usr/bin/wget.exe https://nodejs.org/dist/v11.15.0/node-v11.15.0-win-x64.zip && ""C:\Program Files\7-zip\7z.exe"" x -o$TASKCLUSTER_NODE_DIR -tzip -aoa node-v11.15.0-win-x64.zip && rm node-*.zip && export PATH=$TASKCLUSTER_TASK_DIR/bin/node-v11.15.0-win-x64/:$PATH' prep_12: '/usr/bin/wget.exe https://nodejs.org/dist/v12.17.0/node-v12.17.0-win-x64.zip && ""C:\Program Files\7-zip\7z.exe"" x -o$TASKCLUSTER_NODE_DIR -tzip -aoa node-v12.17.0-win-x64.zip && rm node-*.zip && export PATH=$TASKCLUSTER_TASK_DIR/bin/node-v12.17.0-win-x64/:$PATH' prep_13: '/usr/bin/wget.exe https://nodejs.org/dist/v13.14.0/node-v13.14.0-win-x64.zip && ""C:\Program Files\7-zip\7z.exe"" x -o$TASKCLUSTER_NODE_DIR -tzip -aoa node-v13.14.0-win-x64.zip && rm node-*.zip && export PATH=$TASKCLUSTER_TASK_DIR/bin/node-v13.14.0-win-x64/:$PATH' prep_14: '/usr/bin/wget.exe https://nodejs.org/dist/v14.3.0/node-v14.3.0-win-x64.zip && ""C:\Program Files\7-zip\7z.exe"" x -o$TASKCLUSTER_NODE_DIR -tzip -aoa node-v14.3.0-win-x64.zip && rm node-*.zip && export PATH=$TASKCLUSTER_TASK_DIR/bin/node-v14.3.0-win-x64/:$PATH' + prep_15: '/usr/bin/wget.exe https://nodejs.org/dist/v15.0.0/node-v15.0.0-win-x64.zip && ""C:\Program Files\7-zip\7z.exe"" x -o$TASKCLUSTER_NODE_DIR -tzip -aoa node-v15.0.0-win-x64.zip && rm node-*.zip && export PATH=$TASKCLUSTER_TASK_DIR/bin/node-v15.0.0-win-x64/:$PATH' system: node_gyp_cache: - url: 'https://community-tc.services.mozilla.com/api/index/v1/task/project.deepspeech.node-gyp-cache.10/artifacts/public/node-gyp-cache.tar.gz' - namespace: 'project.deepspeech.node-gyp-cache.10' + url: 'https://community-tc.services.mozilla.com/api/index/v1/task/project.deepspeech.node-gyp-cache.11/artifacts/public/node-gyp-cache.tar.gz' + namespace: 'project.deepspeech.node-gyp-cache.11' homebrew_builds: - url: 'https://community-tc.services.mozilla.com/api/index/v1/task/project.deepspeech.homebrew_builds.8/artifacts/public/homebrew_builds.tar.gz' - namespace: 'project.deepspeech.homebrew_builds.8' + url: 'https://community-tc.services.mozilla.com/api/index/v1/task/project.deepspeech.homebrew_builds.13/artifacts/public/homebrew_builds.tar.gz' + namespace: 'project.deepspeech.homebrew_builds.13' homebrew_tests: - url: 'https://community-tc.services.mozilla.com/api/index/v1/task/project.deepspeech.homebrew_tests.9/artifacts/public/homebrew_tests.tar.gz' - namespace: 'project.deepspeech.homebrew_tests.9' + url: 'https://community-tc.services.mozilla.com/api/index/v1/task/project.deepspeech.homebrew_tests.13/artifacts/public/homebrew_tests.tar.gz' + namespace: 'project.deepspeech.homebrew_tests.13' android_cache: arm64_v8a: android_24: diff --git a/taskcluster/tc-all-vars.sh b/taskcluster/tc-all-vars.sh index 178d486a..dd204dbf 100755 --- a/taskcluster/tc-all-vars.sh +++ b/taskcluster/tc-all-vars.sh @@ -87,7 +87,7 @@ SUPPORTED_PYTHON_VERSIONS=${SUPPORTED_PYTHON_VERSIONS:-3.5.8:ucs2 3.6.10:ucs2 3. # # Also, builds should always target first major branch release to ensure proper binary compatibility # and tests should always target latest major branch release version -SUPPORTED_NODEJS_BUILD_VERSIONS=${SUPPORTED_NODEJS_BUILD_VERSIONS:-10.0.0 11.0.0 12.7.0 13.0.0 14.0.0} -SUPPORTED_NODEJS_TESTS_VERSIONS=${SUPPORTED_NODEJS_TESTS_VERSIONS:-10.20.1 11.15.0 12.17.0 13.14.0 14.3.0} +SUPPORTED_NODEJS_BUILD_VERSIONS=${SUPPORTED_NODEJS_BUILD_VERSIONS:-10.0.0 11.0.0 12.7.0 13.0.0 14.0.0 15.0.0} +SUPPORTED_NODEJS_TESTS_VERSIONS=${SUPPORTED_NODEJS_TESTS_VERSIONS:-10.20.1 11.15.0 12.17.0 13.14.0 14.3.0 15.0.0} SUPPORTED_ELECTRONJS_VERSIONS=${SUPPORTED_ELECTRONJS_VERSIONS:-5.0.13 6.0.12 6.1.7 7.0.1 7.1.8 8.0.1 9.0.1 9.1.0 9.2.0 10.0.0 10.1.0} diff --git a/taskcluster/tc-electron-tests.sh b/taskcluster/tc-electron-tests.sh index ef0f2ac2..e02a6e49 100755 --- a/taskcluster/tc-electron-tests.sh +++ b/taskcluster/tc-electron-tests.sh @@ -30,6 +30,9 @@ NODE_CACHE="${DS_ROOT_TASK}/ds-test.cache/" export NODE_PATH="${NODE_ROOT}/node_modules/" export PATH="${NODE_ROOT}:${NODE_PATH}/.bin/:${NODE_PATH}/electron/dist/:$PATH" +# make sure that NODE_ROOT really exists +mkdir -p ${NODE_ROOT} + npm install --prefix ${NODE_ROOT} --cache ${NODE_CACHE} electron@${electronver} deepspeech_npm_url=$(get_dep_npm_pkg_url) diff --git a/taskcluster/tc-electron_tflite-tests.sh b/taskcluster/tc-electron_tflite-tests.sh index f740a5bd..d99d475f 100755 --- a/taskcluster/tc-electron_tflite-tests.sh +++ b/taskcluster/tc-electron_tflite-tests.sh @@ -34,6 +34,9 @@ NODE_CACHE="${DS_ROOT_TASK}/ds-test.cache/" export NODE_PATH="${NODE_ROOT}/node_modules/" export PATH="${NODE_ROOT}:${NODE_PATH}/.bin/:${NODE_PATH}/electron/dist/:$PATH" +# make sure that NODE_ROOT really exists +mkdir -p ${NODE_ROOT} + npm install --prefix ${NODE_ROOT} --cache ${NODE_CACHE} electron@${electronver} deepspeech_npm_url=$(get_dep_npm_pkg_url) diff --git a/taskcluster/tc-node-tests-prod.sh b/taskcluster/tc-node-tests-prod.sh index f15bb914..9bdc0605 100644 --- a/taskcluster/tc-node-tests-prod.sh +++ b/taskcluster/tc-node-tests-prod.sh @@ -30,6 +30,9 @@ NODE_CACHE="${DS_ROOT_TASK}/ds-test.cache/" export NODE_PATH="${NODE_ROOT}/node_modules/" export PATH="${NODE_ROOT}:${NODE_PATH}/.bin/:$PATH" +# make sure that NODE_ROOT really exists +mkdir -p ${NODE_ROOT} + deepspeech_npm_url=$(get_dep_npm_pkg_url) npm install --prefix ${NODE_ROOT} --cache ${NODE_CACHE} ${deepspeech_npm_url} diff --git a/taskcluster/tc-node-tests.sh b/taskcluster/tc-node-tests.sh index 818539fc..e0e0530e 100644 --- a/taskcluster/tc-node-tests.sh +++ b/taskcluster/tc-node-tests.sh @@ -24,6 +24,9 @@ NODE_CACHE="${DS_ROOT_TASK}/ds-test.cache/" export NODE_PATH="${NODE_ROOT}/node_modules/" export PATH="${NODE_ROOT}:${NODE_PATH}/.bin/:$PATH" +# make sure that NODE_ROOT really exists +mkdir -p ${NODE_ROOT} + deepspeech_npm_url=$(get_dep_npm_pkg_url) npm install --prefix ${NODE_ROOT} --cache ${NODE_CACHE} ${deepspeech_npm_url} diff --git a/taskcluster/tc-node_tflite-tests-prod.sh b/taskcluster/tc-node_tflite-tests-prod.sh index 2fd4387c..cd098e98 100644 --- a/taskcluster/tc-node_tflite-tests-prod.sh +++ b/taskcluster/tc-node_tflite-tests-prod.sh @@ -29,6 +29,9 @@ NODE_CACHE="${DS_ROOT_TASK}/ds-test.cache/" export NODE_PATH="${NODE_ROOT}/node_modules/" export PATH="${NODE_ROOT}:${NODE_PATH}/.bin/:$PATH" +# make sure that NODE_ROOT really exists +mkdir -p ${NODE_ROOT} + deepspeech_npm_url=$(get_dep_npm_pkg_url) npm install --prefix ${NODE_ROOT} --cache ${NODE_CACHE} ${deepspeech_npm_url} diff --git a/taskcluster/tc-node_tflite-tests.sh b/taskcluster/tc-node_tflite-tests.sh index 1cf2b314..25fa3855 100644 --- a/taskcluster/tc-node_tflite-tests.sh +++ b/taskcluster/tc-node_tflite-tests.sh @@ -28,6 +28,9 @@ NODE_CACHE="${DS_ROOT_TASK}/ds-test.cache/" export NODE_PATH="${NODE_ROOT}/node_modules/" export PATH="${NODE_ROOT}:${NODE_PATH}/.bin/:$PATH" +# make sure that NODE_ROOT really exists +mkdir -p ${NODE_ROOT} + deepspeech_npm_url=$(get_dep_npm_pkg_url) npm install --prefix ${NODE_ROOT} --cache ${NODE_CACHE} ${deepspeech_npm_url} diff --git a/taskcluster/test-nodejs_15x-armbian-arm64-opt.yml b/taskcluster/test-nodejs_15x-armbian-arm64-opt.yml new file mode 100644 index 00000000..7b241adf --- /dev/null +++ b/taskcluster/test-nodejs_15x-armbian-arm64-opt.yml @@ -0,0 +1,14 @@ +build: + template_file: test-armbian-opt-base.tyml + dependencies: + - "linux-arm64-cpu-opt" + - "test-training_16k-linux-amd64-py36m-opt" + test_model_task: "test-training_16k-linux-amd64-py36m-opt" + system_setup: + > + ${nodejs.packages_buster.prep_15} && ${nodejs.packages_buster.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_buster.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node_tflite-tests.sh 15.x 16k" + metadata: + name: "DeepSpeech ARMbian ARM64 Cortex-A53 CPU NodeJS 15.x tests" + description: "Testing DeepSpeech for ARMbian ARM64 Cortex-A53 on NodeJS v15.x, CPU only, optimized version" diff --git a/taskcluster/test-nodejs_15x-darwin-amd64-opt.yml b/taskcluster/test-nodejs_15x-darwin-amd64-opt.yml new file mode 100644 index 00000000..396193dd --- /dev/null +++ b/taskcluster/test-nodejs_15x-darwin-amd64-opt.yml @@ -0,0 +1,15 @@ +build: + template_file: test-darwin-opt-base.tyml + dependencies: + - "darwin-amd64-cpu-opt" + - "test-training_16k-linux-amd64-py36m-opt" + - "homebrew_tests-darwin-amd64" + test_model_task: "test-training_16k-linux-amd64-py36m-opt" + system_setup: + > + ${nodejs.brew.prep_15} + args: + tests_cmdline: "$TASKCLUSTER_TASK_DIR/DeepSpeech/ds/taskcluster/tc-node-tests.sh 15.x 16k" + metadata: + name: "DeepSpeech OSX AMD64 CPU NodeJS 15.x tests" + description: "Testing DeepSpeech for OSX/AMD64 on NodeJS v15.x, CPU only, optimized version" diff --git a/taskcluster/test-nodejs_15x-raspbian-rpi3-opt.yml b/taskcluster/test-nodejs_15x-raspbian-rpi3-opt.yml new file mode 100644 index 00000000..08619748 --- /dev/null +++ b/taskcluster/test-nodejs_15x-raspbian-rpi3-opt.yml @@ -0,0 +1,14 @@ +build: + template_file: test-raspbian-opt-base.tyml + dependencies: + - "linux-rpi3-cpu-opt" + - "test-training_16k-linux-amd64-py36m-opt" + test_model_task: "test-training_16k-linux-amd64-py36m-opt" + system_setup: + > + ${nodejs.packages_buster.prep_15} && ${nodejs.packages_buster.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_buster.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node_tflite-tests.sh 15.x 16k" + metadata: + name: "DeepSpeech Raspbian RPi3/ARMv7 CPU NodeJS 15.x tests" + description: "Testing DeepSpeech for Raspbian RPi3/ARMv7 on NodeJS v15.x, CPU only, optimized version" diff --git a/taskcluster/test-nodejs_15x-win-amd64-opt.yml b/taskcluster/test-nodejs_15x-win-amd64-opt.yml new file mode 100644 index 00000000..0361ffdc --- /dev/null +++ b/taskcluster/test-nodejs_15x-win-amd64-opt.yml @@ -0,0 +1,14 @@ +build: + template_file: test-win-opt-base.tyml + dependencies: + - "win-amd64-cpu-opt" + - "test-training_16k-linux-amd64-py36m-opt" + test_model_task: "test-training_16k-linux-amd64-py36m-opt" + system_setup: + > + ${system.sox_win} && ${nodejs.win.prep_15} + args: + tests_cmdline: "${system.homedir.win}/DeepSpeech/ds/taskcluster/tc-node-tests.sh 15.x 16k" + metadata: + name: "DeepSpeech Windows AMD64 CPU NodeJS 15.x tests" + description: "Testing DeepSpeech for Windows/AMD64 on NodeJS v15.x, CPU only, optimized version" diff --git a/taskcluster/test-nodejs_15x_16k-linux-amd64-opt.yml b/taskcluster/test-nodejs_15x_16k-linux-amd64-opt.yml new file mode 100644 index 00000000..d212f7a6 --- /dev/null +++ b/taskcluster/test-nodejs_15x_16k-linux-amd64-opt.yml @@ -0,0 +1,16 @@ +build: + template_file: test-linux-opt-base.tyml + docker_image: "ubuntu:16.04" + dependencies: + - "linux-amd64-cpu-opt" + - "test-training_16k-linux-amd64-py36m-opt" + test_model_task: "test-training_16k-linux-amd64-py36m-opt" + system_setup: + > + ${nodejs.packages_xenial.prep_15} && ${nodejs.packages_xenial.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_xenial.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node-tests.sh 15.x 16k" + workerType: "${docker.dsTests}" + metadata: + name: "DeepSpeech Linux AMD64 CPU NodeJS 15.x tests (16kHz)" + description: "Testing DeepSpeech for Linux/AMD64 on NodeJS v15.x, CPU only, optimized version (16kHz)" diff --git a/taskcluster/test-nodejs_15x_16k-linux-amd64-prod_pbmodel-opt.yml b/taskcluster/test-nodejs_15x_16k-linux-amd64-prod_pbmodel-opt.yml new file mode 100644 index 00000000..265b79e8 --- /dev/null +++ b/taskcluster/test-nodejs_15x_16k-linux-amd64-prod_pbmodel-opt.yml @@ -0,0 +1,14 @@ +build: + template_file: test-linux-opt-base.tyml + docker_image: "ubuntu:16.04" + dependencies: + - "linux-amd64-cpu-opt" + system_setup: + > + ${nodejs.packages_xenial.prep_15} && ${nodejs.packages_xenial.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_xenial.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node-tests-prod.sh 15.x 16k" + workerType: "${docker.dsTests}" + metadata: + name: "DeepSpeech Linux AMD64 CPU NodeJS 15.x prod tests (16kHz)" + description: "Testing DeepSpeech for Linux/AMD64 on NodeJS v15.x on prod model, CPU only, optimized version (16kHz)" diff --git a/taskcluster/test-nodejs_15x_16k_multiarchpkg-linux-amd64-opt.yml b/taskcluster/test-nodejs_15x_16k_multiarchpkg-linux-amd64-opt.yml new file mode 100644 index 00000000..c5432811 --- /dev/null +++ b/taskcluster/test-nodejs_15x_16k_multiarchpkg-linux-amd64-opt.yml @@ -0,0 +1,16 @@ +build: + template_file: test-linux-opt-base.tyml + docker_image: "ubuntu:16.04" + dependencies: + - "node-package-cpu" + - "test-training_16k-linux-amd64-py36m-opt" + test_model_task: "test-training_16k-linux-amd64-py36m-opt" + system_setup: + > + ${nodejs.packages_xenial.prep_15} && ${nodejs.packages_xenial.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_xenial.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node-tests.sh 15.x 16k" + workerType: "${docker.dsTests}" + metadata: + name: "DeepSpeech Linux AMD64 CPU NodeJS MultiArch Package 15.x tests (16kHz)" + description: "Testing DeepSpeech for Linux/AMD64 on NodeJS MultiArch Package v15.x, CPU only, optimized version (16kHz)" diff --git a/taskcluster/test-nodejs_15x_16k_multiarchpkg-linux-amd64-prod_pbmodel-opt.yml b/taskcluster/test-nodejs_15x_16k_multiarchpkg-linux-amd64-prod_pbmodel-opt.yml new file mode 100644 index 00000000..a91afa0c --- /dev/null +++ b/taskcluster/test-nodejs_15x_16k_multiarchpkg-linux-amd64-prod_pbmodel-opt.yml @@ -0,0 +1,14 @@ +build: + template_file: test-linux-opt-base.tyml + docker_image: "ubuntu:16.04" + dependencies: + - "node-package-cpu" + system_setup: + > + ${nodejs.packages_xenial.prep_15} && ${nodejs.packages_xenial.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_xenial.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node-tests-prod.sh 15.x 16k" + workerType: "${docker.dsTests}" + metadata: + name: "DeepSpeech Linux AMD64 CPU NodeJS MultiArch Package 15.x prod tests (16kHz)" + description: "Testing DeepSpeech for Linux/AMD64 on NodeJS MultiArch Package v15.x on prod model, CPU only, optimized version (16kHz)" diff --git a/taskcluster/test-nodejs_15x_16k_multiarchpkg-linux-tflite-opt.yml b/taskcluster/test-nodejs_15x_16k_multiarchpkg-linux-tflite-opt.yml new file mode 100644 index 00000000..da90e448 --- /dev/null +++ b/taskcluster/test-nodejs_15x_16k_multiarchpkg-linux-tflite-opt.yml @@ -0,0 +1,16 @@ +build: + template_file: test-linux-opt-base.tyml + docker_image: "ubuntu:16.04" + dependencies: + - "node-package-tflite" + - "test-training_16k-linux-amd64-py36m-opt" + test_model_task: "test-training_16k-linux-amd64-py36m-opt" + system_setup: + > + ${nodejs.packages_xenial.prep_15} && ${nodejs.packages_xenial.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_xenial.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node_tflite-tests.sh 15.x 16k" + workerType: "${docker.dsTests}" + metadata: + name: "DeepSpeech Linux AMD64 TFLite NodeJS MultiArch Package 15.x tests (16kHz)" + description: "Testing DeepSpeech for Linux/AMD64 on NodeJS MultiArch Package v15.x, TFLite only, optimized version (16kHz)" diff --git a/taskcluster/test-nodejs_15x_16k_tflite-linux-amd64-prod-opt.yml b/taskcluster/test-nodejs_15x_16k_tflite-linux-amd64-prod-opt.yml new file mode 100644 index 00000000..0e9df514 --- /dev/null +++ b/taskcluster/test-nodejs_15x_16k_tflite-linux-amd64-prod-opt.yml @@ -0,0 +1,14 @@ +build: + template_file: test-linux-opt-base.tyml + docker_image: "ubuntu:16.04" + dependencies: + - "linux-amd64-tflite-opt" + system_setup: + > + ${nodejs.packages_xenial.prep_15} && ${nodejs.packages_xenial.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_xenial.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node_tflite-tests-prod.sh 15.x 16k" + workerType: "${docker.dsTests}" + metadata: + name: "DeepSpeech Linux AMD64 TFLite NodeJS 15.x prod tests (16kHz)" + description: "Testing DeepSpeech for Linux/AMD64 on NodeJS v15.x on prod model, TFLite, optimized version (16kHz)" diff --git a/taskcluster/test-nodejs_15x_8k-linux-amd64-opt.yml b/taskcluster/test-nodejs_15x_8k-linux-amd64-opt.yml new file mode 100644 index 00000000..c4580e7d --- /dev/null +++ b/taskcluster/test-nodejs_15x_8k-linux-amd64-opt.yml @@ -0,0 +1,16 @@ +build: + template_file: test-linux-opt-base.tyml + docker_image: "ubuntu:16.04" + dependencies: + - "linux-amd64-cpu-opt" + - "test-training_8k-linux-amd64-py36m-opt" + test_model_task: "test-training_8k-linux-amd64-py36m-opt" + system_setup: + > + ${nodejs.packages_xenial.prep_15} && ${nodejs.packages_xenial.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_xenial.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node-tests.sh 15.x 8k" + workerType: "${docker.dsTests}" + metadata: + name: "DeepSpeech Linux AMD64 CPU NodeJS 15.x tests (8kHz)" + description: "Testing DeepSpeech for Linux/AMD64 on NodeJS v15.x, CPU only, optimized version (8kHz)" diff --git a/taskcluster/test-nodejs_15x_8k-linux-amd64-prod_pbmodel-opt.yml b/taskcluster/test-nodejs_15x_8k-linux-amd64-prod_pbmodel-opt.yml new file mode 100644 index 00000000..a6baa21d --- /dev/null +++ b/taskcluster/test-nodejs_15x_8k-linux-amd64-prod_pbmodel-opt.yml @@ -0,0 +1,14 @@ +build: + template_file: test-linux-opt-base.tyml + docker_image: "ubuntu:16.04" + dependencies: + - "linux-amd64-cpu-opt" + system_setup: + > + ${nodejs.packages_xenial.prep_15} && ${nodejs.packages_xenial.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_xenial.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node-tests-prod.sh 15.x 8k" + workerType: "${docker.dsTests}" + metadata: + name: "DeepSpeech Linux AMD64 CPU NodeJS 15.x prod tests (8kHz)" + description: "Testing DeepSpeech for Linux/AMD64 on NodeJS v15.x on prod model, CPU only, optimized version (8kHz)" diff --git a/taskcluster/test-nodejs_15x_8k_multiarchpkg-linux-amd64-opt.yml b/taskcluster/test-nodejs_15x_8k_multiarchpkg-linux-amd64-opt.yml new file mode 100644 index 00000000..5eb1511d --- /dev/null +++ b/taskcluster/test-nodejs_15x_8k_multiarchpkg-linux-amd64-opt.yml @@ -0,0 +1,16 @@ +build: + template_file: test-linux-opt-base.tyml + docker_image: "ubuntu:16.04" + dependencies: + - "node-package-cpu" + - "test-training_8k-linux-amd64-py36m-opt" + test_model_task: "test-training_8k-linux-amd64-py36m-opt" + system_setup: + > + ${nodejs.packages_xenial.prep_15} && ${nodejs.packages_xenial.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_xenial.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node-tests.sh 15.x 8k" + workerType: "${docker.dsTests}" + metadata: + name: "DeepSpeech Linux AMD64 CPU NodeJS MultiArch Package 15.x tests (8kHz)" + description: "Testing DeepSpeech for Linux/AMD64 on NodeJS MultiArch Package v15.x, CPU only, optimized version (8kHz)" diff --git a/taskcluster/test-nodejs_15x_8k_multiarchpkg-linux-amd64-prod_pbmodel-opt.yml b/taskcluster/test-nodejs_15x_8k_multiarchpkg-linux-amd64-prod_pbmodel-opt.yml new file mode 100644 index 00000000..8fba2942 --- /dev/null +++ b/taskcluster/test-nodejs_15x_8k_multiarchpkg-linux-amd64-prod_pbmodel-opt.yml @@ -0,0 +1,14 @@ +build: + template_file: test-linux-opt-base.tyml + docker_image: "ubuntu:16.04" + dependencies: + - "node-package-cpu" + system_setup: + > + ${nodejs.packages_xenial.prep_15} && ${nodejs.packages_xenial.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_xenial.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node-tests-prod.sh 15.x 8k" + workerType: "${docker.dsTests}" + metadata: + name: "DeepSpeech Linux AMD64 CPU NodeJS MultiArch Package 15.x prod tests (8kHz)" + description: "Testing DeepSpeech for Linux/AMD64 on NodeJS MultiArch Package v15.x on prod model, CPU only, optimized version (8kHz)" diff --git a/taskcluster/test-nodejs_15x_8k_multiarchpkg-linux-tflite-opt.yml b/taskcluster/test-nodejs_15x_8k_multiarchpkg-linux-tflite-opt.yml new file mode 100644 index 00000000..2ff1a697 --- /dev/null +++ b/taskcluster/test-nodejs_15x_8k_multiarchpkg-linux-tflite-opt.yml @@ -0,0 +1,16 @@ +build: + template_file: test-linux-opt-base.tyml + docker_image: "ubuntu:16.04" + dependencies: + - "node-package-tflite" + - "test-training_8k-linux-amd64-py36m-opt" + test_model_task: "test-training_8k-linux-amd64-py36m-opt" + system_setup: + > + ${nodejs.packages_xenial.prep_15} && ${nodejs.packages_xenial.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_xenial.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node_tflite-tests.sh 15.x 8k" + workerType: "${docker.dsTests}" + metadata: + name: "DeepSpeech Linux AMD64 TFLite NodeJS MultiArch Package 15.x tests (8kHz)" + description: "Testing DeepSpeech for Linux/AMD64 on NodeJS MultiArch Package v15.x, TFLite only, optimized version (8kHz)" diff --git a/taskcluster/test-nodejs_15x_8k_tflite-linux-amd64-prod-opt.yml b/taskcluster/test-nodejs_15x_8k_tflite-linux-amd64-prod-opt.yml new file mode 100644 index 00000000..31f56ceb --- /dev/null +++ b/taskcluster/test-nodejs_15x_8k_tflite-linux-amd64-prod-opt.yml @@ -0,0 +1,14 @@ +build: + template_file: test-linux-opt-base.tyml + docker_image: "ubuntu:16.04" + dependencies: + - "linux-amd64-tflite-opt" + system_setup: + > + ${nodejs.packages_xenial.prep_15} && ${nodejs.packages_xenial.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_xenial.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node_tflite-tests-prod.sh 15.x 8k" + workerType: "${docker.dsTests}" + metadata: + name: "DeepSpeech Linux AMD64 TFLite NodeJS 15.x prod tests (8kHz)" + description: "Testing DeepSpeech for Linux/AMD64 on NodeJS v15.x on prod model, TFLite, optimized version (8kHz)" diff --git a/taskcluster/test-nodejs_15x_multiarchpkg-armbian-arm64-opt.yml b/taskcluster/test-nodejs_15x_multiarchpkg-armbian-arm64-opt.yml new file mode 100644 index 00000000..4a3e40e1 --- /dev/null +++ b/taskcluster/test-nodejs_15x_multiarchpkg-armbian-arm64-opt.yml @@ -0,0 +1,14 @@ +build: + template_file: test-armbian-opt-base.tyml + dependencies: + - "node-package-cpu" + - "test-training_16k-linux-amd64-py36m-opt" + test_model_task: "test-training_16k-linux-amd64-py36m-opt" + system_setup: + > + ${nodejs.packages_buster.prep_15} && ${nodejs.packages_buster.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_buster.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node_tflite-tests.sh 15.x 16k" + metadata: + name: "DeepSpeech ARMbian ARM64 Cortex-A53 CPU NodeJS MultiArch Package 15.x tests" + description: "Testing DeepSpeech for ARMbian ARM64 Cortex-A53 on NodeJS MultiArch Package v15.x, CPU only, optimized version" diff --git a/taskcluster/test-nodejs_15x_multiarchpkg-darwin-amd64-opt.yml b/taskcluster/test-nodejs_15x_multiarchpkg-darwin-amd64-opt.yml new file mode 100644 index 00000000..1eac1ff9 --- /dev/null +++ b/taskcluster/test-nodejs_15x_multiarchpkg-darwin-amd64-opt.yml @@ -0,0 +1,15 @@ +build: + template_file: test-darwin-opt-base.tyml + dependencies: + - "node-package-cpu" + - "test-training_16k-linux-amd64-py36m-opt" + - "homebrew_tests-darwin-amd64" + test_model_task: "test-training_16k-linux-amd64-py36m-opt" + system_setup: + > + ${nodejs.brew.prep_15} + args: + tests_cmdline: "$TASKCLUSTER_TASK_DIR/DeepSpeech/ds/taskcluster/tc-node-tests.sh 15.x 16k" + metadata: + name: "DeepSpeech OSX AMD64 CPU NodeJS MultiArch Package 15.x tests" + description: "Testing DeepSpeech for OSX/AMD64 on NodeJS MultiArch Package v15.x, CPU only, optimized version" diff --git a/taskcluster/test-nodejs_15x_multiarchpkg-darwin-tflite-opt.yml b/taskcluster/test-nodejs_15x_multiarchpkg-darwin-tflite-opt.yml new file mode 100644 index 00000000..db345e5a --- /dev/null +++ b/taskcluster/test-nodejs_15x_multiarchpkg-darwin-tflite-opt.yml @@ -0,0 +1,15 @@ +build: + template_file: test-darwin-opt-base.tyml + dependencies: + - "node-package-tflite" + - "test-training_16k-linux-amd64-py36m-opt" + - "homebrew_tests-darwin-amd64" + test_model_task: "test-training_16k-linux-amd64-py36m-opt" + system_setup: + > + ${nodejs.brew.prep_15} + args: + tests_cmdline: "$TASKCLUSTER_TASK_DIR/DeepSpeech/ds/taskcluster/tc-node_tflite-tests.sh 15.x 16k" + metadata: + name: "DeepSpeech OSX AMD64 TFLite NodeJS MultiArch Package 15.x tests" + description: "Testing DeepSpeech for OSX/AMD64 on NodeJS MultiArch Package v15.x, TFLite only, optimized version" diff --git a/taskcluster/test-nodejs_15x_multiarchpkg-raspbian-rpi3-opt.yml b/taskcluster/test-nodejs_15x_multiarchpkg-raspbian-rpi3-opt.yml new file mode 100644 index 00000000..52490ef2 --- /dev/null +++ b/taskcluster/test-nodejs_15x_multiarchpkg-raspbian-rpi3-opt.yml @@ -0,0 +1,14 @@ +build: + template_file: test-raspbian-opt-base.tyml + dependencies: + - "node-package-cpu" + - "test-training_16k-linux-amd64-py36m-opt" + test_model_task: "test-training_16k-linux-amd64-py36m-opt" + system_setup: + > + ${nodejs.packages_buster.prep_15} && ${nodejs.packages_buster.apt_pinning} && apt-get -qq update && apt-get -qq -y install ${nodejs.packages_buster.apt} + args: + tests_cmdline: "${system.homedir.linux}/DeepSpeech/ds/taskcluster/tc-node_tflite-tests.sh 15.x 16k" + metadata: + name: "DeepSpeech Raspbian RPi3/ARMv7 CPU NodeJS MultiArch Package 15.x tests" + description: "Testing DeepSpeech for Raspbian RPi3/ARMv7 on NodeJS MultiArch Package v15.x, CPU only, optimized version" diff --git a/taskcluster/test-nodejs_15x_multiarchpkg-win-amd64-opt.yml b/taskcluster/test-nodejs_15x_multiarchpkg-win-amd64-opt.yml new file mode 100644 index 00000000..2b195bd5 --- /dev/null +++ b/taskcluster/test-nodejs_15x_multiarchpkg-win-amd64-opt.yml @@ -0,0 +1,14 @@ +build: + template_file: test-win-opt-base.tyml + dependencies: + - "node-package-cpu" + - "test-training_16k-linux-amd64-py36m-opt" + test_model_task: "test-training_16k-linux-amd64-py36m-opt" + system_setup: + > + ${system.sox_win} && ${nodejs.win.prep_15} + args: + tests_cmdline: "${system.homedir.win}/DeepSpeech/ds/taskcluster/tc-node-tests.sh 15.x 16k" + metadata: + name: "DeepSpeech Windows AMD64 CPU NodeJS MultiArch Package 15.x tests" + description: "Testing DeepSpeech for Windows/AMD64 on NodeJS MultiArch Package v15.x, CPU only, optimized version" diff --git a/taskcluster/test-nodejs_15x_multiarchpkg-win-cuda-opt.yml b/taskcluster/test-nodejs_15x_multiarchpkg-win-cuda-opt.yml new file mode 100644 index 00000000..e8285c83 --- /dev/null +++ b/taskcluster/test-nodejs_15x_multiarchpkg-win-cuda-opt.yml @@ -0,0 +1,14 @@ +build: + template_file: test-win-cuda-opt-base.tyml + dependencies: + - "node-package-gpu" + - "test-training_16k-linux-amd64-py36m-opt" + test_model_task: "test-training_16k-linux-amd64-py36m-opt" + system_setup: + > + ${system.sox_win} && ${nodejs.win.prep_15} + args: + tests_cmdline: "${system.homedir.win}/DeepSpeech/ds/taskcluster/tc-node-tests.sh 15.x 16k cuda" + metadata: + name: "DeepSpeech Windows AMD64 CUDA NodeJS MultiArch Package 15.x tests" + description: "Testing DeepSpeech for Windows/AMD64 on NodeJS MultiArch Package v15.x, CUDA, optimized version" diff --git a/taskcluster/test-nodejs_15x_multiarchpkg-win-tflite-opt.yml b/taskcluster/test-nodejs_15x_multiarchpkg-win-tflite-opt.yml new file mode 100644 index 00000000..24f08965 --- /dev/null +++ b/taskcluster/test-nodejs_15x_multiarchpkg-win-tflite-opt.yml @@ -0,0 +1,14 @@ +build: + template_file: test-win-opt-base.tyml + dependencies: + - "node-package-tflite" + - "test-training_16k-linux-amd64-py36m-opt" + test_model_task: "test-training_16k-linux-amd64-py36m-opt" + system_setup: + > + ${system.sox_win} && ${nodejs.win.prep_15} + args: + tests_cmdline: "${system.homedir.win}/DeepSpeech/ds/taskcluster/tc-node_tflite-tests.sh 15.x 16k" + metadata: + name: "DeepSpeech Windows AMD64 TFLite NodeJS MultiArch Package 15.x tests" + description: "Testing DeepSpeech for Windows/AMD64 on NodeJS MultiArch Package v15.x, TFLite only, optimized version"