mirror of
https://github.com/verdaccio/verdaccio.git
synced 2024-12-16 21:56:25 -05:00
chore: remove benchmark
moved to another repository
This commit is contained in:
parent
d803c829ee
commit
fedd372a90
16 changed files with 1 additions and 567 deletions
|
@ -35,7 +35,6 @@
|
|||
"@verdaccio/url": "11.0.0-alpha.3",
|
||||
"@verdaccio/server-fastify": "6.0.0-6-next.9",
|
||||
"@verdaccio/eslint-config": "1.0.0",
|
||||
"@verdaccio/benchmark": "1.0.0",
|
||||
"@verdaccio/core": "6.0.0-next.0",
|
||||
"@verdaccio/test-helper": "1.0.0",
|
||||
"docusaurus-plugin-contributors": "1.0.0",
|
||||
|
|
174
.github/workflows/benchmark.yml
vendored
174
.github/workflows/benchmark.yml
vendored
|
@ -1,174 +0,0 @@
|
|||
---
|
||||
name: ci - benchmark
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
# 1 time peer week
|
||||
# collecting enough data to draw some graphics
|
||||
- cron: '0 1 * * 1'
|
||||
# push:
|
||||
# branches:
|
||||
# - master
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
prepare:
|
||||
name: Prepare build
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # tag=v3
|
||||
- uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # tag=v3
|
||||
with:
|
||||
node-version: 16.x
|
||||
- name: install pnpm
|
||||
run: sudo npm i pnpm@latest-6 -g
|
||||
- name: set store
|
||||
run: |
|
||||
mkdir ~/.pnpm-store
|
||||
pnpm config set store-dir ~/.pnpm-store
|
||||
- name: setup pnpm config registry
|
||||
run: pnpm config set registry https://registry.verdaccio.org
|
||||
- name: install dependencies
|
||||
run: pnpm install
|
||||
- name: Cache .pnpm-store
|
||||
uses: actions/cache@9b0c1fce7a93df8e3bb8926b0d6e9d89e92f20a7 # tag=v3
|
||||
with:
|
||||
path: ~/.pnpm-store
|
||||
key: pnpm-${{ hashFiles('pnpm-lock.yaml') }}
|
||||
restore-keys: |
|
||||
pnpm-
|
||||
- name: build
|
||||
run: pnpm build
|
||||
- name: tar packages
|
||||
run: |
|
||||
tar -czvf ${{ github.workspace }}/pkg.tar.gz -C ${{ github.workspace }}/packages .
|
||||
- uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # tag=v3
|
||||
with:
|
||||
name: verdaccio-artifact
|
||||
path: pkg.tar.gz
|
||||
benchmark-autocannon:
|
||||
needs: prepare
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
benchmark:
|
||||
- info
|
||||
- tarball
|
||||
verdaccioVersion:
|
||||
# - local
|
||||
- 3.13.1
|
||||
- 4.12.2
|
||||
- 5.10.2
|
||||
- 6.0.0-6-next.40
|
||||
name: Benchmark autocannon
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # tag=v3
|
||||
- uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # tag=v3
|
||||
with:
|
||||
node-version: 16.x
|
||||
- uses: actions/download-artifact@9782bd6a9848b53b110e712e20e42d89988822b7 # tag=v3
|
||||
with:
|
||||
name: verdaccio-artifact
|
||||
- name: untar packages
|
||||
run: tar -xzvf pkg.tar.gz -C ${{ github.workspace }}/packages
|
||||
- name: install pnpm
|
||||
# require fixed version
|
||||
run: sudo npm i pnpm@latest-6 -g
|
||||
- uses: actions/cache@9b0c1fce7a93df8e3bb8926b0d6e9d89e92f20a7 # tag=v3
|
||||
with:
|
||||
path: ~/.pnpm-store
|
||||
key: pnpm-${{ hashFiles('pnpm-lock.yaml') }}
|
||||
- name: install dependencies
|
||||
run: pnpm install
|
||||
- name: start registry
|
||||
run: ./scripts/benchmark-prepare.sh ${{matrix.verdaccioVersion}}
|
||||
- name: benchmark
|
||||
run: pnpm benchmark:api -- -v ${{matrix.verdaccioVersion}} -f ${{matrix.benchmark}}
|
||||
shell: bash
|
||||
env:
|
||||
DEBUG: metrics*
|
||||
- uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # tag=v3
|
||||
with:
|
||||
name: verdaccio-metrics-api
|
||||
path: ./api-results-${{matrix.verdaccioVersion}}-${{matrix.benchmark}}.json
|
||||
if-no-files-found: error
|
||||
retention-days: 10
|
||||
- name: submit metrics
|
||||
run: pnpm benchmark:submit
|
||||
env:
|
||||
DEBUG: metrics
|
||||
METRICS_SOURCE: autocannon
|
||||
METRICS_URL: ${{ secrets.METRICS_URL }}
|
||||
METRICS_TOKEN: ${{ secrets.METRICS_TOKEN }}
|
||||
METRICS_BENCHMARK: ${{matrix.benchmark}}
|
||||
METRICS_VERSION: ${{matrix.verdaccioVersion}}
|
||||
METRICS_COMMIT_HASH: ${{ github.sha }}
|
||||
METRICS_FILE_NAME: 'api-results'
|
||||
benchmark:
|
||||
needs: prepare
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
benchmark:
|
||||
- info
|
||||
- tarball
|
||||
verdaccioVersion:
|
||||
# future 6.x (wip)
|
||||
# - local (master branch)
|
||||
# old versions to compare same test along previous releases
|
||||
- 3.13.1
|
||||
- 4.12.2
|
||||
- 5.10.2
|
||||
- 6.0.0-6-next.40
|
||||
name: Benchmark hyperfine
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # tag=v3
|
||||
- uses: actions/setup-node@8c91899e586c5b171469028077307d293428b516 # tag=v3
|
||||
with:
|
||||
node-version: 16.x
|
||||
- uses: actions/download-artifact@9782bd6a9848b53b110e712e20e42d89988822b7 # tag=v3
|
||||
with:
|
||||
name: verdaccio-artifact
|
||||
- name: untar packages
|
||||
run: tar -xzvf pkg.tar.gz -C ${{ github.workspace }}/packages
|
||||
- name: install pnpm
|
||||
# require fixed version
|
||||
run: sudo npm i pnpm@latest-6 -g
|
||||
- uses: actions/cache@9b0c1fce7a93df8e3bb8926b0d6e9d89e92f20a7 # tag=v3
|
||||
with:
|
||||
path: ~/.pnpm-store
|
||||
key: pnpm-${{ hashFiles('pnpm-lock.yaml') }}
|
||||
- name: install dependencies
|
||||
run: pnpm install
|
||||
- name: install hyperfine
|
||||
run: |
|
||||
wget https://github.com/sharkdp/hyperfine/releases/download/v1.11.0/hyperfine_1.11.0_amd64.deb
|
||||
sudo dpkg -i hyperfine_1.11.0_amd64.deb
|
||||
- name: start registry
|
||||
run: ./scripts/benchmark-prepare.sh ${{matrix.verdaccioVersion}}
|
||||
- name: benchmark
|
||||
run: ./scripts/benchmark-run.sh ${{matrix.benchmark}}
|
||||
# https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#using-a-specific-shell
|
||||
shell: bash
|
||||
- name: rename
|
||||
run: mv ./hyper-results.json ./hyper-results-${{matrix.verdaccioVersion}}-${{matrix.benchmark}}.json
|
||||
- uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # tag=v3
|
||||
with:
|
||||
name: verdaccio-metrics
|
||||
path: ./hyper-results-${{matrix.verdaccioVersion}}-${{matrix.benchmark}}.json
|
||||
if-no-files-found: error
|
||||
retention-days: 10
|
||||
- name: submit metrics
|
||||
run: pnpm benchmark:submit
|
||||
env:
|
||||
DEBUG: metrics
|
||||
METRICS_SOURCE: hyperfine
|
||||
METRICS_URL: ${{ secrets.METRICS_URL }}
|
||||
METRICS_TOKEN: ${{ secrets.METRICS_TOKEN }}
|
||||
METRICS_BENCHMARK: ${{matrix.benchmark}}
|
||||
METRICS_VERSION: ${{matrix.verdaccioVersion}}
|
||||
METRICS_COMMIT_HASH: ${{ github.sha }}
|
|
@ -45,7 +45,6 @@
|
|||
"@crowdin/cli": "3.9.1",
|
||||
"@trivago/prettier-plugin-sort-imports": "3.4.0",
|
||||
"@types/async": "3.2.15",
|
||||
"@types/autocannon": "4.1.1",
|
||||
"@types/express": "4.17.14",
|
||||
"@types/http-errors": "1.8.2",
|
||||
"@types/jest": "27.5.2",
|
||||
|
@ -68,12 +67,10 @@
|
|||
"@types/react-virtualized": "9.21.21",
|
||||
"@typescript-eslint/eslint-plugin": "5.41.0",
|
||||
"@typescript-eslint/parser": "5.41.0",
|
||||
"@verdaccio/benchmark": "workspace:*",
|
||||
"@verdaccio/crowdin-translations": "workspace:*",
|
||||
"@verdaccio/eslint-config": "workspace:*",
|
||||
"@verdaccio/types": "workspace:*",
|
||||
"@verdaccio/ui-theme": "workspace:*",
|
||||
"autocannon": "7.10.0",
|
||||
"babel-core": "7.0.0-bridge.0",
|
||||
"babel-eslint": "10.1.0",
|
||||
"babel-jest": "29.3.1",
|
||||
|
@ -97,7 +94,6 @@
|
|||
"kleur": "3.0.3",
|
||||
"lint-staged": "11.2.6",
|
||||
"nock": "13.2.9",
|
||||
"node-fetch": "cjs",
|
||||
"nodemon": "2.0.20",
|
||||
"npm-run-all": "4.1.5",
|
||||
"prettier": "2.7.1",
|
||||
|
@ -125,9 +121,6 @@
|
|||
"test:e2e:cli": "pnpm test --filter ...@verdaccio/e2e-cli-* -- --coverage=false",
|
||||
"test:e2e:ui": "pnpm test --filter ...@verdaccio/e2e-ui",
|
||||
"start": "concurrently --kill-others \"pnpm _start:server\" \"pnpm _start:web\"",
|
||||
"benchmark:hyper": "verdaccio-benchmark hyper -r ./hyper-results.json",
|
||||
"benchmark:api": "verdaccio-benchmark api",
|
||||
"benchmark:submit": "pnpm ts-node ./scripts/submit-metrics.ts",
|
||||
"contributors": "ts-node ./scripts/contributors-update.ts",
|
||||
"start:watch": "concurrently --kill-others \"pnpm _build:watch\" \"pnpm _start:server\" \"pnpm _debug:reload\"",
|
||||
"_build:watch": "pnpm run --parallel watch --filter ./packages",
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
{
|
||||
"extends": "../../../.babelrc"
|
||||
}
|
|
@ -1 +0,0 @@
|
|||
require('./build/index.js');
|
|
@ -1,28 +0,0 @@
|
|||
{
|
||||
"name": "@verdaccio/benchmark",
|
||||
"version": "1.0.0",
|
||||
"bin": {
|
||||
"verdaccio-benchmark": "./index.js"
|
||||
},
|
||||
"private": "true",
|
||||
"description": "benchmark",
|
||||
"main": "./build/index.js",
|
||||
"scripts": {
|
||||
"build": "babel src/ --out-dir build/ --copy-files --extensions \".ts,.tsx\" --source-maps",
|
||||
"run": "ts-node src/init.ts"
|
||||
},
|
||||
"keywords": [],
|
||||
"author": "Juan Picado <juanpicado19@gmail.com>",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"clipanion": "3.1.0",
|
||||
"temp-dir": "2.0.0",
|
||||
"get-port": "5.1.1",
|
||||
"semver": "7.3.8"
|
||||
},
|
||||
"devDependencies": {
|
||||
"autocannon": "7.10.0",
|
||||
"node-fetch": "cjs",
|
||||
"ts-node": "10.9.1"
|
||||
}
|
||||
}
|
|
@ -1,27 +0,0 @@
|
|||
/* eslint-disable no-console */
|
||||
import { Command, Option } from 'clipanion';
|
||||
|
||||
import runApi from './run';
|
||||
|
||||
export class ApiCommand extends Command {
|
||||
public static paths = [['api']];
|
||||
|
||||
private benchmark = Option.String('-f', {
|
||||
description: 'benchmark to run',
|
||||
required: true,
|
||||
});
|
||||
|
||||
private version = Option.String('-v', {
|
||||
description: 'version is running',
|
||||
required: true,
|
||||
});
|
||||
|
||||
public async execute() {
|
||||
try {
|
||||
await runApi(this.benchmark, this.version);
|
||||
} catch (err: any) {
|
||||
console.error(err);
|
||||
process.exit(1);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,40 +0,0 @@
|
|||
import { writeFileSync } from 'fs';
|
||||
|
||||
const path = require('path');
|
||||
const debug = require('debug')('metrics:autocannon');
|
||||
const autocannon = require('autocannon');
|
||||
|
||||
function getURL(benchmark) {
|
||||
switch (benchmark) {
|
||||
case 'info':
|
||||
return 'http://localhost:4873/jquery';
|
||||
case 'tarball':
|
||||
return 'http://localhost:4873/jquery/-/jquery-3.6.0.tgz';
|
||||
default:
|
||||
throw new TypeError('no benckmark supported');
|
||||
}
|
||||
}
|
||||
|
||||
export default async function run(benchmark, version) {
|
||||
try {
|
||||
debug('api report start');
|
||||
debug('url', getURL(benchmark));
|
||||
const result = await autocannon({
|
||||
url: getURL(benchmark),
|
||||
connections: 10,
|
||||
pipelining: 1,
|
||||
duration: 10,
|
||||
});
|
||||
const wrapResults = {
|
||||
results: [result],
|
||||
};
|
||||
const reportPath = path.join(process.cwd(), `./api-results-${version}-${benchmark}.json`);
|
||||
debug('report path %o', reportPath);
|
||||
writeFileSync(reportPath, JSON.stringify(wrapResults, null, 2), 'utf-8');
|
||||
debug('report ends');
|
||||
} catch (err: any) {
|
||||
// eslint-disable-next-line no-console
|
||||
console.error(`error on process autocannon run`, err);
|
||||
process.exit(1);
|
||||
}
|
||||
}
|
|
@ -1,23 +0,0 @@
|
|||
import { Cli } from 'clipanion';
|
||||
|
||||
import { ApiCommand } from './api';
|
||||
|
||||
const [node, app, ...args] = process.argv;
|
||||
|
||||
const cli = new Cli({
|
||||
binaryLabel: `benckmark`,
|
||||
binaryName: `${node} ${app}`,
|
||||
binaryVersion: require('../package.json').version,
|
||||
});
|
||||
|
||||
cli.register(ApiCommand);
|
||||
cli.runExit(args, Cli.defaultContext);
|
||||
|
||||
process.on('uncaughtException', function (err) {
|
||||
// eslint-disable-next-line no-console
|
||||
console.error(
|
||||
// eslint-disable-next-line max-len
|
||||
`uncaught exception, please report (https://github.com/verdaccio/verdaccio/issues) this: \n${err.stack}`
|
||||
);
|
||||
process.exit(1);
|
||||
});
|
|
@ -1,9 +0,0 @@
|
|||
{
|
||||
"extends": "../../tsconfig.base.json",
|
||||
"compilerOptions": {
|
||||
"rootDir": "./src",
|
||||
"outDir": "./build"
|
||||
},
|
||||
"include": ["src/**/*"],
|
||||
"exclude": ["src/**/*.test.ts"]
|
||||
}
|
|
@ -1,9 +0,0 @@
|
|||
{
|
||||
"extends": "../../tsconfig.reference.json",
|
||||
"compilerOptions": {
|
||||
"rootDir": "./src",
|
||||
"outDir": "./build"
|
||||
},
|
||||
"include": ["src/**/*"],
|
||||
"exclude": ["src/**/*.test.ts"]
|
||||
}
|
162
pnpm-lock.yaml
162
pnpm-lock.yaml
|
@ -38,7 +38,6 @@ importers:
|
|||
'@dianmora/contributors': 5.0.0
|
||||
'@trivago/prettier-plugin-sort-imports': 3.4.0
|
||||
'@types/async': 3.2.15
|
||||
'@types/autocannon': 4.1.1
|
||||
'@types/express': 4.17.14
|
||||
'@types/http-errors': 1.8.2
|
||||
'@types/jest': 27.5.2
|
||||
|
@ -61,12 +60,10 @@ importers:
|
|||
'@types/webpack-env': 1.18.0
|
||||
'@typescript-eslint/eslint-plugin': 5.41.0
|
||||
'@typescript-eslint/parser': 5.41.0
|
||||
'@verdaccio/benchmark': workspace:*
|
||||
'@verdaccio/crowdin-translations': workspace:*
|
||||
'@verdaccio/eslint-config': workspace:*
|
||||
'@verdaccio/types': workspace:*
|
||||
'@verdaccio/ui-theme': workspace:*
|
||||
autocannon: 7.10.0
|
||||
babel-core: 7.0.0-bridge.0
|
||||
babel-eslint: 10.1.0
|
||||
babel-jest: 29.3.1
|
||||
|
@ -90,7 +87,6 @@ importers:
|
|||
kleur: 3.0.3
|
||||
lint-staged: 11.2.6
|
||||
nock: 13.2.9
|
||||
node-fetch: cjs
|
||||
nodemon: 2.0.20
|
||||
npm-run-all: 4.1.5
|
||||
prettier: 2.7.1
|
||||
|
@ -135,7 +131,6 @@ importers:
|
|||
'@dianmora/contributors': 5.0.0
|
||||
'@trivago/prettier-plugin-sort-imports': 3.4.0_prettier@2.7.1
|
||||
'@types/async': 3.2.15
|
||||
'@types/autocannon': 4.1.1
|
||||
'@types/express': 4.17.14
|
||||
'@types/http-errors': 1.8.2
|
||||
'@types/jest': 27.5.2
|
||||
|
@ -158,12 +153,10 @@ importers:
|
|||
'@types/webpack-env': 1.18.0
|
||||
'@typescript-eslint/eslint-plugin': 5.41.0_9a6daa3181726e5ec9b358dee313487a
|
||||
'@typescript-eslint/parser': 5.41.0_eslint@8.26.0+typescript@4.9.3
|
||||
'@verdaccio/benchmark': link:packages/tools/benchmark
|
||||
'@verdaccio/crowdin-translations': link:packages/tools/translations
|
||||
'@verdaccio/eslint-config': link:packages/tools/eslint
|
||||
'@verdaccio/types': link:packages/core/types
|
||||
'@verdaccio/ui-theme': link:packages/plugins/ui-theme
|
||||
autocannon: 7.10.0
|
||||
babel-core: 7.0.0-bridge.0_@babel+core@7.20.2
|
||||
babel-eslint: 10.1.0_eslint@8.26.0
|
||||
babel-jest: 29.3.1_@babel+core@7.20.2
|
||||
|
@ -187,7 +180,6 @@ importers:
|
|||
kleur: 3.0.3
|
||||
lint-staged: 11.2.6
|
||||
nock: 13.2.9
|
||||
node-fetch: 2.6.7
|
||||
nodemon: 2.0.20
|
||||
npm-run-all: 4.1.5
|
||||
prettier: 2.7.1
|
||||
|
@ -1132,25 +1124,6 @@ importers:
|
|||
node-mocks-http: 1.12.1
|
||||
undici: 4.16.0
|
||||
|
||||
packages/tools/benchmark:
|
||||
specifiers:
|
||||
autocannon: 7.10.0
|
||||
clipanion: 3.1.0
|
||||
get-port: 5.1.1
|
||||
node-fetch: cjs
|
||||
semver: 7.3.8
|
||||
temp-dir: 2.0.0
|
||||
ts-node: 10.9.1
|
||||
dependencies:
|
||||
clipanion: 3.1.0
|
||||
get-port: 5.1.1
|
||||
semver: 7.3.8
|
||||
temp-dir: 2.0.0
|
||||
devDependencies:
|
||||
autocannon: 7.10.0
|
||||
node-fetch: 2.6.7
|
||||
ts-node: 10.9.1_2d5f4b194f2936366ced789e115d81de
|
||||
|
||||
packages/tools/docusaurus-plugin-contributors:
|
||||
specifiers:
|
||||
'@docusaurus/types': 2.2.0
|
||||
|
@ -1573,10 +1546,6 @@ packages:
|
|||
dependencies:
|
||||
'@jridgewell/trace-mapping': 0.3.15
|
||||
|
||||
/@assemblyscript/loader/0.19.22:
|
||||
resolution: {integrity: sha512-ksrMVpPOatD7ZzXCw+c/g3zId5rm8MMnQe7P32dH/qtDrgT9SbQjJYEngRP0YhRF0qrBCga2PtpID7arqphGyg==}
|
||||
dev: true
|
||||
|
||||
/@babel/cli/7.19.3_@babel+core@7.20.2:
|
||||
resolution: {integrity: sha512-643/TybmaCAe101m2tSVHi9UKpETXP9c/Ff4mD2tAwkdP6esKIfaauZFc67vGEM6r9fekbEGid+sZhbEnSe3dg==}
|
||||
engines: {node: '>=6.9.0'}
|
||||
|
@ -9860,12 +9829,6 @@ packages:
|
|||
resolution: {integrity: sha512-PAmPfzvFA31mRoqZyTVsgJMsvbynR429UTTxhmfsUCrWGh3/fxOrzqBtaTPJsn4UtzTv4Vb0+/O7CARWb69N4g==}
|
||||
dev: true
|
||||
|
||||
/@types/autocannon/4.1.1:
|
||||
resolution: {integrity: sha512-VMwPSP6i6SWrSbF2CrjXy/UTt9dU6oJMwDudUVjoAyUqK6YgK5llES84leqyM324Gr1nhuJhDpenvgYYdWF4gQ==}
|
||||
dependencies:
|
||||
'@types/node': 17.0.21
|
||||
dev: true
|
||||
|
||||
/@types/babel__core/7.1.14:
|
||||
resolution: {integrity: sha512-zGZJzzBUVDo/eV6KgbE0f0ZI7dInEYvo12Rb70uNQDshC3SkRMb67ja0GgRHZgAX3Za6rhaWlvbDO8rrGyAb1g==}
|
||||
dependencies:
|
||||
|
@ -11282,35 +11245,6 @@ packages:
|
|||
resolution: {integrity: sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==}
|
||||
engines: {node: '>=8.0.0'}
|
||||
|
||||
/autocannon/7.10.0:
|
||||
resolution: {integrity: sha512-PY1UrXL4NHE7J0hA6GGN2r8xjiAePS/bii3Hz7NOvp4JO3xDNBgRftDjfAxj1t6FDWXiXEOuKF/pdDiisIS8ZA==}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
chalk: 4.1.2
|
||||
char-spinner: 1.0.1
|
||||
cli-table3: 0.6.2
|
||||
color-support: 1.1.3
|
||||
cross-argv: 2.0.0
|
||||
form-data: 4.0.0
|
||||
has-async-hooks: 1.0.0
|
||||
hdr-histogram-js: 3.0.0
|
||||
hdr-histogram-percentiles-obj: 3.0.0
|
||||
http-parser-js: 0.5.2
|
||||
hyperid: 3.0.0
|
||||
lodash.chunk: 4.2.0
|
||||
lodash.clonedeep: 4.5.0
|
||||
lodash.flatten: 4.4.0
|
||||
manage-path: 2.0.0
|
||||
on-net-listen: 1.1.2
|
||||
pretty-bytes: 5.6.0
|
||||
progress: 2.0.3
|
||||
reinterval: 1.1.0
|
||||
retimer: 3.0.0
|
||||
semver: 7.3.8
|
||||
subarg: 1.0.0
|
||||
timestring: 6.0.0
|
||||
dev: true
|
||||
|
||||
/autoprefixer/10.4.7_postcss@8.4.16:
|
||||
resolution: {integrity: sha512-ypHju4Y2Oav95SipEcCcI5J7CGPuvz8oat7sUtYj3ClK44bldfvtvcxK6IEK++7rqB7YchDGzweZIBG+SD0ZAA==}
|
||||
engines: {node: ^10 || ^12 || >=14}
|
||||
|
@ -12205,10 +12139,6 @@ packages:
|
|||
resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==}
|
||||
engines: {node: '>=10'}
|
||||
|
||||
/char-spinner/1.0.1:
|
||||
resolution: {integrity: sha1-5upnvSR+EHESmDt6sEee02KAAIE=}
|
||||
dev: true
|
||||
|
||||
/character-entities-legacy/1.1.4:
|
||||
resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==}
|
||||
|
||||
|
@ -12488,11 +12418,6 @@ packages:
|
|||
/color-name/1.1.4:
|
||||
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
|
||||
|
||||
/color-support/1.1.3:
|
||||
resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==}
|
||||
hasBin: true
|
||||
dev: true
|
||||
|
||||
/colord/2.9.3:
|
||||
resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==}
|
||||
|
||||
|
@ -12812,10 +12737,6 @@ packages:
|
|||
/create-require/1.1.1:
|
||||
resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==}
|
||||
|
||||
/cross-argv/2.0.0:
|
||||
resolution: {integrity: sha512-YIaY9TR5Nxeb8SMdtrU8asWVM4jqJDNDYlKV21LxtYcfNJhp1kEsgSa6qXwXgzN0WQWGODps0+TlGp2xQSHwOg==}
|
||||
dev: true
|
||||
|
||||
/cross-env/7.0.3:
|
||||
resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==}
|
||||
engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'}
|
||||
|
@ -16318,6 +16239,7 @@ packages:
|
|||
/get-port/5.1.1:
|
||||
resolution: {integrity: sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==}
|
||||
engines: {node: '>=8'}
|
||||
dev: true
|
||||
|
||||
/get-stream/4.1.0:
|
||||
resolution: {integrity: sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==}
|
||||
|
@ -16574,10 +16496,6 @@ packages:
|
|||
ansi-regex: 2.1.1
|
||||
dev: true
|
||||
|
||||
/has-async-hooks/1.0.0:
|
||||
resolution: {integrity: sha512-YF0VPGjkxr7AyyQQNykX8zK4PvtEDsUJAPqwu06UFz1lb6EvI53sPh5H1kWxg8NXI5LsfRCZ8uX9NkYDZBb/mw==}
|
||||
dev: true
|
||||
|
||||
/has-bigints/1.0.2:
|
||||
resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==}
|
||||
|
||||
|
@ -16705,19 +16623,6 @@ packages:
|
|||
property-information: 5.6.0
|
||||
space-separated-tokens: 1.1.5
|
||||
|
||||
/hdr-histogram-js/3.0.0:
|
||||
resolution: {integrity: sha512-/EpvQI2/Z98mNFYEnlqJ8Ogful8OpArLG/6Tf2bPnkutBVLIeMVNHjk1ZDfshF2BUweipzbk+dB1hgSB7SIakw==}
|
||||
engines: {node: '>=14'}
|
||||
dependencies:
|
||||
'@assemblyscript/loader': 0.19.22
|
||||
base64-js: 1.5.1
|
||||
pako: 1.0.11
|
||||
dev: true
|
||||
|
||||
/hdr-histogram-percentiles-obj/3.0.0:
|
||||
resolution: {integrity: sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==}
|
||||
dev: true
|
||||
|
||||
/he/1.2.0:
|
||||
resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
|
||||
hasBin: true
|
||||
|
@ -17065,13 +16970,6 @@ packages:
|
|||
hasBin: true
|
||||
dev: true
|
||||
|
||||
/hyperid/3.0.0:
|
||||
resolution: {integrity: sha512-vwl5ARjv9KGKphUpKrNlCpH6oC3qnlCxz7WRG24h53MvkWGit2Iwbv/H8usILbMohBsaRgs8Ieumgy7+oafuyw==}
|
||||
dependencies:
|
||||
uuid: 8.3.2
|
||||
uuid-parse: 1.1.0
|
||||
dev: true
|
||||
|
||||
/hyphenate-style-name/1.0.4:
|
||||
resolution: {integrity: sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==}
|
||||
|
||||
|
@ -18801,24 +18699,12 @@ packages:
|
|||
resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
|
||||
dev: false
|
||||
|
||||
/lodash.chunk/4.2.0:
|
||||
resolution: {integrity: sha1-ZuXOH3btJ7QwPYxlEujRIW6BBrw=}
|
||||
dev: true
|
||||
|
||||
/lodash.clonedeep/4.5.0:
|
||||
resolution: {integrity: sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=}
|
||||
dev: true
|
||||
|
||||
/lodash.curry/4.1.1:
|
||||
resolution: {integrity: sha1-JI42By7ekGUB11lmIAqG2riyMXA=}
|
||||
|
||||
/lodash.debounce/4.0.8:
|
||||
resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==}
|
||||
|
||||
/lodash.flatten/4.4.0:
|
||||
resolution: {integrity: sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=}
|
||||
dev: true
|
||||
|
||||
/lodash.flow/3.5.0:
|
||||
resolution: {integrity: sha1-h79AKSuM+D5OjOGjrkIJ4gBxZ1o=}
|
||||
|
||||
|
@ -18977,10 +18863,6 @@ packages:
|
|||
dependencies:
|
||||
tmpl: 1.0.5
|
||||
|
||||
/manage-path/2.0.0:
|
||||
resolution: {integrity: sha1-9M+EV7km7u4qg7FzUBQUvHbrlZc=}
|
||||
dev: true
|
||||
|
||||
/map-cache/0.2.2:
|
||||
resolution: {integrity: sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=}
|
||||
engines: {node: '>=0.10.0'}
|
||||
|
@ -20624,11 +20506,6 @@ packages:
|
|||
resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==}
|
||||
engines: {node: '>= 0.8'}
|
||||
|
||||
/on-net-listen/1.1.2:
|
||||
resolution: {integrity: sha512-y1HRYy8s/RlcBvDUwKXSmkODMdx4KSuIvloCnQYJ2LdBBC1asY4HtfhXwe3UWknLakATZDnbzht2Ijw3M1EqFg==}
|
||||
engines: {node: '>=9.4.0 || ^8.9.4'}
|
||||
dev: true
|
||||
|
||||
/once/1.4.0:
|
||||
resolution: {integrity: sha1-WDsap3WWHUsROsF9nFC6753Xa9E=}
|
||||
dependencies:
|
||||
|
@ -20837,10 +20714,6 @@ packages:
|
|||
registry-url: 5.1.0
|
||||
semver: 6.3.0
|
||||
|
||||
/pako/1.0.11:
|
||||
resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==}
|
||||
dev: true
|
||||
|
||||
/param-case/3.0.4:
|
||||
resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==}
|
||||
dependencies:
|
||||
|
@ -22283,11 +22156,6 @@ packages:
|
|||
engines: {node: '>= 0.6.0'}
|
||||
dev: true
|
||||
|
||||
/progress/2.0.3:
|
||||
resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==}
|
||||
engines: {node: '>=0.4.0'}
|
||||
dev: true
|
||||
|
||||
/promise/7.3.1:
|
||||
resolution: {integrity: sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==}
|
||||
dependencies:
|
||||
|
@ -23275,10 +23143,6 @@ packages:
|
|||
dependencies:
|
||||
jsesc: 0.5.0
|
||||
|
||||
/reinterval/1.1.0:
|
||||
resolution: {integrity: sha1-M2Hs+jymwYKDOA3Qu5VG85D17Oc=}
|
||||
dev: true
|
||||
|
||||
/relateurl/0.2.7:
|
||||
resolution: {integrity: sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=}
|
||||
engines: {node: '>= 0.10'}
|
||||
|
@ -23482,10 +23346,6 @@ packages:
|
|||
resolution: {integrity: sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==}
|
||||
engines: {node: '>=4'}
|
||||
|
||||
/retimer/3.0.0:
|
||||
resolution: {integrity: sha512-WKE0j11Pa0ZJI5YIk0nflGI7SQsfl2ljihVy7ogh7DeQSeYAUi0ubZ/yEueGtDfUPk6GH5LRw1hBdLq4IwUBWA==}
|
||||
dev: true
|
||||
|
||||
/retry/0.12.0:
|
||||
resolution: {integrity: sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=}
|
||||
engines: {node: '>= 4'}
|
||||
|
@ -24679,12 +24539,6 @@ packages:
|
|||
/stylis/4.1.3:
|
||||
resolution: {integrity: sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA==}
|
||||
|
||||
/subarg/1.0.0:
|
||||
resolution: {integrity: sha1-9izxdYHplrSPyWVpn1TAauJouNI=}
|
||||
dependencies:
|
||||
minimist: 1.2.6
|
||||
dev: true
|
||||
|
||||
/superagent/8.0.3:
|
||||
resolution: {integrity: sha512-oBC+aNsCjzzjmO5AOPBPFS+Z7HPzlx+DQr/aHwM08kI+R24gsDmAS1LMfza1fK+P+SKlTAoNZpOvooE/pRO1HA==}
|
||||
engines: {node: '>=6.4.0 <13 || >=14'}
|
||||
|
@ -24835,11 +24689,6 @@ packages:
|
|||
yallist: 3.1.1
|
||||
dev: true
|
||||
|
||||
/temp-dir/2.0.0:
|
||||
resolution: {integrity: sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==}
|
||||
engines: {node: '>=8'}
|
||||
dev: false
|
||||
|
||||
/term-size/2.2.1:
|
||||
resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==}
|
||||
engines: {node: '>=8'}
|
||||
|
@ -25023,11 +24872,6 @@ packages:
|
|||
/thunky/1.1.0:
|
||||
resolution: {integrity: sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==}
|
||||
|
||||
/timestring/6.0.0:
|
||||
resolution: {integrity: sha512-wMctrWD2HZZLuIlchlkE2dfXJh7J2KDI9Dwl+2abPYg0mswQHfOAyQW3jJg1pY5VfttSINZuKcXoB3FGypVklA==}
|
||||
engines: {node: '>=8'}
|
||||
dev: true
|
||||
|
||||
/tiny-invariant/1.1.0:
|
||||
resolution: {integrity: sha512-ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw==}
|
||||
|
||||
|
@ -25885,10 +25729,6 @@ packages:
|
|||
resolution: {integrity: sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=}
|
||||
engines: {node: '>= 0.4.0'}
|
||||
|
||||
/uuid-parse/1.1.0:
|
||||
resolution: {integrity: sha512-OdmXxA8rDsQ7YpNVbKSJkNzTw2I+S5WsbMDnCtIWSQaosNAcWtFuI/YK1TjzUI6nbkgiqEyh8gWngfcv8Asd9A==}
|
||||
dev: true
|
||||
|
||||
/uuid/3.4.0:
|
||||
resolution: {integrity: sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==}
|
||||
deprecated: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
|
||||
|
|
|
@ -118,7 +118,6 @@
|
|||
"react*",
|
||||
"ts-node",
|
||||
"mini-css*",
|
||||
"autocannon",
|
||||
"process-warning",
|
||||
"fastify",
|
||||
"core-js",
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
VERSION=$1
|
||||
|
||||
tmp_registry_log=`mktemp`
|
||||
|
||||
npm i -g verdaccio@$VERSION
|
||||
# start in the background the registry
|
||||
nohup verdaccio &>$tmp_registry_log &
|
||||
# wait until has started (using stdout)
|
||||
grep -q 'http address' <(tail -f $tmp_registry_log)
|
||||
npm set registry http://localhost:4873
|
|
@ -1,20 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
FIXTURE=$1
|
||||
|
||||
case $FIXTURE in
|
||||
info)
|
||||
FIXTURE='npm info jquery'
|
||||
;;
|
||||
tarball)
|
||||
FIXTURE='npm install jquery'
|
||||
;;
|
||||
*)
|
||||
echo "no command found"
|
||||
return 1;;
|
||||
esac
|
||||
|
||||
hyperfine --ignore-failure --warmup 1 --min-runs=10 --show-output --export-json './hyper-results.json' "$FIXTURE"
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
/**
|
||||
* CI - Script used on automation GitHub Actions to
|
||||
* submit metrics to a third party database.
|
||||
*/
|
||||
const url = process.env.METRICS_URL;
|
||||
const token = process.env.METRICS_TOKEN;
|
||||
const version = process.env.METRICS_VERSION;
|
||||
const benchmark = process.env.METRICS_BENCHMARK;
|
||||
const source = process.env.METRICS_SOURCE;
|
||||
const commit = process.env.METRICS_COMMIT_HASH;
|
||||
const file = process.env.METRICS_FILE_NAME ?? 'hyper-results';
|
||||
|
||||
if (!url || !token || !version || !benchmark || !commit || !file) {
|
||||
throw new TypeError('required missing params, check parameters are available');
|
||||
}
|
||||
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const debug = require('debug')('metrics');
|
||||
const nodeFetch = require('node-fetch');
|
||||
const fileMetrics = `${file}-${version}-${benchmark}.json`;
|
||||
// file should be avilable on the root of the project
|
||||
const filePath = path.join(__dirname, '../', fileMetrics);
|
||||
debug('file path %o', filePath);
|
||||
|
||||
try {
|
||||
const fileContent = JSON.parse(fs.readFileSync(filePath, 'utf-8'));
|
||||
debug('body %o', fileContent.results[0]);
|
||||
nodeFetch(url, {
|
||||
method: 'POST',
|
||||
body: JSON.stringify(fileContent.results[0]),
|
||||
headers: {
|
||||
Authorization: `Bearer ${token}`,
|
||||
'content-type': 'application/json',
|
||||
'x-metrics-version': version,
|
||||
'x-metrics-source': source,
|
||||
'x-metrics-benchmark': benchmark,
|
||||
'x-metrics-commit-hash': commit,
|
||||
},
|
||||
})
|
||||
.then((res: any) => res.text()) // expecting a json response
|
||||
.then((json: any) => {
|
||||
debug('response %o', json);
|
||||
});
|
||||
} catch (error) {
|
||||
// eslint-disable-next-line no-console
|
||||
console.error('error on process metrics', error);
|
||||
process.exit(1);
|
||||
}
|
Loading…
Reference in a new issue