google-cloud-bigquery 3.42.3__tar.gz → 3.44.0__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 (168) hide show
  1. {google_cloud_bigquery-3.42.3/google_cloud_bigquery.egg-info → google_cloud_bigquery-3.44.0}/PKG-INFO +22 -2
  2. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/README.rst +20 -0
  3. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/__init__.py +9 -0
  4. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/_helpers.py +1 -1
  5. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/_job_helpers.py +19 -0
  6. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/_versions_helpers.py +50 -2
  7. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/client.py +34 -0
  8. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/dbapi/connection.py +6 -6
  9. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/enums.py +17 -0
  10. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/query.py +0 -1
  11. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/table.py +257 -38
  12. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/version.py +1 -1
  13. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0/google_cloud_bigquery.egg-info}/PKG-INFO +22 -2
  14. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google_cloud_bigquery.egg-info/SOURCES.txt +1 -0
  15. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google_cloud_bigquery.egg-info/requires.txt +1 -1
  16. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/pyproject.toml +1 -1
  17. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/system/test_arrow.py +51 -0
  18. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/system/test_client.py +96 -49
  19. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test__job_helpers.py +1 -1
  20. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test__versions_helpers.py +179 -24
  21. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_client.py +40 -1
  22. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_magics.py +8 -7
  23. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_query.py +7 -0
  24. google_cloud_bigquery-3.44.0/tests/unit/test_query_results_format_arrow.py +573 -0
  25. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_table.py +122 -50
  26. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/LICENSE +0 -0
  27. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/MANIFEST.in +0 -0
  28. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/_http.py +0 -0
  29. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/_pandas_helpers.py +0 -0
  30. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/_pyarrow_helpers.py +0 -0
  31. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/_string_references.py +0 -0
  32. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/_tqdm_helpers.py +0 -0
  33. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/dataset.py +0 -0
  34. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/dbapi/__init__.py +0 -0
  35. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/dbapi/_helpers.py +0 -0
  36. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/dbapi/cursor.py +0 -0
  37. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/dbapi/exceptions.py +0 -0
  38. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/dbapi/types.py +0 -0
  39. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/encryption_configuration.py +0 -0
  40. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/exceptions.py +0 -0
  41. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/external_config.py +0 -0
  42. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/format_options.py +0 -0
  43. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/iam.py +0 -0
  44. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/job/__init__.py +0 -0
  45. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/job/base.py +0 -0
  46. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/job/copy_.py +0 -0
  47. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/job/extract.py +0 -0
  48. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/job/load.py +0 -0
  49. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/job/query.py +0 -0
  50. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/magics/__init__.py +0 -0
  51. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/magics/line_arg_parser/__init__.py +0 -0
  52. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/magics/line_arg_parser/exceptions.py +0 -0
  53. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/magics/line_arg_parser/lexer.py +0 -0
  54. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/magics/line_arg_parser/parser.py +0 -0
  55. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/magics/line_arg_parser/visitors.py +0 -0
  56. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/magics/magics.py +0 -0
  57. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/model.py +0 -0
  58. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/opentelemetry_tracing.py +0 -0
  59. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/py.typed +0 -0
  60. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/retry.py +0 -0
  61. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/routine/__init__.py +0 -0
  62. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/routine/routine.py +0 -0
  63. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/schema.py +0 -0
  64. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery/standard_sql.py +0 -0
  65. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery_v2/__init__.py +0 -0
  66. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery_v2/types/__init__.py +0 -0
  67. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery_v2/types/encryption_config.py +0 -0
  68. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery_v2/types/model.py +0 -0
  69. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery_v2/types/model_reference.py +0 -0
  70. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery_v2/types/standard_sql.py +0 -0
  71. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google/cloud/bigquery_v2/types/table_reference.py +0 -0
  72. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google_cloud_bigquery.egg-info/dependency_links.txt +0 -0
  73. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/google_cloud_bigquery.egg-info/top_level.txt +0 -0
  74. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/setup.cfg +0 -0
  75. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/setup.py +0 -0
  76. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/__init__.py +0 -0
  77. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/data/characters.json +0 -0
  78. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/data/characters.jsonl +0 -0
  79. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/data/colors.avro +0 -0
  80. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/data/numeric_38_12.parquet +0 -0
  81. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/data/people.csv +0 -0
  82. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/data/pico.csv +0 -0
  83. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/data/pico_schema.json +0 -0
  84. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/data/scalars.csv +0 -0
  85. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/data/scalars.jsonl +0 -0
  86. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/data/scalars_extreme.jsonl +0 -0
  87. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/data/scalars_schema.json +0 -0
  88. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/data/scalars_schema_csv.json +0 -0
  89. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/data/schema.json +0 -0
  90. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/scrub_datasets.py +0 -0
  91. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/system/__init__.py +0 -0
  92. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/system/conftest.py +0 -0
  93. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/system/helpers.py +0 -0
  94. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/system/test_job_retry.py +0 -0
  95. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/system/test_list_rows.py +0 -0
  96. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/system/test_magics.py +0 -0
  97. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/system/test_pandas.py +0 -0
  98. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/system/test_query.py +0 -0
  99. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/system/test_ssl_retry.py +0 -0
  100. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/system/test_structs.py +0 -0
  101. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/__init__.py +0 -0
  102. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/_helpers/__init__.py +0 -0
  103. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/_helpers/test_cell_data_parser.py +0 -0
  104. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/_helpers/test_data_frame_cell_data_parser.py +0 -0
  105. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/_helpers/test_scalar_query_param_parser.py +0 -0
  106. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/conftest.py +0 -0
  107. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/helpers.py +0 -0
  108. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/job/__init__.py +0 -0
  109. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/job/helpers.py +0 -0
  110. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/job/test_async_job_retry.py +0 -0
  111. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/job/test_base.py +0 -0
  112. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/job/test_copy.py +0 -0
  113. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/job/test_extract.py +0 -0
  114. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/job/test_load.py +0 -0
  115. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/job/test_load_config.py +0 -0
  116. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/job/test_query.py +0 -0
  117. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/job/test_query_config.py +0 -0
  118. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/job/test_query_job_retry.py +0 -0
  119. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/job/test_query_pandas.py +0 -0
  120. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/job/test_query_stats.py +0 -0
  121. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/line_arg_parser/__init__.py +0 -0
  122. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/line_arg_parser/test_lexer.py +0 -0
  123. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/line_arg_parser/test_parser.py +0 -0
  124. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/line_arg_parser/test_visitors.py +0 -0
  125. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/model/__init__.py +0 -0
  126. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/model/test_model.py +0 -0
  127. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/model/test_model_reference.py +0 -0
  128. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/routine/__init__.py +0 -0
  129. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/routine/test_external_runtime_options.py +0 -0
  130. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/routine/test_remote_function_options.py +0 -0
  131. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/routine/test_routine.py +0 -0
  132. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/routine/test_routine_argument.py +0 -0
  133. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/routine/test_routine_reference.py +0 -0
  134. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test__helpers.py +0 -0
  135. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test__http.py +0 -0
  136. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test__job_helpers_retry.py +0 -0
  137. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test__pandas_helpers.py +0 -0
  138. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test__pyarrow_helpers.py +0 -0
  139. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_client_bigframes.py +0 -0
  140. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_client_resumable_media_upload.py +0 -0
  141. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_client_retry.py +0 -0
  142. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_create_dataset.py +0 -0
  143. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_dataset.py +0 -0
  144. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_dbapi__helpers.py +0 -0
  145. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_dbapi_connection.py +0 -0
  146. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_dbapi_cursor.py +0 -0
  147. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_dbapi_types.py +0 -0
  148. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_delete_dataset.py +0 -0
  149. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_encryption_configuration.py +0 -0
  150. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_external_config.py +0 -0
  151. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_format_options.py +0 -0
  152. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_job_retry.py +0 -0
  153. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_legacy_types.py +0 -0
  154. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_list_datasets.py +0 -0
  155. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_list_jobs.py +0 -0
  156. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_list_models.py +0 -0
  157. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_list_projects.py +0 -0
  158. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_list_routines.py +0 -0
  159. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_list_tables.py +0 -0
  160. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_opentelemetry_tracing.py +0 -0
  161. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_packaging.py +0 -0
  162. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_retry.py +0 -0
  163. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_schema.py +0 -0
  164. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_signature_compatibility.py +0 -0
  165. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_standard_sql_types.py +0 -0
  166. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_string_references.py +0 -0
  167. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_table_arrow.py +0 -0
  168. {google_cloud_bigquery-3.42.3 → google_cloud_bigquery-3.44.0}/tests/unit/test_table_pandas.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: google-cloud-bigquery
3
- Version: 3.42.3
3
+ Version: 3.44.0
4
4
  Summary: Google BigQuery API client library
5
5
  Author-email: Google LLC <googleapis-packages@google.com>
6
6
  License: Apache 2.0
@@ -19,7 +19,7 @@ Classifier: Topic :: Internet
19
19
  Requires-Python: >=3.10
20
20
  Description-Content-Type: text/x-rst
21
21
  License-File: LICENSE
22
- Requires-Dist: google-api-core[grpc]<3.0.0,>=2.25.0
22
+ Requires-Dist: google-api-core[grpc]<3.0.0,>=2.28.0
23
23
  Requires-Dist: google-auth[pyopenssl]<3.0.0,>=2.14.1
24
24
  Requires-Dist: google-cloud-core<3.0.0,>=2.4.1
25
25
  Requires-Dist: google-resumable-media<3.0.0,>=2.0.0
@@ -85,6 +85,26 @@ processing power of Google's infrastructure.
85
85
  .. _Client Library Documentation: https://cloud.google.com/python/docs/reference/bigquery/latest/summary_overview
86
86
  .. _Product Documentation: https://cloud.google.com/bigquery/docs/reference/v2/
87
87
 
88
+
89
+ Related Libraries
90
+ -----------------
91
+
92
+ For higher-level data analysis and DataFrame operations, consider using one of the following connector libraries:
93
+
94
+ .. list-table::
95
+ :header-rows: 1
96
+
97
+ * - Library
98
+ - Description
99
+ - Documentation
100
+ * - `BigQuery DataFrames (bigframes) <https://dataframes.bigquery.dev/>`_
101
+ - Flexible pandas-like and scikit-learn-like API powered by BigQuery engine for large-scale data analysis and ML.
102
+ - `BigFrames Docs <https://dataframes.bigquery.dev/>`_
103
+ * - `pandas-gbq <https://pandas-gbq.readthedocs.io/>`_
104
+ - Convenient integration allowing pandas DataFrames to load from and write to BigQuery.
105
+ - `pandas-gbq Docs <https://pandas-gbq.readthedocs.io/>`_
106
+
107
+
88
108
  Quick Start
89
109
  -----------
90
110
 
@@ -21,6 +21,26 @@ processing power of Google's infrastructure.
21
21
  .. _Client Library Documentation: https://cloud.google.com/python/docs/reference/bigquery/latest/summary_overview
22
22
  .. _Product Documentation: https://cloud.google.com/bigquery/docs/reference/v2/
23
23
 
24
+
25
+ Related Libraries
26
+ -----------------
27
+
28
+ For higher-level data analysis and DataFrame operations, consider using one of the following connector libraries:
29
+
30
+ .. list-table::
31
+ :header-rows: 1
32
+
33
+ * - Library
34
+ - Description
35
+ - Documentation
36
+ * - `BigQuery DataFrames (bigframes) <https://dataframes.bigquery.dev/>`_
37
+ - Flexible pandas-like and scikit-learn-like API powered by BigQuery engine for large-scale data analysis and ML.
38
+ - `BigFrames Docs <https://dataframes.bigquery.dev/>`_
39
+ * - `pandas-gbq <https://pandas-gbq.readthedocs.io/>`_
40
+ - Convenient integration allowing pandas DataFrames to load from and write to BigQuery.
41
+ - `pandas-gbq Docs <https://pandas-gbq.readthedocs.io/>`_
42
+
43
+
24
44
  Quick Start
25
45
  -----------
26
46
 
@@ -30,6 +30,8 @@ The main concepts with this API are:
30
30
  import sys
31
31
  import warnings
32
32
 
33
+ import google.api_core as api_core
34
+
33
35
  from google.cloud.bigquery import version as bigquery_version
34
36
 
35
37
  __version__ = bigquery_version.__version__
@@ -57,6 +59,8 @@ from google.cloud.bigquery.external_config import ExternalSourceFormat
57
59
  from google.cloud.bigquery.external_config import HivePartitioningOptions
58
60
  from google.cloud.bigquery.format_options import AvroOptions
59
61
  from google.cloud.bigquery.format_options import ParquetOptions
62
+ from google.cloud.bigquery.enums import QueryResultsCompressionCodec
63
+ from google.cloud.bigquery.enums import QueryResultsFormat
60
64
  from google.cloud.bigquery.job.base import SessionInfo
61
65
  from google.cloud.bigquery.job import Compression
62
66
  from google.cloud.bigquery.job import CopyJob
@@ -132,6 +136,9 @@ if sys.version_info < (3, 10): # pragma: NO COVER
132
136
  FutureWarning,
133
137
  )
134
138
 
139
+ api_core.check_python_version(__name__)
140
+ api_core.check_dependency_versions(__name__)
141
+
135
142
  __all__ = [
136
143
  "__version__",
137
144
  "Client",
@@ -216,6 +223,8 @@ __all__ = [
216
223
  "KeyResultStatementKind",
217
224
  "OperationType",
218
225
  "QueryPriority",
226
+ "QueryResultsCompressionCodec",
227
+ "QueryResultsFormat",
219
228
  "RoutineType",
220
229
  "SchemaUpdateOption",
221
230
  "SourceFormat",
@@ -295,7 +295,7 @@ class CellDataParser:
295
295
  return _date_from_iso8601_date(value)
296
296
 
297
297
  def time_to_py(self, value, field):
298
- """Coerce 'value' to a datetime date, if set or not nullable"""
298
+ """Coerce 'value' to a datetime time, if set or not nullable"""
299
299
  if _not_null(value, field):
300
300
  if len(value) == 8: # HH:MM:SS
301
301
  fmt = _TIMEONLY_WO_MICROS
@@ -430,6 +430,8 @@ def query_and_wait(
430
430
  job_retry: Optional[retries.Retry],
431
431
  page_size: Optional[int] = None,
432
432
  max_results: Optional[int] = None,
433
+ query_results_format: Optional[str] = None,
434
+ compression_codec: Optional[str] = None,
433
435
  callback: Callable = lambda _: None,
434
436
  ) -> table.RowIterator:
435
437
  """Run the query, wait for it to finish, and return the results.
@@ -475,6 +477,10 @@ def query_and_wait(
475
477
  request. Non-positive values are ignored.
476
478
  max_results (Optional[int]):
477
479
  The maximum total number of rows from this request.
480
+ query_results_format (Optional[Union[str, google.cloud.bigquery.enums.QueryResultsFormat]]):
481
+ [Beta] The format for query results (e.g. "ARROW" or :class:`~google.cloud.bigquery.enums.QueryResultsFormat.ARROW`).
482
+ compression_codec (Optional[Union[str, google.cloud.bigquery.enums.QueryResultsCompressionCodec]]):
483
+ [Beta] Compression codec for Arrow serialization (e.g. "LZ4_FRAME" or :class:`~google.cloud.bigquery.enums.QueryResultsCompressionCodec.LZ4_FRAME`).
478
484
  callback (Callable):
479
485
  A callback function used by bigframes to report query progress.
480
486
 
@@ -499,6 +505,13 @@ def query_and_wait(
499
505
  request_body = _to_query_request(
500
506
  query=query, job_config=job_config, location=location, timeout=api_timeout
501
507
  )
508
+ if query_results_format is not None:
509
+ request_body["queryResultsFormat"] = query_results_format
510
+ if compression_codec is not None:
511
+ request_body.setdefault("formatOptions", {})
512
+ request_body["formatOptions"]["arrowSerializationOptions"] = {
513
+ "bufferCompression": compression_codec
514
+ }
502
515
 
503
516
  # Some API parameters aren't supported by the jobs.query API. In these
504
517
  # cases, fallback to a jobs.insert call.
@@ -522,6 +535,7 @@ def query_and_wait(
522
535
  retry=retry,
523
536
  page_size=page_size,
524
537
  max_results=max_results,
538
+ query_results_format=query_results_format,
525
539
  callback=callback,
526
540
  )
527
541
 
@@ -594,6 +608,7 @@ def query_and_wait(
594
608
  retry=retry,
595
609
  page_size=page_size,
596
610
  max_results=max_results,
611
+ query_results_format=query_results_format,
597
612
  callback=callback,
598
613
  )
599
614
 
@@ -633,6 +648,7 @@ def query_and_wait(
633
648
  created=query_results.created,
634
649
  started=query_results.started,
635
650
  ended=query_results.ended,
651
+ query_results_format=query_results_format,
636
652
  )
637
653
 
638
654
  if job_retry is not None:
@@ -673,6 +689,7 @@ def _supported_by_jobs_query(request_body: Dict[str, Any]) -> bool:
673
689
  "jobTimeoutMs",
674
690
  "reservation",
675
691
  "maxSlots",
692
+ "queryResultsFormat",
676
693
  }
677
694
 
678
695
  unsupported_keys = request_keys - keys_allowlist
@@ -687,6 +704,7 @@ def _wait_or_cancel(
687
704
  page_size: Optional[int],
688
705
  max_results: Optional[int],
689
706
  *,
707
+ query_results_format: Optional[str] = None,
690
708
  callback: Callable = lambda _: None,
691
709
  ) -> table.RowIterator:
692
710
  """Wait for a job to complete and return the results.
@@ -731,6 +749,7 @@ def _wait_or_cancel(
731
749
  ended=job.ended,
732
750
  )
733
751
  )
752
+ query_results._query_results_format = query_results_format
734
753
  return query_results
735
754
  except Exception:
736
755
  # Attempt to cancel the job since we can't return the results.
@@ -16,10 +16,8 @@
16
16
  from typing import Any
17
17
 
18
18
  import packaging.version
19
-
20
19
  from google.cloud.bigquery import exceptions
21
20
 
22
-
23
21
  _MIN_PYARROW_VERSION = packaging.version.Version("3.0.0")
24
22
  _MIN_BQ_STORAGE_VERSION = packaging.version.Version("2.0.0")
25
23
  _BQ_STORAGE_OPTIONAL_READ_SESSION_VERSION = packaging.version.Version("2.6.0")
@@ -27,6 +25,7 @@ _MIN_PANDAS_VERSION = packaging.version.Version("1.1.0")
27
25
 
28
26
  _MIN_PANDAS_VERSION_RANGE = packaging.version.Version("1.5.0")
29
27
  _MIN_PYARROW_VERSION_RANGE = packaging.version.Version("10.0.1")
28
+ _MIN_PANDAS_GBQ_DELEGATION_VERSION = packaging.version.Version("1.0.0")
30
29
 
31
30
 
32
31
  class PyarrowVersions:
@@ -247,3 +246,52 @@ SUPPORTS_RANGE_PYARROW = (
247
246
  and PYARROW_VERSIONS.try_import() is not None
248
247
  and PYARROW_VERSIONS.installed_version >= _MIN_PYARROW_VERSION_RANGE
249
248
  )
249
+
250
+
251
+ class PandasGBQVersions:
252
+ """Version and delegation comparisons for pandas-gbq package."""
253
+
254
+ def __init__(self):
255
+ self._installed_version = None
256
+ self._delegation_api_version = None
257
+
258
+ @property
259
+ def installed_version(self) -> packaging.version.Version:
260
+ """Return the parsed version of pandas-gbq."""
261
+ if self._installed_version is not None:
262
+ return self._installed_version
263
+
264
+ try:
265
+ import pandas_gbq # type: ignore
266
+
267
+ self._installed_version = packaging.version.parse(
268
+ getattr(pandas_gbq, "__version__", "0.0.0")
269
+ )
270
+ except Exception:
271
+ self._installed_version = packaging.version.parse("0.0.0")
272
+ return self._installed_version
273
+
274
+ @property
275
+ def delegation_api_version(self) -> packaging.version.Version:
276
+ """Return the delegation API version of pandas-gbq if installed, otherwise 0.0.0."""
277
+ if self._delegation_api_version is not None:
278
+ return self._delegation_api_version
279
+
280
+ try:
281
+ import pandas_gbq # type: ignore
282
+
283
+ raw_version = getattr(
284
+ pandas_gbq, "_internal_delegation_api_version", "0.0.0"
285
+ )
286
+ self._delegation_api_version = packaging.version.parse(str(raw_version))
287
+ except Exception:
288
+ self._delegation_api_version = packaging.version.parse("0.0.0")
289
+ return self._delegation_api_version
290
+
291
+ @property
292
+ def is_delegation_supported(self) -> bool:
293
+ """True if the installed pandas-gbq version supports query delegation API."""
294
+ return self.delegation_api_version >= _MIN_PANDAS_GBQ_DELEGATION_VERSION
295
+
296
+
297
+ PANDAS_GBQ_VERSIONS = PandasGBQVersions()
@@ -163,6 +163,16 @@ _LIST_ROWS_FROM_QUERY_RESULTS_FIELDS = "jobReference,totalRows,pageToken,rows"
163
163
  # https://github.com/googleapis/python-bigquery/issues/438
164
164
  _MIN_GET_QUERY_RESULTS_TIMEOUT = 120
165
165
 
166
+ _LOAD_TABLE_FROM_DATAFRAME_DEPRECATED = (
167
+ "Loading DataFrames via google-cloud-bigquery is deprecated. "
168
+ "For direct, optimized loading, please call 'pandas_gbq.to_gbq()' directly."
169
+ )
170
+
171
+ _INSERT_ROWS_FROM_DATAFRAME_DEPRECATED = (
172
+ "Inserting rows from DataFrames via google-cloud-bigquery is deprecated. "
173
+ "For direct, optimized access, please call 'pandas_gbq.to_gbq()' directly."
174
+ )
175
+
166
176
  TIMEOUT_HEADER = "X-Server-Timeout"
167
177
 
168
178
 
@@ -2830,6 +2840,12 @@ class Client(ClientWithProject):
2830
2840
  If ``job_config`` is not an instance of
2831
2841
  :class:`~google.cloud.bigquery.job.LoadJobConfig` class.
2832
2842
  """
2843
+ warnings.warn(
2844
+ _LOAD_TABLE_FROM_DATAFRAME_DEPRECATED,
2845
+ PendingDeprecationWarning,
2846
+ stacklevel=2,
2847
+ )
2848
+
2833
2849
  job_id = _make_job_id(job_id, job_id_prefix)
2834
2850
 
2835
2851
  if job_config is not None:
@@ -3649,6 +3665,8 @@ class Client(ClientWithProject):
3649
3665
  job_retry: retries.Retry = DEFAULT_JOB_RETRY,
3650
3666
  page_size: Optional[int] = None,
3651
3667
  max_results: Optional[int] = None,
3668
+ query_results_format: Optional[str] = None,
3669
+ compression_codec: Optional[str] = None,
3652
3670
  ) -> RowIterator:
3653
3671
  """Run the query, wait for it to finish, and return the results.
3654
3672
 
@@ -3696,6 +3714,10 @@ class Client(ClientWithProject):
3696
3714
  by this parameter.
3697
3715
  max_results (Optional[int]):
3698
3716
  The maximum total number of rows from this request.
3717
+ query_results_format (Optional[Union[str, google.cloud.bigquery.enums.QueryResultsFormat]]):
3718
+ [Beta] The format for query results (e.g. "ARROW" or :class:`~google.cloud.bigquery.enums.QueryResultsFormat.ARROW`).
3719
+ compression_codec (Optional[Union[str, google.cloud.bigquery.enums.QueryResultsCompressionCodec]]):
3720
+ [Beta] Compression codec for Arrow serialization (e.g. "LZ4_FRAME" or :class:`~google.cloud.bigquery.enums.QueryResultsCompressionCodec.LZ4_FRAME`).
3699
3721
 
3700
3722
  Returns:
3701
3723
  google.cloud.bigquery.table.RowIterator:
@@ -3726,6 +3748,8 @@ class Client(ClientWithProject):
3726
3748
  job_retry=job_retry,
3727
3749
  page_size=page_size,
3728
3750
  max_results=max_results,
3751
+ query_results_format=query_results_format,
3752
+ compression_codec=compression_codec,
3729
3753
  )
3730
3754
 
3731
3755
  def _query_and_wait_bigframes(
@@ -3741,6 +3765,8 @@ class Client(ClientWithProject):
3741
3765
  job_retry: retries.Retry = DEFAULT_JOB_RETRY,
3742
3766
  page_size: Optional[int] = None,
3743
3767
  max_results: Optional[int] = None,
3768
+ query_results_format: Optional[str] = None,
3769
+ compression_codec: Optional[str] = None,
3744
3770
  callback: Callable = lambda _: None,
3745
3771
  ) -> RowIterator:
3746
3772
  """See query_and_wait.
@@ -3773,6 +3799,8 @@ class Client(ClientWithProject):
3773
3799
  job_retry=job_retry,
3774
3800
  page_size=page_size,
3775
3801
  max_results=max_results,
3802
+ query_results_format=query_results_format,
3803
+ compression_codec=compression_codec,
3776
3804
  callback=callback,
3777
3805
  )
3778
3806
 
@@ -3900,6 +3928,12 @@ class Client(ClientWithProject):
3900
3928
  Raises:
3901
3929
  ValueError: if table's schema is not set
3902
3930
  """
3931
+ warnings.warn(
3932
+ _INSERT_ROWS_FROM_DATAFRAME_DEPRECATED,
3933
+ PendingDeprecationWarning,
3934
+ stacklevel=2,
3935
+ )
3936
+
3903
3937
  insert_results = []
3904
3938
 
3905
3939
  chunk_count = int(math.ceil(len(dataframe) / chunk_size))
@@ -78,10 +78,14 @@ class Connection(object):
78
78
  """
79
79
  self._closed = True
80
80
 
81
- if self._owns_client:
81
+ for cursor_ in list(self._cursors_created):
82
+ if not cursor_._closed:
83
+ cursor_.close()
84
+
85
+ if self._owns_client and self._client is not None:
82
86
  self._client.close()
83
87
 
84
- if self._owns_bqstorage_client:
88
+ if self._owns_bqstorage_client and self._bqstorage_client is not None:
85
89
  # There is no close() on the BQ Storage client itself.
86
90
  transport = self._bqstorage_client.transport
87
91
  transport.close()
@@ -95,10 +99,6 @@ class Connection(object):
95
99
  if channel is not None:
96
100
  channel.close()
97
101
 
98
- for cursor_ in self._cursors_created:
99
- if not cursor_._closed:
100
- cursor_.close()
101
-
102
102
  def commit(self):
103
103
  """No-op, but for consistency raise an error if connection is closed."""
104
104
 
@@ -495,3 +495,20 @@ class TimestampPrecision(enum.Enum):
495
495
  """
496
496
  For TIMESTAMP type with picosecond precision.
497
497
  """
498
+
499
+
500
+ class QueryResultsFormat(str, enum.Enum):
501
+ """[Beta] Format for query results response."""
502
+
503
+ ARROW = "ARROW"
504
+ """Specifies Apache Arrow format for query results."""
505
+
506
+
507
+ class QueryResultsCompressionCodec(str, enum.Enum):
508
+ """[Beta] Compression codec for Arrow query results serialization."""
509
+
510
+ LZ4_FRAME = "LZ4_FRAME"
511
+ """Specifies LZ4_FRAME compression codec."""
512
+
513
+ ZSTD = "ZSTD"
514
+ """Specifies ZSTD compression codec."""
@@ -1020,7 +1020,6 @@ class RangeQueryParameter(_AbstractQueryParameter):
1020
1020
  ):
1021
1021
  self.name = name
1022
1022
  self.range_element_type = self._parse_range_element_type(range_element_type)
1023
- print(self.range_element_type.type_._type)
1024
1023
  self.start = start
1025
1024
  self.end = end
1026
1025