apache-airflow-providers-google 10.22.0rc1__py3-none-any.whl → 10.23.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. airflow/providers/google/__init__.py +1 -1
  2. airflow/providers/google/cloud/hooks/bigquery.py +91 -54
  3. airflow/providers/google/cloud/hooks/cloud_build.py +3 -2
  4. airflow/providers/google/cloud/hooks/dataflow.py +112 -47
  5. airflow/providers/google/cloud/hooks/datapipeline.py +3 -3
  6. airflow/providers/google/cloud/hooks/kubernetes_engine.py +15 -26
  7. airflow/providers/google/cloud/hooks/life_sciences.py +5 -7
  8. airflow/providers/google/cloud/hooks/secret_manager.py +3 -3
  9. airflow/providers/google/cloud/hooks/vertex_ai/auto_ml.py +28 -8
  10. airflow/providers/google/cloud/hooks/vertex_ai/custom_job.py +11 -6
  11. airflow/providers/google/cloud/hooks/vertex_ai/generative_model.py +214 -34
  12. airflow/providers/google/cloud/hooks/vertex_ai/model_service.py +11 -4
  13. airflow/providers/google/cloud/links/automl.py +13 -22
  14. airflow/providers/google/cloud/log/gcs_task_handler.py +1 -2
  15. airflow/providers/google/cloud/operators/bigquery.py +6 -4
  16. airflow/providers/google/cloud/operators/dataflow.py +186 -4
  17. airflow/providers/google/cloud/operators/datafusion.py +3 -2
  18. airflow/providers/google/cloud/operators/datapipeline.py +5 -6
  19. airflow/providers/google/cloud/operators/dataproc.py +30 -33
  20. airflow/providers/google/cloud/operators/gcs.py +4 -4
  21. airflow/providers/google/cloud/operators/kubernetes_engine.py +16 -2
  22. airflow/providers/google/cloud/operators/life_sciences.py +5 -7
  23. airflow/providers/google/cloud/operators/mlengine.py +42 -65
  24. airflow/providers/google/cloud/operators/vertex_ai/auto_ml.py +18 -4
  25. airflow/providers/google/cloud/operators/vertex_ai/custom_job.py +5 -5
  26. airflow/providers/google/cloud/operators/vertex_ai/generative_model.py +280 -9
  27. airflow/providers/google/cloud/operators/vertex_ai/model_service.py +4 -0
  28. airflow/providers/google/cloud/secrets/secret_manager.py +3 -5
  29. airflow/providers/google/cloud/sensors/bigquery.py +8 -27
  30. airflow/providers/google/cloud/sensors/bigquery_dts.py +1 -4
  31. airflow/providers/google/cloud/sensors/cloud_composer.py +9 -14
  32. airflow/providers/google/cloud/sensors/dataflow.py +1 -25
  33. airflow/providers/google/cloud/sensors/dataform.py +1 -4
  34. airflow/providers/google/cloud/sensors/datafusion.py +1 -7
  35. airflow/providers/google/cloud/sensors/dataplex.py +1 -31
  36. airflow/providers/google/cloud/sensors/dataproc.py +1 -16
  37. airflow/providers/google/cloud/sensors/dataproc_metastore.py +1 -7
  38. airflow/providers/google/cloud/sensors/gcs.py +5 -27
  39. airflow/providers/google/cloud/sensors/looker.py +1 -13
  40. airflow/providers/google/cloud/sensors/pubsub.py +11 -5
  41. airflow/providers/google/cloud/sensors/workflows.py +1 -4
  42. airflow/providers/google/cloud/transfers/sftp_to_gcs.py +6 -0
  43. airflow/providers/google/cloud/triggers/dataflow.py +145 -1
  44. airflow/providers/google/cloud/triggers/kubernetes_engine.py +66 -3
  45. airflow/providers/google/common/deprecated.py +176 -0
  46. airflow/providers/google/common/hooks/base_google.py +3 -2
  47. airflow/providers/google/get_provider_info.py +8 -10
  48. airflow/providers/google/marketing_platform/hooks/analytics.py +4 -2
  49. airflow/providers/google/marketing_platform/hooks/search_ads.py +169 -30
  50. airflow/providers/google/marketing_platform/operators/analytics.py +16 -33
  51. airflow/providers/google/marketing_platform/operators/search_ads.py +217 -156
  52. airflow/providers/google/marketing_platform/sensors/display_video.py +1 -4
  53. {apache_airflow_providers_google-10.22.0rc1.dist-info → apache_airflow_providers_google-10.23.0.dist-info}/METADATA +25 -23
  54. {apache_airflow_providers_google-10.22.0rc1.dist-info → apache_airflow_providers_google-10.23.0.dist-info}/RECORD +56 -56
  55. airflow/providers/google/marketing_platform/sensors/search_ads.py +0 -92
  56. {apache_airflow_providers_google-10.22.0rc1.dist-info → apache_airflow_providers_google-10.23.0.dist-info}/WHEEL +0 -0
  57. {apache_airflow_providers_google-10.22.0rc1.dist-info → apache_airflow_providers_google-10.23.0.dist-info}/entry_points.txt +0 -0
@@ -29,7 +29,7 @@ from airflow import __version__ as airflow_version
29
29
 
30
30
  __all__ = ["__version__"]
31
31
 
32
- __version__ = "10.22.0"
32
+ __version__ = "10.23.0"
33
33
 
34
34
  if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
35
35
  "2.8.0"
@@ -32,7 +32,6 @@ from functools import cached_property
32
32
  from typing import TYPE_CHECKING, Any, Iterable, Mapping, NoReturn, Sequence, Union, cast
33
33
 
34
34
  from aiohttp import ClientSession as ClientSession
35
- from deprecated import deprecated
36
35
  from gcloud.aio.bigquery import Job, Table as Table_async
37
36
  from google.cloud.bigquery import (
38
37
  DEFAULT_RETRY,
@@ -66,6 +65,7 @@ from airflow.providers.common.sql.hooks.sql import DbApiHook
66
65
  from airflow.providers.google.cloud.utils.bigquery import bq_cast
67
66
  from airflow.providers.google.cloud.utils.credentials_provider import _get_scopes
68
67
  from airflow.providers.google.common.consts import CLIENT_INFO
68
+ from airflow.providers.google.common.deprecated import deprecated
69
69
  from airflow.providers.google.common.hooks.base_google import (
70
70
  PROVIDE_PROJECT_ID,
71
71
  GoogleBaseAsyncHook,
@@ -175,10 +175,8 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
175
175
 
176
176
  @cached_property
177
177
  @deprecated(
178
- reason=(
179
- "`BigQueryHook.credentials_path` property is deprecated and will be removed in the future. "
180
- "This property used for obtaining credentials path but no longer in actual use. "
181
- ),
178
+ planned_removal_date="November 01, 2024",
179
+ reason="This property is no longer in actual use. ",
182
180
  category=AirflowProviderDeprecationWarning,
183
181
  )
184
182
  def credentials_path(self) -> str:
@@ -198,7 +196,8 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
198
196
  )
199
197
 
200
198
  @deprecated(
201
- reason=("Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_client`"),
199
+ planned_removal_date="November 01, 2024",
200
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_client.",
202
201
  category=AirflowProviderDeprecationWarning,
203
202
  )
204
203
  def get_service(self) -> Resource:
@@ -604,10 +603,10 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
604
603
  )
605
604
 
606
605
  @deprecated(
607
- reason=(
608
- "Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.create_empty_table` "
609
- "method with passing the `table_resource` object. This gives more flexibility than this method."
610
- ),
606
+ planned_removal_date="November 01, 2024",
607
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.create_empty_table",
608
+ instructions="Use the replacement method with passing the `table_resource` object. "
609
+ "This gives more flexibility.",
611
610
  category=AirflowProviderDeprecationWarning,
612
611
  )
613
612
  @GoogleBaseHook.fallback_to_default_project_id
@@ -806,9 +805,8 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
806
805
  return table_object.to_api_repr()
807
806
 
808
807
  @deprecated(
809
- reason=(
810
- "Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.update_table` method."
811
- ),
808
+ planned_removal_date="November 01, 2024",
809
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.update_table",
812
810
  category=AirflowProviderDeprecationWarning,
813
811
  )
814
812
  @GoogleBaseHook.fallback_to_default_project_id
@@ -1017,9 +1015,8 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
1017
1015
  return dataset
1018
1016
 
1019
1017
  @deprecated(
1020
- reason=(
1021
- "Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.update_dataset` method."
1022
- ),
1018
+ planned_removal_date="November 01, 2024",
1019
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.update_dataset",
1023
1020
  category=AirflowProviderDeprecationWarning,
1024
1021
  )
1025
1022
  def patch_dataset(
@@ -1065,9 +1062,8 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
1065
1062
  return dataset
1066
1063
 
1067
1064
  @deprecated(
1068
- reason=(
1069
- "Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_dataset_tables` method."
1070
- ),
1065
+ planned_removal_date="November 01, 2024",
1066
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_dataset_tables",
1071
1067
  category=AirflowProviderDeprecationWarning,
1072
1068
  )
1073
1069
  def get_dataset_tables_list(
@@ -1271,9 +1267,8 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
1271
1267
  return table
1272
1268
 
1273
1269
  @deprecated(
1274
- reason=(
1275
- "Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.delete_table` method."
1276
- ),
1270
+ planned_removal_date="November 01, 2024",
1271
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.delete_table",
1277
1272
  category=AirflowProviderDeprecationWarning,
1278
1273
  )
1279
1274
  def run_table_delete(self, deletion_dataset_table: str, ignore_if_missing: bool = False) -> None:
@@ -1320,7 +1315,8 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
1320
1315
  self.log.info("Deleted table %s", table_id)
1321
1316
 
1322
1317
  @deprecated(
1323
- reason=("Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.list_rows` method."),
1318
+ planned_removal_date="November 01, 2024",
1319
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.list_rows",
1324
1320
  category=AirflowProviderDeprecationWarning,
1325
1321
  )
1326
1322
  def get_tabledata(
@@ -1556,7 +1552,8 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
1556
1552
  return job.done(retry=retry)
1557
1553
 
1558
1554
  @deprecated(
1559
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.cancel_job`",
1555
+ planned_removal_date="November 01, 2024",
1556
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.cancel_job",
1560
1557
  category=AirflowProviderDeprecationWarning,
1561
1558
  )
1562
1559
  def cancel_query(self) -> None:
@@ -1709,7 +1706,8 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
1709
1706
  return job_api_repr
1710
1707
 
1711
1708
  @deprecated(
1712
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.insert_job`",
1709
+ planned_removal_date="November 01, 2024",
1710
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.insert_job",
1713
1711
  category=AirflowProviderDeprecationWarning,
1714
1712
  )
1715
1713
  def run_with_configuration(self, configuration: dict) -> str:
@@ -1730,7 +1728,8 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
1730
1728
  return job.job_id
1731
1729
 
1732
1730
  @deprecated(
1733
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.insert_job`",
1731
+ planned_removal_date="November 01, 2024",
1732
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.insert_job",
1734
1733
  category=AirflowProviderDeprecationWarning,
1735
1734
  )
1736
1735
  def run_load(
@@ -1971,7 +1970,8 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
1971
1970
  return job.job_id
1972
1971
 
1973
1972
  @deprecated(
1974
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.insert_job`",
1973
+ planned_removal_date="November 01, 2024",
1974
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.insert_job",
1975
1975
  category=AirflowProviderDeprecationWarning,
1976
1976
  )
1977
1977
  def run_copy(
@@ -2057,7 +2057,8 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
2057
2057
  return job.job_id
2058
2058
 
2059
2059
  @deprecated(
2060
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.insert_job`",
2060
+ planned_removal_date="November 01, 2024",
2061
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.insert_job",
2061
2062
  category=AirflowProviderDeprecationWarning,
2062
2063
  )
2063
2064
  def run_extract(
@@ -2131,7 +2132,8 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
2131
2132
  return job.job_id
2132
2133
 
2133
2134
  @deprecated(
2134
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.insert_job`",
2135
+ planned_removal_date="November 01, 2024",
2136
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.insert_job",
2135
2137
  category=AirflowProviderDeprecationWarning,
2136
2138
  )
2137
2139
  def run_query(
@@ -2413,10 +2415,13 @@ class BigQueryHook(GoogleBaseHook, DbApiHook):
2413
2415
  table_id = cmpt[1]
2414
2416
  else:
2415
2417
  raise ValueError(
2416
- f"{var_print(var_name)} Expect format of (<project.|<project:)<dataset>.<table>, "
2418
+ f"{var_print(var_name)}Expect format of (<project.|<project:)<dataset>.<table>, "
2417
2419
  f"got {table_input}"
2418
2420
  )
2419
2421
 
2422
+ # Exclude partition from the table name
2423
+ table_id = table_id.split("$")[0]
2424
+
2420
2425
  if project_id is None:
2421
2426
  if var_name is not None:
2422
2427
  self.log.info(
@@ -2548,7 +2553,8 @@ class BigQueryBaseCursor(LoggingMixin):
2548
2553
  self.hook = hook
2549
2554
 
2550
2555
  @deprecated(
2551
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.create_empty_table`",
2556
+ planned_removal_date="November 01, 2024",
2557
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.create_empty_table",
2552
2558
  category=AirflowProviderDeprecationWarning,
2553
2559
  )
2554
2560
  def create_empty_table(self, *args, **kwargs):
@@ -2561,7 +2567,8 @@ class BigQueryBaseCursor(LoggingMixin):
2561
2567
  return self.hook.create_empty_table(*args, **kwargs)
2562
2568
 
2563
2569
  @deprecated(
2564
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.create_empty_dataset`",
2570
+ planned_removal_date="November 01, 2024",
2571
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.create_empty_dataset",
2565
2572
  category=AirflowProviderDeprecationWarning,
2566
2573
  )
2567
2574
  def create_empty_dataset(self, *args, **kwargs) -> dict[str, Any]:
@@ -2574,7 +2581,8 @@ class BigQueryBaseCursor(LoggingMixin):
2574
2581
  return self.hook.create_empty_dataset(*args, **kwargs)
2575
2582
 
2576
2583
  @deprecated(
2577
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_dataset_tables`",
2584
+ planned_removal_date="November 01, 2024",
2585
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_dataset_tables",
2578
2586
  category=AirflowProviderDeprecationWarning,
2579
2587
  )
2580
2588
  def get_dataset_tables(self, *args, **kwargs) -> list[dict[str, Any]]:
@@ -2587,7 +2595,8 @@ class BigQueryBaseCursor(LoggingMixin):
2587
2595
  return self.hook.get_dataset_tables(*args, **kwargs)
2588
2596
 
2589
2597
  @deprecated(
2590
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.delete_dataset`",
2598
+ planned_removal_date="November 01, 2024",
2599
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.delete_dataset",
2591
2600
  category=AirflowProviderDeprecationWarning,
2592
2601
  )
2593
2602
  def delete_dataset(self, *args, **kwargs) -> None:
@@ -2600,7 +2609,8 @@ class BigQueryBaseCursor(LoggingMixin):
2600
2609
  return self.hook.delete_dataset(*args, **kwargs)
2601
2610
 
2602
2611
  @deprecated(
2603
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.create_external_table`",
2612
+ planned_removal_date="November 01, 2024",
2613
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.create_external_table",
2604
2614
  category=AirflowProviderDeprecationWarning,
2605
2615
  )
2606
2616
  def create_external_table(self, *args, **kwargs):
@@ -2613,7 +2623,8 @@ class BigQueryBaseCursor(LoggingMixin):
2613
2623
  return self.hook.create_external_table(*args, **kwargs)
2614
2624
 
2615
2625
  @deprecated(
2616
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.patch_table`",
2626
+ planned_removal_date="November 01, 2024",
2627
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.patch_table",
2617
2628
  category=AirflowProviderDeprecationWarning,
2618
2629
  )
2619
2630
  def patch_table(self, *args, **kwargs) -> None:
@@ -2626,7 +2637,8 @@ class BigQueryBaseCursor(LoggingMixin):
2626
2637
  return self.hook.patch_table(*args, **kwargs)
2627
2638
 
2628
2639
  @deprecated(
2629
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.insert_all`",
2640
+ planned_removal_date="November 01, 2024",
2641
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.insert_all",
2630
2642
  category=AirflowProviderDeprecationWarning,
2631
2643
  )
2632
2644
  def insert_all(self, *args, **kwargs) -> None:
@@ -2639,7 +2651,8 @@ class BigQueryBaseCursor(LoggingMixin):
2639
2651
  return self.hook.insert_all(*args, **kwargs)
2640
2652
 
2641
2653
  @deprecated(
2642
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.update_dataset`",
2654
+ planned_removal_date="November 01, 2024",
2655
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.update_dataset",
2643
2656
  category=AirflowProviderDeprecationWarning,
2644
2657
  )
2645
2658
  def update_dataset(self, *args, **kwargs) -> dict:
@@ -2652,7 +2665,8 @@ class BigQueryBaseCursor(LoggingMixin):
2652
2665
  return Dataset.to_api_repr(self.hook.update_dataset(*args, **kwargs))
2653
2666
 
2654
2667
  @deprecated(
2655
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.patch_dataset`",
2668
+ planned_removal_date="November 01, 2024",
2669
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.patch_dataset",
2656
2670
  category=AirflowProviderDeprecationWarning,
2657
2671
  )
2658
2672
  def patch_dataset(self, *args, **kwargs) -> dict:
@@ -2665,7 +2679,8 @@ class BigQueryBaseCursor(LoggingMixin):
2665
2679
  return self.hook.patch_dataset(*args, **kwargs)
2666
2680
 
2667
2681
  @deprecated(
2668
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_dataset_tables_list`",
2682
+ planned_removal_date="November 01, 2024",
2683
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_dataset_tables_list",
2669
2684
  category=AirflowProviderDeprecationWarning,
2670
2685
  )
2671
2686
  def get_dataset_tables_list(self, *args, **kwargs) -> list[dict[str, Any]]:
@@ -2678,7 +2693,8 @@ class BigQueryBaseCursor(LoggingMixin):
2678
2693
  return self.hook.get_dataset_tables_list(*args, **kwargs)
2679
2694
 
2680
2695
  @deprecated(
2681
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_datasets_list`",
2696
+ planned_removal_date="November 01, 2024",
2697
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_datasets_list",
2682
2698
  category=AirflowProviderDeprecationWarning,
2683
2699
  )
2684
2700
  def get_datasets_list(self, *args, **kwargs) -> list | HTTPIterator:
@@ -2691,7 +2707,8 @@ class BigQueryBaseCursor(LoggingMixin):
2691
2707
  return self.hook.get_datasets_list(*args, **kwargs)
2692
2708
 
2693
2709
  @deprecated(
2694
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_dataset`",
2710
+ planned_removal_date="November 01, 2024",
2711
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_dataset",
2695
2712
  category=AirflowProviderDeprecationWarning,
2696
2713
  )
2697
2714
  def get_dataset(self, *args, **kwargs) -> Dataset:
@@ -2704,7 +2721,8 @@ class BigQueryBaseCursor(LoggingMixin):
2704
2721
  return self.hook.get_dataset(*args, **kwargs)
2705
2722
 
2706
2723
  @deprecated(
2707
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_grant_dataset_view_access`",
2724
+ planned_removal_date="November 01, 2024",
2725
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_grant_dataset_view_access",
2708
2726
  category=AirflowProviderDeprecationWarning,
2709
2727
  )
2710
2728
  def run_grant_dataset_view_access(self, *args, **kwargs) -> dict:
@@ -2718,7 +2736,8 @@ class BigQueryBaseCursor(LoggingMixin):
2718
2736
  return self.hook.run_grant_dataset_view_access(*args, **kwargs)
2719
2737
 
2720
2738
  @deprecated(
2721
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_table_upsert`",
2739
+ planned_removal_date="November 01, 2024",
2740
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_table_upsert",
2722
2741
  category=AirflowProviderDeprecationWarning,
2723
2742
  )
2724
2743
  def run_table_upsert(self, *args, **kwargs) -> dict:
@@ -2731,7 +2750,8 @@ class BigQueryBaseCursor(LoggingMixin):
2731
2750
  return self.hook.run_table_upsert(*args, **kwargs)
2732
2751
 
2733
2752
  @deprecated(
2734
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_table_delete`",
2753
+ planned_removal_date="November 01, 2024",
2754
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_table_delete",
2735
2755
  category=AirflowProviderDeprecationWarning,
2736
2756
  )
2737
2757
  def run_table_delete(self, *args, **kwargs) -> None:
@@ -2744,7 +2764,8 @@ class BigQueryBaseCursor(LoggingMixin):
2744
2764
  return self.hook.run_table_delete(*args, **kwargs)
2745
2765
 
2746
2766
  @deprecated(
2747
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_tabledata`",
2767
+ planned_removal_date="November 01, 2024",
2768
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_tabledata",
2748
2769
  category=AirflowProviderDeprecationWarning,
2749
2770
  )
2750
2771
  def get_tabledata(self, *args, **kwargs) -> list[dict]:
@@ -2757,7 +2778,8 @@ class BigQueryBaseCursor(LoggingMixin):
2757
2778
  return self.hook.get_tabledata(*args, **kwargs)
2758
2779
 
2759
2780
  @deprecated(
2760
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_schema`",
2781
+ planned_removal_date="November 01, 2024",
2782
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.get_schema",
2761
2783
  category=AirflowProviderDeprecationWarning,
2762
2784
  )
2763
2785
  def get_schema(self, *args, **kwargs) -> dict:
@@ -2770,7 +2792,8 @@ class BigQueryBaseCursor(LoggingMixin):
2770
2792
  return self.hook.get_schema(*args, **kwargs)
2771
2793
 
2772
2794
  @deprecated(
2773
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.poll_job_complete`",
2795
+ planned_removal_date="November 01, 2024",
2796
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.poll_job_complete",
2774
2797
  category=AirflowProviderDeprecationWarning,
2775
2798
  )
2776
2799
  def poll_job_complete(self, *args, **kwargs) -> bool:
@@ -2783,7 +2806,8 @@ class BigQueryBaseCursor(LoggingMixin):
2783
2806
  return self.hook.poll_job_complete(*args, **kwargs)
2784
2807
 
2785
2808
  @deprecated(
2786
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.cancel_query`",
2809
+ planned_removal_date="November 01, 2024",
2810
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.cancel_query",
2787
2811
  category=AirflowProviderDeprecationWarning,
2788
2812
  )
2789
2813
  def cancel_query(self, *args, **kwargs) -> None:
@@ -2796,7 +2820,8 @@ class BigQueryBaseCursor(LoggingMixin):
2796
2820
  return self.hook.cancel_query(*args, **kwargs) # type: ignore
2797
2821
 
2798
2822
  @deprecated(
2799
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_with_configuration`",
2823
+ planned_removal_date="November 01, 2024",
2824
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_with_configuration",
2800
2825
  category=AirflowProviderDeprecationWarning,
2801
2826
  )
2802
2827
  def run_with_configuration(self, *args, **kwargs) -> str:
@@ -2809,7 +2834,8 @@ class BigQueryBaseCursor(LoggingMixin):
2809
2834
  return self.hook.run_with_configuration(*args, **kwargs)
2810
2835
 
2811
2836
  @deprecated(
2812
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_load`",
2837
+ planned_removal_date="November 01, 2024",
2838
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_load",
2813
2839
  category=AirflowProviderDeprecationWarning,
2814
2840
  )
2815
2841
  def run_load(self, *args, **kwargs) -> str:
@@ -2822,7 +2848,8 @@ class BigQueryBaseCursor(LoggingMixin):
2822
2848
  return self.hook.run_load(*args, **kwargs)
2823
2849
 
2824
2850
  @deprecated(
2825
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_copy`",
2851
+ planned_removal_date="November 01, 2024",
2852
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_copy",
2826
2853
  category=AirflowProviderDeprecationWarning,
2827
2854
  )
2828
2855
  def run_copy(self, *args, **kwargs) -> str:
@@ -2835,7 +2862,8 @@ class BigQueryBaseCursor(LoggingMixin):
2835
2862
  return self.hook.run_copy(*args, **kwargs)
2836
2863
 
2837
2864
  @deprecated(
2838
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_extract`",
2865
+ planned_removal_date="November 01, 2024",
2866
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_extract",
2839
2867
  category=AirflowProviderDeprecationWarning,
2840
2868
  )
2841
2869
  def run_extract(self, *args, **kwargs) -> str | BigQueryJob:
@@ -2848,7 +2876,8 @@ class BigQueryBaseCursor(LoggingMixin):
2848
2876
  return self.hook.run_extract(*args, **kwargs)
2849
2877
 
2850
2878
  @deprecated(
2851
- reason="Please use `airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_query`",
2879
+ planned_removal_date="November 01, 2024",
2880
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.run_query",
2852
2881
  category=AirflowProviderDeprecationWarning,
2853
2882
  )
2854
2883
  def run_query(self, *args, **kwargs) -> str:
@@ -3256,6 +3285,11 @@ def _escape(s: str) -> str:
3256
3285
  return e
3257
3286
 
3258
3287
 
3288
+ @deprecated(
3289
+ planned_removal_date="April 01, 2025",
3290
+ use_instead="airflow.providers.google.cloud.hooks.bigquery.BigQueryHook.split_tablename",
3291
+ category=AirflowProviderDeprecationWarning,
3292
+ )
3259
3293
  def split_tablename(
3260
3294
  table_input: str, default_project_id: str, var_name: str | None = None
3261
3295
  ) -> tuple[str, str, str]:
@@ -3304,6 +3338,9 @@ def split_tablename(
3304
3338
  f"{var_print(var_name)}Expect format of (<project.|<project:)<dataset>.<table>, got {table_input}"
3305
3339
  )
3306
3340
 
3341
+ # Exclude partition from the table name
3342
+ table_id = table_id.split("$")[0]
3343
+
3307
3344
  if project_id is None:
3308
3345
  if var_name is not None:
3309
3346
  log.info(
@@ -21,7 +21,6 @@ from __future__ import annotations
21
21
 
22
22
  from typing import TYPE_CHECKING, Sequence
23
23
 
24
- from deprecated import deprecated
25
24
  from google.api_core.client_options import ClientOptions
26
25
  from google.api_core.exceptions import AlreadyExists
27
26
  from google.api_core.gapic_v1.method import DEFAULT, _MethodDefault
@@ -29,6 +28,7 @@ from google.cloud.devtools.cloudbuild_v1 import CloudBuildAsyncClient, CloudBuil
29
28
 
30
29
  from airflow.exceptions import AirflowException, AirflowProviderDeprecationWarning
31
30
  from airflow.providers.google.common.consts import CLIENT_INFO
31
+ from airflow.providers.google.common.deprecated import deprecated
32
32
  from airflow.providers.google.common.hooks.base_google import PROVIDE_PROJECT_ID, GoogleBaseHook
33
33
 
34
34
  if TYPE_CHECKING:
@@ -191,7 +191,8 @@ class CloudBuildHook(GoogleBaseHook):
191
191
 
192
192
  @GoogleBaseHook.fallback_to_default_project_id
193
193
  @deprecated(
194
- reason="Please use `create_build_without_waiting_for_result`",
194
+ planned_removal_date="March 01, 2025",
195
+ use_instead="create_build_without_waiting_for_result",
195
196
  category=AirflowProviderDeprecationWarning,
196
197
  )
197
198
  def create_build(