Skip to content

v3.0.0-rc4

Pre-release
Pre-release
Compare
Choose a tag to compare
@sfc-gh-jsikorski sfc-gh-jsikorski released this 27 Sep 13:04
· 191 commits to main since this release

Backward incompatibility

  • Dropped support for Python below 3.10 version.
  • snow object stage commands are removed in favour of snow stage.
  • snow snowpark init, snow streamlit init, and snow app init commands are removed in favor of snow init command.
  • Removed deprecated flags from snow snowpark commands.
  • Default Python version for Snowpark functions and procedures was bumped to 3.10 from 3.8.
  • Snowpark commands
    • snow snowpark build creates a .zip file for each specified artifact that is a directory. Non-Anaconda
      dependencies are packaged once as dependencies.zip.
    • snow snowpark deploy uploads all artifacts created during build step. Dependencies zip is upload once to
      every Snowpark stage specified in project definition.
    • The changes are compatible with V1 projects definition though the result state (file layout) is different.
    • snow snowpark package commands no longer fallback to Anaconda Channel metadata when fetching available packages info fails.
    • Added snow streamlit execute app-name command to run Streamlit apps in a Snowflake environment in headless mode.

Deprecations

  • Renamed private-key-path flag to private-key-file, added private-key-path as an alias for backward compatibility.

New additions

  • Added snow spcs service execute-job command, which supports creating and executing a job service in the current schema.
  • Added snow app events command to fetch logs and traces from local and customer app installations.
  • Added support for external access (api integrations and secrets) in Streamlit.
  • Added support for <% ... %> syntax in SQL templating.
  • Support multiple Streamlit application in single snowflake.yml project definition file.
  • Added snow helpers v1-to-v2 command to migrate snowflake.yml file from V1 to V2.
  • Added --package-entity-id and --app-entity-id options to snow app commands to allow targeting specific entities when the definition_version in snowflake.yml is 2 or higher and it contains multiple application package or application entities.
  • Added templates expansion of arbitrary files for Native Apps through templates processor.
  • Added SNOWFLAKE_..._PRIVATE_KEY_RAW environment variable to pass private key as a raw string.
  • Added periodic check for newest version of Snowflake CLI. When new version is available, user will be notified.
  • Added support for imports in Streamlit definition.
  • Add --host and --port to connection flags.

Fixes and improvements

  • Fixed problem with whitespaces in snow connection add command.
  • Added check for the correctness of token file and private key paths when addind a connection.
  • Fix the typo in spcs service name argument description. It is the identifier of the service instead of the service pool.
  • Fix error handling and improve messaging when no artifacts provided.
  • Improved error message for incompatible parameters.
  • Fixed SQL error when running snow app version create and snow app version drop with a version name that isn't a valid Snowflake unquoted identifier
  • Duplicated keys in snowflake.yml are now detected and reported.
  • snow streamlit deploy will check for existing streamlit instance before deploying anything.
  • Fixed snow git execute with / in name of the branch.
  • snow app commands don't enforce ownership of the objects they manage, and rely on RBAC instead.
  • snow app deploy for package entity now allows operating on application packages created outside the CLI
  • Fixes snow connection add behavior when connections.toml file exists.
  • Add more readable error messages in snow object create command.