diff --git a/CHANGELOG.md b/CHANGELOG.md index 102f2b5597834..cc1dc6d542170 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,19 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +### Bug Fixes + +- **api-gateway:** Update shown: true to public : true in error messages ([#9756](https://github.com/cube-js/cube/issues/9756)) ([4dc44bb](https://github.com/cube-js/cube/commit/4dc44bbd30ea31153191a562ecd4ffa950dc9eec)) +- **cubesql:** Hide security context from logs ([#9761](https://github.com/cube-js/cube/issues/9761)) ([e38c03c](https://github.com/cube-js/cube/commit/e38c03c2ba95f86965909b0f9161babd7bb52ecf)) +- **cubesql:** Normalize `EXTRACT`/`DATE_TRUNC` granularities ([#9759](https://github.com/cube-js/cube/issues/9759)) ([2db54ba](https://github.com/cube-js/cube/commit/2db54ba4a70c4e96a1ffa196fe43270385a48b3c)) +- **schema-compiler:** Avoid ambiguous dimension column mappings for ClickHouse queries ([#9674](https://github.com/cube-js/cube/issues/9674)) ([ea2a59f](https://github.com/cube-js/cube/commit/ea2a59fa708e8739f1c6052ac9896f0d01819470)) + +### Features + +- **snowflake-driver:** Introduce CUBEJS_DB_SNOWFLAKE_OAUTH_TOKEN env var / config option ([#9752](https://github.com/cube-js/cube/issues/9752)) ([1c66d3e](https://github.com/cube-js/cube/commit/1c66d3eeb8e138e13bef4411f60513de97dc15d4)) + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) ### Bug Fixes diff --git a/docs/pages/product/configuration/data-sources/snowflake.mdx b/docs/pages/product/configuration/data-sources/snowflake.mdx index 49885e07add92..4aadb1b570a88 100644 --- a/docs/pages/product/configuration/data-sources/snowflake.mdx +++ b/docs/pages/product/configuration/data-sources/snowflake.mdx @@ -84,6 +84,7 @@ if [dedicated infrastructure][ref-dedicated-infra] is used. Check out the | `CUBEJS_DB_SNOWFLAKE_PRIVATE_KEY` | The content of the private RSA key | Content of the private RSA key (encrypted or not) | ❌ | | `CUBEJS_DB_SNOWFLAKE_PRIVATE_KEY_PATH` | The path to the private RSA key | A valid path to the private RSA key | ❌ | | `CUBEJS_DB_SNOWFLAKE_PRIVATE_KEY_PASS` | The password for the private RSA key. Only required for encrypted keys | A valid password for the encrypted private RSA key | ❌ | +| `CUBEJS_DB_SNOWFLAKE_OAUTH_TOKEN` | The OAuth token | A valid OAuth token (string) | ❌ | | `CUBEJS_DB_SNOWFLAKE_OAUTH_TOKEN_PATH` | The path to the valid oauth toket file | A valid path for the oauth token file | ❌ | | `CUBEJS_DB_SNOWFLAKE_HOST` | Host address to which the driver should connect | A valid hostname | ❌ | | `CUBEJS_DB_SNOWFLAKE_QUOTED_IDENTIFIERS_IGNORE_CASE` | Whether or not [quoted identifiers should be case insensitive][link-snowflake-quoted-identifiers]. Default is `false` | `true`, `false` | ❌ | diff --git a/lerna.json b/lerna.json index 6a7d5c3d99d9c..0ffcdc0848b2b 100644 --- a/lerna.json +++ b/lerna.json @@ -1,5 +1,5 @@ { - "version": "1.3.34", + "version": "1.3.35", "npmClient": "yarn", "command": { "bootstrap": { diff --git a/packages/cubejs-api-gateway/CHANGELOG.md b/packages/cubejs-api-gateway/CHANGELOG.md index 84ed6e49d427e..b9b23c30516e5 100644 --- a/packages/cubejs-api-gateway/CHANGELOG.md +++ b/packages/cubejs-api-gateway/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/api-gateway + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/api-gateway diff --git a/packages/cubejs-api-gateway/package.json b/packages/cubejs-api-gateway/package.json index 57516b6db7025..f337ca6e53add 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -27,8 +27,8 @@ "dist/src/*" ], "dependencies": { - "@cubejs-backend/native": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/native": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "@ungap/structured-clone": "^0.3.4", "assert-never": "^1.4.0", "body-parser": "^1.19.0", @@ -51,7 +51,7 @@ "uuid": "^8.3.2" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/express": "^4.17.21", "@types/jest": "^29", "@types/jsonwebtoken": "^9.0.2", diff --git a/packages/cubejs-athena-driver/CHANGELOG.md b/packages/cubejs-athena-driver/CHANGELOG.md index fe6afb049b38e..3f2461ccdbf0e 100644 --- a/packages/cubejs-athena-driver/CHANGELOG.md +++ b/packages/cubejs-athena-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/athena-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 b489b22acb4ee..d2c8cb7a278ea 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.3.34", + "version": "1.3.35", "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.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "sqlstring": "^2.3.1" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/testing-shared": "1.3.34", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/testing-shared": "1.3.35", "@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 222b90f690185..29cb491cd8dfe 100644 --- a/packages/cubejs-backend-cloud/CHANGELOG.md +++ b/packages/cubejs-backend-cloud/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/cloud + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 f9c7985dc7e70..5bbddb43f9083 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.3.34", + "version": "1.3.35", "description": "Cube Cloud package", "main": "dist/src/index.js", "typings": "dist/src/index.d.ts", @@ -25,7 +25,7 @@ "devDependencies": { "@babel/core": "^7.24.5", "@babel/preset-env": "^7.24.5", - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/fs-extra": "^9.0.8", "@types/jest": "^29", "jest": "^29", @@ -33,7 +33,7 @@ }, "dependencies": { "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/shared": "1.3.35", "chokidar": "^3.5.1", "env-var": "^6.3.0", "form-data": "^4.0.0", diff --git a/packages/cubejs-backend-maven/CHANGELOG.md b/packages/cubejs-backend-maven/CHANGELOG.md index 5141315bbe660..682a63cc7ab05 100644 --- a/packages/cubejs-backend-maven/CHANGELOG.md +++ b/packages/cubejs-backend-maven/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/maven + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 bafd34b950a96..84f4e5f04feb2 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.3.34", + "version": "1.3.35", "license": "Apache-2.0", "repository": { "type": "git", @@ -31,12 +31,12 @@ "dist/src/*" ], "dependencies": { - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/shared": "1.3.35", "source-map-support": "^0.5.19", "xmlbuilder2": "^2.4.0" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/jest": "^29", "@types/node": "^20", "jest": "^29", diff --git a/packages/cubejs-backend-native/CHANGELOG.md b/packages/cubejs-backend-native/CHANGELOG.md index 4ed6b1fc97011..1125b13e92d83 100644 --- a/packages/cubejs-backend-native/CHANGELOG.md +++ b/packages/cubejs-backend-native/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +### Bug Fixes + +- **cubesql:** Hide security context from logs ([#9761](https://github.com/cube-js/cube/issues/9761)) ([e38c03c](https://github.com/cube-js/cube/commit/e38c03c2ba95f86965909b0f9161babd7bb52ecf)) + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/native diff --git a/packages/cubejs-backend-native/Cargo.lock b/packages/cubejs-backend-native/Cargo.lock index 7adc9ac93fdf2..830e1d8dfe7bf 100644 --- a/packages/cubejs-backend-native/Cargo.lock +++ b/packages/cubejs-backend-native/Cargo.lock @@ -714,7 +714,7 @@ dependencies = [ [[package]] name = "cube-ext" version = "1.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "arrow", "chrono", @@ -884,7 +884,7 @@ checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" [[package]] name = "datafusion" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "ahash 0.7.8", "arrow", @@ -917,7 +917,7 @@ dependencies = [ [[package]] name = "datafusion-common" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "arrow", "ordered-float 2.10.1", @@ -928,7 +928,7 @@ dependencies = [ [[package]] name = "datafusion-data-access" version = "1.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "async-trait", "chrono", @@ -941,7 +941,7 @@ dependencies = [ [[package]] name = "datafusion-expr" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "ahash 0.7.8", "arrow", @@ -952,7 +952,7 @@ dependencies = [ [[package]] name = "datafusion-physical-expr" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "ahash 0.7.8", "arrow", diff --git a/packages/cubejs-backend-native/package.json b/packages/cubejs-backend-native/package.json index 7907feeb32951..fcc6a59817a35 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.3.34", + "version": "1.3.35", "author": "Cube Dev, Inc.", "description": "Native module for Cube.js (binding to Rust codebase)", "main": "dist/js/index.js", @@ -34,7 +34,7 @@ "dist/js" ], "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/jest": "^29", "@types/node": "^20", "cargo-cp-artifact": "^0.1.9", @@ -44,8 +44,8 @@ "uuid": "^8.3.2" }, "dependencies": { - "@cubejs-backend/cubesql": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/cubesql": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "@cubejs-infra/post-installer": "^0.0.7" }, "resources": { diff --git a/packages/cubejs-backend-native/src/auth.rs b/packages/cubejs-backend-native/src/auth.rs index 5a495588c6125..73b2131b2ce2d 100644 --- a/packages/cubejs-backend-native/src/auth.rs +++ b/packages/cubejs-backend-native/src/auth.rs @@ -18,6 +18,7 @@ use crate::gateway::{ GatewayAuthContext, GatewayAuthContextRef, GatewayAuthService, GatewayAuthenticateResponse, GatewayCheckAuthRequest, }; +use crate::utils::NonDebugInRelease; #[derive(Debug)] pub struct NodeBridgeAuthService { @@ -90,7 +91,7 @@ struct CheckSQLAuthTransportResponse { pub struct NativeSQLAuthContext { pub user: Option, pub superuser: bool, - pub security_context: Option, + pub security_context: NonDebugInRelease>, } impl AuthContext for NativeSQLAuthContext { @@ -141,7 +142,7 @@ impl SqlAuthService for NodeBridgeAuthService { context: Arc::new(NativeSQLAuthContext { user, superuser: response.superuser, - security_context: response.security_context, + security_context: NonDebugInRelease::from(response.security_context), }), password: response.password, skip_password_check: response.skip_password_check.unwrap_or(false), diff --git a/packages/cubejs-backend-native/src/node_export.rs b/packages/cubejs-backend-native/src/node_export.rs index efe7446537d56..ee9e49b805551 100644 --- a/packages/cubejs-backend-native/src/node_export.rs +++ b/packages/cubejs-backend-native/src/node_export.rs @@ -18,7 +18,7 @@ use crate::sql4sql::sql4sql; use crate::stream::OnDrainHandler; use crate::tokio_runtime_node; use crate::transport::NodeBridgeTransport; -use crate::utils::batch_to_rows; +use crate::utils::{batch_to_rows, NonDebugInRelease}; use cubenativeutils::wrappers::neon::context::neon_run_with_guarded_lifetime; use cubenativeutils::wrappers::neon::inner_types::NeonInnerTypes; use cubenativeutils::wrappers::neon::object::NeonObject; @@ -429,7 +429,7 @@ fn exec_sql(mut cx: FunctionContext) -> JsResult { let native_auth_ctx = Arc::new(NativeSQLAuthContext { user: Some(String::from("unknown")), superuser: false, - security_context, + security_context: NonDebugInRelease::from(security_context), }); let (deferred, promise) = cx.promise(); diff --git a/packages/cubejs-backend-native/src/sql4sql.rs b/packages/cubejs-backend-native/src/sql4sql.rs index 71c71df4bdd19..59703d948a269 100644 --- a/packages/cubejs-backend-native/src/sql4sql.rs +++ b/packages/cubejs-backend-native/src/sql4sql.rs @@ -16,6 +16,7 @@ use crate::auth::NativeSQLAuthContext; use crate::config::NodeCubeServices; use crate::cubesql_utils::with_session; use crate::tokio_runtime_node; +use crate::utils::NonDebugInRelease; enum Sql4SqlQueryType { Regular, @@ -208,7 +209,7 @@ pub fn sql4sql(mut cx: FunctionContext) -> JsResult { let native_auth_ctx = Arc::new(NativeSQLAuthContext { user: Some(String::from("unknown")), superuser: false, - security_context, + security_context: NonDebugInRelease::from(security_context), }); let (deferred, promise) = cx.promise(); diff --git a/packages/cubejs-backend-native/src/utils.rs b/packages/cubejs-backend-native/src/utils.rs index 7cf7df46fa47e..37f1ab7404cf5 100644 --- a/packages/cubejs-backend-native/src/utils.rs +++ b/packages/cubejs-backend-native/src/utils.rs @@ -1,6 +1,8 @@ use cubesql::{compile::engine::df::scan::RecordBatch, sql::dataframe, CubeError}; use neon::prelude::*; use serde_json::Value; +use std::fmt::Debug; +use std::ops::{Deref, DerefMut}; #[inline(always)] pub fn call_method<'a, AS>( @@ -38,3 +40,45 @@ pub fn batch_to_rows(batch: RecordBatch) -> Result<(Value, Vec), CubeErro Ok((columns, rows)) } + +/// Allow skipping Debug output in release builds for specific field or type. +pub struct NonDebugInRelease(T); + +impl Debug for NonDebugInRelease { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + if cfg!(debug_assertions) { + self.0.fmt(f) + } else { + f.debug_struct("skipped in release build").finish() + } + } +} + +impl From for NonDebugInRelease { + fn from(value: T) -> Self { + Self(value) + } +} + +impl Deref for NonDebugInRelease { + type Target = T; + + fn deref(&self) -> &Self::Target { + &self.0 + } +} + +impl DerefMut for NonDebugInRelease { + fn deref_mut(&mut self) -> &mut Self::Target { + &mut self.0 + } +} + +impl Default for NonDebugInRelease +where + T: Default, +{ + fn default() -> Self { + Self(T::default()) + } +} diff --git a/packages/cubejs-backend-shared/CHANGELOG.md b/packages/cubejs-backend-shared/CHANGELOG.md index 16bb9b6c55535..76918fb80aa2c 100644 --- a/packages/cubejs-backend-shared/CHANGELOG.md +++ b/packages/cubejs-backend-shared/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +### Features + +- **snowflake-driver:** Introduce CUBEJS_DB_SNOWFLAKE_OAUTH_TOKEN env var / config option ([#9752](https://github.com/cube-js/cube/issues/9752)) ([1c66d3e](https://github.com/cube-js/cube/commit/1c66d3eeb8e138e13bef4411f60513de97dc15d4)) + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/shared diff --git a/packages/cubejs-backend-shared/package.json b/packages/cubejs-backend-shared/package.json index 6084ef1a40ffb..998a627719e5b 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.3.34", + "version": "1.3.35", "description": "Shared code for Cube.js backend packages", "main": "dist/src/index.js", "typings": "dist/src/index.d.ts", @@ -22,7 +22,7 @@ "author": "Cube Dev, Inc.", "license": "Apache-2.0", "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/bytes": "^3.1.5", "@types/cli-progress": "^3.9.1", "@types/decompress": "^4.2.7", diff --git a/packages/cubejs-backend-shared/src/env.ts b/packages/cubejs-backend-shared/src/env.ts index f3f37fd0c7d39..60b4e263ebdb7 100644 --- a/packages/cubejs-backend-shared/src/env.ts +++ b/packages/cubejs-backend-shared/src/env.ts @@ -1569,6 +1569,19 @@ const variables: Record any> = { ] ), + /** + * Snowflake OAuth token (string). + */ + snowflakeOAuthToken: ({ + dataSource + }: { + dataSource: string, + }) => ( + process.env[ + keyByDataSource('CUBEJS_DB_SNOWFLAKE_OAUTH_TOKEN', dataSource) + ] + ), + /** * Snowflake OAuth token path. */ diff --git a/packages/cubejs-base-driver/CHANGELOG.md b/packages/cubejs-base-driver/CHANGELOG.md index bf0c4fb91c7ea..43674bde6ec51 100644 --- a/packages/cubejs-base-driver/CHANGELOG.md +++ b/packages/cubejs-base-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/base-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/base-driver diff --git a/packages/cubejs-base-driver/package.json b/packages/cubejs-base-driver/package.json index f83dbc24048cd..7347c305f3486 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -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.3.34", + "@cubejs-backend/shared": "1.3.35", "@google-cloud/storage": "^7.13.0" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/jest": "^29", "@types/node": "^20", "jest": "^29", diff --git a/packages/cubejs-base-driver/src/BaseDriver.ts b/packages/cubejs-base-driver/src/BaseDriver.ts index efd4838015534..ba3f64b294722 100644 --- a/packages/cubejs-base-driver/src/BaseDriver.ts +++ b/packages/cubejs-base-driver/src/BaseDriver.ts @@ -54,6 +54,7 @@ import { PrimaryKeysQueryResult, ForeignKeysQueryResult, DatabaseStructure, + InformationSchemaColumn, } from './driver.interface'; /** @@ -427,28 +428,43 @@ export abstract class BaseDriver implements DriverInterface { return false; } - protected informationColumnsSchemaReducer(result: any, i: any): DatabaseStructure { - let schema = (result[i.table_schema] || {}); - const columns = (schema[i.table_name] || []); + protected informationColumnsSchemaReducer(result: DatabaseStructure, i: InformationSchemaColumn): DatabaseStructure { + if (!result[i.table_schema]) { + result[i.table_schema] = {}; + } + + if (!result[i.table_schema][i.table_name]) { + result[i.table_schema][i.table_name] = []; + } - columns.push({ + result[i.table_schema][i.table_name].push({ name: i.column_name, type: i.data_type, attributes: i.key_type ? ['primaryKey'] : [] }); - columns.sort(); - schema[i.table_name] = columns; - schema = sortByKeys(schema); - result[i.table_schema] = schema; + return result; + } - return sortByKeys(result); + protected informationColumnsSchemaSorter(data: InformationSchemaColumn[]) { + return data + .map((i) => ({ + ...i, + sortedKeyServiceField: `${i.table_schema}.${i.table_name}.${i.column_name}`, + })) + .sort((a, b) => a.sortedKeyServiceField.localeCompare(b.sortedKeyServiceField)); } - public tablesSchema(): Promise { + public async tablesSchema(): Promise { const query = this.informationSchemaQuery(); + const data: InformationSchemaColumn[] = await this.query(query, []); + + if (!data.length) { + return {}; + } - return this.query(query, []).then(data => data.reduce(this.informationColumnsSchemaReducer, {})); + const sortedData = this.informationColumnsSchemaSorter(data); + return sortedData.reduce(this.informationColumnsSchemaReducer, {}); } // Extended version of tablesSchema containing primary and foreign keys diff --git a/packages/cubejs-base-driver/src/driver.interface.ts b/packages/cubejs-base-driver/src/driver.interface.ts index 8f6b44181d589..571fe1ca3f802 100644 --- a/packages/cubejs-base-driver/src/driver.interface.ts +++ b/packages/cubejs-base-driver/src/driver.interface.ts @@ -212,6 +212,18 @@ export type ForeignKeysQueryResult = { target_column: string }; +export type InformationSchemaColumn = { + // eslint-disable-next-line camelcase + table_schema: string; + // eslint-disable-next-line camelcase + table_name: string; + // eslint-disable-next-line camelcase + column_name: string; + // eslint-disable-next-line camelcase + data_type: string; + [key: string]: string +}; + export type TableKeysFilter = { tableSchema: string, tableName: string[] diff --git a/packages/cubejs-bigquery-driver/CHANGELOG.md b/packages/cubejs-bigquery-driver/CHANGELOG.md index 13068d3728b65..287abe7865b45 100644 --- a/packages/cubejs-bigquery-driver/CHANGELOG.md +++ b/packages/cubejs-bigquery-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/bigquery-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 9ce54bab7ec88..edc0e02d3e662 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.3.34", + "version": "1.3.35", "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.3.34", + "@cubejs-backend/base-driver": "1.3.35", "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/shared": "1.3.35", "@google-cloud/bigquery": "^7.7.0", "@google-cloud/storage": "^7.13.0", "ramda": "^0.27.2" }, "devDependencies": { - "@cubejs-backend/testing-shared": "1.3.34", + "@cubejs-backend/testing-shared": "1.3.35", "@types/big.js": "^6.2.2", "@types/dedent": "^0.7.0", "@types/jest": "^29", diff --git a/packages/cubejs-bigquery-driver/src/BigQueryDriver.ts b/packages/cubejs-bigquery-driver/src/BigQueryDriver.ts index ec544c2bebfc3..832f6ba1443ab 100644 --- a/packages/cubejs-bigquery-driver/src/BigQueryDriver.ts +++ b/packages/cubejs-bigquery-driver/src/BigQueryDriver.ts @@ -202,7 +202,7 @@ export class BigQueryDriver extends BaseDriver implements DriverInterface { if (result.length) { return R.reduce( - this.informationColumnsSchemaReducer, {}, result[0] + this.informationColumnsSchemaReducer, {}, this.informationColumnsSchemaSorter(result[0]) ); } diff --git a/packages/cubejs-cli/CHANGELOG.md b/packages/cubejs-cli/CHANGELOG.md index 06358611db4b8..93d4b6eb80062 100644 --- a/packages/cubejs-cli/CHANGELOG.md +++ b/packages/cubejs-cli/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package cubejs-cli + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package cubejs-cli diff --git a/packages/cubejs-cli/package.json b/packages/cubejs-cli/package.json index 311895961ddb3..cf45fbd1afe42 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -30,10 +30,10 @@ "LICENSE" ], "dependencies": { - "@cubejs-backend/cloud": "1.3.34", + "@cubejs-backend/cloud": "1.3.35", "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/schema-compiler": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/schema-compiler": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "chalk": "^2.4.2", "cli-progress": "^3.10", "commander": "^2.19.0", @@ -50,8 +50,8 @@ "colors": "1.4.0" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/server": "1.3.34", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/server": "1.3.35", "@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 d6ed2a8801b97..0f66d624e094d 100644 --- a/packages/cubejs-clickhouse-driver/CHANGELOG.md +++ b/packages/cubejs-clickhouse-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/clickhouse-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 a85bb7bd44a5b..4e1d77771a2d9 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -28,16 +28,16 @@ }, "dependencies": { "@clickhouse/client": "^1.7.0", - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "moment": "^2.24.0", "sqlstring": "^2.3.1", "uuid": "^8.3.2" }, "license": "Apache-2.0", "devDependencies": { - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/testing-shared": "1.3.34", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/testing-shared": "1.3.35", "@types/jest": "^29", "jest": "^29", "typescript": "~5.2.2" diff --git a/packages/cubejs-client-core/CHANGELOG.md b/packages/cubejs-client-core/CHANGELOG.md index 86b1df862e40f..2066fd419e86e 100644 --- a/packages/cubejs-client-core/CHANGELOG.md +++ b/packages/cubejs-client-core/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-client/core + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-client/core diff --git a/packages/cubejs-client-core/package.json b/packages/cubejs-client-core/package.json index d42c6cb80540d..b63d8176c4130 100644 --- a/packages/cubejs-client-core/package.json +++ b/packages/cubejs-client-core/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-client/core", - "version": "1.3.34", + "version": "1.3.35", "engines": {}, "repository": { "type": "git", @@ -38,7 +38,7 @@ ], "license": "MIT", "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/jest": "^29", "@types/moment-range": "^4.0.0", "@types/ramda": "^0.27.34", diff --git a/packages/cubejs-client-dx/CHANGELOG.md b/packages/cubejs-client-dx/CHANGELOG.md index db06d6dd7fea7..34b46851824e0 100644 --- a/packages/cubejs-client-dx/CHANGELOG.md +++ b/packages/cubejs-client-dx/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-client/dx + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-client/dx diff --git a/packages/cubejs-client-dx/package.json b/packages/cubejs-client-dx/package.json index f5097c678c8a8..6bf19d8bdec08 100644 --- a/packages/cubejs-client-dx/package.json +++ b/packages/cubejs-client-dx/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-client/dx", - "version": "1.3.34", + "version": "1.3.35", "engines": {}, "repository": { "type": "git", diff --git a/packages/cubejs-client-ngx/CHANGELOG.md b/packages/cubejs-client-ngx/CHANGELOG.md index 207e33cb04004..2a4dc57f68aeb 100644 --- a/packages/cubejs-client-ngx/CHANGELOG.md +++ b/packages/cubejs-client-ngx/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-client/ngx + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-client/ngx diff --git a/packages/cubejs-client-ngx/package.json b/packages/cubejs-client-ngx/package.json index 4334d7cee451b..2544ad4374519 100644 --- a/packages/cubejs-client-ngx/package.json +++ b/packages/cubejs-client-ngx/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-client/ngx", - "version": "1.3.34", + "version": "1.3.35", "author": "Cube Dev, Inc.", "engines": {}, "repository": { diff --git a/packages/cubejs-client-react/CHANGELOG.md b/packages/cubejs-client-react/CHANGELOG.md index f9723146e30d5..6316acc2b00a9 100644 --- a/packages/cubejs-client-react/CHANGELOG.md +++ b/packages/cubejs-client-react/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-client/react + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-client/react diff --git a/packages/cubejs-client-react/package.json b/packages/cubejs-client-react/package.json index 942a0bbfcef74..de2050e7409da 100644 --- a/packages/cubejs-client-react/package.json +++ b/packages/cubejs-client-react/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-client/react", - "version": "1.3.34", + "version": "1.3.35", "author": "Cube Dev, Inc.", "license": "MIT", "engines": {}, @@ -24,7 +24,7 @@ ], "dependencies": { "@babel/runtime": "^7.1.2", - "@cubejs-client/core": "1.3.34", + "@cubejs-client/core": "1.3.35", "core-js": "^3.6.5", "ramda": "^0.27.2" }, diff --git a/packages/cubejs-client-vue/CHANGELOG.md b/packages/cubejs-client-vue/CHANGELOG.md index 9c4f50c08154d..c216dda9dc492 100644 --- a/packages/cubejs-client-vue/CHANGELOG.md +++ b/packages/cubejs-client-vue/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube.js/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-client/vue + ## [1.3.34](https://github.com/cube-js/cube.js/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-client/vue diff --git a/packages/cubejs-client-vue/package.json b/packages/cubejs-client-vue/package.json index ec9d4881975a6..38cdccb8b9f1a 100644 --- a/packages/cubejs-client-vue/package.json +++ b/packages/cubejs-client-vue/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-client/vue", - "version": "1.3.34", + "version": "1.3.35", "engines": {}, "repository": { "type": "git", @@ -28,7 +28,7 @@ "src" ], "dependencies": { - "@cubejs-client/core": "1.3.34", + "@cubejs-client/core": "1.3.35", "core-js": "^3.6.5", "ramda": "^0.27.2" }, diff --git a/packages/cubejs-client-vue3/CHANGELOG.md b/packages/cubejs-client-vue3/CHANGELOG.md index c6704621a075f..d90d97a37c8e0 100644 --- a/packages/cubejs-client-vue3/CHANGELOG.md +++ b/packages/cubejs-client-vue3/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube.js/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-client/vue3 + ## [1.3.34](https://github.com/cube-js/cube.js/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-client/vue3 diff --git a/packages/cubejs-client-vue3/package.json b/packages/cubejs-client-vue3/package.json index 7243f682a4837..8f094b5e8c527 100644 --- a/packages/cubejs-client-vue3/package.json +++ b/packages/cubejs-client-vue3/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-client/vue3", - "version": "1.3.34", + "version": "1.3.35", "engines": {}, "repository": { "type": "git", @@ -28,7 +28,7 @@ "src" ], "dependencies": { - "@cubejs-client/core": "1.3.34", + "@cubejs-client/core": "1.3.35", "@vue/compiler-sfc": "^3.0.11", "core-js": "^3.6.5", "flush-promises": "^1.0.2", diff --git a/packages/cubejs-client-ws-transport/CHANGELOG.md b/packages/cubejs-client-ws-transport/CHANGELOG.md index 819978d5f1a63..f968706f03817 100644 --- a/packages/cubejs-client-ws-transport/CHANGELOG.md +++ b/packages/cubejs-client-ws-transport/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-client/ws-transport + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-client/ws-transport diff --git a/packages/cubejs-client-ws-transport/package.json b/packages/cubejs-client-ws-transport/package.json index 388cd88fb5219..24ea3accc9be8 100644 --- a/packages/cubejs-client-ws-transport/package.json +++ b/packages/cubejs-client-ws-transport/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-client/ws-transport", - "version": "1.3.34", + "version": "1.3.35", "engines": {}, "repository": { "type": "git", @@ -20,7 +20,7 @@ }, "dependencies": { "@babel/runtime": "^7.1.2", - "@cubejs-client/core": "1.3.34", + "@cubejs-client/core": "1.3.35", "core-js": "^3.6.5", "isomorphic-ws": "^4.0.1", "ws": "^7.3.1" @@ -33,7 +33,7 @@ "@babel/core": "^7.3.3", "@babel/preset-env": "^7.3.1", "@babel/preset-typescript": "^7.12.1", - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/ws": "^7.2.9", "typescript": "~5.2.2" }, diff --git a/packages/cubejs-crate-driver/CHANGELOG.md b/packages/cubejs-crate-driver/CHANGELOG.md index 599dc4bcd9462..4da1018ab808e 100644 --- a/packages/cubejs-crate-driver/CHANGELOG.md +++ b/packages/cubejs-crate-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/crate-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 c5c11ce4b8ced..c799da3f44367 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.3.34", + "version": "1.3.35", "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/postgres-driver": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/postgres-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "pg": "^8.7.1" }, "license": "Apache-2.0", "devDependencies": { - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/testing-shared": "1.3.34", - "testcontainers": "^10.13.0", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/testing-shared": "1.3.35", + "testcontainers": "^10.28.0", "typescript": "~5.2.2" }, "publishConfig": { diff --git a/packages/cubejs-cubestore-driver/CHANGELOG.md b/packages/cubejs-cubestore-driver/CHANGELOG.md index 060ce2bdd8865..8300641a63f45 100644 --- a/packages/cubejs-cubestore-driver/CHANGELOG.md +++ b/packages/cubejs-cubestore-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/cubestore-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 28a84ce87b955..ef7122a40c16d 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -26,10 +26,10 @@ "lint:fix": "eslint --fix src/*.ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/cubestore": "1.3.34", - "@cubejs-backend/native": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/cubestore": "1.3.35", + "@cubejs-backend/native": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "csv-write-stream": "^2.0.0", "flatbuffers": "23.3.3", "fs-extra": "^9.1.0", @@ -41,7 +41,7 @@ "ws": "^7.4.3" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/csv-write-stream": "^2.0.0", "@types/generic-pool": "^3.8.2", "@types/jest": "^29", diff --git a/packages/cubejs-databricks-jdbc-driver/CHANGELOG.md b/packages/cubejs-databricks-jdbc-driver/CHANGELOG.md index 4510b9fe71cde..0722af660059b 100644 --- a/packages/cubejs-databricks-jdbc-driver/CHANGELOG.md +++ b/packages/cubejs-databricks-jdbc-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/databricks-jdbc-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 af0a78eff0d2a..c8531f6c62690 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.3.34", + "version": "1.3.35", "license": "Apache-2.0", "repository": { "type": "git", @@ -30,17 +30,17 @@ "bin" ], "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/jdbc-driver": "1.3.34", - "@cubejs-backend/schema-compiler": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/jdbc-driver": "1.3.35", + "@cubejs-backend/schema-compiler": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "node-fetch": "^2.6.1", "ramda": "^0.27.2", "source-map-support": "^0.5.19", "uuid": "^8.3.2" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/generic-pool": "^3.8.2", "@types/jest": "^29", "@types/node": "^20", diff --git a/packages/cubejs-dbt-schema-extension/CHANGELOG.md b/packages/cubejs-dbt-schema-extension/CHANGELOG.md index b48d11a0ca3bf..b4ec8a3036129 100644 --- a/packages/cubejs-dbt-schema-extension/CHANGELOG.md +++ b/packages/cubejs-dbt-schema-extension/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/dbt-schema-extension + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 edc0b6aa40c2a..20a05ef82e931 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.3.34", + "version": "1.3.35", "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.3.34", + "@cubejs-backend/schema-compiler": "1.3.35", "fs-extra": "^9.1.0", "inflection": "^1.12.0", "node-fetch": "^2.6.1" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/testing": "1.3.34", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/testing": "1.3.35", "@types/generic-pool": "^3.8.2", "@types/jest": "^29", "jest": "^29", diff --git a/packages/cubejs-docker/CHANGELOG.md b/packages/cubejs-docker/CHANGELOG.md index 362c4ad11e8b1..aee9381679eda 100644 --- a/packages/cubejs-docker/CHANGELOG.md +++ b/packages/cubejs-docker/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/docker + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/docker diff --git a/packages/cubejs-docker/package.json b/packages/cubejs-docker/package.json index 3d954d9ea8904..2b3989bccbd1d 100644 --- a/packages/cubejs-docker/package.json +++ b/packages/cubejs-docker/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/docker", - "version": "1.3.34", + "version": "1.3.35", "description": "Cube.js In Docker (virtual package)", "author": "Cube Dev, Inc.", "license": "Apache-2.0", @@ -9,35 +9,35 @@ "node": "^14.0.0 || ^16.0.0 || >=17.0.0" }, "dependencies": { - "@cubejs-backend/athena-driver": "1.3.34", - "@cubejs-backend/bigquery-driver": "1.3.34", - "@cubejs-backend/clickhouse-driver": "1.3.34", - "@cubejs-backend/crate-driver": "1.3.34", - "@cubejs-backend/databricks-jdbc-driver": "1.3.34", - "@cubejs-backend/dbt-schema-extension": "1.3.34", - "@cubejs-backend/dremio-driver": "1.3.34", - "@cubejs-backend/druid-driver": "1.3.34", - "@cubejs-backend/duckdb-driver": "1.3.34", - "@cubejs-backend/elasticsearch-driver": "1.3.34", - "@cubejs-backend/firebolt-driver": "1.3.34", - "@cubejs-backend/hive-driver": "1.3.34", - "@cubejs-backend/ksql-driver": "1.3.34", - "@cubejs-backend/materialize-driver": "1.3.34", - "@cubejs-backend/mongobi-driver": "1.3.34", - "@cubejs-backend/mssql-driver": "1.3.34", - "@cubejs-backend/mysql-driver": "1.3.34", - "@cubejs-backend/oracle-driver": "1.3.34", - "@cubejs-backend/pinot-driver": "1.3.34", - "@cubejs-backend/postgres-driver": "1.3.34", - "@cubejs-backend/prestodb-driver": "1.3.34", - "@cubejs-backend/questdb-driver": "1.3.34", - "@cubejs-backend/redshift-driver": "1.3.34", - "@cubejs-backend/server": "1.3.34", - "@cubejs-backend/snowflake-driver": "1.3.34", - "@cubejs-backend/sqlite-driver": "1.3.34", - "@cubejs-backend/trino-driver": "1.3.34", - "@cubejs-backend/vertica-driver": "1.3.34", - "cubejs-cli": "1.3.34", + "@cubejs-backend/athena-driver": "1.3.35", + "@cubejs-backend/bigquery-driver": "1.3.35", + "@cubejs-backend/clickhouse-driver": "1.3.35", + "@cubejs-backend/crate-driver": "1.3.35", + "@cubejs-backend/databricks-jdbc-driver": "1.3.35", + "@cubejs-backend/dbt-schema-extension": "1.3.35", + "@cubejs-backend/dremio-driver": "1.3.35", + "@cubejs-backend/druid-driver": "1.3.35", + "@cubejs-backend/duckdb-driver": "1.3.35", + "@cubejs-backend/elasticsearch-driver": "1.3.35", + "@cubejs-backend/firebolt-driver": "1.3.35", + "@cubejs-backend/hive-driver": "1.3.35", + "@cubejs-backend/ksql-driver": "1.3.35", + "@cubejs-backend/materialize-driver": "1.3.35", + "@cubejs-backend/mongobi-driver": "1.3.35", + "@cubejs-backend/mssql-driver": "1.3.35", + "@cubejs-backend/mysql-driver": "1.3.35", + "@cubejs-backend/oracle-driver": "1.3.35", + "@cubejs-backend/pinot-driver": "1.3.35", + "@cubejs-backend/postgres-driver": "1.3.35", + "@cubejs-backend/prestodb-driver": "1.3.35", + "@cubejs-backend/questdb-driver": "1.3.35", + "@cubejs-backend/redshift-driver": "1.3.35", + "@cubejs-backend/server": "1.3.35", + "@cubejs-backend/snowflake-driver": "1.3.35", + "@cubejs-backend/sqlite-driver": "1.3.35", + "@cubejs-backend/trino-driver": "1.3.35", + "@cubejs-backend/vertica-driver": "1.3.35", + "cubejs-cli": "1.3.35", "typescript": "~5.2.2" }, "resolutions": { diff --git a/packages/cubejs-dremio-driver/CHANGELOG.md b/packages/cubejs-dremio-driver/CHANGELOG.md index 4159c8acb9b8f..aa706d73673ec 100644 --- a/packages/cubejs-dremio-driver/CHANGELOG.md +++ b/packages/cubejs-dremio-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/dremio-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 7d4749a775180..c42dd0670168e 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -22,15 +22,15 @@ "lint:fix": "eslint driver/*.js" }, "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/schema-compiler": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/schema-compiler": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "axios": "^1.8.3", "sqlstring": "^2.3.1" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/testing-shared": "1.3.34", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/testing-shared": "1.3.35", "jest": "^29" }, "license": "Apache-2.0", diff --git a/packages/cubejs-druid-driver/CHANGELOG.md b/packages/cubejs-druid-driver/CHANGELOG.md index 70a586488cf0a..c7b0e7a9bc72c 100644 --- a/packages/cubejs-druid-driver/CHANGELOG.md +++ b/packages/cubejs-druid-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/druid-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 f755333bb52de..f4570c3acc068 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.3.34", + "version": "1.3.35", "license": "Apache-2.0", "repository": { "type": "git", @@ -28,18 +28,18 @@ "dist/src/*" ], "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/schema-compiler": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/schema-compiler": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "axios": "^1.8.3" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/generic-pool": "^3.8.2", "@types/jest": "^29", "@types/node": "^20", "jest": "^29", - "testcontainers": "^10.13.0", + "testcontainers": "^10.28.0", "typescript": "~5.2.2" }, "publishConfig": { diff --git a/packages/cubejs-duckdb-driver/CHANGELOG.md b/packages/cubejs-duckdb-driver/CHANGELOG.md index bbad57bb496dd..a6acde122b332 100644 --- a/packages/cubejs-duckdb-driver/CHANGELOG.md +++ b/packages/cubejs-duckdb-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/duckdb-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 85a4f1d0f3066..9c123f0a21d06 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.3.34", + "version": "1.3.35", "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.3.34", - "@cubejs-backend/schema-compiler": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/schema-compiler": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "duckdb": "^1.3.1" }, "license": "Apache-2.0", "devDependencies": { - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/testing-shared": "1.3.34", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/testing-shared": "1.3.35", "@types/jest": "^29", "@types/node": "^20", "jest": "^29", diff --git a/packages/cubejs-elasticsearch-driver/CHANGELOG.md b/packages/cubejs-elasticsearch-driver/CHANGELOG.md index 936dc43da692f..0effd0be40685 100644 --- a/packages/cubejs-elasticsearch-driver/CHANGELOG.md +++ b/packages/cubejs-elasticsearch-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/elasticsearch-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 21a1286f632b9..9edcffcf05175 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -23,17 +23,17 @@ "driver" ], "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "@elastic/elasticsearch": "7.12.0", "sqlstring": "^2.3.1" }, "license": "Apache-2.0", "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/jest": "^29", "jest": "^29", - "testcontainers": "^10.10.4" + "testcontainers": "^10.28.0" }, "eslintConfig": { "extends": "../cubejs-linter" diff --git a/packages/cubejs-firebolt-driver/CHANGELOG.md b/packages/cubejs-firebolt-driver/CHANGELOG.md index 2809a9f3eb65e..ca06c1f849dcc 100644 --- a/packages/cubejs-firebolt-driver/CHANGELOG.md +++ b/packages/cubejs-firebolt-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/firebolt-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 cadc8a043c54d..eb3e3c0632dfc 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.3.34", + "version": "1.3.35", "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.3.34", - "@cubejs-backend/schema-compiler": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/schema-compiler": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "firebolt-sdk": "1.10.0" }, "license": "Apache-2.0", "devDependencies": { - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/testing-shared": "1.3.34", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/testing-shared": "1.3.35", "typescript": "~5.2.2" }, "publishConfig": { diff --git a/packages/cubejs-hive-driver/CHANGELOG.md b/packages/cubejs-hive-driver/CHANGELOG.md index e0ebb5c806b75..1e4b168da31b5 100644 --- a/packages/cubejs-hive-driver/CHANGELOG.md +++ b/packages/cubejs-hive-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/hive-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 edb8dc1374a22..863440c06bca3 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.3.34", + "version": "1.3.35", "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.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "generic-pool": "^3.8.2", "jshs2": "^0.4.4", "sasl-plain": "^0.1.0", @@ -28,7 +28,7 @@ }, "license": "Apache-2.0", "devDependencies": { - "@cubejs-backend/linter": "1.3.34" + "@cubejs-backend/linter": "1.3.35" }, "publishConfig": { "access": "public" diff --git a/packages/cubejs-jdbc-driver/CHANGELOG.md b/packages/cubejs-jdbc-driver/CHANGELOG.md index 452e8e2db7720..d848500a7e2f1 100644 --- a/packages/cubejs-jdbc-driver/CHANGELOG.md +++ b/packages/cubejs-jdbc-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/jdbc-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 913c6629c31cc..2cc347f89e62d 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -25,9 +25,9 @@ "index.js" ], "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", "@cubejs-backend/node-java-maven": "^0.1.3", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/shared": "1.3.35", "generic-pool": "^3.8.2", "sqlstring": "^2.3.0" }, @@ -43,7 +43,7 @@ "testEnvironment": "node" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/generic-pool": "^3.8.2", "@types/node": "^20", "@types/sqlstring": "^2.3.0", diff --git a/packages/cubejs-ksql-driver/CHANGELOG.md b/packages/cubejs-ksql-driver/CHANGELOG.md index 44d5d5b5778c3..7c5226ca9fe08 100644 --- a/packages/cubejs-ksql-driver/CHANGELOG.md +++ b/packages/cubejs-ksql-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/ksql-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) ### Bug Fixes diff --git a/packages/cubejs-ksql-driver/package.json b/packages/cubejs-ksql-driver/package.json index 017456c09cd46..abd2620562321 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.3.34", + "version": "1.3.35", "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.3.34", - "@cubejs-backend/schema-compiler": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/schema-compiler": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "async-mutex": "0.3.2", "axios": "^1.8.3", "kafkajs": "^2.2.3", @@ -41,7 +41,7 @@ "extends": "../cubejs-linter" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "typescript": "~5.2.2" } } diff --git a/packages/cubejs-linter/CHANGELOG.md b/packages/cubejs-linter/CHANGELOG.md index 74eb6f0072dca..5a8fb99c14511 100644 --- a/packages/cubejs-linter/CHANGELOG.md +++ b/packages/cubejs-linter/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/linter + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/linter diff --git a/packages/cubejs-linter/package.json b/packages/cubejs-linter/package.json index 688d26e195e78..403e64f338320 100644 --- a/packages/cubejs-linter/package.json +++ b/packages/cubejs-linter/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/linter", "description": "Cube.js ESLint (virtual package) for linting code", "author": "Cube Dev, Inc.", - "version": "1.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", diff --git a/packages/cubejs-materialize-driver/CHANGELOG.md b/packages/cubejs-materialize-driver/CHANGELOG.md index fc984627fd7cc..06586fb1d0624 100644 --- a/packages/cubejs-materialize-driver/CHANGELOG.md +++ b/packages/cubejs-materialize-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/materialize-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 1aa6565c11717..1963c40109e23 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -27,17 +27,17 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/postgres-driver": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/postgres-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "@types/pg": "^8.6.0", "pg": "^8.6.0", "semver": "^7.6.3" }, "license": "Apache-2.0", "devDependencies": { - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/testing": "1.3.34", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/testing": "1.3.35", "typescript": "~5.2.2" }, "publishConfig": { diff --git a/packages/cubejs-materialize-driver/src/MaterializeDriver.ts b/packages/cubejs-materialize-driver/src/MaterializeDriver.ts index b659dd365adf2..51aca7118a432 100644 --- a/packages/cubejs-materialize-driver/src/MaterializeDriver.ts +++ b/packages/cubejs-materialize-driver/src/MaterializeDriver.ts @@ -10,6 +10,7 @@ import { DatabaseStructure, DownloadTableMemoryData, IndexesSQL, + InformationSchemaColumn, StreamOptions, StreamTableDataWithTypes, TableStructure @@ -173,11 +174,13 @@ export class MaterializeDriver extends PostgresDriver { return version.split(' ')[0]; } - public async tablesSchema(): Promise { + public override async tablesSchema(): Promise { const version = await this.getMaterializeVersion(); const query = this.informationSchemaQueryWithFilter(version); + const data: InformationSchemaColumn[] = await this.query(query, []); + const sortedData = this.informationColumnsSchemaSorter(data); - return this.query(query, []).then(data => data.reduce(this.informationColumnsSchemaReducer, {})); + return sortedData.reduce(this.informationColumnsSchemaReducer, {}); } protected async* asyncFetcher(conn: PoolClient, cursorId: string): AsyncGenerator { diff --git a/packages/cubejs-mongobi-driver/CHANGELOG.md b/packages/cubejs-mongobi-driver/CHANGELOG.md index aa38f5de7eda5..e0b6b802741b0 100644 --- a/packages/cubejs-mongobi-driver/CHANGELOG.md +++ b/packages/cubejs-mongobi-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/mongobi-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 af5d65d4cdfa6..b38b7180d9861 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.3.34", + "version": "1.3.35", "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.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "@types/node": "^20", "generic-pool": "^3.8.2", "moment": "^2.29.1", @@ -39,9 +39,9 @@ "access": "public" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/generic-pool": "^3.8.2", - "testcontainers": "^10.13.0", + "testcontainers": "^10.28.0", "typescript": "~5.2.2" }, "jest": { diff --git a/packages/cubejs-mssql-driver/CHANGELOG.md b/packages/cubejs-mssql-driver/CHANGELOG.md index 6f407fb796aa5..759b65361efee 100644 --- a/packages/cubejs-mssql-driver/CHANGELOG.md +++ b/packages/cubejs-mssql-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/mssql-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 a51e7df3f59b6..07d20fc3731ec 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -25,8 +25,8 @@ "lint:fix": "eslint --fix src/* --ext .ts,.js" }, "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "mssql": "^11.0.1" }, "devDependencies": { diff --git a/packages/cubejs-mysql-aurora-serverless-driver/CHANGELOG.md b/packages/cubejs-mysql-aurora-serverless-driver/CHANGELOG.md index 44cae27a4730c..676c37d2f3c77 100644 --- a/packages/cubejs-mysql-aurora-serverless-driver/CHANGELOG.md +++ b/packages/cubejs-mysql-aurora-serverless-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/mysql-aurora-serverless-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 6e2fe9311ab19..c693c1ba17736 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -21,18 +21,18 @@ "lint": "eslint driver/*.js test/*.js" }, "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "@types/mysql": "^2.15.15", "aws-sdk": "^2.787.0", "data-api-client": "^1.1.0" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/data-api-client": "^1.2.1", "@types/jest": "^29", "jest": "^29", - "testcontainers": "^10.10.4" + "testcontainers": "^10.28.0" }, "license": "Apache-2.0", "publishConfig": { diff --git a/packages/cubejs-mysql-driver/CHANGELOG.md b/packages/cubejs-mysql-driver/CHANGELOG.md index 651762e5956f9..49242a3d43bba 100644 --- a/packages/cubejs-mysql-driver/CHANGELOG.md +++ b/packages/cubejs-mysql-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/mysql-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 b0ed8008c6515..330256403cdff 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -27,20 +27,20 @@ "lint:fix": "eslint --fix src/* test/* --ext .ts,.js" }, "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "generic-pool": "^3.8.2", "mysql": "^2.18.1" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/testing-shared": "1.3.34", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/testing-shared": "1.3.35", "@types/generic-pool": "^3.8.2", "@types/jest": "^29", "@types/mysql": "^2.15.21", "jest": "^29", "stream-to-array": "^2.3.0", - "testcontainers": "^10.13.0", + "testcontainers": "^10.28.0", "typescript": "~5.2.2" }, "eslintConfig": { diff --git a/packages/cubejs-oracle-driver/CHANGELOG.md b/packages/cubejs-oracle-driver/CHANGELOG.md index 534d3354c6ad2..9beffa0faca8a 100644 --- a/packages/cubejs-oracle-driver/CHANGELOG.md +++ b/packages/cubejs-oracle-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/oracle-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 e82adbd05e997..7c51e812859cc 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.3.34", + "version": "1.3.35", "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.3.34", + "@cubejs-backend/base-driver": "1.3.35", "ramda": "^0.27.0" }, "optionalDependencies": { diff --git a/packages/cubejs-pinot-driver/CHANGELOG.md b/packages/cubejs-pinot-driver/CHANGELOG.md index 1517dcbae3277..19b555992cbe1 100644 --- a/packages/cubejs-pinot-driver/CHANGELOG.md +++ b/packages/cubejs-pinot-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/pinot-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/pinot-driver diff --git a/packages/cubejs-pinot-driver/package.json b/packages/cubejs-pinot-driver/package.json index d66cd7592235c..79aa77583685b 100644 --- a/packages/cubejs-pinot-driver/package.json +++ b/packages/cubejs-pinot-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/pinot-driver", "description": "Cube.js Pinot database driver", "author": "Julian Ronsse, InTheMemory, Cube Dev, Inc.", - "version": "1.3.34", + "version": "1.3.35", "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.3.34", - "@cubejs-backend/schema-compiler": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/schema-compiler": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "node-fetch": "^2.6.1", "ramda": "^0.27.2", "sqlstring": "^2.3.3" @@ -39,11 +39,11 @@ "access": "public" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/jest": "^29", "jest": "^29", "should": "^13.2.3", - "testcontainers": "^10.13.0", + "testcontainers": "^10.28.0", "typescript": "~5.2.2" }, "eslintConfig": { diff --git a/packages/cubejs-playground/CHANGELOG.md b/packages/cubejs-playground/CHANGELOG.md index 399a674194a89..830ef852791bd 100644 --- a/packages/cubejs-playground/CHANGELOG.md +++ b/packages/cubejs-playground/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-client/playground + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-client/playground diff --git a/packages/cubejs-playground/package.json b/packages/cubejs-playground/package.json index c40beafd3199f..49e8adecd1c70 100644 --- a/packages/cubejs-playground/package.json +++ b/packages/cubejs-playground/package.json @@ -1,7 +1,7 @@ { "name": "@cubejs-client/playground", "author": "Cube Dev, Inc.", - "version": "1.3.34", + "version": "1.3.35", "engines": {}, "repository": { "type": "git", @@ -68,8 +68,8 @@ "@ant-design/compatible": "^1.0.1", "@ant-design/icons": "^5.3.5", "@cube-dev/ui-kit": "0.52.3", - "@cubejs-client/core": "1.3.34", - "@cubejs-client/react": "1.3.34", + "@cubejs-client/core": "1.3.35", + "@cubejs-client/react": "1.3.35", "@types/flexsearch": "^0.7.3", "@types/node": "^20", "@types/react": "^18.3.4", diff --git a/packages/cubejs-postgres-driver/CHANGELOG.md b/packages/cubejs-postgres-driver/CHANGELOG.md index 3f3cfc1e9555f..f9a215255b24d 100644 --- a/packages/cubejs-postgres-driver/CHANGELOG.md +++ b/packages/cubejs-postgres-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/postgres-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 32b154d559d03..380849498f152 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.3.34", + "version": "1.3.35", "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.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "@types/pg": "^8.6.0", "@types/pg-query-stream": "^1.0.3", "moment": "^2.24.0", @@ -37,9 +37,9 @@ }, "license": "Apache-2.0", "devDependencies": { - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/testing-shared": "1.3.34", - "testcontainers": "^10.13.0", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/testing-shared": "1.3.35", + "testcontainers": "^10.28.0", "typescript": "~5.2.2" }, "publishConfig": { diff --git a/packages/cubejs-prestodb-driver/CHANGELOG.md b/packages/cubejs-prestodb-driver/CHANGELOG.md index 17be958e75552..c83bef485931a 100644 --- a/packages/cubejs-prestodb-driver/CHANGELOG.md +++ b/packages/cubejs-prestodb-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/prestodb-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 c9988b79ab708..5f3319c331c44 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.3.34", + "version": "1.3.35", "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.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "presto-client": "^1.1.0", "ramda": "^0.27.0", "sqlstring": "^2.3.1" @@ -38,11 +38,11 @@ "access": "public" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/jest": "^29", "jest": "^29", "should": "^13.2.3", - "testcontainers": "^10.13.0", + "testcontainers": "^10.28.0", "typescript": "~5.2.2" }, "eslintConfig": { diff --git a/packages/cubejs-query-orchestrator/CHANGELOG.md b/packages/cubejs-query-orchestrator/CHANGELOG.md index 8fa8a2aa7779b..e443a72c31b8c 100644 --- a/packages/cubejs-query-orchestrator/CHANGELOG.md +++ b/packages/cubejs-query-orchestrator/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/query-orchestrator + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 a747c400199ab..8d800e1e1b02a 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -29,16 +29,16 @@ "dist/src/*" ], "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/cubestore-driver": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/cubestore-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "csv-write-stream": "^2.0.0", "generic-pool": "^3.8.2", "lru-cache": "^11.1.0", "ramda": "^0.27.2" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/generic-pool": "^3.8.2", "@types/jest": "^29", "@types/node": "^20", diff --git a/packages/cubejs-questdb-driver/CHANGELOG.md b/packages/cubejs-questdb-driver/CHANGELOG.md index 74ec2e14028b6..9a278e0eb5c1f 100644 --- a/packages/cubejs-questdb-driver/CHANGELOG.md +++ b/packages/cubejs-questdb-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/questdb-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 e56b96c231ac2..5a5d4abdae567 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.3.34", + "version": "1.3.35", "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.3.34", - "@cubejs-backend/schema-compiler": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/schema-compiler": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "@types/pg": "^8.6.0", "moment": "^2.24.0", "pg": "^8.7.0", @@ -37,9 +37,9 @@ }, "license": "Apache-2.0", "devDependencies": { - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/testing-shared": "1.3.34", - "testcontainers": "^10.13.0", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/testing-shared": "1.3.35", + "testcontainers": "^10.28.0", "typescript": "~5.2.2" }, "publishConfig": { diff --git a/packages/cubejs-redshift-driver/CHANGELOG.md b/packages/cubejs-redshift-driver/CHANGELOG.md index 2288079a03fbe..258cebe19f4e0 100644 --- a/packages/cubejs-redshift-driver/CHANGELOG.md +++ b/packages/cubejs-redshift-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/redshift-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 dc0e293664014..e35228164bd09 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -25,13 +25,13 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/postgres-driver": "1.3.34", - "@cubejs-backend/shared": "1.3.34" + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/postgres-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35" }, "license": "Apache-2.0", "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "typescript": "~5.2.2" }, "publishConfig": { diff --git a/packages/cubejs-redshift-driver/src/RedshiftDriver.ts b/packages/cubejs-redshift-driver/src/RedshiftDriver.ts index 0b7e2ca0a4e8e..e943cb46a0143 100644 --- a/packages/cubejs-redshift-driver/src/RedshiftDriver.ts +++ b/packages/cubejs-redshift-driver/src/RedshiftDriver.ts @@ -10,6 +10,7 @@ import { DatabaseStructure, DownloadTableCSVData, DriverCapabilities, + InformationSchemaColumn, QueryColumnsResult, QuerySchemasResult, QueryTablesResult, @@ -137,7 +138,9 @@ export class RedshiftDriver extends PostgresDriver */ public override async tablesSchema(): Promise { const query = this.informationSchemaQuery(); - const tablesSchema = await this.query(query, []).then(data => data.reduce(this.informationColumnsSchemaReducer, {})); + const data: InformationSchemaColumn[] = await this.query(query, []); + const tablesSchema = this.informationColumnsSchemaSorter(data) + .reduce(this.informationColumnsSchemaReducer, {}); const allSchemas = await this.getSchemas(); const externalSchemas = allSchemas.filter(s => !tablesSchema[s.schema_name]).map(s => s.schema_name); diff --git a/packages/cubejs-schema-compiler/CHANGELOG.md b/packages/cubejs-schema-compiler/CHANGELOG.md index a4646cc66198c..5c158744a464e 100644 --- a/packages/cubejs-schema-compiler/CHANGELOG.md +++ b/packages/cubejs-schema-compiler/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +### Bug Fixes + +- **schema-compiler:** Avoid ambiguous dimension column mappings for ClickHouse queries ([#9674](https://github.com/cube-js/cube/issues/9674)) ([ea2a59f](https://github.com/cube-js/cube/commit/ea2a59fa708e8739f1c6052ac9896f0d01819470)) + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) ### Bug Fixes diff --git a/packages/cubejs-schema-compiler/package.json b/packages/cubejs-schema-compiler/package.json index 35fbccdd83984..c79d446e024c9 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.3.34", + "version": "1.3.35", "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.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/native": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "antlr4ts": "0.5.0-alpha.4", "camelcase": "^6.2.0", "cron-parser": "^4.9.0", @@ -60,8 +60,8 @@ }, "devDependencies": { "@clickhouse/client": "^1.7.0", - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/query-orchestrator": "1.3.34", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/query-orchestrator": "1.3.35", "@types/babel__code-frame": "^7.0.6", "@types/babel__generator": "^7.6.8", "@types/babel__traverse": "^7.20.5", @@ -77,10 +77,10 @@ "mssql": "^10.0.2", "mysql": "^2.18.1", "node-fetch": "2", - "pg-promise": "^10.5.2", + "pg-promise": "^11.5.5", "source-map-support": "^0.5.19", "sqlstring": "^2.3.1", - "testcontainers": "^10.13.0", + "testcontainers": "^10.28.0", "typescript": "~5.2.2" }, "license": "Apache-2.0", diff --git a/packages/cubejs-schema-compiler/src/adapter/ClickHouseQuery.ts b/packages/cubejs-schema-compiler/src/adapter/ClickHouseQuery.ts index 8c542334500c3..8c3cdaedea6b1 100644 --- a/packages/cubejs-schema-compiler/src/adapter/ClickHouseQuery.ts +++ b/packages/cubejs-schema-compiler/src/adapter/ClickHouseQuery.ts @@ -240,6 +240,17 @@ export class ClickHouseQuery extends BaseQuery { return `ALTER TABLE ${tableName} ADD INDEX ${indexName} (${escapedColumns.join(', ')}) TYPE minmax GRANULARITY 1`; } + public dimensionColumns(cubeAlias) { + // For the top-level SELECT statement, explicitly set the column alias. + // Clickhouse sometimes includes the "q_0" prefix in the column name, and this + // leads to errors during the result mapping. + if (cubeAlias === 'q_0') { + return this.dimensionAliasNames().map(alias => `${cubeAlias}.${alias} ${alias}`); + } else { + return super.dimensionColumns(cubeAlias); + } + } + public sqlTemplates() { const templates = super.sqlTemplates(); templates.functions.DATETRUNC = 'DATE_TRUNC({{ args_concat }})'; diff --git a/packages/cubejs-schema-compiler/test/integration/clickhouse/complex-joins.test.ts b/packages/cubejs-schema-compiler/test/integration/clickhouse/complex-joins.test.ts new file mode 100644 index 0000000000000..b830c27ab8d62 --- /dev/null +++ b/packages/cubejs-schema-compiler/test/integration/clickhouse/complex-joins.test.ts @@ -0,0 +1,210 @@ +import { prepareJsCompiler } from '../../unit/PrepareCompiler'; +import { ClickHouseDbRunner } from './ClickHouseDbRunner'; + +describe('ClickHouse complex joins', () => { + jest.setTimeout(20 * 1000); + + const dbRunner = new ClickHouseDbRunner(); + + afterAll(async () => { + await dbRunner.tearDown(); + }); + + const { compiler, joinGraph, cubeEvaluator } = prepareJsCompiler(` + cube(\`Acube\`, { + sql: \`SELECT * FROM (SELECT 1 as id, 'Category A' as category, 10 as value UNION ALL + SELECT 2, 'Category B', 20 UNION ALL + SELECT 3, 'Category C', 30) as t\`, + + joins: { + Bcube: { + relationship: \`one_to_many\`, + sql: \`\${Acube}.id = \${Bcube}.id\` + }, + Ccube: { + relationship: \`one_to_many\`, + sql: \`\${Acube}.id = \${Ccube}.id\` + }, + }, + + measures: { + AcubeCount: { + type: \`count\`, + }, + AcubeTotalValue: { + type: \`sum\`, + sql: \`value\` + }, + BcubeTotalValue: { + sql: \`\${Bcube.totalValue}\`, + type: \`number\` + }, + CcubeTotalAmount: { + sql: \`\${Ccube.totalAmount}\`, + type: \`number\` + }, + }, + + dimensions: { + id: { + sql: \`id\`, + type: \`number\`, + primaryKey: true, + shown: true, + title: \`id\` + }, + category: { + sql: \`category\`, + type: \`string\` + } + } + }); + + cube(\`Bcube\`, { + sql: \`SELECT 1 as id, 'Bgroup1' as groupName, 50 as value UNION ALL + SELECT 2, 'Bgroup2', 60 UNION ALL + SELECT 3, 'Bgroup3', 70\`, + + measures: { + count: { + type: \`count\` + }, + totalValue: { + type: \`sum\`, + sql: \`value\` + } + }, + + dimensions: { + id: { + sql: \`id\`, + type: \`number\`, + primaryKey: true + }, + groupName: { + sql: \`groupName\`, + type: \`string\` + } + } + }); + + cube(\`Ccube\`, { + sql: \`SELECT 1 as id, 'Ctype1' as type, 15 as amount UNION ALL + SELECT 2, 'Ctype2', 25 UNION ALL + SELECT 3, 'Ctype3', 35\`, + + measures: { + count: { + type: \`count\` + }, + totalAmount: { + type: \`sum\`, + sql: \`amount\` + } + }, + + dimensions: { + id: { + sql: \`id\`, + type: \`number\`, + primaryKey: true, + shown: true + }, + type: { + sql: \`type\`, + type: \`string\` + } + } + }); + `); + + it('query with 1 cube join', async () => dbRunner.runQueryTest( + { + dimensions: [ + 'Acube.category', + 'Acube.id' + ], + measures: [ + 'Acube.AcubeCount', + 'Acube.AcubeTotalValue', + 'Acube.BcubeTotalValue' + ], + order: [{ + id: 'Acube.id', + desc: false + }], + queryType: 'multi' + }, + [ + { + acube__category: 'Category A', + acube__id: '1', + acube___acube_count: '1', + acube___acube_total_value: '10', + acube___bcube_total_value: '50', + }, + { + acube__category: 'Category B', + acube__id: '2', + acube___acube_count: '1', + acube___acube_total_value: '20', + acube___bcube_total_value: '60', + }, + { + acube__category: 'Category C', + acube__id: '3', + acube___acube_count: '1', + acube___acube_total_value: '30', + acube___bcube_total_value: '70', + } + ], + { joinGraph, cubeEvaluator, compiler } + )); + + it('query with 2 cube joins', async () => dbRunner.runQueryTest( + { + dimensions: [ + 'Acube.category', + 'Acube.id' + ], + measures: [ + 'Acube.AcubeCount', + 'Acube.AcubeTotalValue', + 'Acube.BcubeTotalValue', + 'Acube.CcubeTotalAmount' + ], + order: [{ + id: 'Acube.id', + desc: false + }], + queryType: 'multi' + }, + [ + { + acube__category: 'Category A', + acube__id: '1', + acube___acube_count: '1', + acube___acube_total_value: '10', + acube___bcube_total_value: '50', + acube___ccube_total_amount: '15', + }, + { + acube__category: 'Category B', + acube__id: '2', + acube___acube_count: '1', + acube___acube_total_value: '20', + acube___bcube_total_value: '60', + acube___ccube_total_amount: '25', + }, + { + acube__category: 'Category C', + acube__id: '3', + acube___acube_count: '1', + acube___acube_total_value: '30', + acube___bcube_total_value: '70', + acube___ccube_total_amount: '35', + } + ], + { joinGraph, cubeEvaluator, compiler } + )); +}); diff --git a/packages/cubejs-server-core/CHANGELOG.md b/packages/cubejs-server-core/CHANGELOG.md index 401cc4e4c2e38..b85ad42f93257 100644 --- a/packages/cubejs-server-core/CHANGELOG.md +++ b/packages/cubejs-server-core/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/server-core + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/server-core diff --git a/packages/cubejs-server-core/package.json b/packages/cubejs-server-core/package.json index 7b6c1ce0ab034..08a9dd91cf154 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.3.34", + "version": "1.3.35", "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.3.34", - "@cubejs-backend/cloud": "1.3.34", + "@cubejs-backend/api-gateway": "1.3.35", + "@cubejs-backend/cloud": "1.3.35", "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/native": "1.3.34", - "@cubejs-backend/query-orchestrator": "1.3.34", - "@cubejs-backend/schema-compiler": "1.3.34", - "@cubejs-backend/shared": "1.3.34", - "@cubejs-backend/templates": "1.3.34", + "@cubejs-backend/native": "1.3.35", + "@cubejs-backend/query-orchestrator": "1.3.35", + "@cubejs-backend/schema-compiler": "1.3.35", + "@cubejs-backend/shared": "1.3.35", + "@cubejs-backend/templates": "1.3.35", "codesandbox-import-utils": "^2.1.12", "cross-spawn": "^7.0.1", "fs-extra": "^8.1.0", @@ -59,9 +59,9 @@ "ws": "^7.5.3" }, "devDependencies": { - "@cubejs-backend/cubestore-driver": "1.3.34", - "@cubejs-backend/linter": "1.3.34", - "@cubejs-client/playground": "1.3.34", + "@cubejs-backend/cubestore-driver": "1.3.35", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-client/playground": "1.3.35", "@types/cross-spawn": "^6.0.2", "@types/express": "^4.17.21", "@types/fs-extra": "^9.0.8", diff --git a/packages/cubejs-server/CHANGELOG.md b/packages/cubejs-server/CHANGELOG.md index 7cba240655077..f2acef07765ac 100644 --- a/packages/cubejs-server/CHANGELOG.md +++ b/packages/cubejs-server/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/server + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/server diff --git a/packages/cubejs-server/package.json b/packages/cubejs-server/package.json index eee2e2451ec66..72bf319431169 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.3.34", + "version": "1.3.35", "types": "index.d.ts", "repository": { "type": "git", @@ -40,11 +40,11 @@ "jest:shapshot": "jest --updateSnapshot test" }, "dependencies": { - "@cubejs-backend/cubestore-driver": "1.3.34", + "@cubejs-backend/cubestore-driver": "1.3.35", "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/native": "1.3.34", - "@cubejs-backend/server-core": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/native": "1.3.35", + "@cubejs-backend/server-core": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "@oclif/color": "^1.0.0", "@oclif/command": "^1.8.13", "@oclif/config": "^1.18.2", @@ -61,8 +61,8 @@ "ws": "^7.1.2" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/query-orchestrator": "1.3.34", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/query-orchestrator": "1.3.35", "@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 c8b444380752f..07503232aed29 100644 --- a/packages/cubejs-snowflake-driver/CHANGELOG.md +++ b/packages/cubejs-snowflake-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +### Features + +- **snowflake-driver:** Introduce CUBEJS_DB_SNOWFLAKE_OAUTH_TOKEN env var / config option ([#9752](https://github.com/cube-js/cube/issues/9752)) ([1c66d3e](https://github.com/cube-js/cube/commit/1c66d3eeb8e138e13bef4411f60513de97dc15d4)) + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 196565f47b40c..2dcf217d1848c 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.3.34", + "version": "1.3.35", "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.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "date-fns-timezone": "^0.1.4", "snowflake-sdk": "^2.0.3" }, @@ -38,7 +38,7 @@ "extends": "../cubejs-linter" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "typescript": "~5.2.2" } } diff --git a/packages/cubejs-snowflake-driver/src/SnowflakeDriver.ts b/packages/cubejs-snowflake-driver/src/SnowflakeDriver.ts index 02e4ab3ec7d6d..298da844ba344 100644 --- a/packages/cubejs-snowflake-driver/src/SnowflakeDriver.ts +++ b/packages/cubejs-snowflake-driver/src/SnowflakeDriver.ts @@ -153,6 +153,7 @@ interface SnowflakeDriverOptions { clientSessionKeepAlive?: boolean, database?: string, authenticator?: string, + oauthToken?: string, oauthTokenPath?: string, token?: string, privateKeyPath?: string, @@ -189,7 +190,7 @@ export class SnowflakeDriver extends BaseDriver implements DriverInterface { /** * Returns the configurable driver options * Note: It returns the unprefixed option names. - * In case of using multisources options need to be prefixed manually. + * In case of using multi-sources options need to be prefixed manually. */ public static driverEnvVariables() { return [ @@ -202,6 +203,7 @@ export class SnowflakeDriver extends BaseDriver implements DriverInterface { 'CUBEJS_DB_SNOWFLAKE_ROLE', 'CUBEJS_DB_SNOWFLAKE_CLIENT_SESSION_KEEP_ALIVE', 'CUBEJS_DB_SNOWFLAKE_AUTHENTICATOR', + 'CUBEJS_DB_SNOWFLAKE_OAUTH_TOKEN', 'CUBEJS_DB_SNOWFLAKE_OAUTH_TOKEN_PATH', 'CUBEJS_DB_SNOWFLAKE_HOST', 'CUBEJS_DB_SNOWFLAKE_PRIVATE_KEY', @@ -286,6 +288,7 @@ export class SnowflakeDriver extends BaseDriver implements DriverInterface { username: getEnv('dbUser', { dataSource }), password: getEnv('dbPass', { dataSource }), authenticator: getEnv('snowflakeAuthenticator', { dataSource }), + oauthToken: getEnv('snowflakeOAuthToken', { dataSource }), oauthTokenPath: getEnv('snowflakeOAuthTokenPath', { dataSource }), privateKeyPath: getEnv('snowflakePrivateKeyPath', { dataSource }), privateKeyPass: getEnv('snowflakePrivateKeyPass', { dataSource }), @@ -423,12 +426,39 @@ export class SnowflakeDriver extends BaseDriver implements DriverInterface { return token.trim(); } - private async createConnection() { + private async prepareConnectOptions(): Promise { + const config: Record = { + account: this.config.account, + region: this.config.region, + host: this.config.host, + application: this.config.application, + authenticator: this.config.authenticator, + clientSessionKeepAlive: this.config.clientSessionKeepAlive, + database: this.config.database, + warehouse: this.config.warehouse, + role: this.config.role, + resultPrefetch: this.config.resultPrefetch, + }; + if (this.config.authenticator?.toUpperCase() === 'OAUTH') { - this.config.token = await this.readOAuthToken(); + config.token = this.config.oauthToken || await this.readOAuthToken(); + } else if (this.config.authenticator?.toUpperCase() === 'SNOWFLAKE_JWT') { + config.username = this.config.username; + config.privateKey = this.config.privateKey; + config.privateKeyPath = this.config.privateKeyPath; + config.privateKeyPass = this.config.privateKeyPass; + } else { + config.username = this.config.username; + config.password = this.config.password; } - return snowflake.createConnection(this.config); + return config as snowflake.ConnectionOptions; + } + + private async createConnection() { + const config = await this.prepareConnectOptions(); + + return snowflake.createConnection(config); } /** diff --git a/packages/cubejs-sqlite-driver/CHANGELOG.md b/packages/cubejs-sqlite-driver/CHANGELOG.md index 87d52873ba532..3d107fbc06d3a 100644 --- a/packages/cubejs-sqlite-driver/CHANGELOG.md +++ b/packages/cubejs-sqlite-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/sqlite-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 491ef30710222..f374762fb41de 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -17,13 +17,13 @@ "lint": "eslint **/*.js" }, "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "sqlite3": "^5.1.7" }, "license": "Apache-2.0", "devDependencies": { - "@cubejs-backend/linter": "1.3.34" + "@cubejs-backend/linter": "1.3.35" }, "publishConfig": { "access": "public" diff --git a/packages/cubejs-templates/CHANGELOG.md b/packages/cubejs-templates/CHANGELOG.md index 3b3ef19d764ae..017ea1d2976df 100644 --- a/packages/cubejs-templates/CHANGELOG.md +++ b/packages/cubejs-templates/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/templates + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/templates diff --git a/packages/cubejs-templates/package.json b/packages/cubejs-templates/package.json index d6f056eb80d13..14f5133bf8231 100644 --- a/packages/cubejs-templates/package.json +++ b/packages/cubejs-templates/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/templates", - "version": "1.3.34", + "version": "1.3.35", "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.3.34", + "@cubejs-backend/shared": "1.3.35", "cross-spawn": "^7.0.3", "decompress": "^4.2.1", "decompress-targz": "^4.1.1", @@ -36,7 +36,7 @@ "source-map-support": "^0.5.19" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "typescript": "~5.2.2" } } diff --git a/packages/cubejs-testing-drivers/CHANGELOG.md b/packages/cubejs-testing-drivers/CHANGELOG.md index cda1dd7eb6a96..1e5aec02fe6cf 100644 --- a/packages/cubejs-testing-drivers/CHANGELOG.md +++ b/packages/cubejs-testing-drivers/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/testing-drivers + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/testing-drivers diff --git a/packages/cubejs-testing-drivers/package.json b/packages/cubejs-testing-drivers/package.json index 4f012b8d9b9ec..757b4c6faa0cc 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.3.34", + "version": "1.3.35", "description": "Cube.js drivers test suite", "author": "Cube Dev, Inc.", "license": "MIT", @@ -66,24 +66,24 @@ "dist/src" ], "dependencies": { - "@cubejs-backend/athena-driver": "1.3.34", - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/bigquery-driver": "1.3.34", - "@cubejs-backend/clickhouse-driver": "1.3.34", - "@cubejs-backend/cubestore-driver": "1.3.34", - "@cubejs-backend/databricks-jdbc-driver": "1.3.34", + "@cubejs-backend/athena-driver": "1.3.35", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/bigquery-driver": "1.3.35", + "@cubejs-backend/clickhouse-driver": "1.3.35", + "@cubejs-backend/cubestore-driver": "1.3.35", + "@cubejs-backend/databricks-jdbc-driver": "1.3.35", "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/mssql-driver": "1.3.34", - "@cubejs-backend/mysql-driver": "1.3.34", - "@cubejs-backend/postgres-driver": "1.3.34", - "@cubejs-backend/query-orchestrator": "1.3.34", - "@cubejs-backend/server-core": "1.3.34", - "@cubejs-backend/shared": "1.3.34", - "@cubejs-backend/snowflake-driver": "1.3.34", - "@cubejs-backend/testing-shared": "1.3.34", - "@cubejs-client/core": "1.3.34", - "@cubejs-client/ws-transport": "1.3.34", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/mssql-driver": "1.3.35", + "@cubejs-backend/mysql-driver": "1.3.35", + "@cubejs-backend/postgres-driver": "1.3.35", + "@cubejs-backend/query-orchestrator": "1.3.35", + "@cubejs-backend/server-core": "1.3.35", + "@cubejs-backend/shared": "1.3.35", + "@cubejs-backend/snowflake-driver": "1.3.35", + "@cubejs-backend/testing-shared": "1.3.35", + "@cubejs-client/core": "1.3.35", + "@cubejs-client/ws-transport": "1.3.35", "@jest/globals": "^29", "@types/jest": "^29", "@types/node": "^20", @@ -94,7 +94,7 @@ "jsonwebtoken": "^9.0.2", "pg": "^8.7.3", "ramda": "^0.28.0", - "testcontainers": "^10.13.0", + "testcontainers": "^10.28.0", "typescript": "~5.2.2", "yaml": "^1.10.2", "yargs": "^17.7.1" diff --git a/packages/cubejs-testing-shared/CHANGELOG.md b/packages/cubejs-testing-shared/CHANGELOG.md index 49b2f30a030e2..e244fd0a546f1 100644 --- a/packages/cubejs-testing-shared/CHANGELOG.md +++ b/packages/cubejs-testing-shared/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/testing-shared + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 c80b7c66a95ce..bbca7d5708303 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.3.34", + "version": "1.3.35", "description": "Cube.js Testing Helpers", "author": "Cube Dev, Inc.", "license": "Apache-2.0", @@ -21,16 +21,16 @@ ], "dependencies": { "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/query-orchestrator": "1.3.34", - "@cubejs-backend/schema-compiler": "1.3.34", - "@cubejs-backend/shared": "1.3.34", - "@testcontainers/kafka": "~10.13.0", + "@cubejs-backend/query-orchestrator": "1.3.35", + "@cubejs-backend/schema-compiler": "1.3.35", + "@cubejs-backend/shared": "1.3.35", + "@testcontainers/kafka": "~10.28.0", "dedent": "^0.7.0", "node-fetch": "^2.6.7", - "testcontainers": "^10.13.0" + "testcontainers": "^10.28.0" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@jest/globals": "^29", "@types/dedent": "^0.7.0", "@types/jest": "^29", diff --git a/packages/cubejs-testing/CHANGELOG.md b/packages/cubejs-testing/CHANGELOG.md index 3da6f2b29e8db..84fffb332ba29 100644 --- a/packages/cubejs-testing/CHANGELOG.md +++ b/packages/cubejs-testing/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/testing + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/testing diff --git a/packages/cubejs-testing/package.json b/packages/cubejs-testing/package.json index a23c137de5ff4..81fb52fd45007 100644 --- a/packages/cubejs-testing/package.json +++ b/packages/cubejs-testing/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/testing", - "version": "1.3.34", + "version": "1.3.35", "description": "Cube.js e2e tests", "author": "Cube Dev, Inc.", "license": "Apache-2.0", @@ -94,27 +94,27 @@ "birdbox-fixtures" ], "dependencies": { - "@cubejs-backend/cubestore-driver": "1.3.34", + "@cubejs-backend/cubestore-driver": "1.3.35", "@cubejs-backend/dotenv": "^9.0.2", - "@cubejs-backend/ksql-driver": "1.3.34", - "@cubejs-backend/postgres-driver": "1.3.34", - "@cubejs-backend/query-orchestrator": "1.3.34", - "@cubejs-backend/schema-compiler": "1.3.34", - "@cubejs-backend/shared": "1.3.34", - "@cubejs-backend/testing-shared": "1.3.34", - "@cubejs-client/ws-transport": "1.3.34", + "@cubejs-backend/ksql-driver": "1.3.35", + "@cubejs-backend/postgres-driver": "1.3.35", + "@cubejs-backend/query-orchestrator": "1.3.35", + "@cubejs-backend/schema-compiler": "1.3.35", + "@cubejs-backend/shared": "1.3.35", + "@cubejs-backend/testing-shared": "1.3.35", + "@cubejs-client/ws-transport": "1.3.35", "dedent": "^0.7.0", "fs-extra": "^8.1.0", "http-proxy": "^1.18.1", "node-fetch": "^2.6.1", "ramda": "^0.27.2", - "testcontainers": "^10.13.0", + "testcontainers": "^10.28.0", "yargs": "^17.3.1" }, "devDependencies": { "@4tw/cypress-drag-drop": "^1.6.0", - "@cubejs-backend/linter": "1.3.34", - "@cubejs-client/core": "1.3.34", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-client/core": "1.3.35", "@jest/globals": "^29", "@types/dedent": "^0.7.0", "@types/http-proxy": "^1.17.5", diff --git a/packages/cubejs-trino-driver/CHANGELOG.md b/packages/cubejs-trino-driver/CHANGELOG.md index 30d6370de0297..fcb0b4e45e96b 100644 --- a/packages/cubejs-trino-driver/CHANGELOG.md +++ b/packages/cubejs-trino-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/trino-driver + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **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 a97e79a91b6e7..0f6761aa97637 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.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.git", @@ -27,10 +27,10 @@ "lint:fix": "eslint --fix src/* --ext .ts" }, "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/prestodb-driver": "1.3.34", - "@cubejs-backend/schema-compiler": "1.3.34", - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/prestodb-driver": "1.3.35", + "@cubejs-backend/schema-compiler": "1.3.35", + "@cubejs-backend/shared": "1.3.35", "node-fetch": "^2.6.1", "presto-client": "^1.1.0", "sqlstring": "^2.3.1" @@ -40,10 +40,10 @@ "access": "public" }, "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/jest": "^29", "jest": "^29", - "testcontainers": "^10.13.0", + "testcontainers": "^10.28.0", "typescript": "~5.2.2" }, "eslintConfig": { diff --git a/packages/cubejs-vertica-driver/CHANGELOG.md b/packages/cubejs-vertica-driver/CHANGELOG.md index cecb8622f2c0f..4143b2eec5624 100644 --- a/packages/cubejs-vertica-driver/CHANGELOG.md +++ b/packages/cubejs-vertica-driver/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube.js/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/vertica-driver + ## [1.3.34](https://github.com/cube-js/cube.js/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/vertica-driver diff --git a/packages/cubejs-vertica-driver/package.json b/packages/cubejs-vertica-driver/package.json index e6228c6e3e0da..498fdf4bcaace 100644 --- a/packages/cubejs-vertica-driver/package.json +++ b/packages/cubejs-vertica-driver/package.json @@ -2,7 +2,7 @@ "name": "@cubejs-backend/vertica-driver", "description": "Cube.js Vertica database driver", "author": "Eduard Karacharov, Tim Brown, Cube Dev, Inc.", - "version": "1.3.34", + "version": "1.3.35", "repository": { "type": "git", "url": "https://github.com/cube-js/cube.js.git", @@ -19,18 +19,18 @@ "lint:fix": "eslint --fix **/*.js" }, "dependencies": { - "@cubejs-backend/base-driver": "1.3.34", - "@cubejs-backend/query-orchestrator": "1.3.34", - "@cubejs-backend/schema-compiler": "1.3.34", + "@cubejs-backend/base-driver": "1.3.35", + "@cubejs-backend/query-orchestrator": "1.3.35", + "@cubejs-backend/schema-compiler": "1.3.35", "vertica-nodejs": "^1.0.3" }, "license": "Apache-2.0", "devDependencies": { - "@cubejs-backend/linter": "1.3.34", - "@cubejs-backend/testing-shared": "1.3.34", + "@cubejs-backend/linter": "1.3.35", + "@cubejs-backend/testing-shared": "1.3.35", "@types/jest": "^29", "jest": "^29", - "testcontainers": "^10.13.0" + "testcontainers": "^10.28.0" }, "publishConfig": { "access": "public" diff --git a/rust/cubenativeutils/Cargo.lock b/rust/cubenativeutils/Cargo.lock index b518d0715c90f..d646a6d7a3f1a 100644 --- a/rust/cubenativeutils/Cargo.lock +++ b/rust/cubenativeutils/Cargo.lock @@ -623,7 +623,7 @@ dependencies = [ [[package]] name = "cube-ext" version = "1.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "arrow", "chrono", @@ -715,7 +715,7 @@ dependencies = [ [[package]] name = "datafusion" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "ahash 0.7.8", "arrow", @@ -748,7 +748,7 @@ dependencies = [ [[package]] name = "datafusion-common" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "arrow", "ordered-float 2.10.1", @@ -759,7 +759,7 @@ dependencies = [ [[package]] name = "datafusion-data-access" version = "1.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "async-trait", "chrono", @@ -772,7 +772,7 @@ dependencies = [ [[package]] name = "datafusion-expr" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "ahash 0.7.8", "arrow", @@ -783,7 +783,7 @@ dependencies = [ [[package]] name = "datafusion-physical-expr" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "ahash 0.7.8", "arrow", diff --git a/rust/cubeorchestrator/src/query_result_transform.rs b/rust/cubeorchestrator/src/query_result_transform.rs index 8056e1ece4e9a..a29b12ff56562 100644 --- a/rust/cubeorchestrator/src/query_result_transform.rs +++ b/rust/cubeorchestrator/src/query_result_transform.rs @@ -194,8 +194,8 @@ pub fn get_members( if !annotation.contains_key(member_name) { bail!( concat!( - "You requested hidden member: '{}'. Please make it visible using `shown: true`. ", - "Please note primaryKey fields are `shown: false` by default: ", + "You requested hidden member: '{}'. Please make it visible using `public: true`. ", + "Please note primaryKey fields are `public: false` by default: ", "https://cube.dev/docs/schema/reference/joins#setting-a-primary-key." ), column @@ -344,8 +344,8 @@ pub fn get_vanilla_row( None => { bail!( concat!( - "You requested hidden member: '{}'. Please make it visible using `shown: true`. ", - "Please note primaryKey fields are `shown: false` by default: ", + "You requested hidden member: '{}'. Please make it visible using `public: true`. ", + "Please note primaryKey fields are `public: false` by default: ", "https://cube.dev/docs/schema/reference/joins#setting-a-primary-key." ), alias diff --git a/rust/cubesql/CHANGELOG.md b/rust/cubesql/CHANGELOG.md index e992c084324ac..bad8baf547057 100644 --- a/rust/cubesql/CHANGELOG.md +++ b/rust/cubesql/CHANGELOG.md @@ -3,6 +3,13 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +### Bug Fixes + +- **cubesql:** Hide security context from logs ([#9761](https://github.com/cube-js/cube/issues/9761)) ([e38c03c](https://github.com/cube-js/cube/commit/e38c03c2ba95f86965909b0f9161babd7bb52ecf)) +- **cubesql:** Normalize `EXTRACT`/`DATE_TRUNC` granularities ([#9759](https://github.com/cube-js/cube/issues/9759)) ([2db54ba](https://github.com/cube-js/cube/commit/2db54ba4a70c4e96a1ffa196fe43270385a48b3c)) + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/cubesql diff --git a/rust/cubesql/Cargo.lock b/rust/cubesql/Cargo.lock index 8d60ef3c7779a..cbd2cb0f20aea 100644 --- a/rust/cubesql/Cargo.lock +++ b/rust/cubesql/Cargo.lock @@ -722,7 +722,7 @@ dependencies = [ [[package]] name = "cube-ext" version = "1.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "arrow", "chrono", @@ -846,7 +846,7 @@ dependencies = [ [[package]] name = "datafusion" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "ahash 0.7.8", "arrow", @@ -879,7 +879,7 @@ dependencies = [ [[package]] name = "datafusion-common" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "arrow", "ordered-float 2.10.0", @@ -890,7 +890,7 @@ dependencies = [ [[package]] name = "datafusion-data-access" version = "1.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "async-trait", "chrono", @@ -903,7 +903,7 @@ dependencies = [ [[package]] name = "datafusion-expr" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "ahash 0.7.8", "arrow", @@ -914,7 +914,7 @@ dependencies = [ [[package]] name = "datafusion-physical-expr" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "ahash 0.7.8", "arrow", diff --git a/rust/cubesql/cubesql/Cargo.toml b/rust/cubesql/cubesql/Cargo.toml index 4c14f59e877df..345481df952f0 100644 --- a/rust/cubesql/cubesql/Cargo.toml +++ b/rust/cubesql/cubesql/Cargo.toml @@ -10,7 +10,7 @@ homepage = "https://cube.dev" [dependencies] arc-swap = "1" -datafusion = { git = 'https://github.com/cube-js/arrow-datafusion.git', rev = "edbe6a8b62c1cc9f1feb0be83f089f155c662298", default-features = false, features = [ +datafusion = { git = 'https://github.com/cube-js/arrow-datafusion.git', rev = "637003a448a98bbc5e1585d0f01cc19ba9d50668", default-features = false, features = [ "regex_expressions", "unicode_expressions", ] } diff --git a/rust/cubesql/cubesql/src/compile/engine/df/optimizers/mod.rs b/rust/cubesql/cubesql/src/compile/engine/df/optimizers/mod.rs index b25aca3d15a1c..d480a5b291407 100644 --- a/rust/cubesql/cubesql/src/compile/engine/df/optimizers/mod.rs +++ b/rust/cubesql/cubesql/src/compile/engine/df/optimizers/mod.rs @@ -3,9 +3,11 @@ pub mod utils; mod filter_push_down; mod filter_split_meta; mod limit_push_down; +mod plan_normalize; mod sort_push_down; pub use filter_push_down::FilterPushDown; pub use filter_split_meta::FilterSplitMeta; pub use limit_push_down::LimitPushDown; +pub use plan_normalize::PlanNormalize; pub use sort_push_down::SortPushDown; diff --git a/rust/cubesql/cubesql/src/compile/engine/df/optimizers/plan_normalize.rs b/rust/cubesql/cubesql/src/compile/engine/df/optimizers/plan_normalize.rs new file mode 100644 index 0000000000000..57c7c97da72c7 --- /dev/null +++ b/rust/cubesql/cubesql/src/compile/engine/df/optimizers/plan_normalize.rs @@ -0,0 +1,1086 @@ +use std::{collections::HashMap, sync::Arc}; + +use datafusion::{ + error::{DataFusionError, Result}, + logical_expr::{BuiltinScalarFunction, Expr, GroupingSet, Like}, + logical_plan::{ + build_join_schema, build_table_udf_schema, + plan::{ + Aggregate, Analyze, CreateMemoryTable, CrossJoin, Distinct, Explain, Filter, Join, + Limit, Partitioning, Projection, Repartition, Sort, Subquery, TableScan, TableUDFs, + Union, Values, Window, + }, + union_with_alias, Column, DFSchema, LogicalPlan, LogicalPlanBuilder, + }, + optimizer::optimizer::{OptimizerConfig, OptimizerRule}, + scalar::ScalarValue, +}; + +use crate::compile::rewrite::rules::utils::DatePartToken; + +/// PlanNormalize optimizer rule walks through the query and applies transformations +/// to normalize the logical plan structure and expressions. +/// +/// Currently this includes replacing literal granularities in `DatePart` and `DateTrunc` functions +/// with their normalized equivalents. +pub struct PlanNormalize {} + +impl PlanNormalize { + pub fn new() -> Self { + Self {} + } +} + +impl OptimizerRule for PlanNormalize { + fn optimize( + &self, + plan: &LogicalPlan, + optimizer_config: &OptimizerConfig, + ) -> Result { + plan_normalize(self, plan, &mut HashMap::new(), optimizer_config) + } + + fn name(&self) -> &str { + "__cube__plan_normalize" + } +} + +/// Recursively optimizes the logical plan, searching for logical plan nodes +/// and expressions that can be normalized. +/// +/// `remapped_columns` passed to the function is assumed to be empty unless stated otherwise. +fn plan_normalize( + optimizer: &PlanNormalize, + plan: &LogicalPlan, + remapped_columns: &mut HashMap, + optimizer_config: &OptimizerConfig, +) -> Result { + match plan { + LogicalPlan::Projection(Projection { + expr, + input, + schema: _, + alias, + }) => { + let input = plan_normalize(optimizer, input, remapped_columns, optimizer_config)?; + let new_expr = expr + .iter() + .map(|expr| expr_normalize(optimizer, expr, remapped_columns, optimizer_config)) + .collect::>>()?; + let alias = alias.clone(); + + *remapped_columns = HashMap::new(); + for (expr, new_expr) in expr.iter().zip(new_expr.iter()) { + let old_name = expr.name(&DFSchema::empty())?; + let new_name = new_expr.name(&DFSchema::empty())?; + if old_name != new_name { + let old_column = Column { + relation: alias.clone(), + name: old_name, + }; + let new_column = Column { + relation: alias.clone(), + name: new_name, + }; + remapped_columns.insert(old_column, new_column); + } + } + + LogicalPlanBuilder::from(input) + .project_with_alias(new_expr, alias)? + .build() + } + + LogicalPlan::Filter(Filter { predicate, input }) => { + let input = plan_normalize(optimizer, input, remapped_columns, optimizer_config)?; + let predicate = + expr_normalize(optimizer, predicate, remapped_columns, optimizer_config)?; + + LogicalPlanBuilder::from(input).filter(predicate)?.build() + } + + LogicalPlan::Window(Window { + input, + window_expr, + schema: _, + }) => { + let input = plan_normalize(optimizer, input, remapped_columns, optimizer_config)?; + let new_window_expr = window_expr + .iter() + .map(|expr| expr_normalize(optimizer, expr, remapped_columns, optimizer_config)) + .collect::>>()?; + + for (window_expr, new_window_expr) in window_expr.iter().zip(new_window_expr.iter()) { + let old_name = window_expr.name(&DFSchema::empty())?; + let new_name = new_window_expr.name(&DFSchema::empty())?; + if old_name != new_name { + let old_column = Column::from_name(old_name); + let new_column = Column::from_name(new_name); + remapped_columns.insert(old_column, new_column); + } + } + + LogicalPlanBuilder::from(input) + .window(new_window_expr)? + .build() + } + + LogicalPlan::Aggregate(Aggregate { + input, + group_expr, + aggr_expr, + schema: _, + }) => { + let input = plan_normalize(optimizer, input, remapped_columns, optimizer_config)?; + let new_group_expr = group_expr + .iter() + .map(|expr| expr_normalize(optimizer, expr, remapped_columns, optimizer_config)) + .collect::>>()?; + let new_aggr_expr = aggr_expr + .iter() + .map(|expr| expr_normalize(optimizer, expr, remapped_columns, optimizer_config)) + .collect::>>()?; + + *remapped_columns = HashMap::new(); + for (group_expr, new_group_expr) in group_expr.iter().zip(new_group_expr.iter()) { + let old_name = group_expr.name(&DFSchema::empty())?; + let new_name = new_group_expr.name(&DFSchema::empty())?; + if old_name != new_name { + let old_column = Column::from_name(old_name); + let new_column = Column::from_name(new_name); + remapped_columns.insert(old_column, new_column); + } + } + for (aggr_expr, new_aggr_expr) in aggr_expr.iter().zip(new_aggr_expr.iter()) { + let old_name = aggr_expr.name(&DFSchema::empty())?; + let new_name = new_aggr_expr.name(&DFSchema::empty())?; + if old_name != new_name { + let old_column = Column::from_name(old_name); + let new_column = Column::from_name(new_name); + remapped_columns.insert(old_column, new_column); + } + } + + LogicalPlanBuilder::from(input) + .aggregate(new_group_expr, new_aggr_expr)? + .build() + } + + LogicalPlan::Sort(Sort { expr, input }) => { + let expr = expr + .iter() + .map(|expr| expr_normalize(optimizer, expr, remapped_columns, optimizer_config)) + .collect::>>()?; + let input = plan_normalize(optimizer, input, remapped_columns, optimizer_config)?; + + LogicalPlanBuilder::from(input).sort(expr)?.build() + } + + LogicalPlan::Join(Join { + left, + right, + on, + join_type, + join_constraint, + schema: _, + null_equals_null, + }) => { + let mut right_remapped_columns = HashMap::new(); + let left = Arc::new(plan_normalize( + optimizer, + left, + remapped_columns, + optimizer_config, + )?); + let right = Arc::new(plan_normalize( + optimizer, + right, + &mut right_remapped_columns, + optimizer_config, + )?); + let on = on + .iter() + .map(|(left_column, right_column)| { + let left_column = column_normalize( + optimizer, + left_column, + remapped_columns, + optimizer_config, + )?; + let right_column = column_normalize( + optimizer, + right_column, + &right_remapped_columns, + optimizer_config, + )?; + Ok((left_column, right_column)) + }) + .collect::>>()?; + let join_type = *join_type; + let join_constraint = *join_constraint; + let schema = Arc::new(build_join_schema( + &left.schema(), + &right.schema(), + &join_type, + )?); + let null_equals_null = *null_equals_null; + + remapped_columns.extend(right_remapped_columns); + + Ok(LogicalPlan::Join(Join { + left, + right, + on, + join_type, + join_constraint, + schema, + null_equals_null, + })) + } + + LogicalPlan::CrossJoin(CrossJoin { + left, + right, + schema: _, + }) => { + let mut right_remapped_columns = HashMap::new(); + let left = plan_normalize(optimizer, left, remapped_columns, optimizer_config)?; + let right = plan_normalize( + optimizer, + right, + &mut right_remapped_columns, + optimizer_config, + )?; + + remapped_columns.extend(right_remapped_columns); + + LogicalPlanBuilder::from(left).cross_join(&right)?.build() + } + + LogicalPlan::Repartition(Repartition { + input, + partitioning_scheme, + }) => { + let input = plan_normalize(optimizer, input, remapped_columns, optimizer_config)?; + let partitioning_scheme = match partitioning_scheme { + Partitioning::RoundRobinBatch(n) => Partitioning::RoundRobinBatch(*n), + Partitioning::Hash(exprs, n) => { + let exprs = exprs + .iter() + .map(|expr| { + expr_normalize(optimizer, expr, remapped_columns, optimizer_config) + }) + .collect::>>()?; + Partitioning::Hash(exprs, *n) + } + }; + + LogicalPlanBuilder::from(input) + .repartition(partitioning_scheme)? + .build() + } + + LogicalPlan::Union(Union { + inputs, + schema: _, + alias, + }) => { + let mut plan = None; + for input in inputs { + let mut new_remapped_columns = HashMap::new(); + let input = plan_normalize( + optimizer, + input, + &mut new_remapped_columns, + optimizer_config, + )?; + if let Some(last_plan) = plan.take() { + plan = Some(union_with_alias(last_plan, input, alias.clone())?); + } else { + plan = Some(input); + *remapped_columns = new_remapped_columns; + } + } + + plan.ok_or_else(|| { + DataFusionError::Internal("Found UNION plan with no inputs".to_string()) + }) + } + + LogicalPlan::TableScan(TableScan { + table_name, + source, + projection, + projected_schema, + filters, + fetch, + }) => { + let table_name = table_name.clone(); + let source = Arc::clone(source); + let projection = projection.clone(); + let projected_schema = Arc::clone(projected_schema); + let filters = filters + .iter() + .map(|expr| expr_normalize(optimizer, expr, remapped_columns, optimizer_config)) + .collect::>>()?; + let fetch = *fetch; + + Ok(LogicalPlan::TableScan(TableScan { + table_name, + source, + projection, + projected_schema, + filters, + fetch, + })) + } + + p @ LogicalPlan::EmptyRelation(_) => Ok(p.clone()), + + LogicalPlan::Limit(Limit { skip, fetch, input }) => { + let skip = *skip; + let fetch = *fetch; + let input = plan_normalize(optimizer, input, remapped_columns, optimizer_config)?; + + LogicalPlanBuilder::from(input).limit(skip, fetch)?.build() + } + + LogicalPlan::Subquery(Subquery { + input, + subqueries, + types, + schema: _, + }) => { + let input = plan_normalize(optimizer, input, remapped_columns, optimizer_config)?; + let mut new_subqueries = Vec::with_capacity(subqueries.len()); + for subquery in subqueries { + let mut subquery_remapped_columns = HashMap::new(); + let new_subquery = plan_normalize( + optimizer, + subquery, + &mut subquery_remapped_columns, + optimizer_config, + )?; + new_subqueries.push(new_subquery); + remapped_columns.extend(subquery_remapped_columns); + } + let types = types.clone(); + + LogicalPlanBuilder::from(input) + .subquery(new_subqueries, types)? + .build() + } + + p @ LogicalPlan::CreateExternalTable(_) => Ok(p.clone()), + + LogicalPlan::CreateMemoryTable(CreateMemoryTable { name, input }) => { + let name = name.clone(); + let input = Arc::new(plan_normalize( + optimizer, + input, + remapped_columns, + optimizer_config, + )?); + Ok(LogicalPlan::CreateMemoryTable(CreateMemoryTable { + name, + input, + })) + } + + p @ LogicalPlan::CreateCatalogSchema(_) => Ok(p.clone()), + + p @ LogicalPlan::DropTable(_) => Ok(p.clone()), + + LogicalPlan::Values(Values { schema: _, values }) => { + let values = values + .iter() + .map(|row| { + row.iter() + .map(|expr| { + expr_normalize(optimizer, expr, remapped_columns, optimizer_config) + }) + .collect::>>() + }) + .collect::>>()?; + + LogicalPlanBuilder::values(values)?.build() + } + + LogicalPlan::Explain(Explain { + verbose, + plan, + stringified_plans: _, + schema: _, + }) => { + let verbose = *verbose; + let plan = plan_normalize(optimizer, plan, remapped_columns, optimizer_config)?; + + *remapped_columns = HashMap::new(); + + LogicalPlanBuilder::from(plan) + .explain(verbose, false)? + .build() + } + + LogicalPlan::Analyze(Analyze { + verbose, + input, + schema: _, + }) => { + let verbose = *verbose; + let input = plan_normalize(optimizer, input, remapped_columns, optimizer_config)?; + + *remapped_columns = HashMap::new(); + + LogicalPlanBuilder::from(input) + .explain(verbose, true)? + .build() + } + + LogicalPlan::TableUDFs(TableUDFs { + expr, + input, + schema: _, + }) => { + let input = Arc::new(plan_normalize( + optimizer, + input, + remapped_columns, + optimizer_config, + )?); + let new_expr = expr + .iter() + .map(|expr| expr_normalize(optimizer, expr, remapped_columns, optimizer_config)) + .collect::>>()?; + let schema = build_table_udf_schema(&input, &new_expr)?; + + for (expr, new_expr) in expr.iter().zip(new_expr.iter()) { + let old_name = expr.name(&DFSchema::empty())?; + let new_name = new_expr.name(&DFSchema::empty())?; + if old_name != new_name { + let old_column = Column::from_name(old_name); + let new_column = Column::from_name(new_name); + remapped_columns.insert(old_column, new_column); + } + } + + Ok(LogicalPlan::TableUDFs(TableUDFs { + expr: new_expr, + input, + schema, + })) + } + + p @ LogicalPlan::Extension(_) => { + // TODO: we don't know how to optimize generic `Extension` node, + // but we might need this if we implement our own `Extension` nodes + // that might appear in the **initial** plan. + // Let's clean remapped columns to be sure though. + *remapped_columns = HashMap::new(); + Ok(p.clone()) + } + + LogicalPlan::Distinct(Distinct { input }) => { + let input = plan_normalize(optimizer, input, remapped_columns, optimizer_config)?; + + LogicalPlanBuilder::from(input).distinct()?.build() + } + } +} + +/// Recursively normalizes expressions. +fn expr_normalize( + optimizer: &PlanNormalize, + expr: &Expr, + remapped_columns: &HashMap, + optimizer_config: &OptimizerConfig, +) -> Result { + match expr { + Expr::Alias(expr, alias) => { + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + let alias = alias.clone(); + Ok(Expr::Alias(expr, alias)) + } + + Expr::OuterColumn(data_type, column) => { + let data_type = data_type.clone(); + let column = column_normalize(optimizer, column, remapped_columns, optimizer_config)?; + Ok(Expr::OuterColumn(data_type, column)) + } + + Expr::Column(column) => { + let column = column_normalize(optimizer, column, remapped_columns, optimizer_config)?; + Ok(Expr::Column(column)) + } + + e @ Expr::ScalarVariable(..) => Ok(e.clone()), + + e @ Expr::Literal(..) => Ok(e.clone()), + + Expr::BinaryExpr { left, op, right } => { + let left = Box::new(expr_normalize( + optimizer, + left, + remapped_columns, + optimizer_config, + )?); + let op = *op; + let right = Box::new(expr_normalize( + optimizer, + right, + remapped_columns, + optimizer_config, + )?); + Ok(Expr::BinaryExpr { left, op, right }) + } + + Expr::AnyExpr { + left, + op, + right, + all, + } => { + let left = Box::new(expr_normalize( + optimizer, + left, + remapped_columns, + optimizer_config, + )?); + let op = *op; + let right = Box::new(expr_normalize( + optimizer, + right, + remapped_columns, + optimizer_config, + )?); + let all = *all; + Ok(Expr::AnyExpr { + left, + op, + right, + all, + }) + } + + Expr::Like(Like { + negated, + expr, + pattern, + escape_char, + }) => { + let negated = *negated; + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + let pattern = Box::new(expr_normalize( + optimizer, + pattern, + remapped_columns, + optimizer_config, + )?); + let escape_char = *escape_char; + Ok(Expr::Like(Like { + negated, + expr, + pattern, + escape_char, + })) + } + + Expr::ILike(Like { + negated, + expr, + pattern, + escape_char, + }) => { + let negated = *negated; + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + let pattern = Box::new(expr_normalize( + optimizer, + pattern, + remapped_columns, + optimizer_config, + )?); + let escape_char = *escape_char; + Ok(Expr::ILike(Like { + negated, + expr, + pattern, + escape_char, + })) + } + + Expr::SimilarTo(Like { + negated, + expr, + pattern, + escape_char, + }) => { + let negated = *negated; + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + let pattern = Box::new(expr_normalize( + optimizer, + pattern, + remapped_columns, + optimizer_config, + )?); + let escape_char = *escape_char; + Ok(Expr::SimilarTo(Like { + negated, + expr, + pattern, + escape_char, + })) + } + + Expr::Not(expr) => { + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + Ok(Expr::Not(expr)) + } + + Expr::IsNotNull(expr) => { + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + Ok(Expr::IsNotNull(expr)) + } + + Expr::IsNull(expr) => { + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + Ok(Expr::IsNull(expr)) + } + + Expr::Negative(expr) => { + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + Ok(Expr::Negative(expr)) + } + + Expr::GetIndexedField { expr, key } => { + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + let key = Box::new(expr_normalize( + optimizer, + key, + remapped_columns, + optimizer_config, + )?); + Ok(Expr::GetIndexedField { expr, key }) + } + + Expr::Between { + expr, + negated, + low, + high, + } => { + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + let negated = *negated; + let low = Box::new(expr_normalize( + optimizer, + low, + remapped_columns, + optimizer_config, + )?); + let high = Box::new(expr_normalize( + optimizer, + high, + remapped_columns, + optimizer_config, + )?); + Ok(Expr::Between { + expr, + negated, + low, + high, + }) + } + + Expr::Case { + expr, + when_then_expr, + else_expr, + } => { + let expr = expr + .as_ref() + .map(|e| { + Ok::<_, DataFusionError>(Box::new(expr_normalize( + optimizer, + e, + remapped_columns, + optimizer_config, + )?)) + }) + .transpose()?; + let when_then_expr = when_then_expr + .iter() + .map(|(when, then)| { + Ok(( + Box::new(expr_normalize( + optimizer, + when, + remapped_columns, + optimizer_config, + )?), + Box::new(expr_normalize( + optimizer, + then, + remapped_columns, + optimizer_config, + )?), + )) + }) + .collect::>>()?; + let else_expr = else_expr + .as_ref() + .map(|e| { + Ok::<_, DataFusionError>(Box::new(expr_normalize( + optimizer, + e, + remapped_columns, + optimizer_config, + )?)) + }) + .transpose()?; + Ok(Expr::Case { + expr, + when_then_expr, + else_expr, + }) + } + + Expr::Cast { expr, data_type } => { + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + let data_type = data_type.clone(); + Ok(Expr::Cast { expr, data_type }) + } + + Expr::TryCast { expr, data_type } => { + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + let data_type = data_type.clone(); + Ok(Expr::TryCast { expr, data_type }) + } + + Expr::Sort { + expr, + asc, + nulls_first, + } => { + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + let asc = *asc; + let nulls_first = *nulls_first; + Ok(Expr::Sort { + expr, + asc, + nulls_first, + }) + } + + Expr::ScalarFunction { fun, args } => { + let (fun, args) = scalar_function_normalize( + optimizer, + fun, + args, + remapped_columns, + optimizer_config, + )?; + Ok(Expr::ScalarFunction { fun, args }) + } + + Expr::ScalarUDF { fun, args } => { + let fun = Arc::clone(fun); + let args = args + .iter() + .map(|arg| expr_normalize(optimizer, arg, remapped_columns, optimizer_config)) + .collect::>>()?; + Ok(Expr::ScalarUDF { fun, args }) + } + + Expr::TableUDF { fun, args } => { + let fun = Arc::clone(fun); + let args = args + .iter() + .map(|arg| expr_normalize(optimizer, arg, remapped_columns, optimizer_config)) + .collect::>>()?; + Ok(Expr::TableUDF { fun, args }) + } + + Expr::AggregateFunction { + fun, + args, + distinct, + within_group, + } => { + let fun = fun.clone(); + let args = args + .iter() + .map(|arg| expr_normalize(optimizer, arg, remapped_columns, optimizer_config)) + .collect::>>()?; + let distinct = *distinct; + let within_group = within_group + .as_ref() + .map(|expr| { + expr.iter() + .map(|e| expr_normalize(optimizer, e, remapped_columns, optimizer_config)) + .collect::>>() + }) + .transpose()?; + Ok(Expr::AggregateFunction { + fun, + args, + distinct, + within_group, + }) + } + + Expr::WindowFunction { + fun, + args, + partition_by, + order_by, + window_frame, + } => { + let fun = fun.clone(); + let args = args + .iter() + .map(|arg| expr_normalize(optimizer, arg, remapped_columns, optimizer_config)) + .collect::>>()?; + let partition_by = partition_by + .iter() + .map(|expr| expr_normalize(optimizer, expr, remapped_columns, optimizer_config)) + .collect::>>()?; + let order_by = order_by + .iter() + .map(|expr| expr_normalize(optimizer, expr, remapped_columns, optimizer_config)) + .collect::>>()?; + let window_frame = *window_frame; + Ok(Expr::WindowFunction { + fun, + args, + partition_by, + order_by, + window_frame, + }) + } + + Expr::AggregateUDF { fun, args } => { + let fun = Arc::clone(fun); + let args = args + .iter() + .map(|arg| expr_normalize(optimizer, arg, remapped_columns, optimizer_config)) + .collect::>>()?; + Ok(Expr::AggregateUDF { fun, args }) + } + + Expr::InList { + expr, + list, + negated, + } => { + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + let list = list + .iter() + .map(|e| expr_normalize(optimizer, e, remapped_columns, optimizer_config)) + .collect::>>()?; + let negated = *negated; + Ok(Expr::InList { + expr, + list, + negated, + }) + } + + Expr::InSubquery { + expr, + subquery, + negated, + } => { + let expr = Box::new(expr_normalize( + optimizer, + expr, + remapped_columns, + optimizer_config, + )?); + let subquery = Box::new(expr_normalize( + optimizer, + subquery, + remapped_columns, + optimizer_config, + )?); + let negated = *negated; + Ok(Expr::InSubquery { + expr, + subquery, + negated, + }) + } + + e @ Expr::Wildcard => Ok(e.clone()), + + e @ Expr::QualifiedWildcard { .. } => Ok(e.clone()), + + Expr::GroupingSet(grouping_set) => { + let grouping_set = grouping_set_normalize( + optimizer, + grouping_set, + remapped_columns, + optimizer_config, + )?; + Ok(Expr::GroupingSet(grouping_set)) + } + } +} + +/// Normalizes columns, taking remapped columns into account. +fn column_normalize( + _optimizer: &PlanNormalize, + column: &Column, + remapped_columns: &HashMap, + _optimizer_config: &OptimizerConfig, +) -> Result { + if let Some(new_column) = remapped_columns.get(column) { + return Ok(new_column.clone()); + } + Ok(column.clone()) +} + +/// Recursively normalizes scalar functions. +/// Currently this includes replacing literal granularities in `DatePart` and `DateTrunc` +/// functions with their normalized (parsed or lowercase) equivalents. +fn scalar_function_normalize( + optimizer: &PlanNormalize, + fun: &BuiltinScalarFunction, + args: &[Expr], + remapped_columns: &HashMap, + optimizer_config: &OptimizerConfig, +) -> Result<(BuiltinScalarFunction, Vec)> { + let fun = fun.clone(); + let mut args = args + .iter() + .map(|arg| expr_normalize(optimizer, arg, remapped_columns, optimizer_config)) + .collect::>>()?; + + // If the function is `DatePart` or `DateTrunc` and the first argument is a literal string, + // normalize the granularity by parsing it and replacing with standartized granularity. + // If it cannot be parsed, simply convert it to lowercase. + if matches!( + fun, + BuiltinScalarFunction::DatePart | BuiltinScalarFunction::DateTrunc + ) && args.len() > 0 + { + if let Expr::Literal(ScalarValue::Utf8(Some(granularity))) = &mut args[0] { + if let Ok(parsed_granularity) = granularity.parse::() { + *granularity = parsed_granularity.as_str().to_string(); + } else { + *granularity = granularity.to_ascii_lowercase(); + } + } + } + + Ok((fun, args)) +} + +/// Recursively normalizes grouping sets. +fn grouping_set_normalize( + optimizer: &PlanNormalize, + grouping_set: &GroupingSet, + remapped_columns: &HashMap, + optimizer_config: &OptimizerConfig, +) -> Result { + match grouping_set { + GroupingSet::Rollup(exprs) => { + let exprs = exprs + .iter() + .map(|expr| expr_normalize(optimizer, expr, remapped_columns, optimizer_config)) + .collect::>>()?; + Ok(GroupingSet::Rollup(exprs)) + } + + GroupingSet::Cube(exprs) => { + let exprs = exprs + .iter() + .map(|expr| expr_normalize(optimizer, expr, remapped_columns, optimizer_config)) + .collect::>>()?; + Ok(GroupingSet::Cube(exprs)) + } + + GroupingSet::GroupingSets(exprs) => { + let exprs = exprs + .iter() + .map(|exprs| { + Ok(exprs + .iter() + .map(|expr| { + expr_normalize(optimizer, expr, remapped_columns, optimizer_config) + }) + .collect::>>()?) + }) + .collect::>>()?; + Ok(GroupingSet::GroupingSets(exprs)) + } + } +} diff --git a/rust/cubesql/cubesql/src/compile/mod.rs b/rust/cubesql/cubesql/src/compile/mod.rs index 7aa24fbdc107e..fd4fb2c54dc10 100644 --- a/rust/cubesql/cubesql/src/compile/mod.rs +++ b/rust/cubesql/cubesql/src/compile/mod.rs @@ -13879,8 +13879,8 @@ ORDER BY "source"."str0" ASC let sql = logical_plan.find_cube_scan_wrapped_sql().wrapped_sql.sql; - // check if contains `CAST(EXTRACT(YEAR FROM ..) || .. || .. || ..)` - let re = Regex::new(r"CAST.+EXTRACT.+YEAR FROM(.+ \|\|){3}").unwrap(); + // check if contains `CAST(EXTRACT(year FROM ..) || .. || .. || ..)` + let re = Regex::new(r"CAST.+EXTRACT.+year FROM(.+ \|\|){3}").unwrap(); assert!(re.is_match(&sql)); // check if contains `LOWER(..) = .. AND LOWER(..) = ..` let re = Regex::new(r"LOWER ?\(.+\) = .+ AND .+LOWER ?\(.+\) = .+").unwrap(); @@ -14031,8 +14031,8 @@ ORDER BY "source"."str0" ASC if Rewriter::sql_push_down_enabled() { let sql = logical_plan.find_cube_scan_wrapped_sql().wrapped_sql.sql; - assert!(sql.contains("EXTRACT(YEAR")); - assert!(sql.contains("EXTRACT(MONTH")); + assert!(sql.contains("EXTRACT(year")); + assert!(sql.contains("EXTRACT(month")); let physical_plan = query_plan.as_physical_plan().await.unwrap(); println!( @@ -15114,7 +15114,7 @@ ORDER BY "source"."str0" ASC .find_cube_scan_wrapped_sql() .wrapped_sql .sql - .contains("EXTRACT(MONTH FROM ")); + .contains("EXTRACT(month FROM ")); } #[tokio::test] @@ -15155,7 +15155,7 @@ ORDER BY "source"."str0" ASC let logical_plan = query_plan.as_logical_plan(); let sql = logical_plan.find_cube_scan_wrapped_sql().wrapped_sql.sql; assert!(sql.contains("order_date")); - assert!(sql.contains("EXTRACT(DAY FROM")) + assert!(sql.contains("EXTRACT(day FROM")) } #[tokio::test] @@ -16522,7 +16522,7 @@ LIMIT {{ limit }}{% endif %}"#.to_string(), let logical_plan = query_plan.as_logical_plan(); let sql = logical_plan.find_cube_scan_wrapped_sql().wrapped_sql.sql; - assert!(sql.contains("EXTRACT(EPOCH")); + assert!(sql.contains("EXTRACT(epoch")); // Databricks let query_plan = convert_select_to_query_plan_customized( diff --git a/rust/cubesql/cubesql/src/compile/query_engine.rs b/rust/cubesql/cubesql/src/compile/query_engine.rs index 5c43baeebb1a7..2b5e442f358bb 100644 --- a/rust/cubesql/cubesql/src/compile/query_engine.rs +++ b/rust/cubesql/cubesql/src/compile/query_engine.rs @@ -1,4 +1,3 @@ -use crate::compile::engine::df::planner::CubeQueryPlanner; use std::{ backtrace::Backtrace, collections::HashMap, future::Future, pin::Pin, sync::Arc, time::SystemTime, @@ -8,7 +7,10 @@ use crate::{ compile::{ engine::{ df::{ - optimizers::{FilterPushDown, FilterSplitMeta, LimitPushDown, SortPushDown}, + optimizers::{ + FilterPushDown, FilterSplitMeta, LimitPushDown, PlanNormalize, SortPushDown, + }, + planner::CubeQueryPlanner, scan::CubeScanNode, wrapper::{CubeScanWrappedSqlNode, CubeScanWrapperNode}, }, @@ -138,6 +140,7 @@ pub trait QueryEngine { let optimizer_config = OptimizerConfig::new(); let optimizers: Vec> = vec![ + Arc::new(PlanNormalize::new()), Arc::new(ProjectionDropOut::new()), Arc::new(FilterPushDown::new()), Arc::new(SortPushDown::new()), diff --git a/rust/cubesql/cubesql/src/compile/rewrite/rules/dates.rs b/rust/cubesql/cubesql/src/compile/rewrite/rules/dates.rs index b97ecb321c9c8..b0b7702be2ce5 100644 --- a/rust/cubesql/cubesql/src/compile/rewrite/rules/dates.rs +++ b/rust/cubesql/cubesql/src/compile/rewrite/rules/dates.rs @@ -271,7 +271,7 @@ impl RewriteRules for DateRules { binary_expr( negative_expr(self.fun_expr( "DatePart", - vec![literal_string("DOW"), column_expr("?column")], + vec![literal_string("dow"), column_expr("?column")], )), "*", // TODO match diff --git a/rust/cubesql/cubesql/src/compile/rewrite/rules/filters.rs b/rust/cubesql/cubesql/src/compile/rewrite/rules/filters.rs index 1932938040e61..c34cc60e43762 100644 --- a/rust/cubesql/cubesql/src/compile/rewrite/rules/filters.rs +++ b/rust/cubesql/cubesql/src/compile/rewrite/rules/filters.rs @@ -1671,34 +1671,6 @@ impl RewriteRules for FilterRules { // DATE_PART('year', "KibanaSampleDataEcommerce"."order_date") = 2019 transforming_rewrite( "extract-year-equals", - filter_replacer( - binary_expr( - self.fun_expr( - "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], - ), - "=", - literal_expr("?year"), - ), - "?alias_to_cube", - "?members", - "?filter_aliases", - ), - filter_member("?member", "FilterMemberOp:inDateRange", "?values"), - self.transform_filter_extract_year_equals( - "?year", - "?column", - "?alias_to_cube", - "?members", - "?member", - "?values", - "?filter_aliases", - ), - ), - // Same as the rule above, but it uses different case for granularity. - // TODO: Remove, whenever we will fix bug with granularity cases. CORE-1761 - transforming_rewrite( - "extract-year-equals-lower-case", filter_replacer( binary_expr( self.fun_expr( @@ -1732,7 +1704,7 @@ impl RewriteRules for FilterRules { "Trunc", vec![self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], )], ), "=", diff --git a/rust/cubesql/cubesql/src/compile/rewrite/rules/old_split.rs b/rust/cubesql/cubesql/src/compile/rewrite/rules/old_split.rs index 79b5fe0e5c23a..32a764e735949 100644 --- a/rust/cubesql/cubesql/src/compile/rewrite/rules/old_split.rs +++ b/rust/cubesql/cubesql/src/compile/rewrite/rules/old_split.rs @@ -866,7 +866,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -887,7 +887,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -898,7 +898,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -952,7 +952,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -973,7 +973,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -984,7 +984,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -1087,7 +1087,7 @@ impl RewriteRules for OldSplitRules { binary_expr( self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), "-", literal_int(1), @@ -1102,7 +1102,7 @@ impl RewriteRules for OldSplitRules { alias_expr( self.fun_expr( "DateTrunc", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), "?outer_alias", ), @@ -1118,7 +1118,7 @@ impl RewriteRules for OldSplitRules { binary_expr( self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), "-", literal_int(1), @@ -1136,7 +1136,7 @@ impl RewriteRules for OldSplitRules { binary_expr( self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?outer_column")], + vec![literal_string("month"), column_expr("?outer_column")], ), "-", literal_int(1), @@ -1166,7 +1166,7 @@ impl RewriteRules for OldSplitRules { cast_expr_explicit( self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], ), ArrowDataType::Utf8, ), @@ -1180,7 +1180,7 @@ impl RewriteRules for OldSplitRules { cast_expr_explicit( self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), ArrowDataType::Utf8, ), @@ -1209,7 +1209,7 @@ impl RewriteRules for OldSplitRules { cast_expr_explicit( self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], ), ArrowDataType::Utf8, ), @@ -1223,7 +1223,7 @@ impl RewriteRules for OldSplitRules { cast_expr_explicit( self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), ArrowDataType::Utf8, ), @@ -1256,7 +1256,7 @@ impl RewriteRules for OldSplitRules { cast_expr_explicit( self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], ), ArrowDataType::Utf8, ), @@ -1270,7 +1270,7 @@ impl RewriteRules for OldSplitRules { cast_expr_explicit( self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), ArrowDataType::Utf8, ), @@ -1304,7 +1304,7 @@ impl RewriteRules for OldSplitRules { cast_expr_explicit( self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], ), ArrowDataType::Utf8, ), @@ -1315,7 +1315,7 @@ impl RewriteRules for OldSplitRules { cast_expr_explicit( self.fun_expr( "DatePart", - vec![literal_string("QUARTER"), column_expr("?column")], + vec![literal_string("quarter"), column_expr("?column")], ), ArrowDataType::Utf8, ), @@ -1340,7 +1340,7 @@ impl RewriteRules for OldSplitRules { cast_expr_explicit( self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], ), ArrowDataType::Utf8, ), @@ -1351,7 +1351,7 @@ impl RewriteRules for OldSplitRules { cast_expr_explicit( self.fun_expr( "DatePart", - vec![literal_string("QUARTER"), column_expr("?column")], + vec![literal_string("quarter"), column_expr("?column")], ), ArrowDataType::Utf8, ), @@ -1380,7 +1380,7 @@ impl RewriteRules for OldSplitRules { cast_expr_explicit( self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], ), ArrowDataType::Utf8, ), @@ -1391,7 +1391,7 @@ impl RewriteRules for OldSplitRules { cast_expr_explicit( self.fun_expr( "DatePart", - vec![literal_string("QUARTER"), column_expr("?column")], + vec![literal_string("quarter"), column_expr("?column")], ), ArrowDataType::Utf8, ), @@ -2279,7 +2279,7 @@ impl RewriteRules for OldSplitRules { outer_aggregate_split_replacer( self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], ), "?cube", ), @@ -2288,7 +2288,7 @@ impl RewriteRules for OldSplitRules { outer_aggregate_split_replacer( self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], ), "?cube", ), @@ -2301,7 +2301,7 @@ impl RewriteRules for OldSplitRules { outer_aggregate_split_replacer( self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), "?cube", ), @@ -2310,7 +2310,7 @@ impl RewriteRules for OldSplitRules { outer_aggregate_split_replacer( self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), "?cube", ), @@ -2769,7 +2769,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), "?column".to_string(), ], ), @@ -2821,7 +2821,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), "?column".to_string(), ], ), @@ -2871,7 +2871,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), "?column".to_string(), ], ), @@ -2925,7 +2925,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -2955,7 +2955,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -2966,7 +2966,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -3022,7 +3022,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -3052,7 +3052,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -3063,7 +3063,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -3126,7 +3126,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -3170,7 +3170,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -3218,7 +3218,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -3265,7 +3265,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -3302,7 +3302,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -3343,7 +3343,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -3385,7 +3385,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -3403,7 +3403,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -3455,7 +3455,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -3473,7 +3473,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -3529,7 +3529,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -3547,7 +3547,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -3612,7 +3612,7 @@ impl RewriteRules for OldSplitRules { binary_expr( self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], ), "||", literal_string("-"), @@ -3620,7 +3620,7 @@ impl RewriteRules for OldSplitRules { "||", self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), ), "||", @@ -3634,7 +3634,7 @@ impl RewriteRules for OldSplitRules { binary_expr( self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), "-", literal_int(1), @@ -3687,7 +3687,7 @@ impl RewriteRules for OldSplitRules { binary_expr( self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], ), "||", literal_string("-"), @@ -3695,7 +3695,7 @@ impl RewriteRules for OldSplitRules { "||", self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), ), "||", @@ -3709,7 +3709,7 @@ impl RewriteRules for OldSplitRules { binary_expr( self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), "-", literal_int(1), @@ -3777,7 +3777,7 @@ impl RewriteRules for OldSplitRules { binary_expr( self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], ), "||", literal_string("-"), @@ -3785,7 +3785,7 @@ impl RewriteRules for OldSplitRules { "||", self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), ), "||", @@ -3804,7 +3804,7 @@ impl RewriteRules for OldSplitRules { binary_expr( self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), "-", literal_int(1), @@ -3871,7 +3871,7 @@ impl RewriteRules for OldSplitRules { binary_expr( self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], ), "||", literal_string("-"), @@ -3879,7 +3879,7 @@ impl RewriteRules for OldSplitRules { "||", self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), ), "||", @@ -3898,7 +3898,7 @@ impl RewriteRules for OldSplitRules { binary_expr( self.fun_expr( "DatePart", - vec![literal_string("MONTH"), column_expr("?column")], + vec![literal_string("month"), column_expr("?column")], ), "-", literal_int(1), @@ -4175,7 +4175,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("DAY"), + literal_string("day"), udf_expr( "dateadd", vec![ @@ -4259,7 +4259,7 @@ impl RewriteRules for OldSplitRules { self.fun_expr( "DatePart", vec![ - literal_string("DAY"), + literal_string("day"), udf_expr( "dateadd", vec![ diff --git a/rust/cubesql/cubesql/src/compile/rewrite/rules/split/granularity.rs b/rust/cubesql/cubesql/src/compile/rewrite/rules/split/granularity.rs index 805e13b73b86c..b0155afb3499d 100644 --- a/rust/cubesql/cubesql/src/compile/rewrite/rules/split/granularity.rs +++ b/rust/cubesql/cubesql/src/compile/rewrite/rules/split/granularity.rs @@ -26,7 +26,7 @@ impl SplitRules { binary_expr( self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], ), "*", literal_int(100), @@ -75,7 +75,7 @@ impl SplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), "?column".to_string(), ], ), @@ -120,7 +120,7 @@ impl SplitRules { self.fun_expr( "DatePart", vec![ - literal_string("DAY"), + literal_string("day"), udf_expr( "dateadd", vec![ @@ -223,7 +223,7 @@ impl SplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -234,7 +234,7 @@ impl SplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -256,7 +256,7 @@ impl SplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -329,7 +329,7 @@ impl SplitRules { binary_expr( self.fun_expr( "DatePart", - vec![literal_string("YEAR"), column_expr("?column")], + vec![literal_string("year"), column_expr("?column")], ), "||", literal_string("-"), @@ -344,7 +344,7 @@ impl SplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -401,7 +401,7 @@ impl SplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -422,7 +422,7 @@ impl SplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -433,7 +433,7 @@ impl SplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -491,7 +491,7 @@ impl SplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), @@ -521,7 +521,7 @@ impl SplitRules { self.fun_expr( "DatePart", vec![ - literal_string("YEAR"), + literal_string("year"), column_expr("?column"), ], ), @@ -532,7 +532,7 @@ impl SplitRules { self.fun_expr( "DatePart", vec![ - literal_string("MONTH"), + literal_string("month"), column_expr("?column"), ], ), diff --git a/rust/cubesql/cubesql/src/compile/router.rs b/rust/cubesql/cubesql/src/compile/router.rs index 9e013c202dbaf..1abe85e935fdf 100644 --- a/rust/cubesql/cubesql/src/compile/router.rs +++ b/rust/cubesql/cubesql/src/compile/router.rs @@ -15,9 +15,8 @@ use crate::{ auth_service::SqlAuthServiceAuthenticateRequest, dataframe, statement::{ - ApproximateCountDistinctVisitor, CastReplacer, DateTokenNormalizeReplacer, - RedshiftDatePartReplacer, SensitiveDataSanitizer, ToTimestampReplacer, - UdfWildcardArgReplacer, + ApproximateCountDistinctVisitor, CastReplacer, RedshiftDatePartReplacer, + SensitiveDataSanitizer, ToTimestampReplacer, UdfWildcardArgReplacer, }, ColumnFlags, ColumnType, Session, SessionManager, SessionState, }, @@ -456,7 +455,6 @@ impl QueryRouter { .session_manager .server .auth - // TODO do we want to send actual password here? .authenticate(sql_auth_request, Some(to_user.clone()), None) .await .map_err(|e| { @@ -466,8 +464,13 @@ impl QueryRouter { .set_auth_context(Some(authenticate_response.context)); } else { return Err(CompilationError::user(format!( - "{:?} is not allowed to switch to '{}'", - auth_context, to_user + "user '{}' is not allowed to switch to '{}'", + auth_context + .user() + .as_ref() + .map(|v| v.as_str()) + .unwrap_or("not specified"), + to_user ))); } } @@ -621,7 +624,6 @@ pub fn rewrite_statement(stmt: ast::Statement) -> ast::Statement { let stmt = CastReplacer::new().replace(stmt); let stmt = ToTimestampReplacer::new().replace(stmt); let stmt = UdfWildcardArgReplacer::new().replace(stmt); - let stmt = DateTokenNormalizeReplacer::new().replace(stmt); let stmt = RedshiftDatePartReplacer::new().replace(stmt); let stmt = ApproximateCountDistinctVisitor::new().replace(stmt); diff --git a/rust/cubesql/cubesql/src/compile/snapshots/cubesql__compile__tests__set_bad_user.snap b/rust/cubesql/cubesql/src/compile/snapshots/cubesql__compile__tests__set_bad_user.snap index e1530ed6b7bff..7aef689001141 100644 --- a/rust/cubesql/cubesql/src/compile/snapshots/cubesql__compile__tests__set_bad_user.snap +++ b/rust/cubesql/cubesql/src/compile/snapshots/cubesql__compile__tests__set_bad_user.snap @@ -1,6 +1,5 @@ --- source: cubesql/src/compile/mod.rs -assertion_line: 7213 -expression: "execute_queries_with_flags(vec![\"SET user = 'bad_user'\".to_string()],\n DatabaseProtocol::PostgreSQL).await.err().unwrap().to_string()" +expression: "execute_queries_with_flags(vec![\"SET user = 'bad_user'\".to_string()],\nDatabaseProtocol::PostgreSQL).await.err().unwrap().to_string()" --- -Error during planning: SQLCompilationError: User: HttpAuthContext { access_token: "access_token", base_path: "base_path" } is not allowed to switch to 'bad_user' +Error during planning: SQLCompilationError: User: user 'not specified' is not allowed to switch to 'bad_user' diff --git a/rust/cubesql/cubesql/src/compile/snapshots/cubesql__compile__tests__test_extract_string_field.snap b/rust/cubesql/cubesql/src/compile/snapshots/cubesql__compile__tests__test_extract_string_field.snap index 1f0526cb3be1a..22f6a8eeef6e6 100644 --- a/rust/cubesql/cubesql/src/compile/snapshots/cubesql__compile__tests__test_extract_string_field.snap +++ b/rust/cubesql/cubesql/src/compile/snapshots/cubesql__compile__tests__test_extract_string_field.snap @@ -1,9 +1,9 @@ --- source: cubesql/src/compile/mod.rs -expression: "execute_query(\"SELECT EXTRACT('YEAR' FROM CAST ('2020-12-25 22:48:48.000' AS timestamptz))\".to_string(),\n DatabaseProtocol::PostgreSQL).await?" +expression: "execute_query(\"SELECT EXTRACT('YEAR' FROM CAST ('2020-12-25 22:48:48.000' AS timestamptz))\".to_string(),\nDatabaseProtocol::PostgreSQL).await?" --- +---------------------------------------------------------------------------------------------+ -| datepart(Utf8("YEAR"),CAST(Utf8("2020-12-25 22:48:48.000") AS Timestamp(Nanosecond, None))) | +| datepart(Utf8("year"),CAST(Utf8("2020-12-25 22:48:48.000") AS Timestamp(Nanosecond, None))) | +---------------------------------------------------------------------------------------------+ | 2020 | +---------------------------------------------------------------------------------------------+ diff --git a/rust/cubesql/cubesql/src/compile/test/test_wrapper.rs b/rust/cubesql/cubesql/src/compile/test/test_wrapper.rs index 5db62bc5d772f..ba029cc9299c7 100644 --- a/rust/cubesql/cubesql/src/compile/test/test_wrapper.rs +++ b/rust/cubesql/cubesql/src/compile/test/test_wrapper.rs @@ -1876,7 +1876,7 @@ GROUP BY "replaceAggregationType": null, "addFilters": [{ "cubeParams": ["MultiTypeCube"], - "sql": "(((CAST(TRUNC(EXTRACT(YEAR FROM ${MultiTypeCube.dim_date0})) AS INTEGER) = 2024) AND (CAST(TRUNC(EXTRACT(MONTH FROM ${MultiTypeCube.dim_date0})) AS INTEGER) <= 11)) = TRUE)" + "sql": "(((CAST(TRUNC(EXTRACT(year FROM ${MultiTypeCube.dim_date0})) AS INTEGER) = 2024) AND (CAST(TRUNC(EXTRACT(month FROM ${MultiTypeCube.dim_date0})) AS INTEGER) <= 11)) = TRUE)" }], }, "groupingSet": null, diff --git a/rust/cubesql/cubesql/src/sql/statement.rs b/rust/cubesql/cubesql/src/sql/statement.rs index 221581aae9fd7..77ef0743a4827 100644 --- a/rust/cubesql/cubesql/src/sql/statement.rs +++ b/rust/cubesql/cubesql/src/sql/statement.rs @@ -1,4 +1,3 @@ -use crate::{compile::rewrite::rules::utils::DatePartToken, sql::shim::ConnectionError}; use itertools::Itertools; use log::trace; use pg_srv::{ @@ -12,6 +11,7 @@ use sqlparser::ast::{ use std::{collections::HashMap, error::Error}; use super::types::ColumnType; +use crate::sql::shim::ConnectionError; enum PlaceholderType { String, @@ -804,70 +804,6 @@ impl<'ast> Visitor<'ast, ConnectionError> for CastReplacer { } } -// This approach is limited to literals-in-query, but it's better than nothing -// It would be simpler to do in rewrite rules, by relying on constant folding, but would require cumbersome top-down extraction -// TODO remove this if/when DF starts supporting all of PostgreSQL aliases -#[derive(Debug)] -pub struct DateTokenNormalizeReplacer {} - -impl DateTokenNormalizeReplacer { - pub fn new() -> Self { - Self {} - } - - pub fn replace(mut self, stmt: ast::Statement) -> ast::Statement { - let mut result = stmt; - - self.visit_statement(&mut result).unwrap(); - - result - } -} - -impl<'ast> Visitor<'ast, ConnectionError> for DateTokenNormalizeReplacer { - // TODO support EXTRACT normalization after support in sqlparser - fn visit_function(&mut self, fun: &mut Function) -> Result<(), ConnectionError> { - for res in fun.name.0.iter_mut() { - self.visit_identifier(res)?; - } - - let fn_name = fun.name.to_string().to_lowercase(); - match (fn_name.as_str(), fun.args.len()) { - ("date_trunc", 2) | ("date_part", 2) => { - match &mut fun.args[0] { - FunctionArg::Unnamed(FunctionArgExpr::Expr(Expr::Value( - Value::SingleQuotedString(token), - ))) => { - if let Ok(parsed) = token.parse::() { - *token = parsed.as_str().to_string(); - } else { - // Do nothing - }; - } - _ => { - // Do nothing - } - } - } - _ => { - // Do nothing - } - } - - self.visit_function_args(&mut fun.args)?; - if let Some(over) = &mut fun.over { - for res in over.partition_by.iter_mut() { - self.visit_expr(res)?; - } - for order_expr in over.order_by.iter_mut() { - self.visit_expr(&mut order_expr.expr)?; - } - } - - Ok(()) - } -} - #[derive(Debug)] pub struct RedshiftDatePartReplacer {} diff --git a/rust/cubesql/package.json b/rust/cubesql/package.json index c4846c482aa66..0737f236c788e 100644 --- a/rust/cubesql/package.json +++ b/rust/cubesql/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/cubesql", - "version": "1.3.34", + "version": "1.3.35", "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/cubesqlplanner/Cargo.lock b/rust/cubesqlplanner/Cargo.lock index 3c6bb74f6e8f8..cff6431000f33 100644 --- a/rust/cubesqlplanner/Cargo.lock +++ b/rust/cubesqlplanner/Cargo.lock @@ -664,7 +664,7 @@ dependencies = [ [[package]] name = "cube-ext" version = "1.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "arrow", "chrono", @@ -777,7 +777,7 @@ dependencies = [ [[package]] name = "datafusion" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "ahash 0.7.8", "arrow", @@ -810,7 +810,7 @@ dependencies = [ [[package]] name = "datafusion-common" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "arrow", "ordered-float 2.10.1", @@ -821,7 +821,7 @@ dependencies = [ [[package]] name = "datafusion-data-access" version = "1.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "async-trait", "chrono", @@ -834,7 +834,7 @@ dependencies = [ [[package]] name = "datafusion-expr" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "ahash 0.7.8", "arrow", @@ -845,7 +845,7 @@ dependencies = [ [[package]] name = "datafusion-physical-expr" version = "7.0.0" -source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=edbe6a8b62c1cc9f1feb0be83f089f155c662298#edbe6a8b62c1cc9f1feb0be83f089f155c662298" +source = "git+https://github.com/cube-js/arrow-datafusion.git?rev=637003a448a98bbc5e1585d0f01cc19ba9d50668#637003a448a98bbc5e1585d0f01cc19ba9d50668" dependencies = [ "ahash 0.7.8", "arrow", diff --git a/rust/cubestore/CHANGELOG.md b/rust/cubestore/CHANGELOG.md index 12b0646bc993a..e269579d9f637 100644 --- a/rust/cubestore/CHANGELOG.md +++ b/rust/cubestore/CHANGELOG.md @@ -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.3.35](https://github.com/cube-js/cube/compare/v1.3.34...v1.3.35) (2025-07-09) + +**Note:** Version bump only for package @cubejs-backend/cubestore + ## [1.3.34](https://github.com/cube-js/cube/compare/v1.3.33...v1.3.34) (2025-07-04) **Note:** Version bump only for package @cubejs-backend/cubestore diff --git a/rust/cubestore/package.json b/rust/cubestore/package.json index 781d8831f799a..6a1babbf747bc 100644 --- a/rust/cubestore/package.json +++ b/rust/cubestore/package.json @@ -1,6 +1,6 @@ { "name": "@cubejs-backend/cubestore", - "version": "1.3.34", + "version": "1.3.35", "description": "Cube.js pre-aggregation storage layer.", "main": "dist/src/index.js", "typings": "dist/src/index.d.ts", @@ -27,7 +27,7 @@ "author": "Cube Dev, Inc.", "license": "Apache-2.0", "devDependencies": { - "@cubejs-backend/linter": "1.3.34", + "@cubejs-backend/linter": "1.3.35", "@types/jest": "^27", "@types/node": "^18", "jest": "^27", @@ -37,7 +37,7 @@ "access": "public" }, "dependencies": { - "@cubejs-backend/shared": "1.3.34", + "@cubejs-backend/shared": "1.3.35", "@octokit/core": "^3.2.5", "source-map-support": "^0.5.19" }, diff --git a/yarn.lock b/yarn.lock index 56e5c8f0ed21f..4678fb93ad1e2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1476,7 +1476,7 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.16.4", "@babel/parser@^7.18.4", "@babel/parser@^7.20.7", "@babel/parser@^7.23.0", "@babel/parser@^7.23.9", "@babel/parser@^7.24", "@babel/parser@^7.25.0", "@babel/parser@^7.26.10", "@babel/parser@^7.27.0", "@babel/parser@^7.7.0": +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.18.4", "@babel/parser@^7.20.7", "@babel/parser@^7.23.0", "@babel/parser@^7.23.9", "@babel/parser@^7.24", "@babel/parser@^7.25.0", "@babel/parser@^7.26.10", "@babel/parser@^7.27.0", "@babel/parser@^7.7.0": version "7.27.0" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.27.0.tgz#3d7d6ee268e41d2600091cbd4e145ffee85a44ec" integrity sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg== @@ -2403,12 +2403,7 @@ resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.6.0.tgz#ec6cd237440700bc23ca23087f513c75508958b0" integrity sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA== -"@ctrl/tinycolor@^3.4.0": - version "3.4.0" - resolved "https://registry.yarnpkg.com/@ctrl/tinycolor/-/tinycolor-3.4.0.tgz#c3c5ae543c897caa9c2a68630bed355be5f9990f" - integrity sha512-JZButFdZ1+/xAfpguQHoabIXkcqRRKpMrWKBkpEZZyxfY9C1DpADFB8PEqGSTeFr135SaTRfKqGKx5xSCLI7ZQ== - -"@ctrl/tinycolor@^3.6.1": +"@ctrl/tinycolor@^3.4.0", "@ctrl/tinycolor@^3.6.1": version "3.6.1" resolved "https://registry.yarnpkg.com/@ctrl/tinycolor/-/tinycolor-3.6.1.tgz#b6c75a56a1947cc916ea058772d666a2c8932f31" integrity sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA== @@ -3141,17 +3136,30 @@ resolved "https://registry.yarnpkg.com/@graphql-typed-document-node/core/-/core-3.2.0.tgz#5f3d96ec6b2354ad6d8a28bf216a1d97b5426861" integrity sha512-mB9oAsNCm9aM3/SOv4YtBMqZbYj10R7dkq8byBqxGY/ncFwhf2oQzMV+LCRlWoDSEBJ3COiR1yeDvMtsoOsuFQ== -"@hapi/hoek@^9.0.0": - version "9.2.1" - resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.2.1.tgz#9551142a1980503752536b5050fd99f4a7f13b17" - integrity sha512-gfta+H8aziZsm8pZa0vj04KO6biEiisppNgA1kbJvFrrWu9Vm7eaUEy76DIxsuTaWvti5fkJVhllWc6ZTE+Mdw== +"@grpc/grpc-js@^1.11.1": + version "1.13.4" + resolved "https://registry.yarnpkg.com/@grpc/grpc-js/-/grpc-js-1.13.4.tgz#922fbc496e229c5fa66802d2369bf181c1df1c5a" + integrity sha512-GsFaMXCkMqkKIvwCQjCrwH+GHbPKBjhwo/8ZuUkWHqbI73Kky9I+pQltrlT0+MWpedCoosda53lgjYfyEPgxBg== + dependencies: + "@grpc/proto-loader" "^0.7.13" + "@js-sdsl/ordered-map" "^4.4.2" -"@hapi/hoek@^9.3.0": +"@grpc/proto-loader@^0.7.13": + version "0.7.15" + resolved "https://registry.yarnpkg.com/@grpc/proto-loader/-/proto-loader-0.7.15.tgz#4cdfbf35a35461fc843abe8b9e2c0770b5095e60" + integrity sha512-tMXdRCfYVixjuFK+Hk0Q1s38gV9zDiDJfWL3h1rv4Qc39oILCu1TRTDt7+fGUI8K4G1Fj125Hx/ru3azECWTyQ== + dependencies: + lodash.camelcase "^4.3.0" + long "^5.0.0" + protobufjs "^7.2.5" + yargs "^17.7.2" + +"@hapi/hoek@^9.0.0", "@hapi/hoek@^9.3.0": version "9.3.0" resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ== -"@hapi/topo@^5.0.0", "@hapi/topo@^5.1.0": +"@hapi/topo@^5.1.0": version "5.1.0" resolved "https://registry.yarnpkg.com/@hapi/topo/-/topo-5.1.0.tgz#dc448e332c6c6e37a4dc02fd84ba8d44b9afb012" integrity sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg== @@ -4167,12 +4175,7 @@ "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" -"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": - version "1.4.15" - resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" - integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== - -"@jridgewell/sourcemap-codec@^1.5.0": +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.5.0": version "1.5.0" resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a" integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== @@ -4190,6 +4193,11 @@ resolved "https://registry.yarnpkg.com/@js-joda/core/-/core-5.6.5.tgz#c766894b49eb8044480b91625fb7dc370e8182ef" integrity sha512-3zwefSMwHpu8iVUW8YYz227sIv6UFqO31p1Bf1ZH/Vom7CmNyUsXjDBlnNzcuhmOL1XfxZ3nvND42kR23XlbcQ== +"@js-sdsl/ordered-map@^4.4.2": + version "4.4.2" + resolved "https://registry.yarnpkg.com/@js-sdsl/ordered-map/-/ordered-map-4.4.2.tgz#9299f82874bab9e4c7f9c48d865becbfe8d6907c" + integrity sha512-iUKgm52T8HOE/makSxjqoWhe95ZJA1/G1sYsGev2JDKUSS14KAgg1LHb+Ba+IPow0xflbnSkOsZcO08C7w1gYw== + "@jsonjoy.com/base64@^1.1.1": version "1.1.2" resolved "https://registry.yarnpkg.com/@jsonjoy.com/base64/-/base64-1.1.2.tgz#cf8ea9dcb849b81c95f14fc0aaa151c6b54d2578" @@ -5282,6 +5290,59 @@ resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.23.tgz#498e41218ab3b6a1419c735e5c6ae2c5ed609b6c" integrity sha512-C16M+IYz0rgRhWZdCmK+h58JMv8vijAA61gmz2rspCSwKwzBebpdcsiUmwrtJRdphuY30i6BSLEOP8ppbNLyLg== +"@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@protobufjs/aspromise/-/aspromise-1.1.2.tgz#9b8b0cc663d669a7d8f6f5d0893a14d348f30fbf" + integrity sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ== + +"@protobufjs/base64@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@protobufjs/base64/-/base64-1.1.2.tgz#4c85730e59b9a1f1f349047dbf24296034bb2735" + integrity sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg== + +"@protobufjs/codegen@^2.0.4": + version "2.0.4" + resolved "https://registry.yarnpkg.com/@protobufjs/codegen/-/codegen-2.0.4.tgz#7ef37f0d010fb028ad1ad59722e506d9262815cb" + integrity sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg== + +"@protobufjs/eventemitter@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz#355cbc98bafad5978f9ed095f397621f1d066b70" + integrity sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q== + +"@protobufjs/fetch@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/fetch/-/fetch-1.1.0.tgz#ba99fb598614af65700c1619ff06d454b0d84c45" + integrity sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ== + dependencies: + "@protobufjs/aspromise" "^1.1.1" + "@protobufjs/inquire" "^1.1.0" + +"@protobufjs/float@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@protobufjs/float/-/float-1.0.2.tgz#5e9e1abdcb73fc0a7cb8b291df78c8cbd97b87d1" + integrity sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ== + +"@protobufjs/inquire@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/inquire/-/inquire-1.1.0.tgz#ff200e3e7cf2429e2dcafc1140828e8cc638f089" + integrity sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q== + +"@protobufjs/path@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@protobufjs/path/-/path-1.1.2.tgz#6cc2b20c5c9ad6ad0dccfd21ca7673d8d7fbf68d" + integrity sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA== + +"@protobufjs/pool@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/pool/-/pool-1.1.0.tgz#09fd15f2d6d3abfa9b65bc366506d6ad7846ff54" + integrity sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw== + +"@protobufjs/utf8@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570" + integrity sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw== + "@react-aria/breadcrumbs@^3.5.18": version "3.5.18" resolved "https://registry.yarnpkg.com/@react-aria/breadcrumbs/-/breadcrumbs-3.5.18.tgz#72133bdb61744f538fba41f9e06864f980860e1b" @@ -6418,11 +6479,6 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.22.4.tgz#8b613b9725e8f9479d142970b106b6ae878610d5" integrity sha512-Fxamp4aEZnfPOcGA8KSNEohV8hX7zVHOemC8jVBoBUHu5zpJK/Eu3uJwt6BMgy9fkvzxDaurgj96F/NiLukF2w== -"@rollup/rollup-android-arm-eabi@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.31.0.tgz#d4dd60da0075a6ce9a6c76d71b8204f3e1822285" - integrity sha512-9NrR4033uCbUBRgvLcBrJofa2KY9DzxL2UKZ1/4xA/mnTNyhZCWBuD8X3tPm1n4KxcgaraOYgrFKSgwjASfmlA== - "@rollup/rollup-android-arm-eabi@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.39.0.tgz#1d8cc5dd3d8ffe569d8f7f67a45c7909828a0f66" @@ -6433,11 +6489,6 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.22.4.tgz#654ca1049189132ff602bfcf8df14c18da1f15fb" integrity sha512-VXoK5UMrgECLYaMuGuVTOx5kcuap1Jm8g/M83RnCHBKOqvPPmROFJGQaZhGccnsFtfXQ3XYa4/jMCJvZnbJBdA== -"@rollup/rollup-android-arm64@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.31.0.tgz#25c4d33259a7a2ccd2f52a5ffcc0bb3ab3f0729d" - integrity sha512-iBbODqT86YBFHajxxF8ebj2hwKm1k8PTBQSojSt3d1FFt1gN+xf4CowE47iN0vOSdnd+5ierMHBbu/rHc7nq5g== - "@rollup/rollup-android-arm64@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.39.0.tgz#9c136034d3d9ed29d0b138c74dd63c5744507fca" @@ -6448,11 +6499,6 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.22.4.tgz#6d241d099d1518ef0c2205d96b3fa52e0fe1954b" integrity sha512-xMM9ORBqu81jyMKCDP+SZDhnX2QEVQzTcC6G18KlTQEzWK8r/oNZtKuZaCcHhnsa6fEeOBionoyl5JsAbE/36Q== -"@rollup/rollup-darwin-arm64@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.31.0.tgz#d137dff254b19163a6b52ac083a71cd055dae844" - integrity sha512-WHIZfXgVBX30SWuTMhlHPXTyN20AXrLH4TEeH/D0Bolvx9PjgZnn4H677PlSGvU6MKNsjCQJYczkpvBbrBnG6g== - "@rollup/rollup-darwin-arm64@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.39.0.tgz#830d07794d6a407c12b484b8cf71affd4d3800a6" @@ -6463,31 +6509,16 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.22.4.tgz#42bd19d292a57ee11734c980c4650de26b457791" integrity sha512-aJJyYKQwbHuhTUrjWjxEvGnNNBCnmpHDvrb8JFDbeSH3m2XdHcxDd3jthAzvmoI8w/kSjd2y0udT+4okADsZIw== -"@rollup/rollup-darwin-x64@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.31.0.tgz#58ff20b5dacb797d3adca19f02a21c532f9d55bf" - integrity sha512-hrWL7uQacTEF8gdrQAqcDy9xllQ0w0zuL1wk1HV8wKGSGbKPVjVUv/DEwT2+Asabf8Dh/As+IvfdU+H8hhzrQQ== - "@rollup/rollup-darwin-x64@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.39.0.tgz#b26f0f47005c1fa5419a880f323ed509dc8d885c" integrity sha512-mKXpNZLvtEbgu6WCkNij7CGycdw9cJi2k9v0noMb++Vab12GZjFgUXD69ilAbBh034Zwn95c2PNSz9xM7KYEAQ== -"@rollup/rollup-freebsd-arm64@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.31.0.tgz#96ce1a241c591ec3e068f4af765d94eddb24e60c" - integrity sha512-S2oCsZ4hJviG1QjPY1h6sVJLBI6ekBeAEssYKad1soRFv3SocsQCzX6cwnk6fID6UQQACTjeIMB+hyYrFacRew== - "@rollup/rollup-freebsd-arm64@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.39.0.tgz#2b60c81ac01ff7d1bc8df66aee7808b6690c6d19" integrity sha512-jivRRlh2Lod/KvDZx2zUR+I4iBfHcu2V/BA2vasUtdtTN2Uk3jfcZczLa81ESHZHPHy4ih3T/W5rPFZ/hX7RtQ== -"@rollup/rollup-freebsd-x64@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.31.0.tgz#e59e7ede505be41f0b4311b0b943f8eb44938467" - integrity sha512-pCANqpynRS4Jirn4IKZH4tnm2+2CqCNLKD7gAdEjzdLGbH1iO0zouHz4mxqg0uEMpO030ejJ0aA6e1PJo2xrPA== - "@rollup/rollup-freebsd-x64@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.39.0.tgz#4826af30f4d933d82221289068846c9629cc628c" @@ -6498,11 +6529,6 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.22.4.tgz#f23555ee3d8fe941c5c5fd458cd22b65eb1c2232" integrity sha512-j63YtCIRAzbO+gC2L9dWXRh5BFetsv0j0va0Wi9epXDgU/XUi5dJKo4USTttVyK7fGw2nPWK0PbAvyliz50SCQ== -"@rollup/rollup-linux-arm-gnueabihf@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.31.0.tgz#e455ca6e4ff35bd46d62201c153352e717000a7b" - integrity sha512-0O8ViX+QcBd3ZmGlcFTnYXZKGbFu09EhgD27tgTdGnkcYXLat4KIsBBQeKLR2xZDCXdIBAlWLkiXE1+rJpCxFw== - "@rollup/rollup-linux-arm-gnueabihf@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.39.0.tgz#a1f4f963d5dcc9e5575c7acf9911824806436bf7" @@ -6513,11 +6539,6 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.22.4.tgz#f3bbd1ae2420f5539d40ac1fde2b38da67779baa" integrity sha512-dJnWUgwWBX1YBRsuKKMOlXCzh2Wu1mlHzv20TpqEsfdZLb3WoJW2kIEsGwLkroYf24IrPAvOT/ZQ2OYMV6vlrg== -"@rollup/rollup-linux-arm-musleabihf@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.31.0.tgz#bc1a93d807d19e70b1e343a5bfea43723bcd6327" - integrity sha512-w5IzG0wTVv7B0/SwDnMYmbr2uERQp999q8FMkKG1I+j8hpPX2BYFjWe69xbhbP6J9h2gId/7ogesl9hwblFwwg== - "@rollup/rollup-linux-arm-musleabihf@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.39.0.tgz#e924b0a8b7c400089146f6278446e6b398b75a06" @@ -6528,11 +6549,6 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.22.4.tgz#7abe900120113e08a1f90afb84c7c28774054d15" integrity sha512-AdPRoNi3NKVLolCN/Sp4F4N1d98c4SBnHMKoLuiG6RXgoZ4sllseuGioszumnPGmPM2O7qaAX/IJdeDU8f26Aw== -"@rollup/rollup-linux-arm64-gnu@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.31.0.tgz#f38bf843f1dc3d5de680caf31084008846e3efae" - integrity sha512-JyFFshbN5xwy6fulZ8B/8qOqENRmDdEkcIMF0Zz+RsfamEW+Zabl5jAb0IozP/8UKnJ7g2FtZZPEUIAlUSX8cA== - "@rollup/rollup-linux-arm64-gnu@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.39.0.tgz#cb43303274ec9a716f4440b01ab4e20c23aebe20" @@ -6543,21 +6559,11 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.22.4.tgz#9e655285c8175cd44f57d6a1e8e5dedfbba1d820" integrity sha512-Gl0AxBtDg8uoAn5CCqQDMqAx22Wx22pjDOjBdmG0VIWX3qUBHzYmOKh8KXHL4UpogfJ14G4wk16EQogF+v8hmA== -"@rollup/rollup-linux-arm64-musl@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.31.0.tgz#b3987a96c18b7287129cf735be2dbf83e94d9d05" - integrity sha512-kpQXQ0UPFeMPmPYksiBL9WS/BDiQEjRGMfklVIsA0Sng347H8W2iexch+IEwaR7OVSKtr2ZFxggt11zVIlZ25g== - "@rollup/rollup-linux-arm64-musl@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.39.0.tgz#531c92533ce3d167f2111bfcd2aa1a2041266987" integrity sha512-vYanR6MtqC7Z2SNr8gzVnzUul09Wi1kZqJaek3KcIlI/wq5Xtq4ZPIZ0Mr/st/sv/NnaPwy/D4yXg5x0B3aUUA== -"@rollup/rollup-linux-loongarch64-gnu@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.31.0.tgz#0f0324044e71c4f02e9f49e7ec4e347b655b34ee" - integrity sha512-pMlxLjt60iQTzt9iBb3jZphFIl55a70wexvo8p+vVFK+7ifTRookdoXX3bOsRdmfD+OKnMozKO6XM4zR0sHRrQ== - "@rollup/rollup-linux-loongarch64-gnu@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.39.0.tgz#53403889755d0c37c92650aad016d5b06c1b061a" @@ -6568,11 +6574,6 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.22.4.tgz#9a79ae6c9e9d8fe83d49e2712ecf4302db5bef5e" integrity sha512-3aVCK9xfWW1oGQpTsYJJPF6bfpWfhbRnhdlyhak2ZiyFLDaayz0EP5j9V1RVLAAxlmWKTDfS9wyRyY3hvhPoOg== -"@rollup/rollup-linux-powerpc64le-gnu@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.31.0.tgz#809479f27f1fd5b4eecd2aa732132ad952d454ba" - integrity sha512-D7TXT7I/uKEuWiRkEFbed1UUYZwcJDU4vZQdPTcepK7ecPhzKOYk4Er2YR4uHKme4qDeIh6N3XrLfpuM7vzRWQ== - "@rollup/rollup-linux-powerpc64le-gnu@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.39.0.tgz#f669f162e29094c819c509e99dbeced58fc708f9" @@ -6583,11 +6584,6 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.22.4.tgz#67ac70eca4ace8e2942fabca95164e8874ab8128" integrity sha512-ePYIir6VYnhgv2C5Xe9u+ico4t8sZWXschR6fMgoPUK31yQu7hTEJb7bCqivHECwIClJfKgE7zYsh1qTP3WHUA== -"@rollup/rollup-linux-riscv64-gnu@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.31.0.tgz#7bc75c4f22db04d3c972f83431739cfa41c6a36e" - integrity sha512-wal2Tc8O5lMBtoePLBYRKj2CImUCJ4UNGJlLwspx7QApYny7K1cUYlzQ/4IGQBLmm+y0RS7dwc3TDO/pmcneTw== - "@rollup/rollup-linux-riscv64-gnu@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.39.0.tgz#4bab37353b11bcda5a74ca11b99dea929657fd5f" @@ -6603,11 +6599,6 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.22.4.tgz#9f883a7440f51a22ed7f99e1d070bd84ea5005fc" integrity sha512-GqFJ9wLlbB9daxhVlrTe61vJtEY99/xB3C8e4ULVsVfflcpmR6c8UZXjtkMA6FhNONhj2eA5Tk9uAVw5orEs4Q== -"@rollup/rollup-linux-s390x-gnu@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.31.0.tgz#cfe8052345c55864d83ae343362cf1912480170e" - integrity sha512-O1o5EUI0+RRMkK9wiTVpk2tyzXdXefHtRTIjBbmFREmNMy7pFeYXCFGbhKFwISA3UOExlo5GGUuuj3oMKdK6JQ== - "@rollup/rollup-linux-s390x-gnu@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.39.0.tgz#7181c329395ed53340a0c59678ad304a99627f6d" @@ -6618,11 +6609,6 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.22.4.tgz#70116ae6c577fe367f58559e2cffb5641a1dd9d0" integrity sha512-87v0ol2sH9GE3cLQLNEy0K/R0pz1nvg76o8M5nhMR0+Q+BBGLnb35P0fVz4CQxHYXaAOhE8HhlkaZfsdUOlHwg== -"@rollup/rollup-linux-x64-gnu@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.31.0.tgz#c6b048f1e25f3fea5b4bd246232f4d07a159c5a0" - integrity sha512-zSoHl356vKnNxwOWnLd60ixHNPRBglxpv2g7q0Cd3Pmr561gf0HiAcUBRL3S1vPqRC17Zo2CX/9cPkqTIiai1g== - "@rollup/rollup-linux-x64-gnu@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.39.0.tgz#00825b3458094d5c27cb4ed66e88bfe9f1e65f90" @@ -6633,11 +6619,6 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.22.4.tgz#f473f88219feb07b0b98b53a7923be716d1d182f" integrity sha512-UV6FZMUgePDZrFjrNGIWzDo/vABebuXBhJEqrHxrGiU6HikPy0Z3LfdtciIttEUQfuDdCn8fqh7wiFJjCNwO+g== -"@rollup/rollup-linux-x64-musl@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.31.0.tgz#615273ac52d1a201f4de191cbd3389016a9d7d80" - integrity sha512-ypB/HMtcSGhKUQNiFwqgdclWNRrAYDH8iMYH4etw/ZlGwiTVxBz2tDrGRrPlfZu6QjXwtd+C3Zib5pFqID97ZA== - "@rollup/rollup-linux-x64-musl@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.39.0.tgz#81caac2a31b8754186f3acc142953a178fcd6fba" @@ -6648,11 +6629,6 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.22.4.tgz#4349482d17f5d1c58604d1c8900540d676f420e0" integrity sha512-BjI+NVVEGAXjGWYHz/vv0pBqfGoUH0IGZ0cICTn7kB9PyjrATSkX+8WkguNjWoj2qSr1im/+tTGRaY+4/PdcQw== -"@rollup/rollup-win32-arm64-msvc@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.31.0.tgz#32ed85810c1b831c648eca999d68f01255b30691" - integrity sha512-JuhN2xdI/m8Hr+aVO3vspO7OQfUFO6bKLIRTAy0U15vmWjnZDLrEgCZ2s6+scAYaQVpYSh9tZtRijApw9IXyMw== - "@rollup/rollup-win32-arm64-msvc@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.39.0.tgz#3a3f421f5ce9bd99ed20ce1660cce7cee3e9f199" @@ -6663,11 +6639,6 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.22.4.tgz#a6fc39a15db618040ec3c2a24c1e26cb5f4d7422" integrity sha512-SiWG/1TuUdPvYmzmYnmd3IEifzR61Tragkbx9D3+R8mzQqDBz8v+BvZNDlkiTtI9T15KYZhP0ehn3Dld4n9J5g== -"@rollup/rollup-win32-ia32-msvc@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.31.0.tgz#d47effada68bcbfdccd30c4a788d42e4542ff4d3" - integrity sha512-U1xZZXYkvdf5MIWmftU8wrM5PPXzyaY1nGCI4KI4BFfoZxHamsIe+BtnPLIvvPykvQWlVbqUXdLa4aJUuilwLQ== - "@rollup/rollup-win32-ia32-msvc@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.39.0.tgz#a44972d5cdd484dfd9cf3705a884bf0c2b7785a7" @@ -6678,11 +6649,6 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.22.4.tgz#3dd5d53e900df2a40841882c02e56f866c04d202" integrity sha512-j8pPKp53/lq9lMXN57S8cFz0MynJk8OWNuUnXct/9KCpKU7DgU3bYMJhwWmcqC0UU29p8Lr0/7KEVcaM6bf47Q== -"@rollup/rollup-win32-x64-msvc@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.31.0.tgz#7a2d89a82cf0388d60304964217dd7beac6de645" - integrity sha512-ul8rnCsUumNln5YWwz0ted2ZHFhzhRRnkpBZ+YRuHoRAlUji9KChpOUOndY7uykrPEPXVbHLlsdo6v5yXo/TXw== - "@rollup/rollup-win32-x64-msvc@4.39.0": version "4.39.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.39.0.tgz#bfe0214e163f70c4fec1c8f7bb8ce266f4c05b7e" @@ -6706,13 +6672,6 @@ "@angular-devkit/schematics" "18.2.18" jsonc-parser "3.3.1" -"@sideway/address@^4.1.3": - version "4.1.4" - resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" - integrity sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw== - dependencies: - "@hapi/hoek" "^9.0.0" - "@sideway/address@^4.1.5": version "4.1.5" resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.5.tgz#4bc149a0076623ced99ca8208ba780d65a99b9d5" @@ -7347,12 +7306,12 @@ resolved "https://registry.yarnpkg.com/@tediousjs/connection-string/-/connection-string-0.5.0.tgz#9b3d858c040aac6bdf5584bf45370cef5b6522b4" integrity sha512-7qSgZbincDDDFyRweCIEvZULFAw5iz/DeunhvuxpL31nfntX3P4Yd4HkHBRg9H8CdqY1e5WFN1PZIz/REL9MVQ== -"@testcontainers/kafka@~10.13.0": - version "10.13.0" - resolved "https://registry.yarnpkg.com/@testcontainers/kafka/-/kafka-10.13.0.tgz#c8498d1534e38efc9269eaaaea65acbab5c9a0e4" - integrity sha512-r7glnNVUom9GaEH8WknTrB3+gFvtm5lDjgwcuLgGLRpZEKUHX+H2OP8JulA0sgfwvDEcdZHLPah+Aoc0OkuAdg== +"@testcontainers/kafka@~10.28.0": + version "10.28.0" + resolved "https://registry.yarnpkg.com/@testcontainers/kafka/-/kafka-10.28.0.tgz#eb658c06d8f72ce3ed54587b0acf29d27e06d2d1" + integrity sha512-4FxjliTmDf+1UpXxDi2qUQsxXRiMMqBq9sSiazguft7sPvHpZ5Snh/OdW+rBBJ2f8+xF0474LS+57vF+q5M6uw== dependencies: - testcontainers "^10.13.0" + testcontainers "^10.28.0" "@tootallnate/once@1": version "1.1.2" @@ -7488,15 +7447,7 @@ dependencies: "@types/node" "*" -"@types/connect-history-api-fallback@^1.3.5": - version "1.5.3" - resolved "https://registry.yarnpkg.com/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.3.tgz#7793aa2160cef7db0ce5fe2b8aab621200f1a470" - integrity sha512-6mfQ6iNvhSKCZJoY6sIG3m0pKkdUcweVNOLuBBKvoWGzl2yRxOJcYOTRyLKt3nxXvBLJWa6QkW//tgbIwJehmA== - dependencies: - "@types/express-serve-static-core" "*" - "@types/node" "*" - -"@types/connect-history-api-fallback@^1.5.4": +"@types/connect-history-api-fallback@^1.3.5", "@types/connect-history-api-fallback@^1.5.4": version "1.5.4" resolved "https://registry.yarnpkg.com/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz#7de71645a103056b48ac3ce07b3520b819c1d5b3" integrity sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw== @@ -7614,10 +7565,10 @@ "@types/node" "*" "@types/ssh2" "*" -"@types/dockerode@^3.3.29": - version "3.3.30" - resolved "https://registry.yarnpkg.com/@types/dockerode/-/dockerode-3.3.30.tgz#df766a75a9cf1fc6d3cdde7d5329f749fd59d457" - integrity sha512-MuxQQ7yQ+VzLbrIV2D8K2YqOYBd5Mz4yGbauEipFcn894bLnGwewNKXGKLlb7wpXTG4dn+13lk51qPXmKJ2+YA== +"@types/dockerode@^3.3.35": + version "3.3.42" + resolved "https://registry.yarnpkg.com/@types/dockerode/-/dockerode-3.3.42.tgz#7f7da393724cf0b3a09764e982139f778a37ba2b" + integrity sha512-U1jqHMShibMEWHdxYhj3rCMNCiLx5f35i4e3CEUuW+JSSszc/tVqc6WCAPdhwBymG5R/vgbcceagK0St7Cq6Eg== dependencies: "@types/docker-modem" "*" "@types/node" "*" @@ -7654,16 +7605,16 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== -"@types/estree@1.0.6", "@types/estree@^1.0.6": - version "1.0.6" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50" - integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw== - "@types/estree@1.0.7", "@types/estree@^1.0.0", "@types/estree@^1.0.5": version "1.0.7" resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.7.tgz#4158d3105276773d5b7695cd4834b1722e4f37a8" integrity sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ== +"@types/estree@^1.0.6": + version "1.0.6" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50" + integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw== + "@types/express-serve-static-core@*": version "4.17.26" resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.26.tgz#5d9a8eeecb9d5f9d7fc1d85f541512a84638ae88" @@ -7740,14 +7691,7 @@ "@types/minimatch" "*" "@types/node" "*" -"@types/graceful-fs@^4.1.2": - version "4.1.5" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" - integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw== - dependencies: - "@types/node" "*" - -"@types/graceful-fs@^4.1.3": +"@types/graceful-fs@^4.1.2", "@types/graceful-fs@^4.1.3": version "4.1.9" resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.9.tgz#2a06bc0f68a20ab37b3e36aa238be6abdf49e8b4" integrity sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ== @@ -7919,7 +7863,7 @@ dependencies: "@types/node" "*" -"@types/node@*", "@types/node@>=18", "@types/node@^18", "@types/node@^20", "@types/node@^22.5.5": +"@types/node@*", "@types/node@>=13.7.0", "@types/node@>=18", "@types/node@^18", "@types/node@^20", "@types/node@^22.5.5": version "20.17.28" resolved "https://registry.yarnpkg.com/@types/node/-/node-20.17.28.tgz#c10436f3a3c996f535919a9b082e2c47f19c40a1" integrity sha512-DHlH/fNL6Mho38jTy7/JT7sn2wnXI+wULR6PV4gy4VHLVvnrV/d3pHAMQHhc4gjdLmK2ZiPoMxzp6B3yRajLSQ== @@ -8730,16 +8674,6 @@ semver "^7.3.4" strip-ansi "^6.0.0" -"@vue/compiler-core@3.2.26": - version "3.2.26" - resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.2.26.tgz#9ab92ae624da51f7b6064f4679c2d4564f437cc8" - integrity sha512-N5XNBobZbaASdzY9Lga2D9Lul5vdCIOXvUMd6ThcN8zgqQhPKfCV+wfAJNNJKQkSHudnYRO2gEB+lp0iN3g2Tw== - dependencies: - "@babel/parser" "^7.16.4" - "@vue/shared" "3.2.26" - estree-walker "^2.0.2" - source-map "^0.6.1" - "@vue/compiler-core@3.3.8": version "3.3.8" resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.3.8.tgz#301bb60d0245265a88ed5b30e200fbf223acb313" @@ -8750,14 +8684,6 @@ estree-walker "^2.0.2" source-map-js "^1.0.2" -"@vue/compiler-dom@3.2.26": - version "3.2.26" - resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.2.26.tgz#c7a7b55d50a7b7981dd44fc28211df1450482667" - integrity sha512-smBfaOW6mQDxcT3p9TKT6mE22vjxjJL50GFVJiI0chXYGU/xzC05QRGrW3HHVuJrmLTLx5zBhsZ2dIATERbarg== - dependencies: - "@vue/compiler-core" "3.2.26" - "@vue/shared" "3.2.26" - "@vue/compiler-dom@3.3.8": version "3.3.8" resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.3.8.tgz#09d832514b9b8d9415a3816b065d69dbefcc7e9b" @@ -8775,7 +8701,7 @@ postcss "^8.4.14" source-map "^0.6.1" -"@vue/compiler-sfc@3.3.8": +"@vue/compiler-sfc@3.3.8", "@vue/compiler-sfc@^3.0.11": version "3.3.8" resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.3.8.tgz#40b18e48aa00260950964d1d72157668521be0e1" integrity sha512-WMzbUrlTjfYF8joyT84HfwwXo+8WPALuPxhy+BZ6R4Aafls+jDBnSz8PDz60uFhuqFbl3HxRfxvDzrUf3THwpA== @@ -8791,30 +8717,6 @@ postcss "^8.4.31" source-map-js "^1.0.2" -"@vue/compiler-sfc@^3.0.11": - version "3.2.26" - resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.2.26.tgz#3ce76677e4aa58311655a3bea9eb1cb804d2273f" - integrity sha512-ePpnfktV90UcLdsDQUh2JdiTuhV0Skv2iYXxfNMOK/F3Q+2BO0AulcVcfoksOpTJGmhhfosWfMyEaEf0UaWpIw== - dependencies: - "@babel/parser" "^7.16.4" - "@vue/compiler-core" "3.2.26" - "@vue/compiler-dom" "3.2.26" - "@vue/compiler-ssr" "3.2.26" - "@vue/reactivity-transform" "3.2.26" - "@vue/shared" "3.2.26" - estree-walker "^2.0.2" - magic-string "^0.25.7" - postcss "^8.1.10" - source-map "^0.6.1" - -"@vue/compiler-ssr@3.2.26": - version "3.2.26" - resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.2.26.tgz#fd049523341fbf4ab5e88e25eef566d862894ba7" - integrity sha512-2mywLX0ODc4Zn8qBoA2PDCsLEZfpUGZcyoFRLSOjyGGK6wDy2/5kyDOWtf0S0UvtoyVq95OTSGIALjZ4k2q/ag== - dependencies: - "@vue/compiler-dom" "3.2.26" - "@vue/shared" "3.2.26" - "@vue/compiler-ssr@3.3.8": version "3.3.8" resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.3.8.tgz#136eed54411e4694815d961048a237191063fbce" @@ -8839,17 +8741,6 @@ optionalDependencies: prettier "^1.18.2 || ^2.0.0" -"@vue/reactivity-transform@3.2.26": - version "3.2.26" - resolved "https://registry.yarnpkg.com/@vue/reactivity-transform/-/reactivity-transform-3.2.26.tgz#6d8f20a4aa2d19728f25de99962addbe7c4d03e9" - integrity sha512-XKMyuCmzNA7nvFlYhdKwD78rcnmPb7q46uoR00zkX6yZrUmcCQ5OikiwUEVbvNhL5hBJuvbSO95jB5zkUon+eQ== - dependencies: - "@babel/parser" "^7.16.4" - "@vue/compiler-core" "3.2.26" - "@vue/shared" "3.2.26" - estree-walker "^2.0.2" - magic-string "^0.25.7" - "@vue/reactivity-transform@3.3.8": version "3.3.8" resolved "https://registry.yarnpkg.com/@vue/reactivity-transform/-/reactivity-transform-3.3.8.tgz#6d07649013b0be5c670f0ab6cc7ddd3150ad03f2" @@ -8893,11 +8784,6 @@ "@vue/compiler-ssr" "3.3.8" "@vue/shared" "3.3.8" -"@vue/shared@3.2.26": - version "3.2.26" - resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.2.26.tgz#7acd1621783571b9a82eca1f041b4a0a983481d9" - integrity sha512-vPV6Cq+NIWbH5pZu+V+2QHE9y1qfuTq49uNWw4f7FDEeZaDU2H2cx5jcUZOAKW7qTrUS4k6qZPbMy1x4N96nbA== - "@vue/shared@3.3.8": version "3.3.8" resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.3.8.tgz#f044942142e1d3a395f24132e6203a784838542d" @@ -9349,11 +9235,6 @@ ajv@^6.10.0, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.12.6: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -alphanum-sort@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" - integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= - anser@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/anser/-/anser-2.1.1.tgz#8afae28d345424c82de89cc0e4d1348eb0c5af7c" @@ -9611,11 +9492,6 @@ array-flatten@1.1.1: resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= -array-flatten@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" - integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== - array-ify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" @@ -9730,10 +9606,10 @@ assert-never@^1.4.0: resolved "https://registry.yarnpkg.com/assert-never/-/assert-never-1.4.0.tgz#b0d4988628c87f35eb94716cc54422a63927e175" integrity sha512-5oJg84os6NMQNl27T9LnZkvvqzvAnHu03ShCnoj6bsJwS7L8AO4lf+C/XjK/nvzEqQB744moC6V128RucQd1jA== -assert-options@0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/assert-options/-/assert-options-0.7.0.tgz#82c27618d9c0baa5e9da8ef607ee261a44ed6e5e" - integrity sha512-7q9uNH/Dh8gFgpIIb9ja8PJEWA5AQy3xnBC8jtKs8K/gNVCr1K6kIvlm59HUyYgvM7oEDoLzGgPcGd9FqhtXEQ== +assert-options@0.8.3: + version "0.8.3" + resolved "https://registry.yarnpkg.com/assert-options/-/assert-options-0.8.3.tgz#140092b09f0ed6b3c3ef7183fb7a44af4f3d928b" + integrity sha512-s6v4HnA+vYSGO4eZX+F+I3gvF74wPk+m6Z1Q3w1Dsg4Pnv/R24vhKAasoMVZGvDpOOfTg1Qz4ptZnEbuy95XsQ== assert-plus@1.0.0, assert-plus@^1.0.0: version "1.0.0" @@ -10068,38 +9944,38 @@ balanced-match@^1.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -bare-events@^2.0.0, bare-events@^2.2.0: - version "2.4.2" - resolved "https://registry.yarnpkg.com/bare-events/-/bare-events-2.4.2.tgz#3140cca7a0e11d49b3edc5041ab560659fd8e1f8" - integrity sha512-qMKFd2qG/36aA4GwvKq8MxnPgCQAmBWmSyLWsJcbn8v03wvIPQ/hG1Ms8bPzndZxMDoHpxez5VOS+gC9Yi24/Q== +bare-events@^2.2.0, bare-events@^2.5.4: + version "2.5.4" + resolved "https://registry.yarnpkg.com/bare-events/-/bare-events-2.5.4.tgz#16143d435e1ed9eafd1ab85f12b89b3357a41745" + integrity sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA== -bare-fs@^2.1.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/bare-fs/-/bare-fs-2.3.1.tgz#cdbd63dac7a552dfb2b87d18c822298d1efd213d" - integrity sha512-W/Hfxc/6VehXlsgFtbB5B4xFcsCl+pAh30cYhoFyXErf6oGrwjh8SwiPAdHgpmWonKuYpZgGywN0SXt7dgsADA== +bare-fs@^4.0.1: + version "4.1.6" + resolved "https://registry.yarnpkg.com/bare-fs/-/bare-fs-4.1.6.tgz#0925521e7310f65cb1f154cab264f0b647a7cdef" + integrity sha512-25RsLF33BqooOEFNdMcEhMpJy8EoR88zSMrnOQOaM3USnOK2VmaJ1uaQEwPA6AQjrv1lXChScosN6CzbwbO9OQ== dependencies: - bare-events "^2.0.0" - bare-path "^2.0.0" - bare-stream "^2.0.0" + bare-events "^2.5.4" + bare-path "^3.0.0" + bare-stream "^2.6.4" -bare-os@^2.1.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/bare-os/-/bare-os-2.4.0.tgz#5de5e3ba7704f459c9656629edca7cc736e06608" - integrity sha512-v8DTT08AS/G0F9xrhyLtepoo9EJBJ85FRSMbu1pQUlAf6A8T0tEEQGMVObWeqpjhSPXsE0VGlluFBJu2fdoTNg== +bare-os@^3.0.1: + version "3.6.1" + resolved "https://registry.yarnpkg.com/bare-os/-/bare-os-3.6.1.tgz#9921f6f59edbe81afa9f56910658422c0f4858d4" + integrity sha512-uaIjxokhFidJP+bmmvKSgiMzj2sV5GPHaZVAIktcxcpCyBFFWO+YlikVAdhmUo2vYFvFhOXIAlldqV29L8126g== -bare-path@^2.0.0, bare-path@^2.1.0: - version "2.1.3" - resolved "https://registry.yarnpkg.com/bare-path/-/bare-path-2.1.3.tgz#594104c829ef660e43b5589ec8daef7df6cedb3e" - integrity sha512-lh/eITfU8hrj9Ru5quUp0Io1kJWIk1bTjzo7JH1P5dWmQ2EL4hFUlfI8FonAhSlgIfhn63p84CDY/x+PisgcXA== +bare-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/bare-path/-/bare-path-3.0.0.tgz#b59d18130ba52a6af9276db3e96a2e3d3ea52178" + integrity sha512-tyfW2cQcB5NN8Saijrhqn0Zh7AnFNsnczRcuWODH0eYAXBsJ5gVxAUuNr7tsHSC6IZ77cA0SitzT+s47kot8Mw== dependencies: - bare-os "^2.1.0" + bare-os "^3.0.1" -bare-stream@^2.0.0: - version "2.1.3" - resolved "https://registry.yarnpkg.com/bare-stream/-/bare-stream-2.1.3.tgz#070b69919963a437cc9e20554ede079ce0a129b2" - integrity sha512-tiDAH9H/kP+tvNO5sczyn9ZAA7utrSMobyDchsnyyXBuUe2FSQWbxhtuHB8jwpHYYevVo2UJpcmvvjrbHboUUQ== +bare-stream@^2.6.4: + version "2.6.5" + resolved "https://registry.yarnpkg.com/bare-stream/-/bare-stream-2.6.5.tgz#bba8e879674c4c27f7e27805df005c15d7a2ca07" + integrity sha512-jSmxKJNJmHySi6hC42zlZnq00rga4jjxcgNZjY9N5WlOe/iOoGRtdwGsHzQv2RlH2KOYMwGUXhf2zXd32BA9RA== dependencies: - streamx "^2.18.0" + streamx "^2.21.0" base64-arraybuffer@0.1.4: version "0.1.4" @@ -10280,17 +10156,7 @@ body-parser@1.20.3, body-parser@^1.19.0: type-is "~1.6.18" unpipe "1.0.0" -bonjour-service@^1.0.11: - version "1.1.1" - resolved "https://registry.yarnpkg.com/bonjour-service/-/bonjour-service-1.1.1.tgz#960948fa0e0153f5d26743ab15baf8e33752c135" - integrity sha512-Z/5lQRMOG9k7W+FkeGTNjh7htqn/2LMnfOvBZ8pynNZCM9MwkQkI3zeI4oz09uWdcgmgHugVvBqxGg4VQJ5PCg== - dependencies: - array-flatten "^2.1.2" - dns-equal "^1.0.0" - fast-deep-equal "^3.1.3" - multicast-dns "^7.2.5" - -bonjour-service@^1.2.1: +bonjour-service@^1.0.11, bonjour-service@^1.2.1: version "1.3.0" resolved "https://registry.yarnpkg.com/bonjour-service/-/bonjour-service-1.3.0.tgz#80d867430b5a0da64e82a8047fc1e355bdb71722" integrity sha512-3YuAUiSkWykd+2Azjgyxei8OWf8thdn8AITIog2M4UICzoqfjlqr64WIjEXZllf/W6vK1goqleSR6brGomxQqA== @@ -10309,17 +10175,17 @@ bowser@^2.11.0: integrity sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA== brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + version "1.1.12" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.12.tgz#ab9b454466e5a8cc3a187beaad580412a9c5b843" + integrity sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg== dependencies: balanced-match "^1.0.0" concat-map "0.0.1" brace-expansion@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" - integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== + version "2.0.2" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.2.tgz#54fc53237a613d854c7bd37463aad17df87214e7" + integrity sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ== dependencies: balanced-match "^1.0.0" @@ -10350,7 +10216,7 @@ browser-request@^0.3.3: resolved "https://registry.yarnpkg.com/browser-request/-/browser-request-0.3.3.tgz#9ece5b5aca89a29932242e18bf933def9876cc17" integrity sha1-ns5bWsqJopkyJC4Yv5M975h2zBc= -browserslist@^4.0.0, browserslist@^4.16.0, browserslist@^4.16.3, browserslist@^4.16.6, browserslist@^4.21.10, browserslist@^4.21.4, browserslist@^4.21.5, browserslist@^4.22.1, browserslist@^4.23.0, browserslist@^4.23.3, browserslist@^4.24.0, browserslist@^4.24.4: +browserslist@^4.0.0, browserslist@^4.16.3, browserslist@^4.21.10, browserslist@^4.21.4, browserslist@^4.21.5, browserslist@^4.22.1, browserslist@^4.23.0, browserslist@^4.23.3, browserslist@^4.24.0, browserslist@^4.24.4: version "4.24.4" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.4.tgz#c6b2865a3f08bcb860a0e827389003b9fe686e4b" integrity sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A== @@ -10479,11 +10345,6 @@ bytes@3.0.0: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= -bytes@3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.1.tgz#3f018291cb4cbad9accb6e6970bca9c8889e879a" - integrity sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg== - bytes@3.1.2, bytes@^3.1.0, bytes@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" @@ -10698,7 +10559,7 @@ chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.1.0, chalk@^2.3.0, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.1.0, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -11688,13 +11549,6 @@ css-color-keywords@^1.0.0: resolved "https://registry.yarnpkg.com/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05" integrity sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU= -css-declaration-sorter@^6.0.3: - version "6.1.3" - resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.1.3.tgz#e9852e4cf940ba79f509d9425b137d1f94438dc2" - integrity sha512-SvjQjNRZgh4ULK1LDJ2AduPKUKxIqmtU7ZAyi47BTV+M90Qvxr9AB6lKlLbDUfXqI9IQeYA8LbAsCZPpJEV3aA== - dependencies: - timsort "^0.3.0" - css-declaration-sorter@^6.3.1: version "6.4.1" resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.4.1.tgz#28beac7c20bad7f1775be3a7129d7eae409a3a71" @@ -11807,41 +11661,6 @@ cssesc@^3.0.0: resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== -cssnano-preset-default@^5.1.8: - version "5.1.8" - resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-5.1.8.tgz#7525feb1b72f7b06e57f55064cbdae341d79dea2" - integrity sha512-zWMlP0+AMPBVE852SqTrP0DnhTcTA2C1wAF92TKZ3Va+aUVqLIhkqKlnJIXXdqXD7RN+S1ujuWmNpvrJBiM/vg== - dependencies: - css-declaration-sorter "^6.0.3" - cssnano-utils "^2.0.1" - postcss-calc "^8.0.0" - postcss-colormin "^5.2.1" - postcss-convert-values "^5.0.2" - postcss-discard-comments "^5.0.1" - postcss-discard-duplicates "^5.0.1" - postcss-discard-empty "^5.0.1" - postcss-discard-overridden "^5.0.1" - postcss-merge-longhand "^5.0.4" - postcss-merge-rules "^5.0.3" - postcss-minify-font-values "^5.0.1" - postcss-minify-gradients "^5.0.3" - postcss-minify-params "^5.0.2" - postcss-minify-selectors "^5.1.0" - postcss-normalize-charset "^5.0.1" - postcss-normalize-display-values "^5.0.1" - postcss-normalize-positions "^5.0.1" - postcss-normalize-repeat-style "^5.0.1" - postcss-normalize-string "^5.0.1" - postcss-normalize-timing-functions "^5.0.1" - postcss-normalize-unicode "^5.0.1" - postcss-normalize-url "^5.0.3" - postcss-normalize-whitespace "^5.0.1" - postcss-ordered-values "^5.0.2" - postcss-reduce-initial "^5.0.2" - postcss-reduce-transforms "^5.0.1" - postcss-svgo "^5.0.3" - postcss-unique-selectors "^5.0.2" - cssnano-preset-default@^5.2.14: version "5.2.14" resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz#309def4f7b7e16d71ab2438052093330d9ab45d8" @@ -11877,17 +11696,12 @@ cssnano-preset-default@^5.2.14: postcss-svgo "^5.1.0" postcss-unique-selectors "^5.1.1" -cssnano-utils@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-2.0.1.tgz#8660aa2b37ed869d2e2f22918196a9a8b6498ce2" - integrity sha512-i8vLRZTnEH9ubIyfdZCAdIdgnHAUeQeByEeQ2I7oTilvP9oHO6RScpeq3GsFUVqeB8uZgOQ9pw8utofNn32hhQ== - cssnano-utils@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-3.1.0.tgz#95684d08c91511edfc70d2636338ca37ef3a6861" integrity sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA== -cssnano@^5.0.0: +cssnano@^5.0.0, cssnano@^5.0.6: version "5.1.15" resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-5.1.15.tgz#ded66b5480d5127fcb44dac12ea5a983755136bf" integrity sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw== @@ -11896,16 +11710,6 @@ cssnano@^5.0.0: lilconfig "^2.0.3" yaml "^1.10.2" -cssnano@^5.0.6: - version "5.0.12" - resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-5.0.12.tgz#2c083a1c786fc9dc2d5522bd3c0e331b7cd302ab" - integrity sha512-U38V4x2iJ3ijPdeWqUrEr4eKBB5PbEKsNP5T8xcik2Au3LeMtiMHX0i2Hu9k51FcKofNZumbrcdC6+a521IUHg== - dependencies: - cssnano-preset-default "^5.1.8" - is-resolvable "^1.1.0" - lilconfig "^2.0.3" - yaml "^1.10.2" - csso@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529" @@ -12256,7 +12060,7 @@ debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, d dependencies: ms "^2.1.3" -debug@^3.1.0, debug@^3.2.6, debug@^3.2.7: +debug@^3.1.0, debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== @@ -12295,12 +12099,7 @@ decimal.js-light@^2.4.1: resolved "https://registry.yarnpkg.com/decimal.js-light/-/decimal.js-light-2.5.1.tgz#134fd32508f19e208f4fb2f8dac0d2626a867934" integrity sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg== -decimal.js@^10.2.1: - version "10.3.1" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783" - integrity sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ== - -decimal.js@^10.4.3: +decimal.js@^10.2.1, decimal.js@^10.4.3: version "10.4.3" resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== @@ -12448,14 +12247,7 @@ define-lazy-prop@^3.0.0: resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz#dbb19adfb746d7fc6d734a06b72f4a00d021255f" integrity sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg== -define-properties@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== - dependencies: - object-keys "^1.0.12" - -define-properties@^1.2.0, define-properties@^1.2.1: +define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== @@ -12542,12 +12334,7 @@ detect-libc@^1.0.3: resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" integrity sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg== -detect-libc@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.1.tgz#e1897aa88fa6ad197862937fbc0441ef352ee0cd" - integrity sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w== - -detect-libc@^2.0.1: +detect-libc@^2.0.0, detect-libc@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.3.tgz#f0cd503b40f9939b894697d19ad50895e30cf700" integrity sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw== @@ -12609,11 +12396,6 @@ dir-glob@^3.0.1: dependencies: path-type "^4.0.0" -dns-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" - integrity sha1-s55/HabrCnW6nBcySzR1PEfgZU0= - dns-packet@^5.2.2: version "5.6.1" resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-5.6.1.tgz#ae888ad425a9d1478a0674256ab866de1012cf2f" @@ -12628,24 +12410,28 @@ docker-compose@^0.24.8: dependencies: yaml "^2.2.2" -docker-modem@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/docker-modem/-/docker-modem-3.0.3.tgz#ac4bb1f32f81ac2e7120c5e99a068fab2458a32f" - integrity sha512-Tgkn2a+yiNP9FoZgMa/D9Wk+D2Db///0KOyKSYZRJa8w4+DzKyzQMkczKSdR/adQ0x46BOpeNkoyEOKjPhCzjw== +docker-modem@^5.0.6: + version "5.0.6" + resolved "https://registry.yarnpkg.com/docker-modem/-/docker-modem-5.0.6.tgz#cbe9d86a1fe66d7a072ac7fb99a9fc390a3e8b9a" + integrity sha512-ens7BiayssQz/uAxGzH8zGXCtiV24rRWXdjNha5V4zSOcxmAZsfGVm/PPFbwQdqEkDnhG+SyR9E3zSHUbOKXBQ== dependencies: debug "^4.1.1" readable-stream "^3.5.0" split-ca "^1.0.1" - ssh2 "^1.4.0" + ssh2 "^1.15.0" -dockerode@^3.3.5: - version "3.3.5" - resolved "https://registry.yarnpkg.com/dockerode/-/dockerode-3.3.5.tgz#7ae3f40f2bec53ae5e9a741ce655fff459745629" - integrity sha512-/0YNa3ZDNeLr/tSckmD69+Gq+qVNhvKfAHNeZJBnp7EOP6RGKV8ORrJHkUn20So5wU+xxT7+1n5u8PjHbfjbSA== +dockerode@^4.0.5: + version "4.0.7" + resolved "https://registry.yarnpkg.com/dockerode/-/dockerode-4.0.7.tgz#8c68a80f4e057723a07a1e886416248945056621" + integrity sha512-R+rgrSRTRdU5mH14PZTCPZtW/zw3HDWNTS/1ZAQpL/5Upe/ye5K9WQkIysu4wBoiMwKynsz0a8qWuGsHgEvSAA== dependencies: "@balena/dockerignore" "^1.0.2" - docker-modem "^3.0.0" - tar-fs "~2.0.1" + "@grpc/grpc-js" "^1.11.1" + "@grpc/proto-loader" "^0.7.13" + docker-modem "^5.0.6" + protobufjs "^7.3.2" + tar-fs "~2.1.2" + uuid "^10.0.0" doctrine@^2.1.0: version "2.1.0" @@ -13032,14 +12818,7 @@ enhanced-resolve@^5.17.1: graceful-fs "^4.2.4" tapable "^2.2.0" -enquirer@^2.3.5, enquirer@~2.3.6: - version "2.3.6" - resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" - integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== - dependencies: - ansi-colors "^4.1.1" - -enquirer@^2.3.6: +enquirer@^2.3.5, enquirer@^2.3.6: version "2.4.1" resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.4.1.tgz#93334b3fbd74fc7097b224ab4a8fb7e40bf4ae56" integrity sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ== @@ -13047,6 +12826,13 @@ enquirer@^2.3.6: ansi-colors "^4.1.1" strip-ansi "^6.0.1" +enquirer@~2.3.6: + version "2.3.6" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== + dependencies: + ansi-colors "^4.1.1" + entities@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" @@ -13339,12 +13125,7 @@ esbuild@^0.23.0: "@esbuild/win32-ia32" "0.23.1" "@esbuild/win32-x64" "0.23.1" -escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== - -escalade@^3.2.0: +escalade@^3.1.1, escalade@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== @@ -13569,12 +13350,7 @@ eslint-visitor-keys@^2.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== -eslint-visitor-keys@^3.3.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz#c7f0f956124ce677047ddbc192a68f999454dedc" - integrity sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ== - -eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: +eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3: version "3.4.3" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== @@ -13712,14 +13488,7 @@ esprima@^4.0.0, esprima@^4.0.1, esprima@~4.0.0: resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== -esquery@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" - integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== - dependencies: - estraverse "^5.1.0" - -esquery@^1.4.2: +esquery@^1.4.0, esquery@^1.4.2: version "1.5.0" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b" integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== @@ -14058,7 +13827,7 @@ fast-fifo@^1.2.0, fast-fifo@^1.3.2: resolved "https://registry.yarnpkg.com/fast-fifo/-/fast-fifo-1.3.2.tgz#286e31de96eb96d38a97899815740ba2a4f3640c" integrity sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ== -fast-glob@3.3.2, fast-glob@^3.0.3, fast-glob@^3.1.1, fast-glob@^3.2.7, fast-glob@^3.2.9: +fast-glob@3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== @@ -14069,7 +13838,7 @@ fast-glob@3.3.2, fast-glob@^3.0.3, fast-glob@^3.1.1, fast-glob@^3.2.7, fast-glob merge2 "^1.3.0" micromatch "^4.0.4" -fast-glob@^3.3.1, fast-glob@^3.3.2, fast-glob@^3.3.3: +fast-glob@^3.0.3, fast-glob@^3.2.7, fast-glob@^3.2.9, fast-glob@^3.3.1, fast-glob@^3.3.2, fast-glob@^3.3.3: version "3.3.3" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.3.tgz#d06d585ce8dba90a16b0505c543c3ccfb3aeb818" integrity sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg== @@ -14457,16 +14226,7 @@ fs-constants@^1.0.0: resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== -fs-extra@^11.1.1: - version "11.1.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.1.1.tgz#da69f7c39f3b002378b0954bb6ae7efdc0876e2d" - integrity sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - -fs-extra@^11.2.0: +fs-extra@^11.1.1, fs-extra@^11.2.0: version "11.3.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.3.0.tgz#0daced136bbaf65a555a326719af931adc7a314d" integrity sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew== @@ -14639,7 +14399,7 @@ get-func-name@^2.0.0, get-func-name@^2.0.2: resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.2.tgz#0d7cf20cd13fda808669ffa88f4ffc7a3943fc41" integrity sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ== -get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4, get-intrinsic@^1.2.6: +get-intrinsic@^1.1.1, get-intrinsic@^1.2.1, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4, get-intrinsic@^1.2.6: version "1.2.7" resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.7.tgz#dcfcb33d3272e15f445d15124bc0a216189b9044" integrity sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA== @@ -14670,11 +14430,16 @@ get-pkg-repo@^4.2.1: through2 "^2.0.0" yargs "^16.2.0" -get-port@5.1.1, get-port@^5.1.1: +get-port@5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ== +get-port@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/get-port/-/get-port-7.1.0.tgz#d5a500ebfc7aa705294ec2b83cc38c5d0e364fec" + integrity sha512-QB9NKEeDg3xxVwCCwJQ9+xycaz6pBB6iQ76wiWMl1927n0Kir6alPiP+yuiICLLU4jpMe08dXfpebuQppFA2zw== + get-proto@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" @@ -14912,7 +14677,7 @@ globalthis@^1.0.3: dependencies: define-properties "^1.1.3" -globby@11.1.0, globby@^11.0.2, globby@^11.1.0: +globby@11.1.0, globby@^11.0.1, globby@^11.0.2, globby@^11.0.3, globby@^11.0.4, globby@^11.1.0: version "11.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== @@ -14938,18 +14703,6 @@ globby@^10.0.1: merge2 "^1.2.3" slash "^3.0.0" -globby@^11.0.1, globby@^11.0.3, globby@^11.0.4: - version "11.0.4" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.4.tgz#2cbaff77c2f2a62e71e9b2813a67b97a3a3001a5" - integrity sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg== - dependencies: - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.1.1" - ignore "^5.1.4" - merge2 "^1.3.0" - slash "^3.0.0" - globby@^14.0.0: version "14.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-14.1.0.tgz#138b78e77cf5a8d794e327b15dce80bf1fb0a73e" @@ -14979,14 +14732,7 @@ google-auth-library@^9.0.0, google-auth-library@^9.6.3: gtoken "^7.0.0" jws "^4.0.0" -gopd@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" - integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== - dependencies: - get-intrinsic "^1.1.3" - -gopd@^1.2.0: +gopd@^1.0.1, gopd@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== @@ -15390,17 +15136,6 @@ http-errors@1.8.0: statuses ">= 1.5.0 < 2" toidentifier "1.0.0" -http-errors@1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.1.tgz#7c3f28577cbc8a207388455dbd62295ed07bd68c" - integrity sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g== - dependencies: - depd "~1.1.2" - inherits "2.0.4" - setprototypeof "1.2.0" - statuses ">= 1.5.0 < 2" - toidentifier "1.0.1" - http-errors@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" @@ -15576,7 +15311,7 @@ hyphenate-style-name@^1.0.0: resolved "https://registry.yarnpkg.com/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz#691879af8e220aea5750e8827db4ef62a54e361d" integrity sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ== -iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4: +iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== @@ -15617,7 +15352,7 @@ ignore@^4.0.6: resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== -ignore@^5.0.4, ignore@^5.1.1, ignore@^5.1.4, ignore@^5.1.9, ignore@^5.2.0, ignore@^5.2.4: +ignore@^5.0.4, ignore@^5.1.1, ignore@^5.1.9, ignore@^5.2.0, ignore@^5.2.4: version "5.3.2" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== @@ -15665,7 +15400,7 @@ import-fresh@^3.0.0, import-fresh@^3.2.1, import-fresh@^3.3.0: parent-module "^1.0.0" resolve-from "^4.0.0" -import-local@3.1.0: +import-local@3.1.0, import-local@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== @@ -15673,14 +15408,6 @@ import-local@3.1.0: pkg-dir "^4.2.0" resolve-cwd "^3.0.0" -import-local@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.3.tgz#4d51c2c495ca9393da259ec66b62e022920211e0" - integrity sha512-bE9iaUY3CXH8Cwfan/abDKAxe1KGT9kyGsBPqf6DMK/z0a2OzAsrukeYNgIH6cH5Xr452jb1TUL8rSfCLjZ9uA== - dependencies: - pkg-dir "^4.2.0" - resolve-cwd "^3.0.0" - imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" @@ -15841,12 +15568,7 @@ ipaddr.js@1.9.1: resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== -ipaddr.js@^2.0.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-2.1.0.tgz#2119bc447ff8c257753b196fc5f1ce08a4cdf39f" - integrity sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ== - -ipaddr.js@^2.1.0: +ipaddr.js@^2.0.1, ipaddr.js@^2.1.0: version "2.2.0" resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-2.2.0.tgz#d33fa7bac284f4de7af949638c9d68157c6b92e8" integrity sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA== @@ -15856,11 +15578,6 @@ irregular-plurals@^3.2.0: resolved "https://registry.yarnpkg.com/irregular-plurals/-/irregular-plurals-3.3.0.tgz#67d0715d4361a60d9fd9ee80af3881c631a31ee2" integrity sha512-MVBLKUTangM3EfRPFROhmWQQKRDsrgI83J8GS3jXy+OwYqiR2/aoWndYQ5416jLE3uaGgLH7ncme3X9y09gZ3g== -is-absolute-url@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" - integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== - is-arguments@^1.0.4: version "1.1.1" resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" @@ -16158,15 +15875,7 @@ is-reference@^1.2.1: dependencies: "@types/estree" "*" -is-regex@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" - integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== - dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" - -is-regex@^1.2.1: +is-regex@^1.1.4, is-regex@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.2.1.tgz#76d70a3ed10ef9be48eb577887d74205bf0cad22" integrity sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g== @@ -16176,11 +15885,6 @@ is-regex@^1.2.1: has-tostringtag "^1.0.2" hasown "^2.0.2" -is-resolvable@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" - integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== - is-retry-allowed@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz#d778488bd0a4666a3be8a1482b9f2baafedea8b4" @@ -17328,7 +17032,7 @@ jmespath@0.16.0: resolved "https://registry.yarnpkg.com/jmespath/-/jmespath-0.16.0.tgz#b15b0a85dfd4d930d43e69ed605943c802785076" integrity sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw== -joi@^17.13.3: +joi@^17.13.3, joi@^17.4.0: version "17.13.3" resolved "https://registry.yarnpkg.com/joi/-/joi-17.13.3.tgz#0f5cc1169c999b30d344366d384b12d92558bcec" integrity sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA== @@ -17339,17 +17043,6 @@ joi@^17.13.3: "@sideway/formula" "^3.0.1" "@sideway/pinpoint" "^2.0.0" -joi@^17.4.0: - version "17.11.0" - resolved "https://registry.yarnpkg.com/joi/-/joi-17.11.0.tgz#aa9da753578ec7720e6f0ca2c7046996ed04fc1a" - integrity sha512-NgB+lZLNoqISVy1rZocE9PZI36bL/77ie924Ri43yEvi9GUUMPeyVIr8KdFTMUlby1p0PBYMk9spIxEUQYqrJQ== - dependencies: - "@hapi/hoek" "^9.0.0" - "@hapi/topo" "^5.0.0" - "@sideway/address" "^4.1.3" - "@sideway/formula" "^3.0.1" - "@sideway/pinpoint" "^2.0.0" - jpeg-js@^0.3.4: version "0.3.7" resolved "https://registry.yarnpkg.com/jpeg-js/-/jpeg-js-0.3.7.tgz#471a89d06011640592d314158608690172b1028d" @@ -17581,21 +17274,16 @@ json5@^2.1.2, json5@^2.2.2, json5@^2.2.3: resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== -jsonc-parser@3.2.0, jsonc-parser@^3.2.0: +jsonc-parser@3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76" integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== -jsonc-parser@3.3.1: +jsonc-parser@3.3.1, jsonc-parser@^3.0.0, jsonc-parser@^3.2.0: version "3.3.1" resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.3.1.tgz#f2a524b4f7fd11e3d791e559977ad60b98b798b4" integrity sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ== -jsonc-parser@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.0.0.tgz#abdd785701c7e7eaca8a9ec8cf070ca51a745a22" - integrity sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA== - jsonfile@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" @@ -17767,23 +17455,7 @@ launch-editor-middleware@^2.2.1: dependencies: launch-editor "^2.2.1" -launch-editor@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/launch-editor/-/launch-editor-2.2.1.tgz#871b5a3ee39d6680fcc26d37930b6eeda89db0ca" - integrity sha512-On+V7K2uZK6wK7x691ycSUbLD/FyKKelArkbaAMSSJU8JmqmhwN2+mnJDNINuJWSrh2L0kDk+ZQtbC/gOWUwLw== - dependencies: - chalk "^2.3.0" - shell-quote "^1.6.1" - -launch-editor@^2.6.0: - version "2.6.1" - resolved "https://registry.yarnpkg.com/launch-editor/-/launch-editor-2.6.1.tgz#f259c9ef95cbc9425620bbbd14b468fcdb4ffe3c" - integrity sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw== - dependencies: - picocolors "^1.0.0" - shell-quote "^1.8.1" - -launch-editor@^2.6.1: +launch-editor@^2.2.1, launch-editor@^2.6.0, launch-editor@^2.6.1: version "2.10.0" resolved "https://registry.yarnpkg.com/launch-editor/-/launch-editor-2.10.0.tgz#5ca3edfcb9667df1e8721310f3a40f1127d4bc42" integrity sha512-D7dBRJo/qcGX9xlvt/6wUYzQxjh5G1RvZPgPv8vi4KRU99DVQL/oW7tnVOCCTm2HGeo3C5HvGE5Yrh6UBoZ0vA== @@ -17927,24 +17599,7 @@ less@^3.13.1: native-request "^1.0.5" source-map "~0.6.0" -less@^4.1.1: - version "4.1.2" - resolved "https://registry.yarnpkg.com/less/-/less-4.1.2.tgz#6099ee584999750c2624b65f80145f8674e4b4b0" - integrity sha512-EoQp/Et7OSOVu0aJknJOtlXZsnr8XE8KwuzTHOLeVSEx8pVWUICc8Q0VYRHgzyjX78nMEyC/oztWFbgyhtNfDA== - dependencies: - copy-anything "^2.0.1" - parse-node-version "^1.0.1" - tslib "^2.3.0" - optionalDependencies: - errno "^0.1.1" - graceful-fs "^4.1.2" - image-size "~0.5.0" - make-dir "^2.1.0" - mime "^1.4.1" - needle "^2.5.2" - source-map "~0.6.0" - -less@^4.2.0: +less@^4.1.1, less@^4.2.0: version "4.3.0" resolved "https://registry.yarnpkg.com/less/-/less-4.3.0.tgz#ef0cfc260a9ca8079ed8d0e3512bda8a12c82f2a" integrity sha512-X9RyH9fvemArzfdP8Pi3irr7lor2Ok4rOttDXBhlwDg+wKQsXOXgHWduAJE1EsF7JJx0w0bcO6BC6tCKKYnXKA== @@ -18341,10 +17996,10 @@ long@^4.0.0: resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28" integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA== -long@^5.2.1: - version "5.2.3" - resolved "https://registry.yarnpkg.com/long/-/long-5.2.3.tgz#a3ba97f3877cf1d778eccbcb048525ebb77499e1" - integrity sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q== +long@^5.0.0, long@^5.2.1: + version "5.3.2" + resolved "https://registry.yarnpkg.com/long/-/long-5.3.2.tgz#1d84463095999262d7d7b7f8bfd4a8cc55167f83" + integrity sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA== loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0: version "1.4.0" @@ -18759,7 +18414,7 @@ mini-create-react-context@^0.4.0: "@babel/runtime" "^7.12.1" tiny-warning "^1.0.3" -mini-css-extract-plugin@2.9.0: +mini-css-extract-plugin@2.9.0, mini-css-extract-plugin@^2.5.3: version "2.9.0" resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-2.9.0.tgz#c73a1327ccf466f69026ac22a8e8fd707b78a235" integrity sha512-Zs1YsZVfemekSZG+44vBsYTLQORkPMwnlv+aehcxK/NLKC+EGhDB39/YePYYqx/sTk6NnYpuqikhSn7+JIevTA== @@ -18767,13 +18422,6 @@ mini-css-extract-plugin@2.9.0: schema-utils "^4.0.0" tapable "^2.2.1" -mini-css-extract-plugin@^2.5.3: - version "2.7.6" - resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.6.tgz#282a3d38863fddcd2e0c220aaed5b90bc156564d" - integrity sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw== - dependencies: - schema-utils "^4.0.0" - minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" @@ -18915,14 +18563,7 @@ minipass-sized@^1.0.3: dependencies: minipass "^3.0.0" -minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3: - version "3.1.6" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.6.tgz#3b8150aa688a711a1521af5e8779c1d3bb4f45ee" - integrity sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ== - dependencies: - yallist "^4.0.0" - -minipass@^3.1.6: +minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3, minipass@^3.1.6: version "3.3.6" resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== @@ -18939,12 +18580,7 @@ minipass@^5.0.0: resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== -"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.0.2, minipass@^7.0.3: - version "7.0.4" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" - integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== - -minipass@^7.0.4, minipass@^7.1.2: +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.0.2, minipass@^7.0.3, minipass@^7.0.4, minipass@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== @@ -19215,15 +18851,6 @@ ndjson@^1.3.0: split2 "^2.1.0" through2 "^2.0.3" -needle@^2.5.2: - version "2.9.1" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.9.1.tgz#22d1dffbe3490c2b83e301f7709b6736cd8f2684" - integrity sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ== - dependencies: - debug "^3.2.6" - iconv-lite "^0.4.4" - sax "^1.2.4" - needle@^3.1.0: version "3.3.1" resolved "https://registry.yarnpkg.com/needle/-/needle-3.3.1.tgz#63f75aec580c2e77e209f3f324e2cdf3d29bd049" @@ -19398,7 +19025,7 @@ node-gyp@8.x: tar "^6.1.2" which "^2.0.2" -node-gyp@^10.0.0: +node-gyp@^10.0.0, node-gyp@^10.0.1: version "10.3.1" resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-10.3.1.tgz#1dd1a1a1c6c5c59da1a76aea06a062786b2c8a1a" integrity sha512-Pp3nFHBThHzVtNY7U6JfPjvT/DTE8+o/4xKsLQtBoU+j2HLsGlhcfzflAoUreaJbNmYnX+LlLi0qjV8kpyO6xQ== @@ -19414,22 +19041,6 @@ node-gyp@^10.0.0: tar "^6.2.1" which "^4.0.0" -node-gyp@^10.0.1: - version "10.0.1" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-10.0.1.tgz#205514fc19e5830fa991e4a689f9e81af377a966" - integrity sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg== - dependencies: - env-paths "^2.2.0" - exponential-backoff "^3.1.1" - glob "^10.3.10" - graceful-fs "^4.2.6" - make-fetch-happen "^13.0.0" - nopt "^7.0.0" - proc-log "^3.0.0" - semver "^7.3.5" - tar "^6.1.2" - which "^4.0.0" - node-gyp@^9.3.0: version "9.3.1" resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-9.3.1.tgz#1e19f5f290afcc9c46973d68700cbd21a96192e4" @@ -19665,14 +19276,7 @@ npmlog@^6.0.0: gauge "^4.0.0" set-blocking "^2.0.0" -nth-check@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.0.1.tgz#2efe162f5c3da06a28959fbd3db75dbeea9f0fc2" - integrity sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w== - dependencies: - boolbase "^1.0.0" - -nth-check@^2.0.1: +nth-check@^2.0.0, nth-check@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w== @@ -19750,7 +19354,7 @@ object-inspect@^1.13.1: resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== -object-keys@^1.0.12, object-keys@^1.1.1: +object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== @@ -20310,20 +19914,13 @@ parse5@^5.1.1: resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.1.tgz#f68e4e5ba1852ac2cadc00f4555fff6c2abb6178" integrity sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug== -parse5@^7.0.0: +parse5@^7.0.0, parse5@^7.1.2: version "7.2.1" resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.2.1.tgz#8928f55915e6125f430cc44309765bf17556a33a" integrity sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ== dependencies: entities "^4.5.0" -parse5@^7.1.2: - version "7.1.2" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32" - integrity sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw== - dependencies: - entities "^4.4.0" - parseqs@0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/parseqs/-/parseqs-0.0.6.tgz#8e4bb5a19d1cdc844a08ac974d34e273afa670d5" @@ -20447,20 +20044,15 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= -pg-cloudflare@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/pg-cloudflare/-/pg-cloudflare-1.1.1.tgz#e6d5833015b170e23ae819e8c5d7eaedb472ca98" - integrity sha512-xWPagP/4B6BgFO+EKz3JONXv3YDgvkbVrGw2mTo3D6tVDQRh1e7cqVGvyR3BE+eQgAvx1XhW/iEASj4/jCWl3Q== - -pg-connection-string@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.5.0.tgz#538cadd0f7e603fc09a12590f3b8a452c2c0cf34" - integrity sha512-r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ== +pg-cloudflare@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/pg-cloudflare/-/pg-cloudflare-1.2.7.tgz#a1f3d226bab2c45ae75ea54d65ec05ac6cfafbef" + integrity sha512-YgCtzMH0ptvZJslLM1ffsY4EuGaU0cx4XSdXLRFae8bPP4dS5xL1tNB3k2o/N64cHJpwU7dxKli/nZ2lUa5fLg== -pg-connection-string@^2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.6.2.tgz#713d82053de4e2bd166fab70cd4f26ad36aab475" - integrity sha512-ch6OwaeaPYcova4kKZ15sbJ2hKb/VP48ZD2gE7i1J+L4MspCtBMAx8nMgz7bksc7IojCIIWuEhHibSMFH8m8oA== +pg-connection-string@^2.9.1: + version "2.9.1" + resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.9.1.tgz#bb1fd0011e2eb76ac17360dc8fa183b2d3465238" + integrity sha512-nkc6NpDcvPVpZXxrreI/FOtX3XemeLl8E0qFr6F2Lrm/I8WOnaWNhIPK2Z7OHpw7gh5XJThi6j6ppgNoaT1w4w== pg-cursor@^2.7.1: version "2.7.1" @@ -20472,45 +20064,30 @@ pg-int8@1.0.1: resolved "https://registry.yarnpkg.com/pg-int8/-/pg-int8-1.0.1.tgz#943bd463bf5b71b4170115f80f8efc9a0c0eb78c" integrity sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw== -pg-minify@1.6.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/pg-minify/-/pg-minify-1.6.2.tgz#055acfe862cfca3ca0a529020846b0f308d68e70" - integrity sha512-1KdmFGGTP6jplJoI8MfvRlfvMiyBivMRP7/ffh4a11RUFJ7kC2J0ZHlipoKiH/1hz+DVgceon9U2qbaHpPeyPg== - -pg-pool@^3.4.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.4.1.tgz#0e71ce2c67b442a5e862a9c182172c37eda71e9c" - integrity sha512-TVHxR/gf3MeJRvchgNHxsYsTCHQ+4wm3VIHSS19z8NC0+gioEhq1okDY1sm/TYbfoP6JLFx01s0ShvZ3puP/iQ== - -pg-pool@^3.5.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.5.1.tgz#f499ce76f9bf5097488b3b83b19861f28e4ed905" - integrity sha512-6iCR0wVrro6OOHFsyavV+i6KYL4lVNyYAB9RD18w66xSzN+d8b66HiwuP30Gp1SH5O9T82fckkzsRjlrhD0ioQ== +pg-minify@1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/pg-minify/-/pg-minify-1.8.0.tgz#c736f762fb987ab21e784554b7724f05397708d1" + integrity sha512-jO/oJOununpx8DzKgvSsWm61P8JjwXlaxSlbbfTBo1nvSWoo/+I6qZYaSN96jm/KDwa5d+JMQwPGgcP6HXDRow== -pg-pool@^3.6.1: - version "3.6.1" - resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.6.1.tgz#5a902eda79a8d7e3c928b77abf776b3cb7d351f7" - integrity sha512-jizsIzhkIitxCGfPRzJn1ZdcosIt3pz9Sh3V01fm1vZnbnCMgmGl5wvGGdNN2EL9Rmb0EcFoCkixH4Pu+sP9Og== +pg-pool@^3.10.1: + version "3.10.1" + resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.10.1.tgz#481047c720be2d624792100cac1816f8850d31b2" + integrity sha512-Tu8jMlcX+9d8+QVzKIvM/uJtp07PKr82IUOYEphaWcoBhIYkoHpLXN3qO59nAI11ripznDsEzEv8nUxBVWajGg== -pg-promise@^10.5.2: - version "10.11.1" - resolved "https://registry.yarnpkg.com/pg-promise/-/pg-promise-10.11.1.tgz#62348927da636aa74d2c20510cfbd12e85f104ae" - integrity sha512-HAv32WSKf2m2RqHerW5RmANn/mcXIwWXbg/gOfGQcoS0SE+8iBi3Jj4JmoR4PNzSEozo/y/npy4e6F16psOItw== +pg-promise@^11.5.5: + version "11.15.0" + resolved "https://registry.yarnpkg.com/pg-promise/-/pg-promise-11.15.0.tgz#ce7b67d960cd37ec47fd0bbe85d173f0697a47de" + integrity sha512-EUXpXn90yPVPKxQH4qqUAEVcApd2tp/JdR3wG6LzBUgaXTUYqwmuXG4vFhhZTCctzhfzRA20EbORb9H4aAgUHA== dependencies: - assert-options "0.7.0" - pg "8.7.1" - pg-minify "1.6.2" - spex "3.2.0" - -pg-protocol@*, pg-protocol@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.5.0.tgz#b5dd452257314565e2d54ab3c132adc46565a6a0" - integrity sha512-muRttij7H8TqRNu/DxrAJQITO4Ac7RmX3Klyr/9mJEOBeIpgnF8f9jAfRz5d3XwQZl5qBjF9gLsUtMPJE0vezQ== + assert-options "0.8.3" + pg "8.16.3" + pg-minify "1.8.0" + spex "3.4.1" -pg-protocol@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.6.0.tgz#4c91613c0315349363af2084608db843502f8833" - integrity sha512-M+PDm637OY5WM307051+bsDia5Xej6d9IR4GwJse1qA1DIhiKlksvrneZOYQq42OM+spubpcNYEo2FcKQrDk+Q== +pg-protocol@*, pg-protocol@^1.10.3: + version "1.10.3" + resolved "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.10.3.tgz#ac9e4778ad3f84d0c5670583bab976ea0a34f69f" + integrity sha512-6DIBgBQaTKDJyxnXaLiLR8wBpQQcGWuAESkRBX/t6OwA8YsqP+iVSiond2EDy6Y/dsGk8rh/jtax3js5NeV7JQ== pg-query-stream@^4.1.0: version "4.2.1" @@ -20519,7 +20096,7 @@ pg-query-stream@^4.1.0: dependencies: pg-cursor "^2.7.1" -pg-types@^2.1.0, pg-types@^2.2.0: +pg-types@2.2.0, pg-types@^2.1.0, pg-types@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/pg-types/-/pg-types-2.2.0.tgz#2d0250d636454f7cfa3b6ae0382fdfa8063254a3" integrity sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA== @@ -20530,53 +20107,25 @@ pg-types@^2.1.0, pg-types@^2.2.0: postgres-date "~1.0.4" postgres-interval "^1.1.0" -pg@8.7.1, pg@^8.6.0: - version "8.7.1" - resolved "https://registry.yarnpkg.com/pg/-/pg-8.7.1.tgz#9ea9d1ec225980c36f94e181d009ab9f4ce4c471" - integrity sha512-7bdYcv7V6U3KAtWjpQJJBww0UEsWuh4yQ/EjNf2HeO/NnvKjpvhEIe/A/TleP6wtmSKnUnghs5A9jUoK6iDdkA== +pg@8.16.3, pg@^8.11.3, pg@^8.6.0, pg@^8.7.0, pg@^8.7.1, pg@^8.7.3: + version "8.16.3" + resolved "https://registry.yarnpkg.com/pg/-/pg-8.16.3.tgz#160741d0b44fdf64680e45374b06d632e86c99fd" + integrity sha512-enxc1h0jA/aq5oSDMvqyW3q89ra6XIIDZgCX9vkMrnz5DFTw/Ny3Li2lFQ+pt3L6MCgm/5o2o8HW9hiJji+xvw== dependencies: - buffer-writer "2.0.0" - packet-reader "1.0.0" - pg-connection-string "^2.5.0" - pg-pool "^3.4.1" - pg-protocol "^1.5.0" - pg-types "^2.1.0" - pgpass "1.x" - -pg@^8.11.3: - version "8.11.3" - resolved "https://registry.yarnpkg.com/pg/-/pg-8.11.3.tgz#d7db6e3fe268fcedd65b8e4599cda0b8b4bf76cb" - integrity sha512-+9iuvG8QfaaUrrph+kpF24cXkH1YOOUeArRNYIxq1viYHZagBxrTno7cecY1Fa44tJeZvaoG+Djpkc3JwehN5g== - dependencies: - buffer-writer "2.0.0" - packet-reader "1.0.0" - pg-connection-string "^2.6.2" - pg-pool "^3.6.1" - pg-protocol "^1.6.0" - pg-types "^2.1.0" - pgpass "1.x" + pg-connection-string "^2.9.1" + pg-pool "^3.10.1" + pg-protocol "^1.10.3" + pg-types "2.2.0" + pgpass "1.0.5" optionalDependencies: - pg-cloudflare "^1.1.1" + pg-cloudflare "^1.2.7" -pg@^8.7.0, pg@^8.7.1, pg@^8.7.3: - version "8.7.3" - resolved "https://registry.yarnpkg.com/pg/-/pg-8.7.3.tgz#8a5bdd664ca4fda4db7997ec634c6e5455b27c44" - integrity sha512-HPmH4GH4H3AOprDJOazoIcpI49XFsHCe8xlrjHkWiapdbHK+HLtbm/GQzXYAZwmPju/kzKhjaSfMACG+8cgJcw== - dependencies: - buffer-writer "2.0.0" - packet-reader "1.0.0" - pg-connection-string "^2.5.0" - pg-pool "^3.5.1" - pg-protocol "^1.5.0" - pg-types "^2.1.0" - pgpass "1.x" - -pgpass@1.x: - version "1.0.4" - resolved "https://registry.yarnpkg.com/pgpass/-/pgpass-1.0.4.tgz#85eb93a83800b20f8057a2b029bf05abaf94ea9c" - integrity sha512-YmuA56alyBq7M59vxVBfPJrGSozru8QAdoNlWuW3cz8l+UX3cWge0vTvjKhsSHSJpo3Bom8/Mm6hf0TR5GY0+w== +pgpass@1.0.5, pgpass@1.x: + version "1.0.5" + resolved "https://registry.yarnpkg.com/pgpass/-/pgpass-1.0.5.tgz#9b873e4a564bb10fa7a7dbd55312728d422a223d" + integrity sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug== dependencies: - split2 "^3.1.1" + split2 "^4.1.0" phin@^2.9.1: version "2.9.3" @@ -20759,14 +20308,6 @@ possible-typed-array-names@^1.0.0: resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz#89bb63c6fada2c3e90adc4a647beeeb39cc7bf8f" integrity sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q== -postcss-calc@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-8.0.0.tgz#a05b87aacd132740a5db09462a3612453e5df90a" - integrity sha512-5NglwDrcbiy8XXfPM11F3HeC6hoT9W7GUH/Zi5U/p7u3Irv4rHhdDcIZwG0llHXV4ftsBjpfWMXAnXNl4lnt8g== - dependencies: - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.0.2" - postcss-calc@^8.2.3: version "8.2.4" resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-8.2.4.tgz#77b9c29bfcbe8a07ff6693dc87050828889739a5" @@ -20775,16 +20316,6 @@ postcss-calc@^8.2.3: postcss-selector-parser "^6.0.9" postcss-value-parser "^4.2.0" -postcss-colormin@^5.2.1: - version "5.2.1" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-5.2.1.tgz#6e444a806fd3c578827dbad022762df19334414d" - integrity sha512-VVwMrEYLcHYePUYV99Ymuoi7WhKrMGy/V9/kTS0DkCoJYmmjdOMneyhzYUxcNgteKDVbrewOkSM7Wje/MFwxzA== - dependencies: - browserslist "^4.16.6" - caniuse-api "^3.0.0" - colord "^2.9.1" - postcss-value-parser "^4.1.0" - postcss-colormin@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-5.3.1.tgz#86c27c26ed6ba00d96c79e08f3ffb418d1d1988f" @@ -20795,13 +20326,6 @@ postcss-colormin@^5.3.1: colord "^2.9.1" postcss-value-parser "^4.2.0" -postcss-convert-values@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-5.0.2.tgz#879b849dc3677c7d6bc94b6a2c1a3f0808798059" - integrity sha512-KQ04E2yadmfa1LqXm7UIDwW1ftxU/QWZmz6NKnHnUvJ3LEYbbcX6i329f/ig+WnEByHegulocXrECaZGLpL8Zg== - dependencies: - postcss-value-parser "^4.1.0" - postcss-convert-values@^5.1.3: version "5.1.3" resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz#04998bb9ba6b65aa31035d669a6af342c5f9d393" @@ -20810,41 +20334,21 @@ postcss-convert-values@^5.1.3: browserslist "^4.21.4" postcss-value-parser "^4.2.0" -postcss-discard-comments@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-5.0.1.tgz#9eae4b747cf760d31f2447c27f0619d5718901fe" - integrity sha512-lgZBPTDvWrbAYY1v5GYEv8fEO/WhKOu/hmZqmCYfrpD6eyDWWzAOsl2rF29lpvziKO02Gc5GJQtlpkTmakwOWg== - postcss-discard-comments@^5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz#8df5e81d2925af2780075840c1526f0660e53696" integrity sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ== -postcss-discard-duplicates@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-5.0.1.tgz#68f7cc6458fe6bab2e46c9f55ae52869f680e66d" - integrity sha512-svx747PWHKOGpAXXQkCc4k/DsWo+6bc5LsVrAsw+OU+Ibi7klFZCyX54gjYzX4TH+f2uzXjRviLARxkMurA2bA== - postcss-discard-duplicates@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz#9eb4fe8456706a4eebd6d3b7b777d07bad03e848" integrity sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw== -postcss-discard-empty@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-5.0.1.tgz#ee136c39e27d5d2ed4da0ee5ed02bc8a9f8bf6d8" - integrity sha512-vfU8CxAQ6YpMxV2SvMcMIyF2LX1ZzWpy0lqHDsOdaKKLQVQGVP1pzhrI9JlsO65s66uQTfkQBKBD/A5gp9STFw== - postcss-discard-empty@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz#e57762343ff7f503fe53fca553d18d7f0c369c6c" integrity sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A== -postcss-discard-overridden@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-5.0.1.tgz#454b41f707300b98109a75005ca4ab0ff2743ac6" - integrity sha512-Y28H7y93L2BpJhrdUR2SR2fnSsT+3TVx1NmVQLbcnZWwIUpJ7mfcTC6Za9M2PG6w8j7UQRfzxqn8jU2VwFxo3Q== - postcss-discard-overridden@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz#7e8c5b53325747e9d90131bb88635282fb4a276e" @@ -20873,14 +20377,6 @@ postcss-media-query-parser@^0.2.3: resolved "https://registry.yarnpkg.com/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz#27b39c6f4d94f81b1a73b8f76351c609e5cef244" integrity sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig== -postcss-merge-longhand@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-5.0.4.tgz#41f4f3270282ea1a145ece078b7679f0cef21c32" - integrity sha512-2lZrOVD+d81aoYkZDpWu6+3dTAAGkCKbV5DoRhnIR7KOULVrI/R7bcMjhrH9KTRy6iiHKqmtG+n/MMj1WmqHFw== - dependencies: - postcss-value-parser "^4.1.0" - stylehacks "^5.0.1" - postcss-merge-longhand@^5.1.7: version "5.1.7" resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz#24a1bdf402d9ef0e70f568f39bdc0344d568fb16" @@ -20889,16 +20385,6 @@ postcss-merge-longhand@^5.1.7: postcss-value-parser "^4.2.0" stylehacks "^5.1.1" -postcss-merge-rules@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-5.0.3.tgz#b5cae31f53129812a77e3eb1eeee448f8cf1a1db" - integrity sha512-cEKTMEbWazVa5NXd8deLdCnXl+6cYG7m2am+1HzqH0EnTdy8fRysatkaXb2dEnR+fdaDxTvuZ5zoBdv6efF6hg== - dependencies: - browserslist "^4.16.6" - caniuse-api "^3.0.0" - cssnano-utils "^2.0.1" - postcss-selector-parser "^6.0.5" - postcss-merge-rules@^5.1.4: version "5.1.4" resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz#2f26fa5cacb75b1402e213789f6766ae5e40313c" @@ -20909,13 +20395,6 @@ postcss-merge-rules@^5.1.4: cssnano-utils "^3.1.0" postcss-selector-parser "^6.0.5" -postcss-minify-font-values@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-5.0.1.tgz#a90cefbfdaa075bd3dbaa1b33588bb4dc268addf" - integrity sha512-7JS4qIsnqaxk+FXY1E8dHBDmraYFWmuL6cgt0T1SWGRO5bzJf8sUoelwa4P88LEWJZweHevAiDKxHlofuvtIoA== - dependencies: - postcss-value-parser "^4.1.0" - postcss-minify-font-values@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz#f1df0014a726083d260d3bd85d7385fb89d1f01b" @@ -20923,15 +20402,6 @@ postcss-minify-font-values@^5.1.0: dependencies: postcss-value-parser "^4.2.0" -postcss-minify-gradients@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-5.0.3.tgz#f970a11cc71e08e9095e78ec3a6b34b91c19550e" - integrity sha512-Z91Ol22nB6XJW+5oe31+YxRsYooxOdFKcbOqY/V8Fxse1Y3vqlNRpi1cxCqoACZTQEhl+xvt4hsbWiV5R+XI9Q== - dependencies: - colord "^2.9.1" - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" - postcss-minify-gradients@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz#f1fe1b4f498134a5068240c2f25d46fcd236ba2c" @@ -20941,16 +20411,6 @@ postcss-minify-gradients@^5.1.1: cssnano-utils "^3.1.0" postcss-value-parser "^4.2.0" -postcss-minify-params@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-5.0.2.tgz#1b644da903473fbbb18fbe07b8e239883684b85c" - integrity sha512-qJAPuBzxO1yhLad7h2Dzk/F7n1vPyfHfCCh5grjGfjhi1ttCnq4ZXGIW77GSrEbh9Hus9Lc/e/+tB4vh3/GpDg== - dependencies: - alphanum-sort "^1.0.2" - browserslist "^4.16.6" - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" - postcss-minify-params@^5.1.4: version "5.1.4" resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz#c06a6c787128b3208b38c9364cfc40c8aa5d7352" @@ -20960,14 +20420,6 @@ postcss-minify-params@^5.1.4: cssnano-utils "^3.1.0" postcss-value-parser "^4.2.0" -postcss-minify-selectors@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-5.1.0.tgz#4385c845d3979ff160291774523ffa54eafd5a54" - integrity sha512-NzGBXDa7aPsAcijXZeagnJBKBPMYLaJJzB8CQh6ncvyl2sIndLVWfbcDi0SBjRWk5VqEjXvf8tYwzoKf4Z07og== - dependencies: - alphanum-sort "^1.0.2" - postcss-selector-parser "^6.0.5" - postcss-minify-selectors@^5.2.1: version "5.2.1" resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz#d4e7e6b46147b8117ea9325a915a801d5fe656c6" @@ -20975,26 +20427,12 @@ postcss-minify-selectors@^5.2.1: dependencies: postcss-selector-parser "^6.0.5" -postcss-modules-extract-imports@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d" - integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw== - -postcss-modules-extract-imports@^3.1.0: +postcss-modules-extract-imports@^3.0.0, postcss-modules-extract-imports@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz#b4497cb85a9c0c4b5aabeb759bb25e8d89f15002" integrity sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q== -postcss-modules-local-by-default@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.3.tgz#b08eb4f083050708998ba2c6061b50c2870ca524" - integrity sha512-2/u2zraspoACtrbFRnTijMiQtb4GW4BvatjaG/bCjYQo8kLTdevCUlwuBHx2sCnSyrI3x3qj4ZK1j5LQBgzmwA== - dependencies: - icss-utils "^5.0.0" - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.1.0" - -postcss-modules-local-by-default@^4.0.5: +postcss-modules-local-by-default@^4.0.3, postcss-modules-local-by-default@^4.0.5: version "4.2.0" resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz#d150f43837831dae25e4085596e84f6f5d6ec368" integrity sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw== @@ -21003,14 +20441,7 @@ postcss-modules-local-by-default@^4.0.5: postcss-selector-parser "^7.0.0" postcss-value-parser "^4.1.0" -postcss-modules-scope@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06" - integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg== - dependencies: - postcss-selector-parser "^6.0.4" - -postcss-modules-scope@^3.2.0: +postcss-modules-scope@^3.0.0, postcss-modules-scope@^3.2.0: version "3.2.1" resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz#1bbccddcb398f1d7a511e0a2d1d047718af4078c" integrity sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA== @@ -21024,24 +20455,11 @@ postcss-modules-values@^4.0.0: dependencies: icss-utils "^5.0.0" -postcss-normalize-charset@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-5.0.1.tgz#121559d1bebc55ac8d24af37f67bd4da9efd91d0" - integrity sha512-6J40l6LNYnBdPSk+BHZ8SF+HAkS4q2twe5jnocgd+xWpz/mx/5Sa32m3W1AA8uE8XaXN+eg8trIlfu8V9x61eg== - postcss-normalize-charset@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz#9302de0b29094b52c259e9b2cf8dc0879879f0ed" integrity sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg== -postcss-normalize-display-values@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-5.0.1.tgz#62650b965981a955dffee83363453db82f6ad1fd" - integrity sha512-uupdvWk88kLDXi5HEyI9IaAJTE3/Djbcrqq8YgjvAVuzgVuqIk3SuJWUisT2gaJbZm1H9g5k2w1xXilM3x8DjQ== - dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" - postcss-normalize-display-values@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz#72abbae58081960e9edd7200fcf21ab8325c3da8" @@ -21049,13 +20467,6 @@ postcss-normalize-display-values@^5.1.0: dependencies: postcss-value-parser "^4.2.0" -postcss-normalize-positions@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-5.0.1.tgz#868f6af1795fdfa86fbbe960dceb47e5f9492fe5" - integrity sha512-rvzWAJai5xej9yWqlCb1OWLd9JjW2Ex2BCPzUJrbaXmtKtgfL8dBMOOMTX6TnvQMtjk3ei1Lswcs78qKO1Skrg== - dependencies: - postcss-value-parser "^4.1.0" - postcss-normalize-positions@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz#ef97279d894087b59325b45c47f1e863daefbb92" @@ -21063,14 +20474,6 @@ postcss-normalize-positions@^5.1.1: dependencies: postcss-value-parser "^4.2.0" -postcss-normalize-repeat-style@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.0.1.tgz#cbc0de1383b57f5bb61ddd6a84653b5e8665b2b5" - integrity sha512-syZ2itq0HTQjj4QtXZOeefomckiV5TaUO6ReIEabCh3wgDs4Mr01pkif0MeVwKyU/LHEkPJnpwFKRxqWA/7O3w== - dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" - postcss-normalize-repeat-style@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz#e9eb96805204f4766df66fd09ed2e13545420fb2" @@ -21078,13 +20481,6 @@ postcss-normalize-repeat-style@^5.1.1: dependencies: postcss-value-parser "^4.2.0" -postcss-normalize-string@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-5.0.1.tgz#d9eafaa4df78c7a3b973ae346ef0e47c554985b0" - integrity sha512-Ic8GaQ3jPMVl1OEn2U//2pm93AXUcF3wz+OriskdZ1AOuYV25OdgS7w9Xu2LO5cGyhHCgn8dMXh9bO7vi3i9pA== - dependencies: - postcss-value-parser "^4.1.0" - postcss-normalize-string@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz#411961169e07308c82c1f8c55f3e8a337757e228" @@ -21092,14 +20488,6 @@ postcss-normalize-string@^5.1.0: dependencies: postcss-value-parser "^4.2.0" -postcss-normalize-timing-functions@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.0.1.tgz#8ee41103b9130429c6cbba736932b75c5e2cb08c" - integrity sha512-cPcBdVN5OsWCNEo5hiXfLUnXfTGtSFiBU9SK8k7ii8UD7OLuznzgNRYkLZow11BkQiiqMcgPyh4ZqXEEUrtQ1Q== - dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" - postcss-normalize-timing-functions@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz#d5614410f8f0b2388e9f240aa6011ba6f52dafbb" @@ -21107,14 +20495,6 @@ postcss-normalize-timing-functions@^5.1.0: dependencies: postcss-value-parser "^4.2.0" -postcss-normalize-unicode@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-5.0.1.tgz#82d672d648a411814aa5bf3ae565379ccd9f5e37" - integrity sha512-kAtYD6V3pK0beqrU90gpCQB7g6AOfP/2KIPCVBKJM2EheVsBQmx/Iof+9zR9NFKLAx4Pr9mDhogB27pmn354nA== - dependencies: - browserslist "^4.16.0" - postcss-value-parser "^4.1.0" - postcss-normalize-unicode@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz#f67297fca3fea7f17e0d2caa40769afc487aa030" @@ -21123,15 +20503,6 @@ postcss-normalize-unicode@^5.1.1: browserslist "^4.21.4" postcss-value-parser "^4.2.0" -postcss-normalize-url@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-5.0.3.tgz#42eca6ede57fe69075fab0f88ac8e48916ef931c" - integrity sha512-qWiUMbvkRx3kc1Dp5opzUwc7MBWZcSDK2yofCmdvFBCpx+zFPkxBC1FASQ59Pt+flYfj/nTZSkmF56+XG5elSg== - dependencies: - is-absolute-url "^3.0.3" - normalize-url "^6.0.1" - postcss-value-parser "^4.1.0" - postcss-normalize-url@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz#ed9d88ca82e21abef99f743457d3729a042adcdc" @@ -21140,13 +20511,6 @@ postcss-normalize-url@^5.1.0: normalize-url "^6.0.1" postcss-value-parser "^4.2.0" -postcss-normalize-whitespace@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.0.1.tgz#b0b40b5bcac83585ff07ead2daf2dcfbeeef8e9a" - integrity sha512-iPklmI5SBnRvwceb/XH568yyzK0qRVuAG+a1HFUsFRf11lEJTiQQa03a4RSCQvLKdcpX7XsI1Gen9LuLoqwiqA== - dependencies: - postcss-value-parser "^4.1.0" - postcss-normalize-whitespace@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz#08a1a0d1ffa17a7cc6efe1e6c9da969cc4493cfa" @@ -21154,14 +20518,6 @@ postcss-normalize-whitespace@^5.1.1: dependencies: postcss-value-parser "^4.2.0" -postcss-ordered-values@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-5.0.2.tgz#1f351426977be00e0f765b3164ad753dac8ed044" - integrity sha512-8AFYDSOYWebJYLyJi3fyjl6CqMEG/UVworjiyK1r573I56kb3e879sCJLGvR3merj+fAdPpVplXKQZv+ey6CgQ== - dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" - postcss-ordered-values@^5.1.3: version "5.1.3" resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz#b6fd2bd10f937b23d86bc829c69e7732ce76ea38" @@ -21170,14 +20526,6 @@ postcss-ordered-values@^5.1.3: cssnano-utils "^3.1.0" postcss-value-parser "^4.2.0" -postcss-reduce-initial@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-5.0.2.tgz#fa424ce8aa88a89bc0b6d0f94871b24abe94c048" - integrity sha512-v/kbAAQ+S1V5v9TJvbGkV98V2ERPdU6XvMcKMjqAlYiJ2NtsHGlKYLPjWWcXlaTKNxooId7BGxeraK8qXvzKtw== - dependencies: - browserslist "^4.16.6" - caniuse-api "^3.0.0" - postcss-reduce-initial@^5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz#798cd77b3e033eae7105c18c9d371d989e1382d6" @@ -21186,14 +20534,6 @@ postcss-reduce-initial@^5.1.2: browserslist "^4.21.4" caniuse-api "^3.0.0" -postcss-reduce-transforms@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-5.0.1.tgz#93c12f6a159474aa711d5269923e2383cedcf640" - integrity sha512-a//FjoPeFkRuAguPscTVmRQUODP+f3ke2HqFNgGPwdYnpeC29RZdCBvGRGTsKpMURb/I3p6jdKoBQ2zI+9Q7kA== - dependencies: - cssnano-utils "^2.0.1" - postcss-value-parser "^4.1.0" - postcss-reduce-transforms@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz#333b70e7758b802f3dd0ddfe98bb1ccfef96b6e9" @@ -21217,14 +20557,6 @@ postcss-selector-parser@^7.0.0: cssesc "^3.0.0" util-deprecate "^1.0.2" -postcss-svgo@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-5.0.3.tgz#d945185756e5dfaae07f9edb0d3cae7ff79f9b30" - integrity sha512-41XZUA1wNDAZrQ3XgWREL/M2zSw8LJPvb5ZWivljBsUQAGoEKMYm6okHsTjJxKYI4M75RQEH4KYlEM52VwdXVA== - dependencies: - postcss-value-parser "^4.1.0" - svgo "^2.7.0" - postcss-svgo@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-5.1.0.tgz#0a317400ced789f233a28826e77523f15857d80d" @@ -21233,14 +20565,6 @@ postcss-svgo@^5.1.0: postcss-value-parser "^4.2.0" svgo "^2.7.0" -postcss-unique-selectors@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-5.0.2.tgz#5d6893daf534ae52626708e0d62250890108c0c1" - integrity sha512-w3zBVlrtZm7loQWRPVC0yjUwwpty7OM6DnEHkxcSQXO1bMS3RJ+JUS5LFMSDZHJcvGsRwhZinCWVqn8Kej4EDA== - dependencies: - alphanum-sort "^1.0.2" - postcss-selector-parser "^6.0.5" - postcss-unique-selectors@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz#a9f273d1eacd09e9aa6088f4b0507b18b1b541b6" @@ -21279,7 +20603,7 @@ postcss@^7.0.36: picocolors "^0.2.1" source-map "^0.6.1" -postcss@^8.1.10, postcss@^8.2.14, postcss@^8.2.6, postcss@^8.2.8, postcss@^8.3.5, postcss@^8.4.14, postcss@^8.4.21, postcss@^8.4.23, postcss@^8.4.31, postcss@^8.4.33, postcss@^8.4.43: +postcss@^8.2.14, postcss@^8.2.6, postcss@^8.2.8, postcss@^8.3.5, postcss@^8.4.14, postcss@^8.4.21, postcss@^8.4.23, postcss@^8.4.31, postcss@^8.4.33, postcss@^8.4.43: version "8.5.3" resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.5.3.tgz#1463b6f1c7fb16fe258736cba29a2de35237eafb" integrity sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A== @@ -21415,11 +20739,6 @@ prismjs@^1.25.0, prismjs@^1.27.0: resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.30.0.tgz#d9709969d9d4e16403f6f348c63553b19f0975a9" integrity sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw== -proc-log@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/proc-log/-/proc-log-3.0.0.tgz#fb05ef83ccd64fd7b20bbe9c8c1070fc08338dd8" - integrity sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A== - proc-log@^4.0.0, proc-log@^4.1.0, proc-log@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/proc-log/-/proc-log-4.2.0.tgz#b6f461e4026e75fdfe228b265e9f7a00779d7034" @@ -21534,6 +20853,24 @@ proto-list@~1.2.1: resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= +protobufjs@^7.2.5, protobufjs@^7.3.2: + version "7.5.3" + resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-7.5.3.tgz#13f95a9e3c84669995ec3652db2ac2fb00b89363" + integrity sha512-sildjKwVqOI2kmFDiXQ6aEB0fjYTafpEvIBs8tOR8qI4spuL9OPROLVu2qZqi/xgCfsHIwVqlaF8JBjWFHnKbw== + dependencies: + "@protobufjs/aspromise" "^1.1.2" + "@protobufjs/base64" "^1.1.2" + "@protobufjs/codegen" "^2.0.4" + "@protobufjs/eventemitter" "^1.1.0" + "@protobufjs/fetch" "^1.1.0" + "@protobufjs/float" "^1.0.2" + "@protobufjs/inquire" "^1.1.0" + "@protobufjs/path" "^1.1.2" + "@protobufjs/pool" "^1.1.0" + "@protobufjs/utf8" "^1.1.0" + "@types/node" ">=13.7.0" + long "^5.0.0" + protocols@^2.0.0, protocols@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/protocols/-/protocols-2.0.1.tgz#8f155da3fc0f32644e83c5782c8e8212ccf70a86" @@ -21669,11 +21006,6 @@ queue-microtask@^1.2.2: resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== -queue-tick@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/queue-tick/-/queue-tick-1.0.1.tgz#f6f07ac82c1fd60f82e098b417a80e52f1f4c142" - integrity sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag== - quick-lru@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" @@ -21713,7 +21045,7 @@ range-parser@^1.2.1, range-parser@~1.2.1: resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -raw-body@2.5.2: +raw-body@2.5.2, raw-body@^2.4.1: version "2.5.2" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA== @@ -21723,16 +21055,6 @@ raw-body@2.5.2: iconv-lite "0.4.24" unpipe "1.0.0" -raw-body@^2.4.1: - version "2.4.2" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.2.tgz#baf3e9c21eebced59dd6533ac872b71f7b61cb32" - integrity sha512-RPMAFUJP19WIet/99ngh6Iv8fzAbqum4Li7AD6DtGaW2RpMB/11xDoalPiJMTbu6I3hkbMVkATvZrqb9EEqeeQ== - dependencies: - bytes "3.1.1" - http-errors "1.8.1" - iconv-lite "0.4.24" - unpipe "1.0.0" - rc-align@^4.0.0: version "4.0.11" resolved "https://registry.yarnpkg.com/rc-align/-/rc-align-4.0.11.tgz#8198c62db266bc1b8ef05e56c13275bf72628a5e" @@ -22818,12 +22140,7 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rfdc@^1.3.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.1.tgz#2b6d4df52dffe8bb346992a10ea9451f24373a8f" - integrity sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg== - -rfdc@^1.4.1: +rfdc@^1.3.0, rfdc@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.4.1.tgz#778f76c4fb731d93414e8f925fbecf64cce7f6ca" integrity sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA== @@ -22900,7 +22217,7 @@ rollup@4.22.4: "@rollup/rollup-win32-x64-msvc" "4.22.4" fsevents "~2.3.2" -rollup@^4.18.0: +rollup@^4.18.0, rollup@^4.20.0: version "4.39.0" resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.39.0.tgz#9dc1013b70c0e2cb70ef28350142e9b81b3f640c" integrity sha512-thI8kNc02yNvnmJp8dr3fNWJ9tCONDhp6TV35X6HkKGGs9E6q7YWCHbe5vKiTa7TAiNcFEmXKj3X/pG2b3ci0g== @@ -22929,34 +22246,6 @@ rollup@^4.18.0: "@rollup/rollup-win32-x64-msvc" "4.39.0" fsevents "~2.3.2" -rollup@^4.20.0: - version "4.31.0" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.31.0.tgz#b84af969a0292cb047dce2c0ec5413a9457597a4" - integrity sha512-9cCE8P4rZLx9+PjoyqHLs31V9a9Vpvfo4qNcs6JCiGWYhw2gijSetFbH6SSy1whnkgcefnUwr8sad7tgqsGvnw== - dependencies: - "@types/estree" "1.0.6" - optionalDependencies: - "@rollup/rollup-android-arm-eabi" "4.31.0" - "@rollup/rollup-android-arm64" "4.31.0" - "@rollup/rollup-darwin-arm64" "4.31.0" - "@rollup/rollup-darwin-x64" "4.31.0" - "@rollup/rollup-freebsd-arm64" "4.31.0" - "@rollup/rollup-freebsd-x64" "4.31.0" - "@rollup/rollup-linux-arm-gnueabihf" "4.31.0" - "@rollup/rollup-linux-arm-musleabihf" "4.31.0" - "@rollup/rollup-linux-arm64-gnu" "4.31.0" - "@rollup/rollup-linux-arm64-musl" "4.31.0" - "@rollup/rollup-linux-loongarch64-gnu" "4.31.0" - "@rollup/rollup-linux-powerpc64le-gnu" "4.31.0" - "@rollup/rollup-linux-riscv64-gnu" "4.31.0" - "@rollup/rollup-linux-s390x-gnu" "4.31.0" - "@rollup/rollup-linux-x64-gnu" "4.31.0" - "@rollup/rollup-linux-x64-musl" "4.31.0" - "@rollup/rollup-win32-arm64-msvc" "4.31.0" - "@rollup/rollup-win32-ia32-msvc" "4.31.0" - "@rollup/rollup-win32-x64-msvc" "4.31.0" - fsevents "~2.3.2" - rrweb-cssom@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/rrweb-cssom/-/rrweb-cssom-0.6.0.tgz#ed298055b97cbddcdeb278f904857629dec5e0e1" @@ -22979,7 +22268,7 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -rxjs@7.8.1, rxjs@^7.5.1, rxjs@^7.5.5: +rxjs@7.8.1: version "7.8.1" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.1.tgz#6f6f3d99ea8044291efd92e7c7fcf562c4057543" integrity sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg== @@ -22993,7 +22282,7 @@ rxjs@^6.4.0, rxjs@^6.6.0: dependencies: tslib "^1.9.0" -rxjs@^7.8.1: +rxjs@^7.5.1, rxjs@^7.5.5, rxjs@^7.8.1: version "7.8.2" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.2.tgz#955bc473ed8af11a002a2be52071bf475638607b" integrity sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA== @@ -23027,16 +22316,7 @@ safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== -safe-regex-test@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.3.tgz#a5b4c0f06e0ab50ea2c395c14d8371232924c377" - integrity sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw== - dependencies: - call-bind "^1.0.6" - es-errors "^1.3.0" - is-regex "^1.1.4" - -safe-regex-test@^1.1.0: +safe-regex-test@^1.0.3, safe-regex-test@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.1.0.tgz#7f87dfb67a3150782eaaf18583ff5d1711ac10c1" integrity sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw== @@ -23205,7 +22485,7 @@ semver-regex@^3.1.2: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== -semver@7.6.3, semver@^7.0.0, semver@^7.1.1, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8, semver@^7.5.3, semver@^7.5.4, semver@^7.6.3: +semver@7.6.3: version "7.6.3" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== @@ -23215,7 +22495,7 @@ semver@^6.0.0, semver@^6.1.0, semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.7.2: +semver@^7.0.0, semver@^7.1.1, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8, semver@^7.5.3, semver@^7.5.4, semver@^7.6.3, semver@^7.7.2: version "7.7.2" resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.2.tgz#67d99fdcd35cec21e6f8b87a7fd515a33f982b58" integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA== @@ -23365,7 +22645,7 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shell-quote@^1.6.1, shell-quote@^1.8.1: +shell-quote@^1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.1.tgz#6dbf4db75515ad5bac63b4f1894c3a154c766680" integrity sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA== @@ -23739,16 +23019,11 @@ source-map@0.6.1, source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, sourc resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@0.7.4: +source-map@0.7.4, source-map@^0.7.3: version "0.7.4" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== -source-map@^0.7.3: - version "0.7.3" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" - integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== - sourcemap-codec@^1.4.4, sourcemap-codec@^1.4.8: version "1.4.8" resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" @@ -23803,10 +23078,10 @@ spdy@^4.0.2: select-hose "^2.0.0" spdy-transport "^3.0.0" -spex@3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/spex/-/spex-3.2.0.tgz#fa4a21922407e112624977b445a6d634578a1127" - integrity sha512-9srjJM7NaymrpwMHvSmpDeIK5GoRMX/Tq0E8aOlDPS54dDnDUIp30DrP9SphMPEETDLzEM9+4qo+KipmbtPecg== +spex@3.4.1: + version "3.4.1" + resolved "https://registry.yarnpkg.com/spex/-/spex-3.4.1.tgz#f52a333984c70e65b723ee4a1e9dea7a007aa308" + integrity sha512-Br0Mu3S+c70kr4keXF+6K4B8ohR+aJjI9s7SbdsI3hliE1Riz4z+FQk7FQL+r7X1t90KPkpuKwQyITpCIQN9mg== split-ca@^1.0.1: version "1.0.1" @@ -23820,13 +23095,18 @@ split2@^2.1.0: dependencies: through2 "^2.0.2" -split2@^3.1.1, split2@^3.2.2: +split2@^3.2.2: version "3.2.2" resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f" integrity sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg== dependencies: readable-stream "^3.0.0" +split2@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4" + integrity sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg== + split@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" @@ -23881,7 +23161,7 @@ ssh-remote-port-forward@^1.0.4: "@types/ssh2" "^0.5.48" ssh2 "^1.4.0" -ssh2@^1.4.0: +ssh2@^1.15.0, ssh2@^1.4.0: version "1.16.0" resolved "https://registry.yarnpkg.com/ssh2/-/ssh2-1.16.0.tgz#79221d40cbf4d03d07fe881149de0a9de928c9f0" integrity sha512-r1X4KsBGedJqo7h8F5c4Ybpcr5RjyP+aWIG007uBPRjmdQWfEiVLzSK71Zji1B9sKxwaCvD8y8cwSkYrlLiRRg== @@ -23999,13 +23279,12 @@ stream-to-array@^2.3.0: dependencies: any-promise "^1.1.0" -streamx@^2.15.0, streamx@^2.18.0: - version "2.18.0" - resolved "https://registry.yarnpkg.com/streamx/-/streamx-2.18.0.tgz#5bc1a51eb412a667ebfdcd4e6cf6a6fc65721ac7" - integrity sha512-LLUC1TWdjVdn1weXGcSxyTR3T4+acB6tVGXT95y0nGbca4t4o/ng1wKAGTljm9VicuCVLvRlqFYXYy5GwgM7sQ== +streamx@^2.15.0, streamx@^2.21.0: + version "2.22.1" + resolved "https://registry.yarnpkg.com/streamx/-/streamx-2.22.1.tgz#c97cbb0ce18da4f4db5a971dc9ab68ff5dc7f5a5" + integrity sha512-znKXEBxfatz2GBNK02kRnCXjV+AA4kjZIUxeWSr3UGirZMJfTE9uiwKHobnbgxWyL/JWro8tTq+vOqAK1/qbSA== dependencies: fast-fifo "^1.3.2" - queue-tick "^1.0.1" text-decoder "^1.1.0" optionalDependencies: bare-events "^2.2.0" @@ -24273,14 +23552,6 @@ styled-components@6.1.12: stylis "4.3.2" tslib "2.6.2" -stylehacks@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.0.1.tgz#323ec554198520986806388c7fdaebc38d2c06fb" - integrity sha512-Es0rVnHIqbWzveU1b24kbw92HsebBepxfcqe5iix7t9j0PQqhs0IxXVXv0pY2Bxa08CgMkzD6OWql7kbGOuEdA== - dependencies: - browserslist "^4.16.0" - postcss-selector-parser "^6.0.4" - stylehacks@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.1.1.tgz#7934a34eb59d7152149fa69d6e9e56f2fc34bcc9" @@ -24408,36 +23679,26 @@ tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0, tapable@^2.2.1: resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== -tar-fs@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.1.tgz#489a15ab85f1f0befabb370b7de4f9eb5cbe8784" - integrity sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng== +tar-fs@^2.0.0, tar-fs@~2.1.2: + version "2.1.3" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.3.tgz#fb3b8843a26b6f13a08e606f7922875eb1fbbf92" + integrity sha512-090nwYJDmlhwFwEW3QQl+vaNnxsO2yVsd45eTKRBzSzu+hlb1w2K9inVq5b0ngXuLVqQ4ApvsUHHnu/zQNkWAg== dependencies: chownr "^1.1.1" mkdirp-classic "^0.5.2" pump "^3.0.0" tar-stream "^2.1.4" -tar-fs@^3.0.6: - version "3.0.6" - resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-3.0.6.tgz#eaccd3a67d5672f09ca8e8f9c3d2b89fa173f217" - integrity sha512-iokBDQQkUyeXhgPYaZxmczGPhnhXZ0CmrqI+MOb/WFGS9DW5wnfrLgtjUJBvz50vQ3qfRwJ62QVoCFu8mPVu5w== +tar-fs@^3.0.7: + version "3.1.0" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-3.1.0.tgz#4675e2254d81410e609d91581a762608de999d25" + integrity sha512-5Mty5y/sOF1YWj1J6GiBodjlDc05CUR8PKXrsnFAiSG0xA+GHeWLovaZPYUDXkH/1iKRf2+M5+OrRgzC7O9b7w== dependencies: pump "^3.0.0" tar-stream "^3.1.5" optionalDependencies: - bare-fs "^2.1.1" - bare-path "^2.1.0" - -tar-fs@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.0.1.tgz#e44086c1c60d31a4f0cf893b1c4e155dabfae9e2" - integrity sha512-6tzWDMeroL87uF/+lin46k+Q+46rAJ0SyPGz7OW7wTgblI273hsBqk2C1j0/xNadNLKDTUL9BukSjB7cwgmlPA== - dependencies: - chownr "^1.1.1" - mkdirp-classic "^0.5.2" - pump "^3.0.0" - tar-stream "^2.0.0" + bare-fs "^4.0.1" + bare-path "^3.0.0" tar-stream@^1.5.2: version "1.6.2" @@ -24452,7 +23713,7 @@ tar-stream@^1.5.2: to-buffer "^1.1.1" xtend "^4.0.0" -tar-stream@^2.0.0, tar-stream@^2.1.4, tar-stream@~2.2.0: +tar-stream@^2.1.4, tar-stream@~2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ== @@ -24622,47 +23883,26 @@ test-exclude@^6.0.0: glob "^7.1.4" minimatch "^3.0.4" -testcontainers@^10.10.4: - version "10.18.0" - resolved "https://registry.yarnpkg.com/testcontainers/-/testcontainers-10.18.0.tgz#dbd74e1d6e5de431414a06fb2c2ed9d82971739e" - integrity sha512-MnwWsPjsN5QVe+lSU1LwLZVOyjgwSwv1INzkw8FekdwgvOtvJ7FThQEkbmzRcguQootgwmA9FG54NoTChZDRvA== +testcontainers@^10.28.0: + version "10.28.0" + resolved "https://registry.yarnpkg.com/testcontainers/-/testcontainers-10.28.0.tgz#73d3757fcd60405c20dd55599ca89e44cadc8ccf" + integrity sha512-1fKrRRCsgAQNkarjHCMKzBKXSJFmzNTiTbhb5E/j5hflRXChEtHvkefjaHlgkNUjfw92/Dq8LTgwQn6RDBFbMg== dependencies: "@balena/dockerignore" "^1.0.2" - "@types/dockerode" "^3.3.29" + "@types/dockerode" "^3.3.35" archiver "^7.0.1" async-lock "^1.4.1" byline "^5.0.0" debug "^4.3.5" docker-compose "^0.24.8" - dockerode "^3.3.5" - get-port "^5.1.1" + dockerode "^4.0.5" + get-port "^7.1.0" proper-lockfile "^4.1.2" properties-reader "^2.3.0" ssh-remote-port-forward "^1.0.4" - tar-fs "^3.0.6" + tar-fs "^3.0.7" tmp "^0.2.3" - undici "^5.28.5" - -testcontainers@^10.13.0: - version "10.13.0" - resolved "https://registry.yarnpkg.com/testcontainers/-/testcontainers-10.13.0.tgz#cc70601db4f7a95d8a3ad669613450bd56b022ee" - integrity sha512-SDblQvirbJw1ZpenxaAairGtAesw5XMOCHLbRhTTUBJtBkZJGce8Vx/I8lXQxWIM8HRXsg3HILTHGQvYo4x7wQ== - dependencies: - "@balena/dockerignore" "^1.0.2" - "@types/dockerode" "^3.3.29" - archiver "^7.0.1" - async-lock "^1.4.1" - byline "^5.0.0" - debug "^4.3.5" - docker-compose "^0.24.8" - dockerode "^3.3.5" - get-port "^5.1.1" - proper-lockfile "^4.1.2" - properties-reader "^2.3.0" - ssh-remote-port-forward "^1.0.4" - tar-fs "^3.0.6" - tmp "^0.2.3" - undici "^5.28.4" + undici "^5.29.0" text-decoder@^1.1.0: version "1.1.1" @@ -24777,11 +24017,6 @@ timm@^1.6.1: resolved "https://registry.yarnpkg.com/timm/-/timm-1.7.1.tgz#96bab60c7d45b5a10a8a4d0f0117c6b7e5aff76f" integrity sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw== -timsort@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" - integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= - tiny-invariant@^1.0.2, tiny-invariant@^1.0.6, tiny-invariant@^1.3.1, tiny-invariant@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.3.tgz#46680b7a873a0d5d10005995eb90a70d74d60127" @@ -25267,7 +24502,7 @@ undici-types@~6.19.2: resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.19.8.tgz#35111c9d1437ab83a7cdc0abae2f26d88eda0a02" integrity sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw== -undici@^5.28.4, undici@^5.28.5: +undici@^5.29.0: version "5.29.0" resolved "https://registry.yarnpkg.com/undici/-/undici-5.29.0.tgz#419595449ae3f2cdcba3580a2e8903399bd1f5a3" integrity sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg== @@ -26564,7 +25799,7 @@ yargs-parser@^20.2.2, yargs-parser@^20.2.3: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== -yargs@17.7.2, yargs@^17.2.1, yargs@^17.3.1, yargs@^17.6.2, yargs@^17.7.1: +yargs@17.7.2, yargs@^17.2.1, yargs@^17.3.1, yargs@^17.6.2, yargs@^17.7.1, yargs@^17.7.2: version "17.7.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy