feat: add object hashing benchmarking
[benchmarks-js.git] / package.json
index 4254c0efe2359624eaa63df16e4de5cea7e291fa..74cf3278d5d2fcbc30db52180d67695f2d9578db 100644 (file)
@@ -1,14 +1,17 @@
 {
+  "$schema": "https://json.schemastore.org/package",
   "name": "benchmarks-js",
   "version": "0.0.1",
   "description": "JS code pattern benchmarks",
   "engines": {
-    "node": ">=14.x",
-    "pnpm": ">=8.0.0"
+    "node": ">=18.0.0",
+    "pnpm": ">=9.0.0"
   },
+  "packageManager": "pnpm@9.0.4",
+  "type": "module",
   "volta": {
-    "node": "20.2.0",
-    "pnpm": "8.5.1"
+    "node": "20.12.2",
+    "pnpm": "9.0.4"
   },
   "repository": {
     "type": "git",
       "url": "https://github.com/sponsors/jerome-benoit"
     }
   ],
+  "pnpm": {
+    "overrides": {
+      "semver": "^7.5.3"
+    }
+  },
   "scripts": {
-    "preinstall": "npx --yes only-allow pnpm",
-    "prepare": "node prepare.js",
-    "benchmark:busy-wait": "node busy-wait.js",
-    "benchmark:empty-array": "node empty-array.js",
-    "benchmark:deep-clone-object": "node deep-clone-object.js",
-    "benchmark:shallow-clone-object": "node shallow-clone-object.js",
-    "benchmark:is-empty-object": "node is-empty-object.js",
-    "benchmark:is-undefined": "node is-undefined.js",
-    "benchmark:quick-select": "node quick-select.js",
-    "benchmark:max": "node max.js",
-    "benchmark:promise-handling": "node promise-handling.js",
-    "benchmark:fibonacci": "node fibonacci.js",
-    "benchmark:random": "node random.js",
-    "benchmark:uuid-generator": "node uuid-generator.js",
-    "format": "prettier . --cache --write; standard . --fix",
+    "prepare": "node prepare.mjs",
+    "benchmark:busy-wait": "node busy-wait.mjs",
+    "benchmark:deep-clone-object": "node deep-clone-object.mjs",
+    "benchmark:deep-merge-object": "node deep-merge-object.mjs",
+    "benchmark:empty-array": "node empty-array.mjs",
+    "benchmark:shallow-clone-object": "node shallow-clone-object.mjs",
+    "benchmark:is-empty-object": "node is-empty-object.mjs",
+    "benchmark:is-undefined": "node is-undefined.mjs",
+    "benchmark:json-stringify": "node json-stringify.mjs",
+    "benchmark:quick-select": "node quick-select.mjs",
+    "benchmark:max": "node max.mjs",
+    "benchmark:min": "node min.mjs",
+    "benchmark:object-hash": "node object-hash.mjs",
+    "benchmark:promise-handling": "node promise-handling.mjs",
+    "benchmark:fibonacci": "node fibonacci.mjs",
+    "benchmark:random": "node random.mjs",
+    "benchmark:uuid-generator": "node uuid-generator.mjs",
+    "format": "biome format . --write; standard . --fix",
     "lint": "eslint . --cache",
     "lint:fix": "eslint . --cache --fix",
     "test": "echo \"Error: no test specified\" && exit 1"
   },
-  "author": "jerome-benoit",
+  "author": {
+    "name": "Jérôme Benoit",
+    "email": "jerome.benoit@piment-noir.org",
+    "url": "https://github.com/jerome-benoit"
+  },
   "license": "MIT",
   "dependencies": {
-    "benny": "^3.7.1",
+    "deep-clone": "^4.0.0",
+    "deepmerge": "^4.3.1",
+    "hash-object": "^5.0.1",
     "just-clone": "^6.2.0",
     "lodash": "^4.17.21",
-    "microtime": "^3.1.1",
-    "uuid": "^9.0.0"
+    "node-object-hash": "^3.0.0",
+    "object-hash": "^3.0.0",
+    "rambda": "^9.2.0",
+    "tatami-ng": "^0.4.4",
+    "uuid": "^9.0.1"
   },
   "devDependencies": {
-    "eslint": "^8.41.0",
-    "eslint-config-standard": "^17.0.0",
-    "eslint-define-config": "^1.20.0",
-    "eslint-plugin-import": "^2.27.5",
-    "eslint-plugin-jsdoc": "^44.2.4",
-    "eslint-plugin-n": "^16.0.0",
+    "@biomejs/biome": "^1.7.0",
+    "@commitlint/cli": "^19.2.2",
+    "@commitlint/config-conventional": "^19.2.2",
+    "eslint": "^8.57.0",
+    "eslint-config-standard": "^17.1.0",
+    "eslint-define-config": "^2.1.0",
+    "eslint-plugin-import": "^2.29.1",
+    "eslint-plugin-jsdoc": "^48.2.3",
+    "eslint-plugin-n": "^17.2.1",
     "eslint-plugin-promise": "^6.1.1",
-    "husky": "^8.0.3",
-    "lint-staged": "^13.2.2",
-    "prettier": "^2.8.8",
-    "standard": "^17.0.0",
-    "typescript": "^5.0.4"
+    "eslint-plugin-simple-import-sort": "^12.1.0",
+    "husky": "^9.0.11",
+    "lint-staged": "^15.2.2",
+    "prettier": "^3.2.5",
+    "standard": "^17.1.0"
   }
 }