diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index ff3368acb3db3..28310e2e146e4 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,5 +1,5 @@ **Check List** -- [ ] Tests has been run in packages where changes made if available +- [ ] Tests have been run in packages where changes made if available - [ ] Linter has been run for changed code - [ ] Tests for the changes have been added if not covered yet - [ ] Docs have been added / updated if required diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 7beccf1140ac2..d425d51d8b1ea 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -152,7 +152,7 @@ jobs: strategy: matrix: node-version: [20.x] - os-version: ["macos-12"] + os-version: ["macos-13"] target: ["x86_64-apple-darwin", "aarch64-apple-darwin"] python-version: ["3.9", "3.10", "3.11", "3.12", "fallback"] include: @@ -191,7 +191,7 @@ jobs: components: rustfmt target: ${{ matrix.target }} - name: Install Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 if: (matrix.python-version != 'fallback') with: python-version: ${{ matrix.python-version }} @@ -265,7 +265,7 @@ jobs: rustflags: "" components: rustfmt - name: Install Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 if: (matrix.python-version != 'fallback') with: python-version: ${{ matrix.python-version }} @@ -676,7 +676,7 @@ jobs: # Please use minimal possible version of macOS, because it produces constraint on libstdc++ tar_executable: tar - target: x86_64-apple-darwin - os: macos-12 + os: macos-13 executable_name: cubestored # upx has been disabled because it is crashing for macOS Ventura or above! It was disabled on 2024-09-05. strip: false @@ -784,7 +784,7 @@ jobs: }) detect_branch: - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 outputs: is_master: ${{ steps.detect_branch.outputs.is_master }} branch: ${{ steps.detect_branch.outputs.branch }} @@ -793,20 +793,10 @@ jobs: uses: actions/checkout@v4 - name: Detect branch name id: detect_branch - env: - EVENT_BASE_REF: ${{ github.event.base_ref || 'master' }} run: | - BRANCH=${EVENT_BASE_REF#refs/heads/} - echo "Detected branch: $BRANCH" - - IS_MASTER=false - if [ "$BRANCH" == "master" ]; then - IS_MASTER=true - fi - echo "Detected is_master: $IS_MASTER" - - echo "branch=$BRANCH" >> "$GITHUB_OUTPUT" - echo "is_master=$IS_MASTER" >> "$GITHUB_OUTPUT" + # Git & GitHub (for now) doesn't provide an easy/stable way to detect branch name from tag. + echo "branch=lts/v1.0" >> "$GITHUB_OUTPUT" + echo "is_master=false" >> "$GITHUB_OUTPUT" trigger-repo-sync: name: Trigger runtime repo @@ -817,7 +807,7 @@ jobs: - name: Checkout uses: actions/checkout@v4 - name: Trigger runtime - uses: actions/github-script@v6 + uses: actions/github-script@v7 with: github-token: ${{ secrets.GH_TRIGGER_TOKEN }} script: | diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml index 778f2b91cff35..9f28caec0a0f6 100644 --- a/.github/workflows/push.yml +++ b/.github/workflows/push.yml @@ -42,8 +42,11 @@ jobs: matrix: # Current docker version + next LTS node-version: [20.x, 22.x] + transpile-worker-threads: [false, true] fail-fast: false + env: + CUBEJS_TRANSPILATION_WORKER_THREADS: ${{ matrix.transpile-worker-threads }} steps: - id: get-tag-out run: echo "$OUT" diff --git a/.github/workflows/rust-cubesql.yml b/.github/workflows/rust-cubesql.yml index 384bcc166be6e..993a39446ad36 100644 --- a/.github/workflows/rust-cubesql.yml +++ b/.github/workflows/rust-cubesql.yml @@ -245,7 +245,7 @@ jobs: components: rustfmt target: ${{ matrix.target }} - name: Install Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 if: (matrix.python-version != 'fallback') with: python-version: ${{ matrix.python-version }} @@ -327,7 +327,7 @@ jobs: rustflags: "" components: rustfmt - name: Install Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 if: (matrix.python-version != 'fallback') with: python-version: ${{ matrix.python-version }} diff --git a/.github/workflows/rust-cubestore-master.yml b/.github/workflows/rust-cubestore-master.yml index 9ebd512adb48c..e3c0a2665cf74 100644 --- a/.github/workflows/rust-cubestore-master.yml +++ b/.github/workflows/rust-cubestore-master.yml @@ -149,7 +149,7 @@ jobs: - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Push to Docker Hub - uses: docker/build-push-action@v3 + uses: docker/build-push-action@v6 with: context: ./rust/cubestore file: ./rust/cubestore/Dockerfile @@ -195,7 +195,7 @@ jobs: # cubestored.exe: CantPackException: superfluous data between sections compress: false # Please use minimal possible version of macOS, because it produces constraint on libstdc++ - - os: macos-12 + - os: macos-13 target: x86_64-apple-darwin executable_name: cubestored # upx has been disabled because it is crashing for macOS Ventura or above! It was disabled on 2024-09-05. diff --git a/.github/workflows/rust-cubestore.yml b/.github/workflows/rust-cubestore.yml index cb08763913b93..3734e72f3e489 100644 --- a/.github/workflows/rust-cubestore.yml +++ b/.github/workflows/rust-cubestore.yml @@ -97,7 +97,7 @@ jobs: - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Build only - uses: docker/build-push-action@v3 + uses: docker/build-push-action@v6 with: context: ./rust/cubestore/ file: ./rust/cubestore/Dockerfile @@ -126,7 +126,7 @@ jobs: # cubestored.exe: CantPackException: superfluous data between sections compress: false # Please use minimal possible version of macOS, because it produces constraint on libstdc++ - - os: macos-12 + - os: macos-13 target: x86_64-apple-darwin executable_name: cubestored # upx has been disabled because it is crashing for macOS Ventura or above! It was disabled on 2024-09-05. diff --git a/CHANGELOG.md b/CHANGELOG.md index cce739c057eca..4644945f11851 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,37 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.7](https://github.com/cube-js/cube/compare/v1.0.6...v1.0.7) (2024-12-08) + + +### Bug Fixes + +* **ksql-driver:** Select queries for ksql allowed only from Cube Store. In order to query ksql create pre-aggregation first if Kafka download isn't enabled ([8af60fe](https://github.com/cube-js/cube/commit/8af60fee19114f5a6b2a9a615035062ee99774cb)) + + + + + +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + + +### Bug Fixes + +* **databricks-driver:** fix databricks bucket URL parsing. Now driver supports both (legacy and modern urls) ([#8968](https://github.com/cube-js/cube/issues/8968)) ([#9026](https://github.com/cube-js/cube/issues/9026)) ([3958a62](https://github.com/cube-js/cube/commit/3958a62d91f65c1fdf04206223ade2e48f9e8344)) +* **schema-compiler:** set missed CUBESQL_SQL_PUSH_DOWN to true by default in convertTzForRawTimeDimension flag ([#8939](https://github.com/cube-js/cube/issues/8939)) ([b20a3ca](https://github.com/cube-js/cube/commit/b20a3ca087e7002b6600e6d4c82d6a2372d54e1e)) + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package cubejs + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) diff --git a/lerna-publish.sh b/lerna-publish.sh index 896f91cdd59c7..2d6ce46994fd1 100755 --- a/lerna-publish.sh +++ b/lerna-publish.sh @@ -1,14 +1,8 @@ #!/bin/bash . .gh-token -BRANCH="$(git rev-parse --abbrev-ref HEAD)" -if [[ "$BRANCH" != "master" ]]; then - echo 'Must be run from the master branch'; - exit 1; -fi - BUMP=$1 if [ "x$BUMP" == "x" ]; then BUMP=patch fi -yarn lerna version --create-release=github --conventional-commits --exact $BUMP +yarn lerna version --create-release=github --conventional-commits --force-publish --exact $BUMP diff --git a/lerna.json b/lerna.json index c6878ad59dbcf..f47a5b4940470 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.0.4", + "version": "1.0.7", "npmClient": "yarn", "useWorkspaces": true, "packages": [ @@ -13,6 +13,12 @@ "npmClientArgs": [ "--frozen-lockfile" ] + }, + "version": { + "allowBranch": [ + "master", + "lts/*" + ] } } } diff --git a/packages/cubejs-api-gateway/CHANGELOG.md b/packages/cubejs-api-gateway/CHANGELOG.md index 2d205207d3309..63091f75f3082 100644 --- a/packages/cubejs-api-gateway/CHANGELOG.md +++ b/packages/cubejs-api-gateway/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/api-gateway + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/api-gateway + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) diff --git a/packages/cubejs-api-gateway/package.json b/packages/cubejs-api-gateway/package.json index 1848c22eb1170..6e4fb6efc8cdf 100644 --- a/packages/cubejs-api-gateway/package.json +++ b/packages/cubejs-api-gateway/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/api-gateway", "description": "Cube.js API Gateway", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -27,8 +27,8 @@ "dist/src/*" ], "dependencies": { - "@cubejs-backend/native": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/native": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "@ungap/structured-clone": "^0.3.4", "body-parser": "^1.19.0", "chrono-node": "^2.6.2", diff --git a/packages/cubejs-athena-driver/CHANGELOG.md b/packages/cubejs-athena-driver/CHANGELOG.md index 3c1b5f2586ce9..6fa4ff25c55f6 100644 --- a/packages/cubejs-athena-driver/CHANGELOG.md +++ b/packages/cubejs-athena-driver/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/athena-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/athena-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/athena-driver diff --git a/packages/cubejs-athena-driver/package.json b/packages/cubejs-athena-driver/package.json index 36ee40ba5ba32..f86ed9774c225 100644 --- a/packages/cubejs-athena-driver/package.json +++ b/packages/cubejs-athena-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/athena-driver", "description": "Cube.js Athena database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -29,13 +29,13 @@ "types": "dist/src/index.d.ts", "dependencies": { "@aws-sdk/client-athena": "^3.22.0", - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "sqlstring": "^2.3.1" }, "devDependencies": { "@cubejs-backend/linter": "^1.0.0", - "@cubejs-backend/testing-shared": "1.0.4", + "@cubejs-backend/testing-shared": "1.0.6", "@types/ramda": "^0.27.40", "typescript": "~5.2.2" }, diff --git a/packages/cubejs-backend-cloud/CHANGELOG.md b/packages/cubejs-backend-cloud/CHANGELOG.md index 693587be2896e..6f8eb7bbe4b32 100644 --- a/packages/cubejs-backend-cloud/CHANGELOG.md +++ b/packages/cubejs-backend-cloud/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/cloud + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/cloud diff --git a/packages/cubejs-backend-cloud/package.json b/packages/cubejs-backend-cloud/package.json index e2196833b2fb9..f5ce635b4023a 100644 --- a/packages/cubejs-backend-cloud/package.json +++ b/packages/cubejs-backend-cloud/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/cloud", - "version": "1.0.3", + "version": "1.0.6", "description": "Cube Cloud package", "main": "dist/src/index.js", "typings": "dist/src/index.d.ts", @@ -32,7 +32,7 @@ }, "dependencies": { "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/shared": "1.0.6", "chokidar": "^3.5.1", "env-var": "^6.3.0", "fs-extra": "^9.1.0", diff --git a/packages/cubejs-backend-maven/CHANGELOG.md b/packages/cubejs-backend-maven/CHANGELOG.md index 3f8296554b884..82d6b3c2cfaa9 100644 --- a/packages/cubejs-backend-maven/CHANGELOG.md +++ b/packages/cubejs-backend-maven/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/maven + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/maven diff --git a/packages/cubejs-backend-maven/package.json b/packages/cubejs-backend-maven/package.json index 4e9b529d49eee..a70c4b502156c 100644 --- a/packages/cubejs-backend-maven/package.json +++ b/packages/cubejs-backend-maven/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/maven", "description": "Cube.js Maven Wrapper for java dependencies downloading", "author": "Cube Dev, Inc.", - "version": "1.0.3", + "version": "1.0.6", "license": "Apache-2.0", "repository": { "type": "git", @@ -31,7 +31,7 @@ "dist/src/*" ], "dependencies": { - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/shared": "1.0.6", "source-map-support": "^0.5.19", "xmlbuilder2": "^2.4.0" }, diff --git a/packages/cubejs-backend-native/CHANGELOG.md b/packages/cubejs-backend-native/CHANGELOG.md index 48349114f5c0d..d0eec8c6127a4 100644 --- a/packages/cubejs-backend-native/CHANGELOG.md +++ b/packages/cubejs-backend-native/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/native + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/native + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/native diff --git a/packages/cubejs-backend-native/package.json b/packages/cubejs-backend-native/package.json index 24df075da7991..678a27b3b5421 100644 --- a/packages/cubejs-backend-native/package.json +++ b/packages/cubejs-backend-native/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/native", - "version": "1.0.4", + "version": "1.0.6", "author": "Cube Dev, Inc.", "description": "Native module for Cube.js (binding to Rust codebase)", "main": "dist/js/index.js", @@ -43,8 +43,8 @@ "uuid": "^8.3.2" }, "dependencies": { - "@cubejs-backend/cubesql": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/cubesql": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "@cubejs-infra/post-installer": "^0.0.7" }, "resources": { diff --git a/packages/cubejs-backend-shared/CHANGELOG.md b/packages/cubejs-backend-shared/CHANGELOG.md index 9c13234f9ff6d..6b427235c5ff5 100644 --- a/packages/cubejs-backend-shared/CHANGELOG.md +++ b/packages/cubejs-backend-shared/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + + +### Bug Fixes + +* **schema-compiler:** set missed CUBESQL_SQL_PUSH_DOWN to true by default in convertTzForRawTimeDimension flag ([#8939](https://github.com/cube-js/cube/issues/8939)) ([b20a3ca](https://github.com/cube-js/cube/commit/b20a3ca087e7002b6600e6d4c82d6a2372d54e1e)) + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) diff --git a/packages/cubejs-backend-shared/package.json b/packages/cubejs-backend-shared/package.json index b551aaaaf9e1d..da9a472753ba6 100644 --- a/packages/cubejs-backend-shared/package.json +++ b/packages/cubejs-backend-shared/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/shared", - "version": "1.0.3", + "version": "1.0.6", "description": "Shared code for Cube.js backend packages", "main": "dist/src/index.js", "typings": "dist/src/index.d.ts", diff --git a/packages/cubejs-backend-shared/src/env.ts b/packages/cubejs-backend-shared/src/env.ts index 2940fabf1beeb..51df9ad4f5cfb 100644 --- a/packages/cubejs-backend-shared/src/env.ts +++ b/packages/cubejs-backend-shared/src/env.ts @@ -193,6 +193,12 @@ const variables: Record any> = { .default('1') .asInt(), nativeSqlPlanner: () => get('CUBEJS_TESSERACT_SQL_PLANNER').asBool(), + transpilationWorkerThreads: () => get('CUBEJS_TRANSPILATION_WORKER_THREADS') + .default('false') + .asBoolStrict(), + transpilationWorkerThreadsCount: () => get('CUBEJS_TRANSPILATION_WORKER_THREADS_COUNT') + .default('0') + .asInt(), /** **************************************************************** * Common db options * @@ -1750,7 +1756,7 @@ const variables: Record any> = { maxSourceRowLimit: () => get('CUBEJS_MAX_SOURCE_ROW_LIMIT') .default(200000) .asInt(), - convertTzForRawTimeDimension: () => get('CUBESQL_SQL_PUSH_DOWN').default('false').asBoolStrict(), + convertTzForRawTimeDimension: () => get('CUBESQL_SQL_PUSH_DOWN').default('true').asBoolStrict(), // Deprecated section // Support for Redis as queue & cache driver was removed in 0.36 diff --git a/packages/cubejs-base-driver/CHANGELOG.md b/packages/cubejs-base-driver/CHANGELOG.md index ac68260df321b..2f01407f54dea 100644 --- a/packages/cubejs-base-driver/CHANGELOG.md +++ b/packages/cubejs-base-driver/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + + +### Bug Fixes + +* **databricks-driver:** fix databricks bucket URL parsing. Now driver supports both (legacy and modern urls) ([#8968](https://github.com/cube-js/cube/issues/8968)) ([#9026](https://github.com/cube-js/cube/issues/9026)) ([3958a62](https://github.com/cube-js/cube/commit/3958a62d91f65c1fdf04206223ade2e48f9e8344)) + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) diff --git a/packages/cubejs-base-driver/package.json b/packages/cubejs-base-driver/package.json index d3aa473f1ef21..c584f62c0f9d9 100644 --- a/packages/cubejs-base-driver/package.json +++ b/packages/cubejs-base-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/base-driver", "description": "Cube.js Base Driver", "author": "Cube Dev, Inc.", - "version": "1.0.3", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -33,7 +33,7 @@ "@aws-sdk/s3-request-presigner": "^3.49.0", "@azure/identity": "^4.4.1", "@azure/storage-blob": "^12.9.0", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/shared": "1.0.6", "@google-cloud/storage": "^7.13.0", "ramda": "^0.27.0" }, diff --git a/packages/cubejs-base-driver/src/BaseDriver.ts b/packages/cubejs-base-driver/src/BaseDriver.ts index 987484b5b9378..512a9c53de279 100644 --- a/packages/cubejs-base-driver/src/BaseDriver.ts +++ b/packages/cubejs-base-driver/src/BaseDriver.ts @@ -751,7 +751,8 @@ export abstract class BaseDriver implements DriverInterface { bucketName: string, tableName: string ): Promise { - const parts = bucketName.split('.blob.core.windows.net/'); + const splitter = bucketName.includes('blob.core') ? '.blob.core.windows.net/' : '.dfs.core.windows.net/'; + const parts = bucketName.split(splitter); const account = parts[0]; const container = parts[1].split('/')[0]; let credential: StorageSharedKeyCredential | DefaultAzureCredential; @@ -805,7 +806,7 @@ export abstract class BaseDriver implements DriverInterface { const csvFiles: string[] = []; const containerClient = blobServiceClient.getContainerClient(container); - const blobsList = containerClient.listBlobsFlat({ prefix: `${tableName}/` }); + const blobsList = containerClient.listBlobsFlat({ prefix: `${tableName}` }); for await (const blob of blobsList) { if (blob.name && (blob.name.endsWith('.csv.gz') || blob.name.endsWith('.csv'))) { const starts = new Date(); diff --git a/packages/cubejs-bigquery-driver/CHANGELOG.md b/packages/cubejs-bigquery-driver/CHANGELOG.md index 71d01bb965625..c42a038fad0c7 100644 --- a/packages/cubejs-bigquery-driver/CHANGELOG.md +++ b/packages/cubejs-bigquery-driver/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/bigquery-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/bigquery-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/bigquery-driver diff --git a/packages/cubejs-bigquery-driver/package.json b/packages/cubejs-bigquery-driver/package.json index 499fe2b10e1f2..a25fb45fdc620 100644 --- a/packages/cubejs-bigquery-driver/package.json +++ b/packages/cubejs-bigquery-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/bigquery-driver", "description": "Cube.js BigQuery database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -28,15 +28,15 @@ "main": "index.js", "types": "dist/src/index.d.ts", "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/shared": "1.0.6", "@google-cloud/bigquery": "^7.7.0", "@google-cloud/storage": "^7.13.0", "ramda": "^0.27.2" }, "devDependencies": { - "@cubejs-backend/testing-shared": "1.0.4", + "@cubejs-backend/testing-shared": "1.0.6", "@types/big.js": "^6.2.2", "@types/dedent": "^0.7.0", "@types/jest": "^27", diff --git a/packages/cubejs-cli/CHANGELOG.md b/packages/cubejs-cli/CHANGELOG.md index 19646072b1f82..6112f7178b04a 100644 --- a/packages/cubejs-cli/CHANGELOG.md +++ b/packages/cubejs-cli/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package cubejs-cli + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package cubejs-cli + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package cubejs-cli diff --git a/packages/cubejs-cli/package.json b/packages/cubejs-cli/package.json index 5705d59997e8b..34d46086ba58d 100644 --- a/packages/cubejs-cli/package.json +++ b/packages/cubejs-cli/package.json @@ -2,7 +2,7 @@ "name": "cubejs-cli", "description": "Cube.js Command Line Interface", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -31,8 +31,8 @@ ], "dependencies": { "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/schema-compiler": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/schema-compiler": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "chalk": "^2.4.2", "cli-progress": "^3.10", "commander": "^2.19.0", @@ -50,7 +50,7 @@ }, "devDependencies": { "@cubejs-backend/linter": "^1.0.0", - "@cubejs-backend/server": "1.0.4", + "@cubejs-backend/server": "1.0.6", "@oclif/command": "^1.8.0", "@types/cli-progress": "^3.8.0", "@types/cross-spawn": "^6.0.2", diff --git a/packages/cubejs-clickhouse-driver/CHANGELOG.md b/packages/cubejs-clickhouse-driver/CHANGELOG.md index e095d4a7f163b..ecd58550805a2 100644 --- a/packages/cubejs-clickhouse-driver/CHANGELOG.md +++ b/packages/cubejs-clickhouse-driver/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/clickhouse-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/clickhouse-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/clickhouse-driver diff --git a/packages/cubejs-clickhouse-driver/package.json b/packages/cubejs-clickhouse-driver/package.json index ca5ab0551a514..becdce7a590ea 100644 --- a/packages/cubejs-clickhouse-driver/package.json +++ b/packages/cubejs-clickhouse-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/clickhouse-driver", "description": "Cube.js ClickHouse database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -28,8 +28,8 @@ }, "dependencies": { "@cubejs-backend/apla-clickhouse": "^1.7", - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "generic-pool": "^3.6.0", "moment": "^2.24.0", "sqlstring": "^2.3.1", @@ -38,7 +38,7 @@ "license": "Apache-2.0", "devDependencies": { "@cubejs-backend/linter": "^1.0.0", - "@cubejs-backend/testing-shared": "1.0.4", + "@cubejs-backend/testing-shared": "1.0.6", "@types/jest": "^27", "jest": "27", "typescript": "~5.2.2" diff --git a/packages/cubejs-crate-driver/CHANGELOG.md b/packages/cubejs-crate-driver/CHANGELOG.md index 07942c7a54e5d..81b8955ac19f9 100644 --- a/packages/cubejs-crate-driver/CHANGELOG.md +++ b/packages/cubejs-crate-driver/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/crate-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/crate-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/crate-driver diff --git a/packages/cubejs-crate-driver/package.json b/packages/cubejs-crate-driver/package.json index 5f9b434d77274..10f70c594ee0c 100644 --- a/packages/cubejs-crate-driver/package.json +++ b/packages/cubejs-crate-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/crate-driver", "description": "Cube.js Crate database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -28,14 +28,14 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/postgres-driver": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/postgres-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "pg": "^8.7.1" }, "license": "Apache-2.0", "devDependencies": { "@cubejs-backend/linter": "^1.0.0", - "@cubejs-backend/testing-shared": "1.0.4", + "@cubejs-backend/testing-shared": "1.0.6", "testcontainers": "^10.10.4", "typescript": "~5.2.2" }, diff --git a/packages/cubejs-cubestore-driver/CHANGELOG.md b/packages/cubejs-cubestore-driver/CHANGELOG.md index 7596ba86812fc..aab42c12651d5 100644 --- a/packages/cubejs-cubestore-driver/CHANGELOG.md +++ b/packages/cubejs-cubestore-driver/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/cubestore-driver + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/cubestore-driver diff --git a/packages/cubejs-cubestore-driver/package.json b/packages/cubejs-cubestore-driver/package.json index ac9bb63422e49..94ecdce80e69b 100644 --- a/packages/cubejs-cubestore-driver/package.json +++ b/packages/cubejs-cubestore-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/cubestore-driver", "description": "Cube Store driver", "author": "Cube Dev, Inc.", - "version": "1.0.3", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -26,9 +26,9 @@ "lint:fix": "eslint --fix src/*.ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/cubestore": "1.0.3", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/cubestore": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "csv-write-stream": "^2.0.0", "flatbuffers": "23.3.3", "fs-extra": "^9.1.0", diff --git a/packages/cubejs-databricks-jdbc-driver/CHANGELOG.md b/packages/cubejs-databricks-jdbc-driver/CHANGELOG.md index ea6b46834017f..344dfe0e2737f 100644 --- a/packages/cubejs-databricks-jdbc-driver/CHANGELOG.md +++ b/packages/cubejs-databricks-jdbc-driver/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/databricks-jdbc-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/databricks-jdbc-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/databricks-jdbc-driver diff --git a/packages/cubejs-databricks-jdbc-driver/package.json b/packages/cubejs-databricks-jdbc-driver/package.json index 59e47068ad134..d072b7903802a 100644 --- a/packages/cubejs-databricks-jdbc-driver/package.json +++ b/packages/cubejs-databricks-jdbc-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/databricks-jdbc-driver", "description": "Cube.js Databricks database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "license": "Apache-2.0", "repository": { "type": "git", @@ -28,10 +28,10 @@ "bin" ], "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/jdbc-driver": "1.0.3", - "@cubejs-backend/schema-compiler": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/jdbc-driver": "1.0.6", + "@cubejs-backend/schema-compiler": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "node-fetch": "^2.6.1", "ramda": "^0.27.2", "source-map-support": "^0.5.19", diff --git a/packages/cubejs-dbt-schema-extension/CHANGELOG.md b/packages/cubejs-dbt-schema-extension/CHANGELOG.md index 215654373793a..bd6904dfb121e 100644 --- a/packages/cubejs-dbt-schema-extension/CHANGELOG.md +++ b/packages/cubejs-dbt-schema-extension/CHANGELOG.md @@ -3,6 +3,30 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.7](https://github.com/cube-js/cube/compare/v1.0.6...v1.0.7) (2024-12-08) + +**Note:** Version bump only for package @cubejs-backend/dbt-schema-extension + + + + + +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/dbt-schema-extension + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/dbt-schema-extension + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/dbt-schema-extension diff --git a/packages/cubejs-dbt-schema-extension/package.json b/packages/cubejs-dbt-schema-extension/package.json index 1f648f135ad7b..7daeb320d2ba3 100644 --- a/packages/cubejs-dbt-schema-extension/package.json +++ b/packages/cubejs-dbt-schema-extension/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/dbt-schema-extension", "description": "Cube.js dbt Schema Extension", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.7", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -25,14 +25,14 @@ "lint:fix": "eslint --fix src/* --ext .ts,.js" }, "dependencies": { - "@cubejs-backend/schema-compiler": "1.0.4", + "@cubejs-backend/schema-compiler": "1.0.6", "fs-extra": "^9.1.0", "inflection": "^1.12.0", "node-fetch": "^2.6.1" }, "devDependencies": { "@cubejs-backend/linter": "^1.0.0", - "@cubejs-backend/testing": "1.0.4", + "@cubejs-backend/testing": "1.0.7", "@types/generic-pool": "^3.1.9", "@types/jest": "^27", "jest": "^27", diff --git a/packages/cubejs-docker/CHANGELOG.md b/packages/cubejs-docker/CHANGELOG.md index 55fa35ec2a777..e183e18cdd869 100644 --- a/packages/cubejs-docker/CHANGELOG.md +++ b/packages/cubejs-docker/CHANGELOG.md @@ -3,6 +3,30 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.7](https://github.com/cube-js/cube/compare/v1.0.6...v1.0.7) (2024-12-08) + +**Note:** Version bump only for package @cubejs-backend/docker + + + + + +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/docker + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/docker + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/docker diff --git a/packages/cubejs-docker/package.json b/packages/cubejs-docker/package.json index a5a4e620be2d2..25bf3f62161d2 100644 --- a/packages/cubejs-docker/package.json +++ b/packages/cubejs-docker/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/docker", - "version": "1.0.4", + "version": "1.0.7", "description": "Cube.js In Docker (virtual package)", "author": "Cube Dev, Inc.", "license": "Apache-2.0", @@ -9,33 +9,33 @@ "node": "^14.0.0 || ^16.0.0 || >=17.0.0" }, "dependencies": { - "@cubejs-backend/athena-driver": "1.0.4", - "@cubejs-backend/bigquery-driver": "1.0.4", - "@cubejs-backend/clickhouse-driver": "1.0.4", - "@cubejs-backend/crate-driver": "1.0.4", - "@cubejs-backend/databricks-jdbc-driver": "1.0.4", - "@cubejs-backend/dbt-schema-extension": "1.0.4", - "@cubejs-backend/dremio-driver": "1.0.4", - "@cubejs-backend/druid-driver": "1.0.4", - "@cubejs-backend/duckdb-driver": "1.0.4", - "@cubejs-backend/elasticsearch-driver": "1.0.3", - "@cubejs-backend/firebolt-driver": "1.0.4", - "@cubejs-backend/hive-driver": "1.0.3", - "@cubejs-backend/ksql-driver": "1.0.4", - "@cubejs-backend/materialize-driver": "1.0.4", - "@cubejs-backend/mongobi-driver": "1.0.3", - "@cubejs-backend/mssql-driver": "1.0.3", - "@cubejs-backend/mysql-driver": "1.0.4", - "@cubejs-backend/oracle-driver": "1.0.3", - "@cubejs-backend/postgres-driver": "1.0.4", - "@cubejs-backend/prestodb-driver": "1.0.3", - "@cubejs-backend/questdb-driver": "1.0.4", - "@cubejs-backend/redshift-driver": "1.0.4", - "@cubejs-backend/server": "1.0.4", - "@cubejs-backend/snowflake-driver": "1.0.3", - "@cubejs-backend/sqlite-driver": "1.0.3", - "@cubejs-backend/trino-driver": "1.0.4", - "cubejs-cli": "1.0.4", + "@cubejs-backend/athena-driver": "1.0.6", + "@cubejs-backend/bigquery-driver": "1.0.6", + "@cubejs-backend/clickhouse-driver": "1.0.6", + "@cubejs-backend/crate-driver": "1.0.6", + "@cubejs-backend/databricks-jdbc-driver": "1.0.6", + "@cubejs-backend/dbt-schema-extension": "1.0.7", + "@cubejs-backend/dremio-driver": "1.0.6", + "@cubejs-backend/druid-driver": "1.0.6", + "@cubejs-backend/duckdb-driver": "1.0.6", + "@cubejs-backend/elasticsearch-driver": "1.0.6", + "@cubejs-backend/firebolt-driver": "1.0.6", + "@cubejs-backend/hive-driver": "1.0.6", + "@cubejs-backend/ksql-driver": "1.0.7", + "@cubejs-backend/materialize-driver": "1.0.7", + "@cubejs-backend/mongobi-driver": "1.0.6", + "@cubejs-backend/mssql-driver": "1.0.6", + "@cubejs-backend/mysql-driver": "1.0.6", + "@cubejs-backend/oracle-driver": "1.0.6", + "@cubejs-backend/postgres-driver": "1.0.6", + "@cubejs-backend/prestodb-driver": "1.0.6", + "@cubejs-backend/questdb-driver": "1.0.6", + "@cubejs-backend/redshift-driver": "1.0.6", + "@cubejs-backend/server": "1.0.6", + "@cubejs-backend/snowflake-driver": "1.0.6", + "@cubejs-backend/sqlite-driver": "1.0.6", + "@cubejs-backend/trino-driver": "1.0.6", + "cubejs-cli": "1.0.6", "typescript": "~5.2.2" }, "resolutions": { diff --git a/packages/cubejs-dremio-driver/CHANGELOG.md b/packages/cubejs-dremio-driver/CHANGELOG.md index bc3e0d5589a86..bcaf794cc8f89 100644 --- a/packages/cubejs-dremio-driver/CHANGELOG.md +++ b/packages/cubejs-dremio-driver/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/dremio-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/dremio-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/dremio-driver diff --git a/packages/cubejs-dremio-driver/package.json b/packages/cubejs-dremio-driver/package.json index 2b0bd2bddc6bb..86157ce25256d 100644 --- a/packages/cubejs-dremio-driver/package.json +++ b/packages/cubejs-dremio-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/dremio-driver", "description": "Cube.js Dremio driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -17,9 +17,9 @@ "lint:fix": "eslint driver/*.js" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/schema-compiler": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/schema-compiler": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "axios": "^0.21.1", "moment-timezone": "^0.5.31", "sqlstring": "^2.3.1" diff --git a/packages/cubejs-druid-driver/CHANGELOG.md b/packages/cubejs-druid-driver/CHANGELOG.md index 22ed956a74cfe..f7a5cd7600f0a 100644 --- a/packages/cubejs-druid-driver/CHANGELOG.md +++ b/packages/cubejs-druid-driver/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/druid-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/druid-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/druid-driver diff --git a/packages/cubejs-druid-driver/package.json b/packages/cubejs-druid-driver/package.json index 2521a95ccce27..f05317d9da2d8 100644 --- a/packages/cubejs-druid-driver/package.json +++ b/packages/cubejs-druid-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/druid-driver", "description": "Cube.js Druid database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "license": "Apache-2.0", "repository": { "type": "git", @@ -28,9 +28,9 @@ "dist/src/*" ], "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/schema-compiler": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/schema-compiler": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "axios": "^0.21.1", "moment-timezone": "^0.5.31" }, diff --git a/packages/cubejs-duckdb-driver/CHANGELOG.md b/packages/cubejs-duckdb-driver/CHANGELOG.md index 0bb5dfcb9f3a6..3a38587d406ff 100644 --- a/packages/cubejs-duckdb-driver/CHANGELOG.md +++ b/packages/cubejs-duckdb-driver/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/duckdb-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/duckdb-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/duckdb-driver diff --git a/packages/cubejs-duckdb-driver/package.json b/packages/cubejs-duckdb-driver/package.json index 73bcb8d4a24c1..46d10c57e0835 100644 --- a/packages/cubejs-duckdb-driver/package.json +++ b/packages/cubejs-duckdb-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/duckdb-driver", "description": "Cube DuckDB database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -27,15 +27,15 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/schema-compiler": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/schema-compiler": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "duckdb": "^1.0.0" }, "license": "Apache-2.0", "devDependencies": { "@cubejs-backend/linter": "^1.0.0", - "@cubejs-backend/testing-shared": "1.0.4", + "@cubejs-backend/testing-shared": "1.0.6", "@types/jest": "^27", "@types/node": "^18", "jest": "^27", diff --git a/packages/cubejs-elasticsearch-driver/CHANGELOG.md b/packages/cubejs-elasticsearch-driver/CHANGELOG.md index ece3faeb66bde..42bd929cd8302 100644 --- a/packages/cubejs-elasticsearch-driver/CHANGELOG.md +++ b/packages/cubejs-elasticsearch-driver/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/elasticsearch-driver + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/elasticsearch-driver diff --git a/packages/cubejs-elasticsearch-driver/package.json b/packages/cubejs-elasticsearch-driver/package.json index fa760b40d889d..2199fafa2fb01 100644 --- a/packages/cubejs-elasticsearch-driver/package.json +++ b/packages/cubejs-elasticsearch-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/elasticsearch-driver", "description": "Cube.js elasticsearch database driver", "author": "Cube Dev, Inc.", - "version": "1.0.3", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -23,8 +23,8 @@ "driver" ], "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "@elastic/elasticsearch": "7.12.0", "sqlstring": "^2.3.1" }, diff --git a/packages/cubejs-firebolt-driver/CHANGELOG.md b/packages/cubejs-firebolt-driver/CHANGELOG.md index 1fd3f7e5319b9..d7257ea36e686 100644 --- a/packages/cubejs-firebolt-driver/CHANGELOG.md +++ b/packages/cubejs-firebolt-driver/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/firebolt-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/firebolt-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/firebolt-driver diff --git a/packages/cubejs-firebolt-driver/package.json b/packages/cubejs-firebolt-driver/package.json index f09da569ba3f9..7171175f5cf37 100644 --- a/packages/cubejs-firebolt-driver/package.json +++ b/packages/cubejs-firebolt-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/firebolt-driver", "description": "Cube.js Firebolt database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -28,15 +28,15 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/schema-compiler": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/schema-compiler": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "firebolt-sdk": "^1.8.0" }, "license": "Apache-2.0", "devDependencies": { "@cubejs-backend/linter": "^1.0.0", - "@cubejs-backend/testing-shared": "1.0.4", + "@cubejs-backend/testing-shared": "1.0.6", "typescript": "~5.2.2" }, "publishConfig": { diff --git a/packages/cubejs-firebolt-driver/src/FireboltDriver.ts b/packages/cubejs-firebolt-driver/src/FireboltDriver.ts index 57f22961ca70e..10ce708a2d5d8 100644 --- a/packages/cubejs-firebolt-driver/src/FireboltDriver.ts +++ b/packages/cubejs-firebolt-driver/src/FireboltDriver.ts @@ -77,7 +77,8 @@ export class FireboltDriver extends BaseDriver implements DriverInterface { testConnectionTimeout?: number, } = {}, ) { - super(config); + // Set connection timeout to 2 minutes to allow the engine to start if it's stopped + super({ testConnectionTimeout: 120000, ...config }); const dataSource = config.dataSource || @@ -122,6 +123,7 @@ export class FireboltDriver extends BaseDriver implements DriverInterface { private async initConnection() { try { const connection = await this.firebolt.connect(this.config.connection); + await this.ensureEngineRunning(); return connection; } catch (e) { this.connection = null; @@ -174,7 +176,7 @@ export class FireboltDriver extends BaseDriver implements DriverInterface { await connection.testConnection(); } catch (error) { console.log(error); - throw new Error('Unable to connect'); + throw error; } } diff --git a/packages/cubejs-firebolt-driver/test/autostart.test.ts b/packages/cubejs-firebolt-driver/test/autostart.test.ts index ede7fea5c85e8..3fbd52e534ef2 100644 --- a/packages/cubejs-firebolt-driver/test/autostart.test.ts +++ b/packages/cubejs-firebolt-driver/test/autostart.test.ts @@ -1,6 +1,9 @@ +import {assertDataSource, getEnv} from '@cubejs-backend/shared'; import { DriverTests } from '@cubejs-backend/testing-shared'; import { FireboltDriver } from '../src'; +import { Firebolt } from 'firebolt-sdk'; +import { version } from 'firebolt-sdk/package.json'; describe('FireboltDriver autostart', () => { let tests: DriverTests; @@ -30,4 +33,38 @@ describe('FireboltDriver autostart', () => { expect(driver.ensureEngineRunning).toHaveBeenCalled(); } }); + test('starts the engine after connection', async () => { + const dataSource = assertDataSource('default'); + + const username = getEnv('dbUser', { dataSource }); + const auth = username.includes('@') + ? { username, password: getEnv('dbPass', { dataSource }) } + : { client_id: username, client_secret: getEnv('dbPass', { dataSource }) }; + const engineName = getEnv('fireboltEngineName', { dataSource }); + const firebolt = Firebolt({ + apiEndpoint: getEnv('fireboltApiEndpoint', { dataSource }) || 'api.app.firebolt.io', + }) + await firebolt.connect({ + auth, + database: getEnv('dbName', { dataSource }), + account: getEnv('fireboltAccount', { dataSource }), + engineEndpoint: getEnv('fireboltEngineEndpoint', { dataSource }), + additionalParameters: { + userClients: [{ + name: 'CubeDev+Cube', + version + }] + }, + }); + + const engine = await firebolt.resourceManager.engine.getByName(engineName); + try { + await engine.stop(); + + driver = new FireboltDriver({}); + await driver.testConnection(); + } finally { + await engine.start(); + } + }); }); diff --git a/packages/cubejs-hive-driver/CHANGELOG.md b/packages/cubejs-hive-driver/CHANGELOG.md index 3f73b63f2eb76..ef33b251fb845 100644 --- a/packages/cubejs-hive-driver/CHANGELOG.md +++ b/packages/cubejs-hive-driver/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/hive-driver + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/hive-driver diff --git a/packages/cubejs-hive-driver/package.json b/packages/cubejs-hive-driver/package.json index 626e41db2a0ad..f0c05df871741 100644 --- a/packages/cubejs-hive-driver/package.json +++ b/packages/cubejs-hive-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/hive-driver", "description": "Cube.js Hive database driver", "author": "Cube Dev, Inc.", - "version": "1.0.3", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -17,8 +17,8 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "generic-pool": "^3.6.0", "jshs2": "^0.4.4", "sasl-plain": "^0.1.0", diff --git a/packages/cubejs-jdbc-driver/CHANGELOG.md b/packages/cubejs-jdbc-driver/CHANGELOG.md index 13a8ed3583091..1e80b0f58b51e 100644 --- a/packages/cubejs-jdbc-driver/CHANGELOG.md +++ b/packages/cubejs-jdbc-driver/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/jdbc-driver + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/jdbc-driver diff --git a/packages/cubejs-jdbc-driver/package.json b/packages/cubejs-jdbc-driver/package.json index eb25674f4f81d..87b808f115425 100644 --- a/packages/cubejs-jdbc-driver/package.json +++ b/packages/cubejs-jdbc-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/jdbc-driver", "description": "Cube.js JDBC database driver", "author": "Cube Dev, Inc.", - "version": "1.0.3", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -25,8 +25,8 @@ "index.js" ], "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "generic-pool": "^3.1.7", "node-java-maven": "^0.1.2", "sqlstring": "^2.3.0" diff --git a/packages/cubejs-ksql-driver/CHANGELOG.md b/packages/cubejs-ksql-driver/CHANGELOG.md index 9d2444e36297f..e26bd7ad6bd3e 100644 --- a/packages/cubejs-ksql-driver/CHANGELOG.md +++ b/packages/cubejs-ksql-driver/CHANGELOG.md @@ -3,6 +3,33 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.7](https://github.com/cube-js/cube/compare/v1.0.6...v1.0.7) (2024-12-08) + + +### Bug Fixes + +* **ksql-driver:** Select queries for ksql allowed only from Cube Store. In order to query ksql create pre-aggregation first if Kafka download isn't enabled ([8af60fe](https://github.com/cube-js/cube/commit/8af60fee19114f5a6b2a9a615035062ee99774cb)) + + + + + +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/ksql-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/ksql-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/ksql-driver diff --git a/packages/cubejs-ksql-driver/package.json b/packages/cubejs-ksql-driver/package.json index 2a9dc4ab77b83..731b98a5a05ff 100644 --- a/packages/cubejs-ksql-driver/package.json +++ b/packages/cubejs-ksql-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/ksql-driver", "description": "Cube.js ksql database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.7", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -25,9 +25,9 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/schema-compiler": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/schema-compiler": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "async-mutex": "0.3.2", "axios": "^0.21.1", "kafkajs": "^2.2.3", diff --git a/packages/cubejs-ksql-driver/src/KsqlDriver.ts b/packages/cubejs-ksql-driver/src/KsqlDriver.ts index 651d29c883ec3..27770589133f2 100644 --- a/packages/cubejs-ksql-driver/src/KsqlDriver.ts +++ b/packages/cubejs-ksql-driver/src/KsqlDriver.ts @@ -167,7 +167,7 @@ export class KsqlDriver extends BaseDriver implements DriverInterface { } } - public async query(query: string, values?: unknown[], options: KsqlQueryOptions = {}): Promise { + public async query(query: string, values?: unknown[], options: KsqlQueryOptions = {}): Promise { if (query.toLowerCase().startsWith('select')) { throw new Error('Select queries for ksql allowed only from Cube Store. In order to query ksql create pre-aggregation first.'); } @@ -179,7 +179,7 @@ export class KsqlDriver extends BaseDriver implements DriverInterface { } } : {}) }); - + return data[0]; } @@ -361,7 +361,6 @@ export class KsqlDriver extends BaseDriver implements DriverInterface { public capabilities(): DriverCapabilities { return { streamingSource: true, - unloadWithoutTempTable: true, }; } } diff --git a/packages/cubejs-materialize-driver/CHANGELOG.md b/packages/cubejs-materialize-driver/CHANGELOG.md index e088243d6d768..6e169563a73d4 100644 --- a/packages/cubejs-materialize-driver/CHANGELOG.md +++ b/packages/cubejs-materialize-driver/CHANGELOG.md @@ -3,6 +3,30 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.7](https://github.com/cube-js/cube/compare/v1.0.6...v1.0.7) (2024-12-08) + +**Note:** Version bump only for package @cubejs-backend/materialize-driver + + + + + +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/materialize-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/materialize-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/materialize-driver diff --git a/packages/cubejs-materialize-driver/package.json b/packages/cubejs-materialize-driver/package.json index 450ce7a5097d5..5eb5831600544 100644 --- a/packages/cubejs-materialize-driver/package.json +++ b/packages/cubejs-materialize-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/materialize-driver", "description": "Cube.js Materialize database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.7", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -27,9 +27,9 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/postgres-driver": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/postgres-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "@types/pg": "^8.6.0", "pg": "^8.6.0", "ramda": "0.27.2", @@ -38,7 +38,7 @@ "license": "Apache-2.0", "devDependencies": { "@cubejs-backend/linter": "^1.0.0", - "@cubejs-backend/testing": "1.0.4", + "@cubejs-backend/testing": "1.0.7", "typescript": "~5.2.2" }, "publishConfig": { diff --git a/packages/cubejs-mongobi-driver/CHANGELOG.md b/packages/cubejs-mongobi-driver/CHANGELOG.md index 08d5fd47058cf..790787882a7e3 100644 --- a/packages/cubejs-mongobi-driver/CHANGELOG.md +++ b/packages/cubejs-mongobi-driver/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/mongobi-driver + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/mongobi-driver diff --git a/packages/cubejs-mongobi-driver/package.json b/packages/cubejs-mongobi-driver/package.json index 70aad2607cb98..707d9986ff7f1 100644 --- a/packages/cubejs-mongobi-driver/package.json +++ b/packages/cubejs-mongobi-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/mongobi-driver", "description": "Cube.js MongoBI driver", "author": "krunalsabnis@gmail.com", - "version": "1.0.3", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -27,8 +27,8 @@ "integration:mongobi": "jest dist/test" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "@types/node": "^18", "generic-pool": "^3.6.0", "moment": "^2.29.1", diff --git a/packages/cubejs-mssql-driver/CHANGELOG.md b/packages/cubejs-mssql-driver/CHANGELOG.md index 9b25aaed249ec..f9431012ba848 100644 --- a/packages/cubejs-mssql-driver/CHANGELOG.md +++ b/packages/cubejs-mssql-driver/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/mssql-driver + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/mssql-driver diff --git a/packages/cubejs-mssql-driver/package.json b/packages/cubejs-mssql-driver/package.json index 4422332c6c4f7..9635c4f2ca773 100644 --- a/packages/cubejs-mssql-driver/package.json +++ b/packages/cubejs-mssql-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/mssql-driver", "description": "Cube.js MS SQL database driver", "author": "Cube Dev, Inc.", - "version": "1.0.3", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -13,7 +13,7 @@ }, "main": "driver/MSSqlDriver.js", "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", "mssql": "^10.0.2" }, "devDependencies": { diff --git a/packages/cubejs-mysql-aurora-serverless-driver/CHANGELOG.md b/packages/cubejs-mysql-aurora-serverless-driver/CHANGELOG.md index 48bddca5edd39..199ce4ca0d469 100644 --- a/packages/cubejs-mysql-aurora-serverless-driver/CHANGELOG.md +++ b/packages/cubejs-mysql-aurora-serverless-driver/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/mysql-aurora-serverless-driver + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/mysql-aurora-serverless-driver diff --git a/packages/cubejs-mysql-aurora-serverless-driver/package.json b/packages/cubejs-mysql-aurora-serverless-driver/package.json index 3fd792c9b41f7..2e827337ccb03 100644 --- a/packages/cubejs-mysql-aurora-serverless-driver/package.json +++ b/packages/cubejs-mysql-aurora-serverless-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/mysql-aurora-serverless-driver", "description": "Cube.js Aurora Serverless Mysql database driver", "author": "Cube Dev, Inc.", - "version": "1.0.3", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -21,8 +21,8 @@ "lint": "eslint driver/*.js test/*.js" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "@types/mysql": "^2.15.15", "aws-sdk": "^2.787.0", "data-api-client": "^1.1.0" diff --git a/packages/cubejs-mysql-driver/CHANGELOG.md b/packages/cubejs-mysql-driver/CHANGELOG.md index 4ff00798f6bc1..c51815bdbcaf0 100644 --- a/packages/cubejs-mysql-driver/CHANGELOG.md +++ b/packages/cubejs-mysql-driver/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/mysql-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/mysql-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/mysql-driver diff --git a/packages/cubejs-mysql-driver/package.json b/packages/cubejs-mysql-driver/package.json index cd0f5690d0942..cd5fd479b8ccc 100644 --- a/packages/cubejs-mysql-driver/package.json +++ b/packages/cubejs-mysql-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/mysql-driver", "description": "Cube.js Mysql database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -27,15 +27,15 @@ "lint:fix": "eslint --fix src/* test/* --ext .ts,.js" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "@types/mysql": "^2.15.21", "generic-pool": "^3.6.0", "mysql": "^2.18.1" }, "devDependencies": { "@cubejs-backend/linter": "^1.0.0", - "@cubejs-backend/testing-shared": "1.0.4", + "@cubejs-backend/testing-shared": "1.0.6", "@types/generic-pool": "^3.1.9", "@types/jest": "^27", "jest": "^27", diff --git a/packages/cubejs-oracle-driver/CHANGELOG.md b/packages/cubejs-oracle-driver/CHANGELOG.md index a57d81f903324..5ddd89acf2007 100644 --- a/packages/cubejs-oracle-driver/CHANGELOG.md +++ b/packages/cubejs-oracle-driver/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/oracle-driver + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/oracle-driver diff --git a/packages/cubejs-oracle-driver/package.json b/packages/cubejs-oracle-driver/package.json index 866eb37f157f6..a01a93ec961dd 100644 --- a/packages/cubejs-oracle-driver/package.json +++ b/packages/cubejs-oracle-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/oracle-driver", "description": "Cube.js oracle database driver", "author": "Cube Dev, Inc.", - "version": "1.0.3", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -13,7 +13,7 @@ }, "main": "driver/OracleDriver.js", "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", "ramda": "^0.27.0" }, "optionalDependencies": { diff --git a/packages/cubejs-postgres-driver/CHANGELOG.md b/packages/cubejs-postgres-driver/CHANGELOG.md index a5bf71f2017a7..f944e56adf95e 100644 --- a/packages/cubejs-postgres-driver/CHANGELOG.md +++ b/packages/cubejs-postgres-driver/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/postgres-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/postgres-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/postgres-driver diff --git a/packages/cubejs-postgres-driver/package.json b/packages/cubejs-postgres-driver/package.json index c860d0a477a31..771a79bf30e55 100644 --- a/packages/cubejs-postgres-driver/package.json +++ b/packages/cubejs-postgres-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/postgres-driver", "description": "Cube.js Postgres database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -27,8 +27,8 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "@types/pg": "^8.6.0", "@types/pg-query-stream": "^1.0.3", "moment": "^2.24.0", @@ -38,7 +38,7 @@ "license": "Apache-2.0", "devDependencies": { "@cubejs-backend/linter": "^1.0.0", - "@cubejs-backend/testing-shared": "1.0.4", + "@cubejs-backend/testing-shared": "1.0.6", "testcontainers": "^10.10.4", "typescript": "~5.2.2" }, diff --git a/packages/cubejs-prestodb-driver/CHANGELOG.md b/packages/cubejs-prestodb-driver/CHANGELOG.md index a2bc07ee4fa24..a08f6870e18fc 100644 --- a/packages/cubejs-prestodb-driver/CHANGELOG.md +++ b/packages/cubejs-prestodb-driver/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/prestodb-driver + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/prestodb-driver diff --git a/packages/cubejs-prestodb-driver/package.json b/packages/cubejs-prestodb-driver/package.json index acad7fd8875ed..ce90709c45cdf 100644 --- a/packages/cubejs-prestodb-driver/package.json +++ b/packages/cubejs-prestodb-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/prestodb-driver", "description": "Cube.js Presto database driver", "author": "Cube Dev, Inc.", - "version": "1.0.3", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -27,8 +27,8 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "presto-client": "^0.12.2", "ramda": "^0.27.0", "sqlstring": "^2.3.1" diff --git a/packages/cubejs-query-orchestrator/CHANGELOG.md b/packages/cubejs-query-orchestrator/CHANGELOG.md index 44d348aba9f52..579081b2ab17d 100644 --- a/packages/cubejs-query-orchestrator/CHANGELOG.md +++ b/packages/cubejs-query-orchestrator/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/query-orchestrator + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/query-orchestrator diff --git a/packages/cubejs-query-orchestrator/package.json b/packages/cubejs-query-orchestrator/package.json index e674c63991258..4678c73b6d0b2 100644 --- a/packages/cubejs-query-orchestrator/package.json +++ b/packages/cubejs-query-orchestrator/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/query-orchestrator", "description": "Cube.js Query Orchestrator and Cache", "author": "Cube Dev, Inc.", - "version": "1.0.3", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -29,9 +29,9 @@ "dist/src/*" ], "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/cubestore-driver": "1.0.3", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/cubestore-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "csv-write-stream": "^2.0.0", "es5-ext": "0.10.53", "generic-pool": "^3.7.1", diff --git a/packages/cubejs-questdb-driver/CHANGELOG.md b/packages/cubejs-questdb-driver/CHANGELOG.md index d29ba34240fa5..98f6307ffc2c2 100644 --- a/packages/cubejs-questdb-driver/CHANGELOG.md +++ b/packages/cubejs-questdb-driver/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/questdb-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/questdb-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/questdb-driver diff --git a/packages/cubejs-questdb-driver/package.json b/packages/cubejs-questdb-driver/package.json index 81880a49b0bd9..c00097248ed57 100644 --- a/packages/cubejs-questdb-driver/package.json +++ b/packages/cubejs-questdb-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/questdb-driver", "description": "Cube.js QuestDB database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -27,9 +27,9 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/schema-compiler": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/schema-compiler": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "@types/pg": "^8.6.0", "moment": "^2.24.0", "pg": "^8.7.0", @@ -38,7 +38,7 @@ "license": "Apache-2.0", "devDependencies": { "@cubejs-backend/linter": "^1.0.0", - "@cubejs-backend/testing-shared": "1.0.4", + "@cubejs-backend/testing-shared": "1.0.6", "testcontainers": "^10.10.4", "typescript": "~5.2.2" }, diff --git a/packages/cubejs-redshift-driver/CHANGELOG.md b/packages/cubejs-redshift-driver/CHANGELOG.md index 32986b6e1d1c7..8737ec70d50e7 100644 --- a/packages/cubejs-redshift-driver/CHANGELOG.md +++ b/packages/cubejs-redshift-driver/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/redshift-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/redshift-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/redshift-driver diff --git a/packages/cubejs-redshift-driver/package.json b/packages/cubejs-redshift-driver/package.json index 9be3e3b0481f2..d7823f00bdcaa 100644 --- a/packages/cubejs-redshift-driver/package.json +++ b/packages/cubejs-redshift-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/redshift-driver", "description": "Cube.js Redshift database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -25,9 +25,9 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/postgres-driver": "1.0.4", - "@cubejs-backend/shared": "1.0.3" + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/postgres-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6" }, "license": "Apache-2.0", "devDependencies": { diff --git a/packages/cubejs-schema-compiler/CHANGELOG.md b/packages/cubejs-schema-compiler/CHANGELOG.md index c9557949f269d..aaff0fe3de140 100644 --- a/packages/cubejs-schema-compiler/CHANGELOG.md +++ b/packages/cubejs-schema-compiler/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/schema-compiler + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/schema-compiler + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/schema-compiler diff --git a/packages/cubejs-schema-compiler/package.json b/packages/cubejs-schema-compiler/package.json index 243071c341e9c..f09d94da01111 100644 --- a/packages/cubejs-schema-compiler/package.json +++ b/packages/cubejs-schema-compiler/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/schema-compiler", "description": "Cube schema compiler", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -40,8 +40,8 @@ "@babel/standalone": "^7.24", "@babel/traverse": "^7.24", "@babel/types": "^7.24", - "@cubejs-backend/native": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/native": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "antlr4ts": "0.5.0-alpha.4", "camelcase": "^6.2.0", "cron-parser": "^4.9.0", @@ -54,12 +54,13 @@ "node-dijkstra": "^2.5.0", "ramda": "^0.27.2", "syntax-error": "^1.3.0", - "uuid": "^8.3.2" + "uuid": "^8.3.2", + "workerpool": "^9.2.0" }, "devDependencies": { "@cubejs-backend/apla-clickhouse": "^1.7.0", "@cubejs-backend/linter": "^1.0.0", - "@cubejs-backend/query-orchestrator": "1.0.3", + "@cubejs-backend/query-orchestrator": "1.0.6", "@types/babel__code-frame": "^7.0.6", "@types/babel__generator": "^7.6.8", "@types/babel__traverse": "^7.20.5", diff --git a/packages/cubejs-schema-compiler/src/compiler/CubeSymbols.js b/packages/cubejs-schema-compiler/src/compiler/CubeSymbols.js index ee8b0ab6e333f..22c3ae28087f6 100644 --- a/packages/cubejs-schema-compiler/src/compiler/CubeSymbols.js +++ b/packages/cubejs-schema-compiler/src/compiler/CubeSymbols.js @@ -8,7 +8,7 @@ import { camelizeCube } from './utils'; import { BaseQuery } from '../adapter'; const FunctionRegex = /function\s+\w+\(([A-Za-z0-9_,]*)|\(([\s\S]*?)\)\s*=>|\(?(\w+)\)?\s*=>/; -const CONTEXT_SYMBOLS = { +export const CONTEXT_SYMBOLS = { SECURITY_CONTEXT: 'securityContext', // SECURITY_CONTEXT has been deprecated, however security_context (lowecase) // is allowed in RBAC policies for query-time attribute matching @@ -19,7 +19,7 @@ const CONTEXT_SYMBOLS = { SQL_UTILS: 'sqlUtils' }; -const CURRENT_CUBE_CONSTANTS = ['CUBE', 'TABLE']; +export const CURRENT_CUBE_CONSTANTS = ['CUBE', 'TABLE']; export class CubeSymbols { constructor(evaluateViews) { diff --git a/packages/cubejs-schema-compiler/src/compiler/DataSchemaCompiler.js b/packages/cubejs-schema-compiler/src/compiler/DataSchemaCompiler.js index 0d16153fad2d7..1078c3458e14f 100644 --- a/packages/cubejs-schema-compiler/src/compiler/DataSchemaCompiler.js +++ b/packages/cubejs-schema-compiler/src/compiler/DataSchemaCompiler.js @@ -6,8 +6,9 @@ import { parse } from '@babel/parser'; import babelGenerator from '@babel/generator'; import babelTraverse from '@babel/traverse'; import R from 'ramda'; +import workerpool from 'workerpool'; -import { isNativeSupported } from '@cubejs-backend/shared'; +import { getEnv, isNativeSupported } from '@cubejs-backend/shared'; import { UserError } from './UserError'; import { ErrorReporter } from './ErrorReporter'; @@ -26,6 +27,8 @@ export class DataSchemaCompiler { this.preTranspileCubeCompilers = options.preTranspileCubeCompilers || []; this.cubeNameCompilers = options.cubeNameCompilers || []; this.extensions = options.extensions || {}; + this.cubeDictionary = options.cubeDictionary; + this.cubeSymbols = options.cubeSymbols; this.cubeFactory = options.cubeFactory; this.filesToCompile = options.filesToCompile; this.omitErrors = options.omitErrors; @@ -38,6 +41,7 @@ export class DataSchemaCompiler { this.yamlCompiler = options.yamlCompiler; this.yamlCompiler.dataSchemaCompiler = this; this.pythonContext = null; + this.workerPool = null; } compileObjects(compileServices, objects, errorsReport) { @@ -87,17 +91,52 @@ export class DataSchemaCompiler { const errorsReport = new ErrorReporter(null, [], this.errorReport); this.errorsReport = errorsReport; - // TODO: required in order to get pre transpile compilation work - const transpile = () => toCompile.map(f => this.transpileFile(f, errorsReport)).filter(f => !!f); + if (getEnv('transpilationWorkerThreads')) { + const wc = getEnv('transpilationWorkerThreadsCount'); + this.workerPool = workerpool.pool( + path.join(__dirname, 'transpilers/transpiler_worker'), + wc > 0 ? { maxWorkers: wc } : undefined, + ); + } + + const transpile = async () => { + let cubeNames; + let cubeSymbolsNames; + + if (getEnv('transpilationWorkerThreads')) { + cubeNames = Object.keys(this.cubeDictionary.byId); + // We need only cubes and all its member names for transpiling. + // Cubes doesn't change during transpiling, but are changed during compilation phase, + // so we can prepare them once for every phase. + // Communication between main and worker threads uses + // The structured clone algorithm (@see https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Structured_clone_algorithm) + // which doesn't allow passing any function objects, so we need to sanitize the symbols. + cubeSymbolsNames = Object.fromEntries( + Object.entries(this.cubeSymbols.symbols) + .map( + ([key, value]) => [key, Object.fromEntries( + Object.keys(value).map((k) => [k, true]), + )], + ), + ); + } + const results = await Promise.all(toCompile.map(f => this.transpileFile(f, errorsReport, { cubeNames, cubeSymbolsNames }))); + return results.filter(f => !!f); + }; - const compilePhase = (compilers) => this.compileCubeFiles(compilers, transpile(), errorsReport); + const compilePhase = async (compilers) => this.compileCubeFiles(compilers, await transpile(), errorsReport); return compilePhase({ cubeCompilers: this.cubeNameCompilers }) .then(() => compilePhase({ cubeCompilers: this.preTranspileCubeCompilers })) .then(() => compilePhase({ cubeCompilers: this.cubeCompilers, contextCompilers: this.contextCompilers, - })); + })) + .then(() => { + if (this.workerPool) { + this.workerPool.terminate(); + } + }); } compile() { @@ -113,7 +152,7 @@ export class DataSchemaCompiler { return this.compilePromise; } - transpileFile(file, errorsReport) { + async transpileFile(file, errorsReport, options) { if (R.endsWith('.jinja', file.fileName) || (R.endsWith('.yml', file.fileName) || R.endsWith('.yaml', file.fileName)) // TODO do Jinja syntax check with jinja compiler @@ -132,31 +171,47 @@ export class DataSchemaCompiler { } else if (R.endsWith('.yml', file.fileName) || R.endsWith('.yaml', file.fileName)) { return file; } else if (R.endsWith('.js', file.fileName)) { - return this.transpileJsFile(file, errorsReport); + return this.transpileJsFile(file, errorsReport, options); } else { return file; } } - transpileJsFile(file, errorsReport) { + async transpileJsFile(file, errorsReport, { cubeNames, cubeSymbolsNames }) { try { - const ast = parse( - file.content, - { - sourceFilename: file.fileName, - sourceType: 'module', - plugins: ['objectRestSpread'] - }, - ); + if (getEnv('transpilationWorkerThreads')) { + const data = { + fileName: file.fileName, + content: file.content, + transpilers: this.transpilers.map(t => t.constructor.name), + cubeNames, + cubeSymbolsNames, + }; + + const res = await this.workerPool.exec('transpile', [data]); + errorsReport.addErrors(res.errors); + errorsReport.addWarnings(res.warnings); + + return Object.assign({}, file, { content: res.content }); + } else { + const ast = parse( + file.content, + { + sourceFilename: file.fileName, + sourceType: 'module', + plugins: ['objectRestSpread'], + }, + ); - this.transpilers.forEach((t) => { - errorsReport.inFile(file); - babelTraverse(ast, t.traverseObject(errorsReport)); - errorsReport.exitFile(); - }); + this.transpilers.forEach((t) => { + errorsReport.inFile(file); + babelTraverse(ast, t.traverseObject(errorsReport)); + errorsReport.exitFile(); + }); - const content = babelGenerator(ast, {}, file.content).code; - return Object.assign({}, file, { content }); + const content = babelGenerator(ast, {}, file.content).code; + return Object.assign({}, file, { content }); + } } catch (e) { if (e.toString().indexOf('SyntaxError') !== -1) { const line = file.content.split('\n')[e.loc.line - 1]; diff --git a/packages/cubejs-schema-compiler/src/compiler/ErrorReporter.ts b/packages/cubejs-schema-compiler/src/compiler/ErrorReporter.ts index 8407dd8605453..bf48792f4a3ab 100644 --- a/packages/cubejs-schema-compiler/src/compiler/ErrorReporter.ts +++ b/packages/cubejs-schema-compiler/src/compiler/ErrorReporter.ts @@ -137,6 +137,22 @@ export class ErrorReporter { } } + public getErrors() { + return this.rootReporter().errors; + } + + public addErrors(errors: CompilerErrorInterface[]) { + this.rootReporter().errors.push(...errors); + } + + public getWarnings() { + return this.rootReporter().warnings; + } + + public addWarnings(warnings: SyntaxErrorInterface[]) { + this.rootReporter().warnings.push(...warnings); + } + protected rootReporter(): ErrorReporter { return this.parent ? this.parent.rootReporter() : this; } diff --git a/packages/cubejs-schema-compiler/src/compiler/PrepareCompiler.ts b/packages/cubejs-schema-compiler/src/compiler/PrepareCompiler.ts index 446769688f07d..c01d2ff3e680b 100644 --- a/packages/cubejs-schema-compiler/src/compiler/PrepareCompiler.ts +++ b/packages/cubejs-schema-compiler/src/compiler/PrepareCompiler.ts @@ -64,6 +64,8 @@ export const prepareCompiler = (repo: SchemaFileRepository, options: PrepareComp contextCompilers: [contextEvaluator], cubeFactory: cubeSymbols.createCube.bind(cubeSymbols), compilerCache, + cubeDictionary, + cubeSymbols, extensions: { Funnels, RefreshKeys, diff --git a/packages/cubejs-schema-compiler/src/compiler/transpilers/CubePropContextTranspiler.ts b/packages/cubejs-schema-compiler/src/compiler/transpilers/CubePropContextTranspiler.ts index a7dcb2e85b26a..74a8aa67bba49 100644 --- a/packages/cubejs-schema-compiler/src/compiler/transpilers/CubePropContextTranspiler.ts +++ b/packages/cubejs-schema-compiler/src/compiler/transpilers/CubePropContextTranspiler.ts @@ -2,7 +2,12 @@ import * as t from '@babel/types'; import R from 'ramda'; import type { NodePath } from '@babel/traverse'; -import type { TranspilerInterface, TraverseObject } from './transpiler.interface'; +import { + TranspilerCubeResolver, + TranspilerInterface, + TranspilerSymbolResolver, + TraverseObject +} from './transpiler.interface'; import type { CubeSymbols } from '../CubeSymbols'; import type { CubeDictionary } from '../CubeDictionary'; @@ -39,8 +44,8 @@ transpiledFieldsPatterns?.forEach((r) => { export class CubePropContextTranspiler implements TranspilerInterface { public constructor( - protected readonly cubeSymbols: CubeSymbols, - protected readonly cubeDictionary: CubeDictionary, + protected readonly cubeSymbols: TranspilerSymbolResolver, + protected readonly cubeDictionary: TranspilerCubeResolver, ) { } diff --git a/packages/cubejs-schema-compiler/src/compiler/transpilers/LightweightNodeCubeDictionary.ts b/packages/cubejs-schema-compiler/src/compiler/transpilers/LightweightNodeCubeDictionary.ts new file mode 100644 index 0000000000000..159dbb8377a7a --- /dev/null +++ b/packages/cubejs-schema-compiler/src/compiler/transpilers/LightweightNodeCubeDictionary.ts @@ -0,0 +1,14 @@ +import { TranspilerCubeResolver } from './transpiler.interface'; + +export class LightweightNodeCubeDictionary implements TranspilerCubeResolver { + public constructor(private cubeNames: string[] = []) { + } + + public resolveCube(name: string): boolean { + return this.cubeNames.includes(name); + } + + public setCubeNames(cubeNames: string[]): void { + this.cubeNames = cubeNames; + } +} diff --git a/packages/cubejs-schema-compiler/src/compiler/transpilers/LightweightSymbolResolver.ts b/packages/cubejs-schema-compiler/src/compiler/transpilers/LightweightSymbolResolver.ts new file mode 100644 index 0000000000000..1041a6190c6eb --- /dev/null +++ b/packages/cubejs-schema-compiler/src/compiler/transpilers/LightweightSymbolResolver.ts @@ -0,0 +1,30 @@ +import { TranspilerSymbolResolver } from './transpiler.interface'; +import { CONTEXT_SYMBOLS, CURRENT_CUBE_CONSTANTS } from '../CubeSymbols'; + +type CubeSymbols = Record>; + +export class LightweightSymbolResolver implements TranspilerSymbolResolver { + public constructor(private symbols: CubeSymbols = {}) { + } + + public setSymbols(symbols: CubeSymbols) { + this.symbols = symbols; + } + + public isCurrentCube(name): boolean { + return CURRENT_CUBE_CONSTANTS.indexOf(name) >= 0; + } + + public resolveSymbol(cubeName, name): any { + if (name === 'USER_CONTEXT') { + throw new Error('Support for USER_CONTEXT was removed, please migrate to SECURITY_CONTEXT.'); + } + + if (CONTEXT_SYMBOLS[name]) { + return true; + } + + const cube = this.symbols[this.isCurrentCube(name) ? cubeName : name]; + return cube || (this.symbols[cubeName] && this.symbols[cubeName][name]); + } +} diff --git a/packages/cubejs-schema-compiler/src/compiler/transpilers/transpiler.interface.ts b/packages/cubejs-schema-compiler/src/compiler/transpilers/transpiler.interface.ts index 0f15c6f8401a8..803a1c0fa4082 100644 --- a/packages/cubejs-schema-compiler/src/compiler/transpilers/transpiler.interface.ts +++ b/packages/cubejs-schema-compiler/src/compiler/transpilers/transpiler.interface.ts @@ -6,3 +6,12 @@ export type TraverseObject = TraverseOptions; export interface TranspilerInterface { traverseObject(reporter: ErrorReporter): TraverseObject; } + +export interface TranspilerSymbolResolver { + resolveSymbol(cubeName, name): any; + isCurrentCube(name): boolean; +} + +export interface TranspilerCubeResolver { + resolveCube(name): boolean; +} diff --git a/packages/cubejs-schema-compiler/src/compiler/transpilers/transpiler_worker.ts b/packages/cubejs-schema-compiler/src/compiler/transpilers/transpiler_worker.ts new file mode 100644 index 0000000000000..9dbefdf705bbd --- /dev/null +++ b/packages/cubejs-schema-compiler/src/compiler/transpilers/transpiler_worker.ts @@ -0,0 +1,67 @@ +import workerpool from 'workerpool'; +import { parse } from '@babel/parser'; +import babelGenerator from '@babel/generator'; +import babelTraverse from '@babel/traverse'; + +import { ValidationTranspiler } from './ValidationTranspiler'; +import { ImportExportTranspiler } from './ImportExportTranspiler'; +import { CubeCheckDuplicatePropTranspiler } from './CubeCheckDuplicatePropTranspiler'; +import { CubePropContextTranspiler } from './CubePropContextTranspiler'; +import { ErrorReporter } from '../ErrorReporter'; +import { LightweightSymbolResolver } from './LightweightSymbolResolver'; +import { LightweightNodeCubeDictionary } from './LightweightNodeCubeDictionary'; + +type TransferContent = { + fileName: string; + content: string; + transpilers: string[]; + cubeNames: string[]; + cubeSymbolsNames: Record>; +}; + +const cubeDictionary = new LightweightNodeCubeDictionary(); +const cubeSymbols = new LightweightSymbolResolver(); +const errorsReport = new ErrorReporter(null, []); + +const transpilers = { + ValidationTranspiler: new ValidationTranspiler(), + ImportExportTranspiler: new ImportExportTranspiler(), + CubeCheckDuplicatePropTranspiler: new CubeCheckDuplicatePropTranspiler(), + CubePropContextTranspiler: new CubePropContextTranspiler(cubeSymbols, cubeDictionary), +}; + +const transpile = (data: TransferContent) => { + cubeDictionary.setCubeNames(data.cubeNames); + cubeSymbols.setSymbols(data.cubeSymbolsNames); + + const ast = parse( + data.content, + { + sourceFilename: data.fileName, + sourceType: 'module', + plugins: ['objectRestSpread'] + }, + ); + + data.transpilers.forEach(transpilerName => { + if (transpilers[transpilerName]) { + errorsReport.inFile(data); + babelTraverse(ast, transpilers[transpilerName].traverseObject(errorsReport)); + errorsReport.exitFile(); + } else { + throw new Error(`Transpiler ${transpilerName} not supported`); + } + }); + + const content = babelGenerator(ast, {}, data.content).code; + + return { + content, + errors: errorsReport.getErrors(), + warnings: errorsReport.getWarnings() + }; +}; + +workerpool.worker({ + transpile, +}); diff --git a/packages/cubejs-schema-compiler/test/integration/clickhouse/custom-granularities.test.ts b/packages/cubejs-schema-compiler/test/integration/clickhouse/custom-granularities.test.ts index 966ba6846e6e4..2d8a1665d66b6 100644 --- a/packages/cubejs-schema-compiler/test/integration/clickhouse/custom-granularities.test.ts +++ b/packages/cubejs-schema-compiler/test/integration/clickhouse/custom-granularities.test.ts @@ -41,9 +41,11 @@ describe('Custom Granularities', () => { granularities: - name: half_year interval: 6 months + origin: '2024-01-01' # to keep tests stable across time (year change, etc) - name: half_year_by_1st_april interval: 6 months - offset: 3 months + #offset: 3 months + origin: '2024-04-01' # to keep tests stable across time (year change, etc) - name: two_weeks_by_friday interval: 2 weeks origin: '2024-08-23' diff --git a/packages/cubejs-schema-compiler/test/integration/mssql/custom-granularities.test.ts b/packages/cubejs-schema-compiler/test/integration/mssql/custom-granularities.test.ts index 762e88230af76..922b37e48b80a 100644 --- a/packages/cubejs-schema-compiler/test/integration/mssql/custom-granularities.test.ts +++ b/packages/cubejs-schema-compiler/test/integration/mssql/custom-granularities.test.ts @@ -37,9 +37,11 @@ describe('Custom Granularities', () => { granularities: - name: half_year interval: 6 months + origin: '2024-01-01' # to keep tests stable across time (year change, etc) - name: half_year_by_1st_april interval: 6 months - offset: 3 months + #offset: 3 months + origin: '2024-04-01' # to keep tests stable across time (year change, etc) - name: two_weeks_by_friday interval: 2 weeks origin: '2024-08-23' diff --git a/packages/cubejs-schema-compiler/test/integration/mysql/custom-granularities.test.ts b/packages/cubejs-schema-compiler/test/integration/mysql/custom-granularities.test.ts index a69c9a97c527e..1505442c453b0 100644 --- a/packages/cubejs-schema-compiler/test/integration/mysql/custom-granularities.test.ts +++ b/packages/cubejs-schema-compiler/test/integration/mysql/custom-granularities.test.ts @@ -37,9 +37,11 @@ describe('Custom Granularities', () => { granularities: - name: half_year interval: 6 months + origin: '2024-01-01' # to keep tests stable across time (year change, etc) - name: half_year_by_1st_april interval: 6 months - offset: 3 months + #offset: 3 months + origin: '2024-04-01' # to keep tests stable across time (year change, etc) - name: two_weeks_by_friday interval: 2 weeks origin: '2024-08-23' diff --git a/packages/cubejs-schema-compiler/test/integration/postgres/custom-granularities.test.ts b/packages/cubejs-schema-compiler/test/integration/postgres/custom-granularities.test.ts index 4d6314a9089e1..4be8f26f744b7 100644 --- a/packages/cubejs-schema-compiler/test/integration/postgres/custom-granularities.test.ts +++ b/packages/cubejs-schema-compiler/test/integration/postgres/custom-granularities.test.ts @@ -39,9 +39,11 @@ describe('Custom Granularities', () => { granularities: - name: half_year interval: 6 months + origin: '2024-01-01' # to keep tests stable across time (year change, etc) - name: half_year_by_1st_april interval: 6 months - offset: 3 months + #offset: 3 months + origin: '2024-04-01' # to keep tests stable across time (year change, etc) - name: two_weeks_by_friday interval: 2 weeks origin: '2024-08-23' diff --git a/packages/cubejs-server-core/CHANGELOG.md b/packages/cubejs-server-core/CHANGELOG.md index 278bf4be46da9..4c48446485549 100644 --- a/packages/cubejs-server-core/CHANGELOG.md +++ b/packages/cubejs-server-core/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/server-core + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/server-core + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) diff --git a/packages/cubejs-server-core/package.json b/packages/cubejs-server-core/package.json index 22ae93cf1c561..93477736eb3ad 100644 --- a/packages/cubejs-server-core/package.json +++ b/packages/cubejs-server-core/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/server-core", "description": "Cube.js base component to wire all backend components together", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -29,14 +29,14 @@ "unit": "jest --runInBand --forceExit --coverage dist/test" }, "dependencies": { - "@cubejs-backend/api-gateway": "1.0.4", - "@cubejs-backend/cloud": "1.0.3", + "@cubejs-backend/api-gateway": "1.0.6", + "@cubejs-backend/cloud": "1.0.6", "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/native": "1.0.4", - "@cubejs-backend/query-orchestrator": "1.0.3", - "@cubejs-backend/schema-compiler": "1.0.4", - "@cubejs-backend/shared": "1.0.3", - "@cubejs-backend/templates": "1.0.3", + "@cubejs-backend/native": "1.0.6", + "@cubejs-backend/query-orchestrator": "1.0.6", + "@cubejs-backend/schema-compiler": "1.0.6", + "@cubejs-backend/shared": "1.0.6", + "@cubejs-backend/templates": "1.0.6", "codesandbox-import-utils": "^2.1.12", "cross-spawn": "^7.0.1", "fs-extra": "^8.1.0", @@ -57,7 +57,7 @@ "ws": "^7.5.3" }, "devDependencies": { - "@cubejs-backend/cubestore-driver": "1.0.3", + "@cubejs-backend/cubestore-driver": "1.0.6", "@cubejs-backend/linter": "^1.0.0", "@cubejs-client/playground": "^1.0.2", "@types/cross-spawn": "^6.0.2", diff --git a/packages/cubejs-server-core/src/core/optionsValidate.ts b/packages/cubejs-server-core/src/core/optionsValidate.ts index 157d2acb84cd9..161186938e16f 100644 --- a/packages/cubejs-server-core/src/core/optionsValidate.ts +++ b/packages/cubejs-server-core/src/core/optionsValidate.ts @@ -74,6 +74,7 @@ const schemaOptions = Joi.object().keys({ contextToAppId: Joi.func(), contextToRoles: Joi.func(), contextToOrchestratorId: Joi.func(), + contextToCubeStoreRouterId: Joi.func(), contextToDataSourceId: Joi.func(), contextToApiScopes: Joi.func(), repositoryFactory: Joi.func(), diff --git a/packages/cubejs-server-core/src/core/server.ts b/packages/cubejs-server-core/src/core/server.ts index 673096142a720..ac786736212c3 100644 --- a/packages/cubejs-server-core/src/core/server.ts +++ b/packages/cubejs-server-core/src/core/server.ts @@ -46,6 +46,7 @@ import type { DriverContext, LoggerFn, DriverConfig, + ContextToCubeStoreRouterIdFn, } from './types'; import { ContextToOrchestratorIdFn, ContextAcceptanceResult, ContextAcceptanceResultHttp, ContextAcceptanceResultWs, ContextAcceptor } from './types'; @@ -115,7 +116,9 @@ export class CubejsServerCore { protected compilerCache: LRUCache; - protected readonly contextToOrchestratorId: ContextToOrchestratorIdFn; + protected readonly contextToOrchestratorId: ContextToOrchestratorIdFn | null; + + protected readonly contextToCubeStoreRouterId: ContextToCubeStoreRouterIdFn; protected readonly preAggregationsSchema: PreAggregationsSchemaFn; @@ -192,6 +195,7 @@ export class CubejsServerCore { } this.contextToOrchestratorId = this.options.contextToOrchestratorId || (() => 'STANDALONE'); + this.contextToCubeStoreRouterId = this.options.contextToCubeStoreRouterId; // proactively free up old cache values occasionally if (this.options.maxCompilerCacheKeepAlive) { diff --git a/packages/cubejs-server-core/src/core/types.ts b/packages/cubejs-server-core/src/core/types.ts index b5280b69b71f7..213bc9c2ac7a8 100644 --- a/packages/cubejs-server-core/src/core/types.ts +++ b/packages/cubejs-server-core/src/core/types.ts @@ -122,6 +122,7 @@ export type DatabaseType = export type ContextToAppIdFn = (context: RequestContext) => string | Promise; export type ContextToRolesFn = (context: RequestContext) => string[] | Promise; export type ContextToOrchestratorIdFn = (context: RequestContext) => string | Promise; +export type ContextToCubeStoreRouterIdFn = (context: RequestContext) => string | Promise; export type OrchestratorOptionsFn = (context: RequestContext) => OrchestratorOptions | Promise; @@ -179,6 +180,7 @@ export interface CreateOptions { contextToAppId?: ContextToAppIdFn; contextToRoles?: ContextToRolesFn; contextToOrchestratorId?: ContextToOrchestratorIdFn; + contextToCubeStoreRouterId?: ContextToCubeStoreRouterIdFn; contextToApiScopes?: ContextToApiScopesFn; repositoryFactory?: (context: RequestContext) => SchemaFileRepository; checkAuth?: CheckAuthFn; diff --git a/packages/cubejs-server/CHANGELOG.md b/packages/cubejs-server/CHANGELOG.md index 1dc9019da4983..9fdb697b817ed 100644 --- a/packages/cubejs-server/CHANGELOG.md +++ b/packages/cubejs-server/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/server + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/server + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/server diff --git a/packages/cubejs-server/package.json b/packages/cubejs-server/package.json index ad7580550df5b..691802702f1b0 100644 --- a/packages/cubejs-server/package.json +++ b/packages/cubejs-server/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/server", "description": "Cube.js all-in-one server", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "types": "index.d.ts", "repository": { "type": "git", @@ -40,11 +40,11 @@ "jest:shapshot": "jest --updateSnapshot test" }, "dependencies": { - "@cubejs-backend/cubestore-driver": "1.0.3", + "@cubejs-backend/cubestore-driver": "1.0.6", "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/native": "1.0.4", - "@cubejs-backend/server-core": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/native": "1.0.6", + "@cubejs-backend/server-core": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "@oclif/color": "^1.0.0", "@oclif/command": "^1.8.13", "@oclif/config": "^1.18.2", @@ -62,7 +62,7 @@ }, "devDependencies": { "@cubejs-backend/linter": "^1.0.0", - "@cubejs-backend/query-orchestrator": "1.0.3", + "@cubejs-backend/query-orchestrator": "1.0.6", "@oclif/dev-cli": "^1.23.1", "@types/body-parser": "^1.19.0", "@types/cors": "^2.8.8", diff --git a/packages/cubejs-snowflake-driver/CHANGELOG.md b/packages/cubejs-snowflake-driver/CHANGELOG.md index 026866f6b8235..d62aa435f1159 100644 --- a/packages/cubejs-snowflake-driver/CHANGELOG.md +++ b/packages/cubejs-snowflake-driver/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/snowflake-driver + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/snowflake-driver diff --git a/packages/cubejs-snowflake-driver/package.json b/packages/cubejs-snowflake-driver/package.json index 5c3cf6f877afd..f18a8ac214a09 100644 --- a/packages/cubejs-snowflake-driver/package.json +++ b/packages/cubejs-snowflake-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/snowflake-driver", "description": "Cube.js Snowflake database driver", "author": "Cube Dev, Inc.", - "version": "1.0.3", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -25,8 +25,8 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "date-fns-timezone": "^0.1.4", "snowflake-sdk": "^1.13.1" }, diff --git a/packages/cubejs-sqlite-driver/CHANGELOG.md b/packages/cubejs-sqlite-driver/CHANGELOG.md index b7a8f61921eae..a1565fd259e38 100644 --- a/packages/cubejs-sqlite-driver/CHANGELOG.md +++ b/packages/cubejs-sqlite-driver/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/sqlite-driver + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/sqlite-driver diff --git a/packages/cubejs-sqlite-driver/package.json b/packages/cubejs-sqlite-driver/package.json index b6bad6ac01d1e..61b9620f56762 100644 --- a/packages/cubejs-sqlite-driver/package.json +++ b/packages/cubejs-sqlite-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/sqlite-driver", "description": "Cube.js Sqlite database driver", "author": "Cube Dev, Inc.", - "version": "1.0.3", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -17,8 +17,8 @@ "lint": "eslint **/*.js" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "sqlite3": "^5.1.7" }, "license": "Apache-2.0", diff --git a/packages/cubejs-templates/CHANGELOG.md b/packages/cubejs-templates/CHANGELOG.md index 227a9f8b89f66..99c28ea3a1aea 100644 --- a/packages/cubejs-templates/CHANGELOG.md +++ b/packages/cubejs-templates/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/templates + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/templates diff --git a/packages/cubejs-templates/package.json b/packages/cubejs-templates/package.json index 78e41f675b29d..4a4ad203c1c11 100644 --- a/packages/cubejs-templates/package.json +++ b/packages/cubejs-templates/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/templates", - "version": "1.0.3", + "version": "1.0.6", "description": "Cube.js Templates helpers", "author": "Cube Dev, Inc.", "license": "Apache-2.0", @@ -26,7 +26,7 @@ "extends": "../cubejs-linter" }, "dependencies": { - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/shared": "1.0.6", "cross-spawn": "^7.0.3", "decompress": "^4.2.1", "decompress-targz": "^4.1.1", diff --git a/packages/cubejs-testing-drivers/CHANGELOG.md b/packages/cubejs-testing-drivers/CHANGELOG.md index a2847726a9abd..793cd26005b12 100644 --- a/packages/cubejs-testing-drivers/CHANGELOG.md +++ b/packages/cubejs-testing-drivers/CHANGELOG.md @@ -3,6 +3,25 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + + +### Bug Fixes + +* **databricks-driver:** fix databricks bucket URL parsing. Now driver supports both (legacy and modern urls) ([#8968](https://github.com/cube-js/cube/issues/8968)) ([#9026](https://github.com/cube-js/cube/issues/9026)) ([3958a62](https://github.com/cube-js/cube/commit/3958a62d91f65c1fdf04206223ade2e48f9e8344)) + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/testing-drivers + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/testing-drivers diff --git a/packages/cubejs-testing-drivers/fixtures/_schemas.json b/packages/cubejs-testing-drivers/fixtures/_schemas.json index bfd9e256a1c0c..79339640180f4 100644 --- a/packages/cubejs-testing-drivers/fixtures/_schemas.json +++ b/packages/cubejs-testing-drivers/fixtures/_schemas.json @@ -92,12 +92,13 @@ "granularities": [ { "name": "half_year", - "interval": "6 months" + "interval": "6 months", + "origin": "2024-01-01" }, { "name": "half_year_by_1st_april", "interval": "6 months", - "offset": "3 months" + "origin": "2024-04-01" }, { "name": "two_mo_by_feb", @@ -118,12 +119,13 @@ "granularities": [ { "name": "half_year", - "interval": "6 months" + "interval": "6 months", + "origin": "2024-01-01" }, { "name": "half_year_by_1st_april", "interval": "6 months", - "offset": "3 months" + "origin": "2024-04-01" }, { "name": "two_mo_by_feb", diff --git a/packages/cubejs-testing-drivers/fixtures/databricks-jdbc.json b/packages/cubejs-testing-drivers/fixtures/databricks-jdbc.json index 77c60606ef2b0..3aa241490b991 100644 --- a/packages/cubejs-testing-drivers/fixtures/databricks-jdbc.json +++ b/packages/cubejs-testing-drivers/fixtures/databricks-jdbc.json @@ -15,7 +15,7 @@ "cube": { "environment": { "CUBEJS_DB_EXPORT_BUCKET_TYPE": "azure", - "CUBEJS_DB_EXPORT_BUCKET": "wasbs://databricks-drivers-tests-preaggs@coreteamdevtest.blob.core.windows.net", + "CUBEJS_DB_EXPORT_BUCKET": "abfss://databricks-drivers-tests-preaggs@coreteamdevtest.dfs.core.windows.net", "CUBEJS_DB_EXPORT_BUCKET_AZURE_KEY": "${DRIVERS_TESTS_CUBEJS_DB_EXPORT_BUCKET_AZURE_KEY}" } } diff --git a/packages/cubejs-testing-drivers/package.json b/packages/cubejs-testing-drivers/package.json index b0b6b56b9cbb3..53a8789759388 100644 --- a/packages/cubejs-testing-drivers/package.json +++ b/packages/cubejs-testing-drivers/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/testing-drivers", - "version": "1.0.4", + "version": "1.0.6", "description": "Cube.js drivers test suite", "author": "Cube Dev, Inc.", "license": "MIT", @@ -52,22 +52,22 @@ "dist/src" ], "dependencies": { - "@cubejs-backend/athena-driver": "1.0.4", - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/bigquery-driver": "1.0.4", - "@cubejs-backend/clickhouse-driver": "1.0.4", - "@cubejs-backend/cubestore-driver": "1.0.3", - "@cubejs-backend/databricks-jdbc-driver": "1.0.4", + "@cubejs-backend/athena-driver": "1.0.6", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/bigquery-driver": "1.0.6", + "@cubejs-backend/clickhouse-driver": "1.0.6", + "@cubejs-backend/cubestore-driver": "1.0.6", + "@cubejs-backend/databricks-jdbc-driver": "1.0.6", "@cubejs-backend/dotenv": "^9.0.2", "@cubejs-backend/linter": "^1.0.0", - "@cubejs-backend/mssql-driver": "1.0.3", - "@cubejs-backend/mysql-driver": "1.0.4", - "@cubejs-backend/postgres-driver": "1.0.4", - "@cubejs-backend/query-orchestrator": "1.0.3", - "@cubejs-backend/server-core": "1.0.4", - "@cubejs-backend/shared": "1.0.3", - "@cubejs-backend/snowflake-driver": "1.0.3", - "@cubejs-backend/testing-shared": "1.0.4", + "@cubejs-backend/mssql-driver": "1.0.6", + "@cubejs-backend/mysql-driver": "1.0.6", + "@cubejs-backend/postgres-driver": "1.0.6", + "@cubejs-backend/query-orchestrator": "1.0.6", + "@cubejs-backend/server-core": "1.0.6", + "@cubejs-backend/shared": "1.0.6", + "@cubejs-backend/snowflake-driver": "1.0.6", + "@cubejs-backend/testing-shared": "1.0.6", "@cubejs-client/core": "^1.0.0", "@cubejs-client/ws-transport": "^1.0.0", "@jest/globals": "^27", diff --git a/packages/cubejs-testing-drivers/test/__snapshots__/databricks-jdbc-export-bucket-azure-full.test.ts.snap b/packages/cubejs-testing-drivers/test/__snapshots__/databricks-jdbc-export-bucket-azure-full.test.ts.snap index 3def993351ff1..8fb34d0588728 100644 --- a/packages/cubejs-testing-drivers/test/__snapshots__/databricks-jdbc-export-bucket-azure-full.test.ts.snap +++ b/packages/cubejs-testing-drivers/test/__snapshots__/databricks-jdbc-export-bucket-azure-full.test.ts.snap @@ -6003,6 +6003,14 @@ Array [ ] `; +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure SQL API: metabase count cast to float32 from push down: metabase_count_cast_to_float32_from_push_down 1`] = ` +Array [ + Object { + "a0": 41, + }, +] +`; + exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure SQL API: post-aggregate percentage of total: post_aggregate_percentage_of_total 1`] = ` Array [ Object { @@ -6011,6 +6019,15 @@ Array [ ] `; +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure SQL API: powerbi min max push down: powerbi_min_max_push_down 1`] = ` +Array [ + Object { + "a0": 2020-12-25T00:00:00.000Z, + "a1": 2020-01-01T00:00:00.000Z, + }, +] +`; + exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure SQL API: powerbi min max ungrouped flag: powerbi_min_max_ungrouped_flag 1`] = ` Array [ Object { @@ -6021,6 +6038,196 @@ Array [ ] `; +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure SQL API: reuse params: reuse_params 1`] = ` +Array [ + Object { + "c0": 2020-01-01T00:00:00.000Z, + "m0": 17372, + }, +] +`; + +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure SQL API: ungrouped pre-agg: ungrouped_pre_agg 1`] = ` +Array [ + Object { + "productName": "Canon PC1080F Personal Copier", + "totalSales": 2399.96, + }, + Object { + "productName": "Logitech di_Novo Edge Keyboard", + "totalSales": 2249.91, + }, + Object { + "productName": "Global Adaptabilites Bookcase, Cherry/Storm Gray Finish", + "totalSales": 2154.9, + }, + Object { + "productName": "Google Nexus 5", + "totalSales": 1979.89, + }, + Object { + "productName": "Global Adaptabilites Bookcase, Cherry/Storm Gray Finish", + "totalSales": 1292.94, + }, + Object { + "productName": "Canon PC1080F Personal Copier", + "totalSales": 1199.98, + }, + Object { + "productName": "Hewlett Packard 610 Color Digital Copier / Printer", + "totalSales": 899.982, + }, + Object { + "productName": "Okidata C610n Printer", + "totalSales": 649, + }, + Object { + "productName": "Lexmark 20R1285 X6650 Wireless All-in-One Printer", + "totalSales": 600, + }, + Object { + "productName": "Google Nexus 6", + "totalSales": 539.97, + }, + Object { + "productName": "Google Nexus 7", + "totalSales": 539.97, + }, + Object { + "productName": "Harbour Creations 67200 Series Stacking Chairs", + "totalSales": 498.26, + }, + Object { + "productName": "DMI Eclipse Executive Suite Bookcases", + "totalSales": 400.784, + }, + Object { + "productName": "HTC One", + "totalSales": 239.976, + }, + Object { + "productName": "Iceberg Nesting Folding Chair, 19w x 6d x 43h", + "totalSales": 232.88, + }, + Object { + "productName": "Balt Solid Wood Rectangular Table", + "totalSales": 210.98, + }, + Object { + "productName": "Tyvek Side-Opening Peel & Seel Expanding Envelopes", + "totalSales": 180.96, + }, + Object { + "productName": "Panasonic KP-380BK Classic Electric Pencil Sharpener", + "totalSales": 179.9, + }, + Object { + "productName": "Harbour Creations 67200 Series Stacking Chairs", + "totalSales": 128.124, + }, + Object { + "productName": "Harbour Creations 67200 Series Stacking Chairs", + "totalSales": 113.888, + }, + Object { + "productName": "Panasonic KP-380BK Classic Electric Pencil Sharpener", + "totalSales": 86.352, + }, + Object { + "productName": "Kingston Digital DataTraveler 16GB USB 2.2", + "totalSales": 71.6, + }, + Object { + "productName": "Linden 10 Round Wall Clock, Black", + "totalSales": 48.896, + }, + Object { + "productName": "Vinyl Coated Wire Paper Clips in Organizer Box, 800/Box", + "totalSales": 45.92, + }, + Object { + "productName": "Vinyl Coated Wire Paper Clips in Organizer Box, 800/Box", + "totalSales": 45.92, + }, + Object { + "productName": "Kingston Digital DataTraveler 16GB USB 2.0", + "totalSales": 44.75, + }, + Object { + "productName": "Kingston Digital DataTraveler 16GB USB 2.1", + "totalSales": 44.75, + }, + Object { + "productName": "Recycled Eldon Regeneration Jumbo File", + "totalSales": 39.296, + }, + Object { + "productName": "Linden 10 Round Wall Clock, Black", + "totalSales": 36.672, + }, + Object { + "productName": "Linden 10 Round Wall Clock, Black", + "totalSales": 30.56, + }, + Object { + "productName": "Linden 10 Round Wall Clock, Black", + "totalSales": 30.56, + }, + Object { + "productName": "Anderson Hickey Conga Table Tops & Accessories", + "totalSales": 24.368, + }, + Object { + "productName": "Plymouth Boxed Rubber Bands by Plymouth", + "totalSales": 23.55, + }, + Object { + "productName": "Vinyl Coated Wire Paper Clips in Organizer Box, 800/Box", + "totalSales": 18.368, + }, + Object { + "productName": "Wausau Papers Astrobrights Colored Envelopes", + "totalSales": 14.352, + }, + Object { + "productName": "Plymouth Boxed Rubber Bands by Plymouth", + "totalSales": 14.13, + }, + Object { + "productName": "Project Tote Personal File", + "totalSales": 14.03, + }, + Object { + "productName": "Plymouth Boxed Rubber Bands by Plymouth", + "totalSales": 11.304, + }, + Object { + "productName": "Magna Visual Magnetic Picture Hangers", + "totalSales": 9.64, + }, + Object { + "productName": "OIC #2 Pencils, Medium Soft", + "totalSales": 9.4, + }, + Object { + "productName": "Magna Visual Magnetic Picture Hangers", + "totalSales": 7.712, + }, + Object { + "productName": "OIC #2 Pencils, Medium Soft", + "totalSales": 3.76, + }, + Object { + "productName": "OIC #2 Pencils, Medium Soft", + "totalSales": 3.76, + }, + Object { + "productName": "Lexmark 20R1285 X6650 Wireless All-in-One Printer", + "totalSales": null, + }, +] +`; + exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure filtering Customers: contains + dimensions, first 1`] = ` Array [ Object { @@ -8296,6 +8503,14 @@ Array [ exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure filtering Products: startsWith filter + dimensions + order, third 1`] = `Array []`; +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure pre-aggregations Customers: running total without time dimension 1`] = ` +Array [ + Object { + "Customers.runningTotal": "41", + }, +] +`; + exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: null boolean 1`] = ` Array [ Object { @@ -8304,435 +8519,971 @@ Array [ ] `; -exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: rolling count_distinct_approx window by 2 day 1`] = ` +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: null sum 1`] = ` +Array [ + Object { + "BigECommerce.totalSales": null, + }, +] +`; + +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: partitioned pre-agg 1`] = ` Array [ Object { "BigECommerce.orderDate": "2020-01-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-01-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Day": "0", + "BigECommerce.productName": "Balt Solid Wood Rectangular Table", + "BigECommerce.totalQuantity": "2", + }, + Object { + "BigECommerce.orderDate": "2020-01-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-01-01T00:00:00.000", + "BigECommerce.productName": "Linden 10 Round Wall Clock, Black", + "BigECommerce.totalQuantity": "4", }, Object { "BigECommerce.orderDate": "2020-02-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-02-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Day": "0", + "BigECommerce.productName": "Vinyl Coated Wire Paper Clips in Organizer Box, 800/Box", + "BigECommerce.totalQuantity": "2", }, Object { "BigECommerce.orderDate": "2020-03-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-03-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Day": "0", + "BigECommerce.productName": "Canon PC1080F Personal Copier", + "BigECommerce.totalQuantity": "5", + }, + Object { + "BigECommerce.orderDate": "2020-03-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-03-01T00:00:00.000", + "BigECommerce.productName": "Kingston Digital DataTraveler 16GB USB 2.2", + "BigECommerce.totalQuantity": "8", }, Object { "BigECommerce.orderDate": "2020-04-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-04-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Day": "0", + "BigECommerce.productName": "Linden 10 Round Wall Clock, Black", + "BigECommerce.totalQuantity": "3", }, Object { "BigECommerce.orderDate": "2020-05-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-05-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Day": "0", + "BigECommerce.productName": "Google Nexus 6", + "BigECommerce.totalQuantity": "3", }, Object { - "BigECommerce.orderDate": "2020-06-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Day": "0", + "BigECommerce.orderDate": "2020-05-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-05-01T00:00:00.000", + "BigECommerce.productName": "Google Nexus 7", + "BigECommerce.totalQuantity": "3", }, Object { - "BigECommerce.orderDate": "2020-07-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-07-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Day": "0", + "BigECommerce.orderDate": "2020-05-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-05-01T00:00:00.000", + "BigECommerce.productName": "OIC #2 Pencils, Medium Soft", + "BigECommerce.totalQuantity": "2", }, Object { - "BigECommerce.orderDate": "2020-08-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-08-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Day": "0", + "BigECommerce.orderDate": "2020-05-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-05-01T00:00:00.000", + "BigECommerce.productName": "Plymouth Boxed Rubber Bands by Plymouth", + "BigECommerce.totalQuantity": "5", }, Object { - "BigECommerce.orderDate": "2020-09-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-09-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Day": "0", + "BigECommerce.orderDate": "2020-05-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-05-01T00:00:00.000", + "BigECommerce.productName": "Tyvek Side-Opening Peel & Seel Expanding Envelopes", + "BigECommerce.totalQuantity": "2", }, Object { - "BigECommerce.orderDate": "2020-10-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-10-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Day": "1", + "BigECommerce.orderDate": "2020-06-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "BigECommerce.productName": "DMI Eclipse Executive Suite Bookcases", + "BigECommerce.totalQuantity": "1", }, Object { - "BigECommerce.orderDate": "2020-11-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Day": "0", + "BigECommerce.orderDate": "2020-06-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "BigECommerce.productName": "HTC One", + "BigECommerce.totalQuantity": "3", }, Object { - "BigECommerce.orderDate": "2020-12-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Day": "0", + "BigECommerce.orderDate": "2020-06-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "BigECommerce.productName": "Kingston Digital DataTraveler 16GB USB 2.1", + "BigECommerce.totalQuantity": "5", }, -] -`; - -exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: rolling count_distinct_approx window by 2 month 1`] = ` -Array [ Object { - "BigECommerce.orderDate": "2020-01-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-01-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Month": "2", + "BigECommerce.orderDate": "2020-06-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "BigECommerce.productName": "OIC #2 Pencils, Medium Soft", + "BigECommerce.totalQuantity": "2", }, Object { - "BigECommerce.orderDate": "2020-02-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-02-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Month": "3", + "BigECommerce.orderDate": "2020-06-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "BigECommerce.productName": "Plymouth Boxed Rubber Bands by Plymouth", + "BigECommerce.totalQuantity": "6", }, Object { - "BigECommerce.orderDate": "2020-03-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-03-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Month": "3", + "BigECommerce.orderDate": "2020-06-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "BigECommerce.productName": "Project Tote Personal File", + "BigECommerce.totalQuantity": "1", }, Object { - "BigECommerce.orderDate": "2020-04-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-04-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Month": "3", + "BigECommerce.orderDate": "2020-09-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-09-01T00:00:00.000", + "BigECommerce.productName": "Global Adaptabilites Bookcase, Cherry/Storm Gray Finish", + "BigECommerce.totalQuantity": "3", }, Object { - "BigECommerce.orderDate": "2020-05-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-05-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Month": "6", + "BigECommerce.orderDate": "2020-09-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-09-01T00:00:00.000", + "BigECommerce.productName": "Harbour Creations 67200 Series Stacking Chairs", + "BigECommerce.totalQuantity": "7", }, Object { - "BigECommerce.orderDate": "2020-06-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Month": "12", + "BigECommerce.orderDate": "2020-09-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-09-01T00:00:00.000", + "BigECommerce.productName": "Lexmark 20R1285 X6650 Wireless All-in-One Printer", + "BigECommerce.totalQuantity": "4", }, Object { - "BigECommerce.orderDate": "2020-07-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-07-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Month": "7", + "BigECommerce.orderDate": "2020-09-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-09-01T00:00:00.000", + "BigECommerce.productName": "OIC #2 Pencils, Medium Soft", + "BigECommerce.totalQuantity": "5", }, Object { - "BigECommerce.orderDate": "2020-08-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-08-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Month": "0", + "BigECommerce.orderDate": "2020-09-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-09-01T00:00:00.000", + "BigECommerce.productName": "Vinyl Coated Wire Paper Clips in Organizer Box, 800/Box", + "BigECommerce.totalQuantity": "5", }, Object { "BigECommerce.orderDate": "2020-09-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-09-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Month": "6", + "BigECommerce.productName": "Wausau Papers Astrobrights Colored Envelopes", + "BigECommerce.totalQuantity": "3", }, Object { "BigECommerce.orderDate": "2020-10-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-10-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Month": "9", + "BigECommerce.productName": "Anderson Hickey Conga Table Tops & Accessories", + "BigECommerce.totalQuantity": "2", }, Object { - "BigECommerce.orderDate": "2020-11-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Month": "11", + "BigECommerce.orderDate": "2020-10-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-10-01T00:00:00.000", + "BigECommerce.productName": "Global Adaptabilites Bookcase, Cherry/Storm Gray Finish", + "BigECommerce.totalQuantity": "5", }, Object { - "BigECommerce.orderDate": "2020-12-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Month": "15", + "BigECommerce.orderDate": "2020-10-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-10-01T00:00:00.000", + "BigECommerce.productName": "Linden 10 Round Wall Clock, Black", + "BigECommerce.totalQuantity": "2", }, -] -`; - -exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: rolling count_distinct_approx window by 2 week 1`] = ` -Array [ Object { - "BigECommerce.orderDate": "2020-01-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-01-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Week": "1", + "BigECommerce.orderDate": "2020-10-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-10-01T00:00:00.000", + "BigECommerce.productName": "Magna Visual Magnetic Picture Hangers", + "BigECommerce.totalQuantity": "2", }, Object { - "BigECommerce.orderDate": "2020-02-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-02-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Week": "1", + "BigECommerce.orderDate": "2020-11-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "BigECommerce.productName": "Google Nexus 5", + "BigECommerce.totalQuantity": "11", }, Object { - "BigECommerce.orderDate": "2020-03-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-03-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Week": "1", + "BigECommerce.orderDate": "2020-11-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "BigECommerce.productName": "Harbour Creations 67200 Series Stacking Chairs", + "BigECommerce.totalQuantity": "4", }, Object { - "BigECommerce.orderDate": "2020-04-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-04-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Week": "0", + "BigECommerce.orderDate": "2020-11-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "BigECommerce.productName": "Hewlett Packard 610 Color Digital Copier / Printer", + "BigECommerce.totalQuantity": "3", }, Object { - "BigECommerce.orderDate": "2020-05-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-05-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Week": "2", + "BigECommerce.orderDate": "2020-11-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "BigECommerce.productName": "Linden 10 Round Wall Clock, Black", + "BigECommerce.totalQuantity": "5", }, Object { - "BigECommerce.orderDate": "2020-06-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Week": "3", + "BigECommerce.orderDate": "2020-11-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "BigECommerce.productName": "Logitech di_Novo Edge Keyboard", + "BigECommerce.totalQuantity": "9", }, Object { - "BigECommerce.orderDate": "2020-07-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-07-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Week": "0", + "BigECommerce.orderDate": "2020-11-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "BigECommerce.productName": "Panasonic KP-380BK Classic Electric Pencil Sharpener", + "BigECommerce.totalQuantity": "3", }, Object { - "BigECommerce.orderDate": "2020-08-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-08-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Week": "0", + "BigECommerce.orderDate": "2020-11-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "BigECommerce.productName": "Recycled Eldon Regeneration Jumbo File", + "BigECommerce.totalQuantity": "4", }, Object { - "BigECommerce.orderDate": "2020-09-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-09-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Week": "3", + "BigECommerce.orderDate": "2020-11-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "BigECommerce.productName": "Vinyl Coated Wire Paper Clips in Organizer Box, 800/Box", + "BigECommerce.totalQuantity": "4", }, Object { - "BigECommerce.orderDate": "2020-10-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-10-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Week": "2", + "BigECommerce.orderDate": "2020-12-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "BigECommerce.productName": "Canon PC1080F Personal Copier", + "BigECommerce.totalQuantity": "2", }, Object { - "BigECommerce.orderDate": "2020-11-01T00:00:00.000", - "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Week": "2", + "BigECommerce.orderDate": "2020-12-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "BigECommerce.productName": "Iceberg Nesting Folding Chair, 19w x 6d x 43h", + "BigECommerce.totalQuantity": "4", }, Object { "BigECommerce.orderDate": "2020-12-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", - "BigECommerce.rollingCountApproxBy2Week": "2", + "BigECommerce.productName": "Kingston Digital DataTraveler 16GB USB 2.0", + "BigECommerce.totalQuantity": "5", + }, + Object { + "BigECommerce.orderDate": "2020-12-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "BigECommerce.productName": "Lexmark 20R1285 X6650 Wireless All-in-One Printer", + "BigECommerce.totalQuantity": "2", + }, + Object { + "BigECommerce.orderDate": "2020-12-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "BigECommerce.productName": "Magna Visual Magnetic Picture Hangers", + "BigECommerce.totalQuantity": "2", + }, + Object { + "BigECommerce.orderDate": "2020-12-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "BigECommerce.productName": "Okidata C610n Printer", + "BigECommerce.totalQuantity": "2", + }, + Object { + "BigECommerce.orderDate": "2020-12-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "BigECommerce.productName": "Panasonic KP-380BK Classic Electric Pencil Sharpener", + "BigECommerce.totalQuantity": "5", }, ] `; -exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: rolling window by 2 day 1`] = ` +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: partitioned pre-agg with multi time dimension 1`] = ` +Array [ + Object { + "BigECommerce.completedDate": "2020-01-02T00:00:00.000", + "BigECommerce.completedDate.day": "2020-01-02T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-01-01T00:00:00.000", + "BigECommerce.orderDate.day": "2020-01-01T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-01-24T00:00:00.000", + "BigECommerce.completedDate.day": "2020-01-24T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-01-23T00:00:00.000", + "BigECommerce.orderDate.day": "2020-01-23T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-02-17T00:00:00.000", + "BigECommerce.completedDate.day": "2020-02-17T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-02-16T00:00:00.000", + "BigECommerce.orderDate.day": "2020-02-16T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-03-18T00:00:00.000", + "BigECommerce.completedDate.day": "2020-03-18T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-03-17T00:00:00.000", + "BigECommerce.orderDate.day": "2020-03-17T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-03-27T00:00:00.000", + "BigECommerce.completedDate.day": "2020-03-27T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-03-26T00:00:00.000", + "BigECommerce.orderDate.day": "2020-03-26T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-04-11T00:00:00.000", + "BigECommerce.completedDate.day": "2020-04-11T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-04-10T00:00:00.000", + "BigECommerce.orderDate.day": "2020-04-10T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-05-14T00:00:00.000", + "BigECommerce.completedDate.day": "2020-05-14T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-05-13T00:00:00.000", + "BigECommerce.orderDate.day": "2020-05-13T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-05-15T00:00:00.000", + "BigECommerce.completedDate.day": "2020-05-15T00:00:00.000", + "BigECommerce.count": "2", + "BigECommerce.orderDate": "2020-05-14T00:00:00.000", + "BigECommerce.orderDate.day": "2020-05-14T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-05-28T00:00:00.000", + "BigECommerce.completedDate.day": "2020-05-28T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-05-27T00:00:00.000", + "BigECommerce.orderDate.day": "2020-05-27T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-05-30T00:00:00.000", + "BigECommerce.completedDate.day": "2020-05-30T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-05-29T00:00:00.000", + "BigECommerce.orderDate.day": "2020-05-29T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-06-04T00:00:00.000", + "BigECommerce.completedDate.day": "2020-06-04T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-06-03T00:00:00.000", + "BigECommerce.orderDate.day": "2020-06-03T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-06-11T00:00:00.000", + "BigECommerce.completedDate.day": "2020-06-11T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-06-10T00:00:00.000", + "BigECommerce.orderDate.day": "2020-06-10T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-06-12T00:00:00.000", + "BigECommerce.completedDate.day": "2020-06-12T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-06-11T00:00:00.000", + "BigECommerce.orderDate.day": "2020-06-11T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-06-16T00:00:00.000", + "BigECommerce.completedDate.day": "2020-06-16T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-06-15T00:00:00.000", + "BigECommerce.orderDate.day": "2020-06-15T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-06-18T00:00:00.000", + "BigECommerce.completedDate.day": "2020-06-18T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-06-17T00:00:00.000", + "BigECommerce.orderDate.day": "2020-06-17T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-06-26T00:00:00.000", + "BigECommerce.completedDate.day": "2020-06-26T00:00:00.000", + "BigECommerce.count": "2", + "BigECommerce.orderDate": "2020-06-25T00:00:00.000", + "BigECommerce.orderDate.day": "2020-06-25T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-09-02T00:00:00.000", + "BigECommerce.completedDate.day": "2020-09-02T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-09-01T00:00:00.000", + "BigECommerce.orderDate.day": "2020-09-01T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-09-03T00:00:00.000", + "BigECommerce.completedDate.day": "2020-09-03T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-09-02T00:00:00.000", + "BigECommerce.orderDate.day": "2020-09-02T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-09-09T00:00:00.000", + "BigECommerce.completedDate.day": "2020-09-09T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-09-08T00:00:00.000", + "BigECommerce.orderDate.day": "2020-09-08T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-09-18T00:00:00.000", + "BigECommerce.completedDate.day": "2020-09-18T00:00:00.000", + "BigECommerce.count": "2", + "BigECommerce.orderDate": "2020-09-17T00:00:00.000", + "BigECommerce.orderDate.day": "2020-09-17T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-09-24T00:00:00.000", + "BigECommerce.completedDate.day": "2020-09-24T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-09-23T00:00:00.000", + "BigECommerce.orderDate.day": "2020-09-23T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-10-13T00:00:00.000", + "BigECommerce.completedDate.day": "2020-10-13T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-10-12T00:00:00.000", + "BigECommerce.orderDate.day": "2020-10-12T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-10-20T00:00:00.000", + "BigECommerce.completedDate.day": "2020-10-20T00:00:00.000", + "BigECommerce.count": "2", + "BigECommerce.orderDate": "2020-10-19T00:00:00.000", + "BigECommerce.orderDate.day": "2020-10-19T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-11-01T00:00:00.000", + "BigECommerce.completedDate.day": "2020-11-01T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-10-30T00:00:00.000", + "BigECommerce.orderDate.day": "2020-10-30T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-11-03T00:00:00.000", + "BigECommerce.completedDate.day": "2020-11-03T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-11-02T00:00:00.000", + "BigECommerce.orderDate.day": "2020-11-02T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-11-06T00:00:00.000", + "BigECommerce.completedDate.day": "2020-11-06T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-11-05T00:00:00.000", + "BigECommerce.orderDate.day": "2020-11-05T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-11-07T00:00:00.000", + "BigECommerce.completedDate.day": "2020-11-07T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-11-06T00:00:00.000", + "BigECommerce.orderDate.day": "2020-11-06T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-11-12T00:00:00.000", + "BigECommerce.completedDate.day": "2020-11-12T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-11-11T00:00:00.000", + "BigECommerce.orderDate.day": "2020-11-11T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-11-13T00:00:00.000", + "BigECommerce.completedDate.day": "2020-11-13T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-11-12T00:00:00.000", + "BigECommerce.orderDate.day": "2020-11-12T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-11-17T00:00:00.000", + "BigECommerce.completedDate.day": "2020-11-17T00:00:00.000", + "BigECommerce.count": "2", + "BigECommerce.orderDate": "2020-11-16T00:00:00.000", + "BigECommerce.orderDate.day": "2020-11-16T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-11-22T00:00:00.000", + "BigECommerce.completedDate.day": "2020-11-22T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-11-21T00:00:00.000", + "BigECommerce.orderDate.day": "2020-11-21T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-11-29T00:00:00.000", + "BigECommerce.completedDate.day": "2020-11-29T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-11-28T00:00:00.000", + "BigECommerce.orderDate.day": "2020-11-28T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-12-02T00:00:00.000", + "BigECommerce.completedDate.day": "2020-12-02T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-12-01T00:00:00.000", + "BigECommerce.orderDate.day": "2020-12-01T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-12-03T00:00:00.000", + "BigECommerce.completedDate.day": "2020-12-03T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-12-02T00:00:00.000", + "BigECommerce.orderDate.day": "2020-12-02T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-12-05T00:00:00.000", + "BigECommerce.completedDate.day": "2020-12-05T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-12-04T00:00:00.000", + "BigECommerce.orderDate.day": "2020-12-04T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-12-15T00:00:00.000", + "BigECommerce.completedDate.day": "2020-12-15T00:00:00.000", + "BigECommerce.count": "2", + "BigECommerce.orderDate": "2020-12-14T00:00:00.000", + "BigECommerce.orderDate.day": "2020-12-14T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-12-25T00:00:00.000", + "BigECommerce.completedDate.day": "2020-12-25T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-12-24T00:00:00.000", + "BigECommerce.orderDate.day": "2020-12-24T00:00:00.000", + }, + Object { + "BigECommerce.completedDate": "2020-12-26T00:00:00.000", + "BigECommerce.completedDate.day": "2020-12-26T00:00:00.000", + "BigECommerce.count": "1", + "BigECommerce.orderDate": "2020-12-25T00:00:00.000", + "BigECommerce.orderDate.day": "2020-12-25T00:00:00.000", + }, +] +`; + +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: rolling count_distinct_approx window by 2 day 1`] = ` Array [ Object { "BigECommerce.orderDate": "2020-01-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-01-01T00:00:00.000", - "BigECommerce.rollingCountBy2Day": null, + "BigECommerce.rollingCountApproxBy2Day": "0", }, Object { "BigECommerce.orderDate": "2020-02-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-02-01T00:00:00.000", - "BigECommerce.rollingCountBy2Day": null, + "BigECommerce.rollingCountApproxBy2Day": "0", }, Object { "BigECommerce.orderDate": "2020-03-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-03-01T00:00:00.000", - "BigECommerce.rollingCountBy2Day": null, + "BigECommerce.rollingCountApproxBy2Day": "0", }, Object { "BigECommerce.orderDate": "2020-04-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-04-01T00:00:00.000", - "BigECommerce.rollingCountBy2Day": null, + "BigECommerce.rollingCountApproxBy2Day": "0", }, Object { "BigECommerce.orderDate": "2020-05-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-05-01T00:00:00.000", - "BigECommerce.rollingCountBy2Day": null, + "BigECommerce.rollingCountApproxBy2Day": "0", }, Object { "BigECommerce.orderDate": "2020-06-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", - "BigECommerce.rollingCountBy2Day": null, + "BigECommerce.rollingCountApproxBy2Day": "0", }, Object { "BigECommerce.orderDate": "2020-07-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-07-01T00:00:00.000", - "BigECommerce.rollingCountBy2Day": null, + "BigECommerce.rollingCountApproxBy2Day": "0", }, Object { "BigECommerce.orderDate": "2020-08-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-08-01T00:00:00.000", - "BigECommerce.rollingCountBy2Day": null, + "BigECommerce.rollingCountApproxBy2Day": "0", }, Object { "BigECommerce.orderDate": "2020-09-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-09-01T00:00:00.000", - "BigECommerce.rollingCountBy2Day": null, + "BigECommerce.rollingCountApproxBy2Day": "0", }, Object { "BigECommerce.orderDate": "2020-10-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-10-01T00:00:00.000", - "BigECommerce.rollingCountBy2Day": "1", + "BigECommerce.rollingCountApproxBy2Day": "1", }, Object { "BigECommerce.orderDate": "2020-11-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", - "BigECommerce.rollingCountBy2Day": null, + "BigECommerce.rollingCountApproxBy2Day": "0", }, Object { "BigECommerce.orderDate": "2020-12-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", - "BigECommerce.rollingCountBy2Day": null, + "BigECommerce.rollingCountApproxBy2Day": "0", }, ] `; -exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: rolling window by 2 month 1`] = ` +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: rolling count_distinct_approx window by 2 month 1`] = ` Array [ Object { "BigECommerce.orderDate": "2020-01-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-01-01T00:00:00.000", - "BigECommerce.rollingCountBy2Month": "2", + "BigECommerce.rollingCountApproxBy2Month": "2", }, Object { "BigECommerce.orderDate": "2020-02-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-02-01T00:00:00.000", - "BigECommerce.rollingCountBy2Month": "3", + "BigECommerce.rollingCountApproxBy2Month": "3", }, Object { "BigECommerce.orderDate": "2020-03-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-03-01T00:00:00.000", - "BigECommerce.rollingCountBy2Month": "3", + "BigECommerce.rollingCountApproxBy2Month": "3", }, Object { "BigECommerce.orderDate": "2020-04-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-04-01T00:00:00.000", - "BigECommerce.rollingCountBy2Month": "3", + "BigECommerce.rollingCountApproxBy2Month": "3", }, Object { "BigECommerce.orderDate": "2020-05-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-05-01T00:00:00.000", - "BigECommerce.rollingCountBy2Month": "6", + "BigECommerce.rollingCountApproxBy2Month": "6", }, Object { "BigECommerce.orderDate": "2020-06-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", - "BigECommerce.rollingCountBy2Month": "12", + "BigECommerce.rollingCountApproxBy2Month": "12", }, Object { "BigECommerce.orderDate": "2020-07-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-07-01T00:00:00.000", - "BigECommerce.rollingCountBy2Month": "7", + "BigECommerce.rollingCountApproxBy2Month": "7", }, Object { "BigECommerce.orderDate": "2020-08-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-08-01T00:00:00.000", - "BigECommerce.rollingCountBy2Month": null, + "BigECommerce.rollingCountApproxBy2Month": "0", }, Object { "BigECommerce.orderDate": "2020-09-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-09-01T00:00:00.000", - "BigECommerce.rollingCountBy2Month": "6", + "BigECommerce.rollingCountApproxBy2Month": "6", }, Object { "BigECommerce.orderDate": "2020-10-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-10-01T00:00:00.000", - "BigECommerce.rollingCountBy2Month": "10", + "BigECommerce.rollingCountApproxBy2Month": "9", }, Object { "BigECommerce.orderDate": "2020-11-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", - "BigECommerce.rollingCountBy2Month": "13", + "BigECommerce.rollingCountApproxBy2Month": "11", }, Object { "BigECommerce.orderDate": "2020-12-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", - "BigECommerce.rollingCountBy2Month": "16", + "BigECommerce.rollingCountApproxBy2Month": "15", }, ] `; -exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: rolling window by 2 week 1`] = ` +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: rolling count_distinct_approx window by 2 week 1`] = ` Array [ Object { "BigECommerce.orderDate": "2020-01-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-01-01T00:00:00.000", - "BigECommerce.rollingCountBy2Week": "1", + "BigECommerce.rollingCountApproxBy2Week": "1", }, Object { "BigECommerce.orderDate": "2020-02-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-02-01T00:00:00.000", - "BigECommerce.rollingCountBy2Week": "1", + "BigECommerce.rollingCountApproxBy2Week": "1", }, Object { "BigECommerce.orderDate": "2020-03-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-03-01T00:00:00.000", - "BigECommerce.rollingCountBy2Week": "1", + "BigECommerce.rollingCountApproxBy2Week": "1", }, Object { "BigECommerce.orderDate": "2020-04-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-04-01T00:00:00.000", - "BigECommerce.rollingCountBy2Week": null, + "BigECommerce.rollingCountApproxBy2Week": "0", }, Object { "BigECommerce.orderDate": "2020-05-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-05-01T00:00:00.000", - "BigECommerce.rollingCountBy2Week": "2", + "BigECommerce.rollingCountApproxBy2Week": "2", }, Object { "BigECommerce.orderDate": "2020-06-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", - "BigECommerce.rollingCountBy2Week": "3", + "BigECommerce.rollingCountApproxBy2Week": "3", }, Object { "BigECommerce.orderDate": "2020-07-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-07-01T00:00:00.000", - "BigECommerce.rollingCountBy2Week": null, + "BigECommerce.rollingCountApproxBy2Week": "0", }, Object { "BigECommerce.orderDate": "2020-08-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-08-01T00:00:00.000", - "BigECommerce.rollingCountBy2Week": null, + "BigECommerce.rollingCountApproxBy2Week": "0", }, Object { "BigECommerce.orderDate": "2020-09-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-09-01T00:00:00.000", - "BigECommerce.rollingCountBy2Week": "3", + "BigECommerce.rollingCountApproxBy2Week": "3", }, Object { "BigECommerce.orderDate": "2020-10-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-10-01T00:00:00.000", - "BigECommerce.rollingCountBy2Week": "3", + "BigECommerce.rollingCountApproxBy2Week": "2", }, Object { "BigECommerce.orderDate": "2020-11-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", - "BigECommerce.rollingCountBy2Week": "2", + "BigECommerce.rollingCountApproxBy2Week": "2", }, Object { "BigECommerce.orderDate": "2020-12-01T00:00:00.000", "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", - "BigECommerce.rollingCountBy2Week": "2", + "BigECommerce.rollingCountApproxBy2Week": "2", }, ] `; -exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: totalProfitYearAgo 1`] = `Array []`; - -exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying Customers: dimensions + limit 1`] = ` +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: rolling window by 2 day 1`] = ` Array [ Object { - "Customers.customerId": "AH-10465", - "Customers.customerName": "Customer 1", + "BigECommerce.orderDate": "2020-01-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-01-01T00:00:00.000", + "BigECommerce.rollingCountBy2Day": null, }, Object { - "Customers.customerId": "AJ-10780", - "Customers.customerName": "Customer 2", + "BigECommerce.orderDate": "2020-02-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-02-01T00:00:00.000", + "BigECommerce.rollingCountBy2Day": null, }, Object { - "Customers.customerId": "AS-10225", - "Customers.customerName": "Customer 3", + "BigECommerce.orderDate": "2020-03-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-03-01T00:00:00.000", + "BigECommerce.rollingCountBy2Day": null, }, Object { - "Customers.customerId": "AW-10840", - "Customers.customerName": "Customer 4", + "BigECommerce.orderDate": "2020-04-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-04-01T00:00:00.000", + "BigECommerce.rollingCountBy2Day": null, }, Object { - "Customers.customerId": "BB-11545", - "Customers.customerName": "Customer 5", + "BigECommerce.orderDate": "2020-05-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-05-01T00:00:00.000", + "BigECommerce.rollingCountBy2Day": null, }, Object { - "Customers.customerId": "BF-11020", - "Customers.customerName": "Customer 6", + "BigECommerce.orderDate": "2020-06-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "BigECommerce.rollingCountBy2Day": null, }, Object { - "Customers.customerId": "BF-11170", - "Customers.customerName": "Customer 7", + "BigECommerce.orderDate": "2020-07-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-07-01T00:00:00.000", + "BigECommerce.rollingCountBy2Day": null, }, Object { - "Customers.customerId": "BM-11650", - "Customers.customerName": "Customer 8", + "BigECommerce.orderDate": "2020-08-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-08-01T00:00:00.000", + "BigECommerce.rollingCountBy2Day": null, }, Object { - "Customers.customerId": "BS-11380", - "Customers.customerName": "Customer 9", + "BigECommerce.orderDate": "2020-09-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-09-01T00:00:00.000", + "BigECommerce.rollingCountBy2Day": null, + }, + Object { + "BigECommerce.orderDate": "2020-10-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-10-01T00:00:00.000", + "BigECommerce.rollingCountBy2Day": "1", + }, + Object { + "BigECommerce.orderDate": "2020-11-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "BigECommerce.rollingCountBy2Day": null, + }, + Object { + "BigECommerce.orderDate": "2020-12-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "BigECommerce.rollingCountBy2Day": null, + }, +] +`; + +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: rolling window by 2 month 1`] = ` +Array [ + Object { + "BigECommerce.orderDate": "2020-01-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-01-01T00:00:00.000", + "BigECommerce.rollingCountBy2Month": "2", + }, + Object { + "BigECommerce.orderDate": "2020-02-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-02-01T00:00:00.000", + "BigECommerce.rollingCountBy2Month": "3", + }, + Object { + "BigECommerce.orderDate": "2020-03-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-03-01T00:00:00.000", + "BigECommerce.rollingCountBy2Month": "3", + }, + Object { + "BigECommerce.orderDate": "2020-04-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-04-01T00:00:00.000", + "BigECommerce.rollingCountBy2Month": "3", + }, + Object { + "BigECommerce.orderDate": "2020-05-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-05-01T00:00:00.000", + "BigECommerce.rollingCountBy2Month": "6", + }, + Object { + "BigECommerce.orderDate": "2020-06-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "BigECommerce.rollingCountBy2Month": "12", + }, + Object { + "BigECommerce.orderDate": "2020-07-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-07-01T00:00:00.000", + "BigECommerce.rollingCountBy2Month": "7", + }, + Object { + "BigECommerce.orderDate": "2020-08-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-08-01T00:00:00.000", + "BigECommerce.rollingCountBy2Month": null, + }, + Object { + "BigECommerce.orderDate": "2020-09-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-09-01T00:00:00.000", + "BigECommerce.rollingCountBy2Month": "6", + }, + Object { + "BigECommerce.orderDate": "2020-10-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-10-01T00:00:00.000", + "BigECommerce.rollingCountBy2Month": "10", + }, + Object { + "BigECommerce.orderDate": "2020-11-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "BigECommerce.rollingCountBy2Month": "13", + }, + Object { + "BigECommerce.orderDate": "2020-12-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "BigECommerce.rollingCountBy2Month": "16", + }, +] +`; + +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: rolling window by 2 week 1`] = ` +Array [ + Object { + "BigECommerce.orderDate": "2020-01-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-01-01T00:00:00.000", + "BigECommerce.rollingCountBy2Week": "1", + }, + Object { + "BigECommerce.orderDate": "2020-02-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-02-01T00:00:00.000", + "BigECommerce.rollingCountBy2Week": "1", + }, + Object { + "BigECommerce.orderDate": "2020-03-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-03-01T00:00:00.000", + "BigECommerce.rollingCountBy2Week": "1", + }, + Object { + "BigECommerce.orderDate": "2020-04-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-04-01T00:00:00.000", + "BigECommerce.rollingCountBy2Week": null, + }, + Object { + "BigECommerce.orderDate": "2020-05-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-05-01T00:00:00.000", + "BigECommerce.rollingCountBy2Week": "2", + }, + Object { + "BigECommerce.orderDate": "2020-06-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "BigECommerce.rollingCountBy2Week": "3", + }, + Object { + "BigECommerce.orderDate": "2020-07-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-07-01T00:00:00.000", + "BigECommerce.rollingCountBy2Week": null, + }, + Object { + "BigECommerce.orderDate": "2020-08-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-08-01T00:00:00.000", + "BigECommerce.rollingCountBy2Week": null, + }, + Object { + "BigECommerce.orderDate": "2020-09-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-09-01T00:00:00.000", + "BigECommerce.rollingCountBy2Week": "3", + }, + Object { + "BigECommerce.orderDate": "2020-10-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-10-01T00:00:00.000", + "BigECommerce.rollingCountBy2Week": "3", + }, + Object { + "BigECommerce.orderDate": "2020-11-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "BigECommerce.rollingCountBy2Week": "2", + }, + Object { + "BigECommerce.orderDate": "2020-12-01T00:00:00.000", + "BigECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "BigECommerce.rollingCountBy2Week": "2", + }, +] +`; + +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying BigECommerce: totalProfitYearAgo 1`] = `Array []`; + +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying Customers: dimensions + limit 1`] = ` +Array [ + Object { + "Customers.customerId": "AH-10465", + "Customers.customerName": "Customer 1", + }, + Object { + "Customers.customerId": "AJ-10780", + "Customers.customerName": "Customer 2", + }, + Object { + "Customers.customerId": "AS-10225", + "Customers.customerName": "Customer 3", + }, + Object { + "Customers.customerId": "AW-10840", + "Customers.customerName": "Customer 4", + }, + Object { + "Customers.customerId": "BB-11545", + "Customers.customerName": "Customer 5", + }, + Object { + "Customers.customerId": "BF-11020", + "Customers.customerName": "Customer 6", + }, + Object { + "Customers.customerId": "BF-11170", + "Customers.customerName": "Customer 7", + }, + Object { + "Customers.customerId": "BM-11650", + "Customers.customerName": "Customer 8", + }, + Object { + "Customers.customerId": "BS-11380", + "Customers.customerName": "Customer 9", }, Object { "Customers.customerId": "BS-11755", @@ -11799,139 +12550,569 @@ Array [ "ECommerce.subCategory": "Bookcases", }, Object { - "ECommerce.category": "Furniture", - "ECommerce.city": "Dallas", - "ECommerce.customerId": "LC-17050", - "ECommerce.customerName": "Customer 29", - "ECommerce.discount": 0.6, - "ECommerce.orderDate": "2020-11-06T00:00:00.000", - "ECommerce.orderId": "US-2017-119319", - "ECommerce.productName": "Linden 10 Round Wall Clock, Black", - "ECommerce.profit": -19.864, - "ECommerce.quantity": 5, - "ECommerce.rowId": 8621, - "ECommerce.sales": 30.56, - "ECommerce.subCategory": "Furnishings", + "ECommerce.category": "Furniture", + "ECommerce.city": "Dallas", + "ECommerce.customerId": "LC-17050", + "ECommerce.customerName": "Customer 29", + "ECommerce.discount": 0.6, + "ECommerce.orderDate": "2020-11-06T00:00:00.000", + "ECommerce.orderId": "US-2017-119319", + "ECommerce.productName": "Linden 10 Round Wall Clock, Black", + "ECommerce.profit": -19.864, + "ECommerce.quantity": 5, + "ECommerce.rowId": 8621, + "ECommerce.sales": 30.56, + "ECommerce.subCategory": "Furnishings", + }, + Object { + "ECommerce.category": "Office Supplies", + "ECommerce.city": "Decatur", + "ECommerce.customerId": "JS-16030", + "ECommerce.customerName": "Customer 25", + "ECommerce.discount": 0.2, + "ECommerce.orderDate": "2020-02-16T00:00:00.000", + "ECommerce.orderId": "CA-2017-163265", + "ECommerce.productName": "Vinyl Coated Wire Paper Clips in Organizer Box, 800/Box", + "ECommerce.profit": 6.1992, + "ECommerce.quantity": 2, + "ECommerce.rowId": 8673, + "ECommerce.sales": 18.368, + "ECommerce.subCategory": "Fasteners", + }, + Object { + "ECommerce.category": "Technology", + "ECommerce.city": "Columbus", + "ECommerce.customerId": "TS-21205", + "ECommerce.customerName": "Customer 40", + "ECommerce.discount": 0.2, + "ECommerce.orderDate": "2020-06-15T00:00:00.000", + "ECommerce.orderId": "CA-2017-119284", + "ECommerce.productName": "HTC One", + "ECommerce.profit": 26.9973, + "ECommerce.quantity": 3, + "ECommerce.rowId": 8697, + "ECommerce.sales": 239.976, + "ECommerce.subCategory": "Phones", + }, + Object { + "ECommerce.category": "Technology", + "ECommerce.city": "Morristown", + "ECommerce.customerId": "GZ-14470", + "ECommerce.customerName": "Customer 20", + "ECommerce.discount": 0, + "ECommerce.orderDate": "2020-09-17T00:00:00.000", + "ECommerce.orderId": "CA-2017-126928", + "ECommerce.productName": "Lexmark 20R1285 X6650 Wireless All-in-One Printer", + "ECommerce.profit": 225.6, + "ECommerce.quantity": 4, + "ECommerce.rowId": 8878, + "ECommerce.sales": 480, + "ECommerce.subCategory": "Machines", + }, + Object { + "ECommerce.category": "Technology", + "ECommerce.city": "Columbus", + "ECommerce.customerId": "JH-15430", + "ECommerce.customerName": "Customer 23", + "ECommerce.discount": 0.5, + "ECommerce.orderDate": "2020-12-25T00:00:00.000", + "ECommerce.orderId": "CA-2017-105620", + "ECommerce.productName": "Lexmark 20R1285 X6650 Wireless All-in-One Printer", + "ECommerce.profit": -7.2, + "ECommerce.quantity": 2, + "ECommerce.rowId": 8958, + "ECommerce.sales": 120, + "ECommerce.subCategory": "Machines", + }, + Object { + "ECommerce.category": "Furniture", + "ECommerce.city": "New York City", + "ECommerce.customerId": "CD-12280", + "ECommerce.customerName": "Customer 13", + "ECommerce.discount": 0.1, + "ECommerce.orderDate": "2020-11-05T00:00:00.000", + "ECommerce.orderId": "CA-2017-102925", + "ECommerce.productName": "Harbour Creations 67200 Series Stacking Chairs", + "ECommerce.profit": 24.2012, + "ECommerce.quantity": 2, + "ECommerce.rowId": 9473, + "ECommerce.sales": 128.124, + "ECommerce.subCategory": "Chairs", + }, + Object { + "ECommerce.category": "Furniture", + "ECommerce.city": "New York City", + "ECommerce.customerId": "SB-20185", + "ECommerce.customerName": "Customer 37", + "ECommerce.discount": 0.2, + "ECommerce.orderDate": "2020-06-25T00:00:00.000", + "ECommerce.orderId": "CA-2017-116127", + "ECommerce.productName": "DMI Eclipse Executive Suite Bookcases", + "ECommerce.profit": -5.0098, + "ECommerce.quantity": 1, + "ECommerce.rowId": 9584, + "ECommerce.sales": 400.784, + "ECommerce.subCategory": "Bookcases", + }, + Object { + "ECommerce.category": "Technology", + "ECommerce.city": "Columbus", + "ECommerce.customerId": "BS-11380", + "ECommerce.customerName": "Customer 9", + "ECommerce.discount": 0.4, + "ECommerce.orderDate": "2020-11-16T00:00:00.000", + "ECommerce.orderId": "CA-2017-160633", + "ECommerce.productName": "Hewlett Packard 610 Color Digital Copier / Printer", + "ECommerce.profit": 74.9985, + "ECommerce.quantity": 3, + "ECommerce.rowId": 9618, + "ECommerce.sales": 899.982, + "ECommerce.subCategory": "Copiers", + }, + Object { + "ECommerce.category": "Office Supplies", + "ECommerce.city": "Bowling", + "ECommerce.customerId": "BS-11380", + "ECommerce.customerName": "Customer 9", + "ECommerce.discount": 0.2, + "ECommerce.orderDate": "2020-11-16T00:00:00.000", + "ECommerce.orderId": "CA-2017-160633", + "ECommerce.productName": "Panasonic KP-380BK Classic Electric Pencil Sharpener", + "ECommerce.profit": 5.397, + "ECommerce.quantity": 3, + "ECommerce.rowId": 9619, + "ECommerce.sales": 86.352, + "ECommerce.subCategory": "Art", + }, +] +`; + +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying ECommerce: partitioned pre-agg 1`] = ` +Array [ + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Balt Solid Wood Rectangular Table", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Linden 10 Round Wall Clock, Black", + "ECommerce.totalQuantity": "4", + }, + Object { + "ECommerce.orderDate": "2020-02-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-02-01T00:00:00.000", + "ECommerce.productName": "Vinyl Coated Wire Paper Clips in Organizer Box, 800/Box", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-03-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-03-01T00:00:00.000", + "ECommerce.productName": "Canon PC1080F Personal Copier", + "ECommerce.totalQuantity": "5", + }, + Object { + "ECommerce.orderDate": "2020-03-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-03-01T00:00:00.000", + "ECommerce.productName": "Kingston Digital DataTraveler 16GB USB 2.2", + "ECommerce.totalQuantity": "8", + }, + Object { + "ECommerce.orderDate": "2020-04-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-04-01T00:00:00.000", + "ECommerce.productName": "Linden 10 Round Wall Clock, Black", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-05-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-05-01T00:00:00.000", + "ECommerce.productName": "Google Nexus 6", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-05-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-05-01T00:00:00.000", + "ECommerce.productName": "Google Nexus 7", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-05-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-05-01T00:00:00.000", + "ECommerce.productName": "OIC #2 Pencils, Medium Soft", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-05-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-05-01T00:00:00.000", + "ECommerce.productName": "Plymouth Boxed Rubber Bands by Plymouth", + "ECommerce.totalQuantity": "5", + }, + Object { + "ECommerce.orderDate": "2020-05-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-05-01T00:00:00.000", + "ECommerce.productName": "Tyvek Side-Opening Peel & Seel Expanding Envelopes", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-06-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "ECommerce.productName": "DMI Eclipse Executive Suite Bookcases", + "ECommerce.totalQuantity": "1", + }, + Object { + "ECommerce.orderDate": "2020-06-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "ECommerce.productName": "HTC One", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-06-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "ECommerce.productName": "Kingston Digital DataTraveler 16GB USB 2.1", + "ECommerce.totalQuantity": "5", + }, + Object { + "ECommerce.orderDate": "2020-06-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "ECommerce.productName": "OIC #2 Pencils, Medium Soft", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-06-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "ECommerce.productName": "Plymouth Boxed Rubber Bands by Plymouth", + "ECommerce.totalQuantity": "6", + }, + Object { + "ECommerce.orderDate": "2020-06-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-06-01T00:00:00.000", + "ECommerce.productName": "Project Tote Personal File", + "ECommerce.totalQuantity": "1", + }, + Object { + "ECommerce.orderDate": "2020-09-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-09-01T00:00:00.000", + "ECommerce.productName": "Global Adaptabilites Bookcase, Cherry/Storm Gray Finish", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-09-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-09-01T00:00:00.000", + "ECommerce.productName": "Harbour Creations 67200 Series Stacking Chairs", + "ECommerce.totalQuantity": "7", + }, + Object { + "ECommerce.orderDate": "2020-09-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-09-01T00:00:00.000", + "ECommerce.productName": "Lexmark 20R1285 X6650 Wireless All-in-One Printer", + "ECommerce.totalQuantity": "4", + }, + Object { + "ECommerce.orderDate": "2020-09-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-09-01T00:00:00.000", + "ECommerce.productName": "OIC #2 Pencils, Medium Soft", + "ECommerce.totalQuantity": "5", + }, + Object { + "ECommerce.orderDate": "2020-09-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-09-01T00:00:00.000", + "ECommerce.productName": "Vinyl Coated Wire Paper Clips in Organizer Box, 800/Box", + "ECommerce.totalQuantity": "5", + }, + Object { + "ECommerce.orderDate": "2020-09-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-09-01T00:00:00.000", + "ECommerce.productName": "Wausau Papers Astrobrights Colored Envelopes", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-10-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-10-01T00:00:00.000", + "ECommerce.productName": "Anderson Hickey Conga Table Tops & Accessories", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-10-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-10-01T00:00:00.000", + "ECommerce.productName": "Global Adaptabilites Bookcase, Cherry/Storm Gray Finish", + "ECommerce.totalQuantity": "5", + }, + Object { + "ECommerce.orderDate": "2020-10-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-10-01T00:00:00.000", + "ECommerce.productName": "Linden 10 Round Wall Clock, Black", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-10-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-10-01T00:00:00.000", + "ECommerce.productName": "Magna Visual Magnetic Picture Hangers", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-11-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "ECommerce.productName": "Google Nexus 5", + "ECommerce.totalQuantity": "11", + }, + Object { + "ECommerce.orderDate": "2020-11-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "ECommerce.productName": "Harbour Creations 67200 Series Stacking Chairs", + "ECommerce.totalQuantity": "4", + }, + Object { + "ECommerce.orderDate": "2020-11-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "ECommerce.productName": "Hewlett Packard 610 Color Digital Copier / Printer", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-11-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "ECommerce.productName": "Linden 10 Round Wall Clock, Black", + "ECommerce.totalQuantity": "5", + }, + Object { + "ECommerce.orderDate": "2020-11-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "ECommerce.productName": "Logitech di_Novo Edge Keyboard", + "ECommerce.totalQuantity": "9", + }, + Object { + "ECommerce.orderDate": "2020-11-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "ECommerce.productName": "Panasonic KP-380BK Classic Electric Pencil Sharpener", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-11-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "ECommerce.productName": "Recycled Eldon Regeneration Jumbo File", + "ECommerce.totalQuantity": "4", + }, + Object { + "ECommerce.orderDate": "2020-11-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-11-01T00:00:00.000", + "ECommerce.productName": "Vinyl Coated Wire Paper Clips in Organizer Box, 800/Box", + "ECommerce.totalQuantity": "4", + }, + Object { + "ECommerce.orderDate": "2020-12-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "ECommerce.productName": "Canon PC1080F Personal Copier", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-12-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "ECommerce.productName": "Iceberg Nesting Folding Chair, 19w x 6d x 43h", + "ECommerce.totalQuantity": "4", + }, + Object { + "ECommerce.orderDate": "2020-12-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "ECommerce.productName": "Kingston Digital DataTraveler 16GB USB 2.0", + "ECommerce.totalQuantity": "5", + }, + Object { + "ECommerce.orderDate": "2020-12-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "ECommerce.productName": "Lexmark 20R1285 X6650 Wireless All-in-One Printer", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-12-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "ECommerce.productName": "Magna Visual Magnetic Picture Hangers", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-12-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "ECommerce.productName": "Okidata C610n Printer", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-12-01T00:00:00.000", + "ECommerce.orderDate.month": "2020-12-01T00:00:00.000", + "ECommerce.productName": "Panasonic KP-380BK Classic Electric Pencil Sharpener", + "ECommerce.totalQuantity": "5", + }, +] +`; + +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying ECommerce: partitioned pre-agg higher granularity 1`] = ` +Array [ + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Anderson Hickey Conga Table Tops & Accessories", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Balt Solid Wood Rectangular Table", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Canon PC1080F Personal Copier", + "ECommerce.totalQuantity": "7", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "DMI Eclipse Executive Suite Bookcases", + "ECommerce.totalQuantity": "1", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Global Adaptabilites Bookcase, Cherry/Storm Gray Finish", + "ECommerce.totalQuantity": "8", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Google Nexus 5", + "ECommerce.totalQuantity": "11", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Google Nexus 6", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Google Nexus 7", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "HTC One", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Harbour Creations 67200 Series Stacking Chairs", + "ECommerce.totalQuantity": "11", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Hewlett Packard 610 Color Digital Copier / Printer", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Iceberg Nesting Folding Chair, 19w x 6d x 43h", + "ECommerce.totalQuantity": "4", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Kingston Digital DataTraveler 16GB USB 2.0", + "ECommerce.totalQuantity": "5", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Kingston Digital DataTraveler 16GB USB 2.1", + "ECommerce.totalQuantity": "5", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Kingston Digital DataTraveler 16GB USB 2.2", + "ECommerce.totalQuantity": "8", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Lexmark 20R1285 X6650 Wireless All-in-One Printer", + "ECommerce.totalQuantity": "6", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Linden 10 Round Wall Clock, Black", + "ECommerce.totalQuantity": "14", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Logitech di_Novo Edge Keyboard", + "ECommerce.totalQuantity": "9", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Magna Visual Magnetic Picture Hangers", + "ECommerce.totalQuantity": "4", }, Object { - "ECommerce.category": "Office Supplies", - "ECommerce.city": "Decatur", - "ECommerce.customerId": "JS-16030", - "ECommerce.customerName": "Customer 25", - "ECommerce.discount": 0.2, - "ECommerce.orderDate": "2020-02-16T00:00:00.000", - "ECommerce.orderId": "CA-2017-163265", - "ECommerce.productName": "Vinyl Coated Wire Paper Clips in Organizer Box, 800/Box", - "ECommerce.profit": 6.1992, - "ECommerce.quantity": 2, - "ECommerce.rowId": 8673, - "ECommerce.sales": 18.368, - "ECommerce.subCategory": "Fasteners", + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "OIC #2 Pencils, Medium Soft", + "ECommerce.totalQuantity": "9", }, Object { - "ECommerce.category": "Technology", - "ECommerce.city": "Columbus", - "ECommerce.customerId": "TS-21205", - "ECommerce.customerName": "Customer 40", - "ECommerce.discount": 0.2, - "ECommerce.orderDate": "2020-06-15T00:00:00.000", - "ECommerce.orderId": "CA-2017-119284", - "ECommerce.productName": "HTC One", - "ECommerce.profit": 26.9973, - "ECommerce.quantity": 3, - "ECommerce.rowId": 8697, - "ECommerce.sales": 239.976, - "ECommerce.subCategory": "Phones", + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Okidata C610n Printer", + "ECommerce.totalQuantity": "2", }, Object { - "ECommerce.category": "Technology", - "ECommerce.city": "Morristown", - "ECommerce.customerId": "GZ-14470", - "ECommerce.customerName": "Customer 20", - "ECommerce.discount": 0, - "ECommerce.orderDate": "2020-09-17T00:00:00.000", - "ECommerce.orderId": "CA-2017-126928", - "ECommerce.productName": "Lexmark 20R1285 X6650 Wireless All-in-One Printer", - "ECommerce.profit": 225.6, - "ECommerce.quantity": 4, - "ECommerce.rowId": 8878, - "ECommerce.sales": 480, - "ECommerce.subCategory": "Machines", + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Panasonic KP-380BK Classic Electric Pencil Sharpener", + "ECommerce.totalQuantity": "8", }, Object { - "ECommerce.category": "Technology", - "ECommerce.city": "Columbus", - "ECommerce.customerId": "JH-15430", - "ECommerce.customerName": "Customer 23", - "ECommerce.discount": 0.5, - "ECommerce.orderDate": "2020-12-25T00:00:00.000", - "ECommerce.orderId": "CA-2017-105620", - "ECommerce.productName": "Lexmark 20R1285 X6650 Wireless All-in-One Printer", - "ECommerce.profit": -7.2, - "ECommerce.quantity": 2, - "ECommerce.rowId": 8958, - "ECommerce.sales": 120, - "ECommerce.subCategory": "Machines", + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Plymouth Boxed Rubber Bands by Plymouth", + "ECommerce.totalQuantity": "11", }, Object { - "ECommerce.category": "Furniture", - "ECommerce.city": "New York City", - "ECommerce.customerId": "CD-12280", - "ECommerce.customerName": "Customer 13", - "ECommerce.discount": 0.1, - "ECommerce.orderDate": "2020-11-05T00:00:00.000", - "ECommerce.orderId": "CA-2017-102925", - "ECommerce.productName": "Harbour Creations 67200 Series Stacking Chairs", - "ECommerce.profit": 24.2012, - "ECommerce.quantity": 2, - "ECommerce.rowId": 9473, - "ECommerce.sales": 128.124, - "ECommerce.subCategory": "Chairs", + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Project Tote Personal File", + "ECommerce.totalQuantity": "1", }, Object { - "ECommerce.category": "Furniture", - "ECommerce.city": "New York City", - "ECommerce.customerId": "SB-20185", - "ECommerce.customerName": "Customer 37", - "ECommerce.discount": 0.2, - "ECommerce.orderDate": "2020-06-25T00:00:00.000", - "ECommerce.orderId": "CA-2017-116127", - "ECommerce.productName": "DMI Eclipse Executive Suite Bookcases", - "ECommerce.profit": -5.0098, - "ECommerce.quantity": 1, - "ECommerce.rowId": 9584, - "ECommerce.sales": 400.784, - "ECommerce.subCategory": "Bookcases", + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Recycled Eldon Regeneration Jumbo File", + "ECommerce.totalQuantity": "4", }, Object { - "ECommerce.category": "Technology", - "ECommerce.city": "Columbus", - "ECommerce.customerId": "BS-11380", - "ECommerce.customerName": "Customer 9", - "ECommerce.discount": 0.4, - "ECommerce.orderDate": "2020-11-16T00:00:00.000", - "ECommerce.orderId": "CA-2017-160633", - "ECommerce.productName": "Hewlett Packard 610 Color Digital Copier / Printer", - "ECommerce.profit": 74.9985, - "ECommerce.quantity": 3, - "ECommerce.rowId": 9618, - "ECommerce.sales": 899.982, - "ECommerce.subCategory": "Copiers", + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Tyvek Side-Opening Peel & Seel Expanding Envelopes", + "ECommerce.totalQuantity": "2", }, Object { - "ECommerce.category": "Office Supplies", - "ECommerce.city": "Bowling", - "ECommerce.customerId": "BS-11380", - "ECommerce.customerName": "Customer 9", - "ECommerce.discount": 0.2, - "ECommerce.orderDate": "2020-11-16T00:00:00.000", - "ECommerce.orderId": "CA-2017-160633", - "ECommerce.productName": "Panasonic KP-380BK Classic Electric Pencil Sharpener", - "ECommerce.profit": 5.397, - "ECommerce.quantity": 3, - "ECommerce.rowId": 9619, - "ECommerce.sales": 86.352, - "ECommerce.subCategory": "Art", + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Vinyl Coated Wire Paper Clips in Organizer Box, 800/Box", + "ECommerce.totalQuantity": "11", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Wausau Papers Astrobrights Colored Envelopes", + "ECommerce.totalQuantity": "3", }, ] `; @@ -12336,6 +13517,229 @@ Array [ ] `; +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying custom granularities (with preaggregation) ECommerce: totalQuantity by half_year + dimension 1`] = ` +Array [ + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Balt Solid Wood Rectangular Table", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-01-01T00:00:00.000", + "ECommerce.productName": "Linden 10 Round Wall Clock, Black", + "ECommerce.totalQuantity": "4", + }, + Object { + "ECommerce.orderDate": "2020-07-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-07-01T00:00:00.000", + "ECommerce.productName": "Canon PC1080F Personal Copier", + "ECommerce.totalQuantity": "5", + }, + Object { + "ECommerce.orderDate": "2020-07-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-07-01T00:00:00.000", + "ECommerce.productName": "DMI Eclipse Executive Suite Bookcases", + "ECommerce.totalQuantity": "1", + }, + Object { + "ECommerce.orderDate": "2020-07-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-07-01T00:00:00.000", + "ECommerce.productName": "Google Nexus 6", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-07-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-07-01T00:00:00.000", + "ECommerce.productName": "Google Nexus 7", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-07-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-07-01T00:00:00.000", + "ECommerce.productName": "HTC One", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-07-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-07-01T00:00:00.000", + "ECommerce.productName": "Kingston Digital DataTraveler 16GB USB 2.1", + "ECommerce.totalQuantity": "5", + }, + Object { + "ECommerce.orderDate": "2020-07-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-07-01T00:00:00.000", + "ECommerce.productName": "Kingston Digital DataTraveler 16GB USB 2.2", + "ECommerce.totalQuantity": "8", + }, + Object { + "ECommerce.orderDate": "2020-07-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-07-01T00:00:00.000", + "ECommerce.productName": "Linden 10 Round Wall Clock, Black", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2020-07-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-07-01T00:00:00.000", + "ECommerce.productName": "OIC #2 Pencils, Medium Soft", + "ECommerce.totalQuantity": "4", + }, + Object { + "ECommerce.orderDate": "2020-07-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-07-01T00:00:00.000", + "ECommerce.productName": "Plymouth Boxed Rubber Bands by Plymouth", + "ECommerce.totalQuantity": "11", + }, + Object { + "ECommerce.orderDate": "2020-07-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-07-01T00:00:00.000", + "ECommerce.productName": "Project Tote Personal File", + "ECommerce.totalQuantity": "1", + }, + Object { + "ECommerce.orderDate": "2020-07-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-07-01T00:00:00.000", + "ECommerce.productName": "Tyvek Side-Opening Peel & Seel Expanding Envelopes", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2020-07-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-07-01T00:00:00.000", + "ECommerce.productName": "Vinyl Coated Wire Paper Clips in Organizer Box, 800/Box", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Anderson Hickey Conga Table Tops & Accessories", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Canon PC1080F Personal Copier", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Global Adaptabilites Bookcase, Cherry/Storm Gray Finish", + "ECommerce.totalQuantity": "8", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Google Nexus 5", + "ECommerce.totalQuantity": "11", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Harbour Creations 67200 Series Stacking Chairs", + "ECommerce.totalQuantity": "11", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Hewlett Packard 610 Color Digital Copier / Printer", + "ECommerce.totalQuantity": "3", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Iceberg Nesting Folding Chair, 19w x 6d x 43h", + "ECommerce.totalQuantity": "4", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Kingston Digital DataTraveler 16GB USB 2.0", + "ECommerce.totalQuantity": "5", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Lexmark 20R1285 X6650 Wireless All-in-One Printer", + "ECommerce.totalQuantity": "6", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Linden 10 Round Wall Clock, Black", + "ECommerce.totalQuantity": "7", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Logitech di_Novo Edge Keyboard", + "ECommerce.totalQuantity": "9", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Magna Visual Magnetic Picture Hangers", + "ECommerce.totalQuantity": "4", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "OIC #2 Pencils, Medium Soft", + "ECommerce.totalQuantity": "5", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Okidata C610n Printer", + "ECommerce.totalQuantity": "2", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Panasonic KP-380BK Classic Electric Pencil Sharpener", + "ECommerce.totalQuantity": "8", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Recycled Eldon Regeneration Jumbo File", + "ECommerce.totalQuantity": "4", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Vinyl Coated Wire Paper Clips in Organizer Box, 800/Box", + "ECommerce.totalQuantity": "9", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.productName": "Wausau Papers Astrobrights Colored Envelopes", + "ECommerce.totalQuantity": "3", + }, +] +`; + +exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying custom granularities (with preaggregation) ECommerce: totalQuantity by half_year + no dimension 1`] = ` +Array [ + Object { + "ECommerce.orderDate": "2020-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-01-01T00:00:00.000", + "ECommerce.totalQuantity": "6", + }, + Object { + "ECommerce.orderDate": "2020-07-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2020-07-01T00:00:00.000", + "ECommerce.totalQuantity": "51", + }, + Object { + "ECommerce.orderDate": "2021-01-01T00:00:00.000", + "ECommerce.orderDate.half_year": "2021-01-01T00:00:00.000", + "ECommerce.totalQuantity": "103", + }, +] +`; + exports[`Queries with the @cubejs-backend/databricks-jdbc-driver export-bucket-azure querying custom granularities ECommerce: count by half_year + dimension 1`] = ` Array [ Object { diff --git a/packages/cubejs-testing-shared/CHANGELOG.md b/packages/cubejs-testing-shared/CHANGELOG.md index 7712798245dce..c6de6e005b2fd 100644 --- a/packages/cubejs-testing-shared/CHANGELOG.md +++ b/packages/cubejs-testing-shared/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/testing-shared + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/testing-shared + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/testing-shared diff --git a/packages/cubejs-testing-shared/package.json b/packages/cubejs-testing-shared/package.json index 72280c55bfa5a..769fc95c612c0 100644 --- a/packages/cubejs-testing-shared/package.json +++ b/packages/cubejs-testing-shared/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/testing-shared", - "version": "1.0.4", + "version": "1.0.6", "description": "Cube.js Testing Helpers", "author": "Cube Dev, Inc.", "license": "Apache-2.0", @@ -21,9 +21,9 @@ ], "dependencies": { "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/query-orchestrator": "1.0.3", - "@cubejs-backend/schema-compiler": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/query-orchestrator": "1.0.6", + "@cubejs-backend/schema-compiler": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "@testcontainers/kafka": "~10.13.0", "dedent": "^0.7.0", "node-fetch": "^2.6.7", diff --git a/packages/cubejs-testing/CHANGELOG.md b/packages/cubejs-testing/CHANGELOG.md index 983fe1170d2ff..23ff9f01be444 100644 --- a/packages/cubejs-testing/CHANGELOG.md +++ b/packages/cubejs-testing/CHANGELOG.md @@ -3,6 +3,30 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.7](https://github.com/cube-js/cube/compare/v1.0.6...v1.0.7) (2024-12-08) + +**Note:** Version bump only for package @cubejs-backend/testing + + + + + +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/testing + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/testing + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/testing diff --git a/packages/cubejs-testing/birdbox-fixtures/lambda/schema/RequestsNonReadOnly.js b/packages/cubejs-testing/birdbox-fixtures/lambda/schema/RequestsNonReadOnly.js new file mode 100644 index 0000000000000..15b76c3144106 --- /dev/null +++ b/packages/cubejs-testing/birdbox-fixtures/lambda/schema/RequestsNonReadOnly.js @@ -0,0 +1,83 @@ +cube("RequestsNonReadOnly", { + sql: `select 1 as tenant_id, 1 as deployment_id, 'req-1' as request_id, (NOW() - INTERVAL '1 day')::timestamp as timestamp + UNION ALL + select 2 as tenant_id, 1 as deployment_id, 'req-2' as request_id, (NOW() - INTERVAL '2 day')::timestamp as timestamp + `, + data_source: "postgres", + measures: { + count: { + type: "count", + }, + }, + dimensions: { + tenant_id: { + sql: `tenant_id`, + type: "number", + }, + request_id: { + sql: `request_id`, + type: "string", + }, + timestamp: { + sql: `timestamp`, + type: "time", + }, + }, + pre_aggregations: { + batch_streaming_lambda: { + type: `rollup_lambda`, + rollups: [batch, RequestsNonReadOnlyStream.stream], + }, + + batch: { + external: true, + type: "rollup", + measures: [count], + dimensions: [tenant_id, request_id, timestamp], + granularity: "day", + time_dimension: RequestsNonReadOnly.timestamp, + partition_granularity: "day", + build_range_start: { sql: "SELECT NOW() - INTERVAL '10 day'" }, + build_range_end: { sql: "SELECT NOW()" }, + }, + }, +}); + +cube("RequestsNonReadOnlyStream", { + dataSource: "ksql", + + sql: `SELECT * FROM REQUESTS`, + + measures: { + count: { + type: "count", + }, + }, + dimensions: { + tenant_id: { + sql: `TENANT_ID`, + type: "number", + }, + request_id: { + sql: `REQUEST_ID`, + type: "string", + }, + timestamp: { + sql: `TIMESTAMP`, + type: "time", + }, + }, + preAggregations: { + stream: { + streamOffset: "earliest", + type: `rollup`, + measures: [count], + dimensions: [tenant_id, request_id, timestamp], + time_dimension: RequestsNonReadOnlyStream.timestamp, + granularity: "day", + partition_granularity: "day", + build_range_start: { sql: "SELECT DATE_SUB(NOW(), interval '96 hour')" }, + build_range_end: { sql: "SELECT NOW()" } + }, + }, +}); diff --git a/packages/cubejs-testing/package.json b/packages/cubejs-testing/package.json index 2a55bcd51d6c5..8c7f7fd226c97 100644 --- a/packages/cubejs-testing/package.json +++ b/packages/cubejs-testing/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/testing", - "version": "1.0.4", + "version": "1.0.7", "description": "Cube.js e2e tests", "author": "Cube Dev, Inc.", "license": "Apache-2.0", @@ -90,14 +90,14 @@ "birdbox-fixtures" ], "dependencies": { - "@cubejs-backend/cubestore-driver": "1.0.3", + "@cubejs-backend/cubestore-driver": "1.0.6", "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/ksql-driver": "1.0.4", - "@cubejs-backend/postgres-driver": "1.0.4", - "@cubejs-backend/query-orchestrator": "1.0.3", - "@cubejs-backend/schema-compiler": "1.0.4", - "@cubejs-backend/shared": "1.0.3", - "@cubejs-backend/testing-shared": "1.0.4", + "@cubejs-backend/ksql-driver": "1.0.7", + "@cubejs-backend/postgres-driver": "1.0.6", + "@cubejs-backend/query-orchestrator": "1.0.6", + "@cubejs-backend/schema-compiler": "1.0.6", + "@cubejs-backend/shared": "1.0.6", + "@cubejs-backend/testing-shared": "1.0.6", "@cubejs-client/ws-transport": "^1.0.0", "dedent": "^0.7.0", "fs-extra": "^8.1.0", diff --git a/packages/cubejs-testing/test/smoke-lambda.test.ts b/packages/cubejs-testing/test/smoke-lambda.test.ts index a76955541bc5d..65c0d0c903468 100644 --- a/packages/cubejs-testing/test/smoke-lambda.test.ts +++ b/packages/cubejs-testing/test/smoke-lambda.test.ts @@ -116,6 +116,35 @@ describe('lambda', () => { expect(response.loadResponse.results[0].data.length).toEqual(3); }); + test('Query lambda with ksql with create table ', async () => { + const query: Query = { + measures: ['RequestsNonReadOnly.count'], + dimensions: ['RequestsNonReadOnly.tenant_id', 'RequestsNonReadOnly.request_id'], + timeDimensions: [ + { + dimension: 'RequestsNonReadOnly.timestamp', + granularity: 'day' + } + ], + }; + // First call to trigger the pre-aggregation build + await client.load(query); + // We have to wait for cubestore to consume the data from Kafka. There is no way to know when it's done right now. + await pausePromise(5000); + + const response = await client.load(query); + + // @ts-ignore + expect(response.loadResponse.results[0].data.map(i => i['RequestsNonReadOnly.request_id'])).toEqual([ + 'req-2', + 'req-1', + 'req-stream-2' + ]); + + // @ts-ignore + expect(response.loadResponse.results[0].data.length).toEqual(3); + }); + test('query', async () => { const query: Query = { measures: ['Orders.count'], diff --git a/packages/cubejs-trino-driver/CHANGELOG.md b/packages/cubejs-trino-driver/CHANGELOG.md index 20c0a0d29c0d0..0b0c4faed413e 100644 --- a/packages/cubejs-trino-driver/CHANGELOG.md +++ b/packages/cubejs-trino-driver/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/trino-driver + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/trino-driver + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/trino-driver diff --git a/packages/cubejs-trino-driver/package.json b/packages/cubejs-trino-driver/package.json index 270c8b7e72c8f..4a5782940749d 100644 --- a/packages/cubejs-trino-driver/package.json +++ b/packages/cubejs-trino-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/trino-driver", "description": "Cube.js Trino database driver", "author": "Cube Dev, Inc.", - "version": "1.0.4", + "version": "1.0.6", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -25,10 +25,10 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.0.3", - "@cubejs-backend/prestodb-driver": "1.0.3", - "@cubejs-backend/schema-compiler": "1.0.4", - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/base-driver": "1.0.6", + "@cubejs-backend/prestodb-driver": "1.0.6", + "@cubejs-backend/schema-compiler": "1.0.6", + "@cubejs-backend/shared": "1.0.6", "presto-client": "^0.12.2", "ramda": "^0.27.0", "sqlstring": "^2.3.1" diff --git a/rust/cubesql/CHANGELOG.md b/rust/cubesql/CHANGELOG.md index cb9eef2c17151..e06fbe021f69a 100644 --- a/rust/cubesql/CHANGELOG.md +++ b/rust/cubesql/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/cubesql + + + + + +## [1.0.5](https://github.com/cube-js/cube/compare/v1.0.4...v1.0.5) (2024-10-28) + +**Note:** Version bump only for package @cubejs-backend/cubesql + + + + + ## [1.0.4](https://github.com/cube-js/cube/compare/v1.0.3...v1.0.4) (2024-10-23) **Note:** Version bump only for package @cubejs-backend/cubesql diff --git a/rust/cubesql/package.json b/rust/cubesql/package.json index 2ac876c5f80fc..c002ef9989f31 100644 --- a/rust/cubesql/package.json +++ b/rust/cubesql/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/cubesql", - "version": "1.0.4", + "version": "1.0.6", "description": "SQL API for Cube as proxy over MySQL protocol.", "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" diff --git a/rust/cubestore/CHANGELOG.md b/rust/cubestore/CHANGELOG.md index 53abb2cdb37d5..3f79d6299bbdc 100644 --- a/rust/cubestore/CHANGELOG.md +++ b/rust/cubestore/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.0.6](https://github.com/cube-js/cube/compare/v1.0.5...v1.0.6) (2024-12-07) + +**Note:** Version bump only for package @cubejs-backend/cubestore + + + + + ## [1.0.3](https://github.com/cube-js/cube/compare/v1.0.2...v1.0.3) (2024-10-22) **Note:** Version bump only for package @cubejs-backend/cubestore diff --git a/rust/cubestore/package.json b/rust/cubestore/package.json index 6dd951aec74b8..04cf33280fa32 100644 --- a/rust/cubestore/package.json +++ b/rust/cubestore/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/cubestore", - "version": "1.0.3", + "version": "1.0.6", "description": "Cube.js pre-aggregation storage layer.", "main": "dist/src/index.js", "typings": "dist/src/index.d.ts", @@ -37,7 +37,7 @@ "access": "public" }, "dependencies": { - "@cubejs-backend/shared": "1.0.3", + "@cubejs-backend/shared": "1.0.6", "@octokit/core": "^3.2.5", "source-map-support": "^0.5.19" }, diff --git a/yarn.lock b/yarn.lock index 724fe49cca325..04fb697d4685e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -29691,6 +29691,11 @@ wordwrap@^1.0.0: resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= +workerpool@^9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-9.2.0.tgz#f74427cbb61234708332ed8ab9cbf56dcb1c4371" + integrity sha512-PKZqBOCo6CYkVOwAxWxQaSF2Fvb5Iv2fCeTP7buyWI2GiynWr46NcXSgK/idoV6e60dgCBfgYc+Un3HMvmqP8w== + "wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"