snowflake-cli 3.10.1__py3-none-any.whl → 3.11.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. snowflake/cli/__about__.py +1 -1
  2. snowflake/cli/_app/auth/__init__.py +13 -0
  3. snowflake/cli/_app/auth/errors.py +28 -0
  4. snowflake/cli/_app/auth/oidc_providers.py +393 -0
  5. snowflake/cli/_app/constants.py +10 -0
  6. snowflake/cli/_app/snow_connector.py +35 -0
  7. snowflake/cli/_plugins/auth/__init__.py +4 -2
  8. snowflake/cli/_plugins/auth/keypair/commands.py +2 -0
  9. snowflake/cli/_plugins/auth/oidc/__init__.py +13 -0
  10. snowflake/cli/_plugins/auth/oidc/commands.py +47 -0
  11. snowflake/cli/_plugins/auth/oidc/manager.py +66 -0
  12. snowflake/cli/_plugins/auth/oidc/plugin_spec.py +30 -0
  13. snowflake/cli/_plugins/connection/commands.py +37 -3
  14. snowflake/cli/_plugins/dbt/manager.py +1 -3
  15. snowflake/cli/_plugins/dcm/commands.py +79 -88
  16. snowflake/cli/_plugins/dcm/manager.py +17 -57
  17. snowflake/cli/_plugins/notebook/notebook_entity.py +2 -0
  18. snowflake/cli/_plugins/notebook/notebook_entity_model.py +8 -1
  19. snowflake/cli/_plugins/object/command_aliases.py +16 -1
  20. snowflake/cli/_plugins/object/commands.py +27 -1
  21. snowflake/cli/_plugins/object/manager.py +12 -1
  22. snowflake/cli/_plugins/snowpark/commands.py +8 -1
  23. snowflake/cli/api/commands/decorators.py +7 -0
  24. snowflake/cli/api/commands/flags.py +26 -0
  25. snowflake/cli/api/config.py +24 -0
  26. snowflake/cli/api/connections.py +1 -0
  27. snowflake/cli/api/utils/dict_utils.py +42 -1
  28. {snowflake_cli-3.10.1.dist-info → snowflake_cli-3.11.0.dist-info}/METADATA +12 -38
  29. {snowflake_cli-3.10.1.dist-info → snowflake_cli-3.11.0.dist-info}/RECORD +32 -25
  30. {snowflake_cli-3.10.1.dist-info → snowflake_cli-3.11.0.dist-info}/WHEEL +0 -0
  31. {snowflake_cli-3.10.1.dist-info → snowflake_cli-3.11.0.dist-info}/entry_points.txt +0 -0
  32. {snowflake_cli-3.10.1.dist-info → snowflake_cli-3.11.0.dist-info}/licenses/LICENSE +0 -0
@@ -44,14 +44,25 @@ class ObjectManager(SqlExecutionMixin):
44
44
  object_type: str,
45
45
  like: Optional[str] = None,
46
46
  scope: Union[Tuple[str, str], Tuple[None, None]] = (None, None),
47
+ terse: Optional[bool] = False,
48
+ limit: Optional[int] = None,
47
49
  **kwargs,
48
50
  ) -> SnowflakeCursor:
49
51
  object_name = _get_object_names(object_type).sf_plural_name
50
- query = f"show {object_name}"
52
+ query_parts = ["show"]
53
+
54
+ if terse:
55
+ query_parts.append("terse")
56
+
57
+ query_parts.append(object_name)
58
+ query = " ".join(query_parts)
59
+
51
60
  if like:
52
61
  query += f" like '{like}'"
53
62
  if scope[0] is not None:
54
63
  query += f" in {scope[0].replace('-', ' ')} {scope[1]}"
64
+ if limit is not None:
65
+ query += f" limit {limit}"
55
66
  return self.execute_query(query, **kwargs)
56
67
 
57
68
  def drop(self, *, object_type: str, fqn: FQN) -> SnowflakeCursor:
@@ -448,7 +448,14 @@ def list_(
448
448
  **options,
449
449
  ):
450
450
  """Lists all available procedures or functions."""
451
- return object_list(object_type=object_type.value, like=like, scope=scope, **options)
451
+ return object_list(
452
+ object_type=object_type.value,
453
+ like=like,
454
+ scope=scope,
455
+ terse=None,
456
+ limit=None,
457
+ **options,
458
+ )
452
459
 
453
460
 
454
461
  @app.command("drop", requires_connection=True)
@@ -57,6 +57,7 @@ from snowflake.cli.api.commands.flags import (
57
57
  UserOption,
58
58
  VerboseOption,
59
59
  WarehouseOption,
60
+ WorkloadIdentityProviderOption,
60
61
  experimental_option,
61
62
  project_definition_option,
62
63
  project_env_overrides_option,
@@ -262,6 +263,12 @@ GLOBAL_CONNECTION_OPTIONS = [
262
263
  annotation=Optional[str],
263
264
  default=AuthenticatorOption,
264
265
  ),
266
+ inspect.Parameter(
267
+ "workload_identity_provider",
268
+ inspect.Parameter.KEYWORD_ONLY,
269
+ annotation=Optional[str],
270
+ default=WorkloadIdentityProviderOption,
271
+ ),
265
272
  inspect.Parameter(
266
273
  "private_key_file",
267
274
  inspect.Parameter.KEYWORD_ONLY,
@@ -34,6 +34,7 @@ from snowflake.cli.api.identifiers import FQN
34
34
  from snowflake.cli.api.output.formats import OutputFormat
35
35
  from snowflake.cli.api.secret import SecretType
36
36
  from snowflake.cli.api.stage_path import StagePath
37
+ from snowflake.connector.auth.workload_identity import ApiFederatedAuthenticationType
37
38
 
38
39
  DEFAULT_CONTEXT_SETTINGS = {"help_option_names": ["--help", "-h"]}
39
40
 
@@ -150,6 +151,21 @@ def _password_callback(value: str):
150
151
  return _connection_callback("password")(value)
151
152
 
152
153
 
154
+ def _workload_identity_provider_callback(value: str):
155
+ if value is not None:
156
+ try:
157
+ # Validate that the value is one of the enum values
158
+ ApiFederatedAuthenticationType(value)
159
+ except ValueError:
160
+ valid_values = [e.value for e in ApiFederatedAuthenticationType]
161
+ raise ClickException(
162
+ f"Invalid workload identity provider '{value}'. "
163
+ f"Valid values are: {', '.join(valid_values)}"
164
+ )
165
+
166
+ return _connection_callback("workload_identity_provider")(value)
167
+
168
+
153
169
  PasswordOption = typer.Option(
154
170
  None,
155
171
  "--password",
@@ -170,6 +186,16 @@ AuthenticatorOption = typer.Option(
170
186
  rich_help_panel=_CONNECTION_SECTION,
171
187
  )
172
188
 
189
+ WorkloadIdentityProviderOption = typer.Option(
190
+ None,
191
+ "--workload-identity-provider",
192
+ help="Workload identity provider (AWS, AZURE, GCP, OIDC). Overrides the value specified for the connection",
193
+ hide_input=True,
194
+ callback=_workload_identity_provider_callback,
195
+ show_default=False,
196
+ rich_help_panel=_CONNECTION_SECTION,
197
+ )
198
+
173
199
  PrivateKeyPathOption = typer.Option(
174
200
  None,
175
201
  "--private-key-file",
@@ -34,6 +34,7 @@ from snowflake.cli.api.secure_utils import (
34
34
  file_permissions_are_strict,
35
35
  windows_get_not_whitelisted_users_with_access,
36
36
  )
37
+ from snowflake.cli.api.utils.dict_utils import remove_key_from_nested_dict_if_exists
37
38
  from snowflake.cli.api.utils.types import try_cast_to_bool
38
39
  from snowflake.connector.compat import IS_WINDOWS
39
40
  from snowflake.connector.config_manager import CONFIG_MANAGER
@@ -82,6 +83,7 @@ class ConnectionConfig:
82
83
  warehouse: Optional[str] = None
83
84
  role: Optional[str] = None
84
85
  authenticator: Optional[str] = None
86
+ workload_identity_provider: Optional[str] = None
85
87
  private_key_file: Optional[str] = None
86
88
  token_file_path: Optional[str] = None
87
89
  oauth_client_id: Optional[str] = None
@@ -158,6 +160,19 @@ def add_connection_to_proper_file(name: str, connection_config: ConnectionConfig
158
160
  return CONFIG_MANAGER.file_path
159
161
 
160
162
 
163
+ def remove_connection_from_proper_file(name: str):
164
+ if CONNECTIONS_FILE.exists():
165
+ existing_connections = _read_connections_toml()
166
+ if name not in existing_connections:
167
+ raise MissingConfigurationError(f"Connection {name} is not configured")
168
+ del existing_connections[name]
169
+ _update_connections_toml(existing_connections)
170
+ return CONNECTIONS_FILE
171
+ else:
172
+ unset_config_value(path=[CONNECTIONS_SECTION, name])
173
+ return CONFIG_MANAGER.file_path
174
+
175
+
161
176
  _DEFAULT_LOGS_CONFIG = {
162
177
  "save_logs": True,
163
178
  "path": str(CONFIG_MANAGER.file_path.parent / "logs"),
@@ -228,6 +243,15 @@ def set_config_value(path: List[str], value: Any) -> None:
228
243
  current_config_dict[path[-1]] = value
229
244
 
230
245
 
246
+ def unset_config_value(path: List[str]) -> None:
247
+ """Unsets value in config.
248
+ For example to unset value for key "key" in section [a.b.c], call
249
+ unset_config_value(["a", "b", "c", "key"]).
250
+ """
251
+ with _config_file() as conf_file_cache:
252
+ remove_key_from_nested_dict_if_exists(conf_file_cache, path)
253
+
254
+
231
255
  def get_logs_config() -> dict:
232
256
  logs_config = _DEFAULT_LOGS_CONFIG.copy()
233
257
  if config_section_exists(*LOGS_SECTION_PATH):
@@ -45,6 +45,7 @@ class ConnectionContext:
45
45
  user: Optional[str] = None
46
46
  password: Optional[str] = field(default=None, repr=False)
47
47
  authenticator: Optional[str] = None
48
+ workload_identity_provider: Optional[str] = None
48
49
  private_key_file: Optional[str] = None
49
50
  warehouse: Optional[str] = None
50
51
  mfa_passcode: Optional[str] = None
@@ -14,7 +14,7 @@
14
14
 
15
15
  from __future__ import annotations
16
16
 
17
- from typing import Any, Callable
17
+ from typing import Any, Callable, Dict, List, Union
18
18
 
19
19
 
20
20
  def deep_merge_dicts(
@@ -71,3 +71,44 @@ def traverse(
71
71
  else:
72
72
  visit_action(element)
73
73
  return update_action(element)
74
+
75
+
76
+ _NestedDict = Dict[str, Union[Any, "_NestedDict"]]
77
+
78
+
79
+ def remove_key_from_nested_dict_if_exists(
80
+ root_dict: _NestedDict, key_path: List[str]
81
+ ) -> bool:
82
+ """
83
+ Removes a key from a nested dictionary, if it exists.
84
+ Removes all parents that become empty.
85
+
86
+ :return: True if the key was removed, False if it did not exist.
87
+ :raises ValueError: If a key in the path, besides the last one, was present but did not point to a dictionary.
88
+ """
89
+ path = [root_dict]
90
+ for key in key_path:
91
+ curr_dict = path[-1]
92
+ if key not in curr_dict:
93
+ return False
94
+
95
+ child_dict = curr_dict[key]
96
+ if not isinstance(child_dict, dict) and len(path) < len(key_path):
97
+ raise ValueError(
98
+ f"Expected a dictionary at key '{key}', but got {str(type(child_dict))}."
99
+ )
100
+
101
+ path.append(child_dict)
102
+
103
+ # Remove the target node, and any parents that become empty
104
+ is_target = True
105
+ for curr_key, curr_dict, child_dict in zip(
106
+ reversed(key_path), reversed(path[:-1]), reversed(path[1:])
107
+ ):
108
+ if is_target or len(child_dict) == 0:
109
+ del curr_dict[curr_key]
110
+ is_target = False
111
+ else:
112
+ break
113
+
114
+ return True
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: snowflake-cli
3
- Version: 3.10.1
3
+ Version: 3.11.0
4
4
  Summary: Snowflake CLI
5
5
  Project-URL: Source code, https://github.com/snowflakedb/snowflake-cli
6
6
  Project-URL: Bug Tracker, https://github.com/snowflakedb/snowflake-cli/issues
@@ -217,58 +217,26 @@ Classifier: Programming Language :: Python :: 3 :: Only
217
217
  Classifier: Programming Language :: SQL
218
218
  Classifier: Topic :: Database
219
219
  Requires-Python: >=3.10
220
- Requires-Dist: annotated-types==0.7.0
221
- Requires-Dist: asn1crypto==1.5.1
222
- Requires-Dist: boto3==1.40.9
223
- Requires-Dist: botocore==1.40.9
224
- Requires-Dist: certifi==2025.8.3
225
- Requires-Dist: cffi==1.17.1
226
- Requires-Dist: cfgv==3.4.0
227
- Requires-Dist: charset-normalizer==3.4.3
228
220
  Requires-Dist: click==8.1.8
229
- Requires-Dist: cryptography==45.0.6
230
- Requires-Dist: faker==37.4.0
231
- Requires-Dist: filelock==3.18.0
232
- Requires-Dist: gitdb==4.0.12
233
221
  Requires-Dist: gitpython==3.1.44
234
- Requires-Dist: identify==2.6.13
235
- Requires-Dist: idna==3.10
236
- Requires-Dist: iniconfig==2.1.0
222
+ Requires-Dist: id==1.5.0
237
223
  Requires-Dist: jinja2==3.1.6
238
- Requires-Dist: keyring==25.6.0
239
- Requires-Dist: markdown-it-py==4.0.0
240
- Requires-Dist: markupsafe==3.0.2
241
- Requires-Dist: nodeenv==1.9.1
242
224
  Requires-Dist: packaging
243
225
  Requires-Dist: pip
244
- Requires-Dist: platformdirs==4.3.8
245
226
  Requires-Dist: pluggy==1.6.0
246
227
  Requires-Dist: prompt-toolkit==3.0.51
247
- Requires-Dist: pydantic-core==2.33.2
248
228
  Requires-Dist: pydantic==2.11.7
249
- Requires-Dist: pygments==2.19.2
250
- Requires-Dist: pyjwt==2.10.1
251
- Requires-Dist: pyopenssl==25.1.0
252
- Requires-Dist: python-dateutil==2.9.0.post0
253
- Requires-Dist: pytz==2025.2
254
229
  Requires-Dist: pyyaml==6.0.2
255
230
  Requires-Dist: requests==2.32.4
256
231
  Requires-Dist: requirements-parser==0.13.0
257
232
  Requires-Dist: rich==14.0.0
258
233
  Requires-Dist: setuptools==80.8.0
259
- Requires-Dist: shellingham==1.5.4
260
- Requires-Dist: snowflake-connector-python[secure-local-storage]==3.16.0
234
+ Requires-Dist: snowflake-connector-python[secure-local-storage]==3.17.2
261
235
  Requires-Dist: snowflake-core==1.6.0
262
236
  Requires-Dist: snowflake-snowpark-python==1.33.0; python_version < '3.12'
263
- Requires-Dist: sortedcontainers==2.4.0
264
237
  Requires-Dist: tomlkit==0.13.3
265
238
  Requires-Dist: typer==0.16.0
266
- Requires-Dist: typing-extensions==4.14.1
267
- Requires-Dist: typing-inspection==0.4.1
268
239
  Requires-Dist: urllib3<2.6,>=1.24.3
269
- Requires-Dist: virtualenv==20.34.0
270
- Requires-Dist: wcwidth==0.2.13
271
- Requires-Dist: werkzeug==3.1.3
272
240
  Provides-Extra: development
273
241
  Requires-Dist: coverage==7.8.0; extra == 'development'
274
242
  Requires-Dist: factory-boy==3.3.3; extra == 'development'
@@ -278,6 +246,7 @@ Requires-Dist: pytest-httpserver==1.1.3; extra == 'development'
278
246
  Requires-Dist: pytest-randomly==3.16.0; extra == 'development'
279
247
  Requires-Dist: pytest==8.4.1; extra == 'development'
280
248
  Requires-Dist: syrupy==4.9.1; extra == 'development'
249
+ Requires-Dist: uv>0.8.0; extra == 'development'
281
250
  Provides-Extra: packaging
282
251
  Description-Content-Type: text/markdown
283
252
 
@@ -320,15 +289,20 @@ Feel free to file an issue or submit a PR here for general cases. For official s
320
289
 
321
290
  ## Install Snowflake CLI
322
291
 
323
- ### Install with pipx (PyPi)
292
+ ### Install with uv (PyPi)
324
293
 
325
- We recommend installing Snowflake CLI in isolated environment using [pipx](https://pipx.pypa.io/stable/). Requires Python >= 3.10
294
+ We recommend installing Snowflake CLI in an isolated environment using [uv](https://docs.astral.sh/uv/guides/tools/#installing-tools). Requires Python >= 3.10
326
295
 
327
296
  ```bash
328
- pipx install snowflake-cli
297
+ uv tool install snowflake-cli
329
298
  snow --help
330
299
  ```
331
300
 
301
+ Or, with a single command
302
+ ```bash
303
+ uvx --from snowflake-cli snow --help
304
+ ```
305
+
332
306
  ### Install with Homebrew (Mac only)
333
307
 
334
308
  Requires [Homebrew](https://brew.sh/).
@@ -1,15 +1,18 @@
1
- snowflake/cli/__about__.py,sha256=tl711AQi2bmJkVhLoxzuvvrBCL38AhxjPaScTnhS2_s,853
1
+ snowflake/cli/__about__.py,sha256=1g17DAEzfSpKIXcHe5N1qHD1BIzuUR7RirpnwKOzhZY,853
2
2
  snowflake/cli/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
3
3
  snowflake/cli/_app/__init__.py,sha256=CR_uTgoqHnU1XdyRhm5iQsS86yWXGVx5Ht7aGSDNFmc,765
4
4
  snowflake/cli/_app/__main__.py,sha256=ZmcFdFqAtk2mFMz-cqCFdGd0iYzc7UsLH1oT1U40S0k,858
5
5
  snowflake/cli/_app/cli_app.py,sha256=p0ddNX4kzdhGPowJA_KHCZ8Svz3dsia7GqFUJB7Yn-0,10234
6
- snowflake/cli/_app/constants.py,sha256=6beY5gmfXqBOHPqr6T4HXD2BFmSn3Mvjq7m_lpZIet0,901
6
+ snowflake/cli/_app/constants.py,sha256=jsdljrWgkN7djzYLA4U5YIP-bQI7dxiJ01sVgjjpVMk,1293
7
7
  snowflake/cli/_app/loggers.py,sha256=etu9xvhNRQwAn5L1r-x5uaCZ_TSL7Y3RMRjLQxx9nyY,6648
8
8
  snowflake/cli/_app/main_typer.py,sha256=v2n7moen3CkP-SfsGrTh-MzFgqG6Ak8bJa8E2dGKzFw,2111
9
9
  snowflake/cli/_app/printing.py,sha256=h8GqFEF45Sec9wg8Z3LyD6N6ytZ6pR-32kaX0VZGox4,7192
10
- snowflake/cli/_app/snow_connector.py,sha256=7aveOySLPqPwrbD9RYLAZLC0fzF7aX0hFkk-PkHKZ0o,12124
10
+ snowflake/cli/_app/snow_connector.py,sha256=UEXWCWSyKgUx1WGy6r0QS6gB1WaKUklie3bl06qHECw,13447
11
11
  snowflake/cli/_app/telemetry.py,sha256=Rcl9sSTYEujrLMUvd2SsvmJMbVGE_ErOnnOLdBnpI60,9846
12
12
  snowflake/cli/_app/version_check.py,sha256=tM3j8FmqcONz3nfiv9WZIU01wy4ZWbKgiWH_8GYzCfM,5585
13
+ snowflake/cli/_app/auth/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
14
+ snowflake/cli/_app/auth/errors.py,sha256=BVxUWUMm5ukhBoDRnu45G_pIJowB_bxy10TBkb8cHWI,665
15
+ snowflake/cli/_app/auth/oidc_providers.py,sha256=mlVlagiWunQuyP2idBF44qLrxNu0hH4avPsZ2grd_Ho,12097
13
16
  snowflake/cli/_app/commands_registration/__init__.py,sha256=HhP1c8GDRqUtZMeYVNuYwc1_524q9jH18bxJJk1JKWU,918
14
17
  snowflake/cli/_app/commands_registration/builtin_plugins.py,sha256=xVHqz5urWhm6yKpQhj2KUnBOKKKcg0k9l7_r5ywRIKU,2880
15
18
  snowflake/cli/_app/commands_registration/command_plugins_loader.py,sha256=4pRKUYBmIVsBxDvaztgFbIBZKSaGseAMJMEHSkg0Nag,6297
@@ -30,13 +33,17 @@ snowflake/cli/_app/dev/docs/templates/definition_description.rst.jinja2,sha256=h
30
33
  snowflake/cli/_app/dev/docs/templates/overview.rst.jinja2,sha256=qsv0ZphFs9ZbDQhGGBlTc_D2jHhf84mBsxoev54KCuU,430
31
34
  snowflake/cli/_app/dev/docs/templates/usage.rst.jinja2,sha256=-ZyfvCUwjkorhPcFA_a7Dy2WbRhcMdZ13ZAQsPMvynE,2444
32
35
  snowflake/cli/_plugins/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
33
- snowflake/cli/_plugins/auth/__init__.py,sha256=3ncenrLbz6nZ_l26CCzWxofCgbWJX92yX0Yot3CyEhk,384
36
+ snowflake/cli/_plugins/auth/__init__.py,sha256=zvrE3Oeo2b8p9cm52OGtY3JiKlHK8612vgeHli6gDhM,362
34
37
  snowflake/cli/_plugins/auth/keypair/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
- snowflake/cli/_plugins/auth/keypair/commands.py,sha256=hx-QPTxHU_O1bbogbIcaUqW74EKHPyArR9P1InS_S2Q,4049
38
+ snowflake/cli/_plugins/auth/keypair/commands.py,sha256=9TqfzAzbE5Tku7qs5OOJWPO1_-LwnbxdoYPhD6YCMCA,4174
36
39
  snowflake/cli/_plugins/auth/keypair/manager.py,sha256=dcM3zhVr8i6roSagqw8sK1yvawL9XrVva9rrkPrRgy4,11835
37
40
  snowflake/cli/_plugins/auth/keypair/plugin_spec.py,sha256=6TwDEeIavB4x8B5WXQfeUhsrAAupdTmAVhmsv3I26u8,979
41
+ snowflake/cli/_plugins/auth/oidc/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
42
+ snowflake/cli/_plugins/auth/oidc/commands.py,sha256=kIUOkcAiGucYJAmp5D2eyrMIYa5sbQZp5X1_J_4RYBU,1476
43
+ snowflake/cli/_plugins/auth/oidc/manager.py,sha256=3HHBrqm-HxXq33Fi6T6bAs445AJ4dmbSbxVgqCZBPL4,2075
44
+ snowflake/cli/_plugins/auth/oidc/plugin_spec.py,sha256=6TwDEeIavB4x8B5WXQfeUhsrAAupdTmAVhmsv3I26u8,979
38
45
  snowflake/cli/_plugins/connection/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
39
- snowflake/cli/_plugins/connection/commands.py,sha256=VFBthwvY5lLdB_Nqg7BzH8sT2VoxYi5whBvOOYnEYbU,15390
46
+ snowflake/cli/_plugins/connection/commands.py,sha256=FVBeRHacoFj_d3AQu1DR-qP6Wdpusu7KL1vOC4_nzkY,16565
40
47
  snowflake/cli/_plugins/connection/plugin_spec.py,sha256=A50dPnOAjPLwgp4CDXL6EkrEKSivGZ324GPFeG023sw,999
41
48
  snowflake/cli/_plugins/connection/util.py,sha256=OjpezcayWVVUhNLzcs8UB6nJ0PIiokMQeX0meaW_6f8,7777
42
49
  snowflake/cli/_plugins/cortex/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
@@ -48,12 +55,12 @@ snowflake/cli/_plugins/cortex/types.py,sha256=9KQPlQRkoR67ty8VoqsifJfaoeLJPXZzCJ
48
55
  snowflake/cli/_plugins/dbt/__init__.py,sha256=JhO1yb1LCYqYx-Ya-MlhubtiqD82CuvWF09dDMafxRM,578
49
56
  snowflake/cli/_plugins/dbt/commands.py,sha256=foQbTCHeJxtT2nkTRyey8YEfaXUoBwdKO3F8LxsRZeA,6802
50
57
  snowflake/cli/_plugins/dbt/constants.py,sha256=mAwkVchQikcfegHqs-PmziZJRd9-DEAienWxpoHhnPc,962
51
- snowflake/cli/_plugins/dbt/manager.py,sha256=jn-RSPj-tmdzi9kSFYBNB9PtVUHMgaz_3XgyaHQ9n2s,7588
58
+ snowflake/cli/_plugins/dbt/manager.py,sha256=2UuV1aMUZbkkzdql9HpYZBLDQWT0a7k4au7y2N75T7Y,7464
52
59
  snowflake/cli/_plugins/dbt/plugin_spec.py,sha256=7yEc3tLgvw3iUhALpmaVpS-iePdSMjFdFSZVybf5KTc,992
53
60
  snowflake/cli/_plugins/dcm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
54
- snowflake/cli/_plugins/dcm/commands.py,sha256=NpCsfmJrZ7CBn0dSdh0Q2mts1XJwZ0-Z0pg8wFen0YY,9513
61
+ snowflake/cli/_plugins/dcm/commands.py,sha256=rcWV6O112KuDvlDsRwQgMXL7zw_8P9YdFrbiSNeSvcQ,8655
55
62
  snowflake/cli/_plugins/dcm/dcm_project_entity_model.py,sha256=YpdLnnbopzMgzIcJaLIiVxGxSDt0u-zisXd39JwrXiU,2143
56
- snowflake/cli/_plugins/dcm/manager.py,sha256=XS4M90ZJqkeOBbsnbtKPHU5mbbb7DTgfyFuugC0McAw,5108
63
+ snowflake/cli/_plugins/dcm/manager.py,sha256=dSdaihmtTRzA_9lLJ1apMiFW-ONLOxkY725bDERbFOQ,3487
57
64
  snowflake/cli/_plugins/dcm/plugin_spec.py,sha256=U-p1UrjS2QTkk6j5-XfMsehc6gzcFHXVDjI4qnm5aPs,992
58
65
  snowflake/cli/_plugins/git/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
59
66
  snowflake/cli/_plugins/git/commands.py,sha256=87R8Fs_f6BUdfLv85QGlfTTH6K-Y_oDlqJyZ3jUpBVg,11320
@@ -113,23 +120,23 @@ snowflake/cli/_plugins/notebook/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBli
113
120
  snowflake/cli/_plugins/notebook/commands.py,sha256=hUnFBU-UpiRqCj8GCPGOZTvYs1nl17760Rdo7txj71Q,4605
114
121
  snowflake/cli/_plugins/notebook/exceptions.py,sha256=bpRPfODM3muDao0awHsn4BPNKfXIvlKSNb075il-qfA,781
115
122
  snowflake/cli/_plugins/notebook/manager.py,sha256=ampKE-6KS_I5zKsw8wFf7_ZUC_LgWVLCVD6ckz8Q8GY,2846
116
- snowflake/cli/_plugins/notebook/notebook_entity.py,sha256=YFc7lxJcLedDzPZMGYuzkNmjc11SEroIU9RWgZ6Y-w4,4147
117
- snowflake/cli/_plugins/notebook/notebook_entity_model.py,sha256=nRNec-KK3JeuOpROIinxR-T-2a4N4Jd1ybi2751qnAg,1734
123
+ snowflake/cli/_plugins/notebook/notebook_entity.py,sha256=87TE-7t8_DY3ztnfCcdpa7SgEWKukWYIqFRX0q3wldU,4329
124
+ snowflake/cli/_plugins/notebook/notebook_entity_model.py,sha256=Dzo0mQlip_q5UU7siBKWfKOEqBwSyyXivl2b9W0KIAA,2065
118
125
  snowflake/cli/_plugins/notebook/notebook_project_paths.py,sha256=bAZjqjuN4wWhHu0TI0TZd0y-JgWXAwO8eS_nReF4WTU,391
119
126
  snowflake/cli/_plugins/notebook/plugin_spec.py,sha256=RZEJMGIYpNXRBeSnJxQ8p1hNRPsjYw6EUk1eRwkAnnU,997
120
127
  snowflake/cli/_plugins/notebook/types.py,sha256=BaW2rHQ_kIEG5lilltUBGq1g8a68_nFbh1oYdINT3fE,654
121
128
  snowflake/cli/_plugins/object/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
122
- snowflake/cli/_plugins/object/command_aliases.py,sha256=SQtucSfQnIvOvlqOJprhdlUAw4keE18i8u3bEIqPcZw,3233
123
- snowflake/cli/_plugins/object/commands.py,sha256=Omf4o1OOm_8eg7XpwdHQOT0X9zwlLn6whJRHIfq1VRs,6178
129
+ snowflake/cli/_plugins/object/command_aliases.py,sha256=14Lalakh85VRgLOvOtp0S6zYhWsSeqtakLyDBEDA_3o,3954
130
+ snowflake/cli/_plugins/object/commands.py,sha256=miQPZR04uKAF7GEqzaq5z4YzsjGrFLW62DFG9hg5Hpo,6702
124
131
  snowflake/cli/_plugins/object/common.py,sha256=x1V8fiVnh7ohHHq0_NaGFtUvTz0soVRSGm-oCIuhJHs,2608
125
- snowflake/cli/_plugins/object/manager.py,sha256=s86rqftu4vONGbDjqKrfInOf69OeqzK9FMRNkeRE6-4,5076
132
+ snowflake/cli/_plugins/object/manager.py,sha256=Apsi3hgnn53iLVl8PKAYhsTOQHfQnMpImk--jWFWDsY,5353
126
133
  snowflake/cli/_plugins/object/plugin_spec.py,sha256=O8k6hSD48w4Uhkho0KpcTDkZ2iNjiU5jCPvEVitDzeo,995
127
134
  snowflake/cli/_plugins/plugin/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
128
135
  snowflake/cli/_plugins/plugin/commands.py,sha256=JoDeE-ggxYE6FKulNGJQrfl7nao7lg8FCsEw2s-WdF8,2433
129
136
  snowflake/cli/_plugins/plugin/manager.py,sha256=eeW5b0zAvvsZREgIVH7afAQbKHI2YqqdIjqo0hqFfHs,2641
130
137
  snowflake/cli/_plugins/plugin/plugin_spec.py,sha256=5XZJPT42ZIEARYvthic3jLEB4CvDUdMeWTM6YfDkD9k,995
131
138
  snowflake/cli/_plugins/snowpark/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
132
- snowflake/cli/_plugins/snowpark/commands.py,sha256=eLVvUwL64wfSYkmRFHtbwBZG7lXMcvZB5o-0Dx6ZVK0,17744
139
+ snowflake/cli/_plugins/snowpark/commands.py,sha256=rzuebpbPRxZcQ8iRgeA8xvYGj_s3nUggivfp2ZL1V5g,17823
133
140
  snowflake/cli/_plugins/snowpark/common.py,sha256=85CQ0fpw4W2FibmuSMa3vG8hbZY_1XzCnA1pn45kTgU,13720
134
141
  snowflake/cli/_plugins/snowpark/models.py,sha256=Bd69O3krCS5HvQdHhjQsbhFi0wtYOD_Y9sj6lBMR7KU,4766
135
142
  snowflake/cli/_plugins/snowpark/package_utils.py,sha256=GwCKgLTorCsO50UCPcuXy5voVjRSwmLxNFrONVrdtCs,11844
@@ -200,8 +207,8 @@ snowflake/cli/_plugins/workspace/context.py,sha256=EHiEJP663W0z0LhmvxI-odN9-KIkE
200
207
  snowflake/cli/_plugins/workspace/manager.py,sha256=3Go5qgoWEytLCxQgU637Lk3-pzWbmbJoS9nWsDOt-eU,3359
201
208
  snowflake/cli/_plugins/workspace/plugin_spec.py,sha256=DvjilAunPuBuSIgKHOPcAVfk8-ZaCyJbfo8k1oau3cA,997
202
209
  snowflake/cli/api/cli_global_context.py,sha256=6qI-jBa_7lyiBQFOYxr4Oap2zgAfQI_C-DDyAOBvkcs,9514
203
- snowflake/cli/api/config.py,sha256=kEG5PQcUtQqUgTNesQ5_GBKntD7nJIu1gS94XCo-rKg,14149
204
- snowflake/cli/api/connections.py,sha256=w102ap8ANtgvzLhUO-09WeRDZtAX-NcKuOAFZRNDabs,9417
210
+ snowflake/cli/api/config.py,sha256=CTYbJN7Yb1NvqDB07eFtfoxABAQb0k0N5nG7DYOGpMI,15117
211
+ snowflake/cli/api/connections.py,sha256=zItH6oAuLD6H2GL0I2AyGlFZkMKPmqe9RPyhlHOxOVQ,9470
205
212
  snowflake/cli/api/constants.py,sha256=zTDCip-AsSGQIkPq5jZDldnDgva6lMtL0vUJv9mkf6E,3867
206
213
  snowflake/cli/api/errno.py,sha256=nVQ2kO9nPaA1uGB4yZiKTwtE2LiQmINHTutziA37c6s,3871
207
214
  snowflake/cli/api/exceptions.py,sha256=3Esa8gL0D_dsbpjWpBFWt1fQW8u4BgU59kx1B5Vgw9A,9228
@@ -223,10 +230,10 @@ snowflake/cli/api/artifacts/utils.py,sha256=MVoNpV90IXk4BiUXM7ljFTl9wUPCdbV3YyOE
223
230
  snowflake/cli/api/commands/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
224
231
  snowflake/cli/api/commands/alias.py,sha256=TF6QgkorFTn9UV5F3tvxIJZ56iK1vIjqZFMxVtrTIzk,795
225
232
  snowflake/cli/api/commands/common.py,sha256=6CrJqhQl-Mu0jwFmWyNKvvB7jFQ1EJdnKFW9BNHVask,462
226
- snowflake/cli/api/commands/decorators.py,sha256=D9KU4VmgM9-0JZWxp_1_7swKj0mup_LCyxCOo6J_2lE,13122
233
+ snowflake/cli/api/commands/decorators.py,sha256=TsHFMb4TwzCDzcJJv74ic7sgn4MAOkKXENGXSewnX44,13348
227
234
  snowflake/cli/api/commands/execution_metadata.py,sha256=9tz1dbzdVRLFprGi_y8TeTfv36VewFeGdhQX6NfwAXM,1231
228
235
  snowflake/cli/api/commands/experimental_behaviour.py,sha256=HFTw0d46B1QJpiCy0MeeJhWXrPF_bnmgUGaEWkWXw98,733
229
- snowflake/cli/api/commands/flags.py,sha256=tISJytMgCp10wKGbFNRXtkH03tuWZzNQlG9Ks4RAYO8,22022
236
+ snowflake/cli/api/commands/flags.py,sha256=hUn8tsYLO6Zswl6gZ9qqAAmyYXPHtTxcBObNDBHJis8,23014
230
237
  snowflake/cli/api/commands/overrideable_parameter.py,sha256=LDiRQudkTeoWu5y_qTCVmtseEvO6U9LuSiuLZt5oFq8,6353
231
238
  snowflake/cli/api/commands/snow_typer.py,sha256=Mgz6QbinT53vYoTO6_1LtpLY-MhnYoY5m8pjBaucPZo,10775
232
239
  snowflake/cli/api/commands/utils.py,sha256=vZcVtPZsuH312FPf9yw-JooNWE7Tli-zVWh4u-gQk7c,1605
@@ -280,7 +287,7 @@ snowflake/cli/api/rendering/sql_templates.py,sha256=jhTFneepo_GULWmPMqycszD_a5Q0
280
287
  snowflake/cli/api/utils/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
281
288
  snowflake/cli/api/utils/cursor.py,sha256=JlyUG5b4EXii71Dm7qiTdptjwIsOOmEv2QmZA1cY8NQ,1222
282
289
  snowflake/cli/api/utils/definition_rendering.py,sha256=AgHWnpi3yit0sd6MsDTvuCQFGCNZ-giuuwsgd97hKnA,16277
283
- snowflake/cli/api/utils/dict_utils.py,sha256=8vb9EyiT8gNHCtPNfE1S-0WcWdP6G_kiwJ-aizu3Pzs,2799
290
+ snowflake/cli/api/utils/dict_utils.py,sha256=cYiWOg2yZ8qYNeHnevfoMcV5VlonWOhBWXqAqqZ_3vg,4061
284
291
  snowflake/cli/api/utils/error_handling.py,sha256=etIGdS8kd9APgyeUecnY2XMivDORSRV8q-WuBtpriZY,708
285
292
  snowflake/cli/api/utils/graph.py,sha256=zgNWz9YwmNj9PLoJssq-hrLGdZsQ0BkME5V0Fu88VnA,3131
286
293
  snowflake/cli/api/utils/models.py,sha256=KD4Q402_6iNKsV9CTulzuDrlJbEGu8quAlmZNQuieE4,2016
@@ -289,8 +296,8 @@ snowflake/cli/api/utils/path_utils.py,sha256=OgR7cwbHXqP875RgPJGrAvDC1RRTU-2-Yss
289
296
  snowflake/cli/api/utils/python_api_utils.py,sha256=wTNxXrma78wPvBz-Jo-ixNtP8ZjDCDh4TvciEnhYIAM,300
290
297
  snowflake/cli/api/utils/templating_functions.py,sha256=zu2oK1BEC9yyWtDx17Hr-VAYHvCtagaOdxIrm70JQys,4955
291
298
  snowflake/cli/api/utils/types.py,sha256=fVKuls8axKSsBzPqWwrkwkwoXXmedqxNJKqfXrrGyBM,1190
292
- snowflake_cli-3.10.1.dist-info/METADATA,sha256=hBSbbzDq_Z0rLdz2jx2tMo4t4ftdjfPKRh4RRbbYX80,19406
293
- snowflake_cli-3.10.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
294
- snowflake_cli-3.10.1.dist-info/entry_points.txt,sha256=6QmSI0wUX6p7f-dGvrPdswlQyVAVGi1AtOUbE8X6bho,58
295
- snowflake_cli-3.10.1.dist-info/licenses/LICENSE,sha256=mJMA3Uz2AbjU_kVggo1CAx01XhBsI7BSi2H7ggUg_-c,11344
296
- snowflake_cli-3.10.1.dist-info/RECORD,,
299
+ snowflake_cli-3.11.0.dist-info/METADATA,sha256=9iJZZPeLCmz_QS0dX4w755LNQfYJk49XSTN1tCX-5cY,18488
300
+ snowflake_cli-3.11.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
301
+ snowflake_cli-3.11.0.dist-info/entry_points.txt,sha256=6QmSI0wUX6p7f-dGvrPdswlQyVAVGi1AtOUbE8X6bho,58
302
+ snowflake_cli-3.11.0.dist-info/licenses/LICENSE,sha256=mJMA3Uz2AbjU_kVggo1CAx01XhBsI7BSi2H7ggUg_-c,11344
303
+ snowflake_cli-3.11.0.dist-info/RECORD,,