From 7ed4636d74d41aba4f1bf4b84925e42ccf06ced7 Mon Sep 17 00:00:00 2001 From: akitaSummer Date: Tue, 23 Apr 2024 11:49:31 +0800 Subject: [PATCH] Fix/fix rapid deamon (#76) * fix: add rapid_deamon to package * fix: fix mutli deamon run * v0.4.1 * fix: use semver to compare version --- CHANGELOG.md | 36 ++++++++++++ bindings/binding-darwin-amd64/CHANGELOG.md | 13 +++++ bindings/binding-darwin-amd64/package.json | 5 +- bindings/binding-darwin-arm64/CHANGELOG.md | 13 +++++ bindings/binding-darwin-arm64/package.json | 5 +- bindings/binding-linux-amd64/CHANGELOG.md | 13 +++++ bindings/binding-linux-amd64/package.json | 5 +- bindings/binding-linux-arm64/CHANGELOG.md | 13 +++++ bindings/binding-linux-arm64/package.json | 5 +- integration/index.2.test.js | 2 +- integration/index.test.js | 2 +- integration/workspaces.test.js | 2 +- lerna.json | 2 +- packages/binding/CHANGELOG.md | 27 +++++++++ packages/binding/package.json | 10 ++-- packages/cli/CHANGELOG.md | 36 ++++++++++++ packages/cli/lib/deamon.js | 65 ++++++++++++++++++---- packages/cli/lib/index.js | 8 ++- packages/cli/lib/nydusd/fuse_mode.js | 6 +- packages/cli/lib/nydusd/index.js | 2 +- packages/cli/lib/nydusd/nydusd_api.js | 14 ++++- packages/cli/package.json | 7 ++- 22 files changed, 252 insertions(+), 39 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d0df4f3..e6ff53d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,42 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.4.1](https://github.com/cnpm/rapid/compare/v0.4.0...v0.4.1) (2024-04-22) + + +### Bug Fixes + +* add rapid_deamon to package ([aa05edb](https://github.com/cnpm/rapid/commit/aa05edbe4f9d532db42e1a3e802bba2468126627)) +* fix mutli deamon run ([a1c1f84](https://github.com/cnpm/rapid/commit/a1c1f84d8fcdb485facbf4b89875690e49e8739b)) + + + + + +## [0.4.1](https://github.com/cnpm/rapid/compare/v0.4.0...v0.4.1) (2024-04-22) + + +### Bug Fixes + +* add rapid_deamon to package ([aa05edb](https://github.com/cnpm/rapid/commit/aa05edbe4f9d532db42e1a3e802bba2468126627)) +* fix mutli deamon run ([429b083](https://github.com/cnpm/rapid/commit/429b08393b4fba00f65d47a7e633102fb3751612)) + + + + + +## [0.4.1](https://github.com/cnpm/rapid/compare/v0.4.0...v0.4.1) (2024-04-22) + + +### Bug Fixes + +* add rapid_deamon to package ([aa05edb](https://github.com/cnpm/rapid/commit/aa05edbe4f9d532db42e1a3e802bba2468126627)) +* fix mutli deamon run ([429b083](https://github.com/cnpm/rapid/commit/429b08393b4fba00f65d47a7e633102fb3751612)) + + + + + # [0.4.0](https://github.com/cnpm/rapid/compare/v0.3.0...v0.4.0) (2024-02-01) diff --git a/bindings/binding-darwin-amd64/CHANGELOG.md b/bindings/binding-darwin-amd64/CHANGELOG.md index 4a6289f..fe091fc 100644 --- a/bindings/binding-darwin-amd64/CHANGELOG.md +++ b/bindings/binding-darwin-amd64/CHANGELOG.md @@ -3,6 +3,19 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.4.1](https://github.com/cnpm/rapid/compare/v0.4.0...v0.4.1) (2024-04-22) + + +### Bug Fixes + +* add rapid_deamon to package ([aa05edb](https://github.com/cnpm/rapid/commit/aa05edbe4f9d532db42e1a3e802bba2468126627)) +* fix mutli deamon run ([a1c1f84](https://github.com/cnpm/rapid/commit/a1c1f84d8fcdb485facbf4b89875690e49e8739b)) + + + + + + # [0.4.0](https://github.com/cnpm/rapid/compare/v0.3.0...v0.4.0) (2024-02-01) **Note:** Version bump only for package @cnpmjs/binding-darwin-x64 diff --git a/bindings/binding-darwin-amd64/package.json b/bindings/binding-darwin-amd64/package.json index 9c2922e..0fe1cc7 100644 --- a/bindings/binding-darwin-amd64/package.json +++ b/bindings/binding-darwin-amd64/package.json @@ -1,6 +1,6 @@ { "name": "@cnpmjs/binding-darwin-x64", - "version": "0.4.0", + "version": "0.4.1", "description": "downloader darwin x64 binding", "main": "index.node", "homepage": "https://github.com/cnpm/rapid", @@ -16,7 +16,8 @@ "index.node", "nydusd", "nydusd-bootstrap", - "unionfs" + "unionfs", + "rapid_deamon" ], "scripts": { "pack": "npm pack", diff --git a/bindings/binding-darwin-arm64/CHANGELOG.md b/bindings/binding-darwin-arm64/CHANGELOG.md index 461a742..24b693d 100644 --- a/bindings/binding-darwin-arm64/CHANGELOG.md +++ b/bindings/binding-darwin-arm64/CHANGELOG.md @@ -3,6 +3,19 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.4.1](https://github.com/cnpm/rapid/compare/v0.4.0...v0.4.1) (2024-04-22) + + +### Bug Fixes + +* add rapid_deamon to package ([aa05edb](https://github.com/cnpm/rapid/commit/aa05edbe4f9d532db42e1a3e802bba2468126627)) +* fix mutli deamon run ([a1c1f84](https://github.com/cnpm/rapid/commit/a1c1f84d8fcdb485facbf4b89875690e49e8739b)) + + + + + + # [0.4.0](https://github.com/cnpm/rapid/compare/v0.3.0...v0.4.0) (2024-02-01) **Note:** Version bump only for package @cnpmjs/binding-darwin-arm64 diff --git a/bindings/binding-darwin-arm64/package.json b/bindings/binding-darwin-arm64/package.json index a2cdb01..1fd63b7 100644 --- a/bindings/binding-darwin-arm64/package.json +++ b/bindings/binding-darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "@cnpmjs/binding-darwin-arm64", - "version": "0.4.0", + "version": "0.4.1", "description": "downloader darwin arm64 binding", "main": "index.node", "homepage": "https://github.com/cnpm/rapid", @@ -16,7 +16,8 @@ "index.node", "nydusd", "nydusd-bootstrap", - "unionfs" + "unionfs", + "rapid_deamon" ], "scripts": { "pack": "npm pack", diff --git a/bindings/binding-linux-amd64/CHANGELOG.md b/bindings/binding-linux-amd64/CHANGELOG.md index e586d2e..c931ec1 100644 --- a/bindings/binding-linux-amd64/CHANGELOG.md +++ b/bindings/binding-linux-amd64/CHANGELOG.md @@ -3,6 +3,19 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.4.1](https://github.com/cnpm/rapid/compare/v0.4.0...v0.4.1) (2024-04-22) + + +### Bug Fixes + +* add rapid_deamon to package ([aa05edb](https://github.com/cnpm/rapid/commit/aa05edbe4f9d532db42e1a3e802bba2468126627)) +* fix mutli deamon run ([a1c1f84](https://github.com/cnpm/rapid/commit/a1c1f84d8fcdb485facbf4b89875690e49e8739b)) + + + + + + # [0.4.0](https://github.com/cnpm/rapid/compare/v0.3.0...v0.4.0) (2024-02-01) **Note:** Version bump only for package @cnpmjs/binding-linux-x64 diff --git a/bindings/binding-linux-amd64/package.json b/bindings/binding-linux-amd64/package.json index 381bd2a..6039a5f 100644 --- a/bindings/binding-linux-amd64/package.json +++ b/bindings/binding-linux-amd64/package.json @@ -1,6 +1,6 @@ { "name": "@cnpmjs/binding-linux-x64", - "version": "0.4.0", + "version": "0.4.1", "description": "downloader linux x64 binding", "main": "index.node", "homepage": "https://github.com/cnpm/rapid", @@ -12,7 +12,8 @@ "files": [ "index.node", "nydusd", - "nydusd-bootstrap" + "nydusd-bootstrap", + "rapid_deamon" ], "engines": { "node": ">=12.0.0" diff --git a/bindings/binding-linux-arm64/CHANGELOG.md b/bindings/binding-linux-arm64/CHANGELOG.md index 7def2f3..6ebfeb4 100644 --- a/bindings/binding-linux-arm64/CHANGELOG.md +++ b/bindings/binding-linux-arm64/CHANGELOG.md @@ -3,6 +3,19 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.4.1](https://github.com/cnpm/rapid/compare/v0.4.0...v0.4.1) (2024-04-22) + + +### Bug Fixes + +* add rapid_deamon to package ([aa05edb](https://github.com/cnpm/rapid/commit/aa05edbe4f9d532db42e1a3e802bba2468126627)) +* fix mutli deamon run ([a1c1f84](https://github.com/cnpm/rapid/commit/a1c1f84d8fcdb485facbf4b89875690e49e8739b)) + + + + + + # [0.4.0](https://github.com/cnpm/rapid/compare/v0.3.0...v0.4.0) (2024-02-01) **Note:** Version bump only for package @cnpmjs/binding-linux-arm64 diff --git a/bindings/binding-linux-arm64/package.json b/bindings/binding-linux-arm64/package.json index e156198..281e75e 100644 --- a/bindings/binding-linux-arm64/package.json +++ b/bindings/binding-linux-arm64/package.json @@ -1,6 +1,6 @@ { "name": "@cnpmjs/binding-linux-arm64", - "version": "0.4.0", + "version": "0.4.1", "description": "downloader linux arm64 binding", "main": "index.node", "homepage": "https://github.com/cnpm/rapid", @@ -15,7 +15,8 @@ "files": [ "index.node", "nydusd", - "nydusd-bootstrap" + "nydusd-bootstrap", + "rapid_deamon" ], "scripts": { "pack": "npm pack", diff --git a/integration/index.2.test.js b/integration/index.2.test.js index bdd2346..b3ce2c1 100644 --- a/integration/index.2.test.js +++ b/integration/index.2.test.js @@ -23,7 +23,7 @@ describe('test/index.v2.test.js', () => { await clean({ cwd }); if (process.platform === 'darwin') { try { - await forceExitDaemon(); + await forceExitDaemon(clean); } catch (err) { console.warn('force exit daemon error: %s', err.message); } diff --git a/integration/index.test.js b/integration/index.test.js index 8e220bd..c8c7e20 100644 --- a/integration/index.test.js +++ b/integration/index.test.js @@ -20,7 +20,7 @@ describe('test/index.test.js', () => { cwd: fixture, }); if (process.platform === 'darwin') { - await forceExitDaemon(); + await forceExitDaemon(clean); } else { await exitDaemon(); } diff --git a/integration/workspaces.test.js b/integration/workspaces.test.js index 8bb2fb1..63c8b0f 100644 --- a/integration/workspaces.test.js +++ b/integration/workspaces.test.js @@ -43,7 +43,7 @@ describe('test/workspaces.test.js', () => { force: true, }); if (process.platform === 'darwin') { - await forceExitDaemon(); + await forceExitDaemon(clean); } else { await exitDaemon(); } diff --git a/lerna.json b/lerna.json index c74ab95..80ef17e 100644 --- a/lerna.json +++ b/lerna.json @@ -1,4 +1,4 @@ { - "version": "0.4.0", + "version": "0.4.1", "lerna": "7.1.4" } diff --git a/packages/binding/CHANGELOG.md b/packages/binding/CHANGELOG.md index bc66011..3eb277d 100644 --- a/packages/binding/CHANGELOG.md +++ b/packages/binding/CHANGELOG.md @@ -3,6 +3,33 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.4.1](https://github.com/cnpm/rapid/compare/v0.4.0...v0.4.1) (2024-04-22) + + +### Bug Fixes + +* fix mutli deamon run ([a1c1f84](https://github.com/cnpm/rapid/commit/a1c1f84d8fcdb485facbf4b89875690e49e8739b)) + + + + + +## [0.4.1](https://github.com/cnpm/rapid/compare/v0.4.0...v0.4.1) (2024-04-22) + +**Note:** Version bump only for package @cnpmjs/binding + + + + + +## [0.4.1](https://github.com/cnpm/rapid/compare/v0.4.0...v0.4.1) (2024-04-22) + +**Note:** Version bump only for package @cnpmjs/binding + + + + + # [0.4.0](https://github.com/cnpm/rapid/compare/v0.3.0...v0.4.0) (2024-02-01) diff --git a/packages/binding/package.json b/packages/binding/package.json index 2386369..0eb629c 100644 --- a/packages/binding/package.json +++ b/packages/binding/package.json @@ -1,6 +1,6 @@ { "name": "@cnpmjs/binding", - "version": "0.4.0", + "version": "0.4.1", "description": "downloader binding", "main": "index.js", "files": [ @@ -18,10 +18,10 @@ "pack": "npm pack" }, "optionalDependencies": { - "@cnpmjs/binding-darwin-arm64": "^0.4.0", - "@cnpmjs/binding-darwin-x64": "^0.4.0", - "@cnpmjs/binding-linux-arm64": "^0.4.0", - "@cnpmjs/binding-linux-x64": "^0.4.0" + "@cnpmjs/binding-darwin-arm64": "^0.4.1", + "@cnpmjs/binding-darwin-x64": "^0.4.1", + "@cnpmjs/binding-linux-arm64": "^0.4.1", + "@cnpmjs/binding-linux-x64": "^0.4.1" }, "devDependencies": { "@napi-rs/cli": "^2.4.2" diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index 27d284b..0a93ee7 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -3,6 +3,42 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.4.1](https://github.com/cnpm/rapid/compare/v0.4.0...v0.4.1) (2024-04-22) + + +### Bug Fixes + +* add rapid_deamon to package ([aa05edb](https://github.com/cnpm/rapid/commit/aa05edbe4f9d532db42e1a3e802bba2468126627)) +* fix mutli deamon run ([a1c1f84](https://github.com/cnpm/rapid/commit/a1c1f84d8fcdb485facbf4b89875690e49e8739b)) + + + + + +## [0.4.1](https://github.com/cnpm/rapid/compare/v0.4.0...v0.4.1) (2024-04-22) + + +### Bug Fixes + +* add rapid_deamon to package ([aa05edb](https://github.com/cnpm/rapid/commit/aa05edbe4f9d532db42e1a3e802bba2468126627)) +* fix mutli deamon run ([429b083](https://github.com/cnpm/rapid/commit/429b08393b4fba00f65d47a7e633102fb3751612)) + + + + + +## [0.4.1](https://github.com/cnpm/rapid/compare/v0.4.0...v0.4.1) (2024-04-22) + + +### Bug Fixes + +* add rapid_deamon to package ([aa05edb](https://github.com/cnpm/rapid/commit/aa05edbe4f9d532db42e1a3e802bba2468126627)) +* fix mutli deamon run ([429b083](https://github.com/cnpm/rapid/commit/429b08393b4fba00f65d47a7e633102fb3751612)) + + + + + # [0.4.0](https://github.com/cnpm/rapid/compare/v0.3.0...v0.4.0) (2024-02-01) diff --git a/packages/cli/lib/deamon.js b/packages/cli/lib/deamon.js index 29dfb30..c901a81 100644 --- a/packages/cli/lib/deamon.js +++ b/packages/cli/lib/deamon.js @@ -5,6 +5,7 @@ const path = require('node:path'); const fs = require('node:fs/promises'); const { rsBindingPath } = require('@cnpmjs/binding'); const execa = require('execa'); +const semver = require('semver'); const { baseRapidModeDir, @@ -103,7 +104,6 @@ const addProject = async config => { } }; - const runDeamon = async () => { const subprocess = execa(destinationFilePath, [], { detached: true, @@ -117,6 +117,7 @@ const runDeamon = async () => { while (count < 10) { const res = await checkDeamonAlive(); if (res) { + console.info('[rapid] rapid daemon is running.'); return true; } count++; @@ -139,7 +140,39 @@ const killDeamon = async () => { } }; +const clearMetadata = async () => { + try { + await fs.stat(metadataDir); + } catch (error) { + debug('delProject error: ', error); + return false; + } + const files = await fs.readdir(metadataDir); + for (let i = 0; i < files.length; i++) { + const projectName = files[i].split('.')[0]; + await delProject(projectName); + } +}; + const registerDeamon = async () => { + try { + await execa.command('killall -9 rapid_deamon'); + + await execa.command(`umount -f ${nydusdMnt}`); + + await execa.command('killall -9 nydusd'); + } catch (error) { + debug('umount deamon error: ', error); + } + + await fs.rm(deamonDir, { recursive: true, force: true }); + + await fs.mkdir(deamonDir, { recursive: true }); + + await fs.mkdir(nydusdMnt, { recursive: true }); + + await fs.copyFile(path.join(__dirname, '../package.json'), path.join(deamonDir, 'package.json')); + const nydusConfigPath = path.join(deamonDir, 'nydus_config.json'); await fs.writeFile(nydusConfigPath, JSON.stringify({ @@ -181,6 +214,8 @@ root: deamonAutoLauncher.enable(); + console.info('[rapid] register rapid daemon end.'); + try { const isEnabled = deamonAutoLauncher.isEnabled(); if (isEnabled) return; @@ -191,20 +226,29 @@ root: }; const initDeamon = async () => { - const isRunning = await checkDeamonAlive(); - if (isRunning) { - console.info('[rapid] rapid daemon is running already.'); - return; - } - await fs.mkdir(deamonDir, { recursive: true }); + try { + const rapidVersion = require(path.join(__dirname, '../package.json')).rapidVersion; + const deamonVersion = require(path.join(deamonDir, './package.json')).rapidVersion; - await fs.mkdir(nydusdMnt, { recursive: true }); + if (!deamonVersion || !semver.gte(deamonVersion, rapidVersion)) { + const err = '[rapid] rapid and deamon version not match'; + console.info(err); + throw Error(err); + } + + const isRunning = await checkDeamonAlive(); + if (isRunning) { + console.info('[rapid] rapid daemon is running already.'); + return; + } + await fs.mkdir(deamonDir, { recursive: true }); + + await fs.mkdir(nydusdMnt, { recursive: true }); - try { await fs.stat(destinationFilePath); + await runDeamon(); } catch (e) { await registerDeamon(); - } finally { await runDeamon(); } }; @@ -213,3 +257,4 @@ exports.initDeamon = initDeamon; exports.delProject = delProject; exports.addProject = addProject; exports.killDeamon = killDeamon; +exports.clearMetadata = clearMetadata; diff --git a/packages/cli/lib/index.js b/packages/cli/lib/index.js index 7486f0c..8a0f2d3 100644 --- a/packages/cli/lib/index.js +++ b/packages/cli/lib/index.js @@ -14,6 +14,7 @@ const util = require('./util'); const nydusd = require('./nydusd'); const nydusdApi = require('./nydusd/nydusd_api'); const { MirrorConfig } = require('binary-mirror-config'); +const { addProject } = require('./deamon'); // 有依赖树(package-lock.json)走 npm / npminstall 极速安装 exports.install = async options => { @@ -63,7 +64,7 @@ exports.install = async options => { await downloadDependency.download(options); assert(Object.keys(packageLock).length, '[rapid] depsJSON invalid.'); - await nydusd.startNydusFs(options.nydusMode, options.cwd, options.pkg, options.daemon); + const deamonConfig = await nydusd.startNydusFs(options.nydusMode, options.cwd, options.pkg, options.daemon); await util.ensureAccess(options.cwd, packageLock); @@ -73,6 +74,11 @@ exports.install = async options => { console.time('[rapid] run lifecycle scripts'); await options.scripts.runLifecycleScripts(mirrorConfig); + + if (options.daemon) { + await addProject(deamonConfig); + } + console.timeEnd('[rapid] run lifecycle scripts'); }; diff --git a/packages/cli/lib/nydusd/fuse_mode.js b/packages/cli/lib/nydusd/fuse_mode.js index 4b5c577..9a27d0c 100644 --- a/packages/cli/lib/nydusd/fuse_mode.js +++ b/packages/cli/lib/nydusd/fuse_mode.js @@ -20,7 +20,7 @@ const { } = require('../util'); const nydusdApi = require('./nydusd_api'); const { Bar } = require('../logger'); -const { addProject, delProject, initDeamon } = require('../deamon'); +const { delProject, initDeamon } = require('../deamon'); const getProjectName = cwd => { const folderName = path.basename(cwd); @@ -51,9 +51,7 @@ async function startNydusFs(cwd, pkg, daemon) { console.log('[rapid] mount overlay, it may take a few seconds'); await mountOverlay(cwd, pkg, deamonConfig); - if (daemon) { - await addProject(deamonConfig); - } + return deamonConfig; } async function generateBootstrapFile(cwd, pkg, config) { diff --git a/packages/cli/lib/nydusd/index.js b/packages/cli/lib/nydusd/index.js index 914c628..dee3800 100644 --- a/packages/cli/lib/nydusd/index.js +++ b/packages/cli/lib/nydusd/index.js @@ -34,7 +34,7 @@ exports.unregisterMode = function(mode) { exports.startNydusFs = async function(mode, cwd, pkg, daemon) { const impl = fsImplMap[mode]; assert(impl, `can not find fs impl for mode: ${mode}`); - await impl.start(cwd, pkg, daemon); + return await impl.start(cwd, pkg, daemon); }; exports.endNydusFs = async function(mode, cwd, pkg, force, daemon) { diff --git a/packages/cli/lib/nydusd/nydusd_api.js b/packages/cli/lib/nydusd/nydusd_api.js index 7b3adb4..911e71b 100644 --- a/packages/cli/lib/nydusd/nydusd_api.js +++ b/packages/cli/lib/nydusd/nydusd_api.js @@ -15,8 +15,8 @@ const { socketPath, tarBucketsDir, } = require('../constants'); -const { wrapSudo, getWorkdir } = require('../util'); -const { killDeamon } = require('../deamon'); +const { wrapSudo, getWorkdir, listMountInfo } = require('../util'); +const { killDeamon, clearMetadata } = require('../deamon'); // see all APIs at: https://github.com/dragonflyoss/image-service/blob/master/api/openapi/nydus-rs.yaml const endpoint = 'http://unix/api/v1'; @@ -140,6 +140,7 @@ async function checkDaemon() { // 优雅退出 nydusd daemon async function exitDaemon() { try { + await clearMetadata(); await killDeamon(); await urllib.request(`${daemonUrl}/exit`, { method: 'PUT', @@ -155,8 +156,15 @@ async function exitDaemon() { // macos fuse-t 中暂未实现 fuse 的优雅退出只能 umount 之后 // 强制杀掉进程 -async function forceExitDaemon() { +async function forceExitDaemon(clean) { try { + await clearMetadata(); + if (clean) { + const currentMountInfo = await listMountInfo(); + for (const info of currentMountInfo) { + await clean({ cwd: info.mountPoint }); + } + } await killDeamon(); await execa.command(`umount -f ${nydusdMnt}`); await execa.command('killall -9 nydusd'); diff --git a/packages/cli/package.json b/packages/cli/package.json index c6edb57..cdf8b36 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@cnpmjs/rapid", - "version": "0.4.0", + "version": "0.4.1", "description": "The rapid npm installed cli built with Nydus", "main": "lib/index.js", "bin": { @@ -11,7 +11,7 @@ "lib" ], "dependencies": { - "@cnpmjs/binding": "^0.4.0", + "@cnpmjs/binding": "^0.4.1", "@npmcli/arborist": "^6.1.5", "@npmcli/map-workspaces": "^3.0.0", "auto-launch": "^5.0.6", @@ -49,5 +49,6 @@ "rapid", "npm" ], - "author": "gemwuu (https://github.com/gemwuu)" + "author": "gemwuu (https://github.com/gemwuu)", + "rapidVersion": "0.0.1" }