@medusajs/locking 2.21.0-snapshot-20260910110221 → 2.21.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.
@@ -4,8 +4,13 @@ export declare class InMemoryLockingProvider implements ILockingProvider {
4
4
  private locks;
5
5
  constructor();
6
6
  private getPromise;
7
- execute<T>(keys: string | string[], job: () => Promise<T>, args?: {
7
+ /**
8
+ * Runs `job` while holding `keys`. The lock is held for exactly as long as
9
+ * the job runs, lease renewal and aborts are not necessary as everything is in-memory.
10
+ */
11
+ execute<T>(keys: string | string[], job: (signal?: AbortSignal) => Promise<T>, args?: {
8
12
  timeout?: number;
13
+ expire?: number;
9
14
  }): Promise<T>;
10
15
  acquire(keys: string | string[], args?: {
11
16
  ownerId?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"in-memory.d.ts","sourceRoot":"","sources":["../../src/providers/in-memory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAc5D,qBAAa,uBAAwB,YAAW,gBAAgB;IAC9D,MAAM,CAAC,UAAU,SAAc;IAE/B,OAAO,CAAC,KAAK,CAAmC;;IAIhD,OAAO,CAAC,UAAU;IAYZ,OAAO,CAAC,CAAC,EACb,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACrB,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB,GACA,OAAO,CAAC,CAAC,CAAC;IA8BP,OAAO,CACX,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,UAAU,CAAC,EAAE,OAAO,CAAA;KACrB,GACA,OAAO,CAAC,IAAI,CAAC;IAIV,QAAQ,CACZ,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,UAAU,CAAC,EAAE,OAAO,CAAA;KACrB,EACD,iBAAiB,CAAC,EAAE;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,GACzC,OAAO,CAAC,IAAI,CAAC;IAmDV,OAAO,CACX,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KACxB,GACA,OAAO,CAAC,OAAO,CAAC;IAyBb,UAAU,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YAkBrD,UAAU;CAWzB"}
1
+ {"version":3,"file":"in-memory.d.ts","sourceRoot":"","sources":["../../src/providers/in-memory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAe5D,qBAAa,uBAAwB,YAAW,gBAAgB;IAC9D,MAAM,CAAC,UAAU,SAAc;IAE/B,OAAO,CAAC,KAAK,CAAmC;;IAIhD,OAAO,CAAC,UAAU;IAYlB;;;OAGG;IACG,OAAO,CAAC,CAAC,EACb,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,EACzC,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,GACA,OAAO,CAAC,CAAC,CAAC;IA6CP,OAAO,CACX,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,UAAU,CAAC,EAAE,OAAO,CAAA;KACrB,GACA,OAAO,CAAC,IAAI,CAAC;IAIV,QAAQ,CACZ,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,UAAU,CAAC,EAAE,OAAO,CAAA;KACrB,EACD,iBAAiB,CAAC,EAAE;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,GACzC,OAAO,CAAC,IAAI,CAAC;IAmDV,OAAO,CACX,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KACxB,GACA,OAAO,CAAC,OAAO,CAAC;IAyBb,UAAU,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YAkBrD,UAAU;CAWzB"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.InMemoryLockingProvider = void 0;
4
4
  const utils_1 = require("@medusajs/framework/utils");
5
+ const node_crypto_1 = require("node:crypto");
5
6
  class InMemoryLockingProvider {
6
7
  constructor() {
7
8
  this.locks = new Map();
@@ -16,24 +17,41 @@ class InMemoryLockingProvider {
16
17
  resolve,
17
18
  };
18
19
  }
20
+ /**
21
+ * Runs `job` while holding `keys`. The lock is held for exactly as long as
22
+ * the job runs, lease renewal and aborts are not necessary as everything is in-memory.
23
+ */
19
24
  async execute(keys, job, args) {
20
25
  const timeout = Math.max(args?.timeout ?? 5, 1);
21
26
  const timeoutSeconds = Number.isNaN(timeout) ? 1 : timeout;
27
+ // Unique per call, so the release below can only delete the lock this call
28
+ // took, and never one a queued caller acquired in the meantime.
29
+ const ownerId = `execute:${(0, node_crypto_1.randomUUID)()}`;
22
30
  const cancellationToken = { cancelled: false };
23
31
  const promises = [];
24
32
  if (timeoutSeconds > 0) {
25
33
  promises.push(this.getTimeout(timeoutSeconds, cancellationToken));
26
34
  }
27
- promises.push(this.acquire_(keys, {
28
- expire: timeoutSeconds,
35
+ const acquisition = this.acquire_(keys, {
36
+ ownerId,
29
37
  awaitQueue: true,
30
- }, cancellationToken));
31
- await Promise.race(promises);
38
+ }, cancellationToken);
39
+ promises.push(acquisition);
40
+ try {
41
+ await Promise.race(promises);
42
+ }
43
+ catch (error) {
44
+ // The queued acquisition can still take the keys in the same tick the
45
+ // timeout fires, and no job is going to use them. Since nothing expires
46
+ // them, they have to be given back explicitly.
47
+ void acquisition.then(() => this.release(keys, { ownerId }), () => { });
48
+ throw error;
49
+ }
32
50
  try {
33
51
  return await job();
34
52
  }
35
53
  finally {
36
- await this.release(keys);
54
+ await this.release(keys, { ownerId });
37
55
  }
38
56
  }
39
57
  async acquire(keys, args) {
@@ -74,7 +92,7 @@ class InMemoryLockingProvider {
74
92
  if (cancellationToken?.cancelled) {
75
93
  return;
76
94
  }
77
- return this.acquire(keys, args);
95
+ return this.acquire_(keys, args, cancellationToken);
78
96
  }
79
97
  throw new Error(`Failed to acquire lock for key "${key}"`);
80
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"in-memory.js","sourceRoot":"","sources":["../../src/providers/in-memory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"in-memory.js","sourceRoot":"","sources":["../../src/providers/in-memory.ts"],"names":[],"mappings":"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"}
@@ -14,8 +14,9 @@ export default class LockingModuleService implements ILockingModule {
14
14
  protected providerService_: LockingProviderService;
15
15
  protected defaultProviderId: string;
16
16
  constructor(container: InjectedDependencies, moduleDeclaration: InternalModuleDeclaration);
17
- execute<T>(keys: string | string[], job: () => Promise<T>, args?: {
17
+ execute<T>(keys: string | string[], job: (signal?: AbortSignal) => Promise<T>, args?: {
18
18
  timeout?: number;
19
+ expire?: number;
19
20
  provider?: string;
20
21
  }, sharedContext?: Context): Promise<T>;
21
22
  acquire(keys: string | string[], args?: {
@@ -1 +1 @@
1
- {"version":3,"file":"locking-module.d.ts","sourceRoot":"","sources":["../../src/services/locking-module.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,cAAc,EACd,yBAAyB,EACzB,MAAM,EACP,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,sBAAsB,MAAM,oBAAoB,CAAA;AAEvD,KAAK,oBAAoB,GAAG;IAC1B,OAAO,EAAE,aAAa,CAAA;IACtB,sBAAsB,EAAE,sBAAsB,CAAA;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,CAAC,sBAAsB,CAAC,EAAE,MAAM,CAAA;CACjC,CAAA;AAED,MAAM,CAAC,OAAO,OAAO,oBAAqB,YAAW,cAAc;IAO/D,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,yBAAyB;IANjE,SAAS,CAAC,OAAO,EAAE,aAAa,CAAA;IAChC,SAAS,CAAC,gBAAgB,EAAE,sBAAsB,CAAA;IAClD,SAAS,CAAC,iBAAiB,EAAE,MAAM,CAAA;gBAGjC,SAAS,EAAE,oBAAoB,EACZ,iBAAiB,EAAE,yBAAyB;IAO3D,OAAO,CAAC,CAAC,EACb,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACrB,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,EACD,aAAa,GAAE,OAAY,GAC1B,OAAO,CAAC,CAAC,CAAC;IAQP,OAAO,CACX,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,EACD,aAAa,GAAE,OAAY,GAC1B,OAAO,CAAC,IAAI,CAAC;IAQV,OAAO,CACX,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,EACD,aAAa,GAAE,OAAY,GAC1B,OAAO,CAAC,OAAO,CAAC;IAQb,UAAU,CACd,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,EACD,aAAa,GAAE,OAAY,GAC1B,OAAO,CAAC,IAAI,CAAC;CAOjB"}
1
+ {"version":3,"file":"locking-module.d.ts","sourceRoot":"","sources":["../../src/services/locking-module.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,cAAc,EACd,yBAAyB,EACzB,MAAM,EACP,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,sBAAsB,MAAM,oBAAoB,CAAA;AAEvD,KAAK,oBAAoB,GAAG;IAC1B,OAAO,EAAE,aAAa,CAAA;IACtB,sBAAsB,EAAE,sBAAsB,CAAA;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,CAAC,sBAAsB,CAAC,EAAE,MAAM,CAAA;CACjC,CAAA;AAED,MAAM,CAAC,OAAO,OAAO,oBAAqB,YAAW,cAAc;IAO/D,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,yBAAyB;IANjE,SAAS,CAAC,OAAO,EAAE,aAAa,CAAA;IAChC,SAAS,CAAC,gBAAgB,EAAE,sBAAsB,CAAA;IAClD,SAAS,CAAC,iBAAiB,EAAE,MAAM,CAAA;gBAGjC,SAAS,EAAE,oBAAoB,EACZ,iBAAiB,EAAE,yBAAyB;IAO3D,OAAO,CAAC,CAAC,EACb,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,EACzC,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,EACD,aAAa,GAAE,OAAY,GAC1B,OAAO,CAAC,CAAC,CAAC;IAQP,OAAO,CACX,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,EACD,aAAa,GAAE,OAAY,GAC1B,OAAO,CAAC,IAAI,CAAC;IAQV,OAAO,CACX,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,EACD,aAAa,GAAE,OAAY,GAC1B,OAAO,CAAC,OAAO,CAAC;IAQb,UAAU,CACd,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;KAClB,EACD,aAAa,GAAE,OAAY,GAC1B,OAAO,CAAC,IAAI,CAAC;CAOjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"locking-module.js","sourceRoot":"","sources":["../../src/services/locking-module.ts"],"names":[],"mappings":";;AAOA,mCAA+C;AAU/C,MAAqB,oBAAoB;IAKvC,YACE,SAA+B,EACZ,iBAA4C;QAA5C,sBAAiB,GAAjB,iBAAiB,CAA2B;QAE/D,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAA;QAChC,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC,sBAAsB,CAAA;QACxD,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC,+BAAsB,CAAC,CAAA;IAC5D,CAAC;IAED,KAAK,CAAC,OAAO,CACX,IAAuB,EACvB,GAAqB,EACrB,IAGC,EACD,gBAAyB,EAAE;QAE3B,MAAM,UAAU,GAAG,IAAI,EAAE,QAAQ,IAAI,IAAI,CAAC,iBAAiB,CAAA;QAC3D,MAAM,QAAQ,GACZ,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAA;QAEhE,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,CAAC,CAAA;IACzD,CAAC;IAED,KAAK,CAAC,OAAO,CACX,IAAuB,EACvB,IAIC,EACD,gBAAyB,EAAE;QAE3B,MAAM,UAAU,GAAG,IAAI,EAAE,QAAQ,IAAI,IAAI,CAAC,iBAAiB,CAAA;QAC3D,MAAM,QAAQ,GACZ,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAA;QAEhE,MAAM,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,aAAa,CAAC,CAAA;IACnD,CAAC;IAED,KAAK,CAAC,OAAO,CACX,IAAuB,EACvB,IAGC,EACD,gBAAyB,EAAE;QAE3B,MAAM,UAAU,GAAG,IAAI,EAAE,QAAQ,IAAI,IAAI,CAAC,iBAAiB,CAAA;QAC3D,MAAM,QAAQ,GACZ,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAA;QAEhE,OAAO,MAAM,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,aAAa,CAAC,CAAA;IAC1D,CAAC;IAED,KAAK,CAAC,UAAU,CACd,IAGC,EACD,gBAAyB,EAAE;QAE3B,MAAM,UAAU,GAAG,IAAI,EAAE,QAAQ,IAAI,IAAI,CAAC,iBAAiB,CAAA;QAC3D,MAAM,QAAQ,GACZ,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAA;QAEhE,OAAO,MAAM,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;IACvD,CAAC;CACF;AA1ED,uCA0EC"}
1
+ {"version":3,"file":"locking-module.js","sourceRoot":"","sources":["../../src/services/locking-module.ts"],"names":[],"mappings":";;AAOA,mCAA+C;AAU/C,MAAqB,oBAAoB;IAKvC,YACE,SAA+B,EACZ,iBAA4C;QAA5C,sBAAiB,GAAjB,iBAAiB,CAA2B;QAE/D,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAA;QAChC,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC,sBAAsB,CAAA;QACxD,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC,+BAAsB,CAAC,CAAA;IAC5D,CAAC;IAED,KAAK,CAAC,OAAO,CACX,IAAuB,EACvB,GAAyC,EACzC,IAIC,EACD,gBAAyB,EAAE;QAE3B,MAAM,UAAU,GAAG,IAAI,EAAE,QAAQ,IAAI,IAAI,CAAC,iBAAiB,CAAA;QAC3D,MAAM,QAAQ,GACZ,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAA;QAEhE,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,CAAC,CAAA;IACzD,CAAC;IAED,KAAK,CAAC,OAAO,CACX,IAAuB,EACvB,IAIC,EACD,gBAAyB,EAAE;QAE3B,MAAM,UAAU,GAAG,IAAI,EAAE,QAAQ,IAAI,IAAI,CAAC,iBAAiB,CAAA;QAC3D,MAAM,QAAQ,GACZ,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAA;QAEhE,MAAM,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,aAAa,CAAC,CAAA;IACnD,CAAC;IAED,KAAK,CAAC,OAAO,CACX,IAAuB,EACvB,IAGC,EACD,gBAAyB,EAAE;QAE3B,MAAM,UAAU,GAAG,IAAI,EAAE,QAAQ,IAAI,IAAI,CAAC,iBAAiB,CAAA;QAC3D,MAAM,QAAQ,GACZ,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAA;QAEhE,OAAO,MAAM,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,aAAa,CAAC,CAAA;IAC1D,CAAC;IAED,KAAK,CAAC,UAAU,CACd,IAGC,EACD,gBAAyB,EAAE;QAE3B,MAAM,UAAU,GAAG,IAAI,EAAE,QAAQ,IAAI,IAAI,CAAC,iBAAiB,CAAA;QAC3D,MAAM,QAAQ,GACZ,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAA;QAEhE,OAAO,MAAM,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;IACvD,CAAC;CACF;AA3ED,uCA2EC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@medusajs/locking",
3
- "version": "2.21.0-snapshot-20260910110221",
3
+ "version": "2.21.0",
4
4
  "description": "Locking Module for Medusa",
5
5
  "main": "dist/index.js",
6
6
  "repository": {
@@ -35,10 +35,10 @@
35
35
  "orm:cache:clear": "MIKRO_ORM_CLI_CONFIG=./mikro-orm.config.dev.ts MIKRO_ORM_ALLOW_GLOBAL_CLI=true medusa-mikro-orm cache:clear"
36
36
  },
37
37
  "devDependencies": {
38
- "@medusajs/framework": "2.21.0-snapshot-20260910110221",
39
- "@medusajs/test-utils": "2.21.0-snapshot-20260910110221"
38
+ "@medusajs/framework": "2.21.0",
39
+ "@medusajs/test-utils": "2.21.0"
40
40
  },
41
41
  "peerDependencies": {
42
- "@medusajs/framework": "2.21.0-snapshot-20260910110221"
42
+ "@medusajs/framework": "2.21.0"
43
43
  }
44
44
  }