@crawlee/memory-storage 3.4.3-beta.9 → 3.5.1-beta.0

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 (56) hide show
  1. package/background-handler/fs-utils.d.ts +4 -0
  2. package/background-handler/fs-utils.d.ts.map +1 -0
  3. package/{workers/worker-utils.js → background-handler/fs-utils.js} +3 -8
  4. package/background-handler/fs-utils.js.map +1 -0
  5. package/background-handler/index.d.ts +12 -0
  6. package/background-handler/index.d.ts.map +1 -0
  7. package/background-handler/index.js +33 -0
  8. package/background-handler/index.js.map +1 -0
  9. package/fs/dataset/fs.js +2 -2
  10. package/fs/dataset/fs.js.map +1 -1
  11. package/fs/key-value-store/fs.d.ts.map +1 -1
  12. package/fs/key-value-store/fs.js +3 -3
  13. package/fs/key-value-store/fs.js.map +1 -1
  14. package/fs/request-queue/fs.d.ts.map +1 -1
  15. package/fs/request-queue/fs.js +2 -2
  16. package/fs/request-queue/fs.js.map +1 -1
  17. package/memory-storage.d.ts.map +1 -1
  18. package/memory-storage.js +2 -3
  19. package/memory-storage.js.map +1 -1
  20. package/package.json +3 -3
  21. package/resource-clients/dataset-collection.d.ts.map +1 -1
  22. package/resource-clients/dataset-collection.js +2 -2
  23. package/resource-clients/dataset-collection.js.map +1 -1
  24. package/resource-clients/dataset.d.ts.map +1 -1
  25. package/resource-clients/dataset.js +2 -2
  26. package/resource-clients/dataset.js.map +1 -1
  27. package/resource-clients/key-value-store-collection.d.ts.map +1 -1
  28. package/resource-clients/key-value-store-collection.js +2 -2
  29. package/resource-clients/key-value-store-collection.js.map +1 -1
  30. package/resource-clients/key-value-store.d.ts.map +1 -1
  31. package/resource-clients/key-value-store.js +2 -2
  32. package/resource-clients/key-value-store.js.map +1 -1
  33. package/resource-clients/request-queue-collection.d.ts.map +1 -1
  34. package/resource-clients/request-queue-collection.js +2 -2
  35. package/resource-clients/request-queue-collection.js.map +1 -1
  36. package/resource-clients/request-queue.d.ts.map +1 -1
  37. package/resource-clients/request-queue.js +2 -2
  38. package/resource-clients/request-queue.js.map +1 -1
  39. package/tsconfig.build.tsbuildinfo +1 -1
  40. package/utils.d.ts +2 -7
  41. package/utils.d.ts.map +1 -1
  42. package/workers/file-storage-worker-emulator.d.ts +0 -6
  43. package/workers/file-storage-worker-emulator.d.ts.map +0 -1
  44. package/workers/file-storage-worker-emulator.js +0 -16
  45. package/workers/file-storage-worker-emulator.js.map +0 -1
  46. package/workers/file-storage-worker.d.ts +0 -2
  47. package/workers/file-storage-worker.d.ts.map +0 -1
  48. package/workers/file-storage-worker.js +0 -15
  49. package/workers/file-storage-worker.js.map +0 -1
  50. package/workers/instance.d.ts +0 -8
  51. package/workers/instance.d.ts.map +0 -1
  52. package/workers/instance.js +0 -58
  53. package/workers/instance.js.map +0 -1
  54. package/workers/worker-utils.d.ts +0 -6
  55. package/workers/worker-utils.d.ts.map +0 -1
  56. package/workers/worker-utils.js.map +0 -1
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FileStorageWorkerEmulator = void 0;
4
- const instance_1 = require("./instance");
5
- const worker_utils_1 = require("./worker-utils");
6
- class FileStorageWorkerEmulator {
7
- async postMessage(value) {
8
- await (0, worker_utils_1.handleMessage)(value);
9
- instance_1.promiseMap.get(value.messageId)?.resolve();
10
- instance_1.promiseMap.delete(value.messageId);
11
- }
12
- terminate() { }
13
- unref() { }
14
- }
15
- exports.FileStorageWorkerEmulator = FileStorageWorkerEmulator;
16
- //# sourceMappingURL=file-storage-worker-emulator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-storage-worker-emulator.js","sourceRoot":"","sources":["../../src/workers/file-storage-worker-emulator.ts"],"names":[],"mappings":";;;AAAA,yCAAwC;AACxC,iDAA+C;AAE/C,MAAa,yBAAyB;IAClC,KAAK,CAAC,WAAW,CAAC,KAAU;QACxB,MAAM,IAAA,4BAAa,EAAC,KAAK,CAAC,CAAC;QAE3B,qBAAU,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;QAC3C,qBAAU,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED,SAAS,KAAU,CAAC;IAEpB,KAAK,KAAU,CAAC;CACnB;AAXD,8DAWC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=file-storage-worker.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-storage-worker.d.ts","sourceRoot":"","sources":["../../src/workers/file-storage-worker.ts"],"names":[],"mappings":""}
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const node_worker_threads_1 = require("node:worker_threads");
4
- const worker_utils_1 = require("./worker-utils");
5
- if (node_worker_threads_1.isMainThread || !node_worker_threads_1.parentPort) {
6
- throw new Error('This file should only be run in a worker thread!');
7
- }
8
- // Keep worker alive
9
- setInterval(() => {
10
- node_worker_threads_1.parentPort.postMessage('ping');
11
- }, 30000);
12
- node_worker_threads_1.parentPort.on('message', async (message) => {
13
- await (0, worker_utils_1.handleMessage)(message);
14
- });
15
- //# sourceMappingURL=file-storage-worker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-storage-worker.js","sourceRoot":"","sources":["../../src/workers/file-storage-worker.ts"],"names":[],"mappings":";;AAAA,6DAA+D;AAE/D,iDAA+C;AAG/C,IAAI,kCAAY,IAAI,CAAC,gCAAU,EAAE;IAC7B,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;CACvE;AAED,oBAAoB;AACpB,WAAW,CAAC,GAAG,EAAE;IACb,gCAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC,EAAE,KAAM,CAAC,CAAC;AAEX,gCAAW,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,OAAsD,EAAE,EAAE;IACvF,MAAM,IAAA,4BAAa,EAAC,OAAO,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC"}
@@ -1,8 +0,0 @@
1
- import type { WorkerReceivedMessage } from '../utils';
2
- export declare const promiseMap: Map<string, {
3
- promise: Promise<void>;
4
- resolve: () => void;
5
- }>;
6
- export declare function sendWorkerMessage(message: WorkerReceivedMessage): void;
7
- export declare function initWorkerIfNeeded(): void;
8
- //# sourceMappingURL=instance.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"instance.d.ts","sourceRoot":"","sources":["../../src/workers/instance.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAKtD,eAAO,MAAM,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE;IACjC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB,CAAa,CAAC;AAEf,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,QAiB/D;AAED,wBAAgB,kBAAkB,SAkCjC"}
@@ -1,58 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.initWorkerIfNeeded = exports.sendWorkerMessage = exports.promiseMap = void 0;
4
- const node_crypto_1 = require("node:crypto");
5
- const node_path_1 = require("node:path");
6
- const node_worker_threads_1 = require("node:worker_threads");
7
- const file_storage_worker_emulator_1 = require("./file-storage-worker-emulator");
8
- const utils_1 = require("../utils");
9
- let workerInstance;
10
- exports.promiseMap = new Map();
11
- function sendWorkerMessage(message) {
12
- const id = (0, node_crypto_1.randomUUID)();
13
- let promiseResolve;
14
- const promise = new Promise((res) => {
15
- promiseResolve = res;
16
- });
17
- exports.promiseMap.set(id, {
18
- promise,
19
- resolve: promiseResolve,
20
- });
21
- void workerInstance.postMessage({
22
- ...message,
23
- messageId: id,
24
- });
25
- }
26
- exports.sendWorkerMessage = sendWorkerMessage;
27
- function initWorkerIfNeeded() {
28
- if (workerInstance) {
29
- return;
30
- }
31
- process.on('exit', () => {
32
- void workerInstance.terminate();
33
- });
34
- const workerPath = (0, node_path_1.resolve)(__dirname, './file-storage-worker.js');
35
- // vladfrangu: The worker is temporarily disabled due to node/v8 having internal bugs that sometimes cause hard crashes when the process exits.
36
- // const exists = existsSync(workerPath);
37
- const exists = false;
38
- if (exists) {
39
- workerInstance = new node_worker_threads_1.Worker(workerPath);
40
- workerInstance.unref();
41
- workerInstance.once('exit', (code) => {
42
- utils_1.memoryStorageLog.debug(`File storage worker exited with code ${code}`);
43
- initWorkerIfNeeded();
44
- });
45
- workerInstance.on('message', (message) => {
46
- if (message.type !== 'ack') {
47
- return;
48
- }
49
- exports.promiseMap.get(message.messageId)?.resolve();
50
- exports.promiseMap.delete(message.messageId);
51
- });
52
- }
53
- else {
54
- workerInstance = new file_storage_worker_emulator_1.FileStorageWorkerEmulator();
55
- }
56
- }
57
- exports.initWorkerIfNeeded = initWorkerIfNeeded;
58
- //# sourceMappingURL=instance.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"instance.js","sourceRoot":"","sources":["../../src/workers/instance.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AACzC,yCAAoC;AACpC,6DAA6C;AAE7C,iFAA2E;AAE3E,oCAA4C;AAE5C,IAAI,cAAkD,CAAC;AAE1C,QAAA,UAAU,GAGlB,IAAI,GAAG,EAAE,CAAC;AAEf,SAAgB,iBAAiB,CAAC,OAA8B;IAC5D,MAAM,EAAE,GAAG,IAAA,wBAAU,GAAE,CAAC;IAExB,IAAI,cAA0B,CAAC;IAC/B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAO,CAAC,GAAG,EAAE,EAAE;QACtC,cAAc,GAAG,GAAG,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,kBAAU,CAAC,GAAG,CAAC,EAAE,EAAE;QACf,OAAO;QACP,OAAO,EAAE,cAAe;KAC3B,CAAC,CAAC;IAEH,KAAK,cAAc,CAAC,WAAW,CAAC;QAC5B,GAAG,OAAO;QACV,SAAS,EAAE,EAAE;KAChB,CAAC,CAAC;AACP,CAAC;AAjBD,8CAiBC;AAED,SAAgB,kBAAkB;IAC9B,IAAI,cAAc,EAAE;QAChB,OAAO;KACV;IAED,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;QACpB,KAAK,cAAc,CAAC,SAAS,EAAE,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,IAAA,mBAAO,EAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;IAClE,+IAA+I;IAC/I,yCAAyC;IACzC,MAAM,MAAM,GAAG,KAAK,CAAC;IAErB,IAAI,MAAM,EAAE;QACR,cAAc,GAAG,IAAI,4BAAM,CAAC,UAAU,CAAC,CAAC;QACxC,cAAc,CAAC,KAAK,EAAE,CAAC;QAEtB,cAAyB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAC7C,wBAAgB,CAAC,KAAK,CAAC,wCAAwC,IAAI,EAAE,CAAC,CAAC;YACvE,kBAAkB,EAAE,CAAC;QACzB,CAAC,CAAC,CAAC;QAEF,cAAyB,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAA2C,EAAE,EAAE;YACrF,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE;gBACxB,OAAO;aACV;YAED,kBAAU,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;YAC7C,kBAAU,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;KACN;SAAM;QACH,cAAc,GAAG,IAAI,wDAAyB,EAAE,CAAC;KACpD;AACL,CAAC;AAlCD,gDAkCC"}
@@ -1,6 +0,0 @@
1
- import type { WorkerReceivedMessage } from '../utils';
2
- export declare function handleMessage(message: WorkerReceivedMessage & {
3
- messageId: string;
4
- }): Promise<void>;
5
- export declare function lockAndWrite(filePath: string, data: unknown, stringify?: boolean, retry?: number, timeout?: number): Promise<void>;
6
- //# sourceMappingURL=worker-utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-utils.d.ts","sourceRoot":"","sources":["../../src/workers/worker-utils.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,qBAAqB,EAA+B,MAAM,UAAU,CAAC;AAInF,wBAAsB,aAAa,CAAC,OAAO,EAAE,qBAAqB,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,iBAezF;AAiBD,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,UAAO,EAAE,KAAK,SAAK,EAAE,OAAO,SAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAmB7H"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker-utils.js","sourceRoot":"","sources":["../../src/workers/worker-utils.ts"],"names":[],"mappings":";;;;AAAA,qCAAoC;AACpC,+CAA2D;AAC3D,yCAAoC;AACpC,mDAAkD;AAClD,6DAAiD;AAEjD,6DAA6B;AAC7B,uCAAqC;AACrC,qDAAuC;AAIvC,MAAM,SAAS,GAAG,aAAG,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC,CAAC;AAExD,KAAK,UAAU,aAAa,CAAC,OAAsD;IACtF,QAAQ,OAAO,CAAC,MAAM,EAAE;QACpB,KAAK,iBAAiB;YAClB,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC;YAC9B,MAAM;QACV;YACI,0GAA0G;YAC1G,6BAA6B;YAC7B,SAAS,CAAC,OAAO,CAAC,iCAAkC,OAAiC,CAAC,MAAM,EAAE,CAAC,CAAC;KACvG;IAED,gCAAU,EAAE,WAAW,CAAC;QACpB,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,OAAO,CAAC,SAAS;KAC/B,CAAC,CAAC;AACP,CAAC;AAfD,sCAeC;AAED,KAAK,UAAU,cAAc,CAAC,OAAoC;IAC9D,2HAA2H;IAC3H,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;QACxB,OAAO;KACV;IAED,6CAA6C;IAC7C,MAAM,GAAG,GAAG,OAAO,CAAC,eAAe,CAAC;IACpC,MAAM,IAAA,oBAAS,EAAC,GAAG,CAAC,CAAC;IAErB,iCAAiC;IACjC,MAAM,QAAQ,GAAG,IAAA,mBAAO,EAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IACnD,MAAM,IAAA,oBAAU,EAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AACzE,CAAC;AAEM,KAAK,UAAU,YAAY,CAAC,QAAgB,EAAE,IAAa,EAAE,SAAS,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE,EAAE,OAAO,GAAG,EAAE;IAC1G,IAAI;QACA,MAAM,OAAO,GAAG,MAAM,IAAA,sBAAI,EAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1D,MAAM,IAAI,OAAO,CAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;YACzC,IAAA,mBAAS,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAc,EAAE,CAAC,GAAG,EAAE,EAAE;gBACvF,IAAI,GAAG,EAAE;oBACL,MAAM,CAAC,GAAG,CAAC,CAAC;iBACf;qBAAM;oBACH,QAAQ,EAAE,CAAC;iBACd;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,EAAE,CAAC;KACnB;IAAC,OAAO,CAAM,EAAE;QACb,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,GAAG,CAAC,EAAE;YACnC,MAAM,IAAA,qBAAU,EAAC,OAAO,CAAC,CAAC;YAC1B,OAAO,YAAY,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;SAC1E;KACJ;AACL,CAAC;AAnBD,oCAmBC"}