snowflake-cli-labs 3.0.0rc2__py3-none-any.whl → 3.0.0rc4__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 (88) hide show
  1. snowflake/cli/__about__.py +1 -1
  2. snowflake/cli/_app/commands_registration/builtin_plugins.py +2 -0
  3. snowflake/cli/_app/secret.py +9 -0
  4. snowflake/cli/_app/snow_connector.py +39 -27
  5. snowflake/cli/_app/telemetry.py +28 -0
  6. snowflake/cli/_plugins/connection/commands.py +9 -4
  7. snowflake/cli/_plugins/git/manager.py +53 -7
  8. snowflake/cli/_plugins/helpers/commands.py +61 -0
  9. snowflake/cli/{api/project/schemas/snowpark/__init__.py → _plugins/helpers/plugin_spec.py} +17 -0
  10. snowflake/cli/_plugins/nativeapp/artifacts.py +10 -9
  11. snowflake/cli/_plugins/nativeapp/bundle_context.py +1 -1
  12. snowflake/cli/_plugins/nativeapp/codegen/artifact_processor.py +1 -1
  13. snowflake/cli/_plugins/nativeapp/codegen/compiler.py +6 -1
  14. snowflake/cli/_plugins/nativeapp/codegen/setup/native_app_setup_processor.py +1 -1
  15. snowflake/cli/_plugins/nativeapp/codegen/snowpark/extension_function_utils.py +1 -1
  16. snowflake/cli/_plugins/nativeapp/codegen/snowpark/models.py +1 -1
  17. snowflake/cli/_plugins/nativeapp/codegen/snowpark/python_processor.py +5 -1
  18. snowflake/cli/_plugins/nativeapp/codegen/templates/templates_processor.py +4 -1
  19. snowflake/cli/_plugins/nativeapp/commands.py +87 -96
  20. snowflake/cli/_plugins/nativeapp/entities/__init__.py +0 -0
  21. snowflake/cli/{api/entities/application_entity.py → _plugins/nativeapp/entities/application.py} +264 -83
  22. snowflake/cli/_plugins/nativeapp/entities/application_package.py +1392 -0
  23. snowflake/cli/_plugins/nativeapp/exceptions.py +0 -9
  24. snowflake/cli/_plugins/nativeapp/manager.py +69 -185
  25. snowflake/cli/_plugins/nativeapp/policy.py +3 -0
  26. snowflake/cli/_plugins/nativeapp/project_model.py +2 -2
  27. snowflake/cli/_plugins/nativeapp/run_processor.py +17 -20
  28. snowflake/cli/_plugins/nativeapp/same_account_install_method.py +0 -4
  29. snowflake/cli/_plugins/nativeapp/teardown_processor.py +4 -6
  30. snowflake/cli/_plugins/nativeapp/v2_conversions/v2_to_v1_decorator.py +122 -88
  31. snowflake/cli/_plugins/nativeapp/version/commands.py +7 -39
  32. snowflake/cli/_plugins/nativeapp/version/version_processor.py +46 -312
  33. snowflake/cli/_plugins/object/manager.py +36 -15
  34. snowflake/cli/_plugins/snowpark/commands.py +4 -4
  35. snowflake/cli/_plugins/snowpark/common.py +4 -4
  36. snowflake/cli/{api/entities → _plugins/snowpark}/snowpark_entity.py +2 -2
  37. snowflake/cli/{api/project/schemas/entities/snowpark_entity.py → _plugins/snowpark/snowpark_entity_model.py} +3 -6
  38. snowflake/cli/_plugins/snowpark/snowpark_project_paths.py +1 -1
  39. snowflake/cli/_plugins/stage/manager.py +9 -4
  40. snowflake/cli/_plugins/streamlit/commands.py +15 -3
  41. snowflake/cli/_plugins/streamlit/manager.py +12 -4
  42. snowflake/cli/{api/entities → _plugins/streamlit}/streamlit_entity.py +2 -2
  43. snowflake/cli/{api/project/schemas/entities → _plugins/streamlit}/streamlit_entity_model.py +5 -12
  44. snowflake/cli/_plugins/workspace/commands.py +116 -36
  45. snowflake/cli/_plugins/workspace/plugin_spec.py +1 -1
  46. snowflake/cli/api/cli_global_context.py +7 -0
  47. snowflake/cli/api/commands/decorators.py +14 -0
  48. snowflake/cli/api/commands/flags.py +18 -0
  49. snowflake/cli/api/commands/snow_typer.py +1 -1
  50. snowflake/cli/api/config.py +25 -6
  51. snowflake/cli/api/connections.py +3 -1
  52. snowflake/cli/api/entities/common.py +4 -0
  53. snowflake/cli/api/entities/utils.py +3 -14
  54. snowflake/cli/api/errno.py +1 -0
  55. snowflake/cli/api/identifiers.py +4 -3
  56. snowflake/cli/api/metrics.py +92 -0
  57. snowflake/cli/api/project/definition_conversion.py +61 -18
  58. snowflake/cli/api/project/schemas/entities/common.py +17 -4
  59. snowflake/cli/api/project/schemas/entities/entities.py +11 -10
  60. snowflake/cli/api/project/schemas/project_definition.py +5 -7
  61. snowflake/cli/api/project/schemas/v1/__init__.py +0 -0
  62. snowflake/cli/api/project/schemas/{identifier_model.py → v1/identifier_model.py} +0 -7
  63. snowflake/cli/api/project/schemas/v1/native_app/__init__.py +0 -0
  64. snowflake/cli/api/project/schemas/{native_app → v1/native_app}/native_app.py +4 -4
  65. snowflake/cli/api/project/schemas/v1/snowpark/__init__.py +0 -0
  66. snowflake/cli/api/project/schemas/{snowpark → v1/snowpark}/callable.py +2 -2
  67. snowflake/cli/api/project/schemas/{snowpark → v1/snowpark}/snowpark.py +2 -2
  68. snowflake/cli/api/project/schemas/v1/streamlit/__init__.py +0 -0
  69. snowflake/cli/api/project/schemas/{streamlit → v1/streamlit}/streamlit.py +2 -1
  70. snowflake/cli/api/rendering/sql_templates.py +6 -0
  71. snowflake/cli/api/rest_api.py +11 -5
  72. snowflake/cli/api/sql_execution.py +6 -15
  73. snowflake/cli/api/utils/definition_rendering.py +24 -4
  74. {snowflake_cli_labs-3.0.0rc2.dist-info → snowflake_cli_labs-3.0.0rc4.dist-info}/METADATA +9 -7
  75. {snowflake_cli_labs-3.0.0rc2.dist-info → snowflake_cli_labs-3.0.0rc4.dist-info}/RECORD +83 -79
  76. snowflake/cli/_plugins/nativeapp/init.py +0 -345
  77. snowflake/cli/api/entities/application_package_entity.py +0 -658
  78. snowflake/cli/api/project/schemas/entities/application_entity_model.py +0 -56
  79. snowflake/cli/api/project/schemas/entities/application_package_entity_model.py +0 -94
  80. snowflake/cli/api/project/schemas/streamlit/__init__.py +0 -13
  81. /snowflake/cli/{api/project/schemas/native_app → _plugins/helpers}/__init__.py +0 -0
  82. /snowflake/cli/api/project/schemas/{native_app → v1/native_app}/application.py +0 -0
  83. /snowflake/cli/api/project/schemas/{native_app → v1/native_app}/package.py +0 -0
  84. /snowflake/cli/api/project/schemas/{native_app → v1/native_app}/path_mapping.py +0 -0
  85. /snowflake/cli/api/project/schemas/{snowpark → v1/snowpark}/argument.py +0 -0
  86. {snowflake_cli_labs-3.0.0rc2.dist-info → snowflake_cli_labs-3.0.0rc4.dist-info}/WHEEL +0 -0
  87. {snowflake_cli_labs-3.0.0rc2.dist-info → snowflake_cli_labs-3.0.0rc4.dist-info}/entry_points.txt +0 -0
  88. {snowflake_cli_labs-3.0.0rc2.dist-info → snowflake_cli_labs-3.0.0rc4.dist-info}/licenses/LICENSE +0 -0
@@ -1,4 +1,4 @@
1
- snowflake/cli/__about__.py,sha256=cWSBg7un5oHfcUNd8S8zB7oEqm9LAQhLp0o90yJUDVU,636
1
+ snowflake/cli/__about__.py,sha256=s5AEYygcF4ZrDzYhUa_o6V7tqbbgW4aJv1Qu4jwQYk0,636
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=mHaHr0OsE2H_kUzNE3pu1znAr_stjXTZ4LAp7Hi2_po,834
@@ -7,14 +7,15 @@ snowflake/cli/_app/constants.py,sha256=WCqViioXdOt0Cykf-KK42cBLfqHKTfYobMJJ-AC7k
7
7
  snowflake/cli/_app/loggers.py,sha256=anPJsFA4H8qV928LTxU_sQ5Ci8MWphFb14GSSBly-XA,6638
8
8
  snowflake/cli/_app/main_typer.py,sha256=v2n7moen3CkP-SfsGrTh-MzFgqG6Ak8bJa8E2dGKzFw,2111
9
9
  snowflake/cli/_app/printing.py,sha256=4e-OlRZcruq6_HaUcTBoYeer9LOg8qF4iHvEvbiRucQ,5820
10
- snowflake/cli/_app/snow_connector.py,sha256=X_Gvd_2WdS__WHoGuQQpBwjQeZy_8cmeC8n8ji7PkKs,10651
11
- snowflake/cli/_app/telemetry.py,sha256=bqQpmzwurhc8Mdv7BBL8rCnsf1Mf5UHcUwRhtMja7hY,6424
10
+ snowflake/cli/_app/secret.py,sha256=43pHy-iJdWDvkpEV3ShgdwNV94mVi0T2EfN_o-5_KYk,180
11
+ snowflake/cli/_app/snow_connector.py,sha256=x03oSp19_lLRfM8SVcCqLldkuTJaQeDgvOFtmSzajYs,11082
12
+ snowflake/cli/_app/telemetry.py,sha256=654uvq1eyA1ZE4lGbCEyyI3Je2yCz7Bu_wggLiPGtXE,7161
12
13
  snowflake/cli/_app/version_check.py,sha256=6dxv6gCKIpoBehF2tymFx9-a2X0M6J5zgY2uOiyLGSc,2353
13
14
  snowflake/cli/_app/api_impl/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
14
15
  snowflake/cli/_app/api_impl/plugin/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
15
16
  snowflake/cli/_app/api_impl/plugin/plugin_config_provider_impl.py,sha256=QzLbj1eUVdQstrHSitozhgN94r0EHBH6KnzEAReY3Es,2427
16
17
  snowflake/cli/_app/commands_registration/__init__.py,sha256=HhP1c8GDRqUtZMeYVNuYwc1_524q9jH18bxJJk1JKWU,918
17
- snowflake/cli/_app/commands_registration/builtin_plugins.py,sha256=EnEGopYq7zaeiz9AWQCr1O5ZepTYFH7g-4BCNWY4-Ck,2214
18
+ snowflake/cli/_app/commands_registration/builtin_plugins.py,sha256=L4iZhDKVwvlj64Dn0dP2RG5RkwosNF2BRASg_JpFAPc,2332
18
19
  snowflake/cli/_app/commands_registration/command_plugins_loader.py,sha256=HwvZsZDJJqpu5xtReR6bWoS8WDPzjWJoWiBD8dKO8D4,6267
19
20
  snowflake/cli/_app/commands_registration/commands_registration_with_callbacks.py,sha256=PW4zTVpQM5Pi6PRZdoKXwOW5Ro7bQPI-t7ekSg4EFDM,4312
20
21
  snowflake/cli/_app/commands_registration/exception_logging.py,sha256=4B_OuXo6BJXhchs1c4zlmhnN3fN-LV6jdv6LZ227Lr8,985
@@ -34,7 +35,7 @@ snowflake/cli/_app/dev/docs/templates/overview.rst.jinja2,sha256=FO4HljkNnG33gli
34
35
  snowflake/cli/_app/dev/docs/templates/usage.rst.jinja2,sha256=jxczik22PMDkdDnN4puX_O8yoOW4bVAz19K3xy8At8A,2462
35
36
  snowflake/cli/_plugins/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
36
37
  snowflake/cli/_plugins/connection/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
37
- snowflake/cli/_plugins/connection/commands.py,sha256=UYNT_FcT4-g6fAE1ZB07Ey9ZptIhjeIdqn5hOIkxYqY,10410
38
+ snowflake/cli/_plugins/connection/commands.py,sha256=TmxnwlZEn3HMIMorv5ODmSRJ7k-cZC9CI2iPJcG4xJM,10620
38
39
  snowflake/cli/_plugins/connection/plugin_spec.py,sha256=A50dPnOAjPLwgp4CDXL6EkrEKSivGZ324GPFeG023sw,999
39
40
  snowflake/cli/_plugins/connection/util.py,sha256=0ZTdcr3TjdwXJOdQD9F2xHezQ7aDGWEqH3ZX_cmsoSM,6642
40
41
  snowflake/cli/_plugins/cortex/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
@@ -45,43 +46,48 @@ snowflake/cli/_plugins/cortex/plugin_spec.py,sha256=wbOkXoUTVdXCj8m_-bJRi7IiKxS0
45
46
  snowflake/cli/_plugins/cortex/types.py,sha256=9KQPlQRkoR67ty8VoqsifJfaoeLJPXZzCJ6dehYWYLE,827
46
47
  snowflake/cli/_plugins/git/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
47
48
  snowflake/cli/_plugins/git/commands.py,sha256=4NghBGIhxnETtr7aiy9dsQR7YD-8FR2SWpckihGOshU,11249
48
- snowflake/cli/_plugins/git/manager.py,sha256=s9UHhNVGndh7vfrOpMb-5rZfEz6muI9hNmtx8KtrFzI,3888
49
+ snowflake/cli/_plugins/git/manager.py,sha256=4Sh5ZCN4ED3Rlegc3bW7apUwGcIfEOfXcKvP-Q-arIM,5534
49
50
  snowflake/cli/_plugins/git/plugin_spec.py,sha256=aadJK8d9Aanwpmktd_eRYwf8OJvN-V8iCHIpjL7AM44,992
51
+ snowflake/cli/_plugins/helpers/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
52
+ snowflake/cli/_plugins/helpers/commands.py,sha256=EUTsnlHfooMFzqE3kHvoqntNnzZQ1Nqfe55NfoDRJ-s,2114
53
+ snowflake/cli/_plugins/helpers/plugin_spec.py,sha256=FTdWSNWj36-d83iM2PP2jwCGZhYNKQcOIAlm4Uo3qrA,996
50
54
  snowflake/cli/_plugins/init/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
51
55
  snowflake/cli/_plugins/init/commands.py,sha256=veBJpbMmHFUyIBiNn1umpy763I-TKeGhHHe5pCaJ58I,8904
52
56
  snowflake/cli/_plugins/init/plugin_spec.py,sha256=NYckJroTPV_M30QVgk1VutFPqInCkOGsL2gYQUDYuEA,994
53
57
  snowflake/cli/_plugins/nativeapp/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
54
- snowflake/cli/_plugins/nativeapp/artifacts.py,sha256=DZljWzzDZ-6Z8QGl05O6BQ5RFqj1vUTzRor17l-wtHk,30578
55
- snowflake/cli/_plugins/nativeapp/bundle_context.py,sha256=acnbc1OEYGnXc8RcG7tWsnVyyjN2K3aAqQ2v2bTjeZY,935
56
- snowflake/cli/_plugins/nativeapp/commands.py,sha256=WF-CwL4kxDH97D94d3J3huEbDbTYQK4CXriFiaxVipE,20342
58
+ snowflake/cli/_plugins/nativeapp/artifacts.py,sha256=JEUazEodZ49tGl4jpUhOQuC3xHX0Lp9Pe1QJV27CxB4,30663
59
+ snowflake/cli/_plugins/nativeapp/bundle_context.py,sha256=1jU6we2DHExKD3UALZOrg3BKy2rHGNrRJMwaNQz7Li4,938
60
+ snowflake/cli/_plugins/nativeapp/commands.py,sha256=XqY7DvSHxPUKUKWYh4CZjgcuPZ1bR5WEtSQOF4Le7AA,19699
57
61
  snowflake/cli/_plugins/nativeapp/common_flags.py,sha256=oGzE8_Y_kxbMrUAE9NPbNY86KiV0L0wlQYzE_lr_GR4,1611
58
62
  snowflake/cli/_plugins/nativeapp/constants.py,sha256=j25fS9dS54GPPp41njUOZTDykhYq12PY67B084FLCZk,956
59
- snowflake/cli/_plugins/nativeapp/exceptions.py,sha256=xRqMmFZeJwhViQrfe-T9nQY03_f4b_VKZeb5liv1eis,4374
63
+ snowflake/cli/_plugins/nativeapp/exceptions.py,sha256=dElTCtfktzn4IsGkePoKeAX9bH-mdxO4pagz4ymtx1w,4039
60
64
  snowflake/cli/_plugins/nativeapp/feature_flags.py,sha256=Y1peJF8ju_lybKjklOvXYsGQMN8VhFoLnoq-Z7oqO-E,829
61
- snowflake/cli/_plugins/nativeapp/init.py,sha256=Hg1LojKBtmhhFOMsPvvFd5eBChi6N8sF8PAjKrGXVZ4,12125
62
- snowflake/cli/_plugins/nativeapp/manager.py,sha256=ANsfnnDen_YSTWJyCnekGhq8Cc2hGVCbfDDRpRtbFOQ,18640
65
+ snowflake/cli/_plugins/nativeapp/manager.py,sha256=nrR0b3h47QHSZw16BiqcrM7yEfYDCize5BCRqKjQpxE,13845
63
66
  snowflake/cli/_plugins/nativeapp/plugin_spec.py,sha256=f36DGbQ9716O-2nUCvwmY2RF8hPOkJmr0YsNc3ffu7A,998
64
- snowflake/cli/_plugins/nativeapp/policy.py,sha256=yND6QTJUtbuREdT9I2fzFI4-XFd7zbNgWKlvoFICwko,1605
65
- snowflake/cli/_plugins/nativeapp/project_model.py,sha256=hFK7z0QL-e8IH8QO3dgESPCY4Rp1mUcoUEFZ43XvmqY,7645
66
- snowflake/cli/_plugins/nativeapp/run_processor.py,sha256=vrxeyfFsuodzdYtUXxeX2BGy_Fd9jsCzvNi3tyJcTDo,7423
67
- snowflake/cli/_plugins/nativeapp/same_account_install_method.py,sha256=-UZHNXwj3mOh5Gm8mOUGnufdmBbH82esr10XLLDeSwo,2396
68
- snowflake/cli/_plugins/nativeapp/teardown_processor.py,sha256=7YdCJMdRzFkbUCOHmlxDZ9dNEuPh84Z5G2cy2isz5wk,2260
67
+ snowflake/cli/_plugins/nativeapp/policy.py,sha256=LOsDySwWxPF73lPxyWGhGKpI0H4bXJyvpFLSFqEndxw,1700
68
+ snowflake/cli/_plugins/nativeapp/project_model.py,sha256=SGD9rxD70FNGdCz0CVzNwTuf5ze06RfIX5sSOtjIBm4,7651
69
+ snowflake/cli/_plugins/nativeapp/run_processor.py,sha256=V07Ca9QyXGjoOP8LxCDcPhfqjMvtyiNQtRLutOzxWIY,7233
70
+ snowflake/cli/_plugins/nativeapp/same_account_install_method.py,sha256=vMEtW9i5QCG1ucMHfkDoOXuUDjtNA4QeTYUYGLv8Ko0,2223
71
+ snowflake/cli/_plugins/nativeapp/teardown_processor.py,sha256=lEGcHkkV4XrS-G-_0ESlVLKmo13lcNwaSFqrUlf0eCU,2267
69
72
  snowflake/cli/_plugins/nativeapp/utils.py,sha256=dR7xjjHM8LlyE-PVKhQfAi6OKPd1TA9XQxN5EsBamLI,2867
70
73
  snowflake/cli/_plugins/nativeapp/codegen/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
71
- snowflake/cli/_plugins/nativeapp/codegen/artifact_processor.py,sha256=w8u0zf4iQjd1gW2vsqkA3GLcibTbG9vMWTdOLC91Jas,2943
72
- snowflake/cli/_plugins/nativeapp/codegen/compiler.py,sha256=-0GatA-66mKQ9qUbuDK6RiZbOhhYtoa8QDST6nJI1wQ,5885
74
+ snowflake/cli/_plugins/nativeapp/codegen/artifact_processor.py,sha256=fDNEjb-jzspr6NsSrsOU31TPOkNs3gy29WdU_zKrPv8,2946
75
+ snowflake/cli/_plugins/nativeapp/codegen/compiler.py,sha256=DqEn-XF9VXqtOw2iRiegL4Q67wrwsX8SMHLAnfqEbsA,6202
73
76
  snowflake/cli/_plugins/nativeapp/codegen/sandbox.py,sha256=ZbbRTIBnxe0rMFQuqXLjqgV8ar-trtaPActfwePT8Pc,11131
74
- snowflake/cli/_plugins/nativeapp/codegen/setup/native_app_setup_processor.py,sha256=3pVeyLCnQlS-KPgQxwcssj9JaVn3wwY7A1wS0afxQ7k,8692
77
+ snowflake/cli/_plugins/nativeapp/codegen/setup/native_app_setup_processor.py,sha256=ysqpGgFXuEekeUV2mXb2U7eEGXBPYZqxf16xHQbK6CE,8695
75
78
  snowflake/cli/_plugins/nativeapp/codegen/setup/setup_driver.py.source,sha256=wnJUZjV34bSQX-KVh_4v9d0JjVPfV1WSwxmTZh3sCJI,2189
76
79
  snowflake/cli/_plugins/nativeapp/codegen/snowpark/callback_source.py.jinja,sha256=JiMs2NKhtFFvKotQFU61wpKBAqPAfBthGsdT1aZgY-c,7531
77
- snowflake/cli/_plugins/nativeapp/codegen/snowpark/extension_function_utils.py,sha256=BCPxRBiHk_FUEmXPx4AzjHcXq2DUL5BlqFsBVbzDHlo,7627
78
- snowflake/cli/_plugins/nativeapp/codegen/snowpark/models.py,sha256=xPC7Igbyo_A6Su4xWeXNYV421uefMqHpQbwFGG8AprI,2225
79
- snowflake/cli/_plugins/nativeapp/codegen/snowpark/python_processor.py,sha256=szKSE0aAm65q3aBkKY5AC4oMi9Fc8fCA7wS30vBTIUI,19824
80
- snowflake/cli/_plugins/nativeapp/codegen/templates/templates_processor.py,sha256=ZfGd4kc72oWror2C6-TFJBEXCaQKB2ZQdTEKLqafi48,4077
81
- snowflake/cli/_plugins/nativeapp/v2_conversions/v2_to_v1_decorator.py,sha256=AO60koMSU5gSEb_f_9zGiXMjApIjdC78XUFa5dcwJIg,9958
80
+ snowflake/cli/_plugins/nativeapp/codegen/snowpark/extension_function_utils.py,sha256=WNdrPUdpyUfhKA3dA84SK_hBd0DNQFOQtsQOSu0aejI,7630
81
+ snowflake/cli/_plugins/nativeapp/codegen/snowpark/models.py,sha256=7TlcAD29k5dazKg9o4JZg7ib2kcXg_IrPIDA24Fhoew,2228
82
+ snowflake/cli/_plugins/nativeapp/codegen/snowpark/python_processor.py,sha256=Fkefnrs_nP0s9xpl_NELx_ZLG08yhP5w3Mr-YxYuzIg,20032
83
+ snowflake/cli/_plugins/nativeapp/codegen/templates/templates_processor.py,sha256=PYFuB13o8bHPr70D0V1xzrytWxPHXC6Cr8hIdRrmd1g,4221
84
+ snowflake/cli/_plugins/nativeapp/entities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
85
+ snowflake/cli/_plugins/nativeapp/entities/application.py,sha256=qe6yNr6-l4p06I08t0dKPndCtJSartJ835ooqdYAHag,34411
86
+ snowflake/cli/_plugins/nativeapp/entities/application_package.py,sha256=mRDf0BPbl8Hx_cmzmxS0w02ckbgMoL5VssJRDm9KYyU,51940
87
+ snowflake/cli/_plugins/nativeapp/v2_conversions/v2_to_v1_decorator.py,sha256=gPgJanKEtw5H-pMzB-YRNLGBqVMLeRLE7BJzUzV-tBs,10616
82
88
  snowflake/cli/_plugins/nativeapp/version/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
83
- snowflake/cli/_plugins/nativeapp/version/commands.py,sha256=RWHCrYItkWVL6zAyKsPIhNy86b8-zdbe_dL0FhnXutk,5953
84
- snowflake/cli/_plugins/nativeapp/version/version_processor.py,sha256=k2nBgLv4FxH0s7qRxuj5RBd3DItz6NJLZAucsJ85rQE,14817
89
+ snowflake/cli/_plugins/nativeapp/version/commands.py,sha256=CxKA9U9Pulr2Frz1ksxnmVB1QPPOWN99AK-7_g3NJS4,5112
90
+ snowflake/cli/_plugins/nativeapp/version/version_processor.py,sha256=qzOjlqiIeFLeOYtO6Yn67d_uAwT0CC2BvshtDVmgGc8,3374
85
91
  snowflake/cli/_plugins/notebook/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
86
92
  snowflake/cli/_plugins/notebook/commands.py,sha256=mKUutTw14xf4Sv4P1sh2NOeUmG3NrpaVOa4N8n4FyuU,2722
87
93
  snowflake/cli/_plugins/notebook/exceptions.py,sha256=YUS9RRcsEOgQEbikUFpbm8Qo5MYJEB-d-TGZYpMyfwo,782
@@ -92,15 +98,17 @@ snowflake/cli/_plugins/object/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBS
92
98
  snowflake/cli/_plugins/object/command_aliases.py,sha256=KQK73mwhDQWAIf7qSB6ZExae5LSdq4Xpjybq0863uSk,3158
93
99
  snowflake/cli/_plugins/object/commands.py,sha256=mOzcwjhK1QGhesJGx9pIt4SGOw8MR4i6zwctetWK3Vs,5967
94
100
  snowflake/cli/_plugins/object/common.py,sha256=x1V8fiVnh7ohHHq0_NaGFtUvTz0soVRSGm-oCIuhJHs,2608
95
- snowflake/cli/_plugins/object/manager.py,sha256=3zddL5hr8IBU5yDdCLrj4m1GEeQUF2RARpxmaYvXilA,3940
101
+ snowflake/cli/_plugins/object/manager.py,sha256=6PTd9GYVnF25WqdiOK7RiweouH9q4Hcf8t-x41PZ0CE,4870
96
102
  snowflake/cli/_plugins/object/plugin_spec.py,sha256=O8k6hSD48w4Uhkho0KpcTDkZ2iNjiU5jCPvEVitDzeo,995
97
103
  snowflake/cli/_plugins/snowpark/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
98
- snowflake/cli/_plugins/snowpark/commands.py,sha256=fmJ9BzuJ-dQx9aEzmI3mofn7e58OTzIWQ8EqV_uOK-w,16589
99
- snowflake/cli/_plugins/snowpark/common.py,sha256=RrdogD2kOoITNmsWd_hLyKWQbijQtK4xC1euFUhX_t4,9250
104
+ snowflake/cli/_plugins/snowpark/commands.py,sha256=UTV7dz2x-lnjc3gj9d-vrLD9YTqow2LkIn9anffPrXc,16584
105
+ snowflake/cli/_plugins/snowpark/common.py,sha256=vpJNXPE8pnZiyu-2aPpZJY8sLtZhJERkbq1cuFq1CDA,9245
100
106
  snowflake/cli/_plugins/snowpark/models.py,sha256=Bd69O3krCS5HvQdHhjQsbhFi0wtYOD_Y9sj6lBMR7KU,4766
101
107
  snowflake/cli/_plugins/snowpark/package_utils.py,sha256=D7XhCa2XpFfYBdBDW5qA29ediATjus1w711r8rQgGJ4,12287
102
108
  snowflake/cli/_plugins/snowpark/plugin_spec.py,sha256=2fzlWnGL57oCLWfmkfo6USxvJpy7K9KPE3-ZqwILQcg,997
103
- snowflake/cli/_plugins/snowpark/snowpark_project_paths.py,sha256=vy_RdaA_b57P-_pCoUTJric7FZHQgJZbnICQuzw_drw,3640
109
+ snowflake/cli/_plugins/snowpark/snowpark_entity.py,sha256=Ly7tRfCB63eGEz9H7w-YoTuPMNS34JbMef0rQ8FC708,506
110
+ snowflake/cli/_plugins/snowpark/snowpark_entity_model.py,sha256=M2QA6YtyA_XCk3s-KKO1vVBXQbdp4lPcE7NkMgNwUCw,6204
111
+ snowflake/cli/_plugins/snowpark/snowpark_project_paths.py,sha256=eGbnZVmI3uKO-OJQN4u2Gdk8nwoX3iDENwo-Nkk1U8M,3635
104
112
  snowflake/cli/_plugins/snowpark/snowpark_shared.py,sha256=bvKQa0FkB0UCoqIkxAJAYyymaXUuaiQ5hAe5m1GTXXk,1723
105
113
  snowflake/cli/_plugins/snowpark/zipper.py,sha256=us4MEtn0L8lWJvSiBVeA1xB_iLxGVG-c-31vutcGYqo,2430
106
114
  snowflake/cli/_plugins/snowpark/package/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
@@ -131,53 +139,52 @@ snowflake/cli/_plugins/sql/snowsql_templating.py,sha256=VTPvFzZihZnu6R5L1JMaVdzx
131
139
  snowflake/cli/_plugins/stage/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
132
140
  snowflake/cli/_plugins/stage/commands.py,sha256=OH5rzfF3T0VLVUdSFBseMWV73rsFkIFQVM3N7AN_01s,8381
133
141
  snowflake/cli/_plugins/stage/diff.py,sha256=aX0LM9BvKFjXksuH2MjT1XkRRsTrg2mUF9r0kVXNu80,9195
134
- snowflake/cli/_plugins/stage/manager.py,sha256=svlDPSaphwzH_9PL6EQS_8Ukr5uVVUGaHMRcL_ia6lU,21547
142
+ snowflake/cli/_plugins/stage/manager.py,sha256=TZ0wFXhGVZwREmgEP5uDhtLf27Bh-WzgS4OcgYync1o,21686
135
143
  snowflake/cli/_plugins/stage/md5.py,sha256=hX_Ao7ys7hUPNuWLm5KEmIpcIULEIJ1UMgc4qUyvoLE,6303
136
144
  snowflake/cli/_plugins/stage/plugin_spec.py,sha256=2APmhjF1Emtdx1Ir9vLwJ1PLgLbnu7Or8lijOi_AM2U,994
137
145
  snowflake/cli/_plugins/stage/utils.py,sha256=Bl9zn4H8sN6k5lsr0oRssLKcuVGnnFZU2Jnj7IOgUaE,1764
138
146
  snowflake/cli/_plugins/streamlit/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
139
- snowflake/cli/_plugins/streamlit/commands.py,sha256=Kzy_ILDfOJLhz_BNxvFWnV3W0hY45g_lPY5CY12eZuI,5878
140
- snowflake/cli/_plugins/streamlit/manager.py,sha256=2DJwBLXrtGLyZE3LB748taxyltXSNBkowfLEYZ8QvXQ,8343
147
+ snowflake/cli/_plugins/streamlit/commands.py,sha256=Ym070Nu0XSrMNkITNpE9jFOdk0EzXhm1Ep13qDGS0uE,6146
148
+ snowflake/cli/_plugins/streamlit/manager.py,sha256=cWqCsgXl4tUnxBJYs33I07agdchvAb1282-lAmbd3w0,8660
141
149
  snowflake/cli/_plugins/streamlit/plugin_spec.py,sha256=swcszE2JoJWs-DzgN02CxK3myIYexsnWijkFYyYf7Ws,998
150
+ snowflake/cli/_plugins/streamlit/streamlit_entity.py,sha256=y49tEvlHrEEH_AB1CvWc1rvtZU15cFB-MOAoSzSKzo8,261
151
+ snowflake/cli/_plugins/streamlit/streamlit_entity_model.py,sha256=9UvUY_Y-sWTs8eOCn9WGQxTD99mwZn13SovnC8_QIF8,2433
142
152
  snowflake/cli/_plugins/workspace/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
143
153
  snowflake/cli/_plugins/workspace/action_context.py,sha256=uzCRjyDhfLeh12yMt6vIbml1KeUNaMbZBJWectL6eCU,419
144
- snowflake/cli/_plugins/workspace/commands.py,sha256=6eV_n3x8JTblsYMHOO_gDb64pLG0YekeIaXw4-4ucjE,7867
154
+ snowflake/cli/_plugins/workspace/commands.py,sha256=iXAQFDgQE9relCwocXnr4BNM7Wr1MaUjobePXVGYdIk,10619
145
155
  snowflake/cli/_plugins/workspace/manager.py,sha256=gMPxtdW9pl8JYAGz71ylS1oGmyfC4z-4_grCHW01exk,3216
146
- snowflake/cli/_plugins/workspace/plugin_spec.py,sha256=lHGP4GK4g-IqHzkRJ--3d8APllrv6Ra13wShWOszXLQ,979
156
+ snowflake/cli/_plugins/workspace/plugin_spec.py,sha256=DvjilAunPuBuSIgKHOPcAVfk8-ZaCyJbfo8k1oau3cA,997
147
157
  snowflake/cli/api/__init__.py,sha256=kD6lYv5et7QJvW7vzvLN9p2ibfD7pjh9KRWsp2QoYqo,1330
148
- snowflake/cli/api/cli_global_context.py,sha256=CqPbZbqXyA3rU5XVirEdJh-612poL_saG1IzBcMA_TY,8290
149
- snowflake/cli/api/config.py,sha256=4LpNlrNGnAV-lFj6gyzAh8IJS-tSqKuKikQlYBLqZ7I,11552
150
- snowflake/cli/api/connections.py,sha256=qiAjFDLK_OIhFaXn-TRmNAIeWAArNWRRp26bjZ7ahXE,7964
158
+ snowflake/cli/api/cli_global_context.py,sha256=t5YuPEEpa1w41O3OVj1lrHBB4f8kV4s_YVcbK0PlgrM,8475
159
+ snowflake/cli/api/config.py,sha256=btQNrzPGsv0SKu4SNjmnhE-RU6y2kYk6tGVaHvI4rUw,12202
160
+ snowflake/cli/api/connections.py,sha256=ZtqWprAS3i5Qlm721NFnIUyQaN8E3B31vyGcQcWY8dk,8024
151
161
  snowflake/cli/api/constants.py,sha256=v5vixBpFeJRdoUbEY1T43amHNts56Y7VWvoPPclj43s,3233
152
- snowflake/cli/api/errno.py,sha256=IvotDJv_m_lz4tf5es0q7qRSdzCxv3zd2X2bQP6KsNU,1015
162
+ snowflake/cli/api/errno.py,sha256=CxLUhLnJ2f6311D6orVjucI-EpNqjQ60kJ7HtA_TR58,1046
153
163
  snowflake/cli/api/exceptions.py,sha256=nN9tQFLwFiwD_QriybsIhlfv5SYXBGTNQvhfIt2ZtUI,6257
154
164
  snowflake/cli/api/feature_flags.py,sha256=dtcXEgMebFWpFyPrSBN6HlDKPdnCM9JjwCXSXQsE3VI,1614
155
- snowflake/cli/api/identifiers.py,sha256=cmnVJQwY2SVFoCGhbxzvTMytFMBJDTpGaEZyccfmDbg,6462
156
- snowflake/cli/api/rest_api.py,sha256=X2hYq-J2mZJmVIEeCUvdk8ccTiV86ltVlj9ac5ZmIak,6070
165
+ snowflake/cli/api/identifiers.py,sha256=OWCIMEtU4Ess-hNc6ubwkVYYMrWTWrVoCytzk2SZAvQ,6519
166
+ snowflake/cli/api/metrics.py,sha256=8QLaZ-KmZZGXxRbGjOAaLDjmy2RYyOKSFHqcsN-jYXE,3061
167
+ snowflake/cli/api/rest_api.py,sha256=GcsRnrfBoAZizhsVLl_Emy3OmtO3tzo0c_QOngWdDKA,6264
157
168
  snowflake/cli/api/sanitizers.py,sha256=7EKqVQ3KOob0IFFoc_GmXPYpRhgnmIqhnJSvHPgxM5I,1211
158
169
  snowflake/cli/api/secure_path.py,sha256=h1ZrVyFBzGTisbjTA5vRFYOjRVn-ytM-ShO6XcBgS3M,12909
159
170
  snowflake/cli/api/secure_utils.py,sha256=QpU_D21l5-WnUR1WKG51xVNGR5O_lr8YMpl9jDTpV_U,3998
160
- snowflake/cli/api/sql_execution.py,sha256=nheoUXk5xa11XCoB_CM9SldEu_eg0S8Ok6apJLa03F8,11143
171
+ snowflake/cli/api/sql_execution.py,sha256=zajyVLzKloLvEzBM9hpvw5HxnbJ7Z6El-MvDVIlqpdA,10770
161
172
  snowflake/cli/api/commands/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
162
173
  snowflake/cli/api/commands/alias.py,sha256=TF6QgkorFTn9UV5F3tvxIJZ56iK1vIjqZFMxVtrTIzk,795
163
174
  snowflake/cli/api/commands/common.py,sha256=6CrJqhQl-Mu0jwFmWyNKvvB7jFQ1EJdnKFW9BNHVask,462
164
- snowflake/cli/api/commands/decorators.py,sha256=qzCPw9Jh0A9FBOGV8GebV0b5cwdh9bNoNB5dFcbMU8s,10258
175
+ snowflake/cli/api/commands/decorators.py,sha256=fdKdBqEBn2GrerLekKyUCMUTKTQynHMGGi_e5-0y77Y,10586
165
176
  snowflake/cli/api/commands/execution_metadata.py,sha256=9tz1dbzdVRLFprGi_y8TeTfv36VewFeGdhQX6NfwAXM,1231
166
177
  snowflake/cli/api/commands/experimental_behaviour.py,sha256=HFTw0d46B1QJpiCy0MeeJhWXrPF_bnmgUGaEWkWXw98,733
167
- snowflake/cli/api/commands/flags.py,sha256=EOAmniDKQay52yn7IIYUusgk4KozjIzeYxS23sb_6T4,16192
178
+ snowflake/cli/api/commands/flags.py,sha256=g5ly6-rY_HA1L4j8A8TpdjkeqYXlJ7lGf231XJhgTVk,16698
168
179
  snowflake/cli/api/commands/overrideable_parameter.py,sha256=LDiRQudkTeoWu5y_qTCVmtseEvO6U9LuSiuLZt5oFq8,6353
169
- snowflake/cli/api/commands/snow_typer.py,sha256=_3T8CUtGyuJAOR3XKtQX2XcHcNwxjeAC1UoAAsX7ZBQ,8849
180
+ snowflake/cli/api/commands/snow_typer.py,sha256=4l-AmKJOBI9N3pBdbhbzi4C76jp4P2XLn3A76h4XwOI,8853
170
181
  snowflake/cli/api/commands/utils.py,sha256=26oSgoVqxG_qkFdHDakqI1TempnY0fJmkinJx_SMjfw,606
171
182
  snowflake/cli/api/console/__init__.py,sha256=jKSsXJDqyQZwJ--5eRzUqb2nNvq-lo_NC1pbqK5xROI,665
172
183
  snowflake/cli/api/console/abc.py,sha256=xSE3mlkkyqrqQNeAoZPkA-ji7KKEaz6jgTC_zCVFLSA,2913
173
184
  snowflake/cli/api/console/console.py,sha256=t5p4RTZHFXxofc7Xw1v5HjaNc0n1CXUF8Ox1Z1bRTNc,4573
174
185
  snowflake/cli/api/console/enum.py,sha256=4JyaGjtOqlSsHx2ovgJ9I83KqlWJ9GLhUFTUicSa8RQ,666
175
- snowflake/cli/api/entities/application_entity.py,sha256=qltAB95HIAEo_otwCQg-GUkDv2K7NgOrOSOQHyTOuKo,27465
176
- snowflake/cli/api/entities/application_package_entity.py,sha256=QVAix4Mw6HZArmPw5fOwtMyBtx65PUxg9UOFQJgdMfs,24385
177
- snowflake/cli/api/entities/common.py,sha256=adOs-03HULBmCtFWmTt6lXsda435CA5C-9MO79H4XkI,1595
178
- snowflake/cli/api/entities/snowpark_entity.py,sha256=Mk-gXKxsVqu3a62mKjQzL7phSsak9WiJZXD2IvEduws,511
179
- snowflake/cli/api/entities/streamlit_entity.py,sha256=Rtm3MjXOrkv5Ktk4iZgdgyQcqCQrZHBfKLj-1Z-eIX4,271
180
- snowflake/cli/api/entities/utils.py,sha256=h-NVaS95rhh4K6qogSH8fduEQNeOHR3kUJ7CA4BANOg,13877
186
+ snowflake/cli/api/entities/common.py,sha256=zmLw--rOB2VBEU-VRJqR68YqHuVycZxus-XlLMVDOnQ,1723
187
+ snowflake/cli/api/entities/utils.py,sha256=mLIfftXzHx54RlyXsyFlRtrYGqZvU34P1kHOi49yTcA,13493
181
188
  snowflake/cli/api/output/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
182
189
  snowflake/cli/api/output/formats.py,sha256=L1As7qBQSZ7elG6Y8vRqFpljpjJgRr6fjIu6re5r0MM,667
183
190
  snowflake/cli/api/output/types.py,sha256=pzBlAr_ubLk810ii35t3hDUn1QsOFLg2yKyVkuYvA5o,3281
@@ -187,42 +194,39 @@ snowflake/cli/api/plugins/command/__init__.py,sha256=qCzBzpq8__2OUN0PcruIKgQXI2V
187
194
  snowflake/cli/api/plugins/command/plugin_hook_specs.py,sha256=AHJGk6j3NRzalIe4llM3Mt0-opHui1sLdbILoEMhpuA,714
188
195
  snowflake/cli/api/project/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
189
196
  snowflake/cli/api/project/definition.py,sha256=5vhSH97v48rWyk7vWGxWngpsEcgJ9-8IX1SYzGYwrUg,4333
190
- snowflake/cli/api/project/definition_conversion.py,sha256=xAX1mRw1WpcbHiKyQK72qFErwJqxUuW-itCWp57vDwo,13173
197
+ snowflake/cli/api/project/definition_conversion.py,sha256=CqQWtJB4aUSSUw_zTtD5jiI1-Tskxnyf5hq1JzBgE7E,14888
191
198
  snowflake/cli/api/project/definition_manager.py,sha256=mquz4lDFUtlrlSTpmMVesX3nrJouDdO0slRgCLDeQrU,4985
192
199
  snowflake/cli/api/project/errors.py,sha256=9TGN2ezqSCHmSGy1U7AByaJm5Xf47zN-7N3i6R6fyBg,2136
193
200
  snowflake/cli/api/project/project_verification.py,sha256=smprjxJZlqqIPYuyf6a3OJitRpn8Ru6tAoZB-DdEz1s,990
194
201
  snowflake/cli/api/project/util.py,sha256=eOJbXx4CZ7DfmHI4-CJT0cV7lP8DH0gI9JTBic7-xNs,9639
195
202
  snowflake/cli/api/project/schemas/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
196
- snowflake/cli/api/project/schemas/identifier_model.py,sha256=lv8h7mgWepRare-JKT3fL4APG9QXY6_o6ZhG1P2ZizE,2130
197
- snowflake/cli/api/project/schemas/project_definition.py,sha256=-K2lRM0DXmzjASs_fUwkNAimkYJMpVeq3tluG4Eo48g,11560
203
+ snowflake/cli/api/project/schemas/project_definition.py,sha256=p-bCIZLzP4frwLRjtbUOwALnSpK2EAPib9ROLN-TwYU,11546
198
204
  snowflake/cli/api/project/schemas/template.py,sha256=w8cJt6VcMmMJgKO6rv31cTBDQZuSsaMVOOfeBZMF56k,3019
199
205
  snowflake/cli/api/project/schemas/updatable_model.py,sha256=h7k6TOcrTcNf0w-Pnmww2D_rtI3m_z07CWg8-NHgbmU,7604
200
206
  snowflake/cli/api/project/schemas/entities/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
201
- snowflake/cli/api/project/schemas/entities/application_entity_model.py,sha256=3kEpJ5SMz37nTxldTOBd_C6eYbCU60uJ_yFqV6KgPsE,2115
202
- snowflake/cli/api/project/schemas/entities/application_package_entity_model.py,sha256=u55NzC1mgfA0OgsPKR_TSRY4TGByykykpJhPcTxxlwM,3747
203
- snowflake/cli/api/project/schemas/entities/common.py,sha256=eHKq7IcNFoKSJPDlAvwM-lavDYHzabyPs6axfUiGisM,4780
204
- snowflake/cli/api/project/schemas/entities/entities.py,sha256=uAGrk0bO3gHoqNNDBK077LqtYIc2ro3iZ3ULII0pn20,2074
205
- snowflake/cli/api/project/schemas/entities/snowpark_entity.py,sha256=ZAQC3JkSzOrGK-SPrKfDglbZydj83Z-Gi1hw8gCX42Y,6309
206
- snowflake/cli/api/project/schemas/entities/streamlit_entity_model.py,sha256=LVeqWUfEyI7sOVelrVvEkyVFnWTEGctWY_H1WqT5jsc,2586
207
- snowflake/cli/api/project/schemas/native_app/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
208
- snowflake/cli/api/project/schemas/native_app/application.py,sha256=Hz1ldUMEn_m99u2n711Kq-Epk-FUQ6bxJItAi4NIadc,2315
209
- snowflake/cli/api/project/schemas/native_app/native_app.py,sha256=o88owmn-bO1BLEVhg6fWAdVAXNbedbZ45VtG5ZJ9r14,3597
210
- snowflake/cli/api/project/schemas/native_app/package.py,sha256=Bt4jA9DqW8rooobb74pNJuCEnMHoCa_X9MEwmWyK3j8,3301
211
- snowflake/cli/api/project/schemas/native_app/path_mapping.py,sha256=pHtjGsO2Zv_qn9JwrVQX_sB2U0C_Tz6uGWya0xNC6cc,2547
212
- snowflake/cli/api/project/schemas/snowpark/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
213
- snowflake/cli/api/project/schemas/snowpark/argument.py,sha256=SGJCTr9kIq91G4n3zetI4pkV1cMZRtNMDVMcZDpogHQ,1054
214
- snowflake/cli/api/project/schemas/snowpark/callable.py,sha256=cV1M1OI7uZt87dGzZ5XI-o6fJp77xCWIZZNZLcmVLRQ,2762
215
- snowflake/cli/api/project/schemas/snowpark/snowpark.py,sha256=C4IuWdiPcTcg7RIx1sQuPKzVoMT9yizxgtcRsHcaHFY,1378
216
- snowflake/cli/api/project/schemas/streamlit/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
217
- snowflake/cli/api/project/schemas/streamlit/streamlit.py,sha256=VXOYFJPwO8e3NaPBkcWhCaPGof18XH4TYKEMaqu2UYQ,1873
207
+ snowflake/cli/api/project/schemas/entities/common.py,sha256=sUWM2wfh1WmHhoiq_6bSG2OkyBgPW-sYAnDPm89QjMM,5257
208
+ snowflake/cli/api/project/schemas/entities/entities.py,sha256=cnonCsyW-oCpAL4YVeLuZDJwGAtm8qIMXEebAlCi2kg,1932
209
+ snowflake/cli/api/project/schemas/v1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
210
+ snowflake/cli/api/project/schemas/v1/identifier_model.py,sha256=Te0CraVdflIrvNXYljReofBCNfkGDdZ0G_aUY19GFqE,1868
211
+ snowflake/cli/api/project/schemas/v1/native_app/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
212
+ snowflake/cli/api/project/schemas/v1/native_app/application.py,sha256=Hz1ldUMEn_m99u2n711Kq-Epk-FUQ6bxJItAi4NIadc,2315
213
+ snowflake/cli/api/project/schemas/v1/native_app/native_app.py,sha256=YnIz6cMZe2fLAQAGr_PhmxiDpdjjqf7fkNo75ZuC_2w,3606
214
+ snowflake/cli/api/project/schemas/v1/native_app/package.py,sha256=Bt4jA9DqW8rooobb74pNJuCEnMHoCa_X9MEwmWyK3j8,3301
215
+ snowflake/cli/api/project/schemas/v1/native_app/path_mapping.py,sha256=pHtjGsO2Zv_qn9JwrVQX_sB2U0C_Tz6uGWya0xNC6cc,2547
216
+ snowflake/cli/api/project/schemas/v1/snowpark/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
217
+ snowflake/cli/api/project/schemas/v1/snowpark/argument.py,sha256=SGJCTr9kIq91G4n3zetI4pkV1cMZRtNMDVMcZDpogHQ,1054
218
+ snowflake/cli/api/project/schemas/v1/snowpark/callable.py,sha256=4EHfdOZXrQcQMeFoQL9fKqAM62GRaLeTHnOBL4SfzdE,2768
219
+ snowflake/cli/api/project/schemas/v1/snowpark/snowpark.py,sha256=H-7VIS6BDpm-L-gyjSkbcBAw0jEuomxVZ5KUe2VePbM,1381
220
+ snowflake/cli/api/project/schemas/v1/streamlit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
221
+ snowflake/cli/api/project/schemas/v1/streamlit/streamlit.py,sha256=KC2RUGeSz4O1j0Mg3hZv6kpa7En6hLEdzCqce9KN634,1964
218
222
  snowflake/cli/api/rendering/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
219
223
  snowflake/cli/api/rendering/jinja.py,sha256=gpHUJmgiFx8iDJFy0DgsdtBHY2k95pY9kbW51Z2VYKM,3726
220
224
  snowflake/cli/api/rendering/project_definition_templates.py,sha256=RzVmw7JwLoeBntgLNIG4QESqKGr1i2K3XivFszqWby8,1457
221
225
  snowflake/cli/api/rendering/project_templates.py,sha256=zRh863Gn2hYli9uUu1eXQ_gZsMDUCCg5N44kcPXcSSg,3474
222
- snowflake/cli/api/rendering/sql_templates.py,sha256=Tu4evKhzi02sJY9jYWPcid_nlA8_Z9cFRt-Dv9-ucsA,3808
226
+ snowflake/cli/api/rendering/sql_templates.py,sha256=Jv_MkNrkJhFn7S9m949B817kvEcthax7SC1wkPhZoVs,3984
223
227
  snowflake/cli/api/utils/__init__.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh9ou8J439uU,578
224
228
  snowflake/cli/api/utils/cursor.py,sha256=JlyUG5b4EXii71Dm7qiTdptjwIsOOmEv2QmZA1cY8NQ,1222
225
- snowflake/cli/api/utils/definition_rendering.py,sha256=e3TAMELQ5vGaIYoB7wgObIJUiNob-MIwfD7iVl9-3JE,15225
229
+ snowflake/cli/api/utils/definition_rendering.py,sha256=3jRz1_jMC1Tw8QyJazYq-bue9Tpphyx6SVYbOoo_R7g,16126
226
230
  snowflake/cli/api/utils/dict_utils.py,sha256=8vb9EyiT8gNHCtPNfE1S-0WcWdP6G_kiwJ-aizu3Pzs,2799
227
231
  snowflake/cli/api/utils/error_handling.py,sha256=etIGdS8kd9APgyeUecnY2XMivDORSRV8q-WuBtpriZY,708
228
232
  snowflake/cli/api/utils/graph.py,sha256=XZgcTySyS1je9ARdPWqJyrfzuqFBNt9SSLnGeE2na8M,3045
@@ -231,8 +235,8 @@ snowflake/cli/api/utils/naming_utils.py,sha256=uGA_QRGW3iGwaegpFsLgOhup0zBliBSXh
231
235
  snowflake/cli/api/utils/path_utils.py,sha256=ru0jgw6Ur5zhqpHhj_eAqcaJdrgEgr3bC7Z02FnQV18,1218
232
236
  snowflake/cli/api/utils/templating_functions.py,sha256=DlmpGAEY6OBArtIap6kN1aaILPwx2ynqKflPwjj7BbU,4935
233
237
  snowflake/cli/api/utils/types.py,sha256=fVKuls8axKSsBzPqWwrkwkwoXXmedqxNJKqfXrrGyBM,1190
234
- snowflake_cli_labs-3.0.0rc2.dist-info/METADATA,sha256=baLTYbY4wgCmA238mmKMmBrR02zxyz4W-LtQHrpipZ4,17916
235
- snowflake_cli_labs-3.0.0rc2.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
236
- snowflake_cli_labs-3.0.0rc2.dist-info/entry_points.txt,sha256=6QmSI0wUX6p7f-dGvrPdswlQyVAVGi1AtOUbE8X6bho,58
237
- snowflake_cli_labs-3.0.0rc2.dist-info/licenses/LICENSE,sha256=mJMA3Uz2AbjU_kVggo1CAx01XhBsI7BSi2H7ggUg_-c,11344
238
- snowflake_cli_labs-3.0.0rc2.dist-info/RECORD,,
238
+ snowflake_cli_labs-3.0.0rc4.dist-info/METADATA,sha256=cS-ClSglu6IDbtt5y26UWv7umS-EJeCyOhXcaOK3I68,17998
239
+ snowflake_cli_labs-3.0.0rc4.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
240
+ snowflake_cli_labs-3.0.0rc4.dist-info/entry_points.txt,sha256=6QmSI0wUX6p7f-dGvrPdswlQyVAVGi1AtOUbE8X6bho,58
241
+ snowflake_cli_labs-3.0.0rc4.dist-info/licenses/LICENSE,sha256=mJMA3Uz2AbjU_kVggo1CAx01XhBsI7BSi2H7ggUg_-c,11344
242
+ snowflake_cli_labs-3.0.0rc4.dist-info/RECORD,,
@@ -1,345 +0,0 @@
1
- # Copyright (c) 2024 Snowflake Inc.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- from __future__ import annotations
16
-
17
- import logging
18
- import re
19
- from pathlib import Path
20
- from typing import Optional
21
-
22
- from click.exceptions import ClickException
23
- from snowflake.cli.api.constants import DEFAULT_SIZE_LIMIT_MB
24
- from snowflake.cli.api.exceptions import MissingConfiguration
25
- from snowflake.cli.api.project.definition_manager import DefinitionManager
26
- from snowflake.cli.api.project.util import (
27
- is_valid_identifier,
28
- is_valid_unquoted_identifier,
29
- to_identifier,
30
- )
31
- from snowflake.cli.api.rendering.jinja import jinja_render_from_file
32
- from snowflake.cli.api.secure_path import SecurePath
33
- from yaml import dump, safe_dump, safe_load
34
-
35
- log = logging.getLogger(__name__)
36
-
37
- OFFICIAL_TEMPLATES_GITHUB_URL = "https://github.com/snowflakedb/native-apps-templates"
38
- BASIC_TEMPLATE = "basic"
39
-
40
-
41
- class InitError(ClickException):
42
- """
43
- Snowflake Native App project could not be initiated due to an underlying error.
44
- """
45
-
46
- def __init__(self):
47
- super().__init__(self.__doc__)
48
-
49
-
50
- class ProjectNameInvalidError(ClickException):
51
- """
52
- Intended project name does not qualify as a valid identifier.
53
- """
54
-
55
- def __init__(self, project_name: str):
56
- super().__init__(
57
- f"Intended project name does not qualify as a valid identifier: {project_name}"
58
- )
59
-
60
-
61
- class RenderingFromJinjaError(ClickException):
62
- """
63
- Could not complete rendering file from Jinja template.
64
- """
65
-
66
- def __init__(self, name: str):
67
- super().__init__(
68
- f"Could not complete rendering file from Jinja template: {name}"
69
- )
70
-
71
-
72
- class CannotInitializeAnExistingProjectError(ClickException):
73
- """
74
- Cannot initialize a new project within an existing Snowflake Native App project.
75
- """
76
-
77
- def __init__(self):
78
- super().__init__(self.__doc__)
79
-
80
-
81
- class DirectoryAlreadyExistsError(ClickException):
82
- """
83
- Directory already contains a project with the intended name.
84
- """
85
-
86
- name: str
87
-
88
- def __init__(self, name: str):
89
- super().__init__(
90
- f"The directory {name} already exists. Please specify a different path for the project."
91
- )
92
- self.name = name
93
-
94
-
95
- class TemplateNotFoundError(ClickException):
96
- """
97
- Specified template was not found.
98
- """
99
-
100
- def __init__(self, template_name):
101
- super().__init__(f"Specified template was not found: {template_name}")
102
-
103
-
104
- class ProjectDescriptor:
105
- """
106
- Encapsulates static properties of a Snowflake Native App project.
107
- """
108
-
109
- def __init__(self, *, name, path):
110
- self.name = name
111
- self.path = path
112
-
113
-
114
- def _to_yaml_string(identifier: str):
115
- """
116
- Returns the YAML representation of an identifier, suitable for including in a YAML jinja template
117
- """
118
- if is_valid_unquoted_identifier(identifier):
119
- return identifier
120
- else:
121
- return dump(identifier).rstrip()
122
-
123
-
124
- def _render_snowflake_yml(parent_to_snowflake_yml: Path, project_identifier: str):
125
- """
126
- Create a snowflake.yml file from a jinja template at a given path.
127
-
128
- Args:
129
- parent_to_snowflake_yml (Path): The parent directory of snowflake.yml.jinja, and later snowflake.yml
130
- project_identifier (str): The name of the project to be created, as a Snowflake identifier.
131
-
132
- Returns:
133
- None
134
- """
135
-
136
- snowflake_yml_jinja = "snowflake.yml.jinja"
137
-
138
- try:
139
- jinja_render_from_file(
140
- template_path=parent_to_snowflake_yml / snowflake_yml_jinja,
141
- data={
142
- # generic_render_template operates on text, not YAML, so escape before rendering
143
- "project_name": _to_yaml_string(project_identifier)
144
- },
145
- output_file_path=parent_to_snowflake_yml / "snowflake.yml",
146
- )
147
- (parent_to_snowflake_yml / snowflake_yml_jinja).unlink()
148
- except Exception as err:
149
- log.error(err)
150
- raise RenderingFromJinjaError(snowflake_yml_jinja)
151
-
152
-
153
- def _replace_snowflake_yml_name_with_project(
154
- target_directory: Path, project_identifier: str
155
- ):
156
- """
157
- Replace the native_app schema's "name" field in a snowflake.yml file with its parent directory name, i.e. the Snowflake Native App project, as the default start.
158
- This does not change the name in any other snowflake.*.yml as snowflake.yml is the base file and all others are overrides for the user to customize.
159
-
160
- Args:
161
- target_directory (str): The directory containing snowflake.yml at its root.
162
- project_identifier (str): The name of the project to be created, as a Snowflake identifier.
163
-
164
- Returns:
165
- None
166
- """
167
-
168
- path_to_snowflake_yml = SecurePath(target_directory) / "snowflake.yml"
169
- contents = None
170
-
171
- with path_to_snowflake_yml.open(
172
- "r", read_file_limit_mb=DEFAULT_SIZE_LIMIT_MB
173
- ) as file:
174
- contents = safe_load(file)
175
-
176
- if (
177
- (contents is not None)
178
- and ("native_app" in contents)
179
- and ("name" in contents["native_app"])
180
- and (contents["native_app"]["name"] != project_identifier)
181
- ):
182
- contents["native_app"]["name"] = project_identifier
183
- with path_to_snowflake_yml.open("w") as file:
184
- safe_dump(contents, file, sort_keys=False)
185
-
186
-
187
- def _validate_and_update_snowflake_yml(target_directory: Path, project_identifier: str):
188
- """
189
- Update the native_app name key in the snowflake.yml file and perform validation on the entire file.
190
- This step is useful when cloning from a non-Snowflake template repo which may directly have a snowflake.yml file.
191
-
192
- Args:
193
- target_directory (Path): The directory containing snowflake.yml at its root.
194
- project_identifier (str): The name of the project to be created, as a Snowflake identifier.
195
-
196
- Returns:
197
- None
198
- """
199
- # 1. Determine if a snowflake.yml file exists, at the very least
200
- definition_manager = DefinitionManager(target_directory)
201
- if not definition_manager.has_definition_file:
202
- raise MissingConfiguration(
203
- "Cannot find project definition (snowflake.yml). Please provide a path to the project or run this command in a valid project directory."
204
- )
205
-
206
- # 2. Change the project name in snowflake.yml if necessary
207
- _replace_snowflake_yml_name_with_project(
208
- target_directory=target_directory, project_identifier=project_identifier
209
- )
210
-
211
- # 3. Validate the Project Definition File(s)
212
- definition_manager.project_definition
213
-
214
-
215
- def _generate_project_name_from_path(p: Path):
216
- return re.sub(r"[. -]+", "_", p.name)
217
-
218
-
219
- def _init_from_template(
220
- project_path: Path,
221
- project_identifier: str,
222
- git_url: Optional[str],
223
- template: Optional[str],
224
- ):
225
- """
226
- Initialize a Snowflake Native App project with a git URL and optionally a specific template within the git URL.
227
-
228
- Args:
229
- project_path (Path): The directory of the user where the project will be added.
230
- project_identifier (str): The name of the project to be created, as a Snowflake identifier.
231
- git_url (str): The git URL to perform a clone from.
232
- template (str): A optional template within the git URL to use, all other directories and files outside the
233
- template will be discarded.
234
-
235
- Returns:
236
- None
237
- """
238
- use_whole_repo_as_template = git_url and not template
239
- if not use_whole_repo_as_template:
240
- git_url = git_url if git_url else OFFICIAL_TEMPLATES_GITHUB_URL
241
-
242
- try:
243
- with SecurePath.temporary_directory() as temp_path:
244
- from git import rmtree as git_rmtree
245
- from snowflake.cli._plugins.nativeapp.utils import shallow_git_clone
246
-
247
- shallow_git_clone(git_url, temp_path.path)
248
-
249
- if use_whole_repo_as_template:
250
- # the template is the entire git repository
251
- template_root = temp_path
252
- # Remove all git history before we move the repo
253
- git_rmtree((template_root / ".git").path)
254
- else:
255
- # The template is a subdirectory of the git repository
256
- template_name = template if template else BASIC_TEMPLATE
257
- template_root = temp_path / template_name
258
- if not template_root.path.is_dir():
259
- raise TemplateNotFoundError(template_name=template_name)
260
-
261
- if (template_root / "snowflake.yml.jinja").exists():
262
- # Render snowflake.yml file from its jinja template
263
- _render_snowflake_yml(
264
- parent_to_snowflake_yml=template_root.path,
265
- project_identifier=project_identifier,
266
- )
267
-
268
- # If not an official Snowflake Native App template
269
- if git_url != OFFICIAL_TEMPLATES_GITHUB_URL:
270
- _validate_and_update_snowflake_yml(
271
- target_directory=template_root.path,
272
- project_identifier=project_identifier,
273
- )
274
-
275
- project_path.parent.mkdir(parents=True, exist_ok=True)
276
-
277
- # Move the template to the specified path
278
- template_root.move(project_path)
279
-
280
- except TemplateNotFoundError:
281
- raise
282
- except Exception as err:
283
- # If there was any error, validation on Project Definition file or otherwise,
284
- # there should not be any Snowflake Native App Project left after this.
285
- if project_path.exists():
286
- SecurePath(project_path).rmdir(recursive=True)
287
-
288
- log.error(err)
289
- raise InitError()
290
-
291
-
292
- def nativeapp_init(
293
- path: str,
294
- name: Optional[str] = None,
295
- git_url: Optional[str] = None,
296
- template: Optional[str] = None,
297
- ) -> ProjectDescriptor:
298
- """
299
- Initialize a Snowflake Native App project in the user's current working directory, with or without the use of a template.
300
-
301
- Args:
302
- path (str): The location of the project to be created.
303
- name (str): Name of the project to be created.
304
- git_url (str): The git URL to perform a clone from.
305
- template (str): A template within the git URL to use, all other directories and files outside the template will be discarded.
306
-
307
- Returns:
308
- A project descriptor for the newly initialized project.
309
- """
310
- try:
311
- project_path = Path(path).expanduser().resolve()
312
- except Exception as err: # expanduser can fail
313
- raise InitError()
314
-
315
- # If a subdirectory with the same name as name exists in the current directory, fail init command
316
- if project_path.exists():
317
- raise DirectoryAlreadyExistsError(path)
318
-
319
- # Check if the specified path already exists in a Snowflake Native App project. Nesting projects is not allowed.
320
- if DefinitionManager.find_project_root(search_path=project_path.parent) is not None:
321
- raise CannotInitializeAnExistingProjectError()
322
-
323
- project_name = (
324
- name if name is not None else _generate_project_name_from_path(project_path)
325
- )
326
- if not project_name:
327
- # empty name
328
- raise ProjectNameInvalidError(project_name=project_name)
329
-
330
- if not is_valid_identifier(project_name) and (
331
- project_name.startswith('"') or project_name.endswith('"')
332
- ):
333
- # the project name looks like it was partially quoted. This is likely a mistake, reject it rather than
334
- # silently escaping it.
335
- raise ProjectNameInvalidError(project_name=project_name)
336
-
337
- project_identifier = to_identifier(project_name)
338
- _init_from_template(
339
- project_path=project_path,
340
- project_identifier=project_identifier,
341
- git_url=git_url,
342
- template=template,
343
- )
344
-
345
- return ProjectDescriptor(name=project_name, path=project_path)