{"_id":"vesta","_rev":"118-c05a21c371be4cf188a54584cfa1a6d4","time":{"modified":"2023-11-22T20:00:01.274Z","created":"2023-02-18T23:57:41.060Z","0.1.0":"2015-12-27T09:40:21.716Z","0.2.0":"2016-04-07T11:39:33.204Z","0.2.1":"2016-04-07T11:52:12.188Z","0.5.1":"2016-04-08T12:50:39.869Z","0.5.3":"2016-04-09T08:04:29.868Z","0.5.4":"2016-04-11T09:53:46.020Z","0.5.5":"2016-04-11T11:53:55.647Z","0.5.7":"2016-04-18T13:54:29.046Z","0.5.8":"2016-04-18T13:58:37.348Z","0.5.9":"2016-04-19T07:26:30.489Z","0.5.10":"2016-04-24T05:41:16.704Z","0.5.11":"2016-04-27T10:08:26.578Z","0.5.12":"2016-04-27T10:53:16.019Z","0.5.13":"2016-04-30T10:57:40.492Z","0.5.14":"2016-04-30T13:00:32.390Z","0.5.15":"2016-05-03T13:51:58.115Z","0.5.17":"2016-05-07T11:37:08.242Z","0.5.18":"2016-05-08T08:27:43.483Z","0.5.19":"2016-05-11T09:14:14.140Z","0.5.20":"2016-05-11T09:48:26.622Z","0.5.21":"2016-05-11T11:51:18.114Z","0.5.22":"2016-05-11T12:20:48.203Z","0.5.23":"2016-05-11T13:00:32.054Z","0.5.24":"2016-05-11T13:03:56.477Z","0.5.25":"2016-05-11T13:10:27.448Z","0.5.26":"2016-05-11T13:47:17.442Z","0.5.27":"2016-05-11T14:38:53.945Z","0.5.28":"2016-05-11T14:39:58.892Z","0.5.29":"2016-05-12T06:52:23.534Z","0.5.30":"2016-05-25T07:29:19.132Z","0.5.31":"2016-05-25T08:28:12.923Z","0.5.32":"2016-05-25T08:47:28.456Z","0.6.1":"2016-05-25T12:28:42.936Z","0.6.2":"2016-05-26T14:00:40.705Z","0.6.3":"2016-06-11T13:51:00.803Z","0.6.4":"2016-06-13T10:34:03.975Z","0.6.5":"2016-06-18T07:58:37.311Z","0.6.6":"2016-06-18T08:00:43.192Z","0.6.7":"2016-06-18T08:02:28.461Z","0.6.8":"2016-06-26T11:59:19.580Z","0.6.9":"2016-06-26T15:23:11.023Z","0.6.10":"2016-07-03T15:07:02.774Z","0.7.1":"2016-07-19T08:39:00.254Z","0.7.2":"2016-07-19T11:58:41.147Z","0.7.3":"2016-07-19T12:11:14.333Z","0.7.4":"2016-07-27T12:41:23.296Z","0.7.5":"2016-07-28T14:44:18.992Z","0.8.0":"2016-08-20T11:40:01.878Z","0.8.1":"2016-08-24T14:50:42.890Z","0.8.2":"2016-08-25T08:32:53.731Z","0.8.2-beta.1":"2016-08-28T11:05:57.278Z","0.8.2-beta.2":"2016-10-18T14:27:00.513Z","0.8.2-beta.3":"2016-10-18T15:00:40.216Z","0.8.2-beta.5":"2016-12-11T08:27:14.443Z","0.2.0-alpha.1":"2017-05-15T15:16:04.352Z","2.0.0-alpha.1":"2017-05-15T15:16:58.186Z","2.0.0-alpha.2":"2017-05-20T09:50:40.191Z","2.1.1":"2017-05-31T13:46:04.433Z","2.1.2":"2017-06-01T06:34:10.077Z","2.1.3":"2017-06-04T21:54:03.391Z","2.1.4":"2017-06-06T04:21:30.741Z","2.1.5":"2017-06-07T06:24:54.270Z","2.1.6":"2017-06-10T09:02:15.950Z","2.1.7":"2017-07-11T06:37:06.037Z","2.1.8":"2017-08-10T07:24:49.317Z","2.1.9":"2017-08-30T05:40:05.649Z","2.2.0":"2017-09-08T08:33:19.327Z","2.2.1":"2017-09-10T03:06:26.852Z","2.3.1":"2017-10-04T09:44:45.134Z","2.3.2":"2017-10-11T05:30:47.038Z","2.3.4":"2017-10-11T08:16:37.267Z","2.3.5":"2017-10-11T13:34:57.380Z","2.3.6":"2017-10-14T06:11:00.658Z","2.3.7":"2017-10-14T14:24:31.832Z","2.3.8":"2017-10-15T06:16:30.952Z","2.3.9":"2017-10-19T06:09:09.367Z","2.3.10":"2017-10-21T06:28:06.312Z","2.4.0":"2017-10-25T05:53:55.880Z","2.4.1":"2017-10-25T08:24:07.669Z","2.5.0":"2017-10-29T09:23:06.773Z","2.5.1":"2017-10-29T15:37:28.850Z","2.5.2":"2017-11-01T11:03:38.024Z","2.5.3":"2017-11-02T05:19:22.128Z","2.5.4":"2017-12-09T06:44:36.801Z","2.5.5":"2017-12-10T09:16:47.572Z","2.5.6":"2017-12-13T15:40:54.019Z","2.5.7":"2018-01-23T20:07:38.846Z","2.5.8":"2018-01-26T12:19:43.411Z","2.5.9":"2018-01-27T14:50:28.365Z","2.5.10":"2018-04-08T04:20:41.082Z","2.5.11":"2018-05-04T12:26:33.399Z","2.6.0":"2018-07-21T17:32:25.896Z","2.6.1":"2018-12-30T13:30:14.619Z","2.6.2":"2019-01-02T05:43:41.907Z","2.6.3":"2019-01-28T17:03:33.097Z","2.6.4":"2019-03-01T09:28:05.877Z","2.6.5":"2019-03-01T18:40:00.891Z","2.6.6":"2019-03-08T06:43:49.742Z","2.7.0":"2020-01-27T09:27:30.862Z","2.7.1":"2020-01-31T09:24:20.699Z","2.7.2":"2020-01-31T13:57:10.935Z","2.7.3":"2020-02-25T14:02:45.514Z","2.7.4":"2020-03-10T13:44:48.067Z","2.7.5":"2020-03-16T20:59:09.950Z","1.0.0":"2023-02-18T23:57:41.261Z","1.0.1":"2023-02-24T16:41:16.577Z","1.1.0":"2023-11-21T20:20:03.516Z","1.2.0":"2023-11-22T20:00:01.074Z"},"name":"vesta","dist-tags":{"latest":"1.2.0"},"versions":{"1.0.0":{"name":"vesta","version":"1.0.0","description":"boilerplate for creating npm packages","main":"./lib","scripts":{"prepare":"babel src --out-dir ./lib --copy-files && husky install","coveralls":"cat ./reports/coverage/lcov.info | coveralls","test:security":"npm audit --production && npm run test:lock","test:lint":"eslint src bin tests --no-error-on-unmatched-pattern","test:mocha":"mocha --config .mocharc.json 'tests/**/*test.js'","test:package":"npt test -c .package-tester.json","test:coverage":"BUILD=0 MODE=test nyc mocha --config .mocharc.json 'tests/**/*test.js'","test:debt":"jscpd src --config .jscpd.json","test:lock":"lockfile-lint --path package-lock.json --validate-https --allowed-hosts npm","coverage-check":"MODE=test nyc check-coverage","test":"npm run test:lint && npm run test:security && BUILD=1 npm run test:mocha","sort-deps":"npm remove --save example; npm remove --save-dev example","semantic-release":"npx semantic-release"},"repository":{"type":"git","url":"git+https://github.com/pustovitDmytro/vesta.git"},"author":{"name":"Dmytro Pustovit"},"license":"MIT","bugs":{"url":"https://github.com/pustovitDmytro/vesta/issues"},"engines":{"node":">=10.7"},"homepage":"https://github.com/pustovitDmytro/vesta#readme","devDependencies":{"@babel/cli":"^7.19.3","@babel/core":"^7.20.5","@babel/node":"^7.20.5","@babel/plugin-proposal-class-properties":"^7.18.6","@babel/plugin-proposal-decorators":"^7.20.5","@babel/plugin-proposal-object-rest-spread":"^7.20.2","@babel/plugin-proposal-optional-chaining":"^7.18.9","@babel/polyfill":"^7.12.1","@babel/preset-env":"^7.20.2","@babel/runtime":"^7.20.6","@commitlint/cli":"^17.3.0","@commitlint/lint":"^17.3.0","@semantic-release/changelog":"^6.0.2","@semantic-release/git":"^10.0.1","babel-plugin-module-resolver":"^4.1.0","chai":"^4.3.7","chance":"^1.1.9","conventional-changelog-eslint":"^3.0.9","coveralls":"^3.1.1","danger":"^11.2.0","eslint":"^8.30.0","eslint-config-incredible":"^2.4.2","eslint-plugin-censor":"^1.5.2","eslint-plugin-import":"^2.26.0","eslint-plugin-markdown":"^3.0.0","eslint-plugin-mocha":"^10.1.0","eslint-plugin-no-secrets":"^0.8.9","eslint-plugin-node":"^11.1.0","eslint-plugin-promise":"^6.1.1","eslint-plugin-regexp":"^1.11.0","eslint-plugin-scanjs-rules":"^0.2.1","eslint-plugin-security":"^1.5.0","eslint-plugin-sonarjs":"^0.17.0","eslint-plugin-unicorn":"^42.0.0","fs-extra":"^11.1.0","husky":"^8.0.2","jscpd":"^3.5.3","lockfile-lint":"^4.9.6","mocha":"^10.2.0","mocha-junit-reporter":"^2.2.0","node-package-tester":"^1.3.6","nyc":"^15.1.0","semantic-release":"^19.0.5","semantic-release-telegram":"^1.6.0","uuid":"^9.0.0"},"dependencies":{"myrmidon":"1.8.0"},"gitHead":"7441c0bcd53147317943fd991577cbe18b926296","_id":"vesta@1.0.0","_nodeVersion":"14.18.2","_npmVersion":"8.19.3","dist":{"integrity":"sha512-uwT5AVV0cW41OqpKUs5y855tlJGPCjh8YctjKYs3zkzMarf9w5+QIuVcVJ4dNWiq3NKZois2FWkbVbQMsU9FUA==","shasum":"9f3c1db4c0ea3d47d1749d789dfb73836ff75027","tarball":"https://registry.npmjs.org/vesta/-/vesta-1.0.0.tgz","fileCount":13,"unpackedSize":47090,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCZdIk/F9I/71K2eeUaCQEhExJX3ENBfQ9d4HGm3R6jVAIgf+Ie3Zp3q8BxRSyYXr/FuN6XyaAO/yLzs/LF1OLDdeo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj8WX1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqD9w/+OxZuPYYjBrNOPOhpWF3ZqqbLLRMBwJDYupzcpABk0HiqLTWU\r\npJbT5GH3EUFqUmfzlBDp2upbTUm0eeBrsXapeqJlG/VBfVKoJfYNb81h+psH\r\n7XuqS9HbRWEwA4d93lhNzAp1lVWG/gipLjplgGHy0QY9Jw6D+Oy0VF8EAg1U\r\nYaWl9qnQ2V2JrC725s77pDd2IbLXgnpdHgthOkA9i3V/yEx28XmWUSphEVV4\r\nT/q8TdWLiHD8sRPaGyCF9QvynwaftbgQBHBnQsZdioCVLcqacKAqzkzmP90O\r\nZuPWVNS0uQj4BhyHk6rzXZ7Y98BJxlZ8HZOBq3vW3b8zI1fcEZbqZ2QDSH9w\r\nhKAssFxyDX7y5WNlnJCgzzZfMdvT+6shbG9Tjr764Plbqo7Pm/hSVxm8NrPY\r\nRbtYCFKbZO8LgVXpgwuhiH2a6ilwqg60t+MuaKcKL4afxIi1PKK/DcA0ZedO\r\nal7vgDlkOLRDHTvGrfXUVCNUFGpo+1qnmEVDAbTtPYrW6COj/jcP2QkqioHv\r\nlszw86BKUYXW6j2BUldzk9qCqZt9FAWivFY3zEbOYzVg53NZCKyUx50P0oPg\r\n9KQLL2YwTnGldAtxV6tX07ocxzHjiCLpi2x5DKFo+J23KZYBCMUwvhsQFe/a\r\n28Oobdgim/ECid6Io9+xt2w2226TTsTpzcY=\r\n=0xJC\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"pustovit","email":"pustic@gmail.com"},"directories":{},"maintainers":[{"name":"pustovit","email":"pustic@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vesta_1.0.0_1676764661061_0.9919687611299295"},"_hasShrinkwrap":false},"1.0.1":{"name":"vesta","version":"1.0.1","description":"Simplify time measurements","main":"./lib","keywords":["benchmark","time","performance","clock","timer","time-measurement","debug"],"scripts":{"prepare":"babel src --out-dir ./lib --copy-files && husky install","coveralls":"cat ./reports/coverage/lcov.info | coveralls","test:security":"npm audit --production && npm run test:lock","test:lint":"eslint src bin tests --no-error-on-unmatched-pattern","test:mocha":"mocha --config .mocharc.json 'tests/**/*test.js'","test:package":"npt test -c .package-tester.json","test:coverage":"BUILD=0 MODE=test nyc mocha --config .mocharc.json 'tests/**/*test.js'","test:debt":"jscpd src --config .jscpd.json","test:lock":"lockfile-lint --path package-lock.json --validate-https --allowed-hosts npm","coverage-check":"MODE=test nyc check-coverage","test":"npm run test:lint && npm run test:security && BUILD=1 npm run test:mocha","sort-deps":"npm remove --save example; npm remove --save-dev example","semantic-release":"npx semantic-release"},"repository":{"type":"git","url":"git+https://github.com/pustovitDmytro/vesta.git"},"author":{"name":"Dmytro Pustovit"},"license":"MIT","bugs":{"url":"https://github.com/pustovitDmytro/vesta/issues"},"engines":{"node":">=10.7"},"homepage":"https://github.com/pustovitDmytro/vesta#readme","devDependencies":{"@babel/cli":"^7.19.3","@babel/core":"^7.20.5","@babel/node":"^7.20.5","@babel/plugin-proposal-class-properties":"^7.18.6","@babel/plugin-proposal-decorators":"^7.20.5","@babel/plugin-proposal-object-rest-spread":"^7.20.2","@babel/plugin-proposal-optional-chaining":"^7.18.9","@babel/polyfill":"^7.12.1","@babel/preset-env":"^7.20.2","@babel/runtime":"^7.20.6","@commitlint/cli":"^17.3.0","@commitlint/lint":"^17.3.0","@semantic-release/changelog":"^6.0.2","@semantic-release/git":"^10.0.1","babel-plugin-module-resolver":"^4.1.0","chai":"^4.3.7","chance":"^1.1.9","conventional-changelog-eslint":"^3.0.9","coveralls":"^3.1.1","danger":"^11.2.0","eslint":"^8.30.0","eslint-config-incredible":"^2.4.2","eslint-plugin-censor":"^1.5.2","eslint-plugin-import":"^2.26.0","eslint-plugin-markdown":"^3.0.0","eslint-plugin-mocha":"^10.1.0","eslint-plugin-no-secrets":"^0.8.9","eslint-plugin-node":"^11.1.0","eslint-plugin-promise":"^6.1.1","eslint-plugin-regexp":"^1.11.0","eslint-plugin-scanjs-rules":"^0.2.1","eslint-plugin-security":"^1.5.0","eslint-plugin-sonarjs":"^0.17.0","eslint-plugin-unicorn":"^42.0.0","fs-extra":"^11.1.0","husky":"^8.0.2","jscpd":"^3.5.3","lockfile-lint":"^4.9.6","mocha":"^10.2.0","mocha-junit-reporter":"^2.2.0","node-package-tester":"^1.3.6","nyc":"^15.1.0","semantic-release":"^19.0.5","semantic-release-telegram":"^1.6.0","uuid":"^9.0.0"},"dependencies":{"myrmidon":"1.8.0"},"gitHead":"0feaa283fd8a4f31de79b9c1e5c578c07be85736","_id":"vesta@1.0.1","_nodeVersion":"14.18.2","_npmVersion":"8.19.3","dist":{"integrity":"sha512-0pBCpMBdkK+TPpLQTZqaSa3VNADuFXSFWy5SuKRStsmBmEJnGepS5km91qxtogpCMS1cPHG8N3mjqr3qnEPBTg==","shasum":"fda20f14df0f8198b4090f9b21b973f9cce8f25c","tarball":"https://registry.npmjs.org/vesta/-/vesta-1.0.1.tgz","fileCount":13,"unpackedSize":48466,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID6ZEQu5f3lEOe+RgX+ccl0MPES6FN6ukIq4BCwXRVObAiBPhIQHobU4DbAWVGGkhfwJdONRPlOGxQEZKzEyBzCzQw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj+OisACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpYkw/8Cy6rpOsBvQRyI5IYPtzvcivSSDHMQTP9ZGvXUtNX4QdEqQdt\r\nWkKb+uOv/p6Q1Hk6Fbxyt19FNAXxbGlsP2/1Dtafx9PVKebbinmHvMUY4lvA\r\nIl1QbZ2paXyV6u5mmYFnkBhQS05c98Il7Eb1pfk4mxRNIOG6gFXe92gaEdLa\r\nmr4wJtyRr/rIAPHxi+42IDUoVRiMv8ZLrWkTv0ard/ZlpbSfQPEp4uBiMEXv\r\nJb9uXaoSKHmVagYifm0DhauqGtWBO3mhgVkQ1aY1M214Q4TbZeutg6nk+POu\r\nuVnK9gWhqE6PpRCifSKfM7td5g+hiSUVRF0BNCCVziRpVZSEb+ibK3U1y8pe\r\nMi6q8mSVy7AGxXyG/tq7pp0copZhr0lbE6ReW/Zg97DhRs6GLqJIdmYyy2v3\r\nYvcO607Q2wkHEY3VoJfpC8VP//dzwnz4HV6LFNeOKv6OY3/cY00/lTPsfLfr\r\nT2+cCx8k6VmF74DLLGAD1cUARXadfGUtAqNGPoDhZvhUJuUQrrJcGmrJFerr\r\nUQZ0vsLqQ/gbQfIWfdLIw1ws63tqZKo2uYGRe0qWteA7CysNZsZz8symdL3R\r\n0MTj+LH+uyWjoFKmiufP4pMJU3RsCRxK0ttRaKIrqecnkS8830bWHT4UsyzN\r\nAhY/eH0042q9Xvg6TQ5DL/VcS6kXK2OKo2Q=\r\n=ePS/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"pustovit","email":"pustic@gmail.com"},"directories":{},"maintainers":[{"name":"pustovit","email":"pustic@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vesta_1.0.1_1677256876417_0.7612326953946189"},"_hasShrinkwrap":false},"1.1.0":{"name":"vesta","version":"1.1.0","description":"Simplify time measurements","main":"./lib","keywords":["benchmark","time","performance","clock","timer","time-measurement","debug"],"scripts":{"prepare":"babel src --out-dir ./lib --copy-files && husky install","coveralls":"cat ./reports/coverage/lcov.info | coveralls","test:security":"npm audit --production && npm run test:lock","test:lint":"eslint src bin tests --no-error-on-unmatched-pattern","test:mocha":"mocha --config .mocharc.json 'tests/**/*test.js'","test:package":"npt test -c .package-tester.json","test:coverage":"BUILD=0 MODE=test nyc mocha --config .mocharc.json 'tests/**/*test.js'","test:debt":"jscpd src --config .jscpd.json","test:lock":"lockfile-lint --path package-lock.json --validate-https --allowed-hosts npm","coverage-check":"MODE=test nyc check-coverage","test":"npm run test:lint && npm run test:security && BUILD=1 npm run test:mocha","sort-deps":"npm remove --save example; npm remove --save-dev example","semantic-release":"npx semantic-release"},"repository":{"type":"git","url":"git+https://github.com/pustovitDmytro/vesta.git"},"author":{"name":"Dmytro Pustovit"},"license":"MIT","bugs":{"url":"https://github.com/pustovitDmytro/vesta/issues"},"engines":{"node":">=10.7"},"homepage":"https://github.com/pustovitDmytro/vesta#readme","devDependencies":{"@babel/cli":"^7.19.3","@babel/core":"^7.20.5","@babel/node":"^7.20.5","@babel/plugin-proposal-class-properties":"^7.18.6","@babel/plugin-proposal-decorators":"^7.20.5","@babel/plugin-proposal-object-rest-spread":"^7.20.2","@babel/plugin-proposal-optional-chaining":"^7.18.9","@babel/polyfill":"^7.12.1","@babel/preset-env":"^7.20.2","@babel/runtime":"^7.20.6","@commitlint/cli":"^17.3.0","@commitlint/lint":"^17.3.0","@semantic-release/changelog":"^6.0.2","@semantic-release/git":"^10.0.1","babel-plugin-module-resolver":"^4.1.0","chai":"^4.3.7","chance":"^1.1.9","conventional-changelog-eslint":"^3.0.9","coveralls":"^3.1.1","danger":"^11.2.0","eslint":"^8.30.0","eslint-config-incredible":"^2.4.2","eslint-plugin-censor":"^1.5.2","eslint-plugin-import":"^2.26.0","eslint-plugin-markdown":"^3.0.0","eslint-plugin-mocha":"^10.1.0","eslint-plugin-no-secrets":"^0.8.9","eslint-plugin-node":"^11.1.0","eslint-plugin-promise":"^6.1.1","eslint-plugin-regexp":"^1.11.0","eslint-plugin-scanjs-rules":"^0.2.1","eslint-plugin-security":"^1.5.0","eslint-plugin-sonarjs":"^0.17.0","eslint-plugin-unicorn":"^42.0.0","fs-extra":"^11.1.0","husky":"^8.0.2","jscpd":"^3.5.3","lockfile-lint":"^4.9.6","mocha":"^10.2.0","mocha-junit-reporter":"^2.2.0","node-package-tester":"^1.3.6","nyc":"^15.1.0","semantic-release":"^19.0.5","semantic-release-telegram":"^1.6.0","uuid":"^9.0.0"},"dependencies":{"myrmidon":"1.8.0"},"gitHead":"9423cef0322f2c98a7811ad9197370ca27399025","_id":"vesta@1.1.0","_nodeVersion":"14.18.2","_npmVersion":"8.19.3","dist":{"integrity":"sha512-mPdztH1oksI1rRUI2ddSBIJnnG2B+LZfQn4rWwzUnqxz2Q+tNuTHNKVPoi6HjvIXBj2qhilXrsft6oe6MgJX/w==","shasum":"1ce977d0bf2cbf81df2801900863bfc0c0f170e5","tarball":"https://registry.npmjs.org/vesta/-/vesta-1.1.0.tgz","fileCount":17,"unpackedSize":54664,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDbJeRZ82GslAi83wUfKXwpC4EOrweNH1hpk/WQr4oI7QIgIveQJ5Vs9QXiou/mwA6bzPbtGlJVJj92x03jPku8VQw="}]},"_npmUser":{"name":"pustovit","email":"pustic@gmail.com"},"directories":{},"maintainers":[{"name":"pustovit","email":"pustic@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vesta_1.1.0_1700598003350_0.5596363509883056"},"_hasShrinkwrap":false},"1.2.0":{"name":"vesta","version":"1.2.0","description":"Simplify time measurements","main":"./lib","keywords":["benchmark","time","performance","clock","timer","time-measurement","debug"],"scripts":{"prepare":"babel src --out-dir ./lib --copy-files && husky install","coveralls":"cat ./reports/coverage/lcov.info | coveralls","test:security":"npm audit --production && npm run test:lock","test:lint":"eslint src bin tests --no-error-on-unmatched-pattern","test:mocha":"mocha --config .mocharc.json 'tests/**/*test.js'","test:package":"npt test -c .package-tester.json","test:coverage":"BUILD=0 MODE=test nyc mocha --config .mocharc.json 'tests/**/*test.js'","test:debt":"jscpd src --config .jscpd.json","test:lock":"lockfile-lint --path package-lock.json --validate-https --allowed-hosts npm","coverage-check":"MODE=test nyc check-coverage","test":"npm run test:lint && npm run test:security && BUILD=1 npm run test:mocha","sort-deps":"npm remove --save example; npm remove --save-dev example","semantic-release":"npx semantic-release"},"repository":{"type":"git","url":"git+https://github.com/pustovitDmytro/vesta.git"},"author":{"name":"Dmytro Pustovit"},"license":"MIT","bugs":{"url":"https://github.com/pustovitDmytro/vesta/issues"},"engines":{"node":">=10.7"},"homepage":"https://github.com/pustovitDmytro/vesta#readme","devDependencies":{"@babel/cli":"^7.19.3","@babel/core":"^7.20.5","@babel/node":"^7.20.5","@babel/plugin-proposal-class-properties":"^7.18.6","@babel/plugin-proposal-decorators":"^7.20.5","@babel/plugin-proposal-object-rest-spread":"^7.20.2","@babel/plugin-proposal-optional-chaining":"^7.18.9","@babel/polyfill":"^7.12.1","@babel/preset-env":"^7.20.2","@babel/runtime":"^7.20.6","@commitlint/cli":"^17.3.0","@commitlint/lint":"^17.3.0","@semantic-release/changelog":"^6.0.2","@semantic-release/git":"^10.0.1","babel-plugin-module-resolver":"^4.1.0","chai":"^4.3.7","chance":"^1.1.9","conventional-changelog-eslint":"^3.0.9","coveralls":"^3.1.1","danger":"^11.2.0","eslint":"^8.30.0","eslint-config-incredible":"^2.4.2","eslint-plugin-censor":"^1.5.2","eslint-plugin-import":"^2.26.0","eslint-plugin-markdown":"^3.0.0","eslint-plugin-mocha":"^10.1.0","eslint-plugin-no-secrets":"^0.8.9","eslint-plugin-node":"^11.1.0","eslint-plugin-promise":"^6.1.1","eslint-plugin-regexp":"^1.11.0","eslint-plugin-scanjs-rules":"^0.2.1","eslint-plugin-security":"^1.5.0","eslint-plugin-sonarjs":"^0.17.0","eslint-plugin-unicorn":"^42.0.0","fs-extra":"^11.1.0","husky":"^8.0.2","jscpd":"^3.5.3","lockfile-lint":"^4.9.6","mocha":"^10.2.0","mocha-junit-reporter":"^2.2.0","node-package-tester":"^1.3.6","nyc":"^15.1.0","semantic-release":"^19.0.5","semantic-release-telegram":"^1.6.0","uuid":"^9.0.0"},"dependencies":{"myrmidon":"^1.9.0"},"gitHead":"11a2f93075f03f9c6866921bf264573a5d194fbe","_id":"vesta@1.2.0","_nodeVersion":"14.18.2","_npmVersion":"8.19.3","dist":{"integrity":"sha512-7Y+mlwniJs7rVKJvXFCsot9u0C1FNxWFsgCRLmyW2mnPQb4TxXEfn7JltnBXeLfOUXZsP6FMgN2vD9XAAoH7fA==","shasum":"f47fc4833fd6da6a613780eacd3f48442811d064","tarball":"https://registry.npmjs.org/vesta/-/vesta-1.2.0.tgz","fileCount":18,"unpackedSize":59276,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFpaFEHQYN3/ERb6j6eHjTUVqawxiiczNHAi+1gou3g9AiEAluP5tNQM/hxPui37XOa19wL6UboHpIL8jsJL/ClROe8="}]},"_npmUser":{"name":"pustovit","email":"pustic@gmail.com"},"directories":{},"maintainers":[{"name":"pustovit","email":"pustic@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vesta_1.2.0_1700683200899_0.6302269593650036"},"_hasShrinkwrap":false}},"maintainers":[{"name":"pustovit","email":"pustic@gmail.com"}],"description":"Simplify time measurements","homepage":"https://github.com/pustovitDmytro/vesta#readme","repository":{"type":"git","url":"git+https://github.com/pustovitDmytro/vesta.git"},"author":{"name":"Dmytro Pustovit"},"bugs":{"url":"https://github.com/pustovitDmytro/vesta/issues"},"license":"MIT","readme":"![Logo](.docs/logo_250.png \"vesta\")\r\n# vesta\r\nSimplify time measurements.\r\n\r\n[![Version][badge-vers]][npm]\r\n[![Bundle size][npm-size-badge]][npm-size-url]\r\n[![Downloads][npm-downloads-badge]][npm]\r\n\r\n[![CodeFactor][codefactor-badge]][codefactor-url]\r\n[![SonarCloud][sonarcloud-badge]][sonarcloud-url]\r\n[![Codacy][codacy-badge]][codacy-url]\r\n[![Scrutinizer][scrutinizer-badge]][scrutinizer-url]\r\n\r\n[![Dependencies][badge-deps]][npm]\r\n[![Security][snyk-badge]][snyk-url]\r\n[![Build Status][tests-badge]][tests-url]\r\n[![Coverage Status][badge-coverage]][url-coverage]\r\n\r\n[![Commit activity][commit-activity-badge]][github]\r\n[![FOSSA][fossa-badge]][fossa-url]\r\n[![License][badge-lic]][github]\r\n[![Made in Ukraine][ukr-badge]][ukr-link]\r\n\r\n## 🇺🇦 Help Ukraine\r\nI woke up on my 26th birthday at 5 am from the blows of russian missiles. They attacked the city of Kyiv, where I live, as well as the cities in which my family and friends live. Now my country is a war zone. \r\n\r\nWe fight for democratic values, freedom, for our future! Once again Ukrainians have to stand against evil, terror, against genocide. The outcome of this war will determine what path human history is taking from now on.\r\n\r\n💛💙  Help Ukraine! We need your support! There are [dozen ways][ukr-link] to help us, just do it!\r\n\r\n## Table of Contents\r\n- [vesta](#vesta)\r\n  - [🇺🇦 Help Ukraine](#-help-ukraine)\r\n  - [Table of Contents](#table-of-contents)\r\n  - [Requirements](#requirements)\r\n  - [Installation](#installation)\r\n  - [Usage](#usage)\r\n    - [Minimal Configuration](#minimal-configuration)\r\n    - [Sequences](#sequences)\r\n    - [Timers](#timers)\r\n    - [Reports](#reports)\r\n    - [Customization](#customization)\r\n      - [Custom mertics](#custom-mertics)\r\n    - [Memory](#memory)\r\n  - [Contribute](#contribute)\r\n\r\n## Requirements\r\n[![Platform Status][node-ver-test-badge]][node-ver-test-url]\r\n\r\nTo use library you need to have [node](https://nodejs.org) and [npm](https://www.npmjs.com) installed in your machine:\r\n\r\n* node `>=10`\r\n* npm `>=6`\r\n\r\nPackage is [continuously tested][node-ver-test-url] on darwin, linux and win32 platforms. All active and maintenance [LTS](https://nodejs.org/en/about/releases/) node releases are supported.\r\n\r\n## Installation\r\n\r\nTo install the library run the following command\r\n\r\n```bash\r\n  npm i --save vesta\r\n```\r\n\r\n## Usage\r\n\r\n\r\n### Minimal Configuration\r\n```javascript\r\nimport BenchMark from 'vesta';\r\n\r\nconst bench = new BenchMark();\r\n\r\nawait Promise.all([ 10, 20, 30, 40, 50, 60 ].map(async i => {\r\n    const bi = bench.start('pause');\r\n\r\n    await pause(i);\r\n    bench.end(bi);\r\n}));\r\n\r\nconsole.log(bench.report());\r\n// ------------------------\r\n// Label: pause\r\n// Total: 6\r\n// Mean: 35.166666666666664\r\n// Q25: 22.75\r\n// Q75: 47.5\r\n\r\n```\r\n\r\n### Sequences\r\n\r\nin case of consecutive measurements use next api:\r\n\r\n```javascript\r\nimport BenchMark, { JSONReporter } from 'vesta';\r\n\r\nconst bench = new BenchMark();\r\n\r\nbench.sequence('before cycle');\r\n\r\nfor (const iter of [ 1, 2, 3 ]) {\r\n    const iteration = bench.iteration(iter);\r\n\r\n    iteration.sequence('before iteration');\r\n    await pause(15);\r\n    iteration.sequence('15ms gone');\r\n    await pause(10);\r\n    iteration.sequence('after 10ms more');\r\n    await pause(20);\r\n    iteration.sequence('end of the iteration');\r\n}\r\n\r\nbench.sequence('after cycle');\r\n\r\nconsole.log(bench.report(new JSONReporter()));\r\n// [{\"label\":\"before cycle\",\"benchmark\":0},{\"label\":\"after cycle\",\"benchmark\":139},{\"label\":\"before iteration\",\"total\":3,\"mean\":0,\"q25\":0,\"q75\":0},{\"label\":\"15ms gone\",\"total\":3,\"mean\":15.333333333333334,\"q25\":15,\"q75\":15.5},{\"label\":\"after 10ms more\",\"total\":3,\"mean\":10,\"q25\":10,\"q75\":10},{\"label\":\"end of the iteration\",\"total\":3,\"mean\":20,\"q25\":20,\"q75\":20}]\r\n```\r\n\r\n\r\n### Timers\r\nTimers are used to fix the moment of time.\r\nBy default Timer is autodetected among  `process.hrtime.bigint()` `performance.now()` or `new Date()` depending on your environment.\r\n\r\nAll timers available from package:\r\n```javascript\r\nimport { Timer, ProcessHrtime, PerformanceNow } from 'vesta';\r\n```\r\n\r\nyou can pass any of them explicitly:\r\n```javascript\r\nimport { Timer } from 'vesta';\r\n\r\nclass customTimer extends Timer {}\r\n\r\nconst bench = new BenchMark({\r\n    counter : new customTimer()\r\n});\r\n\r\n```\r\n\r\nto implement own timer it is recomended to  extends `Timer` and follow it's interfece.\r\n\r\n### Reports\r\n\r\nThere are two reports available:\r\n  * `JSONReporter` - report in json format, usefull for external export.\r\n  * `PlainReporter` - used by default.\r\n\r\nuse custom reporter on report generation:\r\n```javascript\r\n\r\nimport BenchMark, { JSONReporter } from 'vesta';\r\n\r\nconst bench = new BenchMark();\r\n\r\nconst report = JSON.parse(bench.report(new JSONReporter()));\r\n\r\n```\r\n\r\nto pretty print numbers in report use:\r\n```javascript\r\nimport BenchMark, { PlainReporter } from 'vesta';\r\n\r\nconst bench = new BenchMark();\r\n\r\nbench.report(new PlainReporter(), { pretty: true });\r\n```\r\n\r\nor pass `pretty` as configuration object:\r\n\r\n```javascript\r\nimport BenchMark, { JSONReporter } from 'vesta';\r\n\r\nconst bench = new BenchMark({});\r\n\r\nbench.sequence('before');\r\nawait pause(2500);\r\nbench.sequence('after');\r\n\r\nconsole.log(\r\n    bench.report(new JSONReporter(), {\r\n        pretty : {\r\n            exclude : [ 'total' ],\r\n            include : [ 'mean', 'benchmark' ]\r\n        }\r\n    })\r\n);\r\n\r\n// [\r\n//     { label: 'before', benchmark: 0 },\r\n//     { label: 'after', benchmark: '2s 504ms' }\r\n// ];\r\n\r\n```\r\nwhere\r\n * `include` - array with metric names, for which prettifier will be added.\r\n * `exclude` - array with metric names, for which prettifier won't be added.\r\n\r\n### Customization\r\n\r\npass next options to BenchMark properties:\r\n\r\n* `shortSingleObservations` (boolean): use short report when there are only 1 observation. `true` by default.\r\n* `counter` (Timer): time measurer. autodetector by default.\r\n\r\n\r\n#### Custom mertics\r\n\r\nTo enrich your reports, you can easily introduce new metrics to the benchmark calculations in your JavaScript code. Utilize the `calculate()` method along with `metrics` and `items` objects within the BenchMark instance:\r\n\r\n```javascript\r\nimport BenchMark from 'vesta';\r\n\r\nconst bench = new BenchMark({});\r\n\r\nbench.calculate({\r\n    metrics : {\r\n        over25ms : arr => arr.filter(i => i > 25).length, // number of benchmarks longer then 25ms,\r\n\r\n        // Omit calculation for quantiles\r\n        q25 : null,\r\n        q75 : null\r\n    },\r\n    items : {\r\n        // Identify benchmarks over the mean value\r\n        overMean : (arr, metrics) => arr.filter(i => i.bench > metrics.mean).map(i => i.payload)\r\n    }\r\n});\r\n```\r\n\r\n  Some of the other custom metrics you might be looking for:\r\n\r\n  * include a metric for the mean value over the last 10 records exclusively:\r\n  ```javascript\r\n  metrics : {\r\n      last10 : arr => BenchMark.metrics.mean(arr.slice(-10));\r\n  }\r\n  ```\r\n\r\nThese additions allow you to tailor the benchmarks and generate more comprehensive reports tailored to your specific needs.\r\n\r\n\r\n\r\n### Memory\r\n\r\nUse the same API to benchmark memory usage:\r\n\r\n```javascript\r\nimport { Memory, PlainReporter } from 'vesta';\r\n\r\nconst bench = new Memory();\r\n\r\nconst b1 = bench.start('before');\r\nconst a = Array.from({ length: 1e7 });\r\n\r\nbench.end(b1);\r\n\r\nconsole.log(bench.report(new PlainReporter(), { pretty: true }));\r\n\r\n//   ------------------------\r\n// Label: before\r\n// Rss: 76.05MB\r\n// HeapTotal: 76.3MB\r\n// HeapUsed: 76.29MB\r\n// External: 0MB\r\n// ArrayBuffers: 0MB\r\n```\r\n\r\n## Contribute\r\n\r\nMake the changes to the code and tests. Then commit to your branch. Be sure to follow the commit message conventions. Read [Contributing Guidelines](.github/CONTRIBUTING.md) for details.\r\n\r\n[npm]: https://www.npmjs.com/package/vesta\r\n[github]: https://github.com/pustovitDmytro/vesta\r\n[coveralls]: https://coveralls.io/github/pustovitDmytro/vesta?branch=master\r\n[badge-deps]: https://img.shields.io/librariesio/release/npm/vesta.svg\r\n[badge-vers]: https://img.shields.io/npm/v/vesta.svg\r\n[badge-lic]: https://img.shields.io/github/license/pustovitDmytro/vesta.svg\r\n[badge-coverage]: https://coveralls.io/repos/github/pustovitDmytro/vesta/badge.svg?branch=master\r\n[url-coverage]: https://coveralls.io/github/pustovitDmytro/vesta?branch=master\r\n\r\n[snyk-badge]: https://snyk-widget.herokuapp.com/badge/npm/vesta/badge.svg\r\n[snyk-url]: https://snyk.io/advisor/npm-package/vesta\r\n\r\n[tests-badge]: https://img.shields.io/circleci/build/github/pustovitDmytro/vesta\r\n[tests-url]: https://app.circleci.com/pipelines/github/pustovitDmytro/vesta\r\n\r\n[codefactor-badge]: https://www.codefactor.io/repository/github/pustovitdmytro/vesta/badge\r\n[codefactor-url]: https://www.codefactor.io/repository/github/pustovitdmytro/vesta\r\n\r\n[commit-activity-badge]: https://img.shields.io/github/commit-activity/m/pustovitDmytro/vesta\r\n\r\n[scrutinizer-badge]: https://scrutinizer-ci.com/g/pustovitDmytro/vesta/badges/quality-score.png?b=master\r\n[scrutinizer-url]: https://scrutinizer-ci.com/g/pustovitDmytro/vesta/?branch=master\r\n\r\n[codacy-badge]: https://app.codacy.com/project/badge/Grade/8667aa23afaa4725854f098c4b5e8890\r\n[codacy-url]: https://www.codacy.com/gh/pustovitDmytro/vesta/dashboard?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=pustovitDmytro/vesta&amp;utm_campaign=Badge_Grade\r\n\r\n[sonarcloud-badge]: https://sonarcloud.io/api/project_badges/measure?project=pustovitDmytro_vesta&metric=alert_status\r\n[sonarcloud-url]: https://sonarcloud.io/dashboard?id=pustovitDmytro_vesta\r\n\r\n[npm-downloads-badge]: https://img.shields.io/npm/dw/vesta\r\n[npm-size-badge]: https://img.shields.io/bundlephobia/min/vesta\r\n[npm-size-url]: https://bundlephobia.com/result?p=vesta\r\n\r\n[node-ver-test-badge]: https://github.com/pustovitDmytro/vesta/actions/workflows/npt.yml/badge.svg?branch=master\r\n[node-ver-test-url]: https://github.com/pustovitDmytro/vesta/actions?query=workflow%3A%22Node.js+versions%22\r\n\r\n[fossa-badge]: https://app.fossa.com/api/projects/custom%2B24828%2Fvesta.svg?type=shield\r\n[fossa-url]: https://app.fossa.com/projects/custom%2B24828%2Fvesta?ref=badge_shield\r\n\r\n[ukr-badge]: https://img.shields.io/badge/made_in-ukraine-ffd700.svg?labelColor=0057b7\r\n[ukr-link]: https://war.ukraine.ua","readmeFilename":"README.md","keywords":["benchmark","time","performance","clock","timer","time-measurement","debug"]}