harperdb 4.6.6 → 4.7.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +1 -1
  3. package/bin/harperdb.js +89 -78
  4. package/bin/lite.js +85 -74
  5. package/components/requestRestart.d.ts +3 -0
  6. package/components/status/ComponentStatus.d.ts +61 -0
  7. package/components/status/ComponentStatusRegistry.d.ts +80 -0
  8. package/components/status/api.d.ts +104 -0
  9. package/components/status/crossThread.d.ts +62 -0
  10. package/components/status/errors.d.ts +68 -0
  11. package/components/status/index.d.ts +35 -0
  12. package/components/status/internal.d.ts +40 -0
  13. package/components/status/registry.d.ts +10 -0
  14. package/components/status/types.d.ts +75 -0
  15. package/json/systemSchema.json +68 -7
  16. package/launchServiceScripts/launchNatsIngestService.js +85 -74
  17. package/launchServiceScripts/launchNatsReplyService.js +85 -74
  18. package/launchServiceScripts/launchUpdateNodes4-0-0.js +85 -74
  19. package/npm-shrinkwrap.json +361 -71
  20. package/package.json +6 -6
  21. package/resources/RequestTarget.d.ts +1 -1
  22. package/resources/Resource.d.ts +3 -3
  23. package/resources/ResourceInterface.d.ts +33 -10
  24. package/resources/Resources.d.ts +1 -0
  25. package/resources/Table.d.ts +3 -3
  26. package/resources/analytics/hostnames.d.ts +3 -3
  27. package/resources/analytics/write.d.ts +2 -0
  28. package/resources/auditStore.d.ts +2 -0
  29. package/resources/databases.d.ts +3 -3
  30. package/resources/usageLicensing.d.ts +23 -0
  31. package/security/certificateVerification.d.ts +80 -0
  32. package/security/pkijs-ed25519-patch.d.ts +14 -0
  33. package/server/jobs/jobProcess.js +85 -74
  34. package/server/replication/knownNodes.d.ts +13 -1
  35. package/server/replication/replicationConnection.d.ts +2 -1
  36. package/server/status/index.d.ts +14 -5
  37. package/server/threads/threadServer.js +85 -74
  38. package/studio/build-local/asset-manifest.json +2 -2
  39. package/studio/build-local/index.html +1 -1
  40. package/studio/build-local/static/js/main.b93998e3.js +2 -0
  41. package/utility/hdbTerms.d.ts +8 -0
  42. package/utility/scripts/restartHdb.js +85 -74
  43. package/validation/usageLicensing.d.ts +34 -0
  44. package/studio/build-local/static/js/main.f9919fa0.js +0 -2
  45. /package/studio/build-local/static/js/{main.f9919fa0.js.LICENSE.txt → main.b93998e3.js.LICENSE.txt} +0 -0
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "harperdb",
3
- "version": "4.6.6",
3
+ "version": "4.7.0-alpha.2",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "harperdb",
9
- "version": "4.6.6",
9
+ "version": "4.7.0-alpha.2",
10
10
  "hasInstallScript": true,
11
11
  "license": "SEE LICENSE IN LICENSE",
12
12
  "dependencies": {
@@ -34,6 +34,7 @@
34
34
  "cli-progress": "3.12.0",
35
35
  "clone": "2.1.2",
36
36
  "dotenv": "^16.4.7",
37
+ "easy-ocsp": "1.2.2",
37
38
  "fast-glob": "3.3.3",
38
39
  "fastify": "~4.29.0",
39
40
  "fastify-plugin": "~4.5.1",
@@ -62,7 +63,7 @@
62
63
  "node-stream-zip": "1.15.0",
63
64
  "node-unix-socket": "0.2.7",
64
65
  "normalize-path": "^3.0.0",
65
- "ora": "5.4.1",
66
+ "ora": "8.2.0",
66
67
  "ordered-binary": "1.5.3",
67
68
  "papaparse": "5.5.3",
68
69
  "passport": "0.7.0",
@@ -74,8 +75,7 @@
74
75
  "properties-reader": "2.3.0",
75
76
  "recursive-iterator": "3.3.0",
76
77
  "semver": "7.7.2",
77
- "send": "^1.1.0",
78
- "serve-static": "^2.2.0",
78
+ "send": "^1.2.0",
79
79
  "ses": "1.13.0",
80
80
  "stream-chain": "2.2.5",
81
81
  "stream-json": "1.9.1",
@@ -1670,6 +1670,18 @@
1670
1670
  "win32"
1671
1671
  ]
1672
1672
  },
1673
+ "node_modules/@noble/hashes": {
1674
+ "version": "1.8.0",
1675
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz",
1676
+ "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==",
1677
+ "license": "MIT",
1678
+ "engines": {
1679
+ "node": "^14.21.3 || >=16"
1680
+ },
1681
+ "funding": {
1682
+ "url": "https://paulmillr.com/funding/"
1683
+ }
1684
+ },
1673
1685
  "node_modules/@nodelib/fs.scandir": {
1674
1686
  "version": "2.1.5",
1675
1687
  "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
@@ -3266,6 +3278,20 @@
3266
3278
  "node": ">=0.10.0"
3267
3279
  }
3268
3280
  },
3281
+ "node_modules/asn1js": {
3282
+ "version": "3.0.6",
3283
+ "resolved": "https://registry.npmjs.org/asn1js/-/asn1js-3.0.6.tgz",
3284
+ "integrity": "sha512-UOCGPYbl0tv8+006qks/dTgV9ajs97X2p0FAbyS2iyCRrmLSRolDaHdp+v/CLgnzHc3fVB+CwYiUmei7ndFcgA==",
3285
+ "license": "BSD-3-Clause",
3286
+ "dependencies": {
3287
+ "pvtsutils": "^1.3.6",
3288
+ "pvutils": "^1.1.3",
3289
+ "tslib": "^2.8.1"
3290
+ },
3291
+ "engines": {
3292
+ "node": ">=12.0.0"
3293
+ }
3294
+ },
3269
3295
  "node_modules/ast-types": {
3270
3296
  "version": "0.13.4",
3271
3297
  "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz",
@@ -3598,6 +3624,15 @@
3598
3624
  "node": ">=6.14.2"
3599
3625
  }
3600
3626
  },
3627
+ "node_modules/bytestreamjs": {
3628
+ "version": "2.0.1",
3629
+ "resolved": "https://registry.npmjs.org/bytestreamjs/-/bytestreamjs-2.0.1.tgz",
3630
+ "integrity": "sha512-U1Z/ob71V/bXfVABvNr/Kumf5VyeQRBEm6Txb0PQ6S7V5GpBM3w4Cbqz/xPDicR5tN0uvDifng8C+5qECeGwyQ==",
3631
+ "license": "BSD-3-Clause",
3632
+ "engines": {
3633
+ "node": ">=6.0.0"
3634
+ }
3635
+ },
3601
3636
  "node_modules/call-bind": {
3602
3637
  "version": "1.0.8",
3603
3638
  "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz",
@@ -4147,6 +4182,19 @@
4147
4182
  "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
4148
4183
  "license": "MIT"
4149
4184
  },
4185
+ "node_modules/easy-ocsp": {
4186
+ "version": "1.2.2",
4187
+ "resolved": "https://registry.npmjs.org/easy-ocsp/-/easy-ocsp-1.2.2.tgz",
4188
+ "integrity": "sha512-AUKL5mPJYWSE3ucelHkkgwOMk/WVuJP9PkfDKe0OzQwN1d1NAmHdfNgf3++RjrVpj4EuJGtYEY/oFVcSYZRIgQ==",
4189
+ "license": "MIT",
4190
+ "dependencies": {
4191
+ "asn1js": "^3.0.5",
4192
+ "pkijs": "^3.2.4"
4193
+ },
4194
+ "engines": {
4195
+ "node": ">=18"
4196
+ }
4197
+ },
4150
4198
  "node_modules/ecdsa-sig-formatter": {
4151
4199
  "version": "1.0.11",
4152
4200
  "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz",
@@ -4849,6 +4897,18 @@
4849
4897
  "node": "6.* || 8.* || >= 10.*"
4850
4898
  }
4851
4899
  },
4900
+ "node_modules/get-east-asian-width": {
4901
+ "version": "1.3.0",
4902
+ "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.3.0.tgz",
4903
+ "integrity": "sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==",
4904
+ "license": "MIT",
4905
+ "engines": {
4906
+ "node": ">=18"
4907
+ },
4908
+ "funding": {
4909
+ "url": "https://github.com/sponsors/sindresorhus"
4910
+ }
4911
+ },
4852
4912
  "node_modules/get-intrinsic": {
4853
4913
  "version": "1.3.0",
4854
4914
  "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
@@ -5200,6 +5260,91 @@
5200
5260
  "node": ">=12.0.0"
5201
5261
  }
5202
5262
  },
5263
+ "node_modules/inquirer/node_modules/bl": {
5264
+ "version": "4.1.0",
5265
+ "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz",
5266
+ "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==",
5267
+ "license": "MIT",
5268
+ "dependencies": {
5269
+ "buffer": "^5.5.0",
5270
+ "inherits": "^2.0.4",
5271
+ "readable-stream": "^3.4.0"
5272
+ }
5273
+ },
5274
+ "node_modules/inquirer/node_modules/is-interactive": {
5275
+ "version": "1.0.0",
5276
+ "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz",
5277
+ "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==",
5278
+ "license": "MIT",
5279
+ "engines": {
5280
+ "node": ">=8"
5281
+ }
5282
+ },
5283
+ "node_modules/inquirer/node_modules/is-unicode-supported": {
5284
+ "version": "0.1.0",
5285
+ "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz",
5286
+ "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==",
5287
+ "license": "MIT",
5288
+ "engines": {
5289
+ "node": ">=10"
5290
+ },
5291
+ "funding": {
5292
+ "url": "https://github.com/sponsors/sindresorhus"
5293
+ }
5294
+ },
5295
+ "node_modules/inquirer/node_modules/log-symbols": {
5296
+ "version": "4.1.0",
5297
+ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
5298
+ "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
5299
+ "license": "MIT",
5300
+ "dependencies": {
5301
+ "chalk": "^4.1.0",
5302
+ "is-unicode-supported": "^0.1.0"
5303
+ },
5304
+ "engines": {
5305
+ "node": ">=10"
5306
+ },
5307
+ "funding": {
5308
+ "url": "https://github.com/sponsors/sindresorhus"
5309
+ }
5310
+ },
5311
+ "node_modules/inquirer/node_modules/ora": {
5312
+ "version": "5.4.1",
5313
+ "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz",
5314
+ "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==",
5315
+ "license": "MIT",
5316
+ "dependencies": {
5317
+ "bl": "^4.1.0",
5318
+ "chalk": "^4.1.0",
5319
+ "cli-cursor": "^3.1.0",
5320
+ "cli-spinners": "^2.5.0",
5321
+ "is-interactive": "^1.0.0",
5322
+ "is-unicode-supported": "^0.1.0",
5323
+ "log-symbols": "^4.1.0",
5324
+ "strip-ansi": "^6.0.0",
5325
+ "wcwidth": "^1.0.1"
5326
+ },
5327
+ "engines": {
5328
+ "node": ">=10"
5329
+ },
5330
+ "funding": {
5331
+ "url": "https://github.com/sponsors/sindresorhus"
5332
+ }
5333
+ },
5334
+ "node_modules/inquirer/node_modules/readable-stream": {
5335
+ "version": "3.6.2",
5336
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
5337
+ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
5338
+ "license": "MIT",
5339
+ "dependencies": {
5340
+ "inherits": "^2.0.3",
5341
+ "string_decoder": "^1.1.1",
5342
+ "util-deprecate": "^1.0.1"
5343
+ },
5344
+ "engines": {
5345
+ "node": ">= 6"
5346
+ }
5347
+ },
5203
5348
  "node_modules/into-stream": {
5204
5349
  "version": "6.0.0",
5205
5350
  "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-6.0.0.tgz",
@@ -5352,12 +5497,15 @@
5352
5497
  }
5353
5498
  },
5354
5499
  "node_modules/is-interactive": {
5355
- "version": "1.0.0",
5356
- "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz",
5357
- "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==",
5500
+ "version": "2.0.0",
5501
+ "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-2.0.0.tgz",
5502
+ "integrity": "sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==",
5358
5503
  "license": "MIT",
5359
5504
  "engines": {
5360
- "node": ">=8"
5505
+ "node": ">=12"
5506
+ },
5507
+ "funding": {
5508
+ "url": "https://github.com/sponsors/sindresorhus"
5361
5509
  }
5362
5510
  },
5363
5511
  "node_modules/is-number": {
@@ -5408,12 +5556,12 @@
5408
5556
  }
5409
5557
  },
5410
5558
  "node_modules/is-unicode-supported": {
5411
- "version": "0.1.0",
5412
- "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz",
5413
- "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==",
5559
+ "version": "2.1.0",
5560
+ "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.1.0.tgz",
5561
+ "integrity": "sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==",
5414
5562
  "license": "MIT",
5415
5563
  "engines": {
5416
- "node": ">=10"
5564
+ "node": ">=18"
5417
5565
  },
5418
5566
  "funding": {
5419
5567
  "url": "https://github.com/sponsors/sindresorhus"
@@ -5770,16 +5918,40 @@
5770
5918
  "license": "MIT"
5771
5919
  },
5772
5920
  "node_modules/log-symbols": {
5773
- "version": "4.1.0",
5774
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
5775
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
5921
+ "version": "6.0.0",
5922
+ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-6.0.0.tgz",
5923
+ "integrity": "sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==",
5776
5924
  "license": "MIT",
5777
5925
  "dependencies": {
5778
- "chalk": "^4.1.0",
5779
- "is-unicode-supported": "^0.1.0"
5926
+ "chalk": "^5.3.0",
5927
+ "is-unicode-supported": "^1.3.0"
5780
5928
  },
5781
5929
  "engines": {
5782
- "node": ">=10"
5930
+ "node": ">=18"
5931
+ },
5932
+ "funding": {
5933
+ "url": "https://github.com/sponsors/sindresorhus"
5934
+ }
5935
+ },
5936
+ "node_modules/log-symbols/node_modules/chalk": {
5937
+ "version": "5.5.0",
5938
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.5.0.tgz",
5939
+ "integrity": "sha512-1tm8DTaJhPBG3bIkVeZt1iZM9GfSX2lzOeDVZH9R9ffRHpmHvxZ/QhgQH/aDTkswQVt+YHdXAdS/In/30OjCbg==",
5940
+ "license": "MIT",
5941
+ "engines": {
5942
+ "node": "^12.17.0 || ^14.13 || >=16.0.0"
5943
+ },
5944
+ "funding": {
5945
+ "url": "https://github.com/chalk/chalk?sponsor=1"
5946
+ }
5947
+ },
5948
+ "node_modules/log-symbols/node_modules/is-unicode-supported": {
5949
+ "version": "1.3.0",
5950
+ "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz",
5951
+ "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==",
5952
+ "license": "MIT",
5953
+ "engines": {
5954
+ "node": ">=12"
5783
5955
  },
5784
5956
  "funding": {
5785
5957
  "url": "https://github.com/sponsors/sindresorhus"
@@ -5887,6 +6059,18 @@
5887
6059
  "node": ">=6"
5888
6060
  }
5889
6061
  },
6062
+ "node_modules/mimic-function": {
6063
+ "version": "5.0.1",
6064
+ "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz",
6065
+ "integrity": "sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==",
6066
+ "license": "MIT",
6067
+ "engines": {
6068
+ "node": ">=18"
6069
+ },
6070
+ "funding": {
6071
+ "url": "https://github.com/sponsors/sindresorhus"
6072
+ }
6073
+ },
5890
6074
  "node_modules/minimatch": {
5891
6075
  "version": "9.0.5",
5892
6076
  "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
@@ -6428,51 +6612,134 @@
6428
6612
  }
6429
6613
  },
6430
6614
  "node_modules/ora": {
6431
- "version": "5.4.1",
6432
- "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz",
6433
- "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==",
6615
+ "version": "8.2.0",
6616
+ "resolved": "https://registry.npmjs.org/ora/-/ora-8.2.0.tgz",
6617
+ "integrity": "sha512-weP+BZ8MVNnlCm8c0Qdc1WSWq4Qn7I+9CJGm7Qali6g44e/PUzbjNqJX5NJ9ljlNMosfJvg1fKEGILklK9cwnw==",
6434
6618
  "license": "MIT",
6435
6619
  "dependencies": {
6436
- "bl": "^4.1.0",
6437
- "chalk": "^4.1.0",
6438
- "cli-cursor": "^3.1.0",
6439
- "cli-spinners": "^2.5.0",
6440
- "is-interactive": "^1.0.0",
6441
- "is-unicode-supported": "^0.1.0",
6442
- "log-symbols": "^4.1.0",
6443
- "strip-ansi": "^6.0.0",
6444
- "wcwidth": "^1.0.1"
6620
+ "chalk": "^5.3.0",
6621
+ "cli-cursor": "^5.0.0",
6622
+ "cli-spinners": "^2.9.2",
6623
+ "is-interactive": "^2.0.0",
6624
+ "is-unicode-supported": "^2.0.0",
6625
+ "log-symbols": "^6.0.0",
6626
+ "stdin-discarder": "^0.2.2",
6627
+ "string-width": "^7.2.0",
6628
+ "strip-ansi": "^7.1.0"
6445
6629
  },
6446
6630
  "engines": {
6447
- "node": ">=10"
6631
+ "node": ">=18"
6448
6632
  },
6449
6633
  "funding": {
6450
6634
  "url": "https://github.com/sponsors/sindresorhus"
6451
6635
  }
6452
6636
  },
6453
- "node_modules/ora/node_modules/bl": {
6454
- "version": "4.1.0",
6455
- "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz",
6456
- "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==",
6637
+ "node_modules/ora/node_modules/ansi-regex": {
6638
+ "version": "6.1.0",
6639
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz",
6640
+ "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==",
6641
+ "license": "MIT",
6642
+ "engines": {
6643
+ "node": ">=12"
6644
+ },
6645
+ "funding": {
6646
+ "url": "https://github.com/chalk/ansi-regex?sponsor=1"
6647
+ }
6648
+ },
6649
+ "node_modules/ora/node_modules/chalk": {
6650
+ "version": "5.5.0",
6651
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.5.0.tgz",
6652
+ "integrity": "sha512-1tm8DTaJhPBG3bIkVeZt1iZM9GfSX2lzOeDVZH9R9ffRHpmHvxZ/QhgQH/aDTkswQVt+YHdXAdS/In/30OjCbg==",
6653
+ "license": "MIT",
6654
+ "engines": {
6655
+ "node": "^12.17.0 || ^14.13 || >=16.0.0"
6656
+ },
6657
+ "funding": {
6658
+ "url": "https://github.com/chalk/chalk?sponsor=1"
6659
+ }
6660
+ },
6661
+ "node_modules/ora/node_modules/cli-cursor": {
6662
+ "version": "5.0.0",
6663
+ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-5.0.0.tgz",
6664
+ "integrity": "sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==",
6457
6665
  "license": "MIT",
6458
6666
  "dependencies": {
6459
- "buffer": "^5.5.0",
6460
- "inherits": "^2.0.4",
6461
- "readable-stream": "^3.4.0"
6667
+ "restore-cursor": "^5.0.0"
6668
+ },
6669
+ "engines": {
6670
+ "node": ">=18"
6671
+ },
6672
+ "funding": {
6673
+ "url": "https://github.com/sponsors/sindresorhus"
6462
6674
  }
6463
6675
  },
6464
- "node_modules/ora/node_modules/readable-stream": {
6465
- "version": "3.6.2",
6466
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
6467
- "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
6676
+ "node_modules/ora/node_modules/emoji-regex": {
6677
+ "version": "10.4.0",
6678
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.4.0.tgz",
6679
+ "integrity": "sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==",
6680
+ "license": "MIT"
6681
+ },
6682
+ "node_modules/ora/node_modules/onetime": {
6683
+ "version": "7.0.0",
6684
+ "resolved": "https://registry.npmjs.org/onetime/-/onetime-7.0.0.tgz",
6685
+ "integrity": "sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==",
6468
6686
  "license": "MIT",
6469
6687
  "dependencies": {
6470
- "inherits": "^2.0.3",
6471
- "string_decoder": "^1.1.1",
6472
- "util-deprecate": "^1.0.1"
6688
+ "mimic-function": "^5.0.0"
6473
6689
  },
6474
6690
  "engines": {
6475
- "node": ">= 6"
6691
+ "node": ">=18"
6692
+ },
6693
+ "funding": {
6694
+ "url": "https://github.com/sponsors/sindresorhus"
6695
+ }
6696
+ },
6697
+ "node_modules/ora/node_modules/restore-cursor": {
6698
+ "version": "5.1.0",
6699
+ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-5.1.0.tgz",
6700
+ "integrity": "sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==",
6701
+ "license": "MIT",
6702
+ "dependencies": {
6703
+ "onetime": "^7.0.0",
6704
+ "signal-exit": "^4.1.0"
6705
+ },
6706
+ "engines": {
6707
+ "node": ">=18"
6708
+ },
6709
+ "funding": {
6710
+ "url": "https://github.com/sponsors/sindresorhus"
6711
+ }
6712
+ },
6713
+ "node_modules/ora/node_modules/string-width": {
6714
+ "version": "7.2.0",
6715
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz",
6716
+ "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==",
6717
+ "license": "MIT",
6718
+ "dependencies": {
6719
+ "emoji-regex": "^10.3.0",
6720
+ "get-east-asian-width": "^1.0.0",
6721
+ "strip-ansi": "^7.1.0"
6722
+ },
6723
+ "engines": {
6724
+ "node": ">=18"
6725
+ },
6726
+ "funding": {
6727
+ "url": "https://github.com/sponsors/sindresorhus"
6728
+ }
6729
+ },
6730
+ "node_modules/ora/node_modules/strip-ansi": {
6731
+ "version": "7.1.0",
6732
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
6733
+ "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
6734
+ "license": "MIT",
6735
+ "dependencies": {
6736
+ "ansi-regex": "^6.0.1"
6737
+ },
6738
+ "engines": {
6739
+ "node": ">=12"
6740
+ },
6741
+ "funding": {
6742
+ "url": "https://github.com/chalk/strip-ansi?sponsor=1"
6476
6743
  }
6477
6744
  },
6478
6745
  "node_modules/ordered-binary": {
@@ -6564,15 +6831,6 @@
6564
6831
  "node": ">=0.10.0"
6565
6832
  }
6566
6833
  },
6567
- "node_modules/parseurl": {
6568
- "version": "1.3.3",
6569
- "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
6570
- "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
6571
- "license": "MIT",
6572
- "engines": {
6573
- "node": ">= 0.8"
6574
- }
6575
- },
6576
6834
  "node_modules/passport": {
6577
6835
  "version": "0.7.0",
6578
6836
  "resolved": "https://registry.npmjs.org/passport/-/passport-0.7.0.tgz",
@@ -6791,6 +7049,23 @@
6791
7049
  "integrity": "sha512-n9wh8tvBe5sFmsqlg+XQhaQLumwpqoAUruLwjCopgTmUBjJ/fjtBsJzKleCaIGBOMXYEhp1YfKl4d7rJ5ZKJGA==",
6792
7050
  "license": "MIT"
6793
7051
  },
7052
+ "node_modules/pkijs": {
7053
+ "version": "3.2.5",
7054
+ "resolved": "https://registry.npmjs.org/pkijs/-/pkijs-3.2.5.tgz",
7055
+ "integrity": "sha512-WX0la7n7CbnguuaIQoT4Fc0IJckPDOUldzOwlZ0nwpOcySS+Six/tXBdc0RX17J5o1To0SAr3xDJjDLsOfDFQA==",
7056
+ "license": "BSD-3-Clause",
7057
+ "dependencies": {
7058
+ "@noble/hashes": "^1.4.0",
7059
+ "asn1js": "^3.0.5",
7060
+ "bytestreamjs": "^2.0.0",
7061
+ "pvtsutils": "^1.3.2",
7062
+ "pvutils": "^1.1.3",
7063
+ "tslib": "^2.6.3"
7064
+ },
7065
+ "engines": {
7066
+ "node": ">=12.0.0"
7067
+ }
7068
+ },
6794
7069
  "node_modules/pm2": {
6795
7070
  "version": "5.4.1",
6796
7071
  "resolved": "https://registry.npmjs.org/pm2/-/pm2-5.4.1.tgz",
@@ -7181,6 +7456,24 @@
7181
7456
  "node": ">= 6"
7182
7457
  }
7183
7458
  },
7459
+ "node_modules/pvtsutils": {
7460
+ "version": "1.3.6",
7461
+ "resolved": "https://registry.npmjs.org/pvtsutils/-/pvtsutils-1.3.6.tgz",
7462
+ "integrity": "sha512-PLgQXQ6H2FWCaeRak8vvk1GW462lMxB5s3Jm673N82zI4vqtVUPuZdffdZbPDFRoU8kAhItWFtPCWiPpp4/EDg==",
7463
+ "license": "MIT",
7464
+ "dependencies": {
7465
+ "tslib": "^2.8.1"
7466
+ }
7467
+ },
7468
+ "node_modules/pvutils": {
7469
+ "version": "1.1.3",
7470
+ "resolved": "https://registry.npmjs.org/pvutils/-/pvutils-1.1.3.tgz",
7471
+ "integrity": "sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ==",
7472
+ "license": "MIT",
7473
+ "engines": {
7474
+ "node": ">=6.0.0"
7475
+ }
7476
+ },
7184
7477
  "node_modules/queue-microtask": {
7185
7478
  "version": "1.2.3",
7186
7479
  "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
@@ -7608,21 +7901,6 @@
7608
7901
  "node": ">= 18"
7609
7902
  }
7610
7903
  },
7611
- "node_modules/serve-static": {
7612
- "version": "2.2.0",
7613
- "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-2.2.0.tgz",
7614
- "integrity": "sha512-61g9pCh0Vnh7IutZjtLGGpTA355+OPn2TyDv/6ivP2h/AdAVX9azsoxmg2/M6nZeQZNYBEwIcsne1mJd9oQItQ==",
7615
- "license": "MIT",
7616
- "dependencies": {
7617
- "encodeurl": "^2.0.0",
7618
- "escape-html": "^1.0.3",
7619
- "parseurl": "^1.3.3",
7620
- "send": "^1.2.0"
7621
- },
7622
- "engines": {
7623
- "node": ">= 18"
7624
- }
7625
- },
7626
7904
  "node_modules/ses": {
7627
7905
  "version": "1.13.0",
7628
7906
  "resolved": "https://registry.npmjs.org/ses/-/ses-1.13.0.tgz",
@@ -7845,6 +8123,18 @@
7845
8123
  "node": ">= 0.8"
7846
8124
  }
7847
8125
  },
8126
+ "node_modules/stdin-discarder": {
8127
+ "version": "0.2.2",
8128
+ "resolved": "https://registry.npmjs.org/stdin-discarder/-/stdin-discarder-0.2.2.tgz",
8129
+ "integrity": "sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==",
8130
+ "license": "MIT",
8131
+ "engines": {
8132
+ "node": ">=18"
8133
+ },
8134
+ "funding": {
8135
+ "url": "https://github.com/sponsors/sindresorhus"
8136
+ }
8137
+ },
7848
8138
  "node_modules/stream-browserify": {
7849
8139
  "version": "3.0.0",
7850
8140
  "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "harperdb",
3
- "version": "4.6.6",
3
+ "version": "4.7.0-alpha.2",
4
4
  "description": "HarperDB is a distributed database, caching service, streaming broker, and application development platform focused on performance and ease of use.",
5
5
  "keywords": [
6
6
  "database",
@@ -25,8 +25,8 @@
25
25
  ],
26
26
  "main": "harperdb.js",
27
27
  "bin": {
28
- "harperdb": "./bin/harperdb.js",
29
- "harper": "./bin/harperdb.js"
28
+ "harperdb": "bin/harperdb.js",
29
+ "harper": "bin/harperdb.js"
30
30
  },
31
31
  "engines": {
32
32
  "minimum-node": "16.0.0",
@@ -68,6 +68,7 @@
68
68
  "cli-progress": "3.12.0",
69
69
  "clone": "2.1.2",
70
70
  "dotenv": "^16.4.7",
71
+ "easy-ocsp": "1.2.2",
71
72
  "fast-glob": "3.3.3",
72
73
  "fastify": "~4.29.0",
73
74
  "fastify-plugin": "~4.5.1",
@@ -96,7 +97,7 @@
96
97
  "node-stream-zip": "1.15.0",
97
98
  "node-unix-socket": "0.2.7",
98
99
  "normalize-path": "^3.0.0",
99
- "ora": "5.4.1",
100
+ "ora": "8.2.0",
100
101
  "ordered-binary": "1.5.3",
101
102
  "papaparse": "5.5.3",
102
103
  "passport": "0.7.0",
@@ -108,8 +109,7 @@
108
109
  "properties-reader": "2.3.0",
109
110
  "recursive-iterator": "3.3.0",
110
111
  "semver": "7.7.2",
111
- "send": "^1.1.0",
112
- "serve-static": "^2.2.0",
112
+ "send": "^1.2.0",
113
113
  "ses": "1.13.0",
114
114
  "stream-chain": "2.2.5",
115
115
  "stream-json": "1.9.1",
@@ -1,4 +1,4 @@
1
- import { Conditions, Id, Select, Sort } from './ResourceInterface';
1
+ import { Conditions, Id, Select, Sort } from './ResourceInterface.ts';
2
2
  export declare class RequestTarget extends URLSearchParams {
3
3
  #private;
4
4
  pathname: string;
@@ -1,4 +1,4 @@
1
- import type { ResourceInterface, SubscriptionRequest, Id, Context, Query } from './ResourceInterface.ts';
1
+ import type { ResourceInterface, SubscriptionRequest, Id, Context, Query, SourceContext } from './ResourceInterface.ts';
2
2
  import { Transaction } from './DatabaseTransaction.ts';
3
3
  import { IterableEventQueue } from './IterableEventQueue.ts';
4
4
  import { AsyncLocalStorage } from 'async_hooks';
@@ -113,7 +113,7 @@ export declare class Resource implements ResourceInterface {
113
113
  * @param options
114
114
  * @returns
115
115
  */
116
- static getResource(id: Id, request: Context, options?: any): Resource | Promise<Resource>;
116
+ static getResource(id: Id, request: Context | SourceContext, options?: any): Resource | Promise<Resource>;
117
117
  /**
118
118
  * This is called by protocols that wish to make a subscription for real-time notification/updates.
119
119
  * This default implementation simply provides a streaming iterator that does not deliver any notifications
@@ -140,7 +140,7 @@ export declare class Resource implements ResourceInterface {
140
140
  * Get the context for this resource
141
141
  * @returns context object with information about the current transaction, user, and more
142
142
  */
143
- getContext(): Context;
143
+ getContext(): Context | SourceContext;
144
144
  }
145
145
  export declare function snakeCase(camelCase: string): string;
146
146
  /**