@cubejs-backend/duckdb-driver 0.35.81 → 0.36.1

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.
@@ -39,10 +39,12 @@ const DuckDBToGenericType = {
39
39
  date: 'timestamp',
40
40
  };
41
41
  class DuckDBDriver extends base_driver_1.BaseDriver {
42
+ config;
43
+ initPromise = null;
44
+ schema;
42
45
  constructor(config = {}) {
43
46
  super();
44
47
  this.config = config;
45
- this.initPromise = null;
46
48
  this.schema = this.config.schema || (0, shared_1.getEnv)('duckdbSchema', this.config);
47
49
  }
48
50
  toGenericType(columnType) {
@@ -1 +1 @@
1
- {"version":3,"file":"DuckDBDriver.js","sourceRoot":"","sources":["../../src/DuckDBDriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DuckDBDriver.js","sourceRoot":"","sources":["../../src/DuckDBDriver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6DAOqC;AACrC,mDAAgD;AAChD,+BAAiC;AACjC,+CAAiC;AACjC,mCAA8C;AAE9C,+CAA4C;AAC5C,uDAAkE;AAElE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAalD,MAAM,mBAAmB,GAAwC;IAC/D,0EAA0E;IAC1E,yHAAyH;IACzH,6CAA6C;IAC7C,IAAI,EAAE,WAAW;CAClB,CAAC;AAEF,MAAa,YAAa,SAAQ,wBAAU;IAMrB;IALX,WAAW,GAAgC,IAAI,CAAC;IAElD,MAAM,CAAS;IAEvB,YACqB,SAAoC,EAAE;QAEzD,KAAK,EAAE,CAAC;QAFW,WAAM,GAAN,MAAM,CAAgC;QAIzD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,IAAA,eAAM,EAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1E,CAAC;IAEM,aAAa,CAAC,UAAkB;QACrC,IAAI,UAAU,CAAC,WAAW,EAAE,IAAI,mBAAmB,EAAE;YACnD,OAAO,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;SACtD;QAED,OAAO,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IACvD,CAAC;IAES,KAAK,CAAC,IAAI;QAClB,MAAM,KAAK,GAAG,IAAA,eAAM,EAAC,uBAAuB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3D,MAAM,MAAM,GAAG,IAAA,eAAM,EAAC,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAEzD,oEAAoE;QACpE,IAAI,KAAa,CAAC;QAClB,IAAI,MAAM,EAAE;YACV,KAAK,GAAG,MAAM,CAAC;SAChB;aAAM,IAAI,KAAK,EAAE;YAChB,KAAK,GAAG,wBAAwB,KAAK,2BAA2B,OAAO,EAAE,CAAC;SAC3E;aAAM;YACL,KAAK,GAAG,UAAU,CAAC;SACpB;QAED,IAAI,SAAS,CAAC;QACd,IAAI,KAAK,EAAE;YACT,SAAS,GAAG,EAAE,iBAAiB,EAAE,QAAQ,OAAO,EAAE,EAAE,CAAC;SACtD;QAED,+EAA+E;QAC/E,MAAM,EAAE,GAAG,IAAI,iBAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAE1C,4GAA4G;QAC5G,MAAM,iBAAiB,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QACvC,MAAM,SAAS,GAAqD,IAAA,gBAAS,EAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAQ,CAAC;QAErI,IAAI;YACF,MAAM,SAAS,CAAC,gBAAgB,CAAC,CAAC;SACnC;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE;oBACrD,CAAC;iBACF,CAAC,CAAC;aACJ;YAED,qGAAqG;YACrG,MAAM,CAAC,CAAC;SACT;QAED,IAAI;YACF,MAAM,SAAS,CAAC,aAAa,CAAC,CAAC;SAChC;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE;oBAChD,CAAC;iBACF,CAAC,CAAC;aACJ;YAED,qGAAqG;YACrG,MAAM,CAAC,CAAC;SACT;QAED,MAAM,aAAa,GAAG;YACpB;gBACE,GAAG,EAAE,WAAW;gBAChB,KAAK,EAAE,IAAA,eAAM,EAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC;aAC7C;YACD;gBACE,GAAG,EAAE,aAAa;gBAClB,KAAK,EAAE,IAAA,eAAM,EAAC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC;aAC/C;YACD;gBACE,GAAG,EAAE,kBAAkB;gBACvB,KAAK,EAAE,IAAA,eAAM,EAAC,qBAAqB,EAAE,IAAI,CAAC,MAAM,CAAC;aAClD;YACD;gBACE,GAAG,EAAE,sBAAsB;gBAC3B,KAAK,EAAE,IAAA,eAAM,EAAC,2BAA2B,EAAE,IAAI,CAAC,MAAM,CAAC;aACxD;YACD;gBACE,GAAG,EAAE,cAAc;gBACnB,KAAK,EAAE,IAAA,eAAM,EAAC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC;aAChD;YACD;gBACE,GAAG,EAAE,QAAQ;gBACb,KAAK,EAAE,IAAA,eAAM,EAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC;aAC3C;YACD;gBACE,GAAG,EAAE,YAAY;gBACjB,KAAK,EAAE,IAAA,eAAM,EAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC;aAC7C;YACD;gBACE,GAAG,EAAE,cAAc;gBACnB,KAAK,EAAE,IAAA,eAAM,EAAC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC;aAC/C;YACD;gBACE,GAAG,EAAE,kBAAkB;gBACvB,KAAK,EAAE,IAAA,eAAM,EAAC,sBAAsB,EAAE,IAAI,CAAC,MAAM,CAAC;aACnD;SACF,CAAC;QAEF,KAAK,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,aAAa,EAAE;YAC1C,IAAI,KAAK,EAAE;gBACT,IAAI;oBACF,MAAM,SAAS,CAAC,OAAO,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC;iBAC1C;gBAAC,OAAO,CAAC,EAAE;oBACV,IAAI,IAAI,CAAC,MAAM,EAAE;wBACf,OAAO,CAAC,KAAK,CAAC,yCAAyC,GAAG,EAAE,EAAE;4BAC5D,CAAC;yBACF,CAAC,CAAC;qBACJ;iBACF;aACF;SACF;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;YACvB,IAAI;gBACF,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;aACtC;YAAC,OAAO,CAAC,EAAE;gBACV,IAAI,IAAI,CAAC,MAAM,EAAE;oBACf,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE;wBACrD,CAAC;qBACF,CAAC,CAAC;iBACJ;aACF;SACF;QAED,OAAO;YACL,iBAAiB;YACjB,EAAE;SACH,CAAC;IACJ,CAAC;IAEe,sBAAsB;QACpC,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,OAAO,GAAG,KAAK,CAAC,sBAAsB,EAAE,yBAAyB,IAAI,CAAC,MAAM,GAAG,CAAC;SACjF;QAED,OAAO,KAAK,CAAC,sBAAsB,EAAE,CAAC;IACxC,CAAC;IAEe,eAAe;QAC7B,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,OAAO;iCACoB,KAAK,CAAC,eAAe,CAAC,aAAa,CAAC;;iCAEpC,IAAI,CAAC,MAAM;;OAErC,CAAC;SACH;QACD,OAAO,KAAK,CAAC,eAAe,EAAE,CAAC;IACjC,CAAC;IAES,KAAK,CAAC,iBAAiB;QAC/B,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;SAChC;QAED,IAAI;YACF,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC;SAC/B;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YAExB,MAAM,CAAC,CAAC;SACT;IACH,CAAC;IAEM,MAAM,CAAC,YAAY;QACxB,OAAO,yBAAW,CAAC;IACrB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAc,KAAa,EAAE,SAAoB,EAAE,EAAE,QAAuB;QAC5F,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC7D,MAAM,UAAU,GAAoD,IAAA,gBAAS,EAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAQ,CAAC;QAEpI,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,CAAC;QAClD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACzB,IAAA,8BAAY,EAAC,IAAI,CAAC,CAAC;YAEnB,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,MAAM,CACjB,KAAa,EACb,MAAiB,EACjB,EAAE,aAAa,EAAiB;QAEhC,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAE9C,gDAAgD;QAChD,uEAAuE;QACvE,iFAAiF;QACjF,MAAM,UAAU,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QAChC,MAAM,UAAU,GAAG,IAAA,gBAAS,EAAC,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEhE,IAAI;YACF,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;YAClE,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,iCAAe,EAAE,CAAC,CAAC;YAErG,OAAO;gBACL,SAAS;gBACT,OAAO,EAAE,KAAK,IAAI,EAAE;oBAClB,MAAM,UAAU,EAAE,CAAC;gBACrB,CAAC;aACF,CAAC;SACH;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,UAAU,EAAE,CAAC;YAEnB,MAAM,CAAC,CAAC;SACT;IACH,CAAC;IAEM,KAAK,CAAC,cAAc;QACzB,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IACnC,CAAC;IAEM,QAAQ;QACb,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC;YACtC,MAAM,KAAK,GAAG,IAAA,gBAAS,EAAC,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YAExB,MAAM,KAAK,EAAE,CAAC;SACf;IACH,CAAC;CACF;AAjPD,oCAiPC"}
@@ -2,7 +2,15 @@ import { BaseFilter, BaseQuery } from '@cubejs-backend/schema-compiler';
2
2
  export declare class DuckDBQuery extends BaseQuery {
3
3
  newFilter(filter: any): BaseFilter;
4
4
  convertTz(field: string): string;
5
+ timeStampCast(value: string): string;
5
6
  timeGroupedColumn(granularity: string, dimension: string): string;
7
+ /**
8
+ * Returns sql for source expression floored to timestamps aligned with
9
+ * intervals relative to origin timestamp point.
10
+ * DuckDB operates with whole intervals as is without measuring them in plain seconds,
11
+ * so the resulting date will be human-expected aligned with intervals.
12
+ */
13
+ dateBin(interval: string, source: string, origin: string): string;
6
14
  countDistinctApprox(sql: string): string;
7
15
  sqlTemplates(): any;
8
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DuckDBQuery.d.ts","sourceRoot":"","sources":["../../src/DuckDBQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAgBxE,qBAAa,WAAY,SAAQ,SAAS;IACjC,SAAS,CAAC,MAAM,EAAE,GAAG,GAAG,UAAU;IAIlC,SAAS,CAAC,KAAK,EAAE,MAAM;IAIvB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAIxD,mBAAmB,CAAC,GAAG,EAAE,MAAM;IAI/B,YAAY;CAOpB"}
1
+ {"version":3,"file":"DuckDBQuery.d.ts","sourceRoot":"","sources":["../../src/DuckDBQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAgBxE,qBAAa,WAAY,SAAQ,SAAS;IACjC,SAAS,CAAC,MAAM,EAAE,GAAG,GAAG,UAAU;IAIlC,SAAS,CAAC,KAAK,EAAE,MAAM;IAIvB,aAAa,CAAC,KAAK,EAAE,MAAM;IAI3B,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAI/D;;;;;OAKG;IACI,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAWjE,mBAAmB,CAAC,GAAG,EAAE,MAAM;IAI/B,YAAY;CAOpB"}
@@ -21,9 +21,27 @@ class DuckDBQuery extends schema_compiler_1.BaseQuery {
21
21
  convertTz(field) {
22
22
  return `timezone('${this.timezone}', ${field}::timestamptz)`;
23
23
  }
24
+ timeStampCast(value) {
25
+ return `'${value}'::TIMESTAMPTZ`;
26
+ }
24
27
  timeGroupedColumn(granularity, dimension) {
25
28
  return GRANULARITY_TO_INTERVAL[granularity](dimension);
26
29
  }
30
+ /**
31
+ * Returns sql for source expression floored to timestamps aligned with
32
+ * intervals relative to origin timestamp point.
33
+ * DuckDB operates with whole intervals as is without measuring them in plain seconds,
34
+ * so the resulting date will be human-expected aligned with intervals.
35
+ */
36
+ dateBin(interval, source, origin) {
37
+ const timeUnit = this.diffTimeUnitForInterval(interval);
38
+ const beginOfTime = this.timeStampCast('1970-01-01 00:00:00.000');
39
+ return `${this.timeStampCast(origin)}' + INTERVAL '${interval}' *
40
+ floor(
41
+ date_diff('${timeUnit}', ${this.timeStampCast(origin)}, ${source}) /
42
+ date_diff('${timeUnit}', ${beginOfTime}, ${beginOfTime} + INTERVAL '${interval}')
43
+ )::int`;
44
+ }
27
45
  countDistinctApprox(sql) {
28
46
  return `approx_count_distinct(${sql})`;
29
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DuckDBQuery.js","sourceRoot":"","sources":["../../src/DuckDBQuery.ts"],"names":[],"mappings":";;;AAAA,qEAAwE;AAExE,MAAM,uBAAuB,GAA6C;IACxE,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,qBAAqB,IAAI,GAAG;IACzC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,sBAAsB,IAAI,GAAG;IAC3C,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,sBAAsB,IAAI,GAAG;IAC3C,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,wBAAwB,IAAI,GAAG;IAC/C,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,wBAAwB,IAAI,GAAG;IAC/C,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,uBAAuB,IAAI,GAAG;IAC7C,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,yBAAyB,IAAI,GAAG;IACjD,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,sBAAsB,IAAI,GAAG;CAC5C,CAAC;AAEF,MAAM,YAAa,SAAQ,4BAAU;CACpC;AAED,MAAa,WAAY,SAAQ,2BAAS;IACjC,SAAS,CAAC,MAAW;QAC1B,OAAO,IAAI,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAEM,SAAS,CAAC,KAAa;QAC5B,OAAO,aAAa,IAAI,CAAC,QAAQ,MAAM,KAAK,gBAAgB,CAAC;IAC/D,CAAC;IAEM,iBAAiB,CAAC,WAAmB,EAAE,SAAiB;QAC7D,OAAO,uBAAuB,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC;IACzD,CAAC;IAEM,mBAAmB,CAAC,GAAW;QACpC,OAAO,yBAAyB,GAAG,GAAG,CAAC;IACzC,CAAC;IAEM,YAAY;QACjB,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;QACvC,SAAS,CAAC,SAAS,CAAC,SAAS,GAAG,+BAA+B,CAAC;QAChE,SAAS,CAAC,SAAS,CAAC,KAAK,GAAG,0BAA0B,CAAC;QACvD,SAAS,CAAC,SAAS,CAAC,QAAQ,GAAG,6BAA6B,CAAC;QAC7D,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAxBD,kCAwBC"}
1
+ {"version":3,"file":"DuckDBQuery.js","sourceRoot":"","sources":["../../src/DuckDBQuery.ts"],"names":[],"mappings":";;;AAAA,qEAAwE;AAExE,MAAM,uBAAuB,GAA6C;IACxE,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,qBAAqB,IAAI,GAAG;IACzC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,sBAAsB,IAAI,GAAG;IAC3C,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,sBAAsB,IAAI,GAAG;IAC3C,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,wBAAwB,IAAI,GAAG;IAC/C,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,wBAAwB,IAAI,GAAG;IAC/C,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,uBAAuB,IAAI,GAAG;IAC7C,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,yBAAyB,IAAI,GAAG;IACjD,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,sBAAsB,IAAI,GAAG;CAC5C,CAAC;AAEF,MAAM,YAAa,SAAQ,4BAAU;CACpC;AAED,MAAa,WAAY,SAAQ,2BAAS;IACjC,SAAS,CAAC,MAAW;QAC1B,OAAO,IAAI,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAEM,SAAS,CAAC,KAAa;QAC5B,OAAO,aAAa,IAAI,CAAC,QAAQ,MAAM,KAAK,gBAAgB,CAAC;IAC/D,CAAC;IAEM,aAAa,CAAC,KAAa;QAChC,OAAO,IAAI,KAAK,gBAAgB,CAAC;IACnC,CAAC;IAEM,iBAAiB,CAAC,WAAmB,EAAE,SAAiB;QAC7D,OAAO,uBAAuB,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC;IACzD,CAAC;IAED;;;;;OAKG;IACI,OAAO,CAAC,QAAgB,EAAE,MAAc,EAAE,MAAc;QAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QACxD,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;QAElE,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,iBAAiB,QAAQ;;qBAE5C,QAAQ,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,MAAM;qBACnD,QAAQ,MAAM,WAAW,KAAK,WAAW,gBAAgB,QAAQ;aACzE,CAAC;IACZ,CAAC;IAEM,mBAAmB,CAAC,GAAW;QACpC,OAAO,yBAAyB,GAAG,GAAG,CAAC;IACzC,CAAC;IAEM,YAAY;QACjB,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;QACvC,SAAS,CAAC,SAAS,CAAC,SAAS,GAAG,+BAA+B,CAAC;QAChE,SAAS,CAAC,SAAS,CAAC,KAAK,GAAG,0BAA0B,CAAC;QACvD,SAAS,CAAC,SAAS,CAAC,QAAQ,GAAG,6BAA6B,CAAC;QAC7D,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AA7CD,kCA6CC"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@cubejs-backend/duckdb-driver",
3
3
  "description": "Cube DuckDB database driver",
4
4
  "author": "Cube Dev, Inc.",
5
- "version": "0.35.81",
5
+ "version": "0.36.1",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "https://github.com/cube-js/cube.git",
@@ -27,17 +27,17 @@
27
27
  "lint:fix": "eslint --fix src/* --ext .ts"
28
28
  },
29
29
  "dependencies": {
30
- "@cubejs-backend/base-driver": "^0.35.81",
31
- "@cubejs-backend/schema-compiler": "^0.35.81",
32
- "@cubejs-backend/shared": "^0.35.67",
30
+ "@cubejs-backend/base-driver": "^0.36.0",
31
+ "@cubejs-backend/schema-compiler": "^0.36.1",
32
+ "@cubejs-backend/shared": "^0.36.0",
33
33
  "duckdb": "^1.0.0"
34
34
  },
35
35
  "license": "Apache-2.0",
36
36
  "devDependencies": {
37
- "@cubejs-backend/linter": "^0.35.0",
38
- "@cubejs-backend/testing-shared": "^0.35.81",
37
+ "@cubejs-backend/linter": "^0.36.0",
38
+ "@cubejs-backend/testing-shared": "^0.36.1",
39
39
  "@types/jest": "^27",
40
- "@types/node": "^16",
40
+ "@types/node": "^18",
41
41
  "jest": "^27",
42
42
  "typescript": "~5.2.2"
43
43
  },
@@ -50,5 +50,5 @@
50
50
  "eslintConfig": {
51
51
  "extends": "../cubejs-linter"
52
52
  },
53
- "gitHead": "995f526853573d15ee57566c14c129005ca34f0f"
53
+ "gitHead": "6f8b097a58b2b7be52880cd7e030f09a3abc2b8c"
54
54
  }