From dcbb5ee06bd4c198ad4230ee9f1757c0dd451891 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ji=C5=99=C3=AD=20=C4=8Cerm=C3=A1k?= Date: Fri, 15 Nov 2024 17:03:10 +0100 Subject: [PATCH] =?UTF-8?q?=E2=9E=95=20Add=20turbo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/documentation.yml | 100 ++++++------- .github/workflows/extension.yml | 44 +++--- .github/workflows/release.yml | 68 ++++----- .github/workflows/tests.yml | 58 ++++---- .gitignore | 3 +- example/package.json | 6 +- package.json | 13 +- packages/cli/package.json | 137 +++++++++--------- packages/core/package.json | 3 +- packages/plugin-fallback/package.json | 5 +- .../plugin-non-breaking-spaces/package.json | 7 +- packages/plugin-prettier/package.json | 5 +- plugin-template/package.json | 2 +- turbo.json | 14 ++ yarn.lock | 103 +++++++++++-- 15 files changed, 334 insertions(+), 234 deletions(-) create mode 100644 turbo.json diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index 030eef3e..c7d7d610 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -1,58 +1,58 @@ name: Deploy documentation web on: - push: - branches: [master] - # Allows you to run this workflow manually from the Actions tab on GitHub. - workflow_dispatch: + push: + branches: [master] + # Allows you to run this workflow manually from the Actions tab on GitHub. + workflow_dispatch: # Allow this job to clone the repo and create a page deployment permissions: - contents: read - pages: write - id-token: write + contents: read + pages: write + id-token: write jobs: - build: - runs-on: ubuntu-latest - steps: - - name: Checkout your repository using git - uses: actions/checkout@v4 - # We can't use https://github.com/withastro/action as it install dependencies - # at root directory, not the defined sub path - - name: Setup Node - uses: actions/setup-node@v4 - with: - node-version: 20 - cache: yarn - - - name: Enable Corepack - run: corepack enable - - - name: Install Corepack - run: corepack install - - - name: Install - shell: "bash" - run: yarn install --immutable - - - name: Build - shell: "bash" - working-directory: ./docs/web - run: yarn build - - - name: Upload Pages Artifact - uses: actions/upload-pages-artifact@v3 - with: - path: "./docs/web/dist/" - - deploy: - needs: build - runs-on: ubuntu-latest - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4 + build: + runs-on: ubuntu-latest + steps: + - name: Checkout your repository using git + uses: actions/checkout@v4 + # We can't use https://github.com/withastro/action as it install dependencies + # at root directory, not the defined sub path + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: yarn + + - name: Enable Corepack + run: corepack enable + + - name: Install Corepack + run: corepack install + + - name: Install + shell: 'bash' + run: yarn install --immutable + + - name: Build + shell: 'bash' + working-directory: ./docs/web + run: yarn build + + - name: Upload Pages Artifact + uses: actions/upload-pages-artifact@v3 + with: + path: './docs/web/dist/' + + deploy: + needs: build + runs-on: ubuntu-latest + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/.github/workflows/extension.yml b/.github/workflows/extension.yml index 3131447d..e668cead 100644 --- a/.github/workflows/extension.yml +++ b/.github/workflows/extension.yml @@ -1,31 +1,31 @@ name: Deploy extension on: - push: - tags: - - "ext-*" + push: + tags: + - 'ext-*' jobs: - publish-marketplace: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: 20 + publish-marketplace: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 20 - - name: Enable Corepack - run: corepack enable + - name: Enable Corepack + run: corepack enable - - name: Install Corepack - run: corepack install + - name: Install Corepack + run: corepack install - - name: Install - run: yarn install --immutable - working-directory: ./vscode-extension + - name: Install + run: yarn install --immutable + working-directory: ./vscode-extension - - name: Deploy to marketplace - run: yarn deploy - working-directory: ./vscode-extension - env: - VSCE_PAT: ${{ secrets.VSCODE_SECRET }} + - name: Deploy to marketplace + run: yarn deploy + working-directory: ./vscode-extension + env: + VSCE_PAT: ${{ secrets.VSCODE_SECRET }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1670b91c..3431910c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -4,39 +4,39 @@ name: Release on: - push: - tags: - - "v*" + push: + tags: + - 'v*' jobs: - publish-npm: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: 20 - registry-url: https://registry.npmjs.org/ - - - name: Enable Corepack - run: corepack enable - - - name: Install Corepack - run: corepack install - - - name: Install dependencies - run: yarn install --immutable - - - name: Build - run: yarn build - - - name: Publish packages - run: yarn publish:ci - env: - NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}} - - # - name: Create Github Release - # uses: docker://antonyurchenko/git-release:latest - # env: - # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - # ALLOW_TAG_PREFIX: "true" + publish-npm: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 20 + registry-url: https://registry.npmjs.org/ + + - name: Enable Corepack + run: corepack enable + + - name: Install Corepack + run: corepack install + + - name: Install dependencies + run: yarn install --immutable + + - name: Build + run: yarn build + + - name: Publish packages + run: yarn publish:ci + env: + NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}} + + # - name: Create Github Release + # uses: docker://antonyurchenko/git-release:latest + # env: + # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + # ALLOW_TAG_PREFIX: "true" diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 6d4c9d8f..9591ffe6 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -1,42 +1,42 @@ name: Tests on: - pull_request: - push: - branches: - - master + pull_request: + push: + branches: + - master jobs: - build: - runs-on: ubuntu-latest + build: + runs-on: ubuntu-latest - strategy: - matrix: - node-version: [20.x] + strategy: + matrix: + node-version: [20.x] - steps: - - name: Checkout project - uses: actions/checkout@v4 + steps: + - name: Checkout project + uses: actions/checkout@v4 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v4 - with: - node-version: ${{ matrix.node-version }} + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} - - name: Enable Corepack - run: corepack enable + - name: Enable Corepack + run: corepack enable - - name: Install Corepack - run: corepack install + - name: Install Corepack + run: corepack install - - name: Install dependencies - run: yarn install --immutable + - name: Install dependencies + run: yarn install --immutable - - name: Build - run: yarn build + - name: Build + run: yarn build - - name: Lint - run: yarn lint - - - name: Unit tests - run: yarn test \ No newline at end of file + - name: Lint + run: yarn lint + + - name: Unit tests + run: yarn test diff --git a/.gitignore b/.gitignore index 81f78a3a..8f0796ad 100644 --- a/.gitignore +++ b/.gitignore @@ -18,4 +18,5 @@ packages/*/dist packages/*/lib .yarn -tsconfig.tsbuildinfo \ No newline at end of file +tsconfig.tsbuildinfo +.turbo \ No newline at end of file diff --git a/example/package.json b/example/package.json index 5201b1f7..f730f160 100644 --- a/example/package.json +++ b/example/package.json @@ -5,8 +5,8 @@ "main": "index.js", "license": "MIT", "devDependencies": { - "@lokse/plugin-fallback": "^2.3.1", - "@lokse/plugin-prettier": "^2.3.1", - "lokse": "^2.3.1" + "@lokse/plugin-fallback": "workspace:*", + "@lokse/plugin-prettier": "workspace:*", + "lokse": "workspace:*" } } diff --git a/package.json b/package.json index aa51cc7a..030c1363 100644 --- a/package.json +++ b/package.json @@ -11,17 +11,17 @@ "node": ">=20" }, "scripts": { - "bootstrap": "lerna bootstrap --use-workspaces", - "build": "lerna run build", - "clean": "lerna exec --ignore example -- rm -r lib", - "changelog": "yarn update-gitmoji-config && npx gitmoji-changelog --preset generic", + "postinstall": "turbo telemetry disable", + "build": "turbo run build", + "clean": "turbo run clean --parallel", "lint": "eslint packages/*/src/ --ext .ts --config ./.eslintrc", "format": "prettier --write --config prettier.config.mjs \"packages/*/(src|test)/**/*.(ts|tsx)\"", + "test": "jest", + "test:watch": "jest --watchAll", + "changelog": "yarn update-gitmoji-config && npx gitmoji-changelog --preset generic", "publish:ci": "lerna publish from-package --yes", "release": "lerna version $1", "version": "yarn changelog && code --wait CHANGELOG.md && git add CHANGELOG.md .gitmoji-changelogrc", - "test": "jest", - "test:watch": "jest --watchAll", "update-gitmoji-config": "node ./scripts/update-gitmoji-config.js" }, "devDependencies": { @@ -35,6 +35,7 @@ "husky": "^4.3.0", "lint-staged": "^10.5.1", "prettier": "3.3.3", + "turbo": "^2.3.0", "typescript": "5.6.3" }, "dependencies": { diff --git a/packages/cli/package.json b/packages/cli/package.json index 14af0d6e..0a64da7b 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,70 +1,71 @@ { - "name": "lokse", - "description": "Tool to efficient usage of translations stored in google spreadsheet", - "version": "2.3.1", - "author": { - "name": "Lukas Horak", - "email": "horaklukas@centrum.cz" - }, - "bin": "./bin/run", - "bugs": "https://github.com/AckeeCZ/lokse/issues", - "dependencies": { - "@lokse/core": "^2.3.1", - "@oclif/command": "^1", - "@oclif/config": "^1", - "@oclif/errors": "^1.3.4", - "@oclif/plugin-help": "^3", - "@sindresorhus/slugify": "^1.1.0", - "@types/array.prototype.flat": "^1.2.1", - "@types/dedent": "^0.7.0", - "@types/inquirer": "^8.1.3", - "@types/update-notifier": "^5.0.0", - "array.prototype.flat": "^1.2.4", - "dedent": "^0.7.0", - "dotenv-flow": "^3.2.0", - "inquirer": "^8.2.0", - "open": "^7.2.1", - "ora": "^5.0.0", - "prettier": "3.3.3", - "ts-node": "10.9.2", - "tslib": "2.8.1", - "update-notifier": "^5.1.0" - }, - "devDependencies": { - "@oclif/dev-cli": "^1", - "@oclif/test": "^1", - "@types/jest-when": "3.5.5", - "@types/node": "20.14.11", - "jest-when": "3.6.0" - }, - "files": [ - "/bin", - "/lib", - "/npm-shrinkwrap.json", - "/oclif.manifest.json" - ], - "homepage": "https://github.com/AckeeCZ/lokse", - "keywords": [ - "oclif" - ], - "license": "MIT", - "main": "lib/index.js", - "oclif": { - "commands": "./lib/commands", - "bin": "lokse", - "plugins": [ - "@oclif/plugin-help" - ] - }, - "repository": "AckeeCZ/lokse", - "scripts": { - "build": "tsc -b", - "copy:templates": "cp -r src/templates lib/templates", - "postpack": "rm -f oclif.manifest.json", - "prepack": "rm -rf lib && yarn build && yarn copy:templates && oclif-dev manifest && oclif-dev readme", - "version": "yarn readme && git add README.md", - "readme": "oclif-dev readme", - "release": "yarn version" - }, - "types": "lib/index.d.ts" + "name": "lokse", + "description": "Tool to efficient usage of translations stored in google spreadsheet", + "version": "2.3.1", + "author": { + "name": "Lukas Horak", + "email": "horaklukas@centrum.cz" + }, + "bin": "./bin/run", + "bugs": "https://github.com/AckeeCZ/lokse/issues", + "dependencies": { + "@lokse/core": "workspace:*", + "@oclif/command": "^1", + "@oclif/config": "^1", + "@oclif/errors": "^1.3.4", + "@oclif/plugin-help": "^3", + "@sindresorhus/slugify": "^1.1.0", + "@types/array.prototype.flat": "^1.2.1", + "@types/dedent": "^0.7.0", + "@types/inquirer": "^8.1.3", + "@types/update-notifier": "^5.0.0", + "array.prototype.flat": "^1.2.4", + "dedent": "^0.7.0", + "dotenv-flow": "^3.2.0", + "inquirer": "^8.2.0", + "open": "^7.2.1", + "ora": "^5.0.0", + "prettier": "3.3.3", + "ts-node": "10.9.2", + "tslib": "2.8.1", + "update-notifier": "^5.1.0" + }, + "devDependencies": { + "@oclif/dev-cli": "^1", + "@oclif/test": "^1", + "@types/jest-when": "3.5.5", + "@types/node": "20.14.11", + "jest-when": "3.6.0" + }, + "files": [ + "/bin", + "/lib", + "/npm-shrinkwrap.json", + "/oclif.manifest.json" + ], + "homepage": "https://github.com/AckeeCZ/lokse", + "keywords": [ + "oclif" + ], + "license": "MIT", + "main": "lib/index.js", + "oclif": { + "commands": "./lib/commands", + "bin": "lokse", + "plugins": [ + "@oclif/plugin-help" + ] + }, + "repository": "AckeeCZ/lokse", + "scripts": { + "build": "tsc -b", + "clean": "rm -rf lib", + "copy:templates": "cp -r src/templates lib/templates", + "postpack": "rm -f oclif.manifest.json", + "prepack": "rm -rf lib && yarn build && yarn copy:templates && oclif-dev manifest && oclif-dev readme", + "version": "yarn readme && git add README.md", + "readme": "oclif-dev readme", + "release": "yarn version" + }, + "types": "lib/index.d.ts" } diff --git a/packages/core/package.json b/packages/core/package.json index 5df3ab0e..6a652b98 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -35,7 +35,8 @@ "main": "lib/index.js", "repository": "AckeeCZ/lokse", "scripts": { - "build": "tsc -b" + "build": "tsc -b", + "clean": "rm -rf lib" }, "publishConfig": { "access": "public" diff --git a/packages/plugin-fallback/package.json b/packages/plugin-fallback/package.json index db1f1f41..ae1c57bb 100644 --- a/packages/plugin-fallback/package.json +++ b/packages/plugin-fallback/package.json @@ -8,7 +8,7 @@ }, "bugs": "https://github.com/AckeeCZ/lokse/issues", "dependencies": { - "@lokse/core": "^2.3.1" + "@lokse/core": "workspace:*" }, "homepage": "https://github.com/AckeeCZ/lokse", "keywords": [ @@ -19,7 +19,8 @@ "main": "lib/index.js", "repository": "AckeeCZ/lokse", "scripts": { - "build": "tsc -b" + "build": "tsc -b", + "clean": "rm -rf lib" }, "publishConfig": { "access": "public" diff --git a/packages/plugin-non-breaking-spaces/package.json b/packages/plugin-non-breaking-spaces/package.json index a4d432d1..9dd2b557 100644 --- a/packages/plugin-non-breaking-spaces/package.json +++ b/packages/plugin-non-breaking-spaces/package.json @@ -8,8 +8,8 @@ }, "bugs": "https://github.com/AckeeCZ/lokse/issues", "dependencies": { - "@lokse/core": "^2.3.1", - "lodash": "^4.17.20" + "@lokse/core": "workspace:*", + "lodash": "4.17.20" }, "homepage": "https://github.com/AckeeCZ/lokse", "keywords": [ @@ -20,7 +20,8 @@ "main": "lib/index.js", "repository": "AckeeCZ/lokse", "scripts": { - "build": "tsc -b" + "build": "tsc -b", + "clean": "rm -rf lib" }, "publishConfig": { "access": "public" diff --git a/packages/plugin-prettier/package.json b/packages/plugin-prettier/package.json index b9a7a5ce..7edb3c19 100644 --- a/packages/plugin-prettier/package.json +++ b/packages/plugin-prettier/package.json @@ -8,7 +8,7 @@ }, "bugs": "https://github.com/AckeeCZ/lokse/issues", "dependencies": { - "@lokse/core": "^2.3.1", + "@lokse/core": "workspace:*", "prettier": "3.3.3", "typescript": "5.6.3" }, @@ -22,7 +22,8 @@ "main": "lib/index.js", "repository": "AckeeCZ/lokse", "scripts": { - "build": "tsc -b" + "build": "tsc -b", + "clean": "rm -rf lib" }, "publishConfig": { "access": "public" diff --git a/plugin-template/package.json b/plugin-template/package.json index bc24ae78..9e6c1584 100644 --- a/plugin-template/package.json +++ b/plugin-template/package.json @@ -8,7 +8,7 @@ }, "bugs": "https://github.com/AckeeCZ/lokse/issues", "dependencies": { - "@lokse/core": "^2.0.1" + "@lokse/core": "workspace:*" }, "devDependencies": {}, "homepage": "https://github.com/AckeeCZ/lokse", diff --git a/turbo.json b/turbo.json new file mode 100644 index 00000000..7e1fc6ed --- /dev/null +++ b/turbo.json @@ -0,0 +1,14 @@ +{ + "$schema": "https://turbo.build/schema.json", + "ui": "stream", + "tasks": { + "build": { + "dependsOn": ["clean", "^build"], + "inputs": ["$TURBO_DEFAULT$"], + "outputs": ["lib", "dist"] + }, + "clean": { + "outputLogs": "errors-only" + } + } +} diff --git a/yarn.lock b/yarn.lock index 659f2372..7212f1a1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2483,7 +2483,7 @@ __metadata: languageName: node linkType: hard -"@lokse/core@npm:^2.3.1, @lokse/core@workspace:packages/core": +"@lokse/core@workspace:*, @lokse/core@workspace:packages/core": version: 0.0.0-use.local resolution: "@lokse/core@workspace:packages/core" dependencies: @@ -2505,11 +2505,11 @@ __metadata: languageName: unknown linkType: soft -"@lokse/plugin-fallback@npm:^2.3.1, @lokse/plugin-fallback@workspace:packages/plugin-fallback": +"@lokse/plugin-fallback@workspace:*, @lokse/plugin-fallback@workspace:packages/plugin-fallback": version: 0.0.0-use.local resolution: "@lokse/plugin-fallback@workspace:packages/plugin-fallback" dependencies: - "@lokse/core": "npm:^2.3.1" + "@lokse/core": "workspace:*" languageName: unknown linkType: soft @@ -2517,16 +2517,16 @@ __metadata: version: 0.0.0-use.local resolution: "@lokse/plugin-non-breaking-spaces@workspace:packages/plugin-non-breaking-spaces" dependencies: - "@lokse/core": "npm:^2.3.1" - lodash: "npm:^4.17.20" + "@lokse/core": "workspace:*" + lodash: "npm:4.17.20" languageName: unknown linkType: soft -"@lokse/plugin-prettier@npm:^2.3.1, @lokse/plugin-prettier@workspace:packages/plugin-prettier": +"@lokse/plugin-prettier@workspace:*, @lokse/plugin-prettier@workspace:packages/plugin-prettier": version: 0.0.0-use.local resolution: "@lokse/plugin-prettier@workspace:packages/plugin-prettier" dependencies: - "@lokse/core": "npm:^2.3.1" + "@lokse/core": "workspace:*" prettier: "npm:3.3.3" typescript: "npm:5.6.3" languageName: unknown @@ -2550,6 +2550,7 @@ __metadata: lint-staged: "npm:^10.5.1" prettier: "npm:3.3.3" ts-jest: "npm:29.2.5" + turbo: "npm:^2.3.0" typescript: "npm:5.6.3" languageName: unknown linkType: soft @@ -6675,9 +6676,9 @@ __metadata: version: 0.0.0-use.local resolution: "example@workspace:example" dependencies: - "@lokse/plugin-fallback": "npm:^2.3.1" - "@lokse/plugin-prettier": "npm:^2.3.1" - lokse: "npm:^2.3.1" + "@lokse/plugin-fallback": "workspace:*" + "@lokse/plugin-prettier": "workspace:*" + lokse: "workspace:*" languageName: unknown linkType: soft @@ -9985,6 +9986,13 @@ __metadata: languageName: node linkType: hard +"lodash@npm:4.17.20": + version: 4.17.20 + resolution: "lodash@npm:4.17.20" + checksum: 10c0/faec37cb9f161b766bdc078a1356a07b9eaaa867796dd2520a407fe0a6a6d7be031e8f228f0cf3d305095703ee40258616c870b8d17dcdcb16f745bf31e8c3c2 + languageName: node + linkType: hard + "lodash@npm:4.17.21, lodash@npm:^4.17.11, lodash@npm:^4.17.13, lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.20, lodash@npm:^4.17.21, lodash@npm:^4.7.0": version: 4.17.21 resolution: "lodash@npm:4.17.21" @@ -10045,11 +10053,11 @@ __metadata: languageName: unknown linkType: soft -"lokse@npm:^2.3.1, lokse@workspace:packages/cli": +"lokse@workspace:*, lokse@workspace:packages/cli": version: 0.0.0-use.local resolution: "lokse@workspace:packages/cli" dependencies: - "@lokse/core": "npm:^2.3.1" + "@lokse/core": "workspace:*" "@oclif/command": "npm:^1" "@oclif/config": "npm:^1" "@oclif/dev-cli": "npm:^1" @@ -14748,6 +14756,77 @@ __metadata: languageName: node linkType: hard +"turbo-darwin-64@npm:2.3.0": + version: 2.3.0 + resolution: "turbo-darwin-64@npm:2.3.0" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"turbo-darwin-arm64@npm:2.3.0": + version: 2.3.0 + resolution: "turbo-darwin-arm64@npm:2.3.0" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"turbo-linux-64@npm:2.3.0": + version: 2.3.0 + resolution: "turbo-linux-64@npm:2.3.0" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + +"turbo-linux-arm64@npm:2.3.0": + version: 2.3.0 + resolution: "turbo-linux-arm64@npm:2.3.0" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + +"turbo-windows-64@npm:2.3.0": + version: 2.3.0 + resolution: "turbo-windows-64@npm:2.3.0" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"turbo-windows-arm64@npm:2.3.0": + version: 2.3.0 + resolution: "turbo-windows-arm64@npm:2.3.0" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"turbo@npm:^2.3.0": + version: 2.3.0 + resolution: "turbo@npm:2.3.0" + dependencies: + turbo-darwin-64: "npm:2.3.0" + turbo-darwin-arm64: "npm:2.3.0" + turbo-linux-64: "npm:2.3.0" + turbo-linux-arm64: "npm:2.3.0" + turbo-windows-64: "npm:2.3.0" + turbo-windows-arm64: "npm:2.3.0" + dependenciesMeta: + turbo-darwin-64: + optional: true + turbo-darwin-arm64: + optional: true + turbo-linux-64: + optional: true + turbo-linux-arm64: + optional: true + turbo-windows-64: + optional: true + turbo-windows-arm64: + optional: true + bin: + turbo: bin/turbo + checksum: 10c0/cad6a7b16d2cdaa15fe75efe1938d335cb026c073dfe639aaf2dce4c4d10ecc6a63216689682c1d1f7238ceed56f6e4ba736aa1b738aec70afb66f770e7c3817 + languageName: node + linkType: hard + "tweetnacl@npm:^0.14.3, tweetnacl@npm:~0.14.0": version: 0.14.5 resolution: "tweetnacl@npm:0.14.5"