@napi-rs/cli 3.0.0-alpha.9 → 3.0.0-alpha.91
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 +1 -1
- package/dist/api/__tests__/new.spec.d.ts +1 -0
- package/dist/api/build.d.ts +1 -1
- package/dist/api/templates/ci-template.d.ts +3 -1
- package/dist/api/templates/ci.yml.d.ts +3 -1
- package/dist/api/templates/js-binding.d.ts +1 -0
- package/dist/api/templates/load-wasi-template.d.ts +2 -0
- package/dist/api/templates/package.json.d.ts +9 -2
- package/dist/api/templates/wasi-worker-template.d.ts +2 -0
- package/dist/cli.js +3867 -15
- package/dist/def/artifacts.d.ts +21 -1
- package/dist/def/build.d.ts +149 -4
- package/dist/def/create-npm-dirs.d.ts +10 -0
- package/dist/def/new.d.ts +25 -7
- package/dist/def/pre-publish.d.ts +12 -2
- package/dist/def/rename.d.ts +16 -6
- package/dist/def/universalize.d.ts +10 -0
- package/dist/def/version.d.ts +10 -0
- package/dist/index.cjs +9946 -15669
- package/dist/index.js +3618 -32
- package/dist/utils/__tests__/config.spec.d.ts +1 -0
- package/dist/utils/config.d.ts +48 -4
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/metadata.d.ts +13 -1
- package/dist/utils/misc.d.ts +3 -3
- package/dist/utils/read-config.d.ts +7 -0
- package/dist/utils/target.d.ts +7 -5
- package/dist/utils/typegen.d.ts +1 -1
- package/dist/utils/version.d.ts +2 -1
- package/package.json +38 -34
- package/src/api/__tests__/new.spec.ts +429 -0
- package/src/api/artifacts.ts +81 -9
- package/src/api/build.ts +498 -149
- package/src/api/create-npm-dirs.ts +57 -9
- package/src/api/new.ts +389 -122
- package/src/api/pre-publish.ts +13 -7
- package/src/api/rename.ts +103 -17
- package/src/api/templates/cargo.toml.ts +1 -0
- package/src/api/templates/ci-template.ts +150 -125
- package/src/api/templates/ci.yml.ts +27 -6
- package/src/api/templates/js-binding.ts +148 -220
- package/src/api/templates/load-wasi-template.ts +182 -0
- package/src/api/templates/package.json.ts +47 -5
- package/src/api/templates/wasi-worker-template.ts +122 -0
- package/src/api/universalize.ts +13 -8
- package/src/api/version.ts +5 -2
- package/src/commands/artifacts.ts +2 -2
- package/src/commands/build.ts +1 -1
- package/src/commands/new.ts +46 -45
- package/src/def/artifacts.ts +22 -3
- package/src/def/build.ts +55 -8
- package/src/def/create-npm-dirs.ts +9 -0
- package/src/def/new.ts +28 -3
- package/src/def/pre-publish.ts +12 -3
- package/src/def/rename.ts +11 -2
- package/src/def/universalize.ts +9 -0
- package/src/def/version.ts +9 -0
- package/src/utils/__tests__/__fixtures__/napi_type_def +130 -130
- package/src/utils/__tests__/__snapshots__/config.spec.ts.md +97 -0
- package/src/utils/__tests__/__snapshots__/config.spec.ts.snap +0 -0
- package/src/utils/__tests__/__snapshots__/target.spec.ts.md +28 -0
- package/src/utils/__tests__/__snapshots__/target.spec.ts.snap +0 -0
- package/src/utils/__tests__/__snapshots__/typegen.spec.ts.md +316 -332
- package/src/utils/__tests__/__snapshots__/typegen.spec.ts.snap +0 -0
- package/src/utils/__tests__/__snapshots__/version.spec.ts.md +8 -7
- package/src/utils/__tests__/__snapshots__/version.spec.ts.snap +0 -0
- package/src/utils/__tests__/config.spec.ts +81 -0
- package/src/utils/cargo.ts +2 -2
- package/src/utils/config.ts +110 -9
- package/src/utils/index.ts +1 -1
- package/src/utils/log.ts +1 -1
- package/src/utils/metadata.ts +52 -14
- package/src/utils/misc.ts +21 -12
- package/src/utils/read-config.ts +20 -0
- package/src/utils/target.ts +22 -4
- package/src/utils/typegen.ts +87 -52
- package/src/utils/version.ts +10 -8
- package/dist/api/artifacts.js +0 -53
- package/dist/api/artifacts.js.map +0 -1
- package/dist/api/build.js +0 -498
- package/dist/api/build.js.map +0 -1
- package/dist/api/create-npm-dirs.js +0 -64
- package/dist/api/create-npm-dirs.js.map +0 -1
- package/dist/api/load-wasi-template.d.ts +0 -1
- package/dist/api/load-wasi-template.js +0 -64
- package/dist/api/load-wasi-template.js.map +0 -1
- package/dist/api/new.js +0 -155
- package/dist/api/new.js.map +0 -1
- package/dist/api/pre-publish.js +0 -158
- package/dist/api/pre-publish.js.map +0 -1
- package/dist/api/rename.js +0 -29
- package/dist/api/rename.js.map +0 -1
- package/dist/api/templates/.gitignore.js +0 -200
- package/dist/api/templates/.gitignore.js.map +0 -1
- package/dist/api/templates/.npmignore.js +0 -15
- package/dist/api/templates/.npmignore.js.map +0 -1
- package/dist/api/templates/build.rs.js +0 -5
- package/dist/api/templates/build.rs.js.map +0 -1
- package/dist/api/templates/cargo.toml.js +0 -26
- package/dist/api/templates/cargo.toml.js.map +0 -1
- package/dist/api/templates/ci-template.js +0 -578
- package/dist/api/templates/ci-template.js.map +0 -1
- package/dist/api/templates/ci.yml.js +0 -99
- package/dist/api/templates/ci.yml.js.map +0 -1
- package/dist/api/templates/index.js +0 -9
- package/dist/api/templates/index.js.map +0 -1
- package/dist/api/templates/js-binding.js +0 -293
- package/dist/api/templates/js-binding.js.map +0 -1
- package/dist/api/templates/lib.rs.js +0 -8
- package/dist/api/templates/lib.rs.js.map +0 -1
- package/dist/api/templates/package.json.js +0 -32
- package/dist/api/templates/package.json.js.map +0 -1
- package/dist/api/universalize.js +0 -39
- package/dist/api/universalize.js.map +0 -1
- package/dist/api/version.js +0 -17
- package/dist/api/version.js.map +0 -1
- package/dist/api/wasi-worker-template.d.ts +0 -1
- package/dist/api/wasi-worker-template.js +0 -53
- package/dist/api/wasi-worker-template.js.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/commands/artifacts.js +0 -20
- package/dist/commands/artifacts.js.map +0 -1
- package/dist/commands/build.js +0 -35
- package/dist/commands/build.js.map +0 -1
- package/dist/commands/create-npm-dirs.js +0 -8
- package/dist/commands/create-npm-dirs.js.map +0 -1
- package/dist/commands/help.js +0 -13
- package/dist/commands/help.js.map +0 -1
- package/dist/commands/new.js +0 -110
- package/dist/commands/new.js.map +0 -1
- package/dist/commands/pre-publish.js +0 -9
- package/dist/commands/pre-publish.js.map +0 -1
- package/dist/commands/rename.js +0 -8
- package/dist/commands/rename.js.map +0 -1
- package/dist/commands/universalize.js +0 -8
- package/dist/commands/universalize.js.map +0 -1
- package/dist/commands/version.js +0 -8
- package/dist/commands/version.js.map +0 -1
- package/dist/def/artifacts.js +0 -39
- package/dist/def/artifacts.js.map +0 -1
- package/dist/def/build.js +0 -118
- package/dist/def/build.js.map +0 -1
- package/dist/def/create-npm-dirs.js +0 -39
- package/dist/def/create-npm-dirs.js.map +0 -1
- package/dist/def/new.js +0 -67
- package/dist/def/new.js.map +0 -1
- package/dist/def/pre-publish.js +0 -57
- package/dist/def/pre-publish.js.map +0 -1
- package/dist/def/rename.js +0 -59
- package/dist/def/rename.js.map +0 -1
- package/dist/def/universalize.js +0 -34
- package/dist/def/universalize.js.map +0 -1
- package/dist/def/version.js +0 -34
- package/dist/def/version.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/utils/__tests__/target.spec.js +0 -11
- package/dist/utils/__tests__/target.spec.js.map +0 -1
- package/dist/utils/__tests__/typegen.spec.js +0 -42
- package/dist/utils/__tests__/typegen.spec.js.map +0 -1
- package/dist/utils/__tests__/version.spec.js +0 -6
- package/dist/utils/__tests__/version.spec.js.map +0 -1
- package/dist/utils/cargo.js +0 -34
- package/dist/utils/cargo.js.map +0 -1
- package/dist/utils/ci.d.ts +0 -11
- package/dist/utils/ci.js +0 -96
- package/dist/utils/ci.js.map +0 -1
- package/dist/utils/config.js +0 -43
- package/dist/utils/config.js.map +0 -1
- package/dist/utils/index.js +0 -10
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/log.js +0 -15
- package/dist/utils/log.js.map +0 -1
- package/dist/utils/metadata.js +0 -20
- package/dist/utils/metadata.js.map +0 -1
- package/dist/utils/misc.js +0 -41
- package/dist/utils/misc.js.map +0 -1
- package/dist/utils/target.js +0 -121
- package/dist/utils/target.js.map +0 -1
- package/dist/utils/typegen.js +0 -179
- package/dist/utils/typegen.js.map +0 -1
- package/dist/utils/version.js +0 -60
- package/dist/utils/version.js.map +0 -1
- package/src/api/load-wasi-template.ts +0 -66
- package/src/api/wasi-worker-template.ts +0 -52
- package/src/utils/ci.ts +0 -111
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"load-wasi-template.js","sourceRoot":"","sources":["../../src/api/load-wasi-template.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,YAAoB,EACpB,qBAA+B,EAC/B,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iLAgC4K,YAAY;;;;;;;;;;;;;;;;;;;;;;;;EAwB3L,qBAAqB;KACpB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,6BAA6B,IAAI,MAAM,CAAC;KACtD,IAAI,CAAC,IAAI,CAAC;;;;CAIZ,CAAA"}
|
package/dist/api/new.js
DELETED
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
import path from 'path';
|
|
2
|
-
import { applyDefaultNewOptions, } from '../def/new.js';
|
|
3
|
-
import { AVAILABLE_TARGETS, CLI_VERSION, debugFactory, DEFAULT_TARGETS, mkdirAsync, writeFileAsync, } from '../utils/index.js';
|
|
4
|
-
import { napiEngineRequirement } from '../utils/version.js';
|
|
5
|
-
import { createBuildRs, createCargoToml, createGithubActionsCIYml, createLibRs, createPackageJson, gitIgnore, npmIgnore, } from './templates/index.js';
|
|
6
|
-
const debug = debugFactory('new');
|
|
7
|
-
function processOptions(options) {
|
|
8
|
-
debug('Processing options...');
|
|
9
|
-
options.path = path.resolve(process.cwd(), options.path);
|
|
10
|
-
debug(`Resolved target path to: ${options.path}`);
|
|
11
|
-
if (!options.name) {
|
|
12
|
-
options.name = path.parse(options.path).base;
|
|
13
|
-
debug(`No project name provided, fix it to dir name: ${options.name}`);
|
|
14
|
-
}
|
|
15
|
-
if (!options.targets?.length) {
|
|
16
|
-
if (options.enableAllTargets) {
|
|
17
|
-
options.targets = AVAILABLE_TARGETS.concat();
|
|
18
|
-
debug('Enable all targets');
|
|
19
|
-
}
|
|
20
|
-
else if (options.enableDefaultTargets) {
|
|
21
|
-
options.targets = DEFAULT_TARGETS.concat();
|
|
22
|
-
debug('Enable default targets');
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
throw new Error('At least one target must be enabled');
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
return applyDefaultNewOptions(options);
|
|
29
|
-
}
|
|
30
|
-
export async function newProject(userOptions) {
|
|
31
|
-
debug('Will create napi-rs project with given options:');
|
|
32
|
-
debug(userOptions);
|
|
33
|
-
const options = processOptions(userOptions);
|
|
34
|
-
debug('Targets to be enabled:');
|
|
35
|
-
debug(options.targets);
|
|
36
|
-
const outputs = generateFiles(options);
|
|
37
|
-
try {
|
|
38
|
-
debug(`Try to create target directory: ${options.path}`);
|
|
39
|
-
if (!options.dryRun) {
|
|
40
|
-
await mkdirAsync(options.path, { recursive: true });
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
catch (e) {
|
|
44
|
-
throw new Error(`Failed to create target directory: ${options.path}`, {
|
|
45
|
-
cause: e,
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
await dumpOutputs(outputs, options.dryRun);
|
|
49
|
-
debug(`Project created at: ${options.path}`);
|
|
50
|
-
}
|
|
51
|
-
function generateFiles(options) {
|
|
52
|
-
return [
|
|
53
|
-
generateCargoToml,
|
|
54
|
-
generateLibRs,
|
|
55
|
-
generateBuildRs,
|
|
56
|
-
generatePackageJson,
|
|
57
|
-
generateGithubWorkflow,
|
|
58
|
-
generateIgnoreFiles,
|
|
59
|
-
].flatMap((generator) => {
|
|
60
|
-
const output = generator(options);
|
|
61
|
-
if (!output) {
|
|
62
|
-
return [];
|
|
63
|
-
}
|
|
64
|
-
if (Array.isArray(output)) {
|
|
65
|
-
return output.map((o) => ({
|
|
66
|
-
...o,
|
|
67
|
-
target: path.join(options.path, o.target),
|
|
68
|
-
}));
|
|
69
|
-
}
|
|
70
|
-
else {
|
|
71
|
-
return [{ ...output, target: path.join(options.path, output.target) }];
|
|
72
|
-
}
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
function generateCargoToml(options) {
|
|
76
|
-
return {
|
|
77
|
-
target: './Cargo.toml',
|
|
78
|
-
content: createCargoToml({
|
|
79
|
-
name: options.name,
|
|
80
|
-
license: options.license,
|
|
81
|
-
features: [`napi${options.minNodeApiVersion}`],
|
|
82
|
-
deriveFeatures: options.enableTypeDef ? ['type-def'] : [],
|
|
83
|
-
}),
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
function generateLibRs(_options) {
|
|
87
|
-
return {
|
|
88
|
-
target: './src/lib.rs',
|
|
89
|
-
content: createLibRs(),
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
function generateBuildRs(_options) {
|
|
93
|
-
return {
|
|
94
|
-
target: './build.rs',
|
|
95
|
-
content: createBuildRs(),
|
|
96
|
-
};
|
|
97
|
-
}
|
|
98
|
-
function generatePackageJson(options) {
|
|
99
|
-
return {
|
|
100
|
-
target: './package.json',
|
|
101
|
-
content: createPackageJson({
|
|
102
|
-
name: options.name,
|
|
103
|
-
binaryName: getBinaryName(options.name),
|
|
104
|
-
targets: options.targets,
|
|
105
|
-
license: options.license,
|
|
106
|
-
engineRequirement: napiEngineRequirement(options.minNodeApiVersion),
|
|
107
|
-
cliVersion: CLI_VERSION,
|
|
108
|
-
}),
|
|
109
|
-
};
|
|
110
|
-
}
|
|
111
|
-
function generateGithubWorkflow(options) {
|
|
112
|
-
if (!options.enableGithubActions) {
|
|
113
|
-
return null;
|
|
114
|
-
}
|
|
115
|
-
return {
|
|
116
|
-
target: './.github/workflows/ci.yml',
|
|
117
|
-
content: createGithubActionsCIYml(options.targets),
|
|
118
|
-
};
|
|
119
|
-
}
|
|
120
|
-
function generateIgnoreFiles(_options) {
|
|
121
|
-
return [
|
|
122
|
-
{
|
|
123
|
-
target: './.gitignore',
|
|
124
|
-
content: gitIgnore,
|
|
125
|
-
},
|
|
126
|
-
{
|
|
127
|
-
target: './.npmignore',
|
|
128
|
-
content: npmIgnore,
|
|
129
|
-
},
|
|
130
|
-
];
|
|
131
|
-
}
|
|
132
|
-
async function dumpOutputs(outputs, dryRun) {
|
|
133
|
-
for (const output of outputs) {
|
|
134
|
-
if (!output) {
|
|
135
|
-
continue;
|
|
136
|
-
}
|
|
137
|
-
debug(`Writing project file: ${output.target}`);
|
|
138
|
-
// only output content to logger instead of writing to file system
|
|
139
|
-
if (dryRun) {
|
|
140
|
-
debug(output.content);
|
|
141
|
-
continue;
|
|
142
|
-
}
|
|
143
|
-
try {
|
|
144
|
-
await mkdirAsync(path.dirname(output.target), { recursive: true });
|
|
145
|
-
await writeFileAsync(output.target, output.content, 'utf-8');
|
|
146
|
-
}
|
|
147
|
-
catch (e) {
|
|
148
|
-
throw new Error(`Failed to write file: ${output.target}`, { cause: e });
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
function getBinaryName(name) {
|
|
153
|
-
return name.split('/').pop();
|
|
154
|
-
}
|
|
155
|
-
//# sourceMappingURL=new.js.map
|
package/dist/api/new.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"new.js","sourceRoot":"","sources":["../../src/api/new.ts"],"names":[],"mappings":"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"}
|
package/dist/api/pre-publish.js
DELETED
|
@@ -1,158 +0,0 @@
|
|
|
1
|
-
import { execSync } from 'child_process';
|
|
2
|
-
import { existsSync, statSync } from 'fs';
|
|
3
|
-
import { join, relative, resolve } from 'path';
|
|
4
|
-
import { Octokit } from '@octokit/rest';
|
|
5
|
-
import { applyDefaultPrePublishOptions, } from '../def/pre-publish.js';
|
|
6
|
-
import { readFileAsync, readNapiConfig, debugFactory, updatePackageJson, } from '../utils/index.js';
|
|
7
|
-
import { version } from './version.js';
|
|
8
|
-
const debug = debugFactory('pre-publish');
|
|
9
|
-
export async function prePublish(userOptions) {
|
|
10
|
-
debug('Receive pre-publish options:');
|
|
11
|
-
debug(' %O', userOptions);
|
|
12
|
-
const options = applyDefaultPrePublishOptions(userOptions);
|
|
13
|
-
const packageJsonPath = relative(options.cwd, options.packageJsonPath);
|
|
14
|
-
const { packageJson, targets, packageName, binaryName, npmClient } = await readNapiConfig(packageJsonPath);
|
|
15
|
-
async function createGhRelease(packageName, version) {
|
|
16
|
-
if (!options.ghRelease) {
|
|
17
|
-
return {
|
|
18
|
-
owner: null,
|
|
19
|
-
repo: null,
|
|
20
|
-
pkgInfo: { name: null, version: null, tag: null },
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
const { repo, owner, pkgInfo, octokit } = getRepoInfo(packageName, version);
|
|
24
|
-
if (!repo || !owner) {
|
|
25
|
-
return {
|
|
26
|
-
owner: null,
|
|
27
|
-
repo: null,
|
|
28
|
-
pkgInfo: { name: null, version: null, tag: null },
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
if (!options.dryRun) {
|
|
32
|
-
try {
|
|
33
|
-
await octokit.repos.createRelease({
|
|
34
|
-
owner,
|
|
35
|
-
repo,
|
|
36
|
-
tag_name: pkgInfo.tag,
|
|
37
|
-
name: options.ghReleaseName,
|
|
38
|
-
prerelease: version.includes('alpha') ||
|
|
39
|
-
version.includes('beta') ||
|
|
40
|
-
version.includes('rc'),
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
catch (e) {
|
|
44
|
-
debug(`Params: ${JSON.stringify({ owner, repo, tag_name: pkgInfo.tag }, null, 2)}`);
|
|
45
|
-
console.error(e);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
return { owner, repo, pkgInfo, octokit };
|
|
49
|
-
}
|
|
50
|
-
function getRepoInfo(packageName, version) {
|
|
51
|
-
const headCommit = execSync('git log -1 --pretty=%B', {
|
|
52
|
-
encoding: 'utf-8',
|
|
53
|
-
}).trim();
|
|
54
|
-
const { GITHUB_REPOSITORY } = process.env;
|
|
55
|
-
if (!GITHUB_REPOSITORY) {
|
|
56
|
-
return {
|
|
57
|
-
owner: null,
|
|
58
|
-
repo: null,
|
|
59
|
-
pkgInfo: { name: null, version: null, tag: null },
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
|
-
debug(`Github repository: ${GITHUB_REPOSITORY}`);
|
|
63
|
-
const [owner, repo] = GITHUB_REPOSITORY.split('/');
|
|
64
|
-
const octokit = new Octokit({
|
|
65
|
-
auth: process.env.GITHUB_TOKEN,
|
|
66
|
-
});
|
|
67
|
-
let pkgInfo;
|
|
68
|
-
if (options.tagStyle === 'lerna') {
|
|
69
|
-
const packagesToPublish = headCommit
|
|
70
|
-
.split('\n')
|
|
71
|
-
.map((line) => line.trim())
|
|
72
|
-
.filter((line, index) => line.length && index)
|
|
73
|
-
.map((line) => line.substring(2))
|
|
74
|
-
.map(parseTag);
|
|
75
|
-
pkgInfo = packagesToPublish.find((pkgInfo) => pkgInfo.name === packageName);
|
|
76
|
-
if (!pkgInfo) {
|
|
77
|
-
throw new TypeError(`No release commit found with ${packageName}, original commit info: ${headCommit}`);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
pkgInfo = {
|
|
82
|
-
tag: `v${version}`,
|
|
83
|
-
version,
|
|
84
|
-
name: packageName,
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
|
-
return { owner, repo, pkgInfo, octokit };
|
|
88
|
-
}
|
|
89
|
-
if (!options.dryRun) {
|
|
90
|
-
await version(userOptions);
|
|
91
|
-
await updatePackageJson(packageJsonPath, {
|
|
92
|
-
optionalDependencies: targets.reduce((deps, target) => {
|
|
93
|
-
deps[`${packageName}-${target.platformArchABI}`] = packageJson.version;
|
|
94
|
-
return deps;
|
|
95
|
-
}, {}),
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
const { owner, repo, pkgInfo, octokit } = options.ghReleaseId
|
|
99
|
-
? getRepoInfo(packageName, packageJson.version)
|
|
100
|
-
: await createGhRelease(packageName, packageJson.version);
|
|
101
|
-
for (const target of targets) {
|
|
102
|
-
const pkgDir = resolve(options.cwd, options.npmDir, `${target.platformArchABI}`);
|
|
103
|
-
const filename = `${binaryName}.${target.platformArchABI}.node`;
|
|
104
|
-
const dstPath = join(pkgDir, filename);
|
|
105
|
-
if (!options.dryRun) {
|
|
106
|
-
if (!existsSync(dstPath)) {
|
|
107
|
-
debug.warn(`%s doesn't exist`, dstPath);
|
|
108
|
-
continue;
|
|
109
|
-
}
|
|
110
|
-
execSync(`${npmClient} publish`, {
|
|
111
|
-
cwd: pkgDir,
|
|
112
|
-
env: process.env,
|
|
113
|
-
});
|
|
114
|
-
if (options.ghRelease && repo && owner) {
|
|
115
|
-
debug.info(`Creating GitHub release ${pkgInfo.tag}`);
|
|
116
|
-
try {
|
|
117
|
-
const releaseId = options.ghReleaseId
|
|
118
|
-
? Number(options.ghReleaseId)
|
|
119
|
-
: (await octokit.repos.getReleaseByTag({
|
|
120
|
-
repo: repo,
|
|
121
|
-
owner: owner,
|
|
122
|
-
tag: pkgInfo.tag,
|
|
123
|
-
})).data.id;
|
|
124
|
-
const dstFileStats = statSync(dstPath);
|
|
125
|
-
const assetInfo = await octokit.repos.uploadReleaseAsset({
|
|
126
|
-
owner: owner,
|
|
127
|
-
repo: repo,
|
|
128
|
-
name: filename,
|
|
129
|
-
release_id: releaseId,
|
|
130
|
-
mediaType: { format: 'raw' },
|
|
131
|
-
headers: {
|
|
132
|
-
'content-length': dstFileStats.size,
|
|
133
|
-
'content-type': 'application/octet-stream',
|
|
134
|
-
},
|
|
135
|
-
data: await readFileAsync(dstPath, { encoding: 'utf-8' }),
|
|
136
|
-
});
|
|
137
|
-
debug.info(`GitHub release created`);
|
|
138
|
-
debug.info(`Download URL: %s`, assetInfo.data.browser_download_url);
|
|
139
|
-
}
|
|
140
|
-
catch (e) {
|
|
141
|
-
debug.error(`Param: ${JSON.stringify({ owner, repo, tag: pkgInfo.tag, filename: dstPath }, null, 2)}`);
|
|
142
|
-
debug.error(e);
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
function parseTag(tag) {
|
|
149
|
-
const segments = tag.split('@');
|
|
150
|
-
const version = segments.pop();
|
|
151
|
-
const name = segments.join('@');
|
|
152
|
-
return {
|
|
153
|
-
name,
|
|
154
|
-
version,
|
|
155
|
-
tag,
|
|
156
|
-
};
|
|
157
|
-
}
|
|
158
|
-
//# sourceMappingURL=pre-publish.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pre-publish.js","sourceRoot":"","sources":["../../src/api/pre-publish.ts"],"names":[],"mappings":"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"}
|
package/dist/api/rename.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { resolve } from 'path';
|
|
2
|
-
import { isNil, merge, omitBy, pick } from 'lodash-es';
|
|
3
|
-
import { applyDefaultRenameOptions } from '../def/rename.js';
|
|
4
|
-
import { readFileAsync, writeFileAsync } from '../utils/index.js';
|
|
5
|
-
import { createNpmDirs } from './create-npm-dirs.js';
|
|
6
|
-
export async function renameProject(userOptions) {
|
|
7
|
-
const options = applyDefaultRenameOptions(userOptions);
|
|
8
|
-
const packageJsonPath = resolve(options.cwd, options.packageJsonPath);
|
|
9
|
-
const cargoTomlPath = resolve(options.cwd, options.manifestPath);
|
|
10
|
-
const packageJsonContent = await readFileAsync(packageJsonPath, 'utf8');
|
|
11
|
-
const packageJsonData = JSON.parse(packageJsonContent);
|
|
12
|
-
merge(packageJsonData, omitBy(pick(options, ['name', 'description', 'author', 'license']), isNil), {
|
|
13
|
-
napi: omitBy({
|
|
14
|
-
binaryName: options.binaryName,
|
|
15
|
-
packageName: options.packageName,
|
|
16
|
-
}, isNil),
|
|
17
|
-
});
|
|
18
|
-
await writeFileAsync(packageJsonPath, JSON.stringify(packageJsonData, null, 2));
|
|
19
|
-
let tomlContent = await readFileAsync(cargoTomlPath, 'utf8');
|
|
20
|
-
tomlContent = tomlContent.replace(/name\s?=\s?"([\w+])"/, `name = "${options.binaryName}"`);
|
|
21
|
-
await writeFileAsync(cargoTomlPath, tomlContent);
|
|
22
|
-
await createNpmDirs({
|
|
23
|
-
cwd: options.cwd,
|
|
24
|
-
packageJsonPath: options.packageJsonPath,
|
|
25
|
-
npmDir: options.npmDir,
|
|
26
|
-
dryRun: false,
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=rename.js.map
|
package/dist/api/rename.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rename.js","sourceRoot":"","sources":["../../src/api/rename.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAE9B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEtD,OAAO,EAAE,yBAAyB,EAAiB,MAAM,kBAAkB,CAAA;AAC3E,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAEjE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEpD,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,WAA0B;IAC5D,MAAM,OAAO,GAAG,yBAAyB,CAAC,WAAW,CAAC,CAAA;IAEtD,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IACrE,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;IAEhE,MAAM,kBAAkB,GAAG,MAAM,aAAa,CAAC,eAAe,EAAE,MAAM,CAAC,CAAA;IACvE,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;IAEtD,KAAK,CACH,eAAe,EACf,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,EAC1E;QACE,IAAI,EAAE,MAAM,CACV;YACE,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,EACD,KAAK,CACN;KACF,CACF,CAAA;IAED,MAAM,cAAc,CAClB,eAAe,EACf,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,CACzC,CAAA;IAED,IAAI,WAAW,GAAG,MAAM,aAAa,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;IAC5D,WAAW,GAAG,WAAW,CAAC,OAAO,CAC/B,sBAAsB,EACtB,WAAW,OAAO,CAAC,UAAU,GAAG,CACjC,CAAA;IACD,MAAM,cAAc,CAAC,aAAa,EAAE,WAAW,CAAC,CAAA;IAEhD,MAAM,aAAa,CAAC;QAClB,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,eAAe,EAAE,OAAO,CAAC,eAAe;QACxC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,KAAK;KACd,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -1,200 +0,0 @@
|
|
|
1
|
-
export const gitIgnore = `# Created by https://www.toptal.com/developers/gitignore/api/node
|
|
2
|
-
# Edit at https://www.toptal.com/developers/gitignore?templates=node
|
|
3
|
-
|
|
4
|
-
### Node ###
|
|
5
|
-
# Logs
|
|
6
|
-
logs
|
|
7
|
-
*.log
|
|
8
|
-
npm-debug.log*
|
|
9
|
-
yarn-debug.log*
|
|
10
|
-
yarn-error.log*
|
|
11
|
-
lerna-debug.log*
|
|
12
|
-
|
|
13
|
-
# Diagnostic reports (https://nodejs.org/api/report.html)
|
|
14
|
-
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
|
15
|
-
|
|
16
|
-
# Runtime data
|
|
17
|
-
pids
|
|
18
|
-
*.pid
|
|
19
|
-
*.seed
|
|
20
|
-
*.pid.lock
|
|
21
|
-
|
|
22
|
-
# Directory for instrumented libs generated by jscoverage/JSCover
|
|
23
|
-
lib-cov
|
|
24
|
-
|
|
25
|
-
# Coverage directory used by tools like istanbul
|
|
26
|
-
coverage
|
|
27
|
-
*.lcov
|
|
28
|
-
|
|
29
|
-
# nyc test coverage
|
|
30
|
-
.nyc_output
|
|
31
|
-
|
|
32
|
-
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
|
33
|
-
.grunt
|
|
34
|
-
|
|
35
|
-
# Bower dependency directory (https://bower.io/)
|
|
36
|
-
bower_components
|
|
37
|
-
|
|
38
|
-
# node-waf configuration
|
|
39
|
-
.lock-wscript
|
|
40
|
-
|
|
41
|
-
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
|
42
|
-
build/Release
|
|
43
|
-
|
|
44
|
-
# Dependency directories
|
|
45
|
-
node_modules/
|
|
46
|
-
jspm_packages/
|
|
47
|
-
|
|
48
|
-
# TypeScript v1 declaration files
|
|
49
|
-
typings/
|
|
50
|
-
|
|
51
|
-
# TypeScript cache
|
|
52
|
-
*.tsbuildinfo
|
|
53
|
-
|
|
54
|
-
# Optional npm cache directory
|
|
55
|
-
.npm
|
|
56
|
-
|
|
57
|
-
# Optional eslint cache
|
|
58
|
-
.eslintcache
|
|
59
|
-
|
|
60
|
-
# Microbundle cache
|
|
61
|
-
.rpt2_cache/
|
|
62
|
-
.rts2_cache_cjs/
|
|
63
|
-
.rts2_cache_es/
|
|
64
|
-
.rts2_cache_umd/
|
|
65
|
-
|
|
66
|
-
# Optional REPL history
|
|
67
|
-
.node_repl_history
|
|
68
|
-
|
|
69
|
-
# Output of 'npm pack'
|
|
70
|
-
*.tgz
|
|
71
|
-
|
|
72
|
-
# Yarn Integrity file
|
|
73
|
-
.yarn-integrity
|
|
74
|
-
|
|
75
|
-
# dotenv environment variables file
|
|
76
|
-
.env
|
|
77
|
-
.env.test
|
|
78
|
-
|
|
79
|
-
# parcel-bundler cache (https://parceljs.org/)
|
|
80
|
-
.cache
|
|
81
|
-
|
|
82
|
-
# Next.js build output
|
|
83
|
-
.next
|
|
84
|
-
|
|
85
|
-
# Nuxt.js build / generate output
|
|
86
|
-
.nuxt
|
|
87
|
-
dist
|
|
88
|
-
|
|
89
|
-
# Gatsby files
|
|
90
|
-
.cache/
|
|
91
|
-
# Comment in the public line in if your project uses Gatsby and not Next.js
|
|
92
|
-
# https://nextjs.org/blog/next-9-1#public-directory-support
|
|
93
|
-
# public
|
|
94
|
-
|
|
95
|
-
# vuepress build output
|
|
96
|
-
.vuepress/dist
|
|
97
|
-
|
|
98
|
-
# Serverless directories
|
|
99
|
-
.serverless/
|
|
100
|
-
|
|
101
|
-
# FuseBox cache
|
|
102
|
-
.fusebox/
|
|
103
|
-
|
|
104
|
-
# DynamoDB Local files
|
|
105
|
-
.dynamodb/
|
|
106
|
-
|
|
107
|
-
# TernJS port file
|
|
108
|
-
.tern-port
|
|
109
|
-
|
|
110
|
-
# Stores VSCode versions used for testing VSCode extensions
|
|
111
|
-
.vscode-test
|
|
112
|
-
|
|
113
|
-
# End of https://www.toptal.com/developers/gitignore/api/node
|
|
114
|
-
|
|
115
|
-
# Created by https://www.toptal.com/developers/gitignore/api/macos
|
|
116
|
-
# Edit at https://www.toptal.com/developers/gitignore?templates=macos
|
|
117
|
-
|
|
118
|
-
### macOS ###
|
|
119
|
-
# General
|
|
120
|
-
.DS_Store
|
|
121
|
-
.AppleDouble
|
|
122
|
-
.LSOverride
|
|
123
|
-
|
|
124
|
-
# Icon must end with two \r
|
|
125
|
-
Icon
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
# Thumbnails
|
|
129
|
-
._*
|
|
130
|
-
|
|
131
|
-
# Files that might appear in the root of a volume
|
|
132
|
-
.DocumentRevisions-V100
|
|
133
|
-
.fseventsd
|
|
134
|
-
.Spotlight-V100
|
|
135
|
-
.TemporaryItems
|
|
136
|
-
.Trashes
|
|
137
|
-
.VolumeIcon.icns
|
|
138
|
-
.com.apple.timemachine.donotpresent
|
|
139
|
-
|
|
140
|
-
# Directories potentially created on remote AFP share
|
|
141
|
-
.AppleDB
|
|
142
|
-
.AppleDesktop
|
|
143
|
-
Network Trash Folder
|
|
144
|
-
Temporary Items
|
|
145
|
-
.apdisk
|
|
146
|
-
|
|
147
|
-
### macOS Patch ###
|
|
148
|
-
# iCloud generated files
|
|
149
|
-
*.icloud
|
|
150
|
-
|
|
151
|
-
# End of https://www.toptal.com/developers/gitignore/api/macos
|
|
152
|
-
|
|
153
|
-
# Created by https://www.toptal.com/developers/gitignore/api/windows
|
|
154
|
-
# Edit at https://www.toptal.com/developers/gitignore?templates=windows
|
|
155
|
-
|
|
156
|
-
### Windows ###
|
|
157
|
-
# Windows thumbnail cache files
|
|
158
|
-
Thumbs.db
|
|
159
|
-
Thumbs.db:encryptable
|
|
160
|
-
ehthumbs.db
|
|
161
|
-
ehthumbs_vista.db
|
|
162
|
-
|
|
163
|
-
# Dump file
|
|
164
|
-
*.stackdump
|
|
165
|
-
|
|
166
|
-
# Folder config file
|
|
167
|
-
[Dd]esktop.ini
|
|
168
|
-
|
|
169
|
-
# Recycle Bin used on file shares
|
|
170
|
-
$RECYCLE.BIN/
|
|
171
|
-
|
|
172
|
-
# Windows Installer files
|
|
173
|
-
*.cab
|
|
174
|
-
*.msi
|
|
175
|
-
*.msix
|
|
176
|
-
*.msm
|
|
177
|
-
*.msp
|
|
178
|
-
|
|
179
|
-
# Windows shortcuts
|
|
180
|
-
*.lnk
|
|
181
|
-
|
|
182
|
-
# End of https://www.toptal.com/developers/gitignore/api/windows
|
|
183
|
-
|
|
184
|
-
#Added by cargo
|
|
185
|
-
|
|
186
|
-
/target
|
|
187
|
-
Cargo.lock
|
|
188
|
-
|
|
189
|
-
.pnp.*
|
|
190
|
-
.yarn/*
|
|
191
|
-
!.yarn/patches
|
|
192
|
-
!.yarn/plugins
|
|
193
|
-
!.yarn/releases
|
|
194
|
-
!.yarn/sdks
|
|
195
|
-
!.yarn/versions
|
|
196
|
-
|
|
197
|
-
*.node
|
|
198
|
-
*.wasm
|
|
199
|
-
`;
|
|
200
|
-
//# sourceMappingURL=.gitignore.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":".gitignore.js","sourceRoot":"","sources":["../../../src/api/templates/.gitignore.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsMxB,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":".npmignore.js","sourceRoot":"","sources":["../../../src/api/templates/.npmignore.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG;;;;;;;;;;;;;CAaxB,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"build.rs.js","sourceRoot":"","sources":["../../../src/api/templates/build.rs.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC;;;CAGlC,CAAA"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
export const createCargoToml = ({ name, license, features, deriveFeatures, }) => `[package]
|
|
2
|
-
name = "${name.replace('@', '').replace('/', '_').toLowerCase()}"
|
|
3
|
-
version = "1.0.0"
|
|
4
|
-
edition = "2021"
|
|
5
|
-
license = "${license}"
|
|
6
|
-
|
|
7
|
-
[lib]
|
|
8
|
-
crate-type = ["cdylib"]
|
|
9
|
-
|
|
10
|
-
[dependencies.napi]
|
|
11
|
-
version = "2"
|
|
12
|
-
default-features = false
|
|
13
|
-
# see https://nodejs.org/api/n-api.html#node-api-version-matrix
|
|
14
|
-
features = ${JSON.stringify(features)}
|
|
15
|
-
|
|
16
|
-
[dependencies.napi-derive]
|
|
17
|
-
version = "2"
|
|
18
|
-
features = ${JSON.stringify(deriveFeatures)}
|
|
19
|
-
|
|
20
|
-
[build-dependencies]
|
|
21
|
-
napi-build = "2"
|
|
22
|
-
|
|
23
|
-
[profile.release]
|
|
24
|
-
lto = true
|
|
25
|
-
`;
|
|
26
|
-
//# sourceMappingURL=cargo.toml.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cargo.toml.js","sourceRoot":"","sources":["../../../src/api/templates/cargo.toml.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAC9B,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,cAAc,GAMf,EAAE,EAAE,CAAC;UACI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE;;;aAGlD,OAAO;;;;;;;;;aASP,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;;;;aAIxB,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC;;;;;;;CAO1C,CAAA"}
|