apache-airflow-providers-google 10.14.0rc2__py3-none-any.whl → 10.15.0rc1__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 (121) hide show
  1. airflow/providers/google/__init__.py +1 -1
  2. airflow/providers/google/cloud/hooks/automl.py +13 -13
  3. airflow/providers/google/cloud/hooks/bigquery.py +193 -246
  4. airflow/providers/google/cloud/hooks/bigquery_dts.py +6 -6
  5. airflow/providers/google/cloud/hooks/bigtable.py +8 -8
  6. airflow/providers/google/cloud/hooks/cloud_batch.py +1 -1
  7. airflow/providers/google/cloud/hooks/cloud_build.py +19 -20
  8. airflow/providers/google/cloud/hooks/cloud_composer.py +4 -4
  9. airflow/providers/google/cloud/hooks/cloud_memorystore.py +10 -10
  10. airflow/providers/google/cloud/hooks/cloud_run.py +1 -1
  11. airflow/providers/google/cloud/hooks/cloud_sql.py +17 -17
  12. airflow/providers/google/cloud/hooks/cloud_storage_transfer_service.py +3 -3
  13. airflow/providers/google/cloud/hooks/compute.py +16 -16
  14. airflow/providers/google/cloud/hooks/compute_ssh.py +1 -1
  15. airflow/providers/google/cloud/hooks/datacatalog.py +22 -22
  16. airflow/providers/google/cloud/hooks/dataflow.py +48 -49
  17. airflow/providers/google/cloud/hooks/dataform.py +16 -16
  18. airflow/providers/google/cloud/hooks/datafusion.py +15 -15
  19. airflow/providers/google/cloud/hooks/datapipeline.py +3 -3
  20. airflow/providers/google/cloud/hooks/dataplex.py +19 -19
  21. airflow/providers/google/cloud/hooks/dataprep.py +8 -8
  22. airflow/providers/google/cloud/hooks/dataproc.py +88 -0
  23. airflow/providers/google/cloud/hooks/dataproc_metastore.py +13 -13
  24. airflow/providers/google/cloud/hooks/datastore.py +3 -3
  25. airflow/providers/google/cloud/hooks/dlp.py +25 -25
  26. airflow/providers/google/cloud/hooks/gcs.py +25 -23
  27. airflow/providers/google/cloud/hooks/gdm.py +3 -3
  28. airflow/providers/google/cloud/hooks/kms.py +3 -3
  29. airflow/providers/google/cloud/hooks/kubernetes_engine.py +63 -48
  30. airflow/providers/google/cloud/hooks/life_sciences.py +13 -12
  31. airflow/providers/google/cloud/hooks/looker.py +7 -7
  32. airflow/providers/google/cloud/hooks/mlengine.py +12 -12
  33. airflow/providers/google/cloud/hooks/natural_language.py +2 -2
  34. airflow/providers/google/cloud/hooks/os_login.py +1 -1
  35. airflow/providers/google/cloud/hooks/pubsub.py +9 -9
  36. airflow/providers/google/cloud/hooks/secret_manager.py +1 -1
  37. airflow/providers/google/cloud/hooks/spanner.py +11 -11
  38. airflow/providers/google/cloud/hooks/speech_to_text.py +1 -1
  39. airflow/providers/google/cloud/hooks/stackdriver.py +7 -7
  40. airflow/providers/google/cloud/hooks/tasks.py +11 -11
  41. airflow/providers/google/cloud/hooks/text_to_speech.py +1 -1
  42. airflow/providers/google/cloud/hooks/translate.py +1 -1
  43. airflow/providers/google/cloud/hooks/vertex_ai/auto_ml.py +13 -13
  44. airflow/providers/google/cloud/hooks/vertex_ai/batch_prediction_job.py +6 -6
  45. airflow/providers/google/cloud/hooks/vertex_ai/custom_job.py +45 -50
  46. airflow/providers/google/cloud/hooks/vertex_ai/dataset.py +13 -13
  47. airflow/providers/google/cloud/hooks/vertex_ai/endpoint_service.py +9 -9
  48. airflow/providers/google/cloud/hooks/vertex_ai/hyperparameter_tuning_job.py +128 -11
  49. airflow/providers/google/cloud/hooks/vertex_ai/model_service.py +10 -10
  50. airflow/providers/google/cloud/hooks/vertex_ai/pipeline_job.py +8 -8
  51. airflow/providers/google/cloud/hooks/video_intelligence.py +2 -2
  52. airflow/providers/google/cloud/hooks/vision.py +1 -1
  53. airflow/providers/google/cloud/hooks/workflows.py +10 -10
  54. airflow/providers/google/cloud/links/datafusion.py +12 -5
  55. airflow/providers/google/cloud/operators/bigquery.py +9 -11
  56. airflow/providers/google/cloud/operators/cloud_storage_transfer_service.py +3 -1
  57. airflow/providers/google/cloud/operators/dataflow.py +16 -16
  58. airflow/providers/google/cloud/operators/datafusion.py +9 -1
  59. airflow/providers/google/cloud/operators/dataproc.py +298 -65
  60. airflow/providers/google/cloud/operators/kubernetes_engine.py +6 -6
  61. airflow/providers/google/cloud/operators/life_sciences.py +10 -9
  62. airflow/providers/google/cloud/operators/mlengine.py +96 -96
  63. airflow/providers/google/cloud/operators/pubsub.py +2 -0
  64. airflow/providers/google/cloud/operators/vertex_ai/custom_job.py +33 -3
  65. airflow/providers/google/cloud/operators/vertex_ai/hyperparameter_tuning_job.py +59 -2
  66. airflow/providers/google/cloud/secrets/secret_manager.py +8 -7
  67. airflow/providers/google/cloud/sensors/bigquery.py +20 -16
  68. airflow/providers/google/cloud/sensors/cloud_composer.py +11 -8
  69. airflow/providers/google/cloud/sensors/gcs.py +8 -7
  70. airflow/providers/google/cloud/transfers/cassandra_to_gcs.py +4 -4
  71. airflow/providers/google/cloud/transfers/gcs_to_sftp.py +1 -1
  72. airflow/providers/google/cloud/transfers/mssql_to_gcs.py +1 -1
  73. airflow/providers/google/cloud/transfers/mysql_to_gcs.py +1 -1
  74. airflow/providers/google/cloud/transfers/oracle_to_gcs.py +1 -1
  75. airflow/providers/google/cloud/transfers/postgres_to_gcs.py +1 -1
  76. airflow/providers/google/cloud/transfers/presto_to_gcs.py +1 -1
  77. airflow/providers/google/cloud/transfers/s3_to_gcs.py +3 -3
  78. airflow/providers/google/cloud/transfers/sftp_to_gcs.py +1 -1
  79. airflow/providers/google/cloud/transfers/sql_to_gcs.py +3 -3
  80. airflow/providers/google/cloud/transfers/trino_to_gcs.py +1 -1
  81. airflow/providers/google/cloud/triggers/bigquery.py +12 -12
  82. airflow/providers/google/cloud/triggers/bigquery_dts.py +1 -1
  83. airflow/providers/google/cloud/triggers/cloud_batch.py +3 -1
  84. airflow/providers/google/cloud/triggers/cloud_build.py +2 -2
  85. airflow/providers/google/cloud/triggers/cloud_run.py +1 -1
  86. airflow/providers/google/cloud/triggers/cloud_storage_transfer_service.py +6 -6
  87. airflow/providers/google/cloud/triggers/dataflow.py +3 -1
  88. airflow/providers/google/cloud/triggers/datafusion.py +2 -2
  89. airflow/providers/google/cloud/triggers/dataplex.py +2 -2
  90. airflow/providers/google/cloud/triggers/dataproc.py +2 -2
  91. airflow/providers/google/cloud/triggers/gcs.py +12 -8
  92. airflow/providers/google/cloud/triggers/kubernetes_engine.py +2 -2
  93. airflow/providers/google/cloud/triggers/mlengine.py +2 -2
  94. airflow/providers/google/cloud/triggers/pubsub.py +1 -1
  95. airflow/providers/google/cloud/triggers/vertex_ai.py +99 -0
  96. airflow/providers/google/cloud/utils/bigquery.py +2 -2
  97. airflow/providers/google/cloud/utils/credentials_provider.py +2 -2
  98. airflow/providers/google/cloud/utils/dataform.py +1 -1
  99. airflow/providers/google/cloud/utils/field_validator.py +2 -2
  100. airflow/providers/google/cloud/utils/helpers.py +2 -2
  101. airflow/providers/google/cloud/utils/mlengine_operator_utils.py +1 -1
  102. airflow/providers/google/cloud/utils/mlengine_prediction_summary.py +1 -1
  103. airflow/providers/google/common/auth_backend/google_openid.py +2 -2
  104. airflow/providers/google/common/hooks/base_google.py +29 -22
  105. airflow/providers/google/common/hooks/discovery_api.py +2 -2
  106. airflow/providers/google/common/utils/id_token_credentials.py +5 -5
  107. airflow/providers/google/firebase/hooks/firestore.py +3 -3
  108. airflow/providers/google/get_provider_info.py +7 -2
  109. airflow/providers/google/leveldb/hooks/leveldb.py +2 -2
  110. airflow/providers/google/marketing_platform/hooks/analytics.py +11 -14
  111. airflow/providers/google/marketing_platform/hooks/campaign_manager.py +11 -11
  112. airflow/providers/google/marketing_platform/hooks/display_video.py +13 -13
  113. airflow/providers/google/marketing_platform/hooks/search_ads.py +4 -4
  114. airflow/providers/google/marketing_platform/operators/analytics.py +37 -32
  115. airflow/providers/google/suite/hooks/calendar.py +2 -2
  116. airflow/providers/google/suite/hooks/drive.py +7 -7
  117. airflow/providers/google/suite/hooks/sheets.py +8 -8
  118. {apache_airflow_providers_google-10.14.0rc2.dist-info → apache_airflow_providers_google-10.15.0rc1.dist-info}/METADATA +11 -11
  119. {apache_airflow_providers_google-10.14.0rc2.dist-info → apache_airflow_providers_google-10.15.0rc1.dist-info}/RECORD +121 -120
  120. {apache_airflow_providers_google-10.14.0rc2.dist-info → apache_airflow_providers_google-10.15.0rc1.dist-info}/WHEEL +0 -0
  121. {apache_airflow_providers_google-10.14.0rc2.dist-info → apache_airflow_providers_google-10.15.0rc1.dist-info}/entry_points.txt +0 -0
@@ -49,7 +49,7 @@ class GoogleCampaignManagerHook(GoogleBaseHook):
49
49
  self.api_version = api_version
50
50
 
51
51
  def get_conn(self) -> Resource:
52
- """Retrieves connection to Campaign Manager."""
52
+ """Retrieve connection to Campaign Manager."""
53
53
  if not self._conn:
54
54
  http_authorized = self._authorize()
55
55
  self._conn = build(
@@ -62,7 +62,7 @@ class GoogleCampaignManagerHook(GoogleBaseHook):
62
62
 
63
63
  def delete_report(self, profile_id: str, report_id: str) -> Any:
64
64
  """
65
- Deletes a report by its ID.
65
+ Delete a report by its ID.
66
66
 
67
67
  :param profile_id: The DFA user profile ID.
68
68
  :param report_id: The ID of the report.
@@ -77,7 +77,7 @@ class GoogleCampaignManagerHook(GoogleBaseHook):
77
77
 
78
78
  def insert_report(self, profile_id: str, report: dict[str, Any]) -> Any:
79
79
  """
80
- Creates a report.
80
+ Create a report.
81
81
 
82
82
  :param profile_id: The DFA user profile ID.
83
83
  :param report: The report resource to be inserted.
@@ -99,7 +99,7 @@ class GoogleCampaignManagerHook(GoogleBaseHook):
99
99
  sort_order: str | None = None,
100
100
  ) -> list[dict]:
101
101
  """
102
- Retrieves list of reports.
102
+ Retrieve list of reports.
103
103
 
104
104
  :param profile_id: The DFA user profile ID.
105
105
  :param max_results: Maximum number of results to return.
@@ -125,7 +125,7 @@ class GoogleCampaignManagerHook(GoogleBaseHook):
125
125
 
126
126
  def patch_report(self, profile_id: str, report_id: str, update_mask: dict) -> Any:
127
127
  """
128
- Updates a report. This method supports patch semantics.
128
+ Update a report. This method supports patch semantics.
129
129
 
130
130
  :param profile_id: The DFA user profile ID.
131
131
  :param report_id: The ID of the report.
@@ -142,7 +142,7 @@ class GoogleCampaignManagerHook(GoogleBaseHook):
142
142
 
143
143
  def run_report(self, profile_id: str, report_id: str, synchronous: bool | None = None) -> Any:
144
144
  """
145
- Runs a report.
145
+ Run a report.
146
146
 
147
147
  :param profile_id: The DFA profile ID.
148
148
  :param report_id: The ID of the report.
@@ -158,7 +158,7 @@ class GoogleCampaignManagerHook(GoogleBaseHook):
158
158
 
159
159
  def update_report(self, profile_id: str, report_id: str) -> Any:
160
160
  """
161
- Updates a report.
161
+ Update a report.
162
162
 
163
163
  :param profile_id: The DFA user profile ID.
164
164
  :param report_id: The ID of the report.
@@ -173,7 +173,7 @@ class GoogleCampaignManagerHook(GoogleBaseHook):
173
173
 
174
174
  def get_report(self, file_id: str, profile_id: str, report_id: str) -> Any:
175
175
  """
176
- Retrieves a report file.
176
+ Retrieve a report file.
177
177
 
178
178
  :param profile_id: The DFA user profile ID.
179
179
  :param report_id: The ID of the report.
@@ -190,7 +190,7 @@ class GoogleCampaignManagerHook(GoogleBaseHook):
190
190
 
191
191
  def get_report_file(self, file_id: str, profile_id: str, report_id: str) -> http.HttpRequest:
192
192
  """
193
- Retrieves a media part of report file.
193
+ Retrieve a media part of report file.
194
194
 
195
195
  :param profile_id: The DFA user profile ID.
196
196
  :param report_id: The ID of the report.
@@ -234,7 +234,7 @@ class GoogleCampaignManagerHook(GoogleBaseHook):
234
234
  max_failed_inserts: int = 0,
235
235
  ) -> Any:
236
236
  """
237
- Inserts conversions.
237
+ Insert conversions.
238
238
 
239
239
  :param profile_id: User profile ID associated with this request.
240
240
  :param conversions: Conversations to insert, should by type of Conversation:
@@ -278,7 +278,7 @@ class GoogleCampaignManagerHook(GoogleBaseHook):
278
278
  max_failed_updates: int = 0,
279
279
  ) -> Any:
280
280
  """
281
- Updates existing conversions.
281
+ Update existing conversions.
282
282
 
283
283
  :param profile_id: User profile ID associated with this request.
284
284
  :param conversions: Conversations to update, should by type of Conversation:
@@ -45,7 +45,7 @@ class GoogleDisplayVideo360Hook(GoogleBaseHook):
45
45
  self.api_version = api_version
46
46
 
47
47
  def get_conn(self) -> Resource:
48
- """Retrieves connection to DisplayVideo."""
48
+ """Retrieve connection to DisplayVideo."""
49
49
  if not self._conn:
50
50
  http_authorized = self._authorize()
51
51
  self._conn = build(
@@ -57,7 +57,7 @@ class GoogleDisplayVideo360Hook(GoogleBaseHook):
57
57
  return self._conn
58
58
 
59
59
  def get_conn_to_display_video(self) -> Resource:
60
- """Retrieves connection to DisplayVideo."""
60
+ """Retrieve connection to DisplayVideo."""
61
61
  if not self._conn:
62
62
  http_authorized = self._authorize()
63
63
  self._conn = build(
@@ -89,7 +89,7 @@ class GoogleDisplayVideo360Hook(GoogleBaseHook):
89
89
 
90
90
  def create_query(self, query: dict[str, Any]) -> dict:
91
91
  """
92
- Creates a query.
92
+ Create a query.
93
93
 
94
94
  :param query: Query object to be passed to request body.
95
95
  """
@@ -98,7 +98,7 @@ class GoogleDisplayVideo360Hook(GoogleBaseHook):
98
98
 
99
99
  def delete_query(self, query_id: str) -> None:
100
100
  """
101
- Deletes a stored query as well as the associated stored reports.
101
+ Delete a stored query as well as the associated stored reports.
102
102
 
103
103
  :param query_id: Query ID to delete.
104
104
  """
@@ -106,7 +106,7 @@ class GoogleDisplayVideo360Hook(GoogleBaseHook):
106
106
 
107
107
  def get_query(self, query_id: str) -> dict:
108
108
  """
109
- Retrieves a stored query.
109
+ Retrieve a stored query.
110
110
 
111
111
  :param query_id: Query ID to retrieve.
112
112
  """
@@ -114,13 +114,13 @@ class GoogleDisplayVideo360Hook(GoogleBaseHook):
114
114
  return response
115
115
 
116
116
  def list_queries(self) -> list[dict]:
117
- """Retrieves stored queries."""
117
+ """Retrieve stored queries."""
118
118
  response = self.get_conn().queries().list().execute(num_retries=self.num_retries)
119
119
  return response.get("queries", [])
120
120
 
121
121
  def run_query(self, query_id: str, params: dict[str, Any] | None) -> dict:
122
122
  """
123
- Runs a stored query to generate a report.
123
+ Run a stored query to generate a report.
124
124
 
125
125
  :param query_id: Query ID to run.
126
126
  :param params: Parameters for the report.
@@ -131,7 +131,7 @@ class GoogleDisplayVideo360Hook(GoogleBaseHook):
131
131
 
132
132
  def get_report(self, query_id: str, report_id: str) -> dict:
133
133
  """
134
- Retrieves a report.
134
+ Retrieve a report.
135
135
 
136
136
  :param query_id: Query ID for which report was generated.
137
137
  :param report_id: Report ID to retrieve.
@@ -146,7 +146,7 @@ class GoogleDisplayVideo360Hook(GoogleBaseHook):
146
146
 
147
147
  def upload_line_items(self, line_items: Any) -> list[dict[str, Any]]:
148
148
  """
149
- Uploads line items in CSV format.
149
+ Upload line items in CSV format.
150
150
 
151
151
  :param line_items: downloaded data from GCS and passed to the body request
152
152
  :return: response body.
@@ -167,7 +167,7 @@ class GoogleDisplayVideo360Hook(GoogleBaseHook):
167
167
 
168
168
  def download_line_items(self, request_body: dict[str, Any]) -> list[Any]:
169
169
  """
170
- Retrieves line items in CSV format.
170
+ Retrieve line items in CSV format.
171
171
 
172
172
  :param request_body: dictionary with parameters that should be passed into.
173
173
  More information about it can be found here:
@@ -183,7 +183,7 @@ class GoogleDisplayVideo360Hook(GoogleBaseHook):
183
183
 
184
184
  def create_sdf_download_operation(self, body_request: dict[str, Any]) -> dict[str, Any]:
185
185
  """
186
- Creates an SDF Download Task and Returns an Operation.
186
+ Create an SDF Download Task and Returns an Operation.
187
187
 
188
188
  :param body_request: Body request.
189
189
 
@@ -200,7 +200,7 @@ class GoogleDisplayVideo360Hook(GoogleBaseHook):
200
200
 
201
201
  def get_sdf_download_operation(self, operation_name: str):
202
202
  """
203
- Gets the latest state of an asynchronous SDF download task operation.
203
+ Get the latest state of an asynchronous SDF download task operation.
204
204
 
205
205
  :param operation_name: The name of the operation resource.
206
206
  """
@@ -215,7 +215,7 @@ class GoogleDisplayVideo360Hook(GoogleBaseHook):
215
215
 
216
216
  def download_media(self, resource_name: str):
217
217
  """
218
- Downloads media.
218
+ Download media.
219
219
 
220
220
  :param resource_name: of the media that is being downloaded.
221
221
  """
@@ -45,7 +45,7 @@ class GoogleSearchAdsHook(GoogleBaseHook):
45
45
  self.api_version = api_version
46
46
 
47
47
  def get_conn(self):
48
- """Retrieves connection to Google SearchAds."""
48
+ """Retrieve connection to Google SearchAds."""
49
49
  if not self._conn:
50
50
  http_authorized = self._authorize()
51
51
  self._conn = build(
@@ -58,7 +58,7 @@ class GoogleSearchAdsHook(GoogleBaseHook):
58
58
 
59
59
  def insert_report(self, report: dict[str, Any]) -> Any:
60
60
  """
61
- Inserts a report request into the reporting system.
61
+ Insert a report request into the reporting system.
62
62
 
63
63
  :param report: Report to be generated.
64
64
  """
@@ -67,7 +67,7 @@ class GoogleSearchAdsHook(GoogleBaseHook):
67
67
 
68
68
  def get(self, report_id: str) -> Any:
69
69
  """
70
- Polls for the status of a report request.
70
+ Poll for the status of a report request.
71
71
 
72
72
  :param report_id: ID of the report request being polled.
73
73
  """
@@ -76,7 +76,7 @@ class GoogleSearchAdsHook(GoogleBaseHook):
76
76
 
77
77
  def get_file(self, report_fragment: int, report_id: str) -> Any:
78
78
  """
79
- Downloads a report file encoded in UTF-8.
79
+ Download a report file encoded in UTF-8.
80
80
 
81
81
  :param report_fragment: The index of the report fragment to download.
82
82
  :param report_id: ID of the report.
@@ -19,10 +19,11 @@
19
19
  from __future__ import annotations
20
20
 
21
21
  import csv
22
- import warnings
23
22
  from tempfile import NamedTemporaryFile
24
23
  from typing import TYPE_CHECKING, Any, Sequence
25
24
 
25
+ from deprecated import deprecated
26
+
26
27
  from airflow.exceptions import AirflowProviderDeprecationWarning
27
28
  from airflow.models import BaseOperator
28
29
  from airflow.providers.google.cloud.hooks.gcs import GCSHook
@@ -32,6 +33,13 @@ if TYPE_CHECKING:
32
33
  from airflow.utils.context import Context
33
34
 
34
35
 
36
+ @deprecated(
37
+ reason=(
38
+ "The `GoogleAnalyticsListAccountsOperator` class is deprecated, please use "
39
+ "`GoogleAnalyticsAdminListAccountsOperator` instead."
40
+ ),
41
+ category=AirflowProviderDeprecationWarning,
42
+ )
35
43
  class GoogleAnalyticsListAccountsOperator(BaseOperator):
36
44
  """
37
45
  Lists all accounts to which the user has access.
@@ -76,13 +84,6 @@ class GoogleAnalyticsListAccountsOperator(BaseOperator):
76
84
  impersonation_chain: str | Sequence[str] | None = None,
77
85
  **kwargs,
78
86
  ) -> None:
79
- warnings.warn(
80
- f"The `{type(self).__name__}` operator is deprecated, please use "
81
- f"`GoogleAnalyticsAdminListAccountsOperator` instead.",
82
- AirflowProviderDeprecationWarning,
83
- stacklevel=2,
84
- )
85
-
86
87
  super().__init__(**kwargs)
87
88
 
88
89
  self.api_version = api_version
@@ -99,6 +100,13 @@ class GoogleAnalyticsListAccountsOperator(BaseOperator):
99
100
  return result
100
101
 
101
102
 
103
+ @deprecated(
104
+ reason=(
105
+ "The `GoogleAnalyticsGetAdsLinkOperator` class is deprecated, please use "
106
+ "`GoogleAnalyticsAdminGetGoogleAdsLinkOperator` instead."
107
+ ),
108
+ category=AirflowProviderDeprecationWarning,
109
+ )
102
110
  class GoogleAnalyticsGetAdsLinkOperator(BaseOperator):
103
111
  """
104
112
  Returns a web property-Google Ads link to which the user has access.
@@ -149,12 +157,6 @@ class GoogleAnalyticsGetAdsLinkOperator(BaseOperator):
149
157
  **kwargs,
150
158
  ):
151
159
  super().__init__(**kwargs)
152
- warnings.warn(
153
- f"The `{type(self).__name__}` operator is deprecated, please use "
154
- f"`GoogleAnalyticsAdminGetGoogleAdsLinkOperator` instead.",
155
- AirflowProviderDeprecationWarning,
156
- stacklevel=2,
157
- )
158
160
 
159
161
  self.account_id = account_id
160
162
  self.web_property_ad_words_link_id = web_property_ad_words_link_id
@@ -177,6 +179,13 @@ class GoogleAnalyticsGetAdsLinkOperator(BaseOperator):
177
179
  return result
178
180
 
179
181
 
182
+ @deprecated(
183
+ reason=(
184
+ "The `GoogleAnalyticsRetrieveAdsLinksListOperator` class is deprecated, please use "
185
+ "`GoogleAnalyticsAdminListGoogleAdsLinksOperator` instead."
186
+ ),
187
+ category=AirflowProviderDeprecationWarning,
188
+ )
180
189
  class GoogleAnalyticsRetrieveAdsLinksListOperator(BaseOperator):
181
190
  """
182
191
  Lists webProperty-Google Ads links for a given web property.
@@ -224,12 +233,6 @@ class GoogleAnalyticsRetrieveAdsLinksListOperator(BaseOperator):
224
233
  **kwargs,
225
234
  ) -> None:
226
235
  super().__init__(**kwargs)
227
- warnings.warn(
228
- f"The `{type(self).__name__}` operator is deprecated, please use "
229
- f"`GoogleAnalyticsAdminListGoogleAdsLinksOperator` instead.",
230
- AirflowProviderDeprecationWarning,
231
- stacklevel=2,
232
- )
233
236
 
234
237
  self.account_id = account_id
235
238
  self.web_property_id = web_property_id
@@ -250,6 +253,13 @@ class GoogleAnalyticsRetrieveAdsLinksListOperator(BaseOperator):
250
253
  return result
251
254
 
252
255
 
256
+ @deprecated(
257
+ reason=(
258
+ "The `GoogleAnalyticsDataImportUploadOperator` class is deprecated, please use "
259
+ "`GoogleAnalyticsAdminCreateDataStreamOperator` instead."
260
+ ),
261
+ category=AirflowProviderDeprecationWarning,
262
+ )
253
263
  class GoogleAnalyticsDataImportUploadOperator(BaseOperator):
254
264
  """
255
265
  Take a file from Cloud Storage and uploads it to GA via data import API.
@@ -303,12 +313,6 @@ class GoogleAnalyticsDataImportUploadOperator(BaseOperator):
303
313
  impersonation_chain: str | Sequence[str] | None = None,
304
314
  **kwargs,
305
315
  ) -> None:
306
- warnings.warn(
307
- f"The `{type(self).__name__}` operator is deprecated, please use "
308
- f"`GoogleAnalyticsAdminCreateDataStreamOperator` instead.",
309
- AirflowProviderDeprecationWarning,
310
- stacklevel=2,
311
- )
312
316
  super().__init__(**kwargs)
313
317
  self.storage_bucket = storage_bucket
314
318
  self.storage_name_object = storage_name_object
@@ -356,6 +360,13 @@ class GoogleAnalyticsDataImportUploadOperator(BaseOperator):
356
360
  )
357
361
 
358
362
 
363
+ @deprecated(
364
+ reason=(
365
+ "The `GoogleAnalyticsDeletePreviousDataUploadsOperator` class is deprecated, please use "
366
+ "`GoogleAnalyticsAdminDeleteDataStreamOperator` instead."
367
+ ),
368
+ category=AirflowProviderDeprecationWarning,
369
+ )
359
370
  class GoogleAnalyticsDeletePreviousDataUploadsOperator(BaseOperator):
360
371
  """
361
372
  Deletes previous GA uploads to leave the latest file to control the size of the Data Set Quota.
@@ -395,12 +406,6 @@ class GoogleAnalyticsDeletePreviousDataUploadsOperator(BaseOperator):
395
406
  impersonation_chain: str | Sequence[str] | None = None,
396
407
  **kwargs,
397
408
  ) -> None:
398
- warnings.warn(
399
- f"The `{type(self).__name__}` operator is deprecated, please use "
400
- f"`GoogleAnalyticsAdminDeleteDataStreamOperator` instead.",
401
- AirflowProviderDeprecationWarning,
402
- stacklevel=2,
403
- )
404
409
  super().__init__(**kwargs)
405
410
 
406
411
  self.account_id = account_id
@@ -69,7 +69,7 @@ class GoogleCalendarHook(GoogleBaseHook):
69
69
 
70
70
  def get_conn(self) -> Any:
71
71
  """
72
- Retrieves connection to Google Calendar.
72
+ Retrieve connection to Google Calendar.
73
73
 
74
74
  :return: Google Calendar services object.
75
75
  """
@@ -99,7 +99,7 @@ class GoogleCalendarHook(GoogleBaseHook):
99
99
  updated_min: datetime | None = None,
100
100
  ) -> list:
101
101
  """
102
- Gets events from Google Calendar from a single calendar_id.
102
+ Get events from Google Calendar from a single calendar_id.
103
103
 
104
104
  https://developers.google.com/calendar/api/v3/reference/events/list
105
105
 
@@ -64,7 +64,7 @@ class GoogleDriveHook(GoogleBaseHook):
64
64
 
65
65
  def get_conn(self) -> Any:
66
66
  """
67
- Retrieves the connection to Google Drive.
67
+ Retrieve the connection to Google Drive.
68
68
 
69
69
  :return: Google Drive services object.
70
70
  """
@@ -132,7 +132,7 @@ class GoogleDriveHook(GoogleBaseHook):
132
132
 
133
133
  def get_media_request(self, file_id: str) -> HttpRequest:
134
134
  """
135
- Returns a get_media http request to a Google Drive object.
135
+ Return a get_media http request to a Google Drive object.
136
136
 
137
137
  :param file_id: The Google Drive file id
138
138
  :return: request
@@ -145,7 +145,7 @@ class GoogleDriveHook(GoogleBaseHook):
145
145
  self, folder_id: str, file_name: str, drive_id: str | None = None, *, include_trashed: bool = True
146
146
  ) -> bool:
147
147
  """
148
- Checks to see if a file exists within a Google Drive folder.
148
+ Check to see if a file exists within a Google Drive folder.
149
149
 
150
150
  :param folder_id: The id of the Google Drive folder in which the file resides
151
151
  :param file_name: The name of a file in Google Drive
@@ -162,7 +162,7 @@ class GoogleDriveHook(GoogleBaseHook):
162
162
 
163
163
  def _get_file_info(self, file_id: str):
164
164
  """
165
- Returns Google API file_info object containing id, name, parents in the response.
165
+ Return Google API file_info object containing id, name, parents in the response.
166
166
 
167
167
  https://developers.google.com/drive/api/v3/reference/files/get
168
168
 
@@ -183,7 +183,7 @@ class GoogleDriveHook(GoogleBaseHook):
183
183
 
184
184
  def _resolve_file_path(self, file_id: str) -> str:
185
185
  """
186
- Returns the full Google Drive path for given file_id.
186
+ Return the full Google Drive path for given file_id.
187
187
 
188
188
  :param file_id: The id of a file in Google Drive
189
189
  :return: Google Drive full path for a file
@@ -211,7 +211,7 @@ class GoogleDriveHook(GoogleBaseHook):
211
211
  self, folder_id: str, file_name: str, drive_id: str | None = None, *, include_trashed: bool = True
212
212
  ) -> dict:
213
213
  """
214
- Returns the file id of a Google Drive file.
214
+ Return the file id of a Google Drive file.
215
215
 
216
216
  :param folder_id: The id of the Google Drive folder in which the file resides
217
217
  :param file_name: The name of a file in Google Drive
@@ -264,7 +264,7 @@ class GoogleDriveHook(GoogleBaseHook):
264
264
  show_full_target_path: bool = True,
265
265
  ) -> str:
266
266
  """
267
- Uploads a file that is available locally to a Google Drive service.
267
+ Upload a file that is available locally to a Google Drive service.
268
268
 
269
269
  :param local_location: The path where the file is available.
270
270
  :param remote_location: The path where the file will be send
@@ -66,7 +66,7 @@ class GSheetsHook(GoogleBaseHook):
66
66
 
67
67
  def get_conn(self) -> Any:
68
68
  """
69
- Retrieves connection to Google Sheets.
69
+ Retrieve connection to Google Sheets.
70
70
 
71
71
  :return: Google Sheets services object.
72
72
  """
@@ -85,7 +85,7 @@ class GSheetsHook(GoogleBaseHook):
85
85
  date_time_render_option: str = "SERIAL_NUMBER",
86
86
  ) -> list:
87
87
  """
88
- Gets values from Google Sheet from a single range.
88
+ Get values from Google Sheet from a single range.
89
89
 
90
90
  https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/get
91
91
 
@@ -125,7 +125,7 @@ class GSheetsHook(GoogleBaseHook):
125
125
  date_time_render_option: str = "SERIAL_NUMBER",
126
126
  ) -> dict:
127
127
  """
128
- Gets values from Google Sheet from a list of ranges.
128
+ Get values from Google Sheet from a list of ranges.
129
129
 
130
130
  https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/batchGet
131
131
 
@@ -168,7 +168,7 @@ class GSheetsHook(GoogleBaseHook):
168
168
  date_time_render_option: str = "SERIAL_NUMBER",
169
169
  ) -> dict:
170
170
  """
171
- Updates values from Google Sheet from a single range.
171
+ Update values from Google Sheet from a single range.
172
172
 
173
173
  https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/update
174
174
 
@@ -219,7 +219,7 @@ class GSheetsHook(GoogleBaseHook):
219
219
  date_time_render_option: str = "SERIAL_NUMBER",
220
220
  ) -> dict:
221
221
  """
222
- Updates values from Google Sheet for multiple ranges.
222
+ Update values from Google Sheet for multiple ranges.
223
223
 
224
224
  https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/batchUpdate
225
225
 
@@ -365,7 +365,7 @@ class GSheetsHook(GoogleBaseHook):
365
365
 
366
366
  def get_spreadsheet(self, spreadsheet_id: str):
367
367
  """
368
- Retrieves spreadsheet matching the given id.
368
+ Retrieve spreadsheet matching the given id.
369
369
 
370
370
  :param spreadsheet_id: The spreadsheet id.
371
371
  :return: An spreadsheet that matches the sheet filter.
@@ -380,7 +380,7 @@ class GSheetsHook(GoogleBaseHook):
380
380
 
381
381
  def get_sheet_titles(self, spreadsheet_id: str, sheet_filter: list[str] | None = None):
382
382
  """
383
- Retrieves the sheet titles from a spreadsheet matching the given id and sheet filter.
383
+ Retrieve the sheet titles from a spreadsheet matching the given id and sheet filter.
384
384
 
385
385
  :param spreadsheet_id: The spreadsheet id.
386
386
  :param sheet_filter: List of sheet title to retrieve from sheet.
@@ -401,7 +401,7 @@ class GSheetsHook(GoogleBaseHook):
401
401
 
402
402
  def create_spreadsheet(self, spreadsheet: dict[str, Any]) -> dict[str, Any]:
403
403
  """
404
- Creates a spreadsheet, returning the newly created spreadsheet.
404
+ Create a spreadsheet, returning the newly created spreadsheet.
405
405
 
406
406
  :param spreadsheet: an instance of Spreadsheet
407
407
  https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets#Spreadsheet
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: apache-airflow-providers-google
3
- Version: 10.14.0rc2
3
+ Version: 10.15.0rc1
4
4
  Summary: Provider package apache-airflow-providers-google for Apache Airflow
5
5
  Keywords: airflow-provider,google,airflow,integration
6
6
  Author-email: Apache Software Foundation <dev@airflow.apache.org>
@@ -30,7 +30,7 @@ Requires-Dist: gcloud-aio-storage>=9.0.0
30
30
  Requires-Dist: gcsfs>=2023.10.0
31
31
  Requires-Dist: google-ads>=22.1.0
32
32
  Requires-Dist: google-analytics-admin
33
- Requires-Dist: google-api-core>=2.11.0
33
+ Requires-Dist: google-api-core>=2.11.0,!=2.16.0
34
34
  Requires-Dist: google-api-python-client>=1.6.0
35
35
  Requires-Dist: google-auth-httplib2>=0.0.1
36
36
  Requires-Dist: google-auth>=1.0.0
@@ -99,8 +99,8 @@ Requires-Dist: apache-airflow-providers-sftp ; extra == "sftp"
99
99
  Requires-Dist: apache-airflow-providers-ssh ; extra == "ssh"
100
100
  Requires-Dist: apache-airflow-providers-trino ; extra == "trino"
101
101
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
102
- Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-google/10.14.0/changelog.html
103
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-google/10.14.0
102
+ Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-google/10.15.0/changelog.html
103
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-google/10.15.0
104
104
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
105
105
  Project-URL: Source Code, https://github.com/apache/airflow
106
106
  Project-URL: Twitter, https://twitter.com/ApacheAirflow
@@ -168,7 +168,7 @@ Provides-Extra: trino
168
168
 
169
169
  Package ``apache-airflow-providers-google``
170
170
 
171
- Release: ``10.14.0.rc2``
171
+ Release: ``10.15.0.rc1``
172
172
 
173
173
 
174
174
  Google services including:
@@ -188,7 +188,7 @@ This is a provider package for ``google`` provider. All classes for this provide
188
188
  are in ``airflow.providers.google`` python package.
189
189
 
190
190
  You can find package information and changelog for the provider
191
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-google/10.14.0/>`_.
191
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-google/10.15.0/>`_.
192
192
 
193
193
  Installation
194
194
  ------------
@@ -202,9 +202,9 @@ The package supports the following python versions: 3.8,3.9,3.10,3.11
202
202
  Requirements
203
203
  ------------
204
204
 
205
- ======================================= ==================
205
+ ======================================= =====================
206
206
  PIP package Version required
207
- ======================================= ==================
207
+ ======================================= =====================
208
208
  ``apache-airflow`` ``>=2.6.0``
209
209
  ``apache-airflow-providers-common-sql`` ``>=1.7.2``
210
210
  ``asgiref`` ``>=3.5.2``
@@ -214,7 +214,7 @@ PIP package Version required
214
214
  ``gcsfs`` ``>=2023.10.0``
215
215
  ``google-ads`` ``>=22.1.0``
216
216
  ``google-analytics-admin``
217
- ``google-api-core`` ``>=2.11.0``
217
+ ``google-api-core`` ``>=2.11.0,!=2.16.0``
218
218
  ``google-api-python-client`` ``>=1.6.0``
219
219
  ``google-auth`` ``>=1.0.0``
220
220
  ``google-auth-httplib2`` ``>=0.0.1``
@@ -264,7 +264,7 @@ PIP package Version required
264
264
  ``PyOpenSSL``
265
265
  ``sqlalchemy-bigquery`` ``>=1.2.1``
266
266
  ``sqlalchemy-spanner`` ``>=1.6.2``
267
- ======================================= ==================
267
+ ======================================= =====================
268
268
 
269
269
  Cross provider package dependencies
270
270
  -----------------------------------
@@ -302,4 +302,4 @@ Dependent package
302
302
  ======================================================================================================================== ====================
303
303
 
304
304
  The changelog for the provider package can be found in the
305
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-google/10.14.0/changelog.html>`_.
305
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-google/10.15.0/changelog.html>`_.