Skip to content

Feat/externalbrowser auth#10557

Open
jmkacz wants to merge 6 commits intocube-js:masterfrom
jmkacz:feat/externalbrowser-auth
Open

Feat/externalbrowser auth#10557
jmkacz wants to merge 6 commits intocube-js:masterfrom
jmkacz:feat/externalbrowser-auth

Conversation

@jmkacz
Copy link
Copy Markdown

@jmkacz jmkacz commented Mar 26, 2026

Check List

  • Tests have been run in packages where changes have been made if available
  • Linter has been run for changed code
  • Tests for the changes have been added if not covered yet
  • Docs have been added / updated if required

Issue Reference this PR resolves

#9522

jmkacz added 3 commits March 25, 2026 20:40
Upgrade snowflake-sdk from 2.2.0 to 2.3.6, and update the version pinning from "^2.2.0" to "^2.3.6".

Version 2.3.6 of the snowflake-connector-nodejs library was released on 2026-03-25 and includes a needed new feature:
* Added support for every authenticator type (including external browser and Okta) in connect(), matching connectAsync().
In the SnowflakeDriverOptions interface, indicate password is optional.

In the prepareConnectOptions function, add a branch to set config attributes when authenticator is EXTERNALBROWSER.
@jmkacz jmkacz requested a review from a team as a code owner March 26, 2026 02:52
@github-actions github-actions bot added driver:snowflake Issues relating to the Snowflake driver javascript Pull requests that update Javascript code data source driver pr:community Contribution from Cube.js community members. labels Mar 26, 2026
In upgrading the snowflake-sdk dependency from v2.2.0 to v2.3.6, we encountered a breaking change.

In v2.3.0, commit 16e3bf5 (SNOW-2341089 Modify getColumns to return undefined option (cube-js#1170)) modified the getColumns method signature to allow an optional undefined return value.

tsc fails with:

```
packages/cubejs-snowflake-driver/src/SnowflakeDriver.ts:877:56 - error TS2345: Argument of type 'Column[] | undefined' is not assignable to parameter of type 'Column[]'.
  Type 'undefined' is not assignable to type 'Column[]'.

877         const hydrationMap = this.generateHydrationMap(stmt.getColumns());
                                                           ~~~~~~~~~~~~~~~~~
```

One way to address this error is to change instances of `stmt.getColumns()` to `stmt.getColumns() ?? []`, falling back to an empty array.
Running `yarn install` updated yarn.lock.

Here is a best-effort accounting of the changes.

Updated:
* @aws-sdk/client-s3 from 3.1017.0 to 3.1029.0
* @aws-sdk/client-sts from 3.1017.0 to 3.1029.0
* @aws-sdk/crc64-nvme from 3.972.5 to 3.972.6
* @aws-sdk/ec2-metadata-service from 3.1017.0 to 3.1029.0
* @aws-sdk/middleware-bucket-endpoint from 3.972.8 to 3.972.9
* @aws-sdk/middleware-expect-continue from 3.972.8 to 3.972.9
* @aws-sdk/middleware-flexible-checksums from 3.974.4 to 3.974.7
* @aws-sdk/middleware-location-constraint from 3.972.8 to 3.972.9
* @aws-sdk/middleware-sdk-s3 from 3.972.25 to 3.972.28
* @aws-sdk/middleware-ssec from 3.972.8 to 3.972.9
* @aws-sdk/signature-v4-multi-region from 3.996.13 to 3.996.16
* @smithy/eventstream-codec from 4.2.12 to 4.2.13
* @smithy/eventstream-serde-browser from 4.2.12 to 4.2.13
* @smithy/eventstream-serde-config-resolver from 4.3.12 to 4.3.13
* @smithy/eventstream-serde-node from 4.2.12 to 4.2.13
* @smithy/eventstream-serde-universal from 4.2.12 to 4.2.13
* @smithy/hash-blob-browser from 4.2.13 to 4.2.14
* @smithy/hash-stream-node from 4.2.12 to 4.2.13
* @smithy/md5-js from 4.2.12 to 4.2.13
* @smithy/util-waiter from 4.2.13 to 4.2.15
* snowflake-sdk from 2.3.6 to 2.4.0

Added:
* @aws-sdk/core
* @aws-sdk/credential-provider-env
* @aws-sdk/credential-provider-http
* @aws-sdk/credential-provider-ini
* @aws-sdk/credential-provider-login
* @aws-sdk/credential-provider-node
* @aws-sdk/credential-provider-process
* @aws-sdk/credential-provider-sso
* @aws-sdk/credential-provider-web-identity
* @aws-sdk/middleware-host-header
* @aws-sdk/middleware-logger
* @aws-sdk/middleware-recursion-detection
* @aws-sdk/middleware-user-agent
* @aws-sdk/nested-clients
* @aws-sdk/region-config-resolver
* @aws-sdk/token-providers
* @aws-sdk/types
* @aws-sdk/util-endpoints
* @aws-sdk/util-user-agent-browser
* @aws-sdk/util-user-agent-node
* @aws-sdk/xml-builder
* @smithy/config-resolver
* @smithy/core
* @smithy/credential-provider-imds
* @smithy/fetch-http-handler
* @smithy/hash-node
* @smithy/invalid-dependency
* @smithy/middleware-content-length
* @smithy/middleware-endpoint
* @smithy/middleware-retry
* @smithy/middleware-serde
* @smithy/middleware-stack
* @smithy/node-config-provider
* @smithy/node-http-handler
* @smithy/property-provider
* @smithy/protocol-http
* @smithy/querystring-builder
* @smithy/querystring-parser
* @smithy/service-error-classification
* @smithy/shared-ini-file-loader
* @smithy/signature-v4
* @smithy/smithy-client
* @smithy/types
* @smithy/url-parser
* @smithy/util-defaults-mode-browser
* @smithy/util-defaults-mode-node
* @smithy/util-endpoints
* @smithy/util-middleware
* @smithy/util-retry
* @smithy/util-stream

Removed:
* commander
* esniff
* event-emitter
* nan
* next-tick
* options
* q
* tinycolor
* undici-types
* ws
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

data source driver driver:snowflake Issues relating to the Snowflake driver javascript Pull requests that update Javascript code pr:community Contribution from Cube.js community members.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant