sunholo 0.66.4__tar.gz → 0.66.7__tar.gz

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 (123) hide show
  1. {sunholo-0.66.4 → sunholo-0.66.7}/PKG-INFO +5 -6
  2. {sunholo-0.66.4 → sunholo-0.66.7}/setup.py +5 -5
  3. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/agents/swagger.py +13 -7
  4. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/gcs/add_file.py +5 -4
  5. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo.egg-info/PKG-INFO +5 -6
  6. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo.egg-info/requires.txt +3 -4
  7. {sunholo-0.66.4 → sunholo-0.66.7}/LICENSE.txt +0 -0
  8. {sunholo-0.66.4 → sunholo-0.66.7}/MANIFEST.in +0 -0
  9. {sunholo-0.66.4 → sunholo-0.66.7}/README.md +0 -0
  10. {sunholo-0.66.4 → sunholo-0.66.7}/setup.cfg +0 -0
  11. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/__init__.py +0 -0
  12. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/agents/__init__.py +0 -0
  13. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/agents/chat_history.py +0 -0
  14. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/agents/dispatch_to_qa.py +0 -0
  15. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/agents/fastapi/__init__.py +0 -0
  16. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/agents/fastapi/base.py +0 -0
  17. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/agents/fastapi/qna_routes.py +0 -0
  18. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/agents/flask/__init__.py +0 -0
  19. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/agents/flask/base.py +0 -0
  20. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/agents/flask/qna_routes.py +0 -0
  21. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/agents/langserve.py +0 -0
  22. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/agents/pubsub.py +0 -0
  23. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/agents/route.py +0 -0
  24. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/agents/special_commands.py +0 -0
  25. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/archive/__init__.py +0 -0
  26. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/archive/archive.py +0 -0
  27. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/auth/__init__.py +0 -0
  28. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/auth/run.py +0 -0
  29. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/bots/__init__.py +0 -0
  30. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/bots/discord.py +0 -0
  31. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/bots/github_webhook.py +0 -0
  32. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/bots/webapp.py +0 -0
  33. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/chunker/__init__.py +0 -0
  34. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/chunker/data_to_embed_pubsub.py +0 -0
  35. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/chunker/doc_handling.py +0 -0
  36. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/chunker/images.py +0 -0
  37. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/chunker/loaders.py +0 -0
  38. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/chunker/message_data.py +0 -0
  39. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/chunker/pdfs.py +0 -0
  40. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/chunker/publish.py +0 -0
  41. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/chunker/splitter.py +0 -0
  42. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/cli/__init__.py +0 -0
  43. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/cli/chat_vac.py +0 -0
  44. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/cli/cli.py +0 -0
  45. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/cli/cli_init.py +0 -0
  46. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/cli/configs.py +0 -0
  47. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/cli/deploy.py +0 -0
  48. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/cli/embedder.py +0 -0
  49. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/cli/merge_texts.py +0 -0
  50. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/cli/run_proxy.py +0 -0
  51. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/cli/sun_rich.py +0 -0
  52. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/cli/swagger.py +0 -0
  53. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/components/__init__.py +0 -0
  54. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/components/llm.py +0 -0
  55. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/components/retriever.py +0 -0
  56. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/components/vectorstore.py +0 -0
  57. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/database/__init__.py +0 -0
  58. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/database/alloydb.py +0 -0
  59. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/database/database.py +0 -0
  60. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/database/lancedb.py +0 -0
  61. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/database/sql/sb/create_function.sql +0 -0
  62. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/database/sql/sb/create_function_time.sql +0 -0
  63. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/database/sql/sb/create_table.sql +0 -0
  64. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/database/sql/sb/delete_source_row.sql +0 -0
  65. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/database/sql/sb/return_sources.sql +0 -0
  66. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/database/sql/sb/setup.sql +0 -0
  67. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/database/static_dbs.py +0 -0
  68. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/database/uuid.py +0 -0
  69. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/embedder/__init__.py +0 -0
  70. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/embedder/embed_chunk.py +0 -0
  71. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/gcs/__init__.py +0 -0
  72. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/gcs/download_url.py +0 -0
  73. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/gcs/metadata.py +0 -0
  74. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/langfuse/__init__.py +0 -0
  75. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/langfuse/callback.py +0 -0
  76. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/langfuse/prompts.py +0 -0
  77. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/llamaindex/__init__.py +0 -0
  78. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/llamaindex/generate.py +0 -0
  79. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/llamaindex/get_files.py +0 -0
  80. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/llamaindex/import_files.py +0 -0
  81. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/logging.py +0 -0
  82. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/lookup/__init__.py +0 -0
  83. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/lookup/model_lookup.yaml +0 -0
  84. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/patches/__init__.py +0 -0
  85. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/patches/langchain/__init__.py +0 -0
  86. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/patches/langchain/lancedb.py +0 -0
  87. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/patches/langchain/vertexai.py +0 -0
  88. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/pubsub/__init__.py +0 -0
  89. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/pubsub/process_pubsub.py +0 -0
  90. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/pubsub/pubsub_manager.py +0 -0
  91. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/qna/__init__.py +0 -0
  92. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/qna/parsers.py +0 -0
  93. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/qna/retry.py +0 -0
  94. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/streaming/__init__.py +0 -0
  95. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/streaming/content_buffer.py +0 -0
  96. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/streaming/langserve.py +0 -0
  97. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/streaming/stream_lookup.py +0 -0
  98. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/streaming/streaming.py +0 -0
  99. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/summarise/__init__.py +0 -0
  100. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/summarise/summarise.py +0 -0
  101. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/utils/__init__.py +0 -0
  102. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/utils/big_context.py +0 -0
  103. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/utils/config.py +0 -0
  104. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/utils/config_schema.py +0 -0
  105. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/utils/gcp.py +0 -0
  106. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/utils/gcp_project.py +0 -0
  107. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/utils/parsers.py +0 -0
  108. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/utils/timedelta.py +0 -0
  109. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/utils/user_ids.py +0 -0
  110. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/utils/version.py +0 -0
  111. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/vertex/__init__.py +0 -0
  112. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/vertex/init.py +0 -0
  113. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/vertex/memory_tools.py +0 -0
  114. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo/vertex/safety.py +0 -0
  115. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo.egg-info/SOURCES.txt +0 -0
  116. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo.egg-info/dependency_links.txt +0 -0
  117. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo.egg-info/entry_points.txt +0 -0
  118. {sunholo-0.66.4 → sunholo-0.66.7}/sunholo.egg-info/top_level.txt +0 -0
  119. {sunholo-0.66.4 → sunholo-0.66.7}/tests/test_chat_history.py +0 -0
  120. {sunholo-0.66.4 → sunholo-0.66.7}/tests/test_chunker.py +0 -0
  121. {sunholo-0.66.4 → sunholo-0.66.7}/tests/test_config.py +0 -0
  122. {sunholo-0.66.4 → sunholo-0.66.7}/tests/test_dispatch_to_qa.py +0 -0
  123. {sunholo-0.66.4 → sunholo-0.66.7}/tests/test_swagger.py +0 -0
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sunholo
3
- Version: 0.66.4
3
+ Version: 0.66.7
4
4
  Summary: Large Language Model DevOps - a package to help deploy LLMs to the Cloud.
5
5
  Home-page: https://github.com/sunholo-data/sunholo-py
6
- Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.66.4.tar.gz
6
+ Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.66.7.tar.gz
7
7
  Author: Holosun ApS
8
8
  Author-email: multivac@sunholo.com
9
9
  License: Apache License, Version 2.0
@@ -19,9 +19,8 @@ Classifier: Programming Language :: Python :: 3.12
19
19
  Description-Content-Type: text/markdown
20
20
  License-File: LICENSE.txt
21
21
  Requires-Dist: google-auth
22
- Requires-Dist: tenacity==8.3.0
23
22
  Requires-Dist: ruamel.yaml
24
- Requires-Dist: langchain
23
+ Requires-Dist: langchain>=0.2.5
25
24
  Requires-Dist: langchain_experimental
26
25
  Requires-Dist: langchain-community
27
26
  Provides-Extra: all
@@ -36,7 +35,7 @@ Requires-Dist: google-api-python-client; extra == "all"
36
35
  Requires-Dist: google-cloud-alloydb-connector[pg8000]; extra == "all"
37
36
  Requires-Dist: google-cloud-bigquery; extra == "all"
38
37
  Requires-Dist: google-cloud-build; extra == "all"
39
- Requires-Dist: google-cloud-endpoints; extra == "all"
38
+ Requires-Dist: google-cloud-service-control; extra == "all"
40
39
  Requires-Dist: google-cloud-logging; extra == "all"
41
40
  Requires-Dist: google-cloud-storage; extra == "all"
42
41
  Requires-Dist: google-cloud-pubsub; extra == "all"
@@ -85,7 +84,7 @@ Requires-Dist: google-auth-oauthlib; extra == "gcp"
85
84
  Requires-Dist: google-cloud-aiplatform; extra == "gcp"
86
85
  Requires-Dist: google-cloud-bigquery; extra == "gcp"
87
86
  Requires-Dist: google-cloud-build; extra == "gcp"
88
- Requires-Dist: google-cloud-endpoints; extra == "gcp"
87
+ Requires-Dist: google-cloud-service-control; extra == "gcp"
89
88
  Requires-Dist: google-cloud-storage; extra == "gcp"
90
89
  Requires-Dist: google-cloud-logging; extra == "gcp"
91
90
  Requires-Dist: google-cloud-pubsub; extra == "gcp"
@@ -1,7 +1,7 @@
1
1
  from setuptools import setup, find_packages
2
2
 
3
3
  # Define your base version
4
- version = '0.66.4'
4
+ version = '0.66.7'
5
5
 
6
6
  setup(
7
7
  name='sunholo',
@@ -29,9 +29,9 @@ setup(
29
29
  install_requires=[
30
30
  # Base dependencies
31
31
  "google-auth", # to check if on gcp
32
- "tenacity==8.3.0", #TODO: remove soon
32
+ #"tenacity==8.3.0", #TODO: remove soon
33
33
  "ruamel.yaml",
34
- "langchain",
34
+ "langchain>=0.2.5",
35
35
  "langchain_experimental",
36
36
  "langchain-community",
37
37
  # Add the minimal dependencies that your package requires here
@@ -50,7 +50,7 @@ setup(
50
50
  "google-cloud-alloydb-connector[pg8000]",
51
51
  "google-cloud-bigquery",
52
52
  "google-cloud-build",
53
- "google-cloud-endpoints",
53
+ "google-cloud-service-control",
54
54
  "google-cloud-logging",
55
55
  "google-cloud-storage",
56
56
  "google-cloud-pubsub",
@@ -104,7 +104,7 @@ setup(
104
104
  "google-cloud-aiplatform",
105
105
  "google-cloud-bigquery",
106
106
  "google-cloud-build",
107
- "google-cloud-endpoints",
107
+ "google-cloud-service-control",
108
108
  "google-cloud-storage",
109
109
  "google-cloud-logging",
110
110
  "google-cloud-pubsub",
@@ -7,28 +7,34 @@ from io import StringIO
7
7
  # check it here:
8
8
  # https://editor.swagger.io/
9
9
  from functools import lru_cache
10
+ import uuid
10
11
 
11
12
  try:
12
- from google.cloud import endpoints_v1
13
+ from google.cloud import servicecontrol_v1
13
14
  except ImportError:
14
- endpoints_v1 = None
15
+ servicecontrol_v1 = None
15
16
 
16
17
  def validate_api_key(api_key: str, service_name: str) -> bool:
17
18
  """
18
19
  Validate an API key against the service name e.g. 'endpoints-xxxx.a.run.app'
19
20
  """
20
- if not endpoints_v1:
21
- raise ImportError("Cloud Endpoints API key validation is required, install via `pip install google-cloud-endpoints`")
21
+ if not servicecontrol_v1:
22
+ raise ImportError("Cloud Endpoints API key validation is required, install via `pip install sunholo[gcp]`")
22
23
 
23
24
  return _validate_api_key_cached(api_key, service_name)
24
25
 
26
+
25
27
  @lru_cache(maxsize=1024)
26
28
  def _validate_api_key_cached(api_key: str, service_name: str) -> bool:
27
- client = endpoints_v1.ServiceControlServiceClient()
28
- response = client.check(
29
+ client = servicecontrol_v1.ServiceControllerClient()
30
+ request = servicecontrol_v1.CheckRequest(
29
31
  service_name=service_name,
30
- operation={'consumer_id': f'api_key:{api_key}'}
32
+ operation=servicecontrol_v1.Operation(
33
+ operation_id=str(uuid.uuid4()),
34
+ consumer_id=f'api_key:{api_key}',
35
+ )
31
36
  )
37
+ response = client.check(request=request)
32
38
 
33
39
  return response.check_errors is None
34
40
 
@@ -51,10 +51,11 @@ def add_file_to_gcs(filename: str, vector_name:str, bucket_name: str=None, metad
51
51
  log.error(f"Error creating storage client: {str(err)}")
52
52
  return None
53
53
 
54
- bucket_config = load_config_key("upload", vector_name, "vacConfig")
55
- if bucket_config:
56
- if bucket_config.get("buckets"):
57
- bucket_name = bucket_config.get("buckets").get("all")
54
+ if bucket_name is None:
55
+ bucket_config = load_config_key("upload", vector_name, "vacConfig")
56
+ if bucket_config:
57
+ if bucket_config.get("buckets"):
58
+ bucket_name = bucket_config.get("buckets").get("all")
58
59
 
59
60
  bucket_name = bucket_name if bucket_name else os.getenv('GCS_BUCKET', None)
60
61
  if bucket_name is None:
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sunholo
3
- Version: 0.66.4
3
+ Version: 0.66.7
4
4
  Summary: Large Language Model DevOps - a package to help deploy LLMs to the Cloud.
5
5
  Home-page: https://github.com/sunholo-data/sunholo-py
6
- Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.66.4.tar.gz
6
+ Download-URL: https://github.com/sunholo-data/sunholo-py/archive/refs/tags/v0.66.7.tar.gz
7
7
  Author: Holosun ApS
8
8
  Author-email: multivac@sunholo.com
9
9
  License: Apache License, Version 2.0
@@ -19,9 +19,8 @@ Classifier: Programming Language :: Python :: 3.12
19
19
  Description-Content-Type: text/markdown
20
20
  License-File: LICENSE.txt
21
21
  Requires-Dist: google-auth
22
- Requires-Dist: tenacity==8.3.0
23
22
  Requires-Dist: ruamel.yaml
24
- Requires-Dist: langchain
23
+ Requires-Dist: langchain>=0.2.5
25
24
  Requires-Dist: langchain_experimental
26
25
  Requires-Dist: langchain-community
27
26
  Provides-Extra: all
@@ -36,7 +35,7 @@ Requires-Dist: google-api-python-client; extra == "all"
36
35
  Requires-Dist: google-cloud-alloydb-connector[pg8000]; extra == "all"
37
36
  Requires-Dist: google-cloud-bigquery; extra == "all"
38
37
  Requires-Dist: google-cloud-build; extra == "all"
39
- Requires-Dist: google-cloud-endpoints; extra == "all"
38
+ Requires-Dist: google-cloud-service-control; extra == "all"
40
39
  Requires-Dist: google-cloud-logging; extra == "all"
41
40
  Requires-Dist: google-cloud-storage; extra == "all"
42
41
  Requires-Dist: google-cloud-pubsub; extra == "all"
@@ -85,7 +84,7 @@ Requires-Dist: google-auth-oauthlib; extra == "gcp"
85
84
  Requires-Dist: google-cloud-aiplatform; extra == "gcp"
86
85
  Requires-Dist: google-cloud-bigquery; extra == "gcp"
87
86
  Requires-Dist: google-cloud-build; extra == "gcp"
88
- Requires-Dist: google-cloud-endpoints; extra == "gcp"
87
+ Requires-Dist: google-cloud-service-control; extra == "gcp"
89
88
  Requires-Dist: google-cloud-storage; extra == "gcp"
90
89
  Requires-Dist: google-cloud-logging; extra == "gcp"
91
90
  Requires-Dist: google-cloud-pubsub; extra == "gcp"
@@ -1,7 +1,6 @@
1
1
  google-auth
2
- tenacity==8.3.0
3
2
  ruamel.yaml
4
- langchain
3
+ langchain>=0.2.5
5
4
  langchain_experimental
6
5
  langchain-community
7
6
 
@@ -17,7 +16,7 @@ google-api-python-client
17
16
  google-cloud-alloydb-connector[pg8000]
18
17
  google-cloud-bigquery
19
18
  google-cloud-build
20
- google-cloud-endpoints
19
+ google-cloud-service-control
21
20
  google-cloud-logging
22
21
  google-cloud-storage
23
22
  google-cloud-pubsub
@@ -67,7 +66,7 @@ google-auth-oauthlib
67
66
  google-cloud-aiplatform
68
67
  google-cloud-bigquery
69
68
  google-cloud-build
70
- google-cloud-endpoints
69
+ google-cloud-service-control
71
70
  google-cloud-storage
72
71
  google-cloud-logging
73
72
  google-cloud-pubsub
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes