frogml 1.1.62__py3-none-any.whl → 1.2.19__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 (530) hide show
  1. frogml/__init__.py +3 -1
  2. frogml/_proto/jfml/hosting_gateway/v1/build_upload_url_pb2.py +3 -3
  3. frogml/_proto/jfml/hosting_gateway/v1/build_upload_url_pb2.pyi +6 -4
  4. frogml/_proto/jfml/hosting_gateway/v1/hosting_gateway_service_pb2.py +3 -3
  5. frogml/_proto/jfml/hosting_gateway/v1/hosting_gateway_service_pb2.pyi +8 -9
  6. frogml/_proto/jfml/model_version/v1/artifact_pb2.py +3 -3
  7. frogml/_proto/jfml/model_version/v1/artifact_pb2.pyi +8 -9
  8. frogml/_proto/jfml/model_version/v1/build_spec_pb2.py +3 -3
  9. frogml/_proto/jfml/model_version/v1/build_spec_pb2.pyi +24 -20
  10. frogml/_proto/jfml/model_version/v1/model_repository_spec_pb2.py +3 -3
  11. frogml/_proto/jfml/model_version/v1/model_repository_spec_pb2.pyi +6 -9
  12. frogml/_proto/jfml/model_version/v1/model_version_framework_pb2.py +3 -3
  13. frogml/_proto/jfml/model_version/v1/model_version_framework_pb2.pyi +13 -10
  14. frogml/_proto/jfml/model_version/v1/model_version_manager_service_pb2.py +3 -3
  15. frogml/_proto/jfml/model_version/v1/model_version_manager_service_pb2.pyi +43 -30
  16. frogml/_proto/jfml/model_version/v1/model_version_pb2.py +11 -11
  17. frogml/_proto/jfml/model_version/v1/model_version_pb2.pyi +48 -32
  18. frogml/_proto/qwak/administration/account/v1/account_pb2.py +25 -23
  19. frogml/_proto/qwak/administration/account/v1/account_pb2.pyi +55 -21
  20. frogml/_proto/qwak/administration/account/v1/account_service_pb2.py +3 -3
  21. frogml/_proto/qwak/administration/account/v1/account_service_pb2.pyi +63 -36
  22. frogml/_proto/qwak/administration/account/v1/jfrog_tenant_details_pb2.py +5 -5
  23. frogml/_proto/qwak/administration/account/v1/jfrog_tenant_details_pb2.pyi +35 -22
  24. frogml/_proto/qwak/administration/account/v1/personalization_pb2.py +3 -3
  25. frogml/_proto/qwak/administration/account/v1/personalization_pb2.pyi +7 -9
  26. frogml/_proto/qwak/administration/account/v1/preferences_pb2.py +3 -3
  27. frogml/_proto/qwak/administration/account/v1/preferences_pb2.pyi +6 -8
  28. frogml/_proto/qwak/administration/account/v1/terms_pb2.py +3 -3
  29. frogml/_proto/qwak/administration/account/v1/terms_pb2.pyi +16 -11
  30. frogml/_proto/qwak/administration/authenticated_user/v1/authenticated_user_service_pb2.py +3 -3
  31. frogml/_proto/qwak/administration/authenticated_user/v1/authenticated_user_service_pb2.pyi +20 -14
  32. frogml/_proto/qwak/administration/authenticated_user/v1/credentials_pb2.py +3 -3
  33. frogml/_proto/qwak/administration/authenticated_user/v1/credentials_pb2.pyi +11 -12
  34. frogml/_proto/qwak/administration/authenticated_user/v1/details_pb2.py +3 -3
  35. frogml/_proto/qwak/administration/authenticated_user/v1/details_pb2.pyi +18 -15
  36. frogml/_proto/qwak/administration/cluster/v2/cluster_pb2.py +3 -3
  37. frogml/_proto/qwak/administration/cluster/v2/cluster_pb2.pyi +62 -39
  38. frogml/_proto/qwak/administration/runtime_configuration/v0/container_registry_config_pb2.py +3 -3
  39. frogml/_proto/qwak/administration/runtime_configuration/v0/container_registry_config_pb2.pyi +12 -13
  40. frogml/_proto/qwak/administration/runtime_configuration/v0/creds/auth_pb2.py +3 -3
  41. frogml/_proto/qwak/administration/runtime_configuration/v0/creds/auth_pb2.pyi +5 -8
  42. frogml/_proto/qwak/administration/runtime_configuration/v0/creds/secret_pb2.py +3 -3
  43. frogml/_proto/qwak/administration/runtime_configuration/v0/creds/secret_pb2.pyi +8 -10
  44. frogml/_proto/qwak/administration/runtime_configuration/v0/data_catalog_config_pb2.py +3 -3
  45. frogml/_proto/qwak/administration/runtime_configuration/v0/data_catalog_config_pb2.pyi +11 -11
  46. frogml/_proto/qwak/administration/runtime_configuration/v0/external/databricks/auth_pb2.py +11 -7
  47. frogml/_proto/qwak/administration/runtime_configuration/v0/external/databricks/auth_pb2.pyi +58 -12
  48. frogml/_proto/qwak/administration/runtime_configuration/v0/external/elasticsearch_config_pb2.py +3 -3
  49. frogml/_proto/qwak/administration/runtime_configuration/v0/external/elasticsearch_config_pb2.pyi +8 -11
  50. frogml/_proto/qwak/administration/runtime_configuration/v0/external/kafka_config_pb2.py +3 -3
  51. frogml/_proto/qwak/administration/runtime_configuration/v0/external/kafka_config_pb2.pyi +12 -12
  52. frogml/_proto/qwak/administration/runtime_configuration/v0/external/prometheus_config_pb2.py +3 -3
  53. frogml/_proto/qwak/administration/runtime_configuration/v0/external/prometheus_config_pb2.pyi +8 -10
  54. frogml/_proto/qwak/administration/runtime_configuration/v0/external/redis_config_pb2.py +3 -3
  55. frogml/_proto/qwak/administration/runtime_configuration/v0/external/redis_config_pb2.pyi +8 -11
  56. frogml/_proto/qwak/administration/runtime_configuration/v0/external/victoriametrics_config_pb2.py +3 -3
  57. frogml/_proto/qwak/administration/runtime_configuration/v0/external/victoriametrics_config_pb2.pyi +6 -9
  58. frogml/_proto/qwak/administration/runtime_configuration/v0/feature_store_config_pb2.py +3 -3
  59. frogml/_proto/qwak/administration/runtime_configuration/v0/feature_store_config_pb2.pyi +13 -14
  60. frogml/_proto/qwak/administration/runtime_configuration/v0/hosting/aws/auth_pb2.py +3 -3
  61. frogml/_proto/qwak/administration/runtime_configuration/v0/hosting/aws/auth_pb2.pyi +29 -25
  62. frogml/_proto/qwak/administration/runtime_configuration/v0/hosting/azure/auth_pb2.py +11 -7
  63. frogml/_proto/qwak/administration/runtime_configuration/v0/hosting/azure/auth_pb2.pyi +57 -17
  64. frogml/_proto/qwak/administration/runtime_configuration/v0/hosting_config_pb2.py +5 -5
  65. frogml/_proto/qwak/administration/runtime_configuration/v0/hosting_config_pb2.pyi +29 -24
  66. frogml/_proto/qwak/administration/runtime_configuration/v0/logs_storage_config_pb2.py +3 -3
  67. frogml/_proto/qwak/administration/runtime_configuration/v0/logs_storage_config_pb2.pyi +6 -9
  68. frogml/_proto/qwak/administration/runtime_configuration/v0/model_analytics_storage_config_pb2.py +3 -3
  69. frogml/_proto/qwak/administration/runtime_configuration/v0/model_analytics_storage_config_pb2.pyi +6 -9
  70. frogml/_proto/qwak/administration/runtime_configuration/v0/network_config_pb2.py +3 -3
  71. frogml/_proto/qwak/administration/runtime_configuration/v0/network_config_pb2.pyi +22 -21
  72. frogml/_proto/qwak/administration/runtime_configuration/v0/object_storage_config_pb2.py +3 -3
  73. frogml/_proto/qwak/administration/runtime_configuration/v0/object_storage_config_pb2.pyi +12 -12
  74. frogml/_proto/qwak/administration/runtime_configuration/v0/observability_config_pb2.py +3 -3
  75. frogml/_proto/qwak/administration/runtime_configuration/v0/observability_config_pb2.pyi +13 -14
  76. frogml/_proto/qwak/administration/runtime_configuration/v0/runtime_config_pb2.py +3 -3
  77. frogml/_proto/qwak/administration/runtime_configuration/v0/runtime_config_pb2.pyi +5 -8
  78. frogml/_proto/qwak/administration/runtime_configuration/v0/sql_engine_config_pb2.py +3 -3
  79. frogml/_proto/qwak/administration/runtime_configuration/v0/sql_engine_config_pb2.pyi +11 -11
  80. frogml/_proto/qwak/administration/v0/authentication/authentication_service_pb2.py +3 -3
  81. frogml/_proto/qwak/administration/v0/authentication/authentication_service_pb2.pyi +14 -13
  82. frogml/_proto/qwak/administration/v0/environments/configuration_pb2.py +3 -3
  83. frogml/_proto/qwak/administration/v0/environments/configuration_pb2.pyi +33 -20
  84. frogml/_proto/qwak/administration/v0/environments/environment_pb2.py +5 -5
  85. frogml/_proto/qwak/administration/v0/environments/environment_pb2.pyi +17 -8
  86. frogml/_proto/qwak/administration/v0/environments/environment_service_pb2.py +5 -5
  87. frogml/_proto/qwak/administration/v0/environments/environment_service_pb2.pyi +46 -26
  88. frogml/_proto/qwak/administration/v0/environments/personalization_pb2.py +3 -3
  89. frogml/_proto/qwak/administration/v0/environments/personalization_pb2.pyi +7 -9
  90. frogml/_proto/qwak/administration/v0/users/user_pb2.py +7 -7
  91. frogml/_proto/qwak/administration/v0/users/user_pb2.pyi +18 -11
  92. frogml/_proto/qwak/admiral/secret/v0/secret_pb2.py +21 -19
  93. frogml/_proto/qwak/admiral/secret/v0/secret_pb2.pyi +65 -24
  94. frogml/_proto/qwak/admiral/secret/v0/secret_service_pb2.py +3 -3
  95. frogml/_proto/qwak/admiral/secret/v0/secret_service_pb2.pyi +16 -12
  96. frogml/_proto/qwak/admiral/secret/v0/system_secret_service_pb2.py +3 -3
  97. frogml/_proto/qwak/admiral/secret/v0/system_secret_service_pb2.pyi +19 -14
  98. frogml/_proto/qwak/admiral/user_application_instance/v0/user_application_instance_pb2.py +3 -3
  99. frogml/_proto/qwak/admiral/user_application_instance/v0/user_application_instance_pb2.pyi +83 -48
  100. frogml/_proto/qwak/admiral/user_application_instance/v0/user_application_instance_service_pb2.py +3 -3
  101. frogml/_proto/qwak/admiral/user_application_instance/v0/user_application_instance_service_pb2.pyi +25 -16
  102. frogml/_proto/qwak/analytics/analytics_pb2.py +3 -3
  103. frogml/_proto/qwak/analytics/analytics_pb2.pyi +33 -16
  104. frogml/_proto/qwak/analytics/analytics_service_pb2.py +3 -3
  105. frogml/_proto/qwak/analytics/analytics_service_pb2.pyi +46 -26
  106. frogml/_proto/qwak/artifactory_settings/artifactory_settings_pb2.py +3 -3
  107. frogml/_proto/qwak/artifactory_settings/artifactory_settings_pb2.pyi +7 -9
  108. frogml/_proto/qwak/audience/v1/audience_api_pb2.py +3 -3
  109. frogml/_proto/qwak/audience/v1/audience_api_pb2.pyi +25 -17
  110. frogml/_proto/qwak/audience/v1/audience_pb2.py +5 -5
  111. frogml/_proto/qwak/audience/v1/audience_pb2.pyi +38 -23
  112. frogml/_proto/qwak/auto_scaling/v1/auto_scaling_pb2.py +3 -3
  113. frogml/_proto/qwak/auto_scaling/v1/auto_scaling_pb2.pyi +22 -13
  114. frogml/_proto/qwak/auto_scaling/v1/auto_scaling_service_pb2.py +3 -3
  115. frogml/_proto/qwak/auto_scaling/v1/auto_scaling_service_pb2.pyi +8 -9
  116. frogml/_proto/qwak/automation/v1/action_pb2.py +17 -17
  117. frogml/_proto/qwak/automation/v1/action_pb2.pyi +76 -47
  118. frogml/_proto/qwak/automation/v1/auto_scaling_pb2.py +3 -3
  119. frogml/_proto/qwak/automation/v1/auto_scaling_pb2.pyi +22 -13
  120. frogml/_proto/qwak/automation/v1/automation_execution_pb2.py +3 -3
  121. frogml/_proto/qwak/automation/v1/automation_execution_pb2.pyi +23 -13
  122. frogml/_proto/qwak/automation/v1/automation_management_service_pb2.py +5 -5
  123. frogml/_proto/qwak/automation/v1/automation_management_service_pb2.pyi +56 -32
  124. frogml/_proto/qwak/automation/v1/automation_pb2.py +3 -3
  125. frogml/_proto/qwak/automation/v1/automation_pb2.pyi +28 -25
  126. frogml/_proto/qwak/automation/v1/common_pb2.py +3 -3
  127. frogml/_proto/qwak/automation/v1/common_pb2.pyi +8 -5
  128. frogml/_proto/qwak/automation/v1/notification_pb2.py +7 -7
  129. frogml/_proto/qwak/automation/v1/notification_pb2.pyi +14 -8
  130. frogml/_proto/qwak/automation/v1/trigger_pb2.py +3 -3
  131. frogml/_proto/qwak/automation/v1/trigger_pb2.pyi +17 -16
  132. frogml/_proto/qwak/batch_job/v1/batch_job_events_pb2.py +13 -13
  133. frogml/_proto/qwak/batch_job/v1/batch_job_events_pb2.pyi +22 -14
  134. frogml/_proto/qwak/batch_job/v1/batch_job_resources_pb2.py +3 -3
  135. frogml/_proto/qwak/batch_job/v1/batch_job_resources_pb2.pyi +4 -2
  136. frogml/_proto/qwak/batch_job/v1/batch_job_service_pb2.py +127 -127
  137. frogml/_proto/qwak/batch_job/v1/batch_job_service_pb2.pyi +196 -101
  138. frogml/_proto/qwak/build/v1/build_api_pb2.py +17 -17
  139. frogml/_proto/qwak/build/v1/build_api_pb2.pyi +87 -46
  140. frogml/_proto/qwak/build/v1/build_pb2.py +9 -9
  141. frogml/_proto/qwak/build/v1/build_pb2.pyi +187 -118
  142. frogml/_proto/qwak/build_settings/build_settings_api_pb2.py +3 -3
  143. frogml/_proto/qwak/build_settings/build_settings_api_pb2.pyi +15 -13
  144. frogml/_proto/qwak/build_settings/build_settings_pb2.py +3 -3
  145. frogml/_proto/qwak/build_settings/build_settings_pb2.pyi +24 -19
  146. frogml/_proto/qwak/builds/build_pb2.py +49 -48
  147. frogml/_proto/qwak/builds/build_pb2.pyi +113 -53
  148. frogml/_proto/qwak/builds/build_url_pb2.py +5 -5
  149. frogml/_proto/qwak/builds/build_url_pb2.pyi +39 -21
  150. frogml/_proto/qwak/builds/build_values_pb2.py +82 -0
  151. frogml/_proto/qwak/builds/build_values_pb2.pyi +582 -0
  152. frogml/_proto/qwak/builds/build_values_pb2_grpc.py +4 -0
  153. frogml/_proto/qwak/builds/builds_orchestrator_service_pb2.py +80 -52
  154. frogml/_proto/qwak/builds/builds_orchestrator_service_pb2.pyi +261 -40
  155. frogml/_proto/qwak/builds/builds_orchestrator_service_pb2_grpc.py +66 -0
  156. frogml/_proto/qwak/builds/builds_pb2.py +7 -7
  157. frogml/_proto/qwak/builds/builds_pb2.pyi +177 -105
  158. frogml/_proto/qwak/builds/internal_builds_orchestrator_service_pb2.py +3 -3
  159. frogml/_proto/qwak/builds/internal_builds_orchestrator_service_pb2.pyi +12 -10
  160. frogml/_proto/qwak/data_versioning/data_versioning_pb2.py +3 -3
  161. frogml/_proto/qwak/data_versioning/data_versioning_pb2.pyi +8 -10
  162. frogml/_proto/qwak/data_versioning/data_versioning_service_pb2.py +3 -3
  163. frogml/_proto/qwak/data_versioning/data_versioning_service_pb2.pyi +12 -11
  164. frogml/_proto/qwak/deployment/alert_pb2.py +5 -5
  165. frogml/_proto/qwak/deployment/alert_pb2.pyi +31 -20
  166. frogml/_proto/qwak/deployment/alert_service_pb2.py +7 -7
  167. frogml/_proto/qwak/deployment/alert_service_pb2.pyi +34 -21
  168. frogml/_proto/qwak/deployment/deployment_messages_pb2.py +3 -3
  169. frogml/_proto/qwak/deployment/deployment_messages_pb2.pyi +9 -11
  170. frogml/_proto/qwak/deployment/deployment_pb2.py +33 -33
  171. frogml/_proto/qwak/deployment/deployment_pb2.pyi +225 -139
  172. frogml/_proto/qwak/deployment/deployment_service_pb2.py +81 -81
  173. frogml/_proto/qwak/deployment/deployment_service_pb2.pyi +139 -78
  174. frogml/_proto/qwak/ecosystem/jfrog/v0/jfrog_tenant_info_service_pb2.py +3 -3
  175. frogml/_proto/qwak/ecosystem/jfrog/v0/jfrog_tenant_info_service_pb2.pyi +11 -9
  176. frogml/_proto/qwak/ecosystem/jfrog/v0/jfrog_tenant_pb2.py +3 -3
  177. frogml/_proto/qwak/ecosystem/jfrog/v0/jfrog_tenant_pb2.pyi +6 -8
  178. frogml/_proto/qwak/ecosystem/jfrog/v0/token_pb2.py +41 -31
  179. frogml/_proto/qwak/ecosystem/jfrog/v0/token_pb2.pyi +168 -36
  180. frogml/_proto/qwak/ecosystem/jfrog/v0/token_service_pb2.py +3 -3
  181. frogml/_proto/qwak/ecosystem/jfrog/v0/token_service_pb2.pyi +29 -19
  182. frogml/_proto/qwak/ecosystem/v0/auth_pb2.py +28 -0
  183. frogml/_proto/qwak/ecosystem/v0/auth_pb2.pyi +35 -0
  184. frogml/_proto/qwak/ecosystem/v0/auth_pb2_grpc.py +4 -0
  185. frogml/_proto/qwak/ecosystem/v0/azure_credentials_pb2.py +37 -0
  186. frogml/_proto/qwak/ecosystem/v0/azure_credentials_pb2.pyi +119 -0
  187. frogml/_proto/qwak/ecosystem/v0/azure_credentials_pb2_grpc.py +4 -0
  188. frogml/_proto/qwak/ecosystem/v0/credentials_pb2.py +11 -10
  189. frogml/_proto/qwak/ecosystem/v0/credentials_pb2.pyi +21 -15
  190. frogml/_proto/qwak/ecosystem/v0/ecosystem_pb2.py +11 -11
  191. frogml/_proto/qwak/ecosystem/v0/ecosystem_pb2.pyi +63 -40
  192. frogml/_proto/qwak/ecosystem/v0/ecosystem_runtime_service_pb2.py +5 -5
  193. frogml/_proto/qwak/ecosystem/v0/ecosystem_runtime_service_pb2.pyi +74 -41
  194. frogml/_proto/qwak/execution/v1/backfill_pb2.py +3 -3
  195. frogml/_proto/qwak/execution/v1/backfill_pb2.pyi +34 -24
  196. frogml/_proto/qwak/execution/v1/batch_pb2.py +3 -3
  197. frogml/_proto/qwak/execution/v1/batch_pb2.pyi +16 -13
  198. frogml/_proto/qwak/execution/v1/deletion_pb2.py +3 -3
  199. frogml/_proto/qwak/execution/v1/deletion_pb2.pyi +9 -9
  200. frogml/_proto/qwak/execution/v1/execution_pb2.py +3 -3
  201. frogml/_proto/qwak/execution/v1/execution_pb2.pyi +28 -12
  202. frogml/_proto/qwak/execution/v1/execution_service_pb2.py +5 -5
  203. frogml/_proto/qwak/execution/v1/execution_service_pb2.pyi +69 -43
  204. frogml/_proto/qwak/execution/v1/internal/deployment/platform_details_pb2.py +3 -3
  205. frogml/_proto/qwak/execution/v1/internal/deployment/platform_details_pb2.pyi +4 -7
  206. frogml/_proto/qwak/execution/v1/jobs/job_pb2.py +5 -5
  207. frogml/_proto/qwak/execution/v1/jobs/job_pb2.pyi +45 -22
  208. frogml/_proto/qwak/execution/v1/jobs/job_service_pb2.py +3 -3
  209. frogml/_proto/qwak/execution/v1/jobs/job_service_pb2.pyi +62 -37
  210. frogml/_proto/qwak/execution/v1/jobs/reports/report_pb2.py +5 -5
  211. frogml/_proto/qwak/execution/v1/jobs/reports/report_pb2.pyi +49 -29
  212. frogml/_proto/qwak/execution/v1/state/execution_state_pb2.py +3 -3
  213. frogml/_proto/qwak/execution/v1/state/execution_state_pb2.pyi +6 -9
  214. frogml/_proto/qwak/execution/v1/state/execution_state_service_pb2.py +3 -3
  215. frogml/_proto/qwak/execution/v1/state/execution_state_service_pb2.pyi +27 -19
  216. frogml/_proto/qwak/execution/v1/state/featureset_state_pb2.py +3 -3
  217. frogml/_proto/qwak/execution/v1/state/featureset_state_pb2.pyi +4 -7
  218. frogml/_proto/qwak/execution/v1/state/spark_execution_state_pb2.py +5 -5
  219. frogml/_proto/qwak/execution/v1/state/spark_execution_state_pb2.pyi +13 -7
  220. frogml/_proto/qwak/execution/v1/streaming_aggregation_pb2.py +21 -14
  221. frogml/_proto/qwak/execution/v1/streaming_aggregation_pb2.pyi +83 -11
  222. frogml/_proto/qwak/execution/v1/streaming_pb2.py +3 -3
  223. frogml/_proto/qwak/execution/v1/streaming_pb2.pyi +10 -10
  224. frogml/_proto/qwak/feature_store/entities/entity_pb2.py +3 -3
  225. frogml/_proto/qwak/feature_store/entities/entity_pb2.pyi +29 -16
  226. frogml/_proto/qwak/feature_store/entities/entity_service_pb2.py +3 -3
  227. frogml/_proto/qwak/feature_store/entities/entity_service_pb2.pyi +37 -22
  228. frogml/_proto/qwak/feature_store/features/aggregation_pb2.py +3 -3
  229. frogml/_proto/qwak/feature_store/features/aggregation_pb2.pyi +39 -21
  230. frogml/_proto/qwak/feature_store/features/deployment_pb2.py +3 -3
  231. frogml/_proto/qwak/feature_store/features/deployment_pb2.pyi +51 -27
  232. frogml/_proto/qwak/feature_store/features/deployment_service_pb2.py +3 -3
  233. frogml/_proto/qwak/feature_store/features/deployment_service_pb2.pyi +5 -7
  234. frogml/_proto/qwak/feature_store/features/execution_pb2.py +3 -3
  235. frogml/_proto/qwak/feature_store/features/execution_pb2.pyi +18 -13
  236. frogml/_proto/qwak/feature_store/features/feature_set_attribute_pb2.py +3 -3
  237. frogml/_proto/qwak/feature_store/features/feature_set_attribute_pb2.pyi +6 -8
  238. frogml/_proto/qwak/feature_store/features/feature_set_pb2.py +21 -21
  239. frogml/_proto/qwak/feature_store/features/feature_set_pb2.pyi +85 -48
  240. frogml/_proto/qwak/feature_store/features/feature_set_service_pb2.py +9 -9
  241. frogml/_proto/qwak/feature_store/features/feature_set_service_pb2.pyi +107 -53
  242. frogml/_proto/qwak/feature_store/features/feature_set_state_pb2.py +3 -3
  243. frogml/_proto/qwak/feature_store/features/feature_set_state_pb2.pyi +46 -23
  244. frogml/_proto/qwak/feature_store/features/feature_set_state_service_pb2.py +3 -3
  245. frogml/_proto/qwak/feature_store/features/feature_set_state_service_pb2.pyi +27 -17
  246. frogml/_proto/qwak/feature_store/features/feature_set_types_pb2.py +73 -71
  247. frogml/_proto/qwak/feature_store/features/feature_set_types_pb2.pyi +181 -99
  248. frogml/_proto/qwak/feature_store/features/monitoring_pb2.py +3 -3
  249. frogml/_proto/qwak/feature_store/features/monitoring_pb2.pyi +11 -11
  250. frogml/_proto/qwak/feature_store/features/real_time_feature_extractor_pb2.py +3 -3
  251. frogml/_proto/qwak/feature_store/features/real_time_feature_extractor_pb2.pyi +63 -37
  252. frogml/_proto/qwak/feature_store/jobs/job_pb2.py +3 -3
  253. frogml/_proto/qwak/feature_store/jobs/job_pb2.pyi +26 -14
  254. frogml/_proto/qwak/feature_store/jobs/job_service_pb2.py +3 -3
  255. frogml/_proto/qwak/feature_store/jobs/job_service_pb2.pyi +36 -25
  256. frogml/_proto/qwak/feature_store/jobs/v1/job_pb2.py +3 -3
  257. frogml/_proto/qwak/feature_store/jobs/v1/job_pb2.pyi +23 -12
  258. frogml/_proto/qwak/feature_store/jobs/v1/job_service_pb2.py +3 -3
  259. frogml/_proto/qwak/feature_store/jobs/v1/job_service_pb2.pyi +51 -30
  260. frogml/_proto/qwak/feature_store/platform/platform_details_pb2.py +3 -3
  261. frogml/_proto/qwak/feature_store/platform/platform_details_pb2.pyi +11 -11
  262. frogml/_proto/qwak/feature_store/reports/report_pb2.py +3 -3
  263. frogml/_proto/qwak/feature_store/reports/report_pb2.pyi +28 -18
  264. frogml/_proto/qwak/feature_store/repository/common/platform_pb2.py +3 -3
  265. frogml/_proto/qwak/feature_store/repository/common/platform_pb2.pyi +13 -12
  266. frogml/_proto/qwak/feature_store/serving/management_pb2.py +3 -3
  267. frogml/_proto/qwak/feature_store/serving/management_pb2.pyi +10 -10
  268. frogml/_proto/qwak/feature_store/serving/metadata_pb2.py +3 -3
  269. frogml/_proto/qwak/feature_store/serving/metadata_pb2.pyi +21 -15
  270. frogml/_proto/qwak/feature_store/serving/serving_pb2.py +13 -13
  271. frogml/_proto/qwak/feature_store/serving/serving_pb2.pyi +67 -37
  272. frogml/_proto/qwak/feature_store/serving/v1/value_pb2.py +3 -3
  273. frogml/_proto/qwak/feature_store/serving/v1/value_pb2.pyi +8 -10
  274. frogml/_proto/qwak/feature_store/sinks/sink_pb2.py +3 -3
  275. frogml/_proto/qwak/feature_store/sinks/sink_pb2.pyi +20 -16
  276. frogml/_proto/qwak/feature_store/sources/batch_pb2.py +83 -77
  277. frogml/_proto/qwak/feature_store/sources/batch_pb2.pyi +188 -62
  278. frogml/_proto/qwak/feature_store/sources/data_source_attribute_pb2.py +3 -3
  279. frogml/_proto/qwak/feature_store/sources/data_source_attribute_pb2.pyi +6 -8
  280. frogml/_proto/qwak/feature_store/sources/data_source_pb2.py +7 -7
  281. frogml/_proto/qwak/feature_store/sources/data_source_pb2.pyi +37 -30
  282. frogml/_proto/qwak/feature_store/sources/data_source_service_pb2.py +5 -5
  283. frogml/_proto/qwak/feature_store/sources/data_source_service_pb2.pyi +45 -25
  284. frogml/_proto/qwak/feature_store/sources/streaming_pb2.py +11 -11
  285. frogml/_proto/qwak/feature_store/sources/streaming_pb2.pyi +41 -21
  286. frogml/_proto/qwak/feature_store/v1/common/jfrog_artifact/jfrog_artifact_pb2.py +3 -3
  287. frogml/_proto/qwak/feature_store/v1/common/jfrog_artifact/jfrog_artifact_pb2.pyi +4 -7
  288. frogml/_proto/qwak/feature_store/v1/common/source_code/source_code_pb2.py +3 -3
  289. frogml/_proto/qwak/feature_store/v1/common/source_code/source_code_pb2.pyi +17 -17
  290. frogml/_proto/qwak/feature_store/v1/internal/data_source/data_source_service_pb2.py +5 -5
  291. frogml/_proto/qwak/feature_store/v1/internal/data_source/data_source_service_pb2.pyi +15 -13
  292. frogml/_proto/qwak/feature_store/v1/internal/featureset/featureset_token_service_pb2.py +3 -3
  293. frogml/_proto/qwak/feature_store/v1/internal/featureset/featureset_token_service_pb2.pyi +6 -8
  294. frogml/_proto/qwak/features_operator/v1/features_operator_pb2.py +3 -3
  295. frogml/_proto/qwak/features_operator/v1/features_operator_pb2.pyi +15 -11
  296. frogml/_proto/qwak/features_operator/v1/features_operator_service_pb2.py +3 -3
  297. frogml/_proto/qwak/features_operator/v1/features_operator_service_pb2.pyi +18 -16
  298. frogml/_proto/qwak/features_operator/v2/features_operator_pb2.py +3 -3
  299. frogml/_proto/qwak/features_operator/v2/features_operator_pb2.pyi +16 -11
  300. frogml/_proto/qwak/features_operator/v2/features_operator_service_pb2.py +3 -3
  301. frogml/_proto/qwak/features_operator/v2/features_operator_service_pb2.pyi +20 -19
  302. frogml/_proto/qwak/features_operator/v3/features_operator_async_service_pb2.py +3 -3
  303. frogml/_proto/qwak/features_operator/v3/features_operator_async_service_pb2.pyi +41 -34
  304. frogml/_proto/qwak/features_operator/v3/features_operator_pb2.py +3 -3
  305. frogml/_proto/qwak/features_operator/v3/features_operator_pb2.pyi +19 -13
  306. frogml/_proto/qwak/file_versioning/file_versioning_pb2.py +5 -5
  307. frogml/_proto/qwak/file_versioning/file_versioning_pb2.pyi +8 -5
  308. frogml/_proto/qwak/file_versioning/file_versioning_service_pb2.py +3 -3
  309. frogml/_proto/qwak/file_versioning/file_versioning_service_pb2.pyi +12 -11
  310. frogml/_proto/qwak/fitness_service/constructs_pb2.py +5 -5
  311. frogml/_proto/qwak/fitness_service/constructs_pb2.pyi +51 -16
  312. frogml/_proto/qwak/fitness_service/fitness_pb2.py +3 -3
  313. frogml/_proto/qwak/fitness_service/fitness_pb2.pyi +24 -18
  314. frogml/_proto/qwak/fitness_service/fitness_service_pb2.py +3 -3
  315. frogml/_proto/qwak/fitness_service/fitness_service_pb2.pyi +18 -13
  316. frogml/_proto/qwak/fitness_service/status_pb2.py +3 -3
  317. frogml/_proto/qwak/fitness_service/status_pb2.pyi +26 -16
  318. frogml/_proto/qwak/inference/feedback/feedback_pb2.py +3 -3
  319. frogml/_proto/qwak/inference/feedback/feedback_pb2.pyi +28 -15
  320. frogml/_proto/qwak/instance_template/instance_template_pb2.py +11 -11
  321. frogml/_proto/qwak/instance_template/instance_template_pb2.pyi +13 -7
  322. frogml/_proto/qwak/instance_template/instance_template_service_pb2.py +3 -3
  323. frogml/_proto/qwak/instance_template/instance_template_service_pb2.pyi +12 -12
  324. frogml/_proto/qwak/integration/hugging_face_integration_pb2.py +3 -3
  325. frogml/_proto/qwak/integration/hugging_face_integration_pb2.pyi +19 -17
  326. frogml/_proto/qwak/integration/integration_pb2.py +3 -3
  327. frogml/_proto/qwak/integration/integration_pb2.pyi +50 -32
  328. frogml/_proto/qwak/integration/integration_service_pb2.py +3 -3
  329. frogml/_proto/qwak/integration/integration_service_pb2.pyi +39 -23
  330. frogml/_proto/qwak/integration/open_a_i_integration_pb2.py +3 -3
  331. frogml/_proto/qwak/integration/open_a_i_integration_pb2.pyi +20 -17
  332. frogml/_proto/qwak/integration/opsgenie_integration_pb2.py +5 -5
  333. frogml/_proto/qwak/integration/opsgenie_integration_pb2.pyi +29 -16
  334. frogml/_proto/qwak/integration/pagerduty_integration_pb2.py +5 -5
  335. frogml/_proto/qwak/integration/pagerduty_integration_pb2.pyi +39 -26
  336. frogml/_proto/qwak/integration/slack_app_integration_pb2.py +5 -5
  337. frogml/_proto/qwak/integration/slack_app_integration_pb2.pyi +30 -20
  338. frogml/_proto/qwak/jfrog/gateway/v0/repository_pb2.py +3 -3
  339. frogml/_proto/qwak/jfrog/gateway/v0/repository_pb2.pyi +19 -16
  340. frogml/_proto/qwak/jfrog/gateway/v0/repository_service_pb2.py +3 -3
  341. frogml/_proto/qwak/jfrog/gateway/v0/repository_service_pb2.pyi +11 -11
  342. frogml/_proto/qwak/kube_deployment_captain/alert_pb2.py +5 -5
  343. frogml/_proto/qwak/kube_deployment_captain/alert_pb2.pyi +25 -15
  344. frogml/_proto/qwak/kube_deployment_captain/alerting_pb2.py +3 -3
  345. frogml/_proto/qwak/kube_deployment_captain/alerting_pb2.pyi +14 -12
  346. frogml/_proto/qwak/kube_deployment_captain/batch_job_pb2.py +67 -67
  347. frogml/_proto/qwak/kube_deployment_captain/batch_job_pb2.pyi +106 -59
  348. frogml/_proto/qwak/kube_deployment_captain/deployment_pb2.py +3 -3
  349. frogml/_proto/qwak/kube_deployment_captain/deployment_pb2.pyi +63 -40
  350. frogml/_proto/qwak/kube_deployment_captain/feature_set_deployment_pb2.py +7 -7
  351. frogml/_proto/qwak/kube_deployment_captain/feature_set_deployment_pb2.pyi +63 -39
  352. frogml/_proto/qwak/kube_deployment_captain/kube_deployment_captain_service_pb2.py +17 -17
  353. frogml/_proto/qwak/kube_deployment_captain/kube_deployment_captain_service_pb2.pyi +146 -72
  354. frogml/_proto/qwak/kube_deployment_captain/traffic_mapping_pb2.py +3 -3
  355. frogml/_proto/qwak/kube_deployment_captain/traffic_mapping_pb2.pyi +8 -10
  356. frogml/_proto/qwak/logging/log_filter_pb2.py +3 -3
  357. frogml/_proto/qwak/logging/log_filter_pb2.pyi +18 -13
  358. frogml/_proto/qwak/logging/log_line_pb2.py +5 -5
  359. frogml/_proto/qwak/logging/log_line_pb2.pyi +7 -8
  360. frogml/_proto/qwak/logging/log_reader_service_pb2.py +3 -3
  361. frogml/_proto/qwak/logging/log_reader_service_pb2.pyi +19 -18
  362. frogml/_proto/qwak/logging/log_source_pb2.py +3 -3
  363. frogml/_proto/qwak/logging/log_source_pb2.pyi +39 -29
  364. frogml/_proto/qwak/model_descriptor/open_ai_descriptor_pb2.py +3 -3
  365. frogml/_proto/qwak/model_descriptor/open_ai_descriptor_pb2.pyi +48 -44
  366. frogml/_proto/qwak/model_group/model_group_pb2.py +24 -16
  367. frogml/_proto/qwak/model_group/model_group_pb2.pyi +90 -12
  368. frogml/_proto/qwak/model_group/model_group_pb2_grpc.py +37 -0
  369. frogml/_proto/qwak/model_group/model_group_repository_details_pb2.py +3 -3
  370. frogml/_proto/qwak/model_group/model_group_repository_details_pb2.pyi +28 -18
  371. frogml/_proto/qwak/models/models_pb2.py +38 -28
  372. frogml/_proto/qwak/models/models_pb2.pyi +229 -84
  373. frogml/_proto/qwak/models/models_pb2_grpc.py +34 -0
  374. frogml/_proto/qwak/models/models_query_pb2.py +3 -3
  375. frogml/_proto/qwak/models/models_query_pb2.pyi +18 -13
  376. frogml/_proto/qwak/monitoring/v0/alerting_channel_management_service_pb2.py +3 -3
  377. frogml/_proto/qwak/monitoring/v0/alerting_channel_management_service_pb2.pyi +31 -18
  378. frogml/_proto/qwak/monitoring/v0/alerting_channel_pb2.py +3 -3
  379. frogml/_proto/qwak/monitoring/v0/alerting_channel_pb2.pyi +62 -28
  380. frogml/_proto/qwak/monitoring/v0/alerting_channel_sync_service_pb2.py +3 -3
  381. frogml/_proto/qwak/monitoring/v0/alerting_channel_sync_service_pb2.pyi +18 -14
  382. frogml/_proto/qwak/offline/serving/v1/feature_values_pb2.py +3 -3
  383. frogml/_proto/qwak/offline/serving/v1/feature_values_pb2.pyi +5 -7
  384. frogml/_proto/qwak/offline/serving/v1/offline_serving_async_service_pb2.py +3 -3
  385. frogml/_proto/qwak/offline/serving/v1/offline_serving_async_service_pb2.pyi +43 -23
  386. frogml/_proto/qwak/offline/serving/v1/options_pb2.py +3 -3
  387. frogml/_proto/qwak/offline/serving/v1/options_pb2.pyi +4 -7
  388. frogml/_proto/qwak/offline/serving/v1/population_pb2.py +3 -3
  389. frogml/_proto/qwak/offline/serving/v1/population_pb2.pyi +18 -15
  390. frogml/_proto/qwak/projects/jfrog_project_spec_pb2.py +3 -3
  391. frogml/_proto/qwak/projects/jfrog_project_spec_pb2.pyi +6 -9
  392. frogml/_proto/qwak/projects/projects_pb2.py +22 -20
  393. frogml/_proto/qwak/projects/projects_pb2.pyi +74 -36
  394. frogml/_proto/qwak/secret_service/secret_service_pb2.py +3 -3
  395. frogml/_proto/qwak/secret_service/secret_service_pb2.pyi +13 -11
  396. frogml/_proto/qwak/self_service/account/v0/account_membership_pb2.py +7 -7
  397. frogml/_proto/qwak/self_service/account/v0/account_membership_pb2.pyi +44 -22
  398. frogml/_proto/qwak/self_service/account/v0/account_membership_service_pb2.py +3 -3
  399. frogml/_proto/qwak/self_service/account/v0/account_membership_service_pb2.pyi +48 -24
  400. frogml/_proto/qwak/self_service/account/v0/account_status_pb2.py +5 -5
  401. frogml/_proto/qwak/self_service/account/v0/account_status_pb2.pyi +30 -23
  402. frogml/_proto/qwak/self_service/account/v0/managing_account_pb2.py +31 -25
  403. frogml/_proto/qwak/self_service/account/v0/managing_account_pb2.pyi +84 -22
  404. frogml/_proto/qwak/self_service/account/v0/managing_account_service_pb2.py +3 -3
  405. frogml/_proto/qwak/self_service/account/v0/managing_account_service_pb2.pyi +25 -16
  406. frogml/_proto/qwak/self_service/user/v1/api_key_pb2.py +3 -3
  407. frogml/_proto/qwak/self_service/user/v1/api_key_pb2.pyi +4 -7
  408. frogml/_proto/qwak/self_service/user/v1/user_pb2.py +3 -3
  409. frogml/_proto/qwak/self_service/user/v1/user_pb2.pyi +16 -16
  410. frogml/_proto/qwak/self_service/user/v1/user_service_pb2.py +5 -5
  411. frogml/_proto/qwak/self_service/user/v1/user_service_pb2.pyi +27 -14
  412. frogml/_proto/qwak/service_discovery/service_discovery_location_pb2.py +3 -3
  413. frogml/_proto/qwak/service_discovery/service_discovery_location_pb2.pyi +11 -11
  414. frogml/_proto/qwak/service_discovery/service_discovery_location_service_pb2.py +3 -3
  415. frogml/_proto/qwak/service_discovery/service_discovery_location_service_pb2.pyi +6 -8
  416. frogml/_proto/qwak/traffic/v1/traffic_api_pb2.py +3 -3
  417. frogml/_proto/qwak/traffic/v1/traffic_api_pb2.pyi +19 -14
  418. frogml/_proto/qwak/traffic/v1/traffic_pb2.py +3 -3
  419. frogml/_proto/qwak/traffic/v1/traffic_pb2.pyi +35 -22
  420. frogml/_proto/qwak/user_application/common/v0/resources_pb2.py +9 -9
  421. frogml/_proto/qwak/user_application/common/v0/resources_pb2.pyi +53 -19
  422. frogml/_proto/qwak/user_application/v0/user_application_pb2.py +7 -7
  423. frogml/_proto/qwak/user_application/v0/user_application_pb2.pyi +8 -5
  424. frogml/core/automations/batch_execution_action.py +4 -1
  425. frogml/core/clients/batch_job_management/client.py +1 -0
  426. frogml/core/clients/batch_job_management/executions_config.py +2 -0
  427. frogml/core/clients/build_orchestrator/build_model_request_getter.py +6 -2
  428. frogml/core/clients/build_orchestrator/client.py +56 -5
  429. frogml/core/clients/feature_store/management_client.py +159 -220
  430. frogml/core/clients/feature_store/operator_client.py +21 -2
  431. frogml/core/clients/jfrog_gateway/client.py +0 -20
  432. frogml/core/clients/model_group_management/client.py +20 -1
  433. frogml/core/exceptions/__init__.py +1 -0
  434. frogml/core/exceptions/frogml_grpc_address_exception.py +9 -0
  435. frogml/core/exceptions/frogml_token_exception.py +7 -0
  436. frogml/core/feature_store/_common/source_code_spec.py +60 -14
  437. frogml/core/feature_store/data_sources/attributes.py +5 -8
  438. frogml/core/feature_store/data_sources/source_authentication.py +5 -6
  439. frogml/core/feature_store/data_sources/time_partition_columns.py +28 -41
  440. frogml/core/feature_store/execution/backfill.py +17 -28
  441. frogml/core/feature_store/feature_sets/transformations/__init__.py +0 -2
  442. frogml/core/feature_store/feature_sets/transformations/transformations.py +0 -69
  443. frogml/core/feature_store/validations/validation_decorators.py +72 -0
  444. frogml/core/inner/build_config/build_config_v1.py +4 -5
  445. frogml/core/inner/build_logic/phases/phase_010_fetch_model/post_fetch_validation_step.py +10 -10
  446. frogml/core/inner/build_logic/phases/phase_020_remote_register_frogml_build/upload_step.py +92 -43
  447. frogml/core/inner/const.py +2 -0
  448. frogml/core/inner/di_configuration/__init__.py +1 -67
  449. frogml/core/inner/di_configuration/account.py +4 -5
  450. frogml/core/inner/di_configuration/containers.py +7 -0
  451. frogml/core/inner/di_configuration/dependency_wiring.py +95 -0
  452. frogml/core/inner/tool/auth/TOKEN_ROTATION.md +51 -0
  453. frogml/core/inner/tool/auth/__init__.py +3 -0
  454. frogml/core/inner/tool/auth/auth_client.py +192 -0
  455. frogml/core/inner/tool/auth/token_maintainer.py +119 -0
  456. frogml/core/inner/tool/grpc/grpc_auth.py +22 -23
  457. frogml/core/inner/tool/grpc/grpc_tools.py +126 -6
  458. frogml/core/inner/tool/grpc/grpc_try_wrapping.py +123 -5
  459. frogml/core/model_loggers/artifact_logger.py +5 -4
  460. frogml/core/utils/proto_utils.py +0 -40
  461. frogml/feature_store/_common/artifact_utils.py +10 -8
  462. frogml/feature_store/_common/packaging.py +40 -22
  463. frogml/feature_store/_common/source_code_spec_factory.py +59 -9
  464. frogml/feature_store/data_sources/__init__.py +2 -0
  465. frogml/feature_store/data_sources/base.py +20 -21
  466. frogml/feature_store/data_sources/batch/_batch.py +0 -3
  467. frogml/feature_store/data_sources/batch/_jdbc.py +6 -7
  468. frogml/feature_store/data_sources/batch/athena.py +6 -7
  469. frogml/feature_store/data_sources/batch/big_query.py +8 -5
  470. frogml/feature_store/data_sources/batch/clickhouse.py +8 -8
  471. frogml/feature_store/data_sources/batch/csv.py +2 -4
  472. frogml/feature_store/data_sources/batch/elastic_search.py +2 -4
  473. frogml/feature_store/data_sources/batch/filesystem/aws.py +21 -22
  474. frogml/feature_store/data_sources/batch/filesystem/base_config.py +3 -3
  475. frogml/feature_store/data_sources/batch/filesystem/gcp.py +3 -7
  476. frogml/feature_store/data_sources/batch/mongodb.py +2 -4
  477. frogml/feature_store/data_sources/batch/mysql.py +2 -3
  478. frogml/feature_store/data_sources/batch/parquet.py +6 -6
  479. frogml/feature_store/data_sources/batch/postgres.py +2 -3
  480. frogml/feature_store/data_sources/batch/redshift.py +8 -6
  481. frogml/feature_store/data_sources/batch/snowflake.py +17 -11
  482. frogml/feature_store/data_sources/batch/unity_catalog.py +113 -0
  483. frogml/feature_store/data_sources/batch/vertica.py +10 -6
  484. frogml/feature_store/data_sources/streaming/_streaming.py +0 -2
  485. frogml/feature_store/data_sources/streaming/kafka/authentication.py +13 -19
  486. frogml/feature_store/data_sources/streaming/kafka/deserialization.py +22 -23
  487. frogml/feature_store/data_sources/streaming/kafka/kafka.py +13 -14
  488. frogml/feature_store/feature_sets/base_feature_set.py +1 -0
  489. frogml/feature_store/online/client.py +20 -4
  490. frogml/feature_store/validations/validator.py +11 -3
  491. frogml/sdk/frogml_client/builds/build.py +8 -7
  492. frogml/sdk/frogml_client/client.py +3 -71
  493. frogml/sdk/model_version/__init__.py +0 -2
  494. frogml/sdk/model_version/catboost/__init__.py +3 -0
  495. frogml/sdk/model_version/files/__init__.py +4 -0
  496. frogml/sdk/model_version/huggingface/__init__.py +9 -3
  497. frogml/sdk/model_version/model_loggers/base_model_version_manager.py +5 -0
  498. frogml/sdk/model_version/onnx/__init__.py +3 -0
  499. frogml/sdk/model_version/pytorch/__init__.py +3 -0
  500. frogml/sdk/model_version/scikit_learn/__init__.py +3 -0
  501. frogml/sdk/model_version/utils/files_tools.py +2 -3
  502. frogml/sdk/model_version/utils/jml/customer_client.py +47 -14
  503. frogml/sdk/model_version/utils/model_log_config.py +5 -0
  504. frogml/sdk/model_version/utils/storage.py +57 -41
  505. frogml/storage/artifactory/_artifactory_api.py +6 -0
  506. frogml/storage/authentication/login/_login_cli.py +21 -21
  507. frogml/storage/authentication/models/_auth_config.py +22 -1
  508. frogml/storage/authentication/utils/_authentication_utils.py +31 -34
  509. frogml/storage/constants.py +19 -0
  510. frogml/storage/frog_ml.py +10 -20
  511. frogml/storage/models/frogml_dataset_version.py +3 -3
  512. frogml/storage/models/frogml_model_version.py +6 -3
  513. frogml/storage/utils/_input_checks_utility.py +3 -1
  514. {frogml-1.1.62.dist-info → frogml-1.2.19.dist-info}/METADATA +39 -9
  515. {frogml-1.1.62.dist-info → frogml-1.2.19.dist-info}/RECORD +525 -512
  516. frogml_services_mock/mocks/authentication_service.py +3 -3
  517. frogml_services_mock/mocks/build_orchestrator_service_api.py +5 -2
  518. frogml_services_mock/mocks/ecosystem_service_api.py +15 -3
  519. frogml_services_mock/mocks/feature_store_data_sources_manager_api.py +55 -14
  520. frogml_services_mock/mocks/feature_store_entities_manager_api.py +31 -30
  521. frogml_services_mock/mocks/features_operator_v3_service.py +20 -0
  522. frogml_services_mock/mocks/frogml_mocks.py +1 -1
  523. frogml_services_mock/mocks/project_manager_service.py +31 -56
  524. frogml_services_mock/services_mock.py +42 -35
  525. frogml/core/clients/project/__init__.py +0 -0
  526. frogml/core/clients/project/client.py +0 -72
  527. frogml/core/inner/tool/auth.py +0 -84
  528. frogml/sdk/frogml_client/projects/__init__.py +0 -0
  529. frogml/sdk/frogml_client/projects/project.py +0 -56
  530. {frogml-1.1.62.dist-info → frogml-1.2.19.dist-info}/WHEEL +0 -0
@@ -2,21 +2,18 @@
2
2
  @generated by mypy-protobuf. Do not edit manually!
3
3
  isort:skip_file
4
4
  """
5
+
5
6
  import builtins
6
7
  import collections.abc
7
8
  import google.protobuf.descriptor
8
9
  import google.protobuf.internal.containers
9
10
  import google.protobuf.message
10
11
  import frogml._proto.qwak.audience.v1.audience_pb2
11
- import sys
12
-
13
- if sys.version_info >= (3, 8):
14
- import typing as typing_extensions
15
- else:
16
- import typing_extensions
12
+ import typing
17
13
 
18
14
  DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
19
15
 
16
+ @typing.final
20
17
  class CreateAudienceRequest(google.protobuf.message.Message):
21
18
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
22
19
 
@@ -28,11 +25,12 @@ class CreateAudienceRequest(google.protobuf.message.Message):
28
25
  *,
29
26
  audience: frogml._proto.qwak.audience.v1.audience_pb2.Audience | None = ...,
30
27
  ) -> None: ...
31
- def HasField(self, field_name: typing_extensions.Literal["audience", b"audience"]) -> builtins.bool: ...
32
- def ClearField(self, field_name: typing_extensions.Literal["audience", b"audience"]) -> None: ...
28
+ def HasField(self, field_name: typing.Literal["audience", b"audience"]) -> builtins.bool: ...
29
+ def ClearField(self, field_name: typing.Literal["audience", b"audience"]) -> None: ...
33
30
 
34
31
  global___CreateAudienceRequest = CreateAudienceRequest
35
32
 
33
+ @typing.final
36
34
  class CreateAudienceResponse(google.protobuf.message.Message):
37
35
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
38
36
 
@@ -43,10 +41,11 @@ class CreateAudienceResponse(google.protobuf.message.Message):
43
41
  *,
44
42
  audience_id: builtins.str = ...,
45
43
  ) -> None: ...
46
- def ClearField(self, field_name: typing_extensions.Literal["audience_id", b"audience_id"]) -> None: ...
44
+ def ClearField(self, field_name: typing.Literal["audience_id", b"audience_id"]) -> None: ...
47
45
 
48
46
  global___CreateAudienceResponse = CreateAudienceResponse
49
47
 
48
+ @typing.final
50
49
  class UpdateAudienceRequest(google.protobuf.message.Message):
51
50
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
52
51
 
@@ -61,11 +60,12 @@ class UpdateAudienceRequest(google.protobuf.message.Message):
61
60
  id: builtins.str = ...,
62
61
  audience: frogml._proto.qwak.audience.v1.audience_pb2.Audience | None = ...,
63
62
  ) -> None: ...
64
- def HasField(self, field_name: typing_extensions.Literal["audience", b"audience"]) -> builtins.bool: ...
65
- def ClearField(self, field_name: typing_extensions.Literal["audience", b"audience", "id", b"id"]) -> None: ...
63
+ def HasField(self, field_name: typing.Literal["audience", b"audience"]) -> builtins.bool: ...
64
+ def ClearField(self, field_name: typing.Literal["audience", b"audience", "id", b"id"]) -> None: ...
66
65
 
67
66
  global___UpdateAudienceRequest = UpdateAudienceRequest
68
67
 
68
+ @typing.final
69
69
  class UpdateAudienceResponse(google.protobuf.message.Message):
70
70
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
71
71
 
@@ -75,6 +75,7 @@ class UpdateAudienceResponse(google.protobuf.message.Message):
75
75
 
76
76
  global___UpdateAudienceResponse = UpdateAudienceResponse
77
77
 
78
+ @typing.final
78
79
  class GetAudienceRequest(google.protobuf.message.Message):
79
80
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
80
81
 
@@ -85,10 +86,11 @@ class GetAudienceRequest(google.protobuf.message.Message):
85
86
  *,
86
87
  audience_id: builtins.str = ...,
87
88
  ) -> None: ...
88
- def ClearField(self, field_name: typing_extensions.Literal["audience_id", b"audience_id"]) -> None: ...
89
+ def ClearField(self, field_name: typing.Literal["audience_id", b"audience_id"]) -> None: ...
89
90
 
90
91
  global___GetAudienceRequest = GetAudienceRequest
91
92
 
93
+ @typing.final
92
94
  class GetAudienceResponse(google.protobuf.message.Message):
93
95
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
94
96
 
@@ -100,11 +102,12 @@ class GetAudienceResponse(google.protobuf.message.Message):
100
102
  *,
101
103
  audience: frogml._proto.qwak.audience.v1.audience_pb2.Audience | None = ...,
102
104
  ) -> None: ...
103
- def HasField(self, field_name: typing_extensions.Literal["audience", b"audience"]) -> builtins.bool: ...
104
- def ClearField(self, field_name: typing_extensions.Literal["audience", b"audience"]) -> None: ...
105
+ def HasField(self, field_name: typing.Literal["audience", b"audience"]) -> builtins.bool: ...
106
+ def ClearField(self, field_name: typing.Literal["audience", b"audience"]) -> None: ...
105
107
 
106
108
  global___GetAudienceResponse = GetAudienceResponse
107
109
 
110
+ @typing.final
108
111
  class ListAudienceRequest(google.protobuf.message.Message):
109
112
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
110
113
 
@@ -114,6 +117,7 @@ class ListAudienceRequest(google.protobuf.message.Message):
114
117
 
115
118
  global___ListAudienceRequest = ListAudienceRequest
116
119
 
120
+ @typing.final
117
121
  class ListAudienceResponse(google.protobuf.message.Message):
118
122
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
119
123
 
@@ -125,10 +129,11 @@ class ListAudienceResponse(google.protobuf.message.Message):
125
129
  *,
126
130
  audience_entries: collections.abc.Iterable[qwak.audience.v1.audience_pb2.AudienceEntry] | None = ...,
127
131
  ) -> None: ...
128
- def ClearField(self, field_name: typing_extensions.Literal["audience_entries", b"audience_entries"]) -> None: ...
132
+ def ClearField(self, field_name: typing.Literal["audience_entries", b"audience_entries"]) -> None: ...
129
133
 
130
134
  global___ListAudienceResponse = ListAudienceResponse
131
135
 
136
+ @typing.final
132
137
  class DeleteAudienceRequest(google.protobuf.message.Message):
133
138
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
134
139
 
@@ -139,10 +144,11 @@ class DeleteAudienceRequest(google.protobuf.message.Message):
139
144
  *,
140
145
  audience_id: builtins.str = ...,
141
146
  ) -> None: ...
142
- def ClearField(self, field_name: typing_extensions.Literal["audience_id", b"audience_id"]) -> None: ...
147
+ def ClearField(self, field_name: typing.Literal["audience_id", b"audience_id"]) -> None: ...
143
148
 
144
149
  global___DeleteAudienceRequest = DeleteAudienceRequest
145
150
 
151
+ @typing.final
146
152
  class DeleteAudienceResponse(google.protobuf.message.Message):
147
153
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
148
154
 
@@ -152,6 +158,7 @@ class DeleteAudienceResponse(google.protobuf.message.Message):
152
158
 
153
159
  global___DeleteAudienceResponse = DeleteAudienceResponse
154
160
 
161
+ @typing.final
155
162
  class SyncAudiencesRequest(google.protobuf.message.Message):
156
163
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
157
164
 
@@ -162,10 +169,11 @@ class SyncAudiencesRequest(google.protobuf.message.Message):
162
169
  *,
163
170
  environment_id: builtins.str = ...,
164
171
  ) -> None: ...
165
- def ClearField(self, field_name: typing_extensions.Literal["environment_id", b"environment_id"]) -> None: ...
172
+ def ClearField(self, field_name: typing.Literal["environment_id", b"environment_id"]) -> None: ...
166
173
 
167
174
  global___SyncAudiencesRequest = SyncAudiencesRequest
168
175
 
176
+ @typing.final
169
177
  class SyncAudiencesResponse(google.protobuf.message.Message):
170
178
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
171
179
 
@@ -1,6 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  # Generated by the protocol buffer compiler. DO NOT EDIT!
3
3
  # source: frogml._proto.qwak.audience/v1/audience.proto
4
+ # Protobuf Python Version: 4.25.1
4
5
  """Generated protocol buffer code."""
5
6
  from google.protobuf import descriptor as _descriptor
6
7
  from google.protobuf import descriptor_pool as _descriptor_pool
@@ -20,11 +21,10 @@ _globals = globals()
20
21
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
21
22
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'qwak.audience.v1.audience_pb2', _globals)
22
23
  if _descriptor._USE_C_DESCRIPTORS == False:
23
-
24
- DESCRIPTOR._options = None
25
- DESCRIPTOR._serialized_options = b'\n\024com.qwak.audience.v1B\rAudienceProtoP\001Z\031qwak/audience/v1;audience'
26
- _AUDIENCE_ENVIRONMENTROUTESENTRY._options = None
27
- _AUDIENCE_ENVIRONMENTROUTESENTRY._serialized_options = b'8\001'
24
+ _globals['DESCRIPTOR']._options = None
25
+ _globals['DESCRIPTOR']._serialized_options = b'\n\024com.qwak.audience.v1B\rAudienceProtoP\001Z\031qwak/audience/v1;audience'
26
+ _globals['_AUDIENCE_ENVIRONMENTROUTESENTRY']._options = None
27
+ _globals['_AUDIENCE_ENVIRONMENTROUTESENTRY']._serialized_options = b'8\001'
28
28
  _globals['_UNARYOPERATORTYPE']._serialized_start=1356
29
29
  _globals['_UNARYOPERATORTYPE']._serialized_end=1642
30
30
  _globals['_BINARYOPERATORTYPE']._serialized_start=1644
@@ -2,6 +2,7 @@
2
2
  @generated by mypy-protobuf. Do not edit manually!
3
3
  isort:skip_file
4
4
  """
5
+
5
6
  import builtins
6
7
  import collections.abc
7
8
  import google.protobuf.descriptor
@@ -23,7 +24,7 @@ class _UnaryOperatorType:
23
24
  ValueType = typing.NewType("ValueType", builtins.int)
24
25
  V: typing_extensions.TypeAlias = ValueType
25
26
 
26
- class _UnaryOperatorTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_UnaryOperatorType.ValueType], builtins.type): # noqa: F821
27
+ class _UnaryOperatorTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_UnaryOperatorType.ValueType], builtins.type):
27
28
  DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
28
29
  UNARY_OPERATOR_TYPE_INVALID: _UnaryOperatorType.ValueType # 0
29
30
  UNARY_OPERATOR_TYPE_EXACT_MATCH: _UnaryOperatorType.ValueType # 1
@@ -49,7 +50,7 @@ class _BinaryOperatorType:
49
50
  ValueType = typing.NewType("ValueType", builtins.int)
50
51
  V: typing_extensions.TypeAlias = ValueType
51
52
 
52
- class _BinaryOperatorTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_BinaryOperatorType.ValueType], builtins.type): # noqa: F821
53
+ class _BinaryOperatorTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_BinaryOperatorType.ValueType], builtins.type):
53
54
  DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
54
55
  BINARY_OPERATOR_TYPE_INVALID: _BinaryOperatorType.ValueType # 0
55
56
  BINARY_OPERATOR_TYPE_RANGE_MATCH: _BinaryOperatorType.ValueType # 1
@@ -61,6 +62,7 @@ BINARY_OPERATOR_TYPE_INVALID: BinaryOperatorType.ValueType # 0
61
62
  BINARY_OPERATOR_TYPE_RANGE_MATCH: BinaryOperatorType.ValueType # 1
62
63
  global___BinaryOperatorType = BinaryOperatorType
63
64
 
65
+ @typing.final
64
66
  class AudienceEntry(google.protobuf.message.Message):
65
67
  """Describe audience entry with ID its equivalent ID for CRUD operation"""
66
68
 
@@ -77,11 +79,12 @@ class AudienceEntry(google.protobuf.message.Message):
77
79
  id: builtins.str = ...,
78
80
  audience: global___Audience | None = ...,
79
81
  ) -> None: ...
80
- def HasField(self, field_name: typing_extensions.Literal["audience", b"audience"]) -> builtins.bool: ...
81
- def ClearField(self, field_name: typing_extensions.Literal["audience", b"audience", "id", b"id"]) -> None: ...
82
+ def HasField(self, field_name: typing.Literal["audience", b"audience"]) -> builtins.bool: ...
83
+ def ClearField(self, field_name: typing.Literal["audience", b"audience", "id", b"id"]) -> None: ...
82
84
 
83
85
  global___AudienceEntry = AudienceEntry
84
86
 
87
+ @typing.final
85
88
  class Audience(google.protobuf.message.Message):
86
89
  """Specifies Condition based route configuration, If all conditions evaluated to true prediction request will route to routes config.
87
90
  For example: Condition check if prediction request include an header key, value which value is exactly "hello" than route
@@ -90,6 +93,7 @@ class Audience(google.protobuf.message.Message):
90
93
 
91
94
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
92
95
 
96
+ @typing.final
93
97
  class EnvironmentRoutesEntry(google.protobuf.message.Message):
94
98
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
95
99
 
@@ -104,8 +108,8 @@ class Audience(google.protobuf.message.Message):
104
108
  key: builtins.str = ...,
105
109
  value: global___EnvironmentAudienceRoutes | None = ...,
106
110
  ) -> None: ...
107
- def HasField(self, field_name: typing_extensions.Literal["value", b"value"]) -> builtins.bool: ...
108
- def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...
111
+ def HasField(self, field_name: typing.Literal["value", b"value"]) -> builtins.bool: ...
112
+ def ClearField(self, field_name: typing.Literal["key", b"key", "value", b"value"]) -> None: ...
109
113
 
110
114
  NAME_FIELD_NUMBER: builtins.int
111
115
  DESCRIPTION_FIELD_NUMBER: builtins.int
@@ -120,25 +124,30 @@ class Audience(google.protobuf.message.Message):
120
124
  """Audience name"""
121
125
  description: builtins.str
122
126
  """Audience description"""
127
+ created_by: builtins.str
128
+ """Created by"""
129
+ modified_by: builtins.str
130
+ """Updated by"""
123
131
  @property
124
132
  def conditions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Condition]:
125
133
  """All conditions should evaluated to true"""
134
+
126
135
  @property
127
136
  def routes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Route]:
128
137
  """If all evaluated to true the prediction will the routes"""
138
+
129
139
  @property
130
140
  def created(self) -> google.protobuf.timestamp_pb2.Timestamp:
131
141
  """Create date"""
132
- created_by: builtins.str
133
- """Created by"""
142
+
134
143
  @property
135
144
  def modified(self) -> google.protobuf.timestamp_pb2.Timestamp:
136
145
  """Update date"""
137
- modified_by: builtins.str
138
- """Updated by"""
146
+
139
147
  @property
140
148
  def environment_routes(self) -> google.protobuf.internal.containers.MessageMap[builtins.str, global___EnvironmentAudienceRoutes]:
141
149
  """Routes by environment id"""
150
+
142
151
  def __init__(
143
152
  self,
144
153
  *,
@@ -152,11 +161,12 @@ class Audience(google.protobuf.message.Message):
152
161
  modified_by: builtins.str = ...,
153
162
  environment_routes: collections.abc.Mapping[builtins.str, global___EnvironmentAudienceRoutes] | None = ...,
154
163
  ) -> None: ...
155
- def HasField(self, field_name: typing_extensions.Literal["created", b"created", "modified", b"modified"]) -> builtins.bool: ...
156
- def ClearField(self, field_name: typing_extensions.Literal["conditions", b"conditions", "created", b"created", "created_by", b"created_by", "description", b"description", "environment_routes", b"environment_routes", "modified", b"modified", "modified_by", b"modified_by", "name", b"name", "routes", b"routes"]) -> None: ...
164
+ def HasField(self, field_name: typing.Literal["created", b"created", "modified", b"modified"]) -> builtins.bool: ...
165
+ def ClearField(self, field_name: typing.Literal["conditions", b"conditions", "created", b"created", "created_by", b"created_by", "description", b"description", "environment_routes", b"environment_routes", "modified", b"modified", "modified_by", b"modified_by", "name", b"name", "routes", b"routes"]) -> None: ...
157
166
 
158
167
  global___Audience = Audience
159
168
 
169
+ @typing.final
160
170
  class EnvironmentAudienceRoutes(google.protobuf.message.Message):
161
171
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
162
172
 
@@ -168,10 +178,11 @@ class EnvironmentAudienceRoutes(google.protobuf.message.Message):
168
178
  *,
169
179
  routes: collections.abc.Iterable[global___Route] | None = ...,
170
180
  ) -> None: ...
171
- def ClearField(self, field_name: typing_extensions.Literal["routes", b"routes"]) -> None: ...
181
+ def ClearField(self, field_name: typing.Literal["routes", b"routes"]) -> None: ...
172
182
 
173
183
  global___EnvironmentAudienceRoutes = EnvironmentAudienceRoutes
174
184
 
185
+ @typing.final
175
186
  class AudienceRoutesEntry(google.protobuf.message.Message):
176
187
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
177
188
 
@@ -181,9 +192,9 @@ class AudienceRoutesEntry(google.protobuf.message.Message):
181
192
  ORDER_FIELD_NUMBER: builtins.int
182
193
  audience_id: builtins.str
183
194
  audience_name: builtins.str
195
+ order: builtins.int
184
196
  @property
185
197
  def routes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Route]: ...
186
- order: builtins.int
187
198
  def __init__(
188
199
  self,
189
200
  *,
@@ -192,10 +203,11 @@ class AudienceRoutesEntry(google.protobuf.message.Message):
192
203
  routes: collections.abc.Iterable[global___Route] | None = ...,
193
204
  order: builtins.int = ...,
194
205
  ) -> None: ...
195
- def ClearField(self, field_name: typing_extensions.Literal["audience_id", b"audience_id", "audience_name", b"audience_name", "order", b"order", "routes", b"routes"]) -> None: ...
206
+ def ClearField(self, field_name: typing.Literal["audience_id", b"audience_id", "audience_name", b"audience_name", "order", b"order", "routes", b"routes"]) -> None: ...
196
207
 
197
208
  global___AudienceRoutesEntry = AudienceRoutesEntry
198
209
 
210
+ @typing.final
199
211
  class Condition(google.protobuf.message.Message):
200
212
  """Condition which applied on prediction request header"""
201
213
 
@@ -207,12 +219,12 @@ class Condition(google.protobuf.message.Message):
207
219
  INVERT_FIELD_NUMBER: builtins.int
208
220
  key: builtins.str
209
221
  """key to extract value for evaluation"""
222
+ invert: builtins.bool
223
+ """Condition evaluation should be inverted (For example False will be True)"""
210
224
  @property
211
225
  def binary_condition(self) -> global___BinaryCondition: ...
212
226
  @property
213
227
  def unary_condition(self) -> global___UnaryCondition: ...
214
- invert: builtins.bool
215
- """Condition evaluation should be inverted (For example False will be True)"""
216
228
  def __init__(
217
229
  self,
218
230
  *,
@@ -221,12 +233,13 @@ class Condition(google.protobuf.message.Message):
221
233
  unary_condition: global___UnaryCondition | None = ...,
222
234
  invert: builtins.bool = ...,
223
235
  ) -> None: ...
224
- def HasField(self, field_name: typing_extensions.Literal["binary_condition", b"binary_condition", "condition", b"condition", "unary_condition", b"unary_condition"]) -> builtins.bool: ...
225
- def ClearField(self, field_name: typing_extensions.Literal["binary_condition", b"binary_condition", "condition", b"condition", "invert", b"invert", "key", b"key", "unary_condition", b"unary_condition"]) -> None: ...
226
- def WhichOneof(self, oneof_group: typing_extensions.Literal["condition", b"condition"]) -> typing_extensions.Literal["binary_condition", "unary_condition"] | None: ...
236
+ def HasField(self, field_name: typing.Literal["binary_condition", b"binary_condition", "condition", b"condition", "unary_condition", b"unary_condition"]) -> builtins.bool: ...
237
+ def ClearField(self, field_name: typing.Literal["binary_condition", b"binary_condition", "condition", b"condition", "invert", b"invert", "key", b"key", "unary_condition", b"unary_condition"]) -> None: ...
238
+ def WhichOneof(self, oneof_group: typing.Literal["condition", b"condition"]) -> typing.Literal["binary_condition", "unary_condition"] | None: ...
227
239
 
228
240
  global___Condition = Condition
229
241
 
242
+ @typing.final
230
243
  class UnaryCondition(google.protobuf.message.Message):
231
244
  """Unary condition definition
232
245
  For example: unary_operator UnaryOperator.UNARY_OPERATOR_EXACT_MATCH with operand hello,
@@ -245,10 +258,11 @@ class UnaryCondition(google.protobuf.message.Message):
245
258
  operator: global___UnaryOperatorType.ValueType = ...,
246
259
  operand: builtins.str = ...,
247
260
  ) -> None: ...
248
- def ClearField(self, field_name: typing_extensions.Literal["operand", b"operand", "operator", b"operator"]) -> None: ...
261
+ def ClearField(self, field_name: typing.Literal["operand", b"operand", "operator", b"operator"]) -> None: ...
249
262
 
250
263
  global___UnaryCondition = UnaryCondition
251
264
 
265
+ @typing.final
252
266
  class BinaryCondition(google.protobuf.message.Message):
253
267
  """Binary condition definition
254
268
  For example: unary_operator BinaryOperatorType.BINARY_OPERATOR_TYPE_RANGE_MATCH with first_operand 1,
@@ -270,10 +284,11 @@ class BinaryCondition(google.protobuf.message.Message):
270
284
  first_operand: builtins.str = ...,
271
285
  second_operand: builtins.str = ...,
272
286
  ) -> None: ...
273
- def ClearField(self, field_name: typing_extensions.Literal["first_operand", b"first_operand", "operator", b"operator", "second_operand", b"second_operand"]) -> None: ...
287
+ def ClearField(self, field_name: typing.Literal["first_operand", b"first_operand", "operator", b"operator", "second_operand", b"second_operand"]) -> None: ...
274
288
 
275
289
  global___BinaryCondition = BinaryCondition
276
290
 
291
+ @typing.final
277
292
  class Route(google.protobuf.message.Message):
278
293
  """Route configuration to apply on specific variation if all conditions evaluated to true."""
279
294
 
@@ -308,6 +323,6 @@ class Route(google.protobuf.message.Message):
308
323
  audience_id: builtins.str = ...,
309
324
  request_timeout_ms: builtins.int = ...,
310
325
  ) -> None: ...
311
- def ClearField(self, field_name: typing_extensions.Literal["audience_id", b"audience_id", "environment_id", b"environment_id", "model_id", b"model_id", "request_timeout_ms", b"request_timeout_ms", "shadow", b"shadow", "variation_name", b"variation_name", "weight", b"weight"]) -> None: ...
326
+ def ClearField(self, field_name: typing.Literal["audience_id", b"audience_id", "environment_id", b"environment_id", "model_id", b"model_id", "request_timeout_ms", b"request_timeout_ms", "shadow", b"shadow", "variation_name", b"variation_name", "weight", b"weight"]) -> None: ...
312
327
 
313
328
  global___Route = Route
@@ -1,6 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  # Generated by the protocol buffer compiler. DO NOT EDIT!
3
3
  # source: frogml._proto.qwak.auto_scaling/v1/auto_scaling.proto
4
+ # Protobuf Python Version: 4.25.1
4
5
  """Generated protocol buffer code."""
5
6
  from google.protobuf import descriptor as _descriptor
6
7
  from google.protobuf import descriptor_pool as _descriptor_pool
@@ -19,9 +20,8 @@ _globals = globals()
19
20
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
20
21
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'qwak.auto_scaling.v1.auto_scaling_pb2', _globals)
21
22
  if _descriptor._USE_C_DESCRIPTORS == False:
22
-
23
- DESCRIPTOR._options = None
24
- DESCRIPTOR._serialized_options = b'\n%com.qwak.ai.management.deployment.apiP\001Z qwak/auto_scaling/v1;autoscaling'
23
+ _globals['DESCRIPTOR']._options = None
24
+ _globals['DESCRIPTOR']._serialized_options = b'\n%com.qwak.ai.management.deployment.apiP\001Z qwak/auto_scaling/v1;autoscaling'
25
25
  _globals['_METRICTYPE']._serialized_start=671
26
26
  _globals['_METRICTYPE']._serialized_end=857
27
27
  _globals['_AGGREGATIONTYPE']._serialized_start=860
@@ -2,6 +2,7 @@
2
2
  @generated by mypy-protobuf. Do not edit manually!
3
3
  isort:skip_file
4
4
  """
5
+
5
6
  import builtins
6
7
  import collections.abc
7
8
  import google.protobuf.descriptor
@@ -22,7 +23,7 @@ class _MetricType:
22
23
  ValueType = typing.NewType("ValueType", builtins.int)
23
24
  V: typing_extensions.TypeAlias = ValueType
24
25
 
25
- class _MetricTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_MetricType.ValueType], builtins.type): # noqa: F821
26
+ class _MetricTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_MetricType.ValueType], builtins.type):
26
27
  DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
27
28
  METRIC_TYPE_NOT_VALID: _MetricType.ValueType # 0
28
29
  METRIC_TYPE_CPU: _MetricType.ValueType # 1
@@ -47,7 +48,7 @@ class _AggregationType:
47
48
  ValueType = typing.NewType("ValueType", builtins.int)
48
49
  V: typing_extensions.TypeAlias = ValueType
49
50
 
50
- class _AggregationTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_AggregationType.ValueType], builtins.type): # noqa: F821
51
+ class _AggregationTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_AggregationType.ValueType], builtins.type):
51
52
  DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
52
53
  AGGREGATION_TYPE_NOT_VALID: _AggregationType.ValueType # 0
53
54
  AGGREGATION_TYPE_MIN: _AggregationType.ValueType # 1
@@ -72,6 +73,7 @@ AGGREGATION_TYPE_P95: AggregationType.ValueType # 7
72
73
  AGGREGATION_TYPE_P99: AggregationType.ValueType # 8
73
74
  global___AggregationType = AggregationType
74
75
 
76
+ @typing.final
75
77
  class AutoScalingConfig(google.protobuf.message.Message):
76
78
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
77
79
 
@@ -99,11 +101,12 @@ class AutoScalingConfig(google.protobuf.message.Message):
99
101
  cool_down_period: builtins.int = ...,
100
102
  triggers: global___Triggers | None = ...,
101
103
  ) -> None: ...
102
- def HasField(self, field_name: typing_extensions.Literal["triggers", b"triggers"]) -> builtins.bool: ...
103
- def ClearField(self, field_name: typing_extensions.Literal["cool_down_period", b"cool_down_period", "max_replica_count", b"max_replica_count", "min_replica_count", b"min_replica_count", "polling_interval", b"polling_interval", "triggers", b"triggers"]) -> None: ...
104
+ def HasField(self, field_name: typing.Literal["triggers", b"triggers"]) -> builtins.bool: ...
105
+ def ClearField(self, field_name: typing.Literal["cool_down_period", b"cool_down_period", "max_replica_count", b"max_replica_count", "min_replica_count", b"min_replica_count", "polling_interval", b"polling_interval", "triggers", b"triggers"]) -> None: ...
104
106
 
105
107
  global___AutoScalingConfig = AutoScalingConfig
106
108
 
109
+ @typing.final
107
110
  class Triggers(google.protobuf.message.Message):
108
111
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
109
112
 
@@ -111,15 +114,17 @@ class Triggers(google.protobuf.message.Message):
111
114
  @property
112
115
  def triggers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Trigger]:
113
116
  """List of triggers to activate scaling(up/down) of the target resource based on"""
117
+
114
118
  def __init__(
115
119
  self,
116
120
  *,
117
121
  triggers: collections.abc.Iterable[global___Trigger] | None = ...,
118
122
  ) -> None: ...
119
- def ClearField(self, field_name: typing_extensions.Literal["triggers", b"triggers"]) -> None: ...
123
+ def ClearField(self, field_name: typing.Literal["triggers", b"triggers"]) -> None: ...
120
124
 
121
125
  global___Triggers = Triggers
122
126
 
127
+ @typing.final
123
128
  class Trigger(google.protobuf.message.Message):
124
129
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
125
130
 
@@ -127,38 +132,42 @@ class Trigger(google.protobuf.message.Message):
127
132
  @property
128
133
  def prometheus_trigger(self) -> global___PrometheusTrigger:
129
134
  """Prometheus trigger type"""
135
+
130
136
  def __init__(
131
137
  self,
132
138
  *,
133
139
  prometheus_trigger: global___PrometheusTrigger | None = ...,
134
140
  ) -> None: ...
135
- def HasField(self, field_name: typing_extensions.Literal["prometheus_trigger", b"prometheus_trigger", "trigger_type", b"trigger_type"]) -> builtins.bool: ...
136
- def ClearField(self, field_name: typing_extensions.Literal["prometheus_trigger", b"prometheus_trigger", "trigger_type", b"trigger_type"]) -> None: ...
137
- def WhichOneof(self, oneof_group: typing_extensions.Literal["trigger_type", b"trigger_type"]) -> typing_extensions.Literal["prometheus_trigger"] | None: ...
141
+ def HasField(self, field_name: typing.Literal["prometheus_trigger", b"prometheus_trigger", "trigger_type", b"trigger_type"]) -> builtins.bool: ...
142
+ def ClearField(self, field_name: typing.Literal["prometheus_trigger", b"prometheus_trigger", "trigger_type", b"trigger_type"]) -> None: ...
143
+ def WhichOneof(self, oneof_group: typing.Literal["trigger_type", b"trigger_type"]) -> typing.Literal["prometheus_trigger"] | None: ...
138
144
 
139
145
  global___Trigger = Trigger
140
146
 
147
+ @typing.final
141
148
  class PrometheusTrigger(google.protobuf.message.Message):
142
149
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
143
150
 
144
151
  QUERY_SPEC_FIELD_NUMBER: builtins.int
145
152
  THRESHOLD_FIELD_NUMBER: builtins.int
153
+ threshold: builtins.int
154
+ """Value to start scaling for"""
146
155
  @property
147
156
  def query_spec(self) -> global___QuerySpec:
148
157
  """Query specification"""
149
- threshold: builtins.int
150
- """Value to start scaling for"""
158
+
151
159
  def __init__(
152
160
  self,
153
161
  *,
154
162
  query_spec: global___QuerySpec | None = ...,
155
163
  threshold: builtins.int = ...,
156
164
  ) -> None: ...
157
- def HasField(self, field_name: typing_extensions.Literal["query_spec", b"query_spec"]) -> builtins.bool: ...
158
- def ClearField(self, field_name: typing_extensions.Literal["query_spec", b"query_spec", "threshold", b"threshold"]) -> None: ...
165
+ def HasField(self, field_name: typing.Literal["query_spec", b"query_spec"]) -> builtins.bool: ...
166
+ def ClearField(self, field_name: typing.Literal["query_spec", b"query_spec", "threshold", b"threshold"]) -> None: ...
159
167
 
160
168
  global___PrometheusTrigger = PrometheusTrigger
161
169
 
170
+ @typing.final
162
171
  class QuerySpec(google.protobuf.message.Message):
163
172
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
164
173
 
@@ -182,6 +191,6 @@ class QuerySpec(google.protobuf.message.Message):
182
191
  time_period: builtins.int = ...,
183
192
  error_code: builtins.str = ...,
184
193
  ) -> None: ...
185
- def ClearField(self, field_name: typing_extensions.Literal["aggregation_type", b"aggregation_type", "error_code", b"error_code", "metric_type", b"metric_type", "time_period", b"time_period"]) -> None: ...
194
+ def ClearField(self, field_name: typing.Literal["aggregation_type", b"aggregation_type", "error_code", b"error_code", "metric_type", b"metric_type", "time_period", b"time_period"]) -> None: ...
186
195
 
187
196
  global___QuerySpec = QuerySpec
@@ -1,6 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  # Generated by the protocol buffer compiler. DO NOT EDIT!
3
3
  # source: frogml._proto.qwak.auto_scaling/v1/auto_scaling_service.proto
4
+ # Protobuf Python Version: 4.25.1
4
5
  """Generated protocol buffer code."""
5
6
  from google.protobuf import descriptor as _descriptor
6
7
  from google.protobuf import descriptor_pool as _descriptor_pool
@@ -20,9 +21,8 @@ _globals = globals()
20
21
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
21
22
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'qwak.auto_scaling.v1.auto_scaling_service_pb2', _globals)
22
23
  if _descriptor._USE_C_DESCRIPTORS == False:
23
-
24
- DESCRIPTOR._options = None
25
- DESCRIPTOR._serialized_options = b'\n%com.qwak.ai.management.deployment.apiP\001Z qwak/auto_scaling/v1;autoscaling'
24
+ _globals['DESCRIPTOR']._options = None
25
+ _globals['DESCRIPTOR']._serialized_options = b'\n%com.qwak.ai.management.deployment.apiP\001Z qwak/auto_scaling/v1;autoscaling'
26
26
  _globals['_ATTACHAUTOSCALINGREQUEST']._serialized_start=115
27
27
  _globals['_ATTACHAUTOSCALINGREQUEST']._serialized_end=253
28
28
  _globals['_ATTACHAUTOSCALINGRESPONSE']._serialized_start=255
@@ -2,19 +2,16 @@
2
2
  @generated by mypy-protobuf. Do not edit manually!
3
3
  isort:skip_file
4
4
  """
5
+
5
6
  import builtins
6
7
  import google.protobuf.descriptor
7
8
  import google.protobuf.message
8
9
  import frogml._proto.qwak.auto_scaling.v1.auto_scaling_pb2
9
- import sys
10
-
11
- if sys.version_info >= (3, 8):
12
- import typing as typing_extensions
13
- else:
14
- import typing_extensions
10
+ import typing
15
11
 
16
12
  DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
17
13
 
14
+ @typing.final
18
15
  class AttachAutoScalingRequest(google.protobuf.message.Message):
19
16
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
20
17
 
@@ -28,6 +25,7 @@ class AttachAutoScalingRequest(google.protobuf.message.Message):
28
25
  @property
29
26
  def auto_scaling_config(self) -> frogml._proto.qwak.auto_scaling.v1.auto_scaling_pb2.AutoScalingConfig:
30
27
  """Auto scaling"""
28
+
31
29
  def __init__(
32
30
  self,
33
31
  *,
@@ -35,11 +33,12 @@ class AttachAutoScalingRequest(google.protobuf.message.Message):
35
33
  variation_name: builtins.str = ...,
36
34
  auto_scaling_config: frogml._proto.qwak.auto_scaling.v1.auto_scaling_pb2.AutoScalingConfig | None = ...,
37
35
  ) -> None: ...
38
- def HasField(self, field_name: typing_extensions.Literal["auto_scaling_config", b"auto_scaling_config"]) -> builtins.bool: ...
39
- def ClearField(self, field_name: typing_extensions.Literal["auto_scaling_config", b"auto_scaling_config", "model_id", b"model_id", "variation_name", b"variation_name"]) -> None: ...
36
+ def HasField(self, field_name: typing.Literal["auto_scaling_config", b"auto_scaling_config"]) -> builtins.bool: ...
37
+ def ClearField(self, field_name: typing.Literal["auto_scaling_config", b"auto_scaling_config", "model_id", b"model_id", "variation_name", b"variation_name"]) -> None: ...
40
38
 
41
39
  global___AttachAutoScalingRequest = AttachAutoScalingRequest
42
40
 
41
+ @typing.final
43
42
  class AttachAutoScalingResponse(google.protobuf.message.Message):
44
43
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
45
44
 
@@ -50,6 +49,6 @@ class AttachAutoScalingResponse(google.protobuf.message.Message):
50
49
  *,
51
50
  auto_scaling_id: builtins.str = ...,
52
51
  ) -> None: ...
53
- def ClearField(self, field_name: typing_extensions.Literal["auto_scaling_id", b"auto_scaling_id"]) -> None: ...
52
+ def ClearField(self, field_name: typing.Literal["auto_scaling_id", b"auto_scaling_id"]) -> None: ...
54
53
 
55
54
  global___AttachAutoScalingResponse = AttachAutoScalingResponse