Skip to content

Commit fc4ac3e

Browse files
authored
Merge branch 'master' into member-expression-measure-key
2 parents 64a90c5 + 635ea38 commit fc4ac3e

File tree

2,723 files changed

+236420
-552126
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,723 files changed

+236420
-552126
lines changed

.dockerignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
**
22
!package.json
33
!tsconfig.base.json
4+
!tsconfig.json
45
!rollup.config.js
56
!yarn.lock
67
!lerna.json

.github/actions/codecov-fix.sh

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#!/usr/bin/env bash
2+
3+
set -euo pipefail
4+
5+
repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/../../" && pwd)"
6+
7+
for path in "$repo_root"/packages/*/coverage/lcov.info; do
8+
[ -f "$path" ] || continue
9+
10+
pkg_dir="$(dirname "$path")" # packages/foo/coverage
11+
pkg_root="$(dirname "$pkg_dir")" # packages/foo
12+
tmp_path="$pkg_dir/lcov.fixed.info"
13+
14+
sed "s|SF:src/|SF:packages/$(basename "$pkg_root")/src/|g" "$path" > "$tmp_path"
15+
done

.github/actions/integration/athena.sh

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@ set -eo pipefail
55
export DEBUG=testcontainers
66

77
echo "::group::Athena [cloud]"
8+
export CUBEJS_AWS_KEY=$DRIVERS_TESTS_SNOWFLAKE_CUBEJS_AWS_KEY
9+
export CUBEJS_AWS_SECRET=$DRIVERS_TESTS_SNOWFLAKE_CUBEJS_AWS_SECRET
10+
811
export CUBEJS_AWS_REGION=us-east-1
912
export CUBEJS_AWS_S3_OUTPUT_LOCATION=s3://cubejs-opensource/testing/output
1013
export CUBEJS_DB_EXPORT_BUCKET=s3://cubejs-opensource/testing/export/

.github/actions/integration/bigquery.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ set -eo pipefail
55
export DEBUG=testcontainers
66

77
echo "::group::BigQuery [cloud]"
8+
export CUBEJS_DB_BQ_CREDENTIALS=$DRIVERS_TESTS_SNOWFLAKE_CUBEJS_DB_BQ_CREDENTIALS
89
export CUBEJS_DB_BQ_PROJECT_ID=cube-open-source
910
export CUBEJS_DB_EXPORT_BUCKET=cube-open-source-export-bucket
1011
yarn lerna run --concurrency 1 --stream --no-prefix integration:bigquery

.github/actions/integration/mssql.sh

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,6 @@ set -eo pipefail
44
# Debug log for test containers
55
export DEBUG=testcontainers
66

7-
export TEST_MSSQL_VERSION=2017-latest
8-
9-
echo "::group::MSSQL ${TEST_MSSQL_VERSION}";
10-
docker pull mcr.microsoft.com/mssql/server:${TEST_MSSQL_VERSION}
11-
yarn lerna run --concurrency 1 --stream --no-prefix integration:mssql
12-
echo "::endgroup::"
13-
147
export TEST_MSSQL_VERSION=2019-latest
158

169
echo "::group::MSSQL ${TEST_MSSQL_VERSION}";

.github/actions/integration/snowflake.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ export CUBEJS_DB_NAME=DEMO_DB
99
export CUBEJS_DB_SNOWFLAKE_ACCOUNT=lxb31104
1010
export CUBEJS_DB_SNOWFLAKE_REGION=us-west-2
1111
export CUBEJS_DB_SNOWFLAKE_WAREHOUSE=COMPUTE_WH
12+
export CUBEJS_DB_USER=$DRIVERS_TESTS_SNOWFLAKE_CUBEJS_DB_USER
13+
export CUBEJS_DB_PASS=$DRIVERS_TESTS_SNOWFLAKE_CUBEJS_DB_PASS
1214

1315
yarn lerna run --concurrency 1 --stream --no-prefix smoke:snowflake
1416

.github/pull_request_template.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,15 @@
44
- [ ] Tests for the changes have been added if not covered yet
55
- [ ] Docs have been added / updated if required
66

7+
<!--
8+
9+
Please uncomment and fill the sections below if applicable. This will help the reviewer to get the context quicker.
10+
711
**Issue Reference this PR resolves**
812
913
[For example #12]
1014
1115
**Description of Changes Made (if issue reference is not provided)**
1216
1317
[Description goes here]
18+
-->

.github/workflows/cloud.yml

Lines changed: 0 additions & 130 deletions
This file was deleted.

.github/workflows/cross-images.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ on:
1515
jobs:
1616
docker-dev:
1717
name: Build cross image for ${{ matrix.target }} target
18-
runs-on: ubuntu-20.04
18+
runs-on: ubuntu-24.04
1919
timeout-minutes: 120
2020
strategy:
2121
matrix:

.github/workflows/drivers-tests.yml

Lines changed: 41 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -57,13 +57,23 @@ on:
5757
# To test SQL API Push down
5858
- 'packages/cubejs-backend-native/**'
5959
- 'rust/cubesql/**'
60+
workflow_dispatch:
61+
inputs:
62+
use_tesseract_sql_planner:
63+
description: 'Enable TESSERACT_SQL_PLANNER?'
64+
required: true
65+
default: 'false'
66+
type: choice
67+
options:
68+
- 'true'
69+
- 'false'
6070

6171
env:
62-
CUBEJS_TESSERACT_ORCHESTRATOR: true
72+
USE_TESSERACT_SQL_PLANNER: false
6373

6474
jobs:
6575
latest-tag-sha:
66-
runs-on: ubuntu-20.04
76+
runs-on: ubuntu-24.04
6777
outputs:
6878
sha: ${{ steps.get-tag.outputs.sha }}
6979
steps:
@@ -86,12 +96,12 @@ jobs:
8696
OUT: ${{ steps.get-tag.outputs.sha }}
8797

8898
native_linux:
89-
runs-on: ubuntu-20.04
99+
runs-on: ubuntu-24.04
90100
timeout-minutes: 60
91101
name: Build native Linux ${{ matrix.node-version }} ${{ matrix.target }} Python ${{ matrix.python-version }}
92102
strategy:
93103
matrix:
94-
node-version: [ 20 ]
104+
node-version: [ 22 ]
95105
python-version: [ "fallback" ]
96106
target: [ "x86_64-unknown-linux-gnu" ]
97107
fail-fast: false
@@ -104,7 +114,7 @@ jobs:
104114
- name: Install Rust
105115
uses: actions-rust-lang/setup-rust-toolchain@v1
106116
with:
107-
toolchain: nightly-2024-07-15
117+
toolchain: 1.84.1
108118
# override: true # this is by default on
109119
rustflags: ""
110120
components: rustfmt
@@ -149,7 +159,7 @@ jobs:
149159
build:
150160
needs: [latest-tag-sha, native_linux]
151161
if: (needs['latest-tag-sha'].outputs.sha != github.sha)
152-
runs-on: ubuntu-20.04
162+
runs-on: ubuntu-24.04
153163
timeout-minutes: 30
154164
env:
155165
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
@@ -196,7 +206,7 @@ jobs:
196206
path: image.tar.gz
197207

198208
tests:
199-
runs-on: ubuntu-20.04
209+
runs-on: ubuntu-24.04
200210
timeout-minutes: 30
201211
needs: [latest-tag-sha, build]
202212
if: (needs['latest-tag-sha'].outputs.sha != github.sha)
@@ -205,53 +215,69 @@ jobs:
205215
athena-export-bucket-s3
206216
bigquery-export-bucket-gcs
207217
clickhouse-export-bucket-s3
218+
clickhouse-export-bucket-s3-prefix
208219
databricks-jdbc
209220
databricks-jdbc-export-bucket-s3
221+
databricks-jdbc-export-bucket-s3-prefix
210222
databricks-jdbc-export-bucket-azure
223+
databricks-jdbc-export-bucket-azure-prefix
224+
databricks-jdbc-export-bucket-gcs
225+
databricks-jdbc-export-bucket-gcs-prefix
211226
redshift
212227
redshift-export-bucket-s3
213228
snowflake
229+
snowflake-encrypted-pk
214230
snowflake-export-bucket-s3
231+
snowflake-export-bucket-s3-prefix
215232
snowflake-export-bucket-azure
233+
snowflake-export-bucket-azure-prefix
216234
snowflake-export-bucket-azure-via-storage-integration
217235
snowflake-export-bucket-gcs
236+
snowflake-export-bucket-gcs-prefix
218237
# As per docs:
219238
# Secrets cannot be directly referenced in if: conditionals. Instead, consider setting
220239
# secrets as job-level environment variables, then referencing the environment variables
221240
# to conditionally run steps in the job.
222241
DRIVERS_TESTS_ATHENA_CUBEJS_AWS_KEY: ${{ secrets.DRIVERS_TESTS_ATHENA_CUBEJS_AWS_KEY }}
223242
strategy:
224243
matrix:
225-
node:
226-
- 20.x
227244
database:
228245
- athena-export-bucket-s3
229246
- bigquery-export-bucket-gcs
230247
- clickhouse
231248
- clickhouse-export-bucket-s3
249+
- clickhouse-export-bucket-s3-prefix
232250
- databricks-jdbc
233251
- databricks-jdbc-export-bucket-s3
252+
- databricks-jdbc-export-bucket-s3-prefix
234253
- databricks-jdbc-export-bucket-azure
254+
- databricks-jdbc-export-bucket-azure-prefix
255+
- databricks-jdbc-export-bucket-gcs
256+
- databricks-jdbc-export-bucket-gcs-prefix
235257
- mssql
236258
- mysql
237259
- postgres
238260
- redshift
239261
- redshift-export-bucket-s3
240262
- snowflake
263+
- snowflake-encrypted-pk
241264
- snowflake-export-bucket-s3
265+
- snowflake-export-bucket-s3-prefix
242266
- snowflake-export-bucket-azure
267+
- snowflake-export-bucket-azure-prefix
243268
- snowflake-export-bucket-azure-via-storage-integration
244269
- snowflake-export-bucket-gcs
270+
- snowflake-export-bucket-gcs-prefix
245271
fail-fast: false
246272

247273
steps:
248274
- name: Checkout
249275
uses: actions/checkout@v4
250276

251-
- name: Install Node.js 20.x
277+
- name: Install Node.js 22.x
252278
uses: actions/setup-node@v4
253279
with:
254-
node-version: 20.x
280+
node-version: 22.x
255281

256282
- name: Configure `yarn`
257283
run: yarn policies set-version v1.22.22
@@ -308,6 +334,8 @@ jobs:
308334
(contains(env.CLOUD_DATABASES, matrix.database) && env.DRIVERS_TESTS_ATHENA_CUBEJS_AWS_KEY != '') ||
309335
(!contains(env.CLOUD_DATABASES, matrix.database))
310336
env:
337+
DRIVERS_TESTS_CUBEJS_TESSERACT_SQL_PLANNER: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.use_tesseract_sql_planner || env.USE_TESSERACT_SQL_PLANNER }}
338+
311339
# Athena
312340
DRIVERS_TESTS_ATHENA_CUBEJS_AWS_KEY: ${{ secrets.DRIVERS_TESTS_ATHENA_CUBEJS_AWS_KEY }}
313341
DRIVERS_TESTS_ATHENA_CUBEJS_AWS_SECRET: ${{ secrets.DRIVERS_TESTS_ATHENA_CUBEJS_AWS_SECRET }}
@@ -336,6 +364,8 @@ jobs:
336364
# Snowflake
337365
DRIVERS_TESTS_CUBEJS_DB_SNOWFLAKE_USER: ${{ secrets.DRIVERS_TESTS_CUBEJS_DB_SNOWFLAKE_USER }}
338366
DRIVERS_TESTS_CUBEJS_DB_SNOWFLAKE_PASS: ${{ secrets.DRIVERS_TESTS_CUBEJS_DB_SNOWFLAKE_PASS }}
367+
DRIVERS_TESTS_CUBEJS_DB_SNOWFLAKE_PRIVATE_KEY: ${{ secrets.DRIVERS_TESTS_CUBEJS_DB_SNOWFLAKE_PRIVATE_KEY }}
368+
DRIVERS_TESTS_CUBEJS_DB_SNOWFLAKE_PRIVATE_KEY_PASS: ${{ secrets.DRIVERS_TESTS_CUBEJS_DB_SNOWFLAKE_PRIVATE_KEY_PASS }}
339369
with:
340370
max_attempts: 3
341371
retry_on: error

0 commit comments

Comments
 (0)