Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,18 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## [1.6.39](https://github.com/cube-js/cube/compare/v1.6.38...v1.6.39) (2026-04-24)

### Bug Fixes

- **bigquery-driver:** Return int64/float64 as strings in query/stream ([#10738](https://github.com/cube-js/cube/issues/10738)) ([15626b1](https://github.com/cube-js/cube/commit/15626b1281dc5e09a28e1612c69f63ab68b9d7cc))
- **tesseract:** mask.sql with cross-cube refs through prefixed views ([#10727](https://github.com/cube-js/cube/issues/10727)) ([e52f201](https://github.com/cube-js/cube/commit/e52f201e20bdd1ab3a7556049099d286397e29b9))

### Performance Improvements

- **cubejs-backend-native:** Transfer ResultWrapper rawData as Buffer(JSON), ~10x faster ([#10728](https://github.com/cube-js/cube/issues/10728)) ([291205f](https://github.com/cube-js/cube/commit/291205f62b982be135ea153faaee9886e3fc4534))
- **postgres-driver:** Fast date, timestamp/tz parsers ([#10737](https://github.com/cube-js/cube/issues/10737)) ([c3a5709](https://github.com/cube-js/cube/commit/c3a570989fa26cd14b00205e6fc62645c7dc0a6d))

## [1.6.38](https://github.com/cube-js/cube/compare/v1.6.37...v1.6.38) (2026-04-23)

### Features
Expand Down
2 changes: 1 addition & 1 deletion lerna.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"version": "1.6.38",
"version": "1.6.39",
"npmClient": "yarn",
"command": {
"bootstrap": {
Expand Down
4 changes: 4 additions & 0 deletions packages/cubejs-api-gateway/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## [1.6.39](https://github.com/cube-js/cube/compare/v1.6.38...v1.6.39) (2026-04-24)

**Note:** Version bump only for package @cubejs-backend/api-gateway

## [1.6.38](https://github.com/cube-js/cube/compare/v1.6.37...v1.6.38) (2026-04-23)

**Note:** Version bump only for package @cubejs-backend/api-gateway
Expand Down
10 changes: 5 additions & 5 deletions packages/cubejs-api-gateway/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "@cubejs-backend/api-gateway",
"description": "Cube API Gateway",
"author": "Cube Dev, Inc.",
"version": "1.6.38",
"version": "1.6.39",
"repository": {
"type": "git",
"url": "https://github.com/cube-js/cube.git",
Expand All @@ -27,9 +27,9 @@
"dist/src/*"
],
"dependencies": {
"@cubejs-backend/native": "1.6.38",
"@cubejs-backend/query-orchestrator": "1.6.38",
"@cubejs-backend/shared": "1.6.38",
"@cubejs-backend/native": "1.6.39",
"@cubejs-backend/query-orchestrator": "1.6.39",
"@cubejs-backend/shared": "1.6.39",
"@ungap/structured-clone": "^0.3.4",
"assert-never": "^1.4.0",
"body-parser": "^1.19.0",
Expand All @@ -53,7 +53,7 @@
"zod": "^4.1.13"
},
"devDependencies": {
"@cubejs-backend/linter": "1.6.38",
"@cubejs-backend/linter": "1.6.39",
"@types/express": "^4.17.21",
"@types/jest": "^29",
"@types/jsonwebtoken": "^9.0.2",
Expand Down
4 changes: 4 additions & 0 deletions packages/cubejs-athena-driver/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## [1.6.39](https://github.com/cube-js/cube/compare/v1.6.38...v1.6.39) (2026-04-24)

**Note:** Version bump only for package @cubejs-backend/athena-driver

## [1.6.38](https://github.com/cube-js/cube/compare/v1.6.37...v1.6.38) (2026-04-23)

**Note:** Version bump only for package @cubejs-backend/athena-driver
Expand Down
10 changes: 5 additions & 5 deletions packages/cubejs-athena-driver/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "@cubejs-backend/athena-driver",
"description": "Cube.js Athena database driver",
"author": "Cube Dev, Inc.",
"version": "1.6.38",
"version": "1.6.39",
"repository": {
"type": "git",
"url": "https://github.com/cube-js/cube.git",
Expand Down Expand Up @@ -30,13 +30,13 @@
"dependencies": {
"@aws-sdk/client-athena": "^3.22.0",
"@aws-sdk/credential-providers": "^3.22.0",
"@cubejs-backend/base-driver": "1.6.38",
"@cubejs-backend/shared": "1.6.38",
"@cubejs-backend/base-driver": "1.6.39",
"@cubejs-backend/shared": "1.6.39",
"sqlstring": "^2.3.1"
},
"devDependencies": {
"@cubejs-backend/linter": "1.6.38",
"@cubejs-backend/testing-shared": "1.6.38",
"@cubejs-backend/linter": "1.6.39",
"@cubejs-backend/testing-shared": "1.6.39",
"@types/ramda": "^0.27.40",
"typescript": "~5.2.2"
},
Expand Down
4 changes: 4 additions & 0 deletions packages/cubejs-backend-cloud/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## [1.6.39](https://github.com/cube-js/cube/compare/v1.6.38...v1.6.39) (2026-04-24)

**Note:** Version bump only for package @cubejs-backend/cloud

## [1.6.38](https://github.com/cube-js/cube/compare/v1.6.37...v1.6.38) (2026-04-23)

**Note:** Version bump only for package @cubejs-backend/cloud
Expand Down
6 changes: 3 additions & 3 deletions packages/cubejs-backend-cloud/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@cubejs-backend/cloud",
"version": "1.6.38",
"version": "1.6.39",
"description": "Cube Cloud package",
"main": "dist/src/index.js",
"typings": "dist/src/index.d.ts",
Expand Down Expand Up @@ -30,15 +30,15 @@
"devDependencies": {
"@babel/core": "^7.24.5",
"@babel/preset-env": "^7.24.5",
"@cubejs-backend/linter": "1.6.38",
"@cubejs-backend/linter": "1.6.39",
"@types/fs-extra": "^9.0.8",
"@types/jest": "^29",
"jest": "^29",
"typescript": "~5.2.2"
},
"dependencies": {
"@cubejs-backend/dotenv": "^9.0.2",
"@cubejs-backend/shared": "1.6.38",
"@cubejs-backend/shared": "1.6.39",
"chokidar": "^3.5.1",
"env-var": "^6.3.0",
"form-data": "^4.0.0",
Expand Down
4 changes: 4 additions & 0 deletions packages/cubejs-backend-maven/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## [1.6.39](https://github.com/cube-js/cube/compare/v1.6.38...v1.6.39) (2026-04-24)

**Note:** Version bump only for package @cubejs-backend/maven

## [1.6.38](https://github.com/cube-js/cube/compare/v1.6.37...v1.6.38) (2026-04-23)

**Note:** Version bump only for package @cubejs-backend/maven
Expand Down
6 changes: 3 additions & 3 deletions packages/cubejs-backend-maven/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "@cubejs-backend/maven",
"description": "Cube.js Maven Wrapper for java dependencies downloading",
"author": "Cube Dev, Inc.",
"version": "1.6.38",
"version": "1.6.39",
"license": "Apache-2.0",
"repository": {
"type": "git",
Expand Down Expand Up @@ -31,12 +31,12 @@
"dist/src/*"
],
"dependencies": {
"@cubejs-backend/shared": "1.6.38",
"@cubejs-backend/shared": "1.6.39",
"source-map-support": "^0.5.19",
"xmlbuilder2": "^2.4.0"
},
"devDependencies": {
"@cubejs-backend/linter": "1.6.38",
"@cubejs-backend/linter": "1.6.39",
"@types/jest": "^29",
"@types/node": "^20",
"jest": "^29",
Expand Down
6 changes: 6 additions & 0 deletions packages/cubejs-backend-native/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,12 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## [1.6.39](https://github.com/cube-js/cube/compare/v1.6.38...v1.6.39) (2026-04-24)

### Performance Improvements

- **cubejs-backend-native:** Transfer ResultWrapper rawData as Buffer(JSON), ~10x faster ([#10728](https://github.com/cube-js/cube/issues/10728)) ([291205f](https://github.com/cube-js/cube/commit/291205f62b982be135ea153faaee9886e3fc4534))

## [1.6.38](https://github.com/cube-js/cube/compare/v1.6.37...v1.6.38) (2026-04-23)

**Note:** Version bump only for package @cubejs-backend/native
Expand Down
10 changes: 9 additions & 1 deletion packages/cubejs-backend-native/js/ResultWrapper.ts
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,7 @@ export class ResultWrapper extends BaseWrapper implements DataResult {
}
this.cached = true;
}

return this.cache;
}

Expand All @@ -139,7 +140,14 @@ export class ResultWrapper extends BaseWrapper implements DataResult {
return [this.nativeReference];
}

return [this.jsResult];
// Serialize to a Buffer so the Rust side can decode via
// serde_json::from_slice instead of walking a JsArray through the
// Neon bridge with JsValueDeserializer. On 5 MB of AoO rows
// (~21k rows × 8 fields) the JsArray walk costs ~80 ms locally;
// Buffer + serde_json is ~7× faster (M3 MAX) and tracks V8's JSON.parse
// (~11 ms on the same payload). On a real server it should be 3-6× slower,
// so avoiding the JsArray walk matters even more there.
return [Buffer.from(JSON.stringify(this.jsResult))];
}

public setTransformData(td: any) {
Expand Down
8 changes: 4 additions & 4 deletions packages/cubejs-backend-native/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@cubejs-backend/native",
"version": "1.6.38",
"version": "1.6.39",
"author": "Cube Dev, Inc.",
"description": "Native module for Cube.js (binding to Rust codebase)",
"main": "dist/js/index.js",
Expand Down Expand Up @@ -36,7 +36,7 @@
"dist/js"
],
"devDependencies": {
"@cubejs-backend/linter": "1.6.38",
"@cubejs-backend/linter": "1.6.39",
"@types/jest": "^29",
"@types/node": "^20",
"cargo-cp-artifact": "^0.1.9",
Expand All @@ -47,8 +47,8 @@
"uuid": "^8.3.2"
},
"dependencies": {
"@cubejs-backend/cubesql": "1.6.38",
"@cubejs-backend/shared": "1.6.38",
"@cubejs-backend/cubesql": "1.6.39",
"@cubejs-backend/shared": "1.6.39",
"@cubejs-infra/post-installer": "^0.0.7"
},
"resources": {
Expand Down
19 changes: 19 additions & 0 deletions packages/cubejs-backend-native/src/orchestrator.rs
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,18 @@ impl ResultWrapper {
let query_result =
if let Ok(js_box) = raw_data_js.downcast::<JsBox<Arc<QueryResult>>, _>(cx) {
Arc::clone(&js_box)
} else if let Ok(js_buffer) = raw_data_js.downcast::<JsBuffer, _>(cx) {
let bytes = js_buffer.as_slice(cx);
let js_raw_data: JsRawData = serde_json::from_slice(bytes).map_err(|e| {
CubeError::internal(format!(
"Can't parse raw data JSON from JS ResultWrapper: {}",
e
))
})?;

QueryResult::from_js_raw_data(js_raw_data)
.map(Arc::new)
.map_cube_err("Can't build results data from JS rawData")?
} else if let Ok(js_array) = raw_data_js.downcast::<JsArray, _>(cx) {
let deserializer = JsValueDeserializer::new(cx, js_array.upcast());
let js_raw_data: JsRawData = match Deserialize::deserialize(deserializer) {
Expand Down Expand Up @@ -222,6 +234,13 @@ fn extract_query_result(
) -> Result<Arc<QueryResult>, anyhow::Error> {
if let Ok(js_box) = data_arg.downcast::<JsBox<Arc<QueryResult>>, _>(cx) {
Ok(Arc::clone(&js_box))
} else if let Ok(js_buffer) = data_arg.downcast::<JsBuffer, _>(cx) {
let bytes = js_buffer.as_slice(cx);
let js_raw_data: JsRawData = serde_json::from_slice(bytes)?;

QueryResult::from_js_raw_data(js_raw_data)
.map(Arc::new)
.map_err(anyhow::Error::from)
} else if let Ok(js_array) = data_arg.downcast::<JsArray, _>(cx) {
let deserializer = JsValueDeserializer::new(cx, js_array.upcast());
let js_raw_data: JsRawData = Deserialize::deserialize(deserializer)?;
Expand Down
4 changes: 4 additions & 0 deletions packages/cubejs-backend-shared/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## [1.6.39](https://github.com/cube-js/cube/compare/v1.6.38...v1.6.39) (2026-04-24)

**Note:** Version bump only for package @cubejs-backend/shared

## [1.6.38](https://github.com/cube-js/cube/compare/v1.6.37...v1.6.38) (2026-04-23)

### Features
Expand Down
4 changes: 2 additions & 2 deletions packages/cubejs-backend-shared/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@cubejs-backend/shared",
"version": "1.6.38",
"version": "1.6.39",
"description": "Shared code for Cube.js backend packages",
"main": "dist/src/index.js",
"typings": "dist/src/index.d.ts",
Expand All @@ -27,7 +27,7 @@
},
"license": "Apache-2.0",
"devDependencies": {
"@cubejs-backend/linter": "1.6.38",
"@cubejs-backend/linter": "1.6.39",
"@types/bytes": "^3.1.5",
"@types/cli-progress": "^3.9.1",
"@types/decompress": "^4.2.7",
Expand Down
4 changes: 4 additions & 0 deletions packages/cubejs-base-driver/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## [1.6.39](https://github.com/cube-js/cube/compare/v1.6.38...v1.6.39) (2026-04-24)

**Note:** Version bump only for package @cubejs-backend/base-driver

## [1.6.38](https://github.com/cube-js/cube/compare/v1.6.37...v1.6.38) (2026-04-23)

**Note:** Version bump only for package @cubejs-backend/base-driver
Expand Down
6 changes: 3 additions & 3 deletions packages/cubejs-base-driver/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "@cubejs-backend/base-driver",
"description": "Cube.js Base Driver",
"author": "Cube Dev, Inc.",
"version": "1.6.38",
"version": "1.6.39",
"repository": {
"type": "git",
"url": "https://github.com/cube-js/cube.git",
Expand Down Expand Up @@ -33,11 +33,11 @@
"@aws-sdk/s3-request-presigner": "^3.49.0",
"@azure/identity": "^4.4.1",
"@azure/storage-blob": "^12.9.0",
"@cubejs-backend/shared": "1.6.38",
"@cubejs-backend/shared": "1.6.39",
"@google-cloud/storage": "^7.13.0"
},
"devDependencies": {
"@cubejs-backend/linter": "1.6.38",
"@cubejs-backend/linter": "1.6.39",
"@types/jest": "^29",
"@types/node": "^20",
"jest": "^29",
Expand Down
6 changes: 6 additions & 0 deletions packages/cubejs-bigquery-driver/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,12 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## [1.6.39](https://github.com/cube-js/cube/compare/v1.6.38...v1.6.39) (2026-04-24)

### Bug Fixes

- **bigquery-driver:** Return int64/float64 as strings in query/stream ([#10738](https://github.com/cube-js/cube/issues/10738)) ([15626b1](https://github.com/cube-js/cube/commit/15626b1281dc5e09a28e1612c69f63ab68b9d7cc))

## [1.6.38](https://github.com/cube-js/cube/compare/v1.6.37...v1.6.38) (2026-04-23)

**Note:** Version bump only for package @cubejs-backend/bigquery-driver
Expand Down
8 changes: 4 additions & 4 deletions packages/cubejs-bigquery-driver/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "@cubejs-backend/bigquery-driver",
"description": "Cube.js BigQuery database driver",
"author": "Cube Dev, Inc.",
"version": "1.6.38",
"version": "1.6.39",
"repository": {
"type": "git",
"url": "https://github.com/cube-js/cube.git",
Expand All @@ -29,15 +29,15 @@
"main": "index.js",
"types": "dist/src/index.d.ts",
"dependencies": {
"@cubejs-backend/base-driver": "1.6.38",
"@cubejs-backend/base-driver": "1.6.39",
"@cubejs-backend/dotenv": "^9.0.2",
"@cubejs-backend/shared": "1.6.38",
"@cubejs-backend/shared": "1.6.39",
"@google-cloud/bigquery": "^7.7.0",
"@google-cloud/storage": "^7.13.0",
"ramda": "^0.27.2"
},
"devDependencies": {
"@cubejs-backend/testing-shared": "1.6.38",
"@cubejs-backend/testing-shared": "1.6.39",
"@types/big.js": "^6.2.2",
"@types/dedent": "^0.7.0",
"@types/jest": "^29",
Expand Down
Loading
Loading