camusdb 0.5.0 → 0.6.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/README.md CHANGED
@@ -223,15 +223,15 @@ change what the statement means.
223
223
  | --- | --- |
224
224
  | `null`, `undefined` | `Null` |
225
225
  | `boolean` | `Bool` |
226
- | `number` that is an integer | `Integer64` |
227
- | `number` that is not | `Float64` |
226
+ | `number` that is an integer, other than `-0` | `Integer64` |
227
+ | `number` that is not, and `-0` | `Float64` |
228
228
  | `bigint` | `Integer64` |
229
229
  | `string` | `String` |
230
230
  | `Date` | `DateTime` |
231
231
  | `Uint8Array`, `Buffer`, `ArrayBuffer` | `Bytes` |
232
232
  | `Float32Array` | `Bytes`, packed as a vector |
233
233
  | `CamusObjectId` | `Id` |
234
- | an array | `Array`, with the element type read from the first element that is not null. When that element is a whole `number` and another `number` element is not whole, the element type is `Float64`. |
234
+ | an array | `Array`, with the element type read from the first element that is not null. When that element is a whole `number` and another `number` element is not whole or is `-0`, the element type is `Float64`. |
235
235
 
236
236
  A UUID-shaped string is **not** read as a `uuid`. A 36-character string that happens to look like
237
237
  one would otherwise change type silently.
@@ -297,6 +297,15 @@ against an `OID` column. `camus.array(uuids, ColumnType.Id)` therefore sends a `
297
297
  | `Numeric` | `string`, the exact decimal text — see [NUMERIC](#numeric) |
298
298
  | `Array` | an array of the values above |
299
299
 
300
+ A `Float32` value is the single-precision number the server stored, on both transports. A negative
301
+ zero keeps its sign in both directions.
302
+
303
+ An array element reads as its element type on both transports. Over REST the driver reads that type
304
+ from the `elementType` field of the result's `columns`. An older server does not send the field. A
305
+ `Date`, `DateTime`, or `Bytes` element then reads as its wire value: the tick count as a number or
306
+ a `bigint`, and the bytes as base64 text. A `Float64` array whose numbers are all whole reads them
307
+ as integers. Use gRPC, or a newer server, when you read such arrays.
308
+
300
309
  ### 64-bit integers
301
310
 
302
311
  CamusDB is a 64-bit database, and a JavaScript number stops being able to name every integer above
@@ -564,8 +573,8 @@ A server from 0.13.2 on has sequences. A sequence stores `int64` values only, ha
564
573
  increment, and never cycles. The server refuses `CYCLE` with `CADB0533`, because a counter that
565
574
  wraps would issue again the values that committed rows already hold.
566
575
 
567
- `CREATE SEQUENCE`, `ALTER SEQUENCE`, and `DROP SEQUENCE` go to the DDL route. Two helpers compose
568
- the create and the drop statements:
576
+ `CREATE SEQUENCE`, `ALTER SEQUENCE`, `DROP SEQUENCE`, and `COMMENT ON SEQUENCE` go to the DDL
577
+ route. Two helpers compose the create and the drop statements:
569
578
 
570
579
  ```ts
571
580
  import { createSequenceStatement, dropSequenceStatement, nextValueExpression } from 'camusdb';
package/dist/json.d.ts CHANGED
@@ -14,8 +14,9 @@
14
14
  * driver: a row must come back holding what was written.
15
15
  *
16
16
  * So this module reads an integer that does not fit a `number` as a `bigint`, and writes a
17
- * `bigint` as the bare digits a JSON number is. Everything else behaves exactly as the built-in
18
- * functions do.
17
+ * `bigint` as the bare digits a JSON number is. It also writes a negative zero as `-0`, where
18
+ * `JSON.stringify` writes `0` and so turns a bound `-0.0` into a positive zero on the server.
19
+ * Everything else behaves exactly as the built-in functions do.
19
20
  */
20
21
  /**
21
22
  * Parses JSON text, reading an integer outside the safe range as a `bigint`.
@@ -27,7 +28,7 @@
27
28
  */
28
29
  export declare function parseLossless(text: string): unknown;
29
30
  /**
30
- * Serializes a value as JSON, writing a `bigint` as a JSON number.
31
+ * Serializes a value as JSON, writing a `bigint` as a JSON number and a negative zero as `-0`.
31
32
  *
32
33
  * `undefined`, a function, and a symbol are omitted from an object and become `null` in an array,
33
34
  * which is what `JSON.stringify` does. A value with a `toJSON` method is replaced by its result,
@@ -1 +1 @@
1
- {"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;;;GAYG;AAEH;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAID;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAIxD;AAmYD,sFAAsF;AACtF,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,SAAK,GAAG,MAAM,CAe9D;AAED,kFAAkF;AAClF,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,SAAI,GAAG,MAAM,CAa7D"}
1
+ {"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;;;;GAaG;AAEH;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAID;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAIxD;AAsYD,sFAAsF;AACtF,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,SAAK,GAAG,MAAM,CAe9D;AAED,kFAAkF;AAClF,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,SAAI,GAAG,MAAM,CAa7D"}
package/dist/json.js CHANGED
@@ -14,8 +14,9 @@
14
14
  * driver: a row must come back holding what was written.
15
15
  *
16
16
  * So this module reads an integer that does not fit a `number` as a `bigint`, and writes a
17
- * `bigint` as the bare digits a JSON number is. Everything else behaves exactly as the built-in
18
- * functions do.
17
+ * `bigint` as the bare digits a JSON number is. It also writes a negative zero as `-0`, where
18
+ * `JSON.stringify` writes `0` and so turns a bound `-0.0` into a positive zero on the server.
19
+ * Everything else behaves exactly as the built-in functions do.
19
20
  */
20
21
  /**
21
22
  * Parses JSON text, reading an integer outside the safe range as a `bigint`.
@@ -30,7 +31,7 @@ export function parseLossless(text) {
30
31
  }
31
32
  const LONG_INTEGER = /\d{16,}/;
32
33
  /**
33
- * Serializes a value as JSON, writing a `bigint` as a JSON number.
34
+ * Serializes a value as JSON, writing a `bigint` as a JSON number and a negative zero as `-0`.
34
35
  *
35
36
  * `undefined`, a function, and a symbol are omitted from an object and become `null` in an array,
36
37
  * which is what `JSON.stringify` does. A value with a `toJSON` method is replaced by its result,
@@ -55,7 +56,12 @@ function writeValue(value, out, depth) {
55
56
  out.push(value.toString());
56
57
  return;
57
58
  case 'number':
58
- out.push(Number.isFinite(value) ? String(value) : 'null');
59
+ // `String(-0)` is `'0'`. The server reads `-0` as the negative zero it is, into a float or
60
+ // an integer field alike.
61
+ if (Object.is(value, -0))
62
+ out.push('-0');
63
+ else
64
+ out.push(Number.isFinite(value) ? String(value) : 'null');
59
65
  return;
60
66
  case 'boolean':
61
67
  out.push(value ? 'true' : 'false');
package/dist/json.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"json.js","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;;;GAYG;AAEH;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAa,CAAC;AACpG,CAAC;AAED,MAAM,YAAY,GAAG,SAAS,CAAC;AAE/B;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IAC1B,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACtB,CAAC;AAED,MAAM,SAAS,GAAG,GAAG,CAAC;AAEtB,SAAS,UAAU,CAAC,KAAc,EAAE,GAAa,EAAE,KAAa;IAC9D,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;QACtB,MAAM,IAAI,SAAS,CAAC,4DAA4D,CAAC,CAAC;IACpF,CAAC;IAED,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjB,OAAO;IACT,CAAC;IAED,QAAQ,OAAO,KAAK,EAAE,CAAC;QACrB,KAAK,QAAQ;YACX,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3B,OAAO;QAET,KAAK,QAAQ;YACX,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC1D,OAAO;QAET,KAAK,SAAS;YACZ,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACnC,OAAO;QAET,KAAK,QAAQ;YACX,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YACvB,OAAO;QAET,KAAK,QAAQ;YACX,MAAM;QAER;YACE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjB,OAAO;IACX,CAAC;IAED,MAAM,MAAM,GAAG,KAAmC,CAAC;IAEnD,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACxC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QAC5C,OAAO;IACT,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,IAAI,CAAC,GAAG,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAEzB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAY,CAAC;YACjC,IAAI,SAAS,CAAC,IAAI,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;;gBACjC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QACxC,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACd,OAAO;IACT,CAAC;IAED,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;QACzB,YAAY,CAAC,KAAK,CAAC,OAAO,EAA0C,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QAClF,OAAO;IACT,CAAC;IAED,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AACtF,CAAC;AAED;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,OAA6C,EAAE,GAAa,EAAE,KAAa;IAC/F,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACd,IAAI,KAAK,GAAG,IAAI,CAAC;IAEjB,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,OAAO,EAAE,CAAC;QACtC,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,SAAS;QAEtC,wFAAwF;QACxF,gEAAgE;QAChE,MAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,SAAS,CAAC,UAAU,CAAC;YAAE,SAAS;QAEpC,IAAI,CAAC,KAAK;YAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,KAAK,GAAG,KAAK,CAAC;QAEd,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;QAC1B,UAAU,CAAC,UAAU,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,UAAU,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC;AACzF,CAAC;AAED,kFAAkF;AAClF,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAE9D,MAAM,MAAM,GAAG,KAAmC,CAAC;IAEnD,OAAO,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AACvE,CAAC;AAED,MAAM,OAAO,GAA2B;IACtC,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,KAAK;CACZ,CAAC;AAEF;;;;;;;;GAQG;AACH,sFAAsF;AACtF,MAAM,YAAY,GAChB,wGAAwG,CAAC;AAE3G,MAAM,UAAU,GACd,yGAAyG,CAAC;AAC5G,oCAAoC;AAEpC,SAAS,KAAK,CAAC,KAAa;IAC1B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,KAAK,GAAG,CAAC;IAEnD,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,EAAE;QACjD,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC;QAExC,OAAO,MAAM,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IACvE,CAAC,CAAC,GAAG,CAAC;AACR,CAAC;AAED,MAAM,WAAW,GAAG,+CAA+C,CAAC;AAEpE,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AACjD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAEjD,+FAA+F;AAC/F,MAAM,cAAc;IACD,IAAI,CAAS;IAEtB,QAAQ,GAAG,CAAC,CAAC;IAErB,YAAY,IAAY;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACrC,MAAM,IAAI,WAAW,CAAC,oDAAoD,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACtG,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,SAAS,CAAC,KAAa;QAC7B,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;YACtB,MAAM,IAAI,WAAW,CAAC,qDAAqD,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE3C,QAAQ,SAAS,EAAE,CAAC;YAClB,KAAK,GAAG;gBACN,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAChC,KAAK,GAAG;gBACN,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAC/B,KAAK,GAAG;gBACN,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;YAC3B,KAAK,GAAG;gBACN,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACxC,KAAK,GAAG;gBACN,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC1C,KAAK,GAAG;gBACN,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACxC;gBACE,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC;IAEO,UAAU,CAAC,KAAa;QAC9B,MAAM,MAAM,GAA4B,EAAE,CAAC;QAE3C,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,WAAW;QAC5B,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,EAAE,CAAC;YACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,SAAS,CAAC;YACR,IAAI,CAAC,cAAc,EAAE,CAAC;YAEtB,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,EAAE,CAAC;gBACrC,MAAM,IAAI,WAAW,CAAC,wCAAwC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC1F,CAAC;YAED,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAE9B,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjB,IAAI,CAAC,cAAc,EAAE,CAAC;YAEtB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAExC,0FAA0F;YAC1F,kEAAkE;YAClE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;YAEpG,IAAI,CAAC,cAAc,EAAE,CAAC;YAEtB,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,EAAE,CAAC;gBACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,SAAS;YACX,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjB,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC;IAEO,SAAS,CAAC,KAAa;QAC7B,MAAM,KAAK,GAAc,EAAE,CAAC;QAE5B,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,WAAW;QAC5B,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,EAAE,CAAC;YACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,SAAS,CAAC;YACR,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;YACtC,IAAI,CAAC,cAAc,EAAE,CAAC;YAEtB,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,EAAE,CAAC;gBACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,SAAS;YACX,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAEO,UAAU;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC5B,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,yBAAyB;QAE1C,kEAAkE;QAClE,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACxC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAE,CAAC;YAE5C,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACvB,SAAS,GAAG,IAAI,CAAC;gBACjB,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;gBACnB,SAAS;YACX,CAAC;YAED,4FAA4F;YAC5F,yFAAyF;YACzF,yDAAyD;YACzD,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,EAAE,CAAC;gBAC/C,MAAM,IAAI,WAAW,CACnB,uDAAuD,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAChF,CAAC;YACJ,CAAC;YAED,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;gBACtB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;gBACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAEhB,OAAO,SAAS,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACpE,CAAC;YAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,CAAC;QAED,MAAM,IAAI,WAAW,CAAC,4CAA4C,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACtF,CAAC;IAEO,UAAU;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;QAE5B,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG;YAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEtD,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QAE1D,IAAI,SAAS,GAAG,IAAI,CAAC;QAErB,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,EAAE,CAAC;YACrC,SAAS,GAAG,KAAK,CAAC;YAClB,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5D,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE1C,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;YACzC,SAAS,GAAG,KAAK,CAAC;YAClB,IAAI,CAAC,QAAQ,EAAE,CAAC;YAEhB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACtC,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG;gBAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;YAElD,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5D,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAElD,6FAA6F;QAC7F,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,WAAW,CAAC,gCAAgC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,CAAC,SAAS;YAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;QAEnC,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAE7B,IAAI,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;YAAE,OAAO,QAAQ,CAAC;QAEpD,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAE7B,OAAO,QAAQ,IAAI,QAAQ,IAAI,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACpF,CAAC;IAEO,WAAW,CAAI,OAAe,EAAE,KAAQ;QAC9C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClD,MAAM,IAAI,WAAW,CAAC,aAAa,OAAO,iBAAiB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACvF,CAAC;QAED,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,MAAM,CAAC,SAAiB;QAC9B,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,SAAS,EAAE,CAAC;YAC3C,MAAM,IAAI,WAAW,CAAC,aAAa,SAAS,iBAAiB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACzF,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;IAEO,cAAc;QACpB,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACxC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAE,CAAC;YAE5C,IAAI,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACxF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,SAAS;YACX,CAAC;YAED,OAAO;QACT,CAAC;IACH,CAAC;CACF;AAED,SAAS,OAAO,CAAC,SAA6B;IAC5C,OAAO,SAAS,KAAK,SAAS,IAAI,SAAS,IAAI,GAAG,IAAI,SAAS,IAAI,GAAG,CAAC;AACzE,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,QAAQ,CAAC,KAAc,EAAE,QAAQ,GAAG,EAAE;IACpD,QAAQ,OAAO,KAAK,EAAE,CAAC;QACrB,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC;QACf,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QACvE,KAAK,QAAQ;YACX,IAAI,CAAC;gBACH,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,QAAQ,CAAC;YAClB,CAAC;QACH;YACE,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,QAAQ,CAAC,KAAc,EAAE,QAAQ,GAAG,CAAC;IACnD,QAAQ,OAAO,KAAK,EAAE,CAAC;QACrB,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;QACnD,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7B,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;QACrD,CAAC;QACD;YACE,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"json.js","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"statements.d.ts","sourceRoot":"","sources":["../src/statements.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuEH,qDAAqD;AACrD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED,gEAAgE;AAChE,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAErD;AAED,yEAAyE;AACzE,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED,yEAAyE;AACzE,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEzD"}
1
+ {"version":3,"file":"statements.d.ts","sourceRoot":"","sources":["../src/statements.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA0EH,qDAAqD;AACrD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED,gEAAgE;AAChE,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAErD;AAED,yEAAyE;AACzE,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED,yEAAyE;AACzE,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEzD"}
@@ -45,10 +45,13 @@ const DDL_PREFIXES = [
45
45
  'DROP MATERIALIZED VIEW',
46
46
  'ALTER MATERIALIZED VIEW',
47
47
  // Sequences. ALTER SEQUENCE covers both the option form and RENAME TO. COMMENT ON SEQUENCE is
48
- // absent, as COMMENT ON is for every other object: the data route handles it itself.
48
+ // here although COMMENT ON for every other object is not: the data route handles those itself,
49
+ // but released servers refuse a sequence comment there as an unknown statement, and only the
50
+ // DDL route runs it.
49
51
  'CREATE SEQUENCE',
50
52
  'DROP SEQUENCE',
51
53
  'ALTER SEQUENCE',
54
+ 'COMMENT ON SEQUENCE',
52
55
  ];
53
56
  const DML_PREFIXES = ['INSERT', 'UPDATE', 'DELETE'];
54
57
  /**
@@ -91,14 +94,44 @@ export function isPreparableStatement(sql) {
91
94
  export function runsInOwnTransaction(sql) {
92
95
  return startsWithAny(sql, OWN_TRANSACTION_PREFIXES);
93
96
  }
97
+ /**
98
+ * True when the statement begins with one of the prefixes, ignoring case.
99
+ *
100
+ * The keywords of a prefix may be separated by any run of whitespace, including a line break, as
101
+ * they may be in SQL: `COMMENT ON\nSEQUENCE` is the same statement as `COMMENT ON SEQUENCE`, and
102
+ * a strict match would send it to a route that refuses it.
103
+ */
94
104
  function startsWithAny(sql, prefixes) {
95
105
  const trimmed = sql.trimStart();
96
106
  for (const prefix of prefixes) {
97
- if (trimmed.length < prefix.length)
98
- continue;
99
- if (trimmed.slice(0, prefix.length).toUpperCase() === prefix)
107
+ if (startsWithKeywords(trimmed, prefix))
100
108
  return true;
101
109
  }
102
110
  return false;
103
111
  }
112
+ function startsWithKeywords(text, prefix) {
113
+ let position = 0;
114
+ let wordStart = 0;
115
+ while (wordStart < prefix.length) {
116
+ if (wordStart > 0) {
117
+ // At least one whitespace character must separate two keywords.
118
+ const separatorStart = position;
119
+ while (position < text.length && /\s/.test(text[position]))
120
+ position++;
121
+ if (position === separatorStart)
122
+ return false;
123
+ }
124
+ const space = prefix.indexOf(' ', wordStart);
125
+ const wordEnd = space === -1 ? prefix.length : space;
126
+ const length = wordEnd - wordStart;
127
+ if (text.length - position < length)
128
+ return false;
129
+ if (text.slice(position, position + length).toUpperCase() !== prefix.slice(wordStart, wordEnd)) {
130
+ return false;
131
+ }
132
+ position += length;
133
+ wordStart = wordEnd + 1;
134
+ }
135
+ return true;
136
+ }
104
137
  //# sourceMappingURL=statements.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"statements.js","sourceRoot":"","sources":["../src/statements.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD;;;;;;;GAOG;AAEH;;;;;;;;;GASG;AACH,MAAM,YAAY,GAAG;IACnB,cAAc;IACd,YAAY;IACZ,aAAa;IACb,gGAAgG;IAChG,iGAAiG;IACjG,+CAA+C;IAC/C,UAAU;IACV,qBAAqB;IACrB,cAAc;IACd,YAAY;IACZ,6FAA6F;IAC7F,+FAA+F;IAC/F,6EAA6E;IAC7E,aAAa;IACb,wBAAwB;IACxB,WAAW;IACX,YAAY;IACZ,0BAA0B;IAC1B,wBAAwB;IACxB,yBAAyB;IACzB,8FAA8F;IAC9F,qFAAqF;IACrF,iBAAiB;IACjB,eAAe;IACf,gBAAgB;CACjB,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAEpD;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AAE7E;;;;;;;;GAQG;AACH,MAAM,wBAAwB,GAAG,CAAC,UAAU,CAAC,CAAC;AAE9C,qDAAqD;AACrD,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,OAAO,aAAa,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;AAC1C,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,OAAO,aAAa,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;AAC1C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAW;IAC1C,OAAO,cAAc,CAAC,GAAG,CAAC,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC;AACzD,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,qBAAqB,CAAC,GAAW;IAC/C,OAAO,aAAa,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;AACjD,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,OAAO,aAAa,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,aAAa,CAAC,GAAW,EAAE,QAA2B;IAC7D,MAAM,OAAO,GAAG,GAAG,CAAC,SAAS,EAAE,CAAC;IAEhC,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,IAAI,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM;YAAE,SAAS;QAE7C,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM;YAAE,OAAO,IAAI,CAAC;IAC5E,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"statements.js","sourceRoot":"","sources":["../src/statements.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,8 @@ export declare class NdjsonRowSource implements CamusRowSource {
25
25
  readonly columnNames: readonly string[];
26
26
  readonly columnTypes: readonly ColumnType[];
27
27
  readonly recordsAffected = -1;
28
+ /** The element type of each `Array` column, or `Null` when the header did not report one. */
29
+ private readonly elementTypes;
28
30
  private readonly lines;
29
31
  private finished;
30
32
  private closed;
@@ -1 +1 @@
1
- {"version":3,"file":"ndjson-row-source.d.ts","sourceRoot":"","sources":["../../src/transport/ndjson-row-source.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAKtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIvD,oFAAoF;AACpF,eAAO,MAAM,mBAAmB,yBAAyB,CAAC;AAE1D;;;;;;;;;;;GAWG;AACH,qBAAa,eAAgB,YAAW,cAAc;IACpD,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAExC,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC;IAE5C,QAAQ,CAAC,eAAe,MAAM;IAE9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IAEnC,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO;IAMP,kFAAkF;WACrE,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC;IAuDzE,IAAI,IAAI,OAAO,CAAC,SAAS,WAAW,EAAE,GAAG,SAAS,CAAC;IAuDnD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAQtB,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7C"}
1
+ {"version":3,"file":"ndjson-row-source.d.ts","sourceRoot":"","sources":["../../src/transport/ndjson-row-source.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAKtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIvD,oFAAoF;AACpF,eAAO,MAAM,mBAAmB,yBAAyB,CAAC;AAE1D;;;;;;;;;;;GAWG;AACH,qBAAa,eAAgB,YAAW,cAAc;IACpD,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAExC,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC;IAE5C,QAAQ,CAAC,eAAe,MAAM;IAE9B,6FAA6F;IAC7F,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwB;IAErD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IAEnC,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO;IAYP,kFAAkF;WACrE,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC;IAuDzE,IAAI,IAAI,OAAO,CAAC,SAAS,WAAW,EAAE,GAAG,SAAS,CAAC;IAuDnD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAQtB,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7C"}
@@ -28,13 +28,16 @@ export class NdjsonRowSource {
28
28
  columnNames;
29
29
  columnTypes;
30
30
  recordsAffected = -1;
31
+ /** The element type of each `Array` column, or `Null` when the header did not report one. */
32
+ elementTypes;
31
33
  lines;
32
34
  finished = false;
33
35
  closed = false;
34
- constructor(lines, names, types) {
36
+ constructor(lines, names, types, elementTypes) {
35
37
  this.lines = lines;
36
38
  this.columnNames = names;
37
39
  this.columnTypes = types;
40
+ this.elementTypes = elementTypes;
38
41
  }
39
42
  /** Reads the header line and reports a source positioned before the first row. */
40
43
  static async create(body) {
@@ -72,8 +75,8 @@ export class NdjsonRowSource {
72
75
  await lines.close();
73
76
  throw error;
74
77
  }
75
- const { names, types } = readSchema(parsed.columns);
76
- return new NdjsonRowSource(lines, names, types);
78
+ const { names, types, elementTypes } = readSchema(parsed.columns);
79
+ return new NdjsonRowSource(lines, names, types, elementTypes);
77
80
  }
78
81
  async next() {
79
82
  if (this.finished)
@@ -97,7 +100,7 @@ export class NdjsonRowSource {
97
100
  const cells = new Array(this.columnTypes.length).fill(NULL_VALUE);
98
101
  const limit = Math.min(cells.length, parsed.length);
99
102
  for (let c = 0; c < limit; c++) {
100
- cells[c] = decodeCell(parsed[c], this.columnTypes[c]);
103
+ cells[c] = decodeCell(parsed[c], this.columnTypes[c], this.elementTypes[c]);
101
104
  }
102
105
  return cells;
103
106
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ndjson-row-source.js","sourceRoot":"","sources":["../../src/transport/ndjson-row-source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ndjson-row-source.js","sourceRoot":"","sources":["../../src/transport/ndjson-row-source.ts"],"names":[],"mappings":"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"}
@@ -15,11 +15,18 @@ import { CamusResultSet } from '../result-set.js';
15
15
  * row, is what lets a result with no rows still report its column count, names, and types.
16
16
  */
17
17
  export declare function resultSetFromWire(columns: unknown, rows: unknown): CamusResultSet;
18
- /** The output column names and declared types of a response's `columns` element. */
19
- export declare function readSchema(columns: unknown): {
18
+ /** The output columns of a response's `columns` element. */
19
+ export interface WireSchema {
20
20
  names: string[];
21
21
  types: ColumnType[];
22
- };
22
+ /**
23
+ * The element type of each `Array` column, and `Null` for every other column. A server that
24
+ * predates the `elementType` field reports none, so every entry is `Null` from one.
25
+ */
26
+ elementTypes: ColumnType[];
27
+ }
28
+ /** The output column names, declared types, and array element types of a `columns` element. */
29
+ export declare function readSchema(columns: unknown): WireSchema;
23
30
  /**
24
31
  * Decodes one positional cell against its declared type.
25
32
  *
@@ -28,6 +35,9 @@ export declare function readSchema(columns: unknown): {
28
35
  * exact, which it always is for a real column reference. A scalar that arrives as a JSON-native
29
36
  * value is read by its token instead, so an over-broad inferred type on an expression column — a
30
37
  * numeric projection reported as a string, say — still round-trips.
38
+ *
39
+ * `elementType` is the schema's element type for an `Array` column, and `Null` when the server did
40
+ * not report one.
31
41
  */
32
- export declare function decodeCell(cell: unknown, declared: ColumnType): ColumnValue;
42
+ export declare function decodeCell(cell: unknown, declared: ColumnType, elementType?: ColumnType): ColumnValue;
33
43
  //# sourceMappingURL=rest-decode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rest-decode.d.ts","sourceRoot":"","sources":["../../src/transport/rest-decode.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAgB,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,GAAG,cAAc,CA0BjF;AAED,oFAAoF;AACpF,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,UAAU,EAAE,CAAA;CAAE,CAgBrF;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,GAAG,WAAW,CAmC3E"}
1
+ {"version":3,"file":"rest-decode.d.ts","sourceRoot":"","sources":["../../src/transport/rest-decode.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAgB,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,GAAG,cAAc,CA0BjF;AAED,4DAA4D;AAC5D,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,EAAE,UAAU,EAAE,CAAC;IAEpB;;;OAGG;IACH,YAAY,EAAE,UAAU,EAAE,CAAC;CAC5B;AAED,+FAA+F;AAC/F,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,UAAU,CAyBvD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE,UAAU,EACpB,WAAW,GAAE,UAA4B,GACxC,WAAW,CAmCb"}
@@ -16,7 +16,7 @@ import { CamusResultSet } from '../result-set.js';
16
16
  * row, is what lets a result with no rows still report its column count, names, and types.
17
17
  */
18
18
  export function resultSetFromWire(columns, rows) {
19
- const { names, types } = readSchema(columns);
19
+ const { names, types, elementTypes } = readSchema(columns);
20
20
  if (!Array.isArray(rows) || names.length === 0) {
21
21
  return new CamusResultSet(names, types, [], 0);
22
22
  }
@@ -30,25 +30,33 @@ export function resultSetFromWire(columns, rows) {
30
30
  const base = r * columnCount;
31
31
  const limit = Math.min(columnCount, row.length);
32
32
  for (let c = 0; c < limit; c++) {
33
- cells[base + c] = decodeCell(row[c], types[c]);
33
+ cells[base + c] = decodeCell(row[c], types[c], elementTypes[c]);
34
34
  }
35
35
  // Any position the row omitted keeps the null the array was filled with.
36
36
  }
37
37
  return new CamusResultSet(names, types, cells, rowCount);
38
38
  }
39
- /** The output column names and declared types of a response's `columns` element. */
39
+ /** The output column names, declared types, and array element types of a `columns` element. */
40
40
  export function readSchema(columns) {
41
41
  if (!Array.isArray(columns))
42
- return { names: [], types: [] };
42
+ return { names: [], types: [], elementTypes: [] };
43
43
  const names = new Array(columns.length);
44
44
  const types = new Array(columns.length);
45
+ const elementTypes = new Array(columns.length);
45
46
  for (let i = 0; i < columns.length; i++) {
46
47
  const column = columns[i];
47
48
  names[i] = typeof column?.name === 'string' ? column.name : '';
48
49
  const type = asNumber(column?.type, ColumnType.Null);
49
50
  types[i] = isColumnType(type) ? type : ColumnType.Null;
51
+ // An array of arrays is not a column type, so a nested element type is read as unknown rather
52
+ // than trusted.
53
+ const elementType = asNumber(column?.elementType, ColumnType.Null);
54
+ elementTypes[i] =
55
+ types[i] === ColumnType.Array && isColumnType(elementType) && elementType !== ColumnType.Array
56
+ ? elementType
57
+ : ColumnType.Null;
50
58
  }
51
- return { names, types };
59
+ return { names, types, elementTypes };
52
60
  }
53
61
  /**
54
62
  * Decodes one positional cell against its declared type.
@@ -58,8 +66,11 @@ export function readSchema(columns) {
58
66
  * exact, which it always is for a real column reference. A scalar that arrives as a JSON-native
59
67
  * value is read by its token instead, so an over-broad inferred type on an expression column — a
60
68
  * numeric projection reported as a string, say — still round-trips.
69
+ *
70
+ * `elementType` is the schema's element type for an `Array` column, and `Null` when the server did
71
+ * not report one.
61
72
  */
62
- export function decodeCell(cell, declared) {
73
+ export function decodeCell(cell, declared, elementType = ColumnType.Null) {
63
74
  if (cell === null || cell === undefined)
64
75
  return NULL_VALUE;
65
76
  switch (declared) {
@@ -76,7 +87,7 @@ export function decodeCell(cell, declared) {
76
87
  case ColumnType.Numeric:
77
88
  return decodeNumericCell(cell, declared);
78
89
  case ColumnType.Array:
79
- return decodeArrayCell(cell);
90
+ return decodeArrayCell(cell, elementType);
80
91
  default:
81
92
  // A defensive recovery for a gap in the server's type inference: a join projection can
82
93
  // report a uuid column's type as a string while still sending the two-int64 wire form. A
@@ -121,23 +132,40 @@ function decodeNumericCell(cell, declared) {
121
132
  /**
122
133
  * Decodes an array cell.
123
134
  *
124
- * The wire schema carries no per-element type for an array, so element types are read from the
125
- * JSON token. That is exact for every element type JSON has a token for. An element type that is
126
- * itself string-encoded or array-encoded — a uuid, a date, or bytes inside an array — is not
127
- * reconstructed, and reaches the caller as the string or number the token held.
135
+ * Elements are plain JSON values in the scalar wire forms: a date as ticks, bytes as base64, a uuid
136
+ * as `[high, low]`. With the column's element type from the schema, each element is decoded as a
137
+ * cell of that type, so the array matches what gRPC returns.
138
+ *
139
+ * A server that predates the schema field reports no element type, and the elements are read from
140
+ * their JSON tokens instead. That is exact for every element type JSON has a token for, and two
141
+ * further cases are inferred safely: a `[high, low]` pair can only be a uuid, and a fraction or a
142
+ * negative zero can only come from a float array, so every number in that array is a float. A
143
+ * date, bytes, or a whole-numbered float array is not reconstructed, and reaches the caller as the
144
+ * string or number the token held.
128
145
  */
129
- function decodeArrayCell(cell) {
146
+ function decodeArrayCell(cell, elementType) {
130
147
  if (!Array.isArray(cell))
131
148
  return NULL_VALUE;
132
149
  const values = new Array(cell.length);
133
- let elementType = ColumnType.Null;
150
+ if (elementType !== ColumnType.Null) {
151
+ for (let i = 0; i < cell.length; i++)
152
+ values[i] = decodeCell(cell[i], elementType);
153
+ return { type: ColumnType.Array, arrayValues: values, arrayElementType: elementType };
154
+ }
155
+ const numberType = cell.some(isFloatToken) ? ColumnType.Float64 : ColumnType.Null;
156
+ let inferred = ColumnType.Null;
134
157
  for (let i = 0; i < cell.length; i++) {
135
- const decoded = decodeScalarByToken(cell[i], ColumnType.Null);
158
+ const item = cell[i];
159
+ const decoded = Array.isArray(item) && item.length === 2 ? decodeUuidCell(item) : decodeScalarByToken(item, numberType);
136
160
  if (decoded.type !== ColumnType.Null)
137
- elementType = decoded.type;
161
+ inferred = decoded.type;
138
162
  values[i] = decoded;
139
163
  }
140
- return { type: ColumnType.Array, arrayValues: values, arrayElementType: elementType };
164
+ return { type: ColumnType.Array, arrayValues: values, arrayElementType: inferred };
165
+ }
166
+ /** True for a JSON number an `int64` cannot hold: a fraction, or a negative zero. */
167
+ function isFloatToken(item) {
168
+ return typeof item === 'number' && (!Number.isInteger(item) || Object.is(item, -0));
141
169
  }
142
170
  function decodeScalarByToken(cell, declared) {
143
171
  switch (typeof cell) {
@@ -146,10 +174,13 @@ function decodeScalarByToken(cell, declared) {
146
174
  case 'boolean':
147
175
  return { type: ColumnType.Bool, boolValue: cell };
148
176
  case 'bigint':
177
+ if (declared === ColumnType.Float64 || declared === ColumnType.Float32) {
178
+ return decodeFloat(Number(cell), declared);
179
+ }
149
180
  return { type: ColumnType.Integer64, longValue: cell };
150
181
  case 'number':
151
182
  if (declared === ColumnType.Float64 || declared === ColumnType.Float32) {
152
- return { type: declared, floatValue: cell };
183
+ return decodeFloat(cell, declared);
153
184
  }
154
185
  return Number.isInteger(cell)
155
186
  ? { type: ColumnType.Integer64, longValue: BigInt(cell) }
@@ -158,6 +189,14 @@ function decodeScalarByToken(cell, declared) {
158
189
  return NULL_VALUE;
159
190
  }
160
191
  }
192
+ /**
193
+ * A float cell. The server writes a `float32` as the shortest text that names it, which read as a
194
+ * double is a nearby double rather than the stored value: `-9.321863E+23` is not a `float32`.
195
+ * Rounding it back to single precision recovers the stored value, which is what gRPC returns.
196
+ */
197
+ function decodeFloat(value, declared) {
198
+ return { type: declared, floatValue: declared === ColumnType.Float32 ? Math.fround(value) : value };
199
+ }
161
200
  /**
162
201
  * An `id` cell that did not arrive as a string. The server always sends one as text, so this is a
163
202
  * defence against a malformed reply rather than a path a healthy server takes.
@@ -1 +1 @@
1
- {"version":3,"file":"rest-decode.js","sourceRoot":"","sources":["../../src/transport/rest-decode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rest-decode.js","sourceRoot":"","sources":["../../src/transport/rest-decode.ts"],"names":[],"mappings":"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"}
@@ -113,7 +113,8 @@ function encodeInferred(value) {
113
113
  case 'string':
114
114
  return { type: ColumnType.String, strValue: value };
115
115
  case 'number':
116
- return Number.isInteger(value)
116
+ // A negative zero is a float: an int64 has no sign for zero, so it would bind as 0.
117
+ return isWholeInteger(value)
117
118
  ? { type: ColumnType.Integer64, longValue: BigInt(value) }
118
119
  : { type: ColumnType.Float64, floatValue: value };
119
120
  case 'object':
@@ -160,7 +161,7 @@ function encodeArray(value, declaredElementType) {
160
161
  // JavaScript has one number type, so `[2, 1.5]` is a float array whose first value happens
161
162
  // to be whole. Read from the first number alone it would be Integer64, and 1.5 would then
162
163
  // fail to encode. A bigint or a `camus.*` element states its type, so it is not widened.
163
- if (typeof item === 'number' && elementType === ColumnType.Integer64 && hasFractionalNumber(value)) {
164
+ if (typeof item === 'number' && elementType === ColumnType.Integer64 && hasFloatNumber(value)) {
164
165
  elementType = ColumnType.Float64;
165
166
  }
166
167
  break;
@@ -180,14 +181,21 @@ function encodeArray(value, declaredElementType) {
180
181
  }
181
182
  return { type: ColumnType.Array, arrayElementType: elementType, arrayValues: items };
182
183
  }
183
- /** True when some element is a `number` that is not an integer, `NaN` and the infinities included. */
184
- function hasFractionalNumber(items) {
184
+ /**
185
+ * True when some element is a `number` an int64 cannot hold: one that is not an integer, `NaN` and
186
+ * the infinities included, or a negative zero.
187
+ */
188
+ function hasFloatNumber(items) {
185
189
  for (const item of items) {
186
- if (typeof item === 'number' && !Number.isInteger(item))
190
+ if (typeof item === 'number' && !isWholeInteger(item))
187
191
  return true;
188
192
  }
189
193
  return false;
190
194
  }
195
+ /** True for an integer `number` other than negative zero, which only a float can hold. */
196
+ function isWholeInteger(value) {
197
+ return Number.isInteger(value) && !Object.is(value, -0);
198
+ }
191
199
  function inferElementType(item) {
192
200
  if (isTypedParameter(item))
193
201
  return item.value.type;
@@ -1 +1 @@
1
- {"version":3,"file":"encode.js","sourceRoot":"","sources":["../../src/values/encode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"encode.js","sourceRoot":"","sources":["../../src/values/encode.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "camusdb",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "description": "CamusDB connector for Node.js — REST and gRPC transports, transactions, prepared statements, learned routing, and online backups.",
5
5
  "license": "MIT",
6
6
  "author": "CamusDB",