Skip to content

v3.25.0

Choose a tag to compare

@sfc-gh-jwilkowski sfc-gh-jwilkowski released this 24 Aug 14:12
· 159 commits to main since this release

New additions

  • snow connection add now supports --client-store-temporary-credential, which writes client_store_temporary_credential = true to the new connection in config.toml.
  • snow sql --local-only default can now be set via the SNOWFLAKE_CLI_SQL_LOCAL_ONLY environment variable. When unset, the default remains false.
  • snow app events now accepts --instance <N> (Snowflake App Runtime only) to retrieve live container logs from a specific service instance. Useful when horizontal scaling is active and more than one instance is running. Defaults to instance 0 when the flag is omitted.
  • The snow app commands now support an app.yml (version 2) for Snowflake App Runtime projects; when present it drives the flow instead of snowflake.yml (the Native App flow is unchanged). Its targets block declares named per-environment deployments, and a new --target flag on deploy, open, events, teardown, and validate selects which one to use. snow app deploy runs an upload → build → deploy pipeline that can be limited to a single phase with --upload-only, --build-only, or --promote-only.
  • dbt_projects_profiles.yml support in snow dbt deploy is now generally available. When the profiles directory contains a dbt_projects_profiles.yml, it takes precedence over profiles.yml and is staged into the deployed project under its own name. The profiles directory is the one given by --profiles-dir, or the project root when that option is omitted, so projects that already contain a dbt_projects_profiles.yml alongside profiles.yml will now deploy with the former and emit a warning.

Fixes and improvements

  • A snow app command no longer fails because it could not clean up after itself. If a leftover file cannot be deleted — common on Windows, where an editor or antivirus can be holding it — the command still succeeds and warns which directory was left behind. When the bundle directory cannot be cleared before bundling, the command now stops with an explanation of what to do instead of a permissions error.
  • snow app commands no longer delete anything in a Snowflake App Runtime project's output directory apart from the bundle they created there. A project that keeps its own build results, exports or notebook output under output lost them to a command that only meant to bundle.
  • snow app events for Snowflake App Runtime projects can now return more events by requesting a higher --last value.
  • snow app deploy with workspace-backed storage now builds from versions/live/ (the current working state) instead of the last committed version. In the Workspaces editor, files auto-save to the live version continuously — reading versions/last during the build phase caused stale content to be deployed when running from a live workspace session.
  • DCM projects: the snow dcm preview, snow dcm refresh, and snow dcm test
    commands are not yet generally available. They are now hidden from --help
    unless the enable_dcm_preview_features CLI feature flag is enabled, so they no
    longer appear in snow dcm --help without an explicit opt-in.
  • snow dcm plan now tracks the server's own progress, like snow dcm deploy already does: its RENDER, COMPILE and PLAN steps advance as the backend reports each phase. Previously RENDER and COMPILE completed instantly and the rest of the run showed as a single PLAN spinner.
  • snow dcm deploy, snow dcm plan and snow dcm purge no longer require an active warehouse. Progress tracking read the result with RESULT_SCAN, which requires a warehouse.
  • snow dcm deploy, snow dcm plan and snow dcm purge now wrap a change line too wide for the terminal, with its continuation aligned under the change instead of breaking back to the left margin. The file list shown while uploading uses the same tree guides as the changeset.
  • snow streamlit deploy --replace: fixed a crash when replacing a legacy ROOT_LOCATION Streamlit app with a versioned deployment.
  • Upgraded GitPython from 3.1.57 to 3.1.58.
  • Upgraded the Python interpreter embedded in Linux binaries from 3.10.16 to 3.10.21.
  • Upgraded pip from 26.1.2 to 26.2.1.