@harperfast/harper-pro 5.0.0-beta.1 → 5.0.0-beta.3

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 (84) hide show
  1. package/core/.github/workflows/integration-tests.yml +7 -5
  2. package/core/components/componentLoader.ts +1 -1
  3. package/core/integrationTests/README.md +6 -6
  4. package/core/integrationTests/deploy/deploy-from-github.test.ts +2 -2
  5. package/core/integrationTests/deploy/deploy-from-source.test.ts +2 -2
  6. package/core/integrationTests/server/crash-replay.test.ts +3 -3
  7. package/core/integrationTests/server/operation-user-rbac.test.ts +2 -2
  8. package/core/integrationTests/server/operations-server.test.ts +4 -2
  9. package/core/integrationTests/server/storage-reclamation.test.ts +2 -2
  10. package/core/integrationTests/server/thread-management.test.ts +2 -2
  11. package/core/integrationTests/utils/README.md +84 -32
  12. package/core/integrationTests/utils/harperLifecycle.ts +19 -23
  13. package/core/package.json +15 -14
  14. package/core/resources/ResourceInterface.ts +1 -1
  15. package/core/resources/Table.ts +9 -5
  16. package/core/resources/search.ts +1 -1
  17. package/core/security/jsLoader.ts +23 -6
  18. package/core/security/keys.js +7 -7
  19. package/core/server/threads/manageThreads.js +3 -1
  20. package/core/unitTests/components/fixtures/testJSWithDeps/child-dir/typestrip.ts +2 -0
  21. package/core/unitTests/components/fixtures/testJSWithDeps/resources.js +3 -0
  22. package/core/unitTests/components/globalIsolation.test.js +1 -0
  23. package/core/unitTests/resources/query.test.js +16 -1
  24. package/core/utility/lmdb/commonUtility.js +21 -10
  25. package/dist/core/components/componentLoader.js +1 -1
  26. package/dist/core/components/componentLoader.js.map +1 -1
  27. package/dist/core/resources/Table.js +8 -3
  28. package/dist/core/resources/Table.js.map +1 -1
  29. package/dist/core/resources/search.js +1 -1
  30. package/dist/core/resources/search.js.map +1 -1
  31. package/dist/core/security/jsLoader.js +22 -7
  32. package/dist/core/security/jsLoader.js.map +1 -1
  33. package/dist/core/security/keys.js +7 -7
  34. package/dist/core/security/keys.js.map +1 -1
  35. package/dist/core/server/threads/manageThreads.js +3 -1
  36. package/dist/core/server/threads/manageThreads.js.map +1 -1
  37. package/dist/core/utility/lmdb/commonUtility.js +20 -13
  38. package/dist/core/utility/lmdb/commonUtility.js.map +1 -1
  39. package/dist/licensing/usageLicensing.js.map +1 -1
  40. package/dist/replication/knownNodes.js +5 -37
  41. package/dist/replication/knownNodes.js.map +1 -1
  42. package/dist/replication/nodeIdMapping.js +2 -35
  43. package/dist/replication/nodeIdMapping.js.map +1 -1
  44. package/dist/replication/replicationConnection.js +6 -3
  45. package/dist/replication/replicationConnection.js.map +1 -1
  46. package/dist/replication/replicator.js +3 -2
  47. package/dist/replication/replicator.js.map +1 -1
  48. package/dist/replication/setNode.js +1 -1
  49. package/dist/replication/setNode.js.map +1 -1
  50. package/dist/security/certificate.js.map +1 -1
  51. package/licensing/usageLicensing.ts +3 -2
  52. package/npm-shrinkwrap.json +1165 -1027
  53. package/package.json +15 -14
  54. package/replication/knownNodes.ts +3 -2
  55. package/replication/nodeIdMapping.ts +1 -1
  56. package/replication/replicationConnection.ts +17 -5
  57. package/replication/replicator.ts +7 -2
  58. package/replication/setNode.ts +1 -1
  59. package/security/certificate.ts +2 -1
  60. package/studio/web/assets/{index-C-GXfcup.js → index-C1G-Jo6n.js} +2 -2
  61. package/studio/web/assets/{index-C-GXfcup.js.map → index-C1G-Jo6n.js.map} +1 -1
  62. package/studio/web/assets/{index-PFlNdimM.js → index-D-CahN0-.js} +2 -2
  63. package/studio/web/assets/{index-PFlNdimM.js.map → index-D-CahN0-.js.map} +1 -1
  64. package/studio/web/assets/{index-BTgXJX9d.js → index-DxlZI0PX.js} +5 -5
  65. package/studio/web/assets/{index-BTgXJX9d.js.map → index-DxlZI0PX.js.map} +1 -1
  66. package/studio/web/assets/{index.lazy-C3TJZJ4o.js → index.lazy-BUXDDqq9.js} +2 -2
  67. package/studio/web/assets/{index.lazy-C3TJZJ4o.js.map → index.lazy-BUXDDqq9.js.map} +1 -1
  68. package/studio/web/assets/{profiler-DotzgiCJ.js → profiler-CU93QiSW.js} +2 -2
  69. package/studio/web/assets/{profiler-DotzgiCJ.js.map → profiler-CU93QiSW.js.map} +1 -1
  70. package/studio/web/assets/{react-redux-VxUEx_mU.js → react-redux-B8k9Ep7e.js} +2 -2
  71. package/studio/web/assets/{react-redux-VxUEx_mU.js.map → react-redux-B8k9Ep7e.js.map} +1 -1
  72. package/studio/web/assets/{startRecording-B_9J9Csd.js → startRecording-DFeBXGk6.js} +2 -2
  73. package/studio/web/assets/{startRecording-B_9J9Csd.js.map → startRecording-DFeBXGk6.js.map} +1 -1
  74. package/studio/web/index.html +1 -1
  75. package/core/resources/ResourceInterfaceV2.ts +0 -53
  76. package/core/resources/ResourceV2.ts +0 -67
  77. package/core/v1.d.ts +0 -39
  78. package/core/v1.js +0 -41
  79. package/core/v2.d.ts +0 -39
  80. package/core/v2.js +0 -41
  81. package/dist/core/resources/ResourceInterfaceV2.js +0 -3
  82. package/dist/core/resources/ResourceInterfaceV2.js.map +0 -1
  83. package/dist/core/resources/ResourceV2.js +0 -27
  84. package/dist/core/resources/ResourceV2.js.map +0 -1
@@ -2239,11 +2239,12 @@ export function makeTable(options) {
2239
2239
  entries = transformToEntries(entries, select, context, readTxn, null);
2240
2240
  let ordered;
2241
2241
  // if we are doing post-ordering, we need to get records first, then sort them
2242
- results.iterate = function () {
2242
+ results.iterate = function (options: { async: boolean }) {
2243
2243
  let sortedArrayIterator: IterableIterator<any>;
2244
- const dbIterator = entries[Symbol.asyncIterator]
2245
- ? entries[Symbol.asyncIterator]()
2246
- : entries[Symbol.iterator]();
2244
+ const dbIterator =
2245
+ options?.async && entries[Symbol.asyncIterator]
2246
+ ? entries[Symbol.asyncIterator]()
2247
+ : entries[Symbol.iterator]();
2247
2248
  let dbDone: boolean;
2248
2249
  const dbOrderedAttribute = sort.dbOrderedAttribute;
2249
2250
  let enqueuedEntryForNextGroup: any;
@@ -2357,7 +2358,10 @@ export function makeTable(options) {
2357
2358
  };
2358
2359
  applySortingOnSelect(sort);
2359
2360
  } else {
2360
- results.iterate = (entries[Symbol.asyncIterator] || entries[Symbol.iterator]).bind(entries);
2361
+ results.iterate = (options: { async: boolean }) => {
2362
+ if (options?.async && entries[Symbol.asyncIterator]) return entries[Symbol.asyncIterator]();
2363
+ else return entries[Symbol.iterator]();
2364
+ };
2361
2365
  results = results.map(function (entry) {
2362
2366
  try {
2363
2367
  // because this is a part of a stream of results, we will often be continuing to iterate over the results when there are errors,
@@ -345,7 +345,7 @@ export function searchByIndex(
345
345
  recordRead(entry);
346
346
  result = entry;
347
347
  }
348
- if (true || this.isSync) return result;
348
+ if (this.isSync) return result;
349
349
  return new Promise((resolve) => setImmediate(() => resolve(result)));
350
350
  }
351
351
  );
@@ -89,12 +89,13 @@ export async function scopedImport(filePath: string | URL, scope?: ApplicationSc
89
89
  if (!scope.compartment) scope.compartment = getCompartment(scope, globals);
90
90
  const result = await (await scope.compartment).import(moduleUrl);
91
91
  return result.namespace;
92
- } // else use standard node:vm module to do containment
93
- return await loadModuleWithVM(moduleUrl, scope);
94
- } else {
95
- // important! we need to await the import, otherwise the error will not be caught
96
- return await import(moduleUrl);
92
+ } else if (SourceTextModule) {
93
+ // else use standard node:vm module to do containment (if it is available)
94
+ return await loadModuleWithVM(moduleUrl, scope);
95
+ }
97
96
  }
97
+ // important! we need to await the import, otherwise the error will not be caught
98
+ return await import(moduleUrl);
98
99
  } catch (err) {
99
100
  try {
100
101
  // the actual parse error (internally known as the "arrow message")
@@ -110,6 +111,17 @@ export async function scopedImport(filePath: string | URL, scope?: ApplicationSc
110
111
  }
111
112
  }
112
113
 
114
+ let amaro: typeof import('amaro') | undefined;
115
+ /**
116
+ * Strip TypeScript types using the amaro library (what Node.js uses internally)
117
+ * Falls back to regex-based stripping if amaro is not available
118
+ */
119
+ async function stripTypeScriptTypes(source: string): Promise<string> {
120
+ // Use amaro - the library that Node.js uses internally for type stripping
121
+ amaro = await import('amaro');
122
+ return amaro.transformSync(source, { mode: 'strip-only' }).code;
123
+ }
124
+
113
125
  /**
114
126
  * Load a module using Node's vm.Module API with (not really secure) sandboxing
115
127
  */
@@ -278,7 +290,12 @@ async function loadModuleWithVM(moduleUrl: string, scope: ApplicationScope) {
278
290
  } else if (url.startsWith('file://')) {
279
291
  checkAllowedModulePath(url, scope.verifyPath);
280
292
  // Load source text from file
281
- const source = await readFile(new URL(url), { encoding: 'utf-8' });
293
+ let source = await readFile(new URL(url), { encoding: 'utf-8' });
294
+
295
+ // Strip TypeScript types if this is a .ts file
296
+ if (url.endsWith('.ts') || url.endsWith('.tsx')) {
297
+ source = await stripTypeScriptTypes(source);
298
+ }
282
299
 
283
300
  // Try to parse as ESM first
284
301
  try {
@@ -459,7 +459,7 @@ async function getCertAuthority() {
459
459
  let match;
460
460
  for (let cert of allCerts) {
461
461
  if (!cert.is_authority) continue;
462
- const matchingPrivateKey = await getPrivateKeyByName(cert.private_key_name);
462
+ const matchingPrivateKey = getPrivateKeyByName(cert.private_key_name);
463
463
  if (cert.private_key_name && matchingPrivateKey) {
464
464
  const keyCheck = new X509Certificate(cert.certificate).checkPrivateKey(createPrivateKey(matchingPrivateKey));
465
465
  if (keyCheck) {
@@ -724,7 +724,7 @@ function createTLSSelector(type, mtlsOptions) {
724
724
  server.secureContextsListeners = [];
725
725
  }
726
726
  return (SNICallback.ready = new Promise((resolve, reject) => {
727
- async function updateTLS() {
727
+ function updateTLS() {
728
728
  try {
729
729
  secureContexts.clear();
730
730
  caCerts.clear();
@@ -733,7 +733,7 @@ function createTLSSelector(type, mtlsOptions) {
733
733
  resolve();
734
734
  return;
735
735
  }
736
- for await (const cert of databases.system.hdb_certificate.search([])) {
736
+ for (const cert of databases.system.hdb_certificate.search([])) {
737
737
  const certificate = cert.certificate;
738
738
  const certParsed = new X509Certificate(certificate);
739
739
  if (cert.is_authority) {
@@ -742,7 +742,7 @@ function createTLSSelector(type, mtlsOptions) {
742
742
  }
743
743
  }
744
744
 
745
- for await (const cert of databases.system.hdb_certificate.search([])) {
745
+ for (const cert of databases.system.hdb_certificate.search([])) {
746
746
  try {
747
747
  if (cert.is_authority) {
748
748
  continue;
@@ -751,7 +751,7 @@ function createTLSSelector(type, mtlsOptions) {
751
751
  // prefer operations certificates for operations API
752
752
  if (cert.uses?.includes(type)) quality += 1;
753
753
 
754
- const private_key = await getPrivateKeyByName(cert.private_key_name);
754
+ const private_key = getPrivateKeyByName(cert.private_key_name);
755
755
 
756
756
  let certificate = cert.certificate;
757
757
  const certParsed = new X509Certificate(certificate);
@@ -875,10 +875,10 @@ function createTLSSelector(type, mtlsOptions) {
875
875
  }
876
876
  }
877
877
 
878
- async function getPrivateKeyByName(private_key_name) {
878
+ function getPrivateKeyByName(private_key_name) {
879
879
  const private_key = privateKeys.get(private_key_name);
880
880
  if (!private_key && private_key_name) {
881
- return await fs.readFile(
881
+ return fs.readFileSync(
882
882
  path.join(envManager.get(CONFIG_PARAMS.ROOTPATH), hdbTerms.LICENSE_KEY_DIR_NAME, private_key_name),
883
883
  'utf8'
884
884
  );
@@ -339,7 +339,9 @@ function onMessageByType(type, listener) {
339
339
  listeners.push(listener);
340
340
  if (messagesQueuedByType.has(type)) {
341
341
  for (let message of messagesQueuedByType.get(type)) {
342
- listener(message);
342
+ // enqueue in next event turn; messages always come as events, and trying to do this synchronously can be
343
+ // problematic for getting mixed up with module loading
344
+ setImmediate(() => listener(message));
343
345
  }
344
346
  messagesQueuedByType.delete(type);
345
347
  }
@@ -0,0 +1,2 @@
1
+ import type { Resource } from 'harper';
2
+ export const isTyped: Resource = {}!;
@@ -21,6 +21,9 @@ export const testExport = {
21
21
  let _a = MyComponent;
22
22
  return 'hello world';
23
23
  },
24
+ async testLoadTypeScript() {
25
+ return await import('./child-dir/typestrip.ts');
26
+ },
24
27
  };
25
28
  export class TestComponent extends Resource {}
26
29
 
@@ -67,6 +67,7 @@ describe('Global Variable Isolation in testJSWithDeps', function () {
67
67
 
68
68
  // verify the exported resource works
69
69
  assert.equal(mockResources.get('/testExport').get(), 'hello world');
70
+ assert((await mockResources.get('/testExport').testLoadTypeScript()).isTyped, 'TypeScript exports');
70
71
  assert.equal(typeof mockResources.get('/TestComponent').get, 'function');
71
72
  assert.equal(typeof mockResources.get('/my-component').get, 'function');
72
73
  });
@@ -199,6 +199,20 @@ describe('Querying through Resource API', () => {
199
199
  }
200
200
  assert.equal(results.length, 1);
201
201
  });
202
+ it('Ensure that we are yielding when querying data in a table', async function () {
203
+ let results = [];
204
+ let yielded = false;
205
+ setImmediate(() => {
206
+ yielded = true;
207
+ });
208
+ for await (let record of QueryTable.search({
209
+ conditions: [{ attribute: 'id', comparator: 'less_than_equal', value: 'id-3' }],
210
+ })) {
211
+ results.push(record);
212
+ }
213
+ assert(yielded);
214
+ assert.equal(results.length, 24);
215
+ });
202
216
  it('Query data in a table with non-indexed property', async function () {
203
217
  let results = [];
204
218
  for await (let record of QueryTable.search({
@@ -342,7 +356,8 @@ describe('Querying through Resource API', () => {
342
356
 
343
357
  it('Query relational data in a table with many-to-one', async function () {
344
358
  let results = [];
345
- for await (let record of QueryTable.search({
359
+ // do this test with sync iteration to verify it is possible
360
+ for (let record of QueryTable.search({
346
361
  conditions: [{ attribute: 'id', value: 'id-1' }],
347
362
  select: ['id', 'related', 'name'],
348
363
  })) {
@@ -58,28 +58,39 @@ function convertKeyValueToWrite(key) {
58
58
  * Return all the indexable values from an attribute, ready to be indexed
59
59
  */
60
60
  function getIndexedValues(value, indexNulls) {
61
- if (value === null) return indexNulls ? [null] : undefined;
62
- if (value === undefined) return;
61
+ if (value === null) {
62
+ return indexNulls ? [null] : undefined;
63
+ }
64
+ if (value === undefined) {
65
+ return undefined;
66
+ }
63
67
  if (PRIMITIVES.includes(typeof value)) {
64
68
  if (value.length > MAX_SEARCH_KEY_LENGTH) {
65
69
  return [value.slice(0, MAX_SEARCH_KEY_LENGTH) + OVERFLOW_MARKER];
66
70
  }
67
71
  return [value];
68
72
  }
69
- let values;
70
73
  if (Array.isArray(value)) {
71
- values = [];
74
+ const values = [];
72
75
  for (let i = 0, l = value.length; i < l; i++) {
73
76
  let element = value[i];
74
77
  if (PRIMITIVES.includes(typeof element)) {
75
- if (element.length > MAX_SEARCH_KEY_LENGTH)
78
+ if (element.length > MAX_SEARCH_KEY_LENGTH) {
76
79
  values.push(element.slice(0, MAX_SEARCH_KEY_LENGTH) + OVERFLOW_MARKER);
77
- else values.push(element);
78
- } else if (element === null && indexNulls) return values.push(null);
79
- else if (element instanceof Date) return values.push(element.getTime());
80
+ } else {
81
+ values.push(element);
82
+ }
83
+ } else if (element === null && indexNulls) {
84
+ values.push(null);
85
+ } else if (element instanceof Date) {
86
+ values.push(element.getTime());
87
+ }
80
88
  }
81
- } else if (value instanceof Date) return [value.getTime()];
82
- return values;
89
+ return values;
90
+ } else if (value instanceof Date) {
91
+ return [value.getTime()];
92
+ }
93
+ return undefined;
83
94
  }
84
95
 
85
96
  let lastTime = 0; // reported time used to ensure monotonic time.
@@ -476,7 +476,7 @@ async function loadComponent(componentDirectory, resources, origin, options = {}
476
476
  return loadComponentDirectories(); // return the promise
477
477
  });
478
478
  }
479
- if (config.extensionModule || config.pluginModule) {
479
+ if ((config.extensionModule || config.pluginModule) && (!node_worker_threads_1.isMainThread || config.runOnMainThread)) {
480
480
  const extensionModule = await (0, jsLoader_ts_1.scopedImport)((0, node_path_1.join)(componentDirectory, config.extensionModule || config.pluginModule), applicationScope);
481
481
  exports.loadedPaths.set(resolvedFolder, extensionModule);
482
482
  return extensionModule;
@@ -1 +1 @@
1
- {"version":3,"file":"componentLoader.js","sourceRoot":"","sources":["../../../core/components/componentLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"componentLoader.js","sourceRoot":"","sources":["../../../core/components/componentLoader.ts"],"names":[],"mappings":"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"}
@@ -2063,9 +2063,9 @@ function makeTable(options) {
2063
2063
  entries = transformToEntries(entries, select, context, readTxn, null);
2064
2064
  let ordered;
2065
2065
  // if we are doing post-ordering, we need to get records first, then sort them
2066
- results.iterate = function () {
2066
+ results.iterate = function (options) {
2067
2067
  let sortedArrayIterator;
2068
- const dbIterator = entries[Symbol.asyncIterator]
2068
+ const dbIterator = options?.async && entries[Symbol.asyncIterator]
2069
2069
  ? entries[Symbol.asyncIterator]()
2070
2070
  : entries[Symbol.iterator]();
2071
2071
  let dbDone;
@@ -2198,7 +2198,12 @@ function makeTable(options) {
2198
2198
  applySortingOnSelect(sort);
2199
2199
  }
2200
2200
  else {
2201
- results.iterate = (entries[Symbol.asyncIterator] || entries[Symbol.iterator]).bind(entries);
2201
+ results.iterate = (options) => {
2202
+ if (options?.async && entries[Symbol.asyncIterator])
2203
+ return entries[Symbol.asyncIterator]();
2204
+ else
2205
+ return entries[Symbol.iterator]();
2206
+ };
2202
2207
  results = results.map(function (entry) {
2203
2208
  try {
2204
2209
  // because this is a part of a stream of results, we will often be continuing to iterate over the results when there are errors,