opinionated-machine 11.2.0 → 12.0.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # opinionated-machine
2
2
 
3
+ ## 12.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - 6f7018e: `asMessageQueueHandlerClass` and `asEnqueuedJobWorkerClass` now start consumers and workers concurrently with the other inits of their `asyncInitPriority`, using awilix-manager's `concurrent` option. A concurrent init overlaps every init of the same priority that comes after it in key order, so a dependency that has to wait for a consumer or worker (for example a publisher that locates the queue a consumer creates) needs a higher `asyncInitPriority`. Pass `asyncInit: 'start'` in `opts` to start a consumer or worker without the flag.
8
+
9
+ The `awilix-manager` peer dependency is raised to `>=7.1.0`: versions 6.3.0 to 7.0.x ignore the flag and start sequentially, and versions before 6.3.0 fail at startup with `Method [object Object] for asyncInit does not exist`. The same floor applies to the copy that runs the inits when an `AwilixManager` built by `@fastify/awilix` is passed to `DIContext`, since `@fastify/awilix` depends on `awilix-manager` directly.
10
+
3
11
  ## 11.2.0
4
12
 
5
13
  ### Minor Changes
package/README.md CHANGED
@@ -668,7 +668,7 @@ resolveControllers(diOptions: DependencyInjectionOptions) {
668
668
  ### Message Queue Resolvers
669
669
 
670
670
  #### `asMessageQueueHandlerClass(Type, mqOptions, opts?)`
671
- For message queue consumers following `message-queue-toolkit` conventions. Automatically handles `start`/`close` lifecycle and respects `messageQueueConsumersEnabled` option.
671
+ For message queue consumers following `message-queue-toolkit` conventions. Automatically handles `start`/`close` lifecycle and respects `messageQueueConsumersEnabled` option. Consumers start concurrently with the other inits of their `asyncInitPriority` (see awilix-manager's `concurrent` option), so anything that needs a consumer to have started must use a higher `asyncInitPriority`. Pass `asyncInit: 'start'` in `opts` to start one without the `concurrent` flag. Requires `awilix-manager` 7.1.0 or later, including the copy used by `@fastify/awilix` when its `AwilixManager` is passed to `DIContext`.
672
672
 
673
673
  ```ts
674
674
  messageQueueConsumer: asMessageQueueHandlerClass(MessageQueueConsumer, {
@@ -680,7 +680,7 @@ messageQueueConsumer: asMessageQueueHandlerClass(MessageQueueConsumer, {
680
680
  ### Background Job Resolvers
681
681
 
682
682
  #### `asEnqueuedJobWorkerClass(Type, workerOptions, opts?)`
683
- For enqueued job workers following `background-jobs-common` conventions. Automatically handles `start`/`dispose` lifecycle and respects `enqueuedJobWorkersEnabled` option.
683
+ For enqueued job workers following `background-jobs-common` conventions. Automatically handles `start`/`dispose` lifecycle and respects `enqueuedJobWorkersEnabled` option. Workers start concurrently with the other inits of their `asyncInitPriority`, like message queue consumers. Pass `asyncInit: 'start'` in `opts` to start one without the `concurrent` flag.
684
684
 
685
685
  ```ts
686
686
  jobWorker: asEnqueuedJobWorkerClass(JobWorker, {
@@ -690,7 +690,7 @@ jobWorker: asEnqueuedJobWorkerClass(JobWorker, {
690
690
  ```
691
691
 
692
692
  #### `asPgBossProcessorClass(Type, processorOptions, opts?)`
693
- For pg-boss job processor classes. Similar to `asEnqueuedJobWorkerClass` but uses `start`/`stop` lifecycle methods and initializes after pgBoss (priority 20).
693
+ For pg-boss job processor classes. Similar to `asEnqueuedJobWorkerClass` but uses `start`/`stop` lifecycle methods, initializes after pgBoss (priority 20) and starts processors one after another.
694
694
 
695
695
  ```ts
696
696
  enrichUserPresenceJob: asPgBossProcessorClass(EnrichUserPresenceJob, {
@@ -3835,6 +3835,8 @@ event stream:
3835
3835
  ```ts
3836
3836
  // Shared contracts module — the binding is the reconciliation declaration
3837
3837
  export const uploadStatusBinding = defineFallbackBinding(uploadStatusContract, {
3838
+ // Polling can carry this on its own: the snapshot is a real route
3839
+ snapshotSource: 'endpoint',
3838
3840
  snapshotToEvents: (s) =>
3839
3841
  s.status === 'completed' ? [{ event: 'uploadFinished', data: { result: s.result } }] : [],
3840
3842
  version: { ofSnapshot: (s) => s.version },
@@ -146,7 +146,8 @@ export function asDualModeControllerClass(Type, dualModeOptions, opts) {
146
146
  export function asMessageQueueHandlerClass(Type, mqOptions, opts) {
147
147
  return asClass(Type, {
148
148
  // these follow message-queue-toolkit conventions
149
- asyncInit: 'start',
149
+ // consumers only set up their own queue and subscription, so they do not have to start one by one
150
+ asyncInit: { method: 'start', concurrent: true },
150
151
  asyncDispose: 'close',
151
152
  asyncDisposePriority: 10,
152
153
  enabled: isMessageQueueConsumerEnabled(mqOptions.diOptions.messageQueueConsumersEnabled, mqOptions.queueName),
@@ -158,7 +159,8 @@ export function asMessageQueueHandlerClass(Type, mqOptions, opts) {
158
159
  export function asEnqueuedJobWorkerClass(Type, workerOptions, opts) {
159
160
  return asClass(Type, {
160
161
  // these follow background-jobs-common conventions
161
- asyncInit: 'start',
162
+ // workers only attach to their own queue, so they do not have to start one by one
163
+ asyncInit: { method: 'start', concurrent: true },
162
164
  asyncDispose: 'dispose',
163
165
  asyncDisposePriority: 15,
164
166
  public: false,
@@ -1 +1 @@
1
- {"version":3,"file":"resolverFunctions.js","sourceRoot":"","sources":["../../lib/resolverFunctions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolverFunctions.js","sourceRoot":"","sources":["../../lib/resolverFunctions.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opinionated-machine",
3
- "version": "11.2.0",
3
+ "version": "12.0.0",
4
4
  "description": "Very opinionated DI framework for fastify, built on top of awilix ",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -23,39 +23,39 @@
23
23
  },
24
24
  "dependencies": {
25
25
  "@fastify/sse": "^0.6.0",
26
+ "@opinionated-machine/sse-parser": "0.1.0",
26
27
  "fast-querystring": "^1.1.2",
27
28
  "fastify-plugin": "^6.0.0",
28
- "ts-deepmerge": "^8.0.0",
29
- "@opinionated-machine/sse-parser": "0.1.0"
29
+ "ts-deepmerge": "^8.0.0"
30
30
  },
31
31
  "peerDependencies": {
32
32
  "@lokalise/api-contracts": ">=8.0.0",
33
33
  "@lokalise/fastify-api-contracts": ">=7.0.0",
34
34
  "@lokalise/node-core": ">=14.7.4",
35
35
  "awilix": ">=13.0.0",
36
- "awilix-manager": ">=6.0.0",
36
+ "awilix-manager": ">=7.1.0",
37
37
  "fastify": ">=5.0.0",
38
38
  "fastify-type-provider-zod": ">=7.0.0",
39
39
  "zod": ">=4.1.12"
40
40
  },
41
41
  "devDependencies": {
42
42
  "@biomejs/biome": "2.4.4",
43
- "@lokalise/api-contracts": "^8.0.0",
43
+ "@lokalise/api-contracts": "^8.0.1",
44
44
  "@lokalise/biome-config": "^3.1.1",
45
45
  "@lokalise/fastify-api-contracts": "^7.0.0",
46
46
  "@lokalise/node-core": "^14.7.4",
47
47
  "@lokalise/tsconfig": "^3.1.0",
48
+ "@opinionated-machine/sse-fallback": "0.3.0",
48
49
  "@types/node": "^22.19.7",
49
50
  "@vitest/coverage-v8": "^4.1.11",
50
51
  "awilix": "^13.0.0",
51
- "awilix-manager": "^7.0.1",
52
+ "awilix-manager": "^7.1.0",
52
53
  "fastify": "^5.12.4",
53
54
  "fastify-type-provider-zod": "^7.0.0",
54
55
  "rimraf": "^6.1.2",
55
56
  "typescript": "^5.9.3",
56
57
  "vitest": "^4.1.11",
57
- "zod": "^4.6.2",
58
- "@opinionated-machine/sse-fallback": "0.1.1"
58
+ "zod": "^4.6.5"
59
59
  },
60
60
  "private": false,
61
61
  "publishConfig": {