@gravito/stream 2.0.2 → 2.1.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 (81) hide show
  1. package/README.md +27 -1
  2. package/dist/BatchConsumer.d.ts +81 -0
  3. package/dist/Consumer.d.ts +215 -0
  4. package/dist/DashboardProvider.d.ts +20 -0
  5. package/dist/Job.d.ts +183 -0
  6. package/dist/OrbitStream.d.ts +151 -0
  7. package/dist/QueueManager.d.ts +319 -0
  8. package/dist/Queueable.d.ts +91 -0
  9. package/dist/Scheduler.d.ts +214 -0
  10. package/dist/StreamEventBackend.d.ts +114 -0
  11. package/dist/SystemEventJob.d.ts +33 -0
  12. package/dist/Worker.d.ts +139 -0
  13. package/dist/benchmarks/PerformanceReporter.d.ts +99 -0
  14. package/dist/consumer/ConcurrencyGate.d.ts +55 -0
  15. package/dist/consumer/ConsumerStrategy.d.ts +41 -0
  16. package/dist/consumer/GroupSequencer.d.ts +57 -0
  17. package/dist/consumer/HeartbeatManager.d.ts +65 -0
  18. package/dist/consumer/JobExecutor.d.ts +61 -0
  19. package/dist/consumer/JobSourceGenerator.d.ts +31 -0
  20. package/dist/consumer/PollingStrategy.d.ts +42 -0
  21. package/dist/consumer/ReactiveStrategy.d.ts +41 -0
  22. package/dist/consumer/StreamingConsumer.d.ts +88 -0
  23. package/dist/consumer/index.d.ts +13 -0
  24. package/dist/consumer/types.d.ts +102 -0
  25. package/dist/drivers/BinaryJobFrame.d.ts +78 -0
  26. package/dist/drivers/BullMQDriver.d.ts +186 -0
  27. package/dist/drivers/DatabaseDriver.d.ts +131 -0
  28. package/dist/drivers/GrpcDriver.d.ts +16 -0
  29. package/dist/drivers/KafkaDriver.d.ts +148 -0
  30. package/dist/drivers/MemoryDriver.d.ts +108 -0
  31. package/dist/drivers/QueueDriver.d.ts +250 -0
  32. package/dist/drivers/RabbitMQDriver.d.ts +102 -0
  33. package/dist/drivers/RedisDriver.d.ts +294 -0
  34. package/dist/drivers/SQSDriver.d.ts +111 -0
  35. package/dist/drivers/kafka/BackpressureController.d.ts +60 -0
  36. package/dist/drivers/kafka/BatchProcessor.d.ts +50 -0
  37. package/dist/drivers/kafka/ConsumerLifecycleManager.d.ts +80 -0
  38. package/dist/drivers/kafka/ErrorCategorizer.d.ts +39 -0
  39. package/dist/drivers/kafka/ErrorRecoveryManager.d.ts +100 -0
  40. package/dist/drivers/kafka/HeartbeatManager.d.ts +57 -0
  41. package/dist/drivers/kafka/KafkaDriver.d.ts +138 -0
  42. package/dist/drivers/kafka/KafkaMetrics.d.ts +88 -0
  43. package/dist/drivers/kafka/KafkaNotifier.d.ts +54 -0
  44. package/dist/drivers/kafka/MessageBuffer.d.ts +71 -0
  45. package/dist/drivers/kafka/OffsetTracker.d.ts +63 -0
  46. package/dist/drivers/kafka/PerformanceMonitor.d.ts +88 -0
  47. package/dist/drivers/kafka/RateLimiter.d.ts +52 -0
  48. package/dist/drivers/kafka/RebalanceHandler.d.ts +104 -0
  49. package/dist/drivers/kafka/RingBuffer.d.ts +63 -0
  50. package/dist/drivers/kafka/index.d.ts +22 -0
  51. package/dist/drivers/kafka/types.d.ts +553 -0
  52. package/dist/drivers/prepareJobForTransport.d.ts +10 -0
  53. package/dist/index.cjs +5644 -5508
  54. package/dist/index.cjs.map +71 -0
  55. package/dist/index.d.ts +60 -4378
  56. package/dist/index.js +5609 -5453
  57. package/dist/index.js.map +71 -0
  58. package/dist/locks/DistributedLock.d.ts +175 -0
  59. package/dist/persistence/BufferedPersistence.d.ts +130 -0
  60. package/dist/persistence/BunBufferedPersistence.d.ts +173 -0
  61. package/dist/persistence/MySQLPersistence.d.ts +134 -0
  62. package/dist/persistence/SQLitePersistence.d.ts +133 -0
  63. package/dist/serializers/BinarySerializer.d.ts +42 -0
  64. package/dist/serializers/CachedSerializer.d.ts +38 -0
  65. package/dist/serializers/CborNativeSerializer.d.ts +56 -0
  66. package/dist/serializers/ClassNameSerializer.d.ts +58 -0
  67. package/dist/serializers/JobSerializer.d.ts +33 -0
  68. package/dist/serializers/JsonSerializer.d.ts +28 -0
  69. package/dist/serializers/JsonlSerializer.d.ts +90 -0
  70. package/dist/serializers/MessagePackSerializer.d.ts +29 -0
  71. package/dist/types.d.ts +653 -0
  72. package/dist/workers/BinaryWorkerProtocol.d.ts +77 -0
  73. package/dist/workers/BunWorker.d.ts +179 -0
  74. package/dist/workers/SandboxedWorker.d.ts +132 -0
  75. package/dist/workers/WorkerFactory.d.ts +128 -0
  76. package/dist/workers/WorkerPool.d.ts +186 -0
  77. package/dist/workers/bun-job-executor.d.ts +14 -0
  78. package/dist/workers/index.d.ts +13 -0
  79. package/dist/workers/job-executor.d.ts +9 -0
  80. package/package.json +6 -4
  81. package/dist/index.d.cts +0 -4387
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Bun Worker Execution Script.
3
+ *
4
+ * Runs inside a dedicated Bun Worker Thread. Receives serialized jobs,
5
+ * deserializes them, executes logic, and reports results back to the main thread.
6
+ *
7
+ * Key differences from Node.js version:
8
+ * - Uses `self.onmessage` instead of `parentPort.on()`
9
+ * - Native TypeScript support (no loader needed)
10
+ * - Optimized message passing with fast path for strings
11
+ *
12
+ * @internal
13
+ */
14
+ export {};
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Workers module
3
+ *
4
+ * 提供 Sandboxed Worker 和 Worker Pool 功能,用於在隔離的 Worker Thread 中執行 Job。
5
+ * 支持 Node.js Worker Threads 和 Bun Workers,具有自動運行時檢測。
6
+ *
7
+ * @module workers
8
+ */
9
+ export { BINARY_PROTOCOL_VERSION, type BinaryWorkerMessage, decodeJobFromTransfer, encodeJobForTransfer, } from './BinaryWorkerProtocol';
10
+ export { BunWorker, type BunWorkerConfig } from './BunWorker';
11
+ export { SandboxedWorker, type SandboxedWorkerConfig } from './SandboxedWorker';
12
+ export { createWorkerFactory, type IWorkerFactory, RuntimeAwareWorkerFactory, type RuntimeEnvironment, type Worker as FactoryWorker, type WorkerConfig, } from './WorkerFactory';
13
+ export { WorkerPool, type WorkerPoolConfig, type WorkerPoolStats } from './WorkerPool';
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Worker Thread Execution Script.
3
+ *
4
+ * Runs inside a dedicated Worker Thread. Receives serialized jobs,
5
+ * deserializes them, executes logic, and reports results back to the main thread.
6
+ *
7
+ * @internal
8
+ */
9
+ export {};
package/package.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "@gravito/stream",
3
- "version": "2.0.2",
3
+ "sideEffects": false,
4
+ "version": "2.1.0",
4
5
  "publishConfig": {
5
6
  "access": "public"
6
7
  },
@@ -24,6 +25,7 @@
24
25
  ],
25
26
  "scripts": {
26
27
  "build": "bun run build.ts",
28
+ "build:dts": "bun run build.ts --dts-only",
27
29
  "test": "bun test --timeout=10000",
28
30
  "typecheck": "bun tsc -p tsconfig.json --noEmit --skipLibCheck",
29
31
  "test:coverage": "bun test --timeout=10000 --coverage --coverage-reporter=lcov --coverage-dir coverage && bun run --bun scripts/check-coverage.ts",
@@ -45,10 +47,11 @@
45
47
  "license": "MIT",
46
48
  "dependencies": {
47
49
  "@aws-sdk/client-sqs": "^3.955.0",
48
- "@gravito/atlas": "^1.6.0",
49
- "@gravito/core": "^1.6.1",
50
+ "@gravito/atlas": "workspace:*",
51
+ "@gravito/core": "workspace:*",
50
52
  "@grpc/grpc-js": "^1.14.3",
51
53
  "@grpc/proto-loader": "^0.8.0",
54
+ "cborg": "^4.5.8",
52
55
  "cron-parser": "^5.4.0",
53
56
  "p-limit": "^5.0.0"
54
57
  },
@@ -57,7 +60,6 @@
57
60
  "bun-types": "latest",
58
61
  "ioredis": "^5.9.2",
59
62
  "mitata": "^1.0.34",
60
- "tsup": "^8.5.1",
61
63
  "typescript": "^5.9.3"
62
64
  },
63
65
  "homepage": "https://github.com/gravito-framework/gravito#readme",