From beab7c2b27c27d8e824cbc66b290be8158da7abf Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Thu, 2 Feb 2023 11:32:44 +0000 Subject: [PATCH 1/8] chore(deps): update dependency google-cloud-bigquery to v3.5.0 (#1485) --- samples/geography/requirements.txt | 2 +- samples/snippets/requirements.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/samples/geography/requirements.txt b/samples/geography/requirements.txt index 284614d17..2bc282292 100644 --- a/samples/geography/requirements.txt +++ b/samples/geography/requirements.txt @@ -13,7 +13,7 @@ geopandas===0.10.2; python_version == '3.7' geopandas==0.12.2; python_version >= '3.8' google-api-core==2.11.0 google-auth==2.16.0 -google-cloud-bigquery==3.4.2 +google-cloud-bigquery==3.5.0 google-cloud-bigquery-storage==2.18.1 google-cloud-core==2.3.2 google-crc32c==1.5.0 diff --git a/samples/snippets/requirements.txt b/samples/snippets/requirements.txt index a85653d42..86739eec4 100644 --- a/samples/snippets/requirements.txt +++ b/samples/snippets/requirements.txt @@ -1,5 +1,5 @@ db-dtypes==1.0.5 -google-cloud-bigquery==3.4.2 +google-cloud-bigquery==3.5.0 google-cloud-bigquery-storage==2.18.1 google-auth-oauthlib==0.8.0 grpcio==1.51.1 From a190aaa09ae73e8b6a83b7b213247f95fde57615 Mon Sep 17 00:00:00 2001 From: Tim Swast Date: Wed, 8 Feb 2023 10:05:10 -0600 Subject: [PATCH 2/8] fix: annotate optional integer parameters with optional type (#1487) * fix: annotate optional integer parameters with optional type * remove google-cloud-core reference causing type checker issues deps: update minimum google-cloud-core to 1.6.0 --- google/cloud/bigquery/_http.py | 12 --------- google/cloud/bigquery/client.py | 42 +++++++++++++++--------------- google/cloud/bigquery/job/query.py | 6 ++--- setup.py | 2 +- testing/constraints-3.7.txt | 2 +- 5 files changed, 26 insertions(+), 38 deletions(-) diff --git a/google/cloud/bigquery/_http.py b/google/cloud/bigquery/_http.py index 789ef9243..7921900f8 100644 --- a/google/cloud/bigquery/_http.py +++ b/google/cloud/bigquery/_http.py @@ -14,22 +14,10 @@ """Create / interact with Google BigQuery connections.""" -import os -import pkg_resources - from google.cloud import _http # type: ignore # pytype: disable=import-error from google.cloud.bigquery import __version__ -# TODO: Increase the minimum version of google-cloud-core to 1.6.0 -# and remove this logic. See: -# https://github.com/googleapis/python-bigquery/issues/509 -if os.getenv("GOOGLE_API_USE_CLIENT_CERTIFICATE") == "true": # pragma: NO COVER - release = pkg_resources.get_distribution("google-cloud-core").parsed_version - if release < pkg_resources.parse_version("1.6.0"): - raise ImportError("google-cloud-core >= 1.6.0 is required to use mTLS feature") - - class Connection(_http.JSONConnection): """A connection to Google BigQuery via the JSON REST API. diff --git a/google/cloud/bigquery/client.py b/google/cloud/bigquery/client.py index 1885ab67e..4f6e6610d 100644 --- a/google/cloud/bigquery/client.py +++ b/google/cloud/bigquery/client.py @@ -329,11 +329,11 @@ def get_service_account_email( def list_projects( self, - max_results: int = None, + max_results: Optional[int] = None, page_token: str = None, retry: retries.Retry = DEFAULT_RETRY, timeout: TimeoutType = DEFAULT_TIMEOUT, - page_size: int = None, + page_size: Optional[int] = None, ) -> page_iterator.Iterator: """List projects for the project associated with this client. @@ -395,11 +395,11 @@ def list_datasets( project: str = None, include_all: bool = False, filter: str = None, - max_results: int = None, + max_results: Optional[int] = None, page_token: str = None, retry: retries.Retry = DEFAULT_RETRY, timeout: TimeoutType = DEFAULT_TIMEOUT, - page_size: int = None, + page_size: Optional[int] = None, ) -> page_iterator.Iterator: """List datasets for the project associated with this client. @@ -1324,11 +1324,11 @@ def update_table( def list_models( self, dataset: Union[Dataset, DatasetReference, DatasetListItem, str], - max_results: int = None, + max_results: Optional[int] = None, page_token: str = None, retry: retries.Retry = DEFAULT_RETRY, timeout: TimeoutType = DEFAULT_TIMEOUT, - page_size: int = None, + page_size: Optional[int] = None, ) -> page_iterator.Iterator: """[Beta] List models in the dataset. @@ -1401,11 +1401,11 @@ def api_request(*args, **kwargs): def list_routines( self, dataset: Union[Dataset, DatasetReference, DatasetListItem, str], - max_results: int = None, + max_results: Optional[int] = None, page_token: str = None, retry: retries.Retry = DEFAULT_RETRY, timeout: TimeoutType = DEFAULT_TIMEOUT, - page_size: int = None, + page_size: Optional[int] = None, ) -> page_iterator.Iterator: """[Beta] List routines in the dataset. @@ -1478,11 +1478,11 @@ def api_request(*args, **kwargs): def list_tables( self, dataset: Union[Dataset, DatasetReference, DatasetListItem, str], - max_results: int = None, + max_results: Optional[int] = None, page_token: str = None, retry: retries.Retry = DEFAULT_RETRY, timeout: TimeoutType = DEFAULT_TIMEOUT, - page_size: int = None, + page_size: Optional[int] = None, ) -> page_iterator.Iterator: """List tables in the dataset. @@ -1838,7 +1838,7 @@ def _get_query_results( job_id: str, retry: retries.Retry, project: str = None, - timeout_ms: int = None, + timeout_ms: Optional[int] = None, location: str = None, timeout: TimeoutType = DEFAULT_TIMEOUT, ) -> _QueryResults: @@ -2163,7 +2163,7 @@ def list_jobs( self, project: str = None, parent_job: Optional[Union[QueryJob, str]] = None, - max_results: int = None, + max_results: Optional[int] = None, page_token: str = None, all_users: bool = None, state_filter: str = None, @@ -2171,7 +2171,7 @@ def list_jobs( timeout: TimeoutType = DEFAULT_TIMEOUT, min_creation_time: datetime.datetime = None, max_creation_time: datetime.datetime = None, - page_size: int = None, + page_size: Optional[int] = None, ) -> page_iterator.Iterator: """List jobs for the project associated with this client. @@ -2361,7 +2361,7 @@ def load_table_from_file( file_obj: IO[bytes], destination: Union[Table, TableReference, TableListItem, str], rewind: bool = False, - size: int = None, + size: Optional[int] = None, num_retries: int = _DEFAULT_NUM_RETRIES, job_id: str = None, job_id_prefix: str = None, @@ -3729,10 +3729,10 @@ def list_rows( self, table: Union[Table, TableListItem, TableReference, str], selected_fields: Sequence[SchemaField] = None, - max_results: int = None, + max_results: Optional[int] = None, page_token: str = None, - start_index: int = None, - page_size: int = None, + start_index: Optional[int] = None, + page_size: Optional[int] = None, retry: retries.Retry = DEFAULT_RETRY, timeout: TimeoutType = DEFAULT_TIMEOUT, ) -> RowIterator: @@ -3840,11 +3840,11 @@ def _list_rows_from_query_results( location: str, project: str, schema: SchemaField, - total_rows: int = None, + total_rows: Optional[int] = None, destination: Union[Table, TableReference, TableListItem, str] = None, - max_results: int = None, - start_index: int = None, - page_size: int = None, + max_results: Optional[int] = None, + start_index: Optional[int] = None, + page_size: Optional[int] = None, retry: retries.Retry = DEFAULT_RETRY, timeout: TimeoutType = DEFAULT_TIMEOUT, ) -> RowIterator: diff --git a/google/cloud/bigquery/job/query.py b/google/cloud/bigquery/job/query.py index e32e74129..c63fa0892 100644 --- a/google/cloud/bigquery/job/query.py +++ b/google/cloud/bigquery/job/query.py @@ -1381,11 +1381,11 @@ def _done_or_raise(self, retry=DEFAULT_RETRY, timeout=None): def result( # type: ignore # (complaints about the overloaded signature) self, - page_size: int = None, - max_results: int = None, + page_size: Optional[int] = None, + max_results: Optional[int] = None, retry: "retries.Retry" = DEFAULT_RETRY, timeout: float = None, - start_index: int = None, + start_index: Optional[int] = None, job_retry: "retries.Retry" = DEFAULT_JOB_RETRY, ) -> Union["RowIterator", _EmptyRowIterator]: """Start the job and wait for it to complete and get the result. diff --git a/setup.py b/setup.py index 81cb2e5db..e1b018098 100644 --- a/setup.py +++ b/setup.py @@ -39,7 +39,7 @@ # NOTE: Maintainers, please do not require google-cloud-core>=2.x.x # Until this issue is closed # https://github.com/googleapis/google-cloud-python/issues/10566 - "google-cloud-core >= 1.4.1, <3.0.0dev", + "google-cloud-core >= 1.6.0, <3.0.0dev", "google-resumable-media >= 0.6.0, < 3.0dev", "packaging >= 20.0.0", "protobuf>=3.19.5,<5.0.0dev,!=3.20.0,!=3.20.1,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", # For the legacy proto-based types. diff --git a/testing/constraints-3.7.txt b/testing/constraints-3.7.txt index 3701c7343..746656b58 100644 --- a/testing/constraints-3.7.txt +++ b/testing/constraints-3.7.txt @@ -9,7 +9,7 @@ db-dtypes==0.3.0 geopandas==0.9.0 google-api-core==1.31.5 google-cloud-bigquery-storage==2.0.0 -google-cloud-core==1.4.1 +google-cloud-core==1.6.0 google-resumable-media==0.6.0 grpcio==1.47.0 ipywidgets==7.7.1 From 1b31c2fca96ef0c0a6365780ddbda535f25c6b25 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Wed, 8 Feb 2023 16:40:16 +0000 Subject: [PATCH 3/8] build(deps): bump cryptography from 38.0.3 to 39.0.1 in /synthtool/gcp/templates/python_library/.kokoro (#1489) Source-Link: https://togithub.com/googleapis/synthtool/commit/bb171351c3946d3c3c32e60f5f18cee8c464ec51 Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:f62c53736eccb0c4934a3ea9316e0d57696bb49c1a7c86c726e9bb8a2f87dadf --- .github/.OwlBot.lock.yaml | 2 +- .kokoro/requirements.txt | 49 ++++++++++++++++++--------------------- 2 files changed, 23 insertions(+), 28 deletions(-) diff --git a/.github/.OwlBot.lock.yaml b/.github/.OwlBot.lock.yaml index 889f77dfa..894fb6bc9 100644 --- a/.github/.OwlBot.lock.yaml +++ b/.github/.OwlBot.lock.yaml @@ -13,4 +13,4 @@ # limitations under the License. docker: image: gcr.io/cloud-devrel-public-resources/owlbot-python:latest - digest: sha256:c43f1d918bcf817d337aa29ff833439494a158a0831508fda4ec75dc4c0d0320 + digest: sha256:f62c53736eccb0c4934a3ea9316e0d57696bb49c1a7c86c726e9bb8a2f87dadf diff --git a/.kokoro/requirements.txt b/.kokoro/requirements.txt index 05dc4672e..096e4800a 100644 --- a/.kokoro/requirements.txt +++ b/.kokoro/requirements.txt @@ -113,33 +113,28 @@ commonmark==0.9.1 \ --hash=sha256:452f9dc859be7f06631ddcb328b6919c67984aca654e5fefb3914d54691aed60 \ --hash=sha256:da2f38c92590f83de410ba1a3cbceafbc74fee9def35f9251ba9a971d6d66fd9 # via rich -cryptography==38.0.3 \ - --hash=sha256:068147f32fa662c81aebab95c74679b401b12b57494872886eb5c1139250ec5d \ - --hash=sha256:06fc3cc7b6f6cca87bd56ec80a580c88f1da5306f505876a71c8cfa7050257dd \ - --hash=sha256:25c1d1f19729fb09d42e06b4bf9895212292cb27bb50229f5aa64d039ab29146 \ - --hash=sha256:402852a0aea73833d982cabb6d0c3bb582c15483d29fb7085ef2c42bfa7e38d7 \ - --hash=sha256:4e269dcd9b102c5a3d72be3c45d8ce20377b8076a43cbed6f660a1afe365e436 \ - --hash=sha256:5419a127426084933076132d317911e3c6eb77568a1ce23c3ac1e12d111e61e0 \ - --hash=sha256:554bec92ee7d1e9d10ded2f7e92a5d70c1f74ba9524947c0ba0c850c7b011828 \ - --hash=sha256:5e89468fbd2fcd733b5899333bc54d0d06c80e04cd23d8c6f3e0542358c6060b \ - --hash=sha256:65535bc550b70bd6271984d9863a37741352b4aad6fb1b3344a54e6950249b55 \ - --hash=sha256:6ab9516b85bebe7aa83f309bacc5f44a61eeb90d0b4ec125d2d003ce41932d36 \ - --hash=sha256:6addc3b6d593cd980989261dc1cce38263c76954d758c3c94de51f1e010c9a50 \ - --hash=sha256:728f2694fa743a996d7784a6194da430f197d5c58e2f4e278612b359f455e4a2 \ - --hash=sha256:785e4056b5a8b28f05a533fab69febf5004458e20dad7e2e13a3120d8ecec75a \ - --hash=sha256:78cf5eefac2b52c10398a42765bfa981ce2372cbc0457e6bf9658f41ec3c41d8 \ - --hash=sha256:7f836217000342d448e1c9a342e9163149e45d5b5eca76a30e84503a5a96cab0 \ - --hash=sha256:8d41a46251bf0634e21fac50ffd643216ccecfaf3701a063257fe0b2be1b6548 \ - --hash=sha256:984fe150f350a3c91e84de405fe49e688aa6092b3525f407a18b9646f6612320 \ - --hash=sha256:9b24bcff7853ed18a63cfb0c2b008936a9554af24af2fb146e16d8e1aed75748 \ - --hash=sha256:b1b35d9d3a65542ed2e9d90115dfd16bbc027b3f07ee3304fc83580f26e43249 \ - --hash=sha256:b1b52c9e5f8aa2b802d48bd693190341fae201ea51c7a167d69fc48b60e8a959 \ - --hash=sha256:bbf203f1a814007ce24bd4d51362991d5cb90ba0c177a9c08825f2cc304d871f \ - --hash=sha256:be243c7e2bfcf6cc4cb350c0d5cdf15ca6383bbcb2a8ef51d3c9411a9d4386f0 \ - --hash=sha256:bfbe6ee19615b07a98b1d2287d6a6073f734735b49ee45b11324d85efc4d5cbd \ - --hash=sha256:c46837ea467ed1efea562bbeb543994c2d1f6e800785bd5a2c98bc096f5cb220 \ - --hash=sha256:dfb4f4dd568de1b6af9f4cda334adf7d72cf5bc052516e1b2608b683375dd95c \ - --hash=sha256:ed7b00096790213e09eb11c97cc6e2b757f15f3d2f85833cd2d3ec3fe37c1722 +cryptography==39.0.1 \ + --hash=sha256:0f8da300b5c8af9f98111ffd512910bc792b4c77392a9523624680f7956a99d4 \ + --hash=sha256:35f7c7d015d474f4011e859e93e789c87d21f6f4880ebdc29896a60403328f1f \ + --hash=sha256:5aa67414fcdfa22cf052e640cb5ddc461924a045cacf325cd164e65312d99502 \ + --hash=sha256:5d2d8b87a490bfcd407ed9d49093793d0f75198a35e6eb1a923ce1ee86c62b41 \ + --hash=sha256:6687ef6d0a6497e2b58e7c5b852b53f62142cfa7cd1555795758934da363a965 \ + --hash=sha256:6f8ba7f0328b79f08bdacc3e4e66fb4d7aab0c3584e0bd41328dce5262e26b2e \ + --hash=sha256:706843b48f9a3f9b9911979761c91541e3d90db1ca905fd63fee540a217698bc \ + --hash=sha256:807ce09d4434881ca3a7594733669bd834f5b2c6d5c7e36f8c00f691887042ad \ + --hash=sha256:83e17b26de248c33f3acffb922748151d71827d6021d98c70e6c1a25ddd78505 \ + --hash=sha256:96f1157a7c08b5b189b16b47bc9db2332269d6680a196341bf30046330d15388 \ + --hash=sha256:aec5a6c9864be7df2240c382740fcf3b96928c46604eaa7f3091f58b878c0bb6 \ + --hash=sha256:b0afd054cd42f3d213bf82c629efb1ee5f22eba35bf0eec88ea9ea7304f511a2 \ + --hash=sha256:ced4e447ae29ca194449a3f1ce132ded8fcab06971ef5f618605aacaa612beac \ + --hash=sha256:d1f6198ee6d9148405e49887803907fe8962a23e6c6f83ea7d98f1c0de375695 \ + --hash=sha256:e124352fd3db36a9d4a21c1aa27fd5d051e621845cb87fb851c08f4f75ce8be6 \ + --hash=sha256:e422abdec8b5fa8462aa016786680720d78bdce7a30c652b7fadf83a4ba35336 \ + --hash=sha256:ef8b72fa70b348724ff1218267e7f7375b8de4e8194d1636ee60510aae104cd0 \ + --hash=sha256:f0c64d1bd842ca2633e74a1a28033d139368ad959872533b1bab8c80e8240a0c \ + --hash=sha256:f24077a3b5298a5a06a8e0536e3ea9ec60e4c7ac486755e5fb6e6ea9b3500106 \ + --hash=sha256:fdd188c8a6ef8769f148f88f859884507b954cc64db6b52f66ef199bb9ad660a \ + --hash=sha256:fe913f20024eb2cb2f323e42a64bdf2911bb9738a15dba7d3cce48151034e3a8 # via # gcp-releasetool # secretstorage From f832e7a0b79f3567a0773ff11630e2f48bed60db Mon Sep 17 00:00:00 2001 From: nayaknishant Date: Wed, 15 Feb 2023 12:16:57 -0800 Subject: [PATCH 4/8] feat: adding preserveAsciiControlCharacter to CSVOptions (#1491) * adding ASCII support for external config * adding tests for preserveAscii... * adding tests for preserveAscii... * changing 'False' to False * linting --- google/cloud/bigquery/external_config.py | 14 ++++++++++++++ tests/unit/test_external_config.py | 14 +++++++++++++- 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/google/cloud/bigquery/external_config.py b/google/cloud/bigquery/external_config.py index bd60e4ef1..a891bc232 100644 --- a/google/cloud/bigquery/external_config.py +++ b/google/cloud/bigquery/external_config.py @@ -418,6 +418,20 @@ def encoding(self): def encoding(self, value): self._properties["encoding"] = value + @property + def preserve_ascii_control_characters(self): + """bool: Indicates if the embedded ASCII control characters + (the first 32 characters in the ASCII-table, from '\x00' to '\x1F') are preserved. + + See + https://cloud.google.com/bigquery/docs/reference/rest/v2/tables#CsvOptions.FIELDS.preserve_ascii_control_characters + """ + return self._properties.get("preserveAsciiControlCharacters") + + @preserve_ascii_control_characters.setter + def preserve_ascii_control_characters(self, value): + self._properties["preserveAsciiControlCharacters"] = value + @property def field_delimiter(self): """str: The separator for fields in a CSV file. Defaults to comma (','). diff --git a/tests/unit/test_external_config.py b/tests/unit/test_external_config.py index 72fe2761a..67fd13fa7 100644 --- a/tests/unit/test_external_config.py +++ b/tests/unit/test_external_config.py @@ -248,6 +248,7 @@ def test_from_api_repr_csv(self): "allowQuotedNewlines": True, "allowJaggedRows": False, "encoding": "encoding", + "preserveAsciiControlCharacters": False, }, }, ) @@ -263,6 +264,7 @@ def test_from_api_repr_csv(self): self.assertEqual(ec.options.allow_quoted_newlines, True) self.assertEqual(ec.options.allow_jagged_rows, False) self.assertEqual(ec.options.encoding, "encoding") + self.assertEqual(ec.options.preserve_ascii_control_characters, False) got_resource = ec.to_api_repr() @@ -283,6 +285,7 @@ def test_to_api_repr_csv(self): options.quote_character = "quote" options.skip_leading_rows = 123 options.allow_jagged_rows = False + options.preserve_ascii_control_characters = False ec.csv_options = options exp_resource = { @@ -294,6 +297,7 @@ def test_to_api_repr_csv(self): "allowQuotedNewlines": True, "allowJaggedRows": False, "encoding": "encoding", + "preserveAsciiControlCharacters": False, }, } @@ -514,17 +518,23 @@ def test_csv_options_getter_and_setter(self): from google.cloud.bigquery.external_config import CSVOptions options = CSVOptions.from_api_repr( - {"allowJaggedRows": True, "allowQuotedNewlines": False} + { + "allowJaggedRows": True, + "allowQuotedNewlines": False, + "preserveAsciiControlCharacters": False, + } ) ec = external_config.ExternalConfig(external_config.ExternalSourceFormat.CSV) self.assertIsNone(ec.csv_options.allow_jagged_rows) self.assertIsNone(ec.csv_options.allow_quoted_newlines) + self.assertIsNone(ec.csv_options.preserve_ascii_control_characters) ec.csv_options = options self.assertTrue(ec.csv_options.allow_jagged_rows) self.assertFalse(ec.csv_options.allow_quoted_newlines) + self.assertFalse(ec.csv_options.preserve_ascii_control_characters) self.assertIs(ec.options._properties, ec._properties[CSVOptions._RESOURCE_NAME]) self.assertIs( ec.csv_options._properties, ec._properties[CSVOptions._RESOURCE_NAME] @@ -848,6 +858,7 @@ def test_to_api_repr(self): options.allow_quoted_newlines = True options.allow_jagged_rows = False options.encoding = "UTF-8" + options.preserve_ascii_control_characters = False resource = options.to_api_repr() @@ -860,6 +871,7 @@ def test_to_api_repr(self): "allowQuotedNewlines": True, "allowJaggedRows": False, "encoding": "UTF-8", + "preserveAsciiControlCharacters": False, }, ) From 7b5f309159bcf82aaa4c07f5a6a8b6b54f4b77ab Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Thu, 16 Feb 2023 20:35:27 +0000 Subject: [PATCH 5/8] chore(deps): update all dependencies to v1 (#1486) Co-authored-by: Anthonios Partheniou --- samples/geography/requirements.txt | 2 +- samples/magics/requirements.txt | 2 +- samples/snippets/requirements.txt | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/samples/geography/requirements.txt b/samples/geography/requirements.txt index 2bc282292..f22625653 100644 --- a/samples/geography/requirements.txt +++ b/samples/geography/requirements.txt @@ -23,7 +23,7 @@ grpcio==1.51.1 idna==3.4 libcst==0.4.9 munch==2.5.0 -mypy-extensions==0.4.3 +mypy-extensions==1.0.0 packaging==23.0 pandas===1.3.5; python_version == '3.7' pandas==1.5.3; python_version >= '3.8' diff --git a/samples/magics/requirements.txt b/samples/magics/requirements.txt index 2446aa5e8..725975116 100644 --- a/samples/magics/requirements.txt +++ b/samples/magics/requirements.txt @@ -1,6 +1,6 @@ db-dtypes==1.0.5 google-cloud-bigquery-storage==2.18.1 -google-auth-oauthlib==0.8.0 +google-auth-oauthlib==1.0.0 grpcio==1.51.1 ipywidgets==8.0.4 ipython===7.31.1; python_version == '3.7' diff --git a/samples/snippets/requirements.txt b/samples/snippets/requirements.txt index 86739eec4..50fd19e51 100644 --- a/samples/snippets/requirements.txt +++ b/samples/snippets/requirements.txt @@ -1,7 +1,7 @@ db-dtypes==1.0.5 google-cloud-bigquery==3.5.0 google-cloud-bigquery-storage==2.18.1 -google-auth-oauthlib==0.8.0 +google-auth-oauthlib==1.0.0 grpcio==1.51.1 ipywidgets==8.0.4 ipython===7.31.1; python_version == '3.7' From 665d7ba74a1b45de1ef51cc75b6860125afc5fe6 Mon Sep 17 00:00:00 2001 From: Chalmer Lowe Date: Wed, 22 Feb 2023 11:55:47 -0500 Subject: [PATCH 6/8] Fix: removes scope to avoid unnecessary duplication (#1503) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fix: removes scope to avoid unnecessary duplication * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot --- google/cloud/bigquery/client.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/google/cloud/bigquery/client.py b/google/cloud/bigquery/client.py index 4f6e6610d..b03266528 100644 --- a/google/cloud/bigquery/client.py +++ b/google/cloud/bigquery/client.py @@ -225,10 +225,7 @@ class Client(ClientWithProject): to acquire default credentials. """ - SCOPE = ( # type: ignore - "https://www.googleapis.com/auth/bigquery", - "https://www.googleapis.com/auth/cloud-platform", - ) + SCOPE = ("https://www.googleapis.com/auth/cloud-platform",) # type: ignore """The scopes required for authenticating as a BigQuery consumer.""" def __init__( From 20d3276cc29e9467eef9476d5fd572099d9a3f6f Mon Sep 17 00:00:00 2001 From: Chalmer Lowe Date: Wed, 22 Feb 2023 15:56:49 -0500 Subject: [PATCH 7/8] Fix: loosen ipywidget dependency (#1504) * fix: updates ipywidget dependency * fix: updates ipywidget version number --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index e1b018098..2119e0191 100644 --- a/setup.py +++ b/setup.py @@ -67,7 +67,7 @@ pyarrow_dependency, "db-dtypes>=0.3.0,<2.0.0dev", ], - "ipywidgets": ["ipywidgets==7.7.1"], + "ipywidgets": ["ipywidgets>=7.7.0,<8.0.1"], "geopandas": ["geopandas>=0.9.0, <1.0dev", "Shapely>=1.8.4, <2.0dev"], "ipython": ["ipython>=7.0.1,!=8.1.0"], "tqdm": ["tqdm >= 4.7.4, <5.0.0dev"], From 7f4d753a4e1c72ff443f1b85c2682a91f49ae339 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Wed, 22 Feb 2023 16:37:28 -0500 Subject: [PATCH 8/8] chore(main): release 3.6.0 (#1490) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- CHANGELOG.md | 19 +++++++++++++++++++ google/cloud/bigquery/version.py | 2 +- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 454d362f9..67c43200b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,25 @@ [1]: https://pypi.org/project/google-cloud-bigquery/#history +## [3.6.0](https://github.com/googleapis/python-bigquery/compare/v3.5.0...v3.6.0) (2023-02-22) + + +### Features + +* Adding preserveAsciiControlCharacter to CSVOptions ([#1491](https://github.com/googleapis/python-bigquery/issues/1491)) ([f832e7a](https://github.com/googleapis/python-bigquery/commit/f832e7a0b79f3567a0773ff11630e2f48bed60db)) + + +### Bug Fixes + +* Annotate optional integer parameters with optional type ([#1487](https://github.com/googleapis/python-bigquery/issues/1487)) ([a190aaa](https://github.com/googleapis/python-bigquery/commit/a190aaa09ae73e8b6a83b7b213247f95fde57615)) +* Loosen ipywidget dependency ([#1504](https://github.com/googleapis/python-bigquery/issues/1504)) ([20d3276](https://github.com/googleapis/python-bigquery/commit/20d3276cc29e9467eef9476d5fd572099d9a3f6f)) +* Removes scope to avoid unnecessary duplication ([#1503](https://github.com/googleapis/python-bigquery/issues/1503)) ([665d7ba](https://github.com/googleapis/python-bigquery/commit/665d7ba74a1b45de1ef51cc75b6860125afc5fe6)) + + +### Dependencies + +* Update minimum google-cloud-core to 1.6.0 ([a190aaa](https://github.com/googleapis/python-bigquery/commit/a190aaa09ae73e8b6a83b7b213247f95fde57615)) + ## [3.5.0](https://github.com/googleapis/python-bigquery/compare/v3.4.2...v3.5.0) (2023-01-31) diff --git a/google/cloud/bigquery/version.py b/google/cloud/bigquery/version.py index 13194aa56..102b96095 100644 --- a/google/cloud/bigquery/version.py +++ b/google/cloud/bigquery/version.py @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "3.5.0" +__version__ = "3.6.0"