effect 4.0.0-beta.55 → 4.0.0-beta.57

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.
@@ -29,6 +29,10 @@ export interface SqlClient extends Constructor {
29
29
  * With the given effect, ensure all sql queries are run in a transaction.
30
30
  */
31
31
  readonly withTransaction: <R, E, A>(self: Effect.Effect<A, E, R>) => Effect.Effect<A, E | SqlError, R>;
32
+ /**
33
+ * The transaction service for this client.
34
+ */
35
+ readonly transactionService: Context.Service<TransactionConnection, TransactionConnection.Service>;
32
36
  /**
33
37
  * Use the Reactivity service from @effect/experimental to create a reactive
34
38
  * query.
@@ -59,6 +63,7 @@ export declare namespace SqlClient {
59
63
  readonly compiler: Compiler;
60
64
  readonly transactionAcquirer?: Connection.Acquirer;
61
65
  readonly spanAttributes: ReadonlyArray<readonly [string, unknown]>;
66
+ readonly transactionService?: Context.Service<TransactionConnection, TransactionConnection.Service>;
62
67
  readonly beginTransaction?: string | undefined;
63
68
  readonly rollback?: string | undefined;
64
69
  readonly commit?: string | undefined;
@@ -87,12 +92,25 @@ export declare const makeWithTransaction: <I, S>(options: {
87
92
  readonly rollback: (conn: NoInfer<S>) => Effect.Effect<void, SqlError>;
88
93
  readonly rollbackSavepoint: (conn: NoInfer<S>, id: number) => Effect.Effect<void, SqlError>;
89
94
  }) => <R, E, A>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E | SqlError, R>;
90
- declare const TransactionConnection_base: Context.ServiceClass<TransactionConnection, "effect/sql/SqlClient/TransactionConnection", readonly [conn: Connection.Connection, depth: number]>;
91
95
  /**
92
96
  * @since 4.0.0
93
97
  */
94
- export declare class TransactionConnection extends TransactionConnection_base {
98
+ export interface TransactionConnection {
99
+ readonly _: unique symbol;
100
+ }
101
+ /**
102
+ * @since 4.0.0
103
+ */
104
+ export declare namespace TransactionConnection {
105
+ /**
106
+ * @since 4.0.0
107
+ */
108
+ type Service = readonly [conn: Connection.Connection, depth: number];
95
109
  }
110
+ /**
111
+ * @since 4.0.0
112
+ */
113
+ export declare const TransactionConnection: (clientId: number) => Context.Service<TransactionConnection, TransactionConnection.Service>;
96
114
  /**
97
115
  * @since 4.0.0
98
116
  */
@@ -1 +1 @@
1
- {"version":3,"file":"SqlClient.d.ts","sourceRoot":"","sources":["../../../src/unstable/sql/SqlClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SqlClient.d.ts","sourceRoot":"","sources":["../../../src/unstable/sql/SqlClient.ts"],"names":[],"mappings":"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"}
@@ -17,12 +17,14 @@ const TypeId = "~effect/sql/SqlClient";
17
17
  * @since 4.0.0
18
18
  */
19
19
  export const SqlClient = /*#__PURE__*/Context.Service("effect/sql/SqlClient");
20
+ let clientIdCounter = 0;
20
21
  /**
21
22
  * @category constructors
22
23
  * @since 4.0.0
23
24
  */
24
25
  export const make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
25
- const getConnection = Effect.flatMap(Effect.serviceOption(TransactionConnection), Option.match({
26
+ const transactionService = options.transactionService ?? TransactionConnection(clientIdCounter++);
27
+ const getConnection = Effect.flatMap(Effect.serviceOption(transactionService), Option.match({
26
28
  onNone: () => options.acquirer,
27
29
  onSome: ([conn]) => Effect.succeed(conn)
28
30
  }));
@@ -33,7 +35,7 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
33
35
  const rollbackSavepoint = options.rollbackSavepoint ?? (name => `ROLLBACK TO SAVEPOINT ${name}`);
34
36
  const transactionAcquirer = options.transactionAcquirer ?? options.acquirer;
35
37
  const withTransaction = makeWithTransaction({
36
- transactionService: TransactionConnection,
38
+ transactionService,
37
39
  spanAttributes: options.spanAttributes,
38
40
  acquireConnection: Effect.flatMap(Scope.make(), scope => Effect.map(Scope.provide(transactionAcquirer, scope), conn => [scope, conn])),
39
41
  begin: conn => conn.executeUnprepared(beginTransaction, [], undefined),
@@ -47,6 +49,7 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
47
49
  [TypeId]: TypeId,
48
50
  safe: undefined,
49
51
  withTransaction,
52
+ transactionService,
50
53
  reserve: transactionAcquirer,
51
54
  withoutTransforms() {
52
55
  if (options.transformRows === undefined) {
@@ -71,39 +74,41 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
71
74
  * @since 4.0.0
72
75
  * @category transactions
73
76
  */
74
- export const makeWithTransaction = options => effect => Effect.uninterruptibleMask(restore => Effect.useSpan("sql.transaction", {
75
- kind: "client"
76
- }, span => Effect.withFiber(fiber => {
77
- for (const [key, value] of options.spanAttributes) {
78
- span.attribute(key, value);
79
- }
80
- const services = fiber.context;
81
- const clock = fiber.getRef(Clock);
82
- const connOption = Context.getOption(services, options.transactionService);
83
- const conn = connOption._tag === "Some" ? Effect.succeed([undefined, connOption.value[0]]) : options.acquireConnection;
84
- const id = connOption._tag === "Some" ? connOption.value[1] + 1 : 0;
85
- return Effect.flatMap(conn, ([scope, conn]) => (id === 0 ? options.begin(conn) : options.savepoint(conn, id)).pipe(Effect.flatMap(() => Effect.provideContext(restore(effect), Context.mutate(services, services => services.pipe(Context.add(options.transactionService, [conn, id]), Context.add(Tracer.ParentSpan, span))))), Effect.exit, Effect.flatMap(exit => {
86
- let effect;
87
- if (Exit.isSuccess(exit)) {
88
- if (id === 0) {
89
- span.event("db.transaction.commit", clock.currentTimeNanosUnsafe());
90
- effect = Effect.orDie(options.commit(conn));
77
+ export const makeWithTransaction = options => effect => {
78
+ return Effect.uninterruptibleMask(restore => Effect.useSpan("sql.transaction", {
79
+ kind: "client"
80
+ }, span => Effect.withFiber(fiber => {
81
+ for (const [key, value] of options.spanAttributes) {
82
+ span.attribute(key, value);
83
+ }
84
+ const services = fiber.context;
85
+ const clock = fiber.getRef(Clock);
86
+ const connOption = Context.getOption(services, options.transactionService);
87
+ const conn = connOption._tag === "Some" ? Effect.succeed([undefined, connOption.value[0]]) : options.acquireConnection;
88
+ const id = connOption._tag === "Some" ? connOption.value[1] + 1 : 0;
89
+ return Effect.flatMap(conn, ([scope, conn]) => (id === 0 ? options.begin(conn) : options.savepoint(conn, id)).pipe(Effect.flatMap(() => Effect.provideContext(restore(effect), Context.mutate(services, services => services.pipe(Context.add(options.transactionService, [conn, id]), Context.add(Tracer.ParentSpan, span))))), Effect.exit, Effect.flatMap(exit => {
90
+ let effect;
91
+ if (Exit.isSuccess(exit)) {
92
+ if (id === 0) {
93
+ span.event("db.transaction.commit", clock.currentTimeNanosUnsafe());
94
+ effect = Effect.orDie(options.commit(conn));
95
+ } else {
96
+ span.event("db.transaction.savepoint", clock.currentTimeNanosUnsafe());
97
+ effect = Effect.void;
98
+ }
91
99
  } else {
92
- span.event("db.transaction.savepoint", clock.currentTimeNanosUnsafe());
93
- effect = Effect.void;
100
+ span.event("db.transaction.rollback", clock.currentTimeNanosUnsafe());
101
+ effect = Effect.orDie(id > 0 ? options.rollbackSavepoint(conn, id) : options.rollback(conn));
94
102
  }
95
- } else {
96
- span.event("db.transaction.rollback", clock.currentTimeNanosUnsafe());
97
- effect = Effect.orDie(id > 0 ? options.rollbackSavepoint(conn, id) : options.rollback(conn));
98
- }
99
- const withScope = scope !== undefined ? Effect.ensuring(effect, Scope.close(scope, exit)) : effect;
100
- return Effect.flatMap(withScope, () => exit);
103
+ const withScope = scope !== undefined ? Effect.ensuring(effect, Scope.close(scope, exit)) : effect;
104
+ return Effect.flatMap(withScope, () => exit);
105
+ })));
101
106
  })));
102
- })));
107
+ };
103
108
  /**
104
109
  * @since 4.0.0
105
110
  */
106
- export class TransactionConnection extends /*#__PURE__*/Context.Service()("effect/sql/SqlClient/TransactionConnection") {}
111
+ export const TransactionConnection = clientId => Context.Service(`effect/sql/SqlClient/TransactionConnection/${clientId}`);
107
112
  /**
108
113
  * @since 4.0.0
109
114
  */
@@ -1 +1 @@
1
- {"version":3,"file":"SqlClient.js","names":["Clock","Context","Effect","Exit","Option","Scope","Stream","Tracer","Reactivity","Statement","TypeId","SqlClient","Service","make","fnUntraced","options","getConnection","flatMap","serviceOption","TransactionConnection","match","onNone","acquirer","onSome","conn","succeed","beginTransaction","commit","savepoint","name","rollback","rollbackSavepoint","transactionAcquirer","withTransaction","makeWithTransaction","transactionService","spanAttributes","acquireConnection","scope","map","provide","begin","executeUnprepared","undefined","id","reactivity","client","Object","assign","compiler","transformRows","safe","reserve","withoutTransforms","statement","withoutTransform","reactive","reactiveQueue","keys","effect","pipe","fromQueue","unwrap","stream","reactiveMailbox","query","uninterruptibleMask","restore","useSpan","kind","span","withFiber","fiber","key","value","attribute","services","context","clock","getRef","connOption","getOption","_tag","provideContext","mutate","add","ParentSpan","exit","isSuccess","event","currentTimeNanosUnsafe","orDie","void","withScope","ensuring","close","SafeIntegers","Reference","defaultValue"],"sources":["../../../src/unstable/sql/SqlClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SqlClient.js","names":["Clock","Context","Effect","Exit","Option","Scope","Stream","Tracer","Reactivity","Statement","TypeId","SqlClient","Service","clientIdCounter","make","fnUntraced","options","transactionService","TransactionConnection","getConnection","flatMap","serviceOption","match","onNone","acquirer","onSome","conn","succeed","beginTransaction","commit","savepoint","name","rollback","rollbackSavepoint","transactionAcquirer","withTransaction","makeWithTransaction","spanAttributes","acquireConnection","scope","map","provide","begin","executeUnprepared","undefined","id","reactivity","client","Object","assign","compiler","transformRows","safe","reserve","withoutTransforms","statement","withoutTransform","reactive","reactiveQueue","keys","effect","pipe","fromQueue","unwrap","stream","reactiveMailbox","query","uninterruptibleMask","restore","useSpan","kind","span","withFiber","fiber","key","value","attribute","services","context","clock","getRef","connOption","getOption","_tag","provideContext","mutate","add","ParentSpan","exit","isSuccess","event","currentTimeNanosUnsafe","orDie","void","withScope","ensuring","close","clientId","SafeIntegers","Reference","defaultValue"],"sources":["../../../src/unstable/sql/SqlClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"SqlResolver.d.ts","sourceRoot":"","sources":["../../../src/unstable/sql/SqlResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SqlResolver.d.ts","sourceRoot":"","sources":["../../../src/unstable/sql/SqlResolver.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAA;AAKzC,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,eAAe,MAAM,0BAA0B,CAAA;AAC3D,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAA;AACzC,OAAO,KAAK,KAAK,KAAK,MAAM,gBAAgB,CAAA;AAE5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAEpD;;;GAGG;AACH,MAAM,WAAW,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAE,SAAQ,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IAC5F,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAA;CACrB;AAeD;;;GAGG;AACH,eAAO,MAAM,OAAO,EAAE;IACpB;;;OAGG;IACH,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;IAC/I;;;OAGG;IACH,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EACV,OAAO,EAAE,EAAE,EACX,QAAQ,EAAE,eAAe,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GACjE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;CAOxC,CAAA;AAER;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,KAAG,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAI3E,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,OAAO,GAAI,GAAG,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,SAAS,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAC7E,SAAS;IACP,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAA;IACpB,QAAQ,CAAC,OAAO,EAAE,CAChB,QAAQ,EAAE,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,KACxC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CAC3C,KACA,eAAe,CAAC,eAAe,CAChC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,oBAAoB,EAAE,GAAG,CAAC,kBAAkB,CAAC,GAAG,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CA6BtH,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,OAAO,GAAI,GAAG,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,SAAS,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAClF,SAAS;IACP,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAA;IACrB,QAAQ,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACrD,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAA;IACpB,QAAQ,CAAC,cAAc,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAC5E,QAAQ,CAAC,OAAO,EAAE,CAChB,QAAQ,EAAE,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,KACxC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CAC7C,KACA,eAAe,CAAC,eAAe,CAChC,UAAU,CACR,GAAG,CAAC,MAAM,CAAC,EACX,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAC9B,CAAC,GAAG,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,kBAAkB,EACjD,GAAG,CAAC,kBAAkB,CAAC,GAAG,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC,CACtD,CA2CF,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,EAAE,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAC/E,SAAS;IACP,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAA;IACf,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAA;IACpB,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAA;IAC/E,QAAQ,CAAC,OAAO,EAAE,CAChB,QAAQ,EAAE,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,KACvC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CAC7C,KACA,eAAe,CAAC,eAAe,CAChC,UAAU,CACR,EAAE,CAAC,MAAM,CAAC,EACV,GAAG,CAAC,MAAM,CAAC,EACX,CAAC,GAAG,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,kBAAkB,EACjD,EAAE,CAAC,kBAAkB,CAAC,GAAG,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC,CACrD,CAwCF,CAAA;AAED,QAAA,MAAM,KAAK,GAAI,GAAG,SAAS,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAC5C,SAAS;IACP,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,CAChB,QAAQ,EAAE,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,KACxC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CAC3C,KACA,eAAe,CAAC,eAAe,CAChC,UAAU,CACR,GAAG,CAAC,MAAM,CAAC,EACX,IAAI,EACJ,CAAC,GAAG,MAAM,CAAC,WAAW,EACtB,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAC5B,CAqBC,CAAA;AAEJ,OAAO;AACL;;;;;GAKG;AACH,KAAK,IAAI,IAAI,EACd,CAAA"}
@@ -118,11 +118,7 @@ export const grouped = options => {
118
118
  export const findById = options => {
119
119
  const decodeResults = Schema.decodeUnknownEffect(Schema.Array(options.Result));
120
120
  return RequestResolver.makeGrouped({
121
- key(entry) {
122
- const conn = entry.context.mapUnsafe.get(SqlClient.TransactionConnection.key);
123
- if (!conn) return undefined;
124
- return Equal.byReferenceUnsafe(conn);
125
- },
121
+ key: transactionKey,
126
122
  resolver: Effect.fnUntraced(function* (entries) {
127
123
  const [inputs, idMap] = yield* partitionRequestsById(entries, options.Id);
128
124
  const results = yield* options.execute(inputs).pipe(Effect.provideContext(entries[0].context));
@@ -206,7 +202,9 @@ const partitionRequestsById = function* (requests, schema) {
206
202
  return [inputs, byIdMap];
207
203
  };
208
204
  function transactionKey(entry) {
209
- const conn = entry.context.mapUnsafe.get(SqlClient.TransactionConnection.key);
205
+ const client = entry.context.mapUnsafe.get(SqlClient.SqlClient.key);
206
+ if (!client) return undefined;
207
+ const conn = entry.context.mapUnsafe.get(client.transactionService.key);
210
208
  if (!conn) return undefined;
211
209
  return Equal.byReferenceUnsafe(conn);
212
210
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SqlResolver.js","names":["Arr","Cause","Effect","Equal","Exit","Hash","MutableHashMap","Request","RequestResolver","Schema","SqlClient","ResultLengthMismatch","SqlRequestProto","Class","prototype","symbol","that","equals","payload","hash","request","arguments","length","resolver","SqlRequest","self","Object","create","ordered","options","decodeArray","decodeUnknownEffect","Array","Result","makeGrouped","key","transactionKey","fnUntraced","entries","inputs","partitionRequests","results","execute","pipe","provideContext","context","expected","actual","decodedResults","i","completeUnsafe","succeed","grouped","decodeResults","resultMap","empty","len","result","ResultGroupKey","group","get","_tag","set","value","push","entry","RequestGroupKey","constNoSuchElement","findById","conn","mapUnsafe","TransactionConnection","undefined","byReferenceUnsafe","idMap","partitionRequestsById","Id","id","ResultId","remove","isEmpty","forEach","void_","void","fail","NoSuchElementError","requests","schema","encode","encodeEffect","handle","matchCauseEager","onFailure","cause","failCause","onSuccess","byIdMap"],"sources":["../../../src/unstable/sql/SqlResolver.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SqlResolver.js","names":["Arr","Cause","Effect","Equal","Exit","Hash","MutableHashMap","Request","RequestResolver","Schema","SqlClient","ResultLengthMismatch","SqlRequestProto","Class","prototype","symbol","that","equals","payload","hash","request","arguments","length","resolver","SqlRequest","self","Object","create","ordered","options","decodeArray","decodeUnknownEffect","Array","Result","makeGrouped","key","transactionKey","fnUntraced","entries","inputs","partitionRequests","results","execute","pipe","provideContext","context","expected","actual","decodedResults","i","completeUnsafe","succeed","grouped","decodeResults","resultMap","empty","len","result","ResultGroupKey","group","get","_tag","set","value","push","entry","RequestGroupKey","constNoSuchElement","findById","idMap","partitionRequestsById","Id","id","ResultId","remove","isEmpty","forEach","void_","void","fail","NoSuchElementError","requests","schema","encode","encodeEffect","handle","matchCauseEager","onFailure","cause","failCause","onSuccess","byIdMap","client","mapUnsafe","undefined","conn","transactionService","byReferenceUnsafe"],"sources":["../../../src/unstable/sql/SqlResolver.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "effect",
3
3
  "type": "module",
4
- "version": "4.0.0-beta.55",
4
+ "version": "4.0.0-beta.57",
5
5
  "license": "MIT",
6
6
  "description": "The missing standard library for TypeScript, for writing production-grade software.",
7
7
  "homepage": "https://effect.website",
package/src/Effect.ts CHANGED
@@ -13342,6 +13342,14 @@ export const interruptibleMask: <A, E, R>(
13342
13342
  ) => Effect<A, E, R>
13343
13343
  ) => Effect<A, E, R> = internal.interruptibleMask
13344
13344
 
13345
+ /**
13346
+ * Creates an AbortSignal that is managed by the provided scope.
13347
+ *
13348
+ * @since 4.0.0
13349
+ * @category Interruption
13350
+ */
13351
+ export const abortSignal: Effect<AbortSignal, never, Scope> = internal.abortSignal
13352
+
13345
13353
  // -----------------------------------------------------------------------------
13346
13354
  // Repetition & Recursion
13347
13355
  // -----------------------------------------------------------------------------
@@ -4177,6 +4177,15 @@ export const interruptibleMask = <A, E, R>(
4177
4177
  return f(uninterruptible)
4178
4178
  })
4179
4179
 
4180
+ /** @internal */
4181
+ export const abortSignal: Effect.Effect<AbortSignal, never, Scope.Scope> = map(
4182
+ acquireRelease(
4183
+ sync(() => new AbortController()),
4184
+ (controller) => sync(() => controller.abort())
4185
+ ),
4186
+ (_) => _.signal
4187
+ )
4188
+
4180
4189
  // ========================================================================
4181
4190
  // collecting & elements
4182
4191
  // ========================================================================
@@ -46,6 +46,11 @@ export interface SqlClient extends Constructor {
46
46
  self: Effect.Effect<A, E, R>
47
47
  ) => Effect.Effect<A, E | SqlError, R>
48
48
 
49
+ /**
50
+ * The transaction service for this client.
51
+ */
52
+ readonly transactionService: Context.Service<TransactionConnection, TransactionConnection.Service>
53
+
49
54
  /**
50
55
  * Use the Reactivity service from @effect/experimental to create a reactive
51
56
  * query.
@@ -85,6 +90,7 @@ export namespace SqlClient {
85
90
  readonly compiler: Compiler
86
91
  readonly transactionAcquirer?: Connection.Acquirer
87
92
  readonly spanAttributes: ReadonlyArray<readonly [string, unknown]>
93
+ readonly transactionService?: Context.Service<TransactionConnection, TransactionConnection.Service>
88
94
  readonly beginTransaction?: string | undefined
89
95
  readonly rollback?: string | undefined
90
96
  readonly commit?: string | undefined
@@ -98,13 +104,16 @@ export namespace SqlClient {
98
104
  }
99
105
  }
100
106
 
107
+ let clientIdCounter = 0
108
+
101
109
  /**
102
110
  * @category constructors
103
111
  * @since 4.0.0
104
112
  */
105
113
  export const make = Effect.fnUntraced(function*(options: SqlClient.MakeOptions) {
114
+ const transactionService = options.transactionService ?? TransactionConnection(clientIdCounter++)
106
115
  const getConnection = Effect.flatMap(
107
- Effect.serviceOption(TransactionConnection),
116
+ Effect.serviceOption(transactionService),
108
117
  Option.match({
109
118
  onNone: () => options.acquirer,
110
119
  onSome: ([conn]) => Effect.succeed(conn)
@@ -118,7 +127,7 @@ export const make = Effect.fnUntraced(function*(options: SqlClient.MakeOptions)
118
127
  const rollbackSavepoint = options.rollbackSavepoint ?? ((name: string) => `ROLLBACK TO SAVEPOINT ${name}`)
119
128
  const transactionAcquirer = options.transactionAcquirer ?? options.acquirer
120
129
  const withTransaction = makeWithTransaction({
121
- transactionService: TransactionConnection,
130
+ transactionService,
122
131
  spanAttributes: options.spanAttributes,
123
132
  acquireConnection: Effect.flatMap(
124
133
  Scope.make(),
@@ -138,6 +147,7 @@ export const make = Effect.fnUntraced(function*(options: SqlClient.MakeOptions)
138
147
  [TypeId]: TypeId as typeof TypeId,
139
148
  safe: undefined as any,
140
149
  withTransaction,
150
+ transactionService,
141
151
  reserve: transactionAcquirer,
142
152
  withoutTransforms(): any {
143
153
  if (options.transformRows === undefined) {
@@ -189,8 +199,8 @@ export const makeWithTransaction = <I, S>(options: {
189
199
  readonly rollback: (conn: NoInfer<S>) => Effect.Effect<void, SqlError>
190
200
  readonly rollbackSavepoint: (conn: NoInfer<S>, id: number) => Effect.Effect<void, SqlError>
191
201
  }) =>
192
- <R, E, A>(effect: Effect.Effect<A, E, R>): Effect.Effect<A, E | SqlError, R> =>
193
- Effect.uninterruptibleMask((restore) =>
202
+ <R, E, A>(effect: Effect.Effect<A, E, R>): Effect.Effect<A, E | SqlError, R> => {
203
+ return Effect.uninterruptibleMask((restore) =>
194
204
  Effect.useSpan(
195
205
  "sql.transaction",
196
206
  { kind: "client" },
@@ -249,15 +259,32 @@ export const makeWithTransaction = <I, S>(options: {
249
259
  })
250
260
  )
251
261
  )
262
+ }
252
263
 
253
264
  /**
254
265
  * @since 4.0.0
255
266
  */
256
- export class TransactionConnection
257
- extends Context.Service<TransactionConnection, readonly [conn: Connection.Connection, depth: number]>()(
258
- "effect/sql/SqlClient/TransactionConnection"
259
- )
260
- {}
267
+ export interface TransactionConnection {
268
+ readonly _: unique symbol
269
+ }
270
+
271
+ /**
272
+ * @since 4.0.0
273
+ */
274
+ export declare namespace TransactionConnection {
275
+ /**
276
+ * @since 4.0.0
277
+ */
278
+ export type Service = readonly [conn: Connection.Connection, depth: number]
279
+ }
280
+
281
+ /**
282
+ * @since 4.0.0
283
+ */
284
+ export const TransactionConnection = (
285
+ clientId: number
286
+ ): Context.Service<TransactionConnection, TransactionConnection.Service> =>
287
+ Context.Service(`effect/sql/SqlClient/TransactionConnection/${clientId}`)
261
288
 
262
289
  /**
263
290
  * @since 4.0.0
@@ -102,7 +102,7 @@ export const ordered = <Req extends Schema.Top, Res extends Schema.Top, _, E, R>
102
102
  E | ResultLengthMismatch,
103
103
  Req["EncodingServices"] | Res["DecodingServices"] | R
104
104
  >,
105
- SqlClient.TransactionConnection["Service"] | undefined
105
+ SqlClient.TransactionConnection.Service | undefined
106
106
  >({
107
107
  key: transactionKey,
108
108
  resolver: Effect.fnUntraced(function*(entries) {
@@ -158,7 +158,7 @@ export const grouped = <Req extends Schema.Top, Res extends Schema.Top, K, Row,
158
158
  E | Schema.SchemaError | Cause.NoSuchElementError,
159
159
  Req["EncodingServices"] | Res["DecodingServices"] | R
160
160
  >,
161
- SqlClient.TransactionConnection["Service"] | undefined
161
+ SqlClient.TransactionConnection.Service | undefined
162
162
  >({
163
163
  key: transactionKey,
164
164
  resolver: Effect.fnUntraced(function*(entries) {
@@ -224,13 +224,9 @@ export const findById = <Id extends Schema.Top, Res extends Schema.Top, Row, E,
224
224
  E | Schema.SchemaError | Cause.NoSuchElementError,
225
225
  Id["EncodingServices"] | Res["DecodingServices"] | R
226
226
  >,
227
- SqlClient.TransactionConnection["Service"] | undefined
227
+ SqlClient.TransactionConnection.Service | undefined
228
228
  >({
229
- key(entry) {
230
- const conn = entry.context.mapUnsafe.get(SqlClient.TransactionConnection.key)
231
- if (!conn) return undefined
232
- return Equal.byReferenceUnsafe(conn)
233
- },
229
+ key: transactionKey,
234
230
  resolver: Effect.fnUntraced(function*(entries) {
235
231
  const [inputs, idMap] = yield* partitionRequestsById(entries, options.Id)
236
232
  const results = yield* options.execute(inputs as any).pipe(
@@ -281,7 +277,7 @@ const void_ = <Req extends Schema.Top, _, E, R>(
281
277
  E | Schema.SchemaError,
282
278
  Req["EncodingServices"] | R
283
279
  >,
284
- SqlClient.TransactionConnection["Service"] | undefined
280
+ SqlClient.TransactionConnection.Service | undefined
285
281
  >({
286
282
  key: transactionKey,
287
283
  resolver: Effect.fnUntraced(function*(entries) {
@@ -359,8 +355,10 @@ const partitionRequestsById = function*<In, A, E, R, InE>(
359
355
  return [inputs, byIdMap] as const
360
356
  }
361
357
 
362
- function transactionKey<A>(entry: Request.Entry<A>): SqlClient.TransactionConnection["Service"] | undefined {
363
- const conn = entry.context.mapUnsafe.get(SqlClient.TransactionConnection.key)
358
+ function transactionKey<A>(entry: Request.Entry<A>): SqlClient.TransactionConnection.Service | undefined {
359
+ const client = entry.context.mapUnsafe.get(SqlClient.SqlClient.key)
360
+ if (!client) return undefined
361
+ const conn = entry.context.mapUnsafe.get(client.transactionService.key)
364
362
  if (!conn) return undefined
365
363
  return Equal.byReferenceUnsafe(conn)
366
364
  }