Releases: snowflakedb/snowflake-cli
Releases · snowflakedb/snowflake-cli
v2.7.0-rc2
v2.7.0
Unreleased version
Backward incompatibility
Deprecations
snow snowpark init
andsnow streamlit init
are marked as deprecated. The commands are still functional,
but should be replaced withsnow init
New additions
- Added connection option
--token-file-path
allowing passing OAuth token using a file. The function is also
supported by settingtoken_file_path
in connection definition. - Support for Python remote execution via
snow stage execute
andsnow git execute
similar to existing EXECUTE IMMEDIATE support. - Added support for autocomplete in
--connection
flag. - Added
snow init
command, which supports initializing projects with external templates.
Fixes and improvements
- The
snow app run
command now allows upgrading to unversioned mode from a versioned or release mode application installation - The
snow app teardown
command now allows dropping a package with versions when the--force
flag is provided - The
snow app version create
command now allows operating on application packages created outside the CLI - Added support for user stages in stage execute and copy commands
- Improved support for quoted identifiers in snowpark commands.
- Updated post_deploy SQL script default database to be the application database
- Handle
NULL
md5 values correctly when returned by stage storage backends - Regionless host URLs are now supported when generating Snowsight URLs
v2.7.0-rc1
v2.7.0
Unreleased version
Backward incompatibility
Deprecations
snow snowpark init
andsnow streamlit init
are marked as deprecated. The commands are still functional,
but should be replaced withsnow init
New additions
- Added connection option
--token-file-path
allowing passing OAuth token using a file. The function is also
supported by settingtoken_file_path
in connection definition. - Support for Python remote execution via
snow stage execute
andsnow git execute
similar to existing EXECUTE IMMEDIATE support. - Added support for autocomplete in
--connection
flag. - Added
snow init
command, which supports initializing projects with external templates.
Fixes and improvements
- The
snow app run
command now allows upgrading to unversioned mode from a versioned or release mode application installation - The
snow app teardown
command now allows dropping a package with versions when the--force
flag is provided - The
snow app version create
command now allows operating on application packages created outside the CLI - Added support for user stages in stage execute and copy commands
- Improved support for quoted identifiers in snowpark commands.
- Updated post_deploy SQL script default database to be the application database
- Handle
NULL
md5 values correctly when returned by stage storage backends - Regionless host URLs are now supported when generating Snowsight URLs
v2.7.0-rc0
v2.7.0
Unreleased version
Backward incompatibility
Deprecations
snow snowpark init
andsnow streamlit init
are marked as deprecated. The commands are still functional,
but should be replaced withsnow init
New additions
- Added connection option
--token-file-path
allowing passing OAuth token using a file. The function is also
supported by settingtoken_file_path
in connection definition. - Support for Python remote execution via
snow stage execute
andsnow git execute
similar to existing EXECUTE IMMEDIATE support. - Added support for autocomplete in
--connection
flag. - Added
snow init
command, which supports initializing projects with external templates.
Fixes and improvements
- The
snow app run
command now allows upgrading to unversioned mode from a versioned or release mode application installation - The
snow app teardown
command now allows dropping a package with versions when the--force
flag is provided - The
snow app version create
command now allows operating on application packages created outside the CLI - Added support for user stages in stage execute and copy commands
- Improved support for quoted identifiers in snowpark commands.
- Updated post_deploy SQL script default database to be the application database
- Handle
NULL
md5 values correctly when returned by stage storage backends - Regionless host URLs are now supported when generating Snowsight URLs
v2.6.1
v2.6.1
Backward incompatibility
Deprecations
New additions
Fixes and improvements
snow object create
message returns meaningful error if connection database is not defined.- Fixed crashing when save_logs is false and log directory does not exist.
v2.6.0
Backward incompatibility
Deprecations
New additions
- Added
snow object create
command - Added support for
title
field in Streamlit definition insnowflake.yml
project file. - Added
--auto-compress
flag tosnow stage copy
command enabling use of gzip to compress files during upload. - Added new
native_app.application.post_deploy
section tosnowflake.yml
schema to execute actions after the application has been deployed viasnow app run
.- Added the
sql_script
hook type to run SQL scripts with template support.
- Added the
- Added support for
--env
command line arguments for templating.- Available for commands that make use of the project definition file.
- Format of the argument:
--env key1=value1 --env key2=value2
. - Overrides
env
variables values when used in templating. - Can be referenced in templating through
ctx.env.<key_name>
. - Templating will read env vars in this order of priority (highest priority to lowest priority):
- vars from
--env
command line argument. - vars from shell environment variables.
- vars from
env
section of project definition file.
- vars from
Fixes and improvements
- Passing a directory to
snow app deploy
will now deploy any contained file or subfolder specified in the application's artifact rules - Fixes markup escaping errors in
snow sql
that may occur when users use unintentionally markup-like escape tags. - Fixed case where
snow app teardown
could not tear down orphan applications (those that have had their package dropped) - Fixed case where
snow app teardown
could leave behind orphan applications if they were not created by the Snowflake CLI - Fixed case where
snow app run
could fail to run an existing application whose package was dropped by prompting to drop and recreate the application - Improve terminal output sanitization to avoid ASCII escape codes.
- The
snow sql
command will show query text before executing it. - Improved stage diff output in
snow app
commands - Hid the diff from
snow app validate
output since it was redundant - Added log into the file with loaded external plugins
- Warn users if they attempt to use templating with project definition version 1
- Improved output and format of Pydantic validation errors
- The
snow app run
command will no longer override debug mode during an application upgrade unless explicitly set insnowflake.yml
v2.6.0-rc0
v2.6.0
Backward incompatibility
Deprecations
New additions
- Add
snow object create
command - Added support for
title
field in Streamlit definition insnowflake.yml
project file. - Added
--auto-compress
flag tosnow stage copy
command enabling use of gzip to compress files during upload. - Added new
native_app.application.post_deploy
section tosnowflake.yml
schema to execute actions after the application has been deployed viasnow app run
.- Added the
sql_script
hook type to run SQL scripts with template support.
- Added the
- Added support for
--env
command line arguments for templating.- Available for commands that make use of the project definition file.
- Format of the argument:
--env key1=value1 --env key2=value2
. - Overrides
env
variables values when used in templating. - Can be referenced in templating through
ctx.env.<key_name>
. - Templating will read env vars in this order of priority (highest priority to lowest priority):
- vars from
--env
command line argument. - vars from shell environment variables.
- vars from
env
section of project definition file.
- vars from
Fixes and improvements
- Passing a directory to
snow app deploy
will now deploy any contained file or subfolder specified in the application's artifact rules - Fixes markup escaping errors in
snow sql
that may occur when users use unintentionally markup-like escape tags. - Fixed case where
snow app teardown
could not tear down orphan applications (those that have had their package dropped) - Fixed case where
snow app teardown
could leave behind orphan applications if they were not created by the Snowflake CLI - Fixed case where
snow app run
could fail to run an existing application whose package was dropped by prompting to drop and recreate the application - Improve terminal output sanitization to avoid ASCII escape codes.
- The
snow sql
command will show query text before executing it. - Improved stage diff output in
snow app
commands - Hid the diff from
snow app validate
output since it was redundant - Added log into the file with loaded external plugins
- Warn users if they attempt to use templating with project definition version 1
- Improved output and format of Pydantic validation errors
- The
snow app run
command will no longer override debug mode during an application upgrade unless explicitly set insnowflake.yml
v2.5.0
Backward incompatibility
Deprecations
New additions
- Added
snow app bundle
command that prepares a local folder in the project directory with artifacts to be uploaded to a stage as part of creating a Snowflake Native App.- Snowflake Native App projects can now optionally generate CREATE FUNCTION or CREATE PROCEDURE declarations in setup scripts from Snowpark python code that includes decorators (e.g. @ sproc, @ udf).
- Added
snow app validate
command that validates the setup script SQL used to create a Snowflake Native App for syntax validity, invalid object references, and best practices- Added new
native_app.scratch_stage
field tosnowflake.yml
schema to allow customizing the stage that the CLI uses to run the validation
- Added new
- Changed
snow app deploy
andsnow app run
to trigger validation of the uploaded setup script SQL and block uploads on validation failure, pass--no-validate
to disable - Changed
snow app version create --patch
to require an integer patch number, aligning with what Snowflake expects - Added
snow notebook
commands:snow notebook execute
enabling head-less execution of a notebook.snow notebook create
proving an option to create a Snowflake Notebook from a file on stage.
- Added templating support for project definition file.
- Template variables can now be used anywhere in the project definition file.
- Added
--default
flag tosnow connection add
commands allowing users to mark the new connection as default.
Fixes and improvements
- Fixed error handling for malformatted
config.toml
- Fixed ZIP packaging of Snowpark project dependencies containing implicit namespace packages like
snowflake
. - Deploying function/procedure with
--replace
flag now copies all grants - Fixed MFA caching
- Fixed
DeprerationWarning
/SyntaxWarning
due to invalid escape sequences - Improved error message in
snow spcs image-registry login
when docker is not installed. - Improved detection of conflicts between artifact rules for native application projects
- Fixed URL generation for applications, streamlits, and notebooks that use a quoted identifier with spaces.
- Fixes markup escaping errors in
snow sql
that may occur when users use unintentionally markup-like escape tags.
v2.5.0-rc3
Backward incompatibility
Deprecations
New additions
- Added
snow app bundle
command that prepares a local folder in the project directory with artifacts to be uploaded to a stage as part of creating a Snowflake Native App.- Snowflake Native App projects can now optionally generate CREATE FUNCTION or CREATE PROCEDURE declarations in setup scripts from Snowpark python code that includes decorators (e.g. @ sproc, @ udf).
- Added
snow app validate
command that validates the setup script SQL used to create a Snowflake Native App for syntax validity, invalid object references, and best practices- Added new
native_app.scratch_stage
field tosnowflake.yml
schema to allow customizing the stage that the CLI uses to run the validation
- Added new
- Changed
snow app deploy
andsnow app run
to trigger validation of the uploaded setup script SQL and block uploads on validation failure, pass--no-validate
to disable - Changed
snow app version create --patch
to require an integer patch number, aligning with what Snowflake expects - Added
snow notebook
commands:snow notebook execute
enabling head-less execution of a notebook.snow notebook create
proving an option to create a Snowflake Notebook from a file on stage.
- Added templating support for project definition file.
- Template variables can now be used anywhere in the project definition file.
- Added
--default
flag tosnow connection add
commands allowing users to mark the new connection as default.
Fixes and improvements
- Fixed error handling for malformatted
config.toml
- Fixed ZIP packaging of Snowpark project dependencies containing implicit namespace packages like
snowflake
. - Deploying function/procedure with
--replace
flag now copies all grants - Fixed MFA caching
- Fixed
DeprerationWarning
/SyntaxWarning
due to invalid escape sequences - Improved error message in
snow spcs image-registry login
when docker is not installed. - Improved detection of conflicts between artifact rules for native application projects
- Fixed URL generation for applications, streamlits, and notebooks that use a quoted identifier with spaces.
- Fixes markup escaping errors in
snow sql
that may occur when users use unintentionally markup-like escape tags.
v2.5.0-rc2
Backward incompatibility
Deprecations
New additions
- Added
snow app bundle
command that prepares a local folder in the project directory with artifacts to be uploaded to a stage as part of creating a Snowflake Native App.- Snowflake Native App projects can now optionally generate CREATE FUNCTION or CREATE PROCEDURE declarations in setup scripts from Snowpark python code that includes decorators (e.g. @ sproc, @ udf).
- Added
snow app validate
command that validates the setup script SQL used to create a Snowflake Native App for syntax validity, invalid object references, and best practices- Added new
native_app.scratch_stage
field tosnowflake.yml
schema to allow customizing the stage that the CLI uses to run the validation
- Added new
- Changed
snow app deploy
andsnow app run
to trigger validation of the uploaded setup script SQL and block uploads on validation failure, pass--no-validate
to disable - Changed
snow app version create --patch
to require an integer patch number, aligning with what Snowflake expects - Added
snow notebook
commands:snow notebook execute
enabling head-less execution of a notebook.snow notebook create
proving an option to create a Snowflake Notebook from a file on stage.
- Added templating support for project definition file.
- Template variables can now be used anywhere in the project definition file.
- Added
--default
flag tosnow connection add
commands allowing users to mark the new connection as default.
Fixes and improvements
- Fixed error handling for malformatted
config.toml
- Fixed ZIP packaging of Snowpark project dependencies containing implicit namespace packages like
snowflake
. - Deploying function/procedure with
--replace
flag now copies all grants - Fixed MFA caching
- Fixed
DeprerationWarning
/SyntaxWarning
due to invalid escape sequences - Improved error message in
snow spcs image-registry login
when docker is not installed. - Improved detection of conflicts between artifact rules for native application projects
- Fixed URL generation for applications, streamlits, and notebooks that use a quoted identifier with spaces.
v2.5.0-rc1
Backward incompatibility
Deprecations
New additions
- Added
snow app bundle
command that prepares a local folder in the project directory with artifacts to be uploaded to a stage as part of creating a Snowflake Native App.- Snowflake Native App projects can now optionally generate CREATE FUNCTION or CREATE PROCEDURE declarations in setup scripts from Snowpark python code that includes decorators (e.g. @ sproc, @ udf).
- Added
snow app validate
command that validates the setup script SQL used to create a Snowflake Native App for syntax validity, invalid object references, and best practices- Added new
native_app.scratch_stage
field tosnowflake.yml
schema to allow customizing the stage that the CLI uses to run the validation
- Added new
- Changed
snow app deploy
andsnow app run
to trigger validation of the uploaded setup script SQL and block uploads on validation failure, pass--no-validate
to disable - Changed
snow app version create --patch
to require an integer patch number, aligning with what Snowflake expects - Added
snow notebook
commands:snow notebook execute
enabling head-less execution of a notebook.snow notebook create
proving an option to create a Snowflake Notebook from a file on stage.
- Added templating support for project definition file.
- Template variables can now be used anywhere in the project definition file.
- Added
--default
flag tosnow connection add
commands allowing users to mark the new connection as default.
Fixes and improvements
- Fixed error handling for malformatted
config.toml
- Fixed ZIP packaging of Snowpark project dependencies containing implicit namespace packages like
snowflake
. - Deploying function/procedure with
--replace
flag now copies all grants - Fixed MFA caching
- Fixed
DeprerationWarning
/SyntaxWarning
due to invalid escape sequences - Improved error message in
snow spcs image-registry login
when docker is not installed. - Improved detection of conflicts between artifact rules for native application projects
- Fixed URL generation for applications, streamlits, and notebooks that use a quoted identifier with spaces.