@napi-rs/cli 3.0.0-alpha.3 → 3.0.0-alpha.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cli.mjs +0 -0
- package/dist/api/build.js +8 -2
- package/dist/api/templates/ci-template.js +9 -8
- package/dist/api/templates/js-binding.js +242 -109
- package/dist/cli.js +0 -0
- package/dist/commands/artifacts.js +2 -1
- package/dist/commands/help.js +2 -1
- package/dist/def/artifacts.js +2 -1
- package/dist/def/build.d.ts +12 -0
- package/dist/def/build.js +10 -1
- package/dist/def/create-npm-dirs.js +2 -1
- package/dist/def/new.js +2 -1
- package/dist/def/pre-publish.js +2 -1
- package/dist/def/rename.js +2 -1
- package/dist/def/universalize.js +2 -1
- package/dist/def/version.js +2 -1
- package/dist/index.cjs +274 -116
- package/dist/utils/ci.js +9 -0
- package/dist/utils/target.d.ts +2 -2
- package/dist/utils/target.js +4 -0
- package/package.json +5 -5
- package/src/api/build.ts +11 -7
- package/src/api/templates/ci-template.ts +9 -8
- package/src/api/templates/js-binding.ts +231 -104
- package/src/def/build.ts +19 -0
- package/src/utils/__tests__/__snapshots__/target.spec.ts.md +7 -0
- package/src/utils/__tests__/__snapshots__/target.spec.ts.snap +0 -0
- package/src/utils/ci.ts +9 -0
- package/src/utils/target.ts +5 -0
- package/dist/def/commands/artifacts.d.ts +0 -15
- package/dist/def/commands/artifacts.js +0 -29
- package/dist/def/commands/build.d.ts +0 -53
- package/dist/def/commands/build.js +0 -105
- package/dist/def/commands/create-npm-dirs.d.ts +0 -15
- package/dist/def/commands/create-npm-dirs.js +0 -29
- package/dist/def/commands/new.d.ts +0 -27
- package/dist/def/commands/new.js +0 -53
- package/dist/def/commands/pre-publish.d.ts +0 -23
- package/dist/def/commands/pre-publish.js +0 -45
- package/dist/def/commands/rename.d.ts +0 -25
- package/dist/def/commands/rename.js +0 -49
- package/dist/def/commands/universalize.d.ts +0 -13
- package/dist/def/commands/universalize.js +0 -25
- package/dist/def/commands/version.d.ts +0 -13
- package/dist/def/commands/version.js +0 -25
- package/dist/def/options/artifacts.d.ts +0 -35
- package/dist/def/options/artifacts.js +0 -11
- package/dist/def/options/build.d.ts +0 -97
- package/dist/def/options/build.js +0 -3
- package/dist/def/options/create-npm-dirs.d.ts +0 -35
- package/dist/def/options/create-npm-dirs.js +0 -11
- package/dist/def/options/new.d.ts +0 -79
- package/dist/def/options/new.js +0 -15
- package/dist/def/options/pre-publish.d.ts +0 -65
- package/dist/def/options/pre-publish.js +0 -13
- package/dist/def/options/rename.d.ts +0 -75
- package/dist/def/options/rename.js +0 -11
- package/dist/def/options/universalize.d.ts +0 -28
- package/dist/def/options/universalize.js +0 -10
- package/dist/def/options/version.d.ts +0 -28
- package/dist/def/options/version.js +0 -10
package/dist/def/universalize.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file is generated by codegen/index.ts
|
|
2
2
|
// Do not edit this file manually
|
|
3
3
|
import { Command, Option } from 'clipanion';
|
|
4
|
-
|
|
4
|
+
class BaseUniversalizeCommand extends Command {
|
|
5
5
|
static paths = [['universalize']];
|
|
6
6
|
static usage = Command.Usage({
|
|
7
7
|
description: 'Combile built binaries into one universal binary',
|
|
@@ -23,6 +23,7 @@ export class BaseUniversalizeCommand extends Command {
|
|
|
23
23
|
};
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
|
+
export { BaseUniversalizeCommand };
|
|
26
27
|
export function applyDefaultUniversalizeOptions(options) {
|
|
27
28
|
return {
|
|
28
29
|
cwd: process.cwd(),
|
package/dist/def/version.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// This file is generated by codegen/index.ts
|
|
2
2
|
// Do not edit this file manually
|
|
3
3
|
import { Command, Option } from 'clipanion';
|
|
4
|
-
|
|
4
|
+
class BaseVersionCommand extends Command {
|
|
5
5
|
static paths = [['version']];
|
|
6
6
|
static usage = Command.Usage({
|
|
7
7
|
description: 'Update version in created npm packages',
|
|
@@ -23,6 +23,7 @@ export class BaseVersionCommand extends Command {
|
|
|
23
23
|
};
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
|
+
export { BaseVersionCommand };
|
|
26
27
|
export function applyDefaultVersionOptions(options) {
|
|
27
28
|
return {
|
|
28
29
|
cwd: process.cwd(),
|
package/dist/index.cjs
CHANGED
|
@@ -4247,7 +4247,7 @@ var require_dist_node2 = __commonJS({
|
|
|
4247
4247
|
parse: parse3
|
|
4248
4248
|
});
|
|
4249
4249
|
}
|
|
4250
|
-
var VERSION = "7.0.
|
|
4250
|
+
var VERSION = "7.0.5";
|
|
4251
4251
|
var userAgent = `octokit-endpoint.js/${VERSION} ${universalUserAgent.getUserAgent()}`;
|
|
4252
4252
|
var DEFAULTS = {
|
|
4253
4253
|
method: "GET",
|
|
@@ -9749,9 +9749,9 @@ var require_encoding = __commonJS({
|
|
|
9749
9749
|
}
|
|
9750
9750
|
});
|
|
9751
9751
|
|
|
9752
|
-
// ../node_modules/node-fetch/lib/index.js
|
|
9752
|
+
// ../node_modules/@octokit/request/node_modules/node-fetch/lib/index.js
|
|
9753
9753
|
var require_lib4 = __commonJS({
|
|
9754
|
-
"../node_modules/node-fetch/lib/index.js"(exports2, module2) {
|
|
9754
|
+
"../node_modules/@octokit/request/node_modules/node-fetch/lib/index.js"(exports2, module2) {
|
|
9755
9755
|
"use strict";
|
|
9756
9756
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
9757
9757
|
function _interopDefault(ex) {
|
|
@@ -10810,7 +10810,9 @@ var require_lib4 = __commonJS({
|
|
|
10810
10810
|
if (signal && signal.aborted) {
|
|
10811
10811
|
return;
|
|
10812
10812
|
}
|
|
10813
|
-
|
|
10813
|
+
if (response && response.body) {
|
|
10814
|
+
destroyStream(response.body, err);
|
|
10815
|
+
}
|
|
10814
10816
|
});
|
|
10815
10817
|
if (parseInt(process.version.substring(1)) < 14) {
|
|
10816
10818
|
req.on("socket", function(s) {
|
|
@@ -11157,7 +11159,7 @@ var require_dist_node5 = __commonJS({
|
|
|
11157
11159
|
var isPlainObject2 = require_is_plain_object();
|
|
11158
11160
|
var nodeFetch = _interopDefault(require_lib4());
|
|
11159
11161
|
var requestError = require_dist_node4();
|
|
11160
|
-
var VERSION = "6.2.
|
|
11162
|
+
var VERSION = "6.2.3";
|
|
11161
11163
|
function getBufferResponse(response) {
|
|
11162
11164
|
return response.arrayBuffer();
|
|
11163
11165
|
}
|
|
@@ -11309,7 +11311,7 @@ var require_dist_node6 = __commonJS({
|
|
|
11309
11311
|
Object.defineProperty(exports2, "__esModule", { value: true });
|
|
11310
11312
|
var request = require_dist_node5();
|
|
11311
11313
|
var universalUserAgent = require_dist_node();
|
|
11312
|
-
var VERSION = "5.0.
|
|
11314
|
+
var VERSION = "5.0.5";
|
|
11313
11315
|
function _buildMessageForResponseErrors(data) {
|
|
11314
11316
|
return `Request failed due to following response errors:
|
|
11315
11317
|
` + data.errors.map((e) => ` - ${e.message}`).join("\n");
|
|
@@ -11456,7 +11458,7 @@ var require_dist_node8 = __commonJS({
|
|
|
11456
11458
|
var request = require_dist_node5();
|
|
11457
11459
|
var graphql = require_dist_node6();
|
|
11458
11460
|
var authToken = require_dist_node7();
|
|
11459
|
-
var VERSION = "4.
|
|
11461
|
+
var VERSION = "4.2.0";
|
|
11460
11462
|
var Octokit2 = class {
|
|
11461
11463
|
constructor(options = {}) {
|
|
11462
11464
|
const hook = new beforeAfterHook.Collection();
|
|
@@ -13042,7 +13044,8 @@ var AVAILABLE_TARGETS = [
|
|
|
13042
13044
|
"i686-pc-windows-msvc",
|
|
13043
13045
|
"armv7-unknown-linux-gnueabihf",
|
|
13044
13046
|
"armv7-linux-androideabi",
|
|
13045
|
-
"universal-apple-darwin"
|
|
13047
|
+
"universal-apple-darwin",
|
|
13048
|
+
"riscv64gc-unknown-linux-gnu"
|
|
13046
13049
|
];
|
|
13047
13050
|
var DEFAULT_TARGETS = [
|
|
13048
13051
|
"x86_64-apple-darwin",
|
|
@@ -13050,19 +13053,22 @@ var DEFAULT_TARGETS = [
|
|
|
13050
13053
|
"x86_64-unknown-linux-gnu"
|
|
13051
13054
|
];
|
|
13052
13055
|
var TARGET_LINKER = {
|
|
13053
|
-
"aarch64-unknown-linux-musl": "aarch64-linux-musl-gcc"
|
|
13056
|
+
"aarch64-unknown-linux-musl": "aarch64-linux-musl-gcc",
|
|
13057
|
+
"riscv64gc-unknown-linux-gnu": "riscv64-linux-gnu-gcc"
|
|
13054
13058
|
};
|
|
13055
13059
|
var CpuToNodeArch = {
|
|
13056
13060
|
x86_64: "x64",
|
|
13057
13061
|
aarch64: "arm64",
|
|
13058
13062
|
i686: "ia32",
|
|
13059
|
-
armv7: "arm"
|
|
13063
|
+
armv7: "arm",
|
|
13064
|
+
riscv64gc: "riscv64"
|
|
13060
13065
|
};
|
|
13061
13066
|
var NodeArchToCpu = {
|
|
13062
13067
|
x64: "x86_64",
|
|
13063
13068
|
arm64: "aarch64",
|
|
13064
13069
|
ia32: "i686",
|
|
13065
|
-
arm: "armv7"
|
|
13070
|
+
arm: "armv7",
|
|
13071
|
+
riscv64: "riscv64gc"
|
|
13066
13072
|
};
|
|
13067
13073
|
var SysToNodePlatform = {
|
|
13068
13074
|
linux: "linux",
|
|
@@ -18833,6 +18839,14 @@ jobs:
|
|
|
18833
18839
|
- host: windows-latest
|
|
18834
18840
|
target: 'aarch64-pc-windows-msvc'
|
|
18835
18841
|
build: yarn build --platform --target aarch64-pc-windows-msvc
|
|
18842
|
+
- host: ubuntu-latest
|
|
18843
|
+
target: 'riscv64gc-unknown-linux-gnu'
|
|
18844
|
+
setup: |
|
|
18845
|
+
sudo apt-get update
|
|
18846
|
+
sudo apt-get install gcc-riscv64-linux-gnu -y
|
|
18847
|
+
build: |
|
|
18848
|
+
yarn build --platform --target riscv64gc-unknown-linux-gnu
|
|
18849
|
+
riscv64-linux-gnu-strip *.node
|
|
18836
18850
|
|
|
18837
18851
|
name: stable - \${{ matrix.settings.target }} - node@18
|
|
18838
18852
|
runs-on: \${{ matrix.settings.host }}
|
|
@@ -18845,7 +18859,6 @@ jobs:
|
|
|
18845
18859
|
if: \${{ !matrix.settings.docker }}
|
|
18846
18860
|
with:
|
|
18847
18861
|
node-version: 18
|
|
18848
|
-
check-latest: true
|
|
18849
18862
|
cache: yarn
|
|
18850
18863
|
|
|
18851
18864
|
- name: Install
|
|
@@ -18889,7 +18902,6 @@ jobs:
|
|
|
18889
18902
|
if: matrix.settings.target == 'i686-pc-windows-msvc'
|
|
18890
18903
|
with:
|
|
18891
18904
|
node-version: 18
|
|
18892
|
-
check-latest: true
|
|
18893
18905
|
cache: yarn
|
|
18894
18906
|
architecture: x86
|
|
18895
18907
|
|
|
@@ -18986,7 +18998,6 @@ jobs:
|
|
|
18986
18998
|
uses: actions/setup-node@v3
|
|
18987
18999
|
with:
|
|
18988
19000
|
node-version: \${{ matrix.node }}
|
|
18989
|
-
check-latest: true
|
|
18990
19001
|
cache: 'yarn'
|
|
18991
19002
|
|
|
18992
19003
|
- name: 'Install dependencies'
|
|
@@ -19022,7 +19033,6 @@ jobs:
|
|
|
19022
19033
|
uses: actions/setup-node@v3
|
|
19023
19034
|
with:
|
|
19024
19035
|
node-version: \${{ matrix.node }}
|
|
19025
|
-
check-latest: true
|
|
19026
19036
|
cache: 'yarn'
|
|
19027
19037
|
|
|
19028
19038
|
- name: 'Install dependencies'
|
|
@@ -19058,7 +19068,6 @@ jobs:
|
|
|
19058
19068
|
uses: actions/setup-node@v3
|
|
19059
19069
|
with:
|
|
19060
19070
|
node-version: \${{ matrix.node }}
|
|
19061
|
-
check-latest: true
|
|
19062
19071
|
cache: 'yarn'
|
|
19063
19072
|
|
|
19064
19073
|
- name: 'Install dependencies'
|
|
@@ -19107,7 +19116,7 @@ jobs:
|
|
|
19107
19116
|
yarn config set supportedArchitectures.cpu "arm64"
|
|
19108
19117
|
yarn config set supportedArchitectures.libc "glibc"
|
|
19109
19118
|
yarn install
|
|
19110
|
-
|
|
19119
|
+
|
|
19111
19120
|
- name: Set up QEMU
|
|
19112
19121
|
uses: docker/setup-qemu-action@v2
|
|
19113
19122
|
with:
|
|
@@ -19222,7 +19231,6 @@ jobs:
|
|
|
19222
19231
|
uses: actions/setup-node@v3
|
|
19223
19232
|
with:
|
|
19224
19233
|
node-version: 18
|
|
19225
|
-
check-latest: true
|
|
19226
19234
|
cache: yarn
|
|
19227
19235
|
|
|
19228
19236
|
- name: 'Install dependencies'
|
|
@@ -19268,7 +19276,6 @@ jobs:
|
|
|
19268
19276
|
uses: actions/setup-node@v3
|
|
19269
19277
|
with:
|
|
19270
19278
|
node-version: 18
|
|
19271
|
-
check-latest: true
|
|
19272
19279
|
cache: 'yarn'
|
|
19273
19280
|
|
|
19274
19281
|
- name: 'Install dependencies'
|
|
@@ -19429,116 +19436,261 @@ var createPackageJson = ({ name, binaryName, targets, license, engineRequirement
|
|
|
19429
19436
|
};
|
|
19430
19437
|
|
|
19431
19438
|
// dist/api/templates/js-binding.js
|
|
19432
|
-
function
|
|
19433
|
-
|
|
19434
|
-
|
|
19435
|
-
|
|
19436
|
-
|
|
19437
|
-
|
|
19438
|
-
|
|
19439
|
-
|
|
19440
|
-
|
|
19441
|
-
|
|
19442
|
-
|
|
19443
|
-
|
|
19444
|
-
|
|
19445
|
-
|
|
19446
|
-
|
|
19447
|
-
|
|
19439
|
+
function createJsBinding(localName, pkgName) {
|
|
19440
|
+
return `// prettier-ignore
|
|
19441
|
+
/* tslint:disable */
|
|
19442
|
+
/* eslint-disable */
|
|
19443
|
+
|
|
19444
|
+
/* auto-generated by NAPI-RS */
|
|
19445
|
+
|
|
19446
|
+
const { existsSync, readFileSync } = require('fs')
|
|
19447
|
+
const { join } = require('path')
|
|
19448
|
+
|
|
19449
|
+
const { platform, arch } = process
|
|
19450
|
+
|
|
19451
|
+
let nativeBinding = null
|
|
19452
|
+
let localFileExisted = false
|
|
19453
|
+
let loadError = null
|
|
19454
|
+
|
|
19455
|
+
function isMusl() {
|
|
19456
|
+
// For Node 10
|
|
19457
|
+
if (!process.report || typeof process.report.getReport !== 'function') {
|
|
19458
|
+
try {
|
|
19459
|
+
const lddPath = require('child_process').execSync('which ldd').toString().trim()
|
|
19460
|
+
return readFileSync(lddPath, 'utf8').includes('musl')
|
|
19461
|
+
} catch (e) {
|
|
19462
|
+
return true
|
|
19448
19463
|
}
|
|
19464
|
+
} else {
|
|
19465
|
+
const { glibcVersionRuntime } = process.report.getReport().header
|
|
19466
|
+
return !glibcVersionRuntime
|
|
19449
19467
|
}
|
|
19450
|
-
|
|
19451
|
-
|
|
19452
|
-
|
|
19453
|
-
|
|
19454
|
-
|
|
19455
|
-
|
|
19456
|
-
|
|
19457
|
-
|
|
19458
|
-
|
|
19459
|
-
|
|
19460
|
-
break;
|
|
19461
|
-
case "win32":
|
|
19462
|
-
switch (arch) {
|
|
19463
|
-
case "x64":
|
|
19464
|
-
candidates.push("win32-x64-msvc");
|
|
19465
|
-
break;
|
|
19466
|
-
case "ia32":
|
|
19467
|
-
candidates.push("win32-ia32-msvc");
|
|
19468
|
-
break;
|
|
19469
|
-
case "arm64":
|
|
19470
|
-
candidates.push("win32-arm64-msvc");
|
|
19471
|
-
break;
|
|
19472
|
-
}
|
|
19473
|
-
break;
|
|
19474
|
-
case "darwin":
|
|
19475
|
-
candidates.push("darwin-universal");
|
|
19476
|
-
switch (arch) {
|
|
19477
|
-
case "x64":
|
|
19478
|
-
candidates.push("darwin-x64");
|
|
19479
|
-
break;
|
|
19480
|
-
case "arm64":
|
|
19481
|
-
candidates.push("darwin-arm64");
|
|
19482
|
-
break;
|
|
19483
|
-
}
|
|
19484
|
-
break;
|
|
19485
|
-
case "freebsd":
|
|
19486
|
-
if (arch === "x64") {
|
|
19487
|
-
candidates.push("freebsd-x64");
|
|
19488
|
-
}
|
|
19489
|
-
break;
|
|
19490
|
-
case "linux":
|
|
19491
|
-
switch (arch) {
|
|
19492
|
-
case "x64":
|
|
19493
|
-
if (isMusl()) {
|
|
19494
|
-
candidates.push("linux-x64-musl");
|
|
19468
|
+
}
|
|
19469
|
+
|
|
19470
|
+
switch (platform) {
|
|
19471
|
+
case 'android':
|
|
19472
|
+
switch (arch) {
|
|
19473
|
+
case 'arm64':
|
|
19474
|
+
localFileExisted = existsSync(join(__dirname, '${localName}.android-arm64.node'))
|
|
19475
|
+
try {
|
|
19476
|
+
if (localFileExisted) {
|
|
19477
|
+
nativeBinding = require('./${localName}.android-arm64.node')
|
|
19495
19478
|
} else {
|
|
19496
|
-
|
|
19479
|
+
nativeBinding = require('${pkgName}-android-arm64')
|
|
19497
19480
|
}
|
|
19498
|
-
|
|
19499
|
-
|
|
19500
|
-
|
|
19501
|
-
|
|
19481
|
+
} catch (e) {
|
|
19482
|
+
loadError = e
|
|
19483
|
+
}
|
|
19484
|
+
break
|
|
19485
|
+
case 'arm':
|
|
19486
|
+
localFileExisted = existsSync(join(__dirname, '${localName}.android-arm-eabi.node'))
|
|
19487
|
+
try {
|
|
19488
|
+
if (localFileExisted) {
|
|
19489
|
+
nativeBinding = require('./${localName}.android-arm-eabi.node')
|
|
19502
19490
|
} else {
|
|
19503
|
-
|
|
19491
|
+
nativeBinding = require('${pkgName}-android-arm-eabi')
|
|
19504
19492
|
}
|
|
19505
|
-
|
|
19506
|
-
|
|
19507
|
-
|
|
19508
|
-
|
|
19493
|
+
} catch (e) {
|
|
19494
|
+
loadError = e
|
|
19495
|
+
}
|
|
19496
|
+
break
|
|
19497
|
+
default:
|
|
19498
|
+
throw new Error(\`Unsupported architecture on Android \${arch}\`)
|
|
19499
|
+
}
|
|
19500
|
+
break
|
|
19501
|
+
case 'win32':
|
|
19502
|
+
switch (arch) {
|
|
19503
|
+
case 'x64':
|
|
19504
|
+
localFileExisted = existsSync(
|
|
19505
|
+
join(__dirname, '${localName}.win32-x64-msvc.node')
|
|
19506
|
+
)
|
|
19507
|
+
try {
|
|
19508
|
+
if (localFileExisted) {
|
|
19509
|
+
nativeBinding = require('./${localName}.win32-x64-msvc.node')
|
|
19510
|
+
} else {
|
|
19511
|
+
nativeBinding = require('${pkgName}-win32-x64-msvc')
|
|
19512
|
+
}
|
|
19513
|
+
} catch (e) {
|
|
19514
|
+
loadError = e
|
|
19515
|
+
}
|
|
19516
|
+
break
|
|
19517
|
+
case 'ia32':
|
|
19518
|
+
localFileExisted = existsSync(
|
|
19519
|
+
join(__dirname, '${localName}.win32-ia32-msvc.node')
|
|
19520
|
+
)
|
|
19521
|
+
try {
|
|
19522
|
+
if (localFileExisted) {
|
|
19523
|
+
nativeBinding = require('./${localName}.win32-ia32-msvc.node')
|
|
19524
|
+
} else {
|
|
19525
|
+
nativeBinding = require('${pkgName}-win32-ia32-msvc')
|
|
19526
|
+
}
|
|
19527
|
+
} catch (e) {
|
|
19528
|
+
loadError = e
|
|
19529
|
+
}
|
|
19530
|
+
break
|
|
19531
|
+
case 'arm64':
|
|
19532
|
+
localFileExisted = existsSync(
|
|
19533
|
+
join(__dirname, '${localName}.win32-arm64-msvc.node')
|
|
19534
|
+
)
|
|
19535
|
+
try {
|
|
19536
|
+
if (localFileExisted) {
|
|
19537
|
+
nativeBinding = require('./${localName}.win32-arm64-msvc.node')
|
|
19538
|
+
} else {
|
|
19539
|
+
nativeBinding = require('${pkgName}-win32-arm64-msvc')
|
|
19540
|
+
}
|
|
19541
|
+
} catch (e) {
|
|
19542
|
+
loadError = e
|
|
19543
|
+
}
|
|
19544
|
+
break
|
|
19545
|
+
default:
|
|
19546
|
+
throw new Error(\`Unsupported architecture on Windows: \${arch}\`)
|
|
19547
|
+
}
|
|
19548
|
+
break
|
|
19549
|
+
case 'darwin':
|
|
19550
|
+
localFileExisted = existsSync(join(__dirname, '${localName}.darwin-universal.node'))
|
|
19551
|
+
try {
|
|
19552
|
+
if (localFileExisted) {
|
|
19553
|
+
nativeBinding = require('./${localName}.darwin-universal.node')
|
|
19554
|
+
} else {
|
|
19555
|
+
nativeBinding = require('${pkgName}-darwin-universal')
|
|
19509
19556
|
}
|
|
19510
|
-
break
|
|
19511
|
-
|
|
19512
|
-
|
|
19513
|
-
|
|
19514
|
-
|
|
19515
|
-
|
|
19516
|
-
|
|
19557
|
+
break
|
|
19558
|
+
} catch {}
|
|
19559
|
+
switch (arch) {
|
|
19560
|
+
case 'x64':
|
|
19561
|
+
localFileExisted = existsSync(join(__dirname, '${localName}.darwin-x64.node'))
|
|
19562
|
+
try {
|
|
19563
|
+
if (localFileExisted) {
|
|
19564
|
+
nativeBinding = require('./${localName}.darwin-x64.node')
|
|
19565
|
+
} else {
|
|
19566
|
+
nativeBinding = require('${pkgName}-darwin-x64')
|
|
19567
|
+
}
|
|
19568
|
+
} catch (e) {
|
|
19569
|
+
loadError = e
|
|
19570
|
+
}
|
|
19571
|
+
break
|
|
19572
|
+
case 'arm64':
|
|
19573
|
+
localFileExisted = existsSync(
|
|
19574
|
+
join(__dirname, '${localName}.darwin-arm64.node')
|
|
19575
|
+
)
|
|
19576
|
+
try {
|
|
19577
|
+
if (localFileExisted) {
|
|
19578
|
+
nativeBinding = require('./${localName}.darwin-arm64.node')
|
|
19579
|
+
} else {
|
|
19580
|
+
nativeBinding = require('${pkgName}-darwin-arm64')
|
|
19581
|
+
}
|
|
19582
|
+
} catch (e) {
|
|
19583
|
+
loadError = e
|
|
19584
|
+
}
|
|
19585
|
+
break
|
|
19586
|
+
default:
|
|
19587
|
+
throw new Error(\`Unsupported architecture on macOS: \${arch}\`)
|
|
19588
|
+
}
|
|
19589
|
+
break
|
|
19590
|
+
case 'freebsd':
|
|
19591
|
+
if (arch !== 'x64') {
|
|
19592
|
+
throw new Error(\`Unsupported architecture on FreeBSD: \${arch}\`)
|
|
19593
|
+
}
|
|
19594
|
+
localFileExisted = existsSync(join(__dirname, '${localName}.freebsd-x64.node'))
|
|
19517
19595
|
try {
|
|
19518
|
-
if (
|
|
19519
|
-
nativeBinding = require(
|
|
19596
|
+
if (localFileExisted) {
|
|
19597
|
+
nativeBinding = require('./${localName}.freebsd-x64.node')
|
|
19520
19598
|
} else {
|
|
19521
|
-
nativeBinding = require(
|
|
19599
|
+
nativeBinding = require('${pkgName}-freebsd-x64')
|
|
19522
19600
|
}
|
|
19523
19601
|
} catch (e) {
|
|
19524
|
-
loadError = e
|
|
19525
|
-
|
|
19526
|
-
|
|
19527
|
-
|
|
19528
|
-
|
|
19529
|
-
|
|
19530
|
-
|
|
19531
|
-
|
|
19532
|
-
|
|
19602
|
+
loadError = e
|
|
19603
|
+
}
|
|
19604
|
+
break
|
|
19605
|
+
case 'linux':
|
|
19606
|
+
switch (arch) {
|
|
19607
|
+
case 'x64':
|
|
19608
|
+
if (isMusl()) {
|
|
19609
|
+
localFileExisted = existsSync(
|
|
19610
|
+
join(__dirname, '${localName}.linux-x64-musl.node')
|
|
19611
|
+
)
|
|
19612
|
+
try {
|
|
19613
|
+
if (localFileExisted) {
|
|
19614
|
+
nativeBinding = require('./${localName}.linux-x64-musl.node')
|
|
19615
|
+
} else {
|
|
19616
|
+
nativeBinding = require('${pkgName}-linux-x64-musl')
|
|
19617
|
+
}
|
|
19618
|
+
} catch (e) {
|
|
19619
|
+
loadError = e
|
|
19620
|
+
}
|
|
19621
|
+
} else {
|
|
19622
|
+
localFileExisted = existsSync(
|
|
19623
|
+
join(__dirname, '${localName}.linux-x64-gnu.node')
|
|
19624
|
+
)
|
|
19625
|
+
try {
|
|
19626
|
+
if (localFileExisted) {
|
|
19627
|
+
nativeBinding = require('./${localName}.linux-x64-gnu.node')
|
|
19628
|
+
} else {
|
|
19629
|
+
nativeBinding = require('${pkgName}-linux-x64-gnu')
|
|
19630
|
+
}
|
|
19631
|
+
} catch (e) {
|
|
19632
|
+
loadError = e
|
|
19633
|
+
}
|
|
19634
|
+
}
|
|
19635
|
+
break
|
|
19636
|
+
case 'arm64':
|
|
19637
|
+
if (isMusl()) {
|
|
19638
|
+
localFileExisted = existsSync(
|
|
19639
|
+
join(__dirname, '${localName}.linux-arm64-musl.node')
|
|
19640
|
+
)
|
|
19641
|
+
try {
|
|
19642
|
+
if (localFileExisted) {
|
|
19643
|
+
nativeBinding = require('./${localName}.linux-arm64-musl.node')
|
|
19644
|
+
} else {
|
|
19645
|
+
nativeBinding = require('${pkgName}-linux-arm64-musl')
|
|
19646
|
+
}
|
|
19647
|
+
} catch (e) {
|
|
19648
|
+
loadError = e
|
|
19649
|
+
}
|
|
19650
|
+
} else {
|
|
19651
|
+
localFileExisted = existsSync(
|
|
19652
|
+
join(__dirname, '${localName}.linux-arm64-gnu.node')
|
|
19653
|
+
)
|
|
19654
|
+
try {
|
|
19655
|
+
if (localFileExisted) {
|
|
19656
|
+
nativeBinding = require('./${localName}.linux-arm64-gnu.node')
|
|
19657
|
+
} else {
|
|
19658
|
+
nativeBinding = require('${pkgName}-linux-arm64-gnu')
|
|
19659
|
+
}
|
|
19660
|
+
} catch (e) {
|
|
19661
|
+
loadError = e
|
|
19662
|
+
}
|
|
19663
|
+
}
|
|
19664
|
+
break
|
|
19665
|
+
case 'arm':
|
|
19666
|
+
localFileExisted = existsSync(
|
|
19667
|
+
join(__dirname, '${localName}.linux-arm-gnueabihf.node')
|
|
19668
|
+
)
|
|
19669
|
+
try {
|
|
19670
|
+
if (localFileExisted) {
|
|
19671
|
+
nativeBinding = require('./${localName}.linux-arm-gnueabihf.node')
|
|
19672
|
+
} else {
|
|
19673
|
+
nativeBinding = require('${pkgName}-linux-arm-gnueabihf')
|
|
19674
|
+
}
|
|
19675
|
+
} catch (e) {
|
|
19676
|
+
loadError = e
|
|
19677
|
+
}
|
|
19678
|
+
break
|
|
19679
|
+
default:
|
|
19680
|
+
throw new Error(\`Unsupported architecture on Linux: \${arch}\`)
|
|
19533
19681
|
}
|
|
19534
|
-
|
|
19682
|
+
break
|
|
19683
|
+
default:
|
|
19684
|
+
throw new Error(\`Unsupported OS: \${platform}, architecture: \${arch}\`)
|
|
19685
|
+
}
|
|
19686
|
+
|
|
19687
|
+
if (!nativeBinding) {
|
|
19688
|
+
if (loadError) {
|
|
19689
|
+
throw loadError
|
|
19535
19690
|
}
|
|
19536
|
-
|
|
19691
|
+
throw new Error(\`Failed to load native binding\`)
|
|
19537
19692
|
}
|
|
19538
|
-
function createJsBinding(localName, pkgName) {
|
|
19539
|
-
return `${loadNapiModule.toString()}
|
|
19540
19693
|
|
|
19541
|
-
module.exports = loadNapiModule('${localName}', '${pkgName}')
|
|
19542
19694
|
`;
|
|
19543
19695
|
}
|
|
19544
19696
|
|
|
@@ -19609,7 +19761,8 @@ var Builder = class {
|
|
|
19609
19761
|
debug3(" %i", `cargo ${this.args.join(" ")}`);
|
|
19610
19762
|
const controller = new AbortController();
|
|
19611
19763
|
const buildTask = new Promise((resolve8, reject) => {
|
|
19612
|
-
const
|
|
19764
|
+
const command = process.env.CARGO ?? (this.options.useCross ? "cross" : "cargo");
|
|
19765
|
+
const buildProcess = (0, import_child_process4.spawn)(command, this.args, {
|
|
19613
19766
|
env: {
|
|
19614
19767
|
...process.env,
|
|
19615
19768
|
...this.envs
|
|
@@ -19774,6 +19927,9 @@ var Builder = class {
|
|
|
19774
19927
|
if (this.options.targetDir) {
|
|
19775
19928
|
this.args.push("--target-dir", this.options.targetDir);
|
|
19776
19929
|
}
|
|
19930
|
+
if (this.options.profile) {
|
|
19931
|
+
this.args.push("--profile", this.options.profile);
|
|
19932
|
+
}
|
|
19777
19933
|
if (this.options.cargoOptions?.length) {
|
|
19778
19934
|
this.args.push(...this.options.cargoOptions);
|
|
19779
19935
|
}
|
|
@@ -19808,7 +19964,9 @@ var Builder = class {
|
|
|
19808
19964
|
if (!srcName || !destName) {
|
|
19809
19965
|
return;
|
|
19810
19966
|
}
|
|
19811
|
-
const
|
|
19967
|
+
const profile = this.options.profile ?? (this.options.release ? "release" : "debug");
|
|
19968
|
+
const src = (0, import_path2.join)(this.targetDir, this.target.triple, profile, srcName);
|
|
19969
|
+
debug3(`Copy artifact from: [${src}]`);
|
|
19812
19970
|
const dest = (0, import_path2.join)(this.outputDir, destName);
|
|
19813
19971
|
try {
|
|
19814
19972
|
if (await fileExists(dest)) {
|
package/dist/utils/ci.js
CHANGED
|
@@ -83,4 +83,13 @@ export const CIConfig = {
|
|
|
83
83
|
],
|
|
84
84
|
test: false,
|
|
85
85
|
},
|
|
86
|
+
'riscv64gc-unknown-linux-gnu': {
|
|
87
|
+
host: 'ubuntu-latest',
|
|
88
|
+
build_setup: [
|
|
89
|
+
'sudo apt-get update',
|
|
90
|
+
'sudo apt-get install g++-riscv64-linux-gnu gcc-riscv64-linux-gnu -y',
|
|
91
|
+
],
|
|
92
|
+
// No official nodejs docker image for riscv64
|
|
93
|
+
test: false,
|
|
94
|
+
},
|
|
86
95
|
};
|
package/dist/utils/target.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
-
export declare const AVAILABLE_TARGETS: readonly ["aarch64-apple-darwin", "aarch64-linux-android", "aarch64-unknown-linux-gnu", "aarch64-unknown-linux-musl", "aarch64-pc-windows-msvc", "x86_64-apple-darwin", "x86_64-pc-windows-msvc", "x86_64-unknown-linux-gnu", "x86_64-unknown-linux-musl", "x86_64-unknown-freebsd", "i686-pc-windows-msvc", "armv7-unknown-linux-gnueabihf", "armv7-linux-androideabi", "universal-apple-darwin"];
|
|
2
|
+
export declare const AVAILABLE_TARGETS: readonly ["aarch64-apple-darwin", "aarch64-linux-android", "aarch64-unknown-linux-gnu", "aarch64-unknown-linux-musl", "aarch64-pc-windows-msvc", "x86_64-apple-darwin", "x86_64-pc-windows-msvc", "x86_64-unknown-linux-gnu", "x86_64-unknown-linux-musl", "x86_64-unknown-freebsd", "i686-pc-windows-msvc", "armv7-unknown-linux-gnueabihf", "armv7-linux-androideabi", "universal-apple-darwin", "riscv64gc-unknown-linux-gnu"];
|
|
3
3
|
export type TargetTriple = (typeof AVAILABLE_TARGETS)[number];
|
|
4
4
|
export declare const DEFAULT_TARGETS: readonly ["x86_64-apple-darwin", "x86_64-pc-windows-msvc", "x86_64-unknown-linux-gnu"];
|
|
5
5
|
export declare const TARGET_LINKER: Record<string, string>;
|
|
6
|
-
type NodeJSArch = 'arm' | 'arm64' | 'ia32' | 'mips' | 'mipsel' | 'ppc' | 'ppc64' | 's390' | 's390x' | 'x32' | 'x64' | 'universal';
|
|
6
|
+
type NodeJSArch = 'arm' | 'arm64' | 'ia32' | 'mips' | 'mipsel' | 'ppc' | 'ppc64' | 'riscv64' | 's390' | 's390x' | 'x32' | 'x64' | 'universal';
|
|
7
7
|
export declare const NodeArchToCpu: Record<string, string>;
|
|
8
8
|
export declare const UniArchsByPlatform: Partial<Record<NodeJS.Platform, NodeJSArch[]>>;
|
|
9
9
|
export interface Target {
|
package/dist/utils/target.js
CHANGED
|
@@ -14,6 +14,7 @@ export const AVAILABLE_TARGETS = [
|
|
|
14
14
|
'armv7-unknown-linux-gnueabihf',
|
|
15
15
|
'armv7-linux-androideabi',
|
|
16
16
|
'universal-apple-darwin',
|
|
17
|
+
'riscv64gc-unknown-linux-gnu',
|
|
17
18
|
];
|
|
18
19
|
export const DEFAULT_TARGETS = [
|
|
19
20
|
'x86_64-apple-darwin',
|
|
@@ -22,18 +23,21 @@ export const DEFAULT_TARGETS = [
|
|
|
22
23
|
];
|
|
23
24
|
export const TARGET_LINKER = {
|
|
24
25
|
'aarch64-unknown-linux-musl': 'aarch64-linux-musl-gcc',
|
|
26
|
+
'riscv64gc-unknown-linux-gnu': 'riscv64-linux-gnu-gcc',
|
|
25
27
|
};
|
|
26
28
|
const CpuToNodeArch = {
|
|
27
29
|
x86_64: 'x64',
|
|
28
30
|
aarch64: 'arm64',
|
|
29
31
|
i686: 'ia32',
|
|
30
32
|
armv7: 'arm',
|
|
33
|
+
riscv64gc: 'riscv64',
|
|
31
34
|
};
|
|
32
35
|
export const NodeArchToCpu = {
|
|
33
36
|
x64: 'x86_64',
|
|
34
37
|
arm64: 'aarch64',
|
|
35
38
|
ia32: 'i686',
|
|
36
39
|
arm: 'armv7',
|
|
40
|
+
riscv64: 'riscv64gc',
|
|
37
41
|
};
|
|
38
42
|
const SysToNodePlatform = {
|
|
39
43
|
linux: 'linux',
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@napi-rs/cli",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.4",
|
|
4
4
|
"description": "Cli tools for napi-rs",
|
|
5
5
|
"author": "LongYinan <lynweklm@gmail.com>",
|
|
6
6
|
"homepage": "https://github.com/napi-rs/napi-rs",
|
|
@@ -79,12 +79,12 @@
|
|
|
79
79
|
"devDependencies": {
|
|
80
80
|
"@types/inquirer": "^9.0.3",
|
|
81
81
|
"@types/js-yaml": "^4.0.5",
|
|
82
|
-
"@types/lodash-es": "^4.17.
|
|
82
|
+
"@types/lodash-es": "^4.17.7",
|
|
83
83
|
"ava": "^5.2.0",
|
|
84
|
-
"esbuild": "^0.17.
|
|
84
|
+
"esbuild": "^0.17.16",
|
|
85
85
|
"prettier": "^2.8.7",
|
|
86
86
|
"ts-node": "^10.9.1",
|
|
87
|
-
"typescript": "^
|
|
87
|
+
"typescript": "^5.0.4"
|
|
88
88
|
},
|
|
89
89
|
"funding": {
|
|
90
90
|
"type": "github",
|
|
@@ -96,5 +96,5 @@
|
|
|
96
96
|
"build:cjs": "node ./esbuild.mjs",
|
|
97
97
|
"test": "ava"
|
|
98
98
|
},
|
|
99
|
-
"gitHead": "
|
|
99
|
+
"gitHead": "0302e564faad54dcfe6c91c9a7f26749a6a0d8e8"
|
|
100
100
|
}
|