Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-google-api-core for openSUSE:Factory checked in at 2024-12-05 17:09:08 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-google-api-core (Old) and /work/SRC/openSUSE:Factory/.python-google-api-core.new.28523 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-google-api-core" Thu Dec 5 17:09:08 2024 rev:38 rq:1228363 version:2.23.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-google-api-core/python-google-api-core.changes 2024-10-29 14:35:14.961770989 +0100 +++ /work/SRC/openSUSE:Factory/.python-google-api-core.new.28523/python-google-api-core.changes 2024-12-05 17:11:11.536004136 +0100 @@ -1,0 +2,13 @@ +Wed Dec 4 14:22:59 UTC 2024 - John Paul Adrian Glaubitz <adrian.glaub...@suse.com> + +- Update to 2.23.0 + * Migrate to pyproject.toml (#736) +- from version 2.22.0 + * Add support for python 3.13 (#696) + * Add type hints to ClientOptions (#735) + * Improve `Any` decode error (#712) + * Require proto-plus >= 1.25.0 for Python 3.13 (#740) + * Switch to unittest.mock from mock (#713) +- Drop python-google-api-core-no-mock.patch, merged upstream + +------------------------------------------------------------------- Old: ---- google_api_core-2.21.0.tar.gz python-google-api-core-no-mock.patch New: ---- google_api_core-2.23.0.tar.gz BETA DEBUG BEGIN: Old: * Switch to unittest.mock from mock (#713) - Drop python-google-api-core-no-mock.patch, merged upstream BETA DEBUG END: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-google-api-core.spec ++++++ --- /var/tmp/diff_new_pack.2v8oFW/_old 2024-12-05 17:11:12.224032947 +0100 +++ /var/tmp/diff_new_pack.2v8oFW/_new 2024-12-05 17:11:12.224032947 +0100 @@ -26,15 +26,12 @@ %endif %{?sle15_python_module_pythons} Name: python-google-api-core -Version: 2.21.0 +Version: 2.23.0 Release: 0 Summary: Google API client core library License: Apache-2.0 URL: https://github.com/googleapis/python-api-core Source: https://files.pythonhosted.org/packages/source/g/google_api_core/google_api_core-%{version}.tar.gz -# PATCH-FIX-UPSTREAM Based on gh#googleapis/python-api-core#713 -Patch0: python-google-api-core-no-mock.patch -# Needed for python_sitelib/google BuildRequires: %{python_module googleapis-common-protos >= 1.56.2} BuildRequires: %{python_module pip} BuildRequires: %{python_module setuptools >= 40.3.0} @@ -57,7 +54,7 @@ Requires: python-grpcio >= 1.49.1 Requires: python-grpcio-status >= 1.49.1 Requires: python-requests >= 2.18.0 -Requires: (python-proto-plus >= 1.22.3 with python-proto-plus < 2.0.0dev0) +Requires: (python-proto-plus >= 1.25.0 with python-proto-plus < 2.0.0dev0) Requires: (python-protobuf >= 3.19.5 with python-protobuf < 6.0.0.dev0) BuildArch: noarch %python_subpackages ++++++ google_api_core-2.21.0.tar.gz -> google_api_core-2.23.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/PKG-INFO new/google_api_core-2.23.0/PKG-INFO --- old/google_api_core-2.21.0/PKG-INFO 2024-10-09 15:48:36.502332700 +0200 +++ new/google_api_core-2.23.0/PKG-INFO 2024-11-11 18:55:08.073598000 +0100 @@ -1,12 +1,11 @@ Metadata-Version: 2.1 Name: google-api-core -Version: 2.21.0 +Version: 2.23.0 Summary: Google API client core library -Home-page: https://github.com/googleapis/python-api-core -Author: Google LLC -Author-email: googleapis-packa...@google.com +Author-email: Google LLC <googleapis-packa...@google.com> License: Apache 2.0 -Platform: Posix; MacOS X; Windows +Project-URL: Documentation, https://googleapis.dev/python/google-api-core/latest/ +Project-URL: Repository, https://github.com/googleapis/python-api-core Classifier: Development Status :: 5 - Production/Stable Classifier: Intended Audience :: Developers Classifier: License :: OSI Approved :: Apache Software License @@ -18,13 +17,16 @@ Classifier: Programming Language :: Python :: 3.10 Classifier: Programming Language :: Python :: 3.11 Classifier: Programming Language :: Python :: 3.12 +Classifier: Programming Language :: Python :: 3.13 Classifier: Operating System :: OS Independent Classifier: Topic :: Internet Requires-Python: >=3.7 +Description-Content-Type: text/x-rst License-File: LICENSE Requires-Dist: googleapis-common-protos<2.0.dev0,>=1.56.2 Requires-Dist: protobuf!=3.20.0,!=3.20.1,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5,<6.0.0.dev0,>=3.19.5 Requires-Dist: proto-plus<2.0.0dev,>=1.22.3 +Requires-Dist: proto-plus<2.0.0dev,>=1.25.0; python_version >= "3.13" Requires-Dist: google-auth<3.0.dev0,>=2.14.1 Requires-Dist: requests<3.0.0.dev0,>=2.18.0 Provides-Extra: async-rest diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/google/api_core/client_options.py new/google_api_core-2.23.0/google/api_core/client_options.py --- old/google_api_core-2.21.0/google/api_core/client_options.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/google/api_core/client_options.py 2024-11-11 18:50:47.000000000 +0100 @@ -48,6 +48,8 @@ """ +from typing import Callable, Mapping, Optional, Sequence, Tuple + class ClientOptions(object): """Client Options used to set options on clients. @@ -55,11 +57,11 @@ Args: api_endpoint (Optional[str]): The desired API endpoint, e.g., compute.googleapis.com - client_cert_source (Optional[Callable[[], (bytes, bytes)]]): A callback + client_cert_source (Optional[Callable[[], Tuple[bytes, bytes]]]): A callback which returns client certificate bytes and private key bytes both in PEM format. ``client_cert_source`` and ``client_encrypted_cert_source`` are mutually exclusive. - client_encrypted_cert_source (Optional[Callable[[], (str, str, bytes)]]): + client_encrypted_cert_source (Optional[Callable[[], Tuple[str, str, bytes]]]): A callback which returns client certificate file path, encrypted private key file path, and the passphrase bytes.``client_cert_source`` and ``client_encrypted_cert_source`` are mutually exclusive. @@ -88,15 +90,17 @@ def __init__( self, - api_endpoint=None, - client_cert_source=None, - client_encrypted_cert_source=None, - quota_project_id=None, - credentials_file=None, - scopes=None, - api_key=None, - api_audience=None, - universe_domain=None, + api_endpoint: Optional[str] = None, + client_cert_source: Optional[Callable[[], Tuple[bytes, bytes]]] = None, + client_encrypted_cert_source: Optional[ + Callable[[], Tuple[str, str, bytes]] + ] = None, + quota_project_id: Optional[str] = None, + credentials_file: Optional[str] = None, + scopes: Optional[Sequence[str]] = None, + api_key: Optional[str] = None, + api_audience: Optional[str] = None, + universe_domain: Optional[str] = None, ): if client_cert_source and client_encrypted_cert_source: raise ValueError( @@ -114,11 +118,11 @@ self.api_audience = api_audience self.universe_domain = universe_domain - def __repr__(self): + def __repr__(self) -> str: return "ClientOptions: " + repr(self.__dict__) -def from_dict(options): +def from_dict(options: Mapping[str, object]) -> ClientOptions: """Construct a client options object from a mapping object. Args: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/google/api_core/protobuf_helpers.py new/google_api_core-2.23.0/google/api_core/protobuf_helpers.py --- old/google_api_core-2.21.0/google/api_core/protobuf_helpers.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/google/api_core/protobuf_helpers.py 2024-11-11 18:50:47.000000000 +0100 @@ -63,9 +63,7 @@ # Unpack the Any object and populate the protobuf message instance. if not any_pb.Unpack(msg_pb): raise TypeError( - "Could not convert {} to {}".format( - any_pb.__class__.__name__, pb_type.__name__ - ) + f"Could not convert `{any_pb.TypeName()}` with underlying type `google.protobuf.any_pb2.Any` to `{msg_pb.DESCRIPTOR.full_name}`" ) # Done; return the message. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/google/api_core/version.py new/google_api_core-2.23.0/google/api_core/version.py --- old/google_api_core-2.21.0/google/api_core/version.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/google/api_core/version.py 2024-11-11 18:50:47.000000000 +0100 @@ -12,4 +12,4 @@ # See the License for the specific language governing permissions and # limitations under the License. -__version__ = "2.21.0" +__version__ = "2.23.0" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/google_api_core.egg-info/PKG-INFO new/google_api_core-2.23.0/google_api_core.egg-info/PKG-INFO --- old/google_api_core-2.21.0/google_api_core.egg-info/PKG-INFO 2024-10-09 15:48:36.000000000 +0200 +++ new/google_api_core-2.23.0/google_api_core.egg-info/PKG-INFO 2024-11-11 18:55:07.000000000 +0100 @@ -1,12 +1,11 @@ Metadata-Version: 2.1 Name: google-api-core -Version: 2.21.0 +Version: 2.23.0 Summary: Google API client core library -Home-page: https://github.com/googleapis/python-api-core -Author: Google LLC -Author-email: googleapis-packa...@google.com +Author-email: Google LLC <googleapis-packa...@google.com> License: Apache 2.0 -Platform: Posix; MacOS X; Windows +Project-URL: Documentation, https://googleapis.dev/python/google-api-core/latest/ +Project-URL: Repository, https://github.com/googleapis/python-api-core Classifier: Development Status :: 5 - Production/Stable Classifier: Intended Audience :: Developers Classifier: License :: OSI Approved :: Apache Software License @@ -18,13 +17,16 @@ Classifier: Programming Language :: Python :: 3.10 Classifier: Programming Language :: Python :: 3.11 Classifier: Programming Language :: Python :: 3.12 +Classifier: Programming Language :: Python :: 3.13 Classifier: Operating System :: OS Independent Classifier: Topic :: Internet Requires-Python: >=3.7 +Description-Content-Type: text/x-rst License-File: LICENSE Requires-Dist: googleapis-common-protos<2.0.dev0,>=1.56.2 Requires-Dist: protobuf!=3.20.0,!=3.20.1,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5,<6.0.0.dev0,>=3.19.5 Requires-Dist: proto-plus<2.0.0dev,>=1.22.3 +Requires-Dist: proto-plus<2.0.0dev,>=1.25.0; python_version >= "3.13" Requires-Dist: google-auth<3.0.dev0,>=2.14.1 Requires-Dist: requests<3.0.0.dev0,>=2.18.0 Provides-Extra: async-rest diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/google_api_core.egg-info/SOURCES.txt new/google_api_core-2.23.0/google_api_core.egg-info/SOURCES.txt --- old/google_api_core-2.21.0/google_api_core.egg-info/SOURCES.txt 2024-10-09 15:48:36.000000000 +0200 +++ new/google_api_core-2.23.0/google_api_core.egg-info/SOURCES.txt 2024-11-11 18:55:07.000000000 +0100 @@ -1,6 +1,7 @@ LICENSE MANIFEST.in README.rst +pyproject.toml setup.cfg setup.py google/api_core/__init__.py @@ -65,7 +66,6 @@ google_api_core.egg-info/PKG-INFO google_api_core.egg-info/SOURCES.txt google_api_core.egg-info/dependency_links.txt -google_api_core.egg-info/not-zip-safe google_api_core.egg-info/requires.txt google_api_core.egg-info/top_level.txt tests/__init__.py diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/google_api_core.egg-info/not-zip-safe new/google_api_core-2.23.0/google_api_core.egg-info/not-zip-safe --- old/google_api_core-2.21.0/google_api_core.egg-info/not-zip-safe 2024-10-09 15:48:36.000000000 +0200 +++ new/google_api_core-2.23.0/google_api_core.egg-info/not-zip-safe 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/google_api_core.egg-info/requires.txt new/google_api_core-2.23.0/google_api_core.egg-info/requires.txt --- old/google_api_core-2.21.0/google_api_core.egg-info/requires.txt 2024-10-09 15:48:36.000000000 +0200 +++ new/google_api_core-2.23.0/google_api_core.egg-info/requires.txt 2024-11-11 18:55:07.000000000 +0100 @@ -4,6 +4,9 @@ google-auth<3.0.dev0,>=2.14.1 requests<3.0.0.dev0,>=2.18.0 +[:python_version >= "3.13"] +proto-plus<2.0.0dev,>=1.25.0 + [async_rest] google-auth[aiohttp]<3.0.dev0,>=2.35.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/pyproject.toml new/google_api_core-2.23.0/pyproject.toml --- old/google_api_core-2.21.0/pyproject.toml 1970-01-01 01:00:00.000000000 +0100 +++ new/google_api_core-2.23.0/pyproject.toml 2024-11-11 18:50:47.000000000 +0100 @@ -0,0 +1,107 @@ +# Copyright 2024 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +[build-system] +requires = ["setuptools"] +build-backend = "setuptools.build_meta" + +[project] +name = "google-api-core" +authors = [{ name = "Google LLC", email = "googleapis-packa...@google.com" }] +license = { text = "Apache 2.0" } +requires-python = ">=3.7" +readme = "README.rst" +description = "Google API client core library" +classifiers = [ + # Should be one of: + # "Development Status :: 3 - Alpha" + # "Development Status :: 4 - Beta" + # "Development Status :: 5 - Production/Stable" + "Development Status :: 5 - Production/Stable", + "Intended Audience :: Developers", + "License :: OSI Approved :: Apache Software License", + "Programming Language :: Python", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.7", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", + "Operating System :: OS Independent", + "Topic :: Internet", +] +dependencies = [ + "googleapis-common-protos >= 1.56.2, < 2.0.dev0", + "protobuf >= 3.19.5, < 6.0.0.dev0, != 3.20.0, != 3.20.1, != 4.21.0, != 4.21.1, != 4.21.2, != 4.21.3, != 4.21.4, != 4.21.5", + "proto-plus >= 1.22.3, < 2.0.0dev", + "proto-plus >= 1.25.0, < 2.0.0dev; python_version >= '3.13'", + "google-auth >= 2.14.1, < 3.0.dev0", + "requests >= 2.18.0, < 3.0.0.dev0", +] +dynamic = ["version"] + +[project.urls] +Documentation = "https://googleapis.dev/python/google-api-core/latest/" +Repository = "https://github.com/googleapis/python-api-core" + +[project.optional-dependencies] +async_rest = ["google-auth[aiohttp] >= 2.35.0, < 3.0.dev0"] +grpc = [ + "grpcio >= 1.33.2, < 2.0dev", + "grpcio >= 1.49.1, < 2.0dev; python_version >= '3.11'", + "grpcio-status >= 1.33.2, < 2.0.dev0", + "grpcio-status >= 1.49.1, < 2.0.dev0; python_version >= '3.11'", +] +grpcgcp = ["grpcio-gcp >= 0.2.2, < 1.0.dev0"] +grpcio-gcp = ["grpcio-gcp >= 0.2.2, < 1.0.dev0"] + +[tool.setuptools.dynamic] +version = { attr = "google.api_core.version.__version__" } + +[tool.setuptools.packages.find] +# Only include packages under the 'google' namespace. Do not include tests, +# benchmarks, etc. +include = ["google*"] + +[tool.mypy] +python_version = "3.7" +namespace_packages = true +ignore_missing_imports = true + +[tool.pytest] +filterwarnings = [ + # treat all warnings as errors + "error", + # Remove once https://github.com/pytest-dev/pytest-cov/issues/621 is fixed + "ignore:.*The --rsyncdir command line argument and rsyncdirs config variable are deprecated:DeprecationWarning", + # Remove once https://github.com/protocolbuffers/protobuf/issues/12186 is fixed + "ignore:.*custom tp_new.*in Python 3.14:DeprecationWarning", + # Remove once support for python 3.7 is dropped + # This warning only appears when using python 3.7 + "ignore:.*Using or importing the ABCs from.*collections:DeprecationWarning", + # Remove once support for grpcio-gcp is deprecated + # See https://github.com/googleapis/python-api-core/blob/42e8b6e6f426cab749b34906529e8aaf3f133d75/google/api_core/grpc_helpers.py#L39-L45 + "ignore:.*Support for grpcio-gcp is deprecated:DeprecationWarning", + "ignore: The `compression` argument is ignored for grpc_gcp.secure_channel creation:DeprecationWarning", + "ignore:The `attempt_direct_path` argument is ignored for grpc_gcp.secure_channel creation:DeprecationWarning", + # Remove once the minimum supported version of googleapis-common-protos is 1.62.0 + "ignore:.*pkg_resources.declare_namespace:DeprecationWarning", + "ignore:.*pkg_resources is deprecated as an API:DeprecationWarning", + # Remove once https://github.com/grpc/grpc/issues/35086 is fixed (and version newer than 1.60.0 is published) + "ignore:There is no current event loop:DeprecationWarning", + # Remove after support for Python 3.7 is dropped + "ignore:After January 1, 2024, new releases of this library will drop support for Python 3.7:DeprecationWarning", +] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/setup.py new/google_api_core-2.23.0/setup.py --- old/google_api_core-2.21.0/setup.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/setup.py 2024-11-11 18:50:47.000000000 +0100 @@ -12,95 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -import io -import os - import setuptools -# Package metadata. - -name = "google-api-core" -description = "Google API client core library" - -# Should be one of: -# 'Development Status :: 3 - Alpha' -# 'Development Status :: 4 - Beta' -# 'Development Status :: 5 - Production/Stable' -release_status = "Development Status :: 5 - Production/Stable" -dependencies = [ - "googleapis-common-protos >= 1.56.2, < 2.0.dev0", - "protobuf>=3.19.5,<6.0.0.dev0,!=3.20.0,!=3.20.1,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5", - "proto-plus >= 1.22.3, <2.0.0dev", - "google-auth >= 2.14.1, < 3.0.dev0", - "requests >= 2.18.0, < 3.0.0.dev0", -] -extras = { - "async_rest": [ - "google-auth[aiohttp] >= 2.35.0, < 3.0.dev0", - ], - "grpc": [ - "grpcio >= 1.33.2, < 2.0dev", - "grpcio >= 1.49.1, < 2.0dev; python_version>='3.11'", - "grpcio-status >= 1.33.2, < 2.0.dev0", - "grpcio-status >= 1.49.1, < 2.0.dev0; python_version>='3.11'", - ], - "grpcgcp": "grpcio-gcp >= 0.2.2, < 1.0.dev0", - "grpcio-gcp": "grpcio-gcp >= 0.2.2, < 1.0.dev0", -} - - -# Setup boilerplate below this line. - -package_root = os.path.abspath(os.path.dirname(__file__)) - - -version = {} -with open(os.path.join(package_root, "google/api_core/version.py")) as fp: - exec(fp.read(), version) -version = version["__version__"] - -readme_filename = os.path.join(package_root, "README.rst") -with io.open(readme_filename, encoding="utf-8") as readme_file: - readme = readme_file.read() - -# Only include packages under the 'google' namespace. Do not include tests, -# benchmarks, etc. -packages = [ - package - for package in setuptools.find_namespace_packages() - if package.startswith("google") -] - -setuptools.setup( - name=name, - version=version, - description=description, - long_description=readme, - author="Google LLC", - author_email="googleapis-packa...@google.com", - license="Apache 2.0", - url="https://github.com/googleapis/python-api-core", - classifiers=[ - release_status, - "Intended Audience :: Developers", - "License :: OSI Approved :: Apache Software License", - "Programming Language :: Python", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.7", - "Programming Language :: Python :: 3.8", - "Programming Language :: Python :: 3.9", - "Programming Language :: Python :: 3.10", - "Programming Language :: Python :: 3.11", - "Programming Language :: Python :: 3.12", - "Operating System :: OS Independent", - "Topic :: Internet", - ], - platforms="Posix; MacOS X; Windows", - packages=packages, - install_requires=dependencies, - extras_require=extras, - python_requires=">=3.7", - include_package_data=True, - zip_safe=False, -) +setuptools.setup() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/asyncio/future/test_async_future.py new/google_api_core-2.23.0/tests/asyncio/future/test_async_future.py --- old/google_api_core-2.21.0/tests/asyncio/future/test_async_future.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/asyncio/future/test_async_future.py 2024-11-11 18:50:47.000000000 +0100 @@ -13,8 +13,8 @@ # limitations under the License. import asyncio +from unittest import mock -import mock import pytest from google.api_core import exceptions diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/asyncio/gapic/test_method_async.py new/google_api_core-2.23.0/tests/asyncio/gapic/test_method_async.py --- old/google_api_core-2.21.0/tests/asyncio/gapic/test_method_async.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/asyncio/gapic/test_method_async.py 2024-11-11 18:50:47.000000000 +0100 @@ -14,7 +14,11 @@ import datetime -import mock +try: + from unittest import mock + from unittest.mock import AsyncMock # pragma: NO COVER # noqa: F401 +except ImportError: # pragma: NO COVER + import mock # type: ignore import pytest try: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/asyncio/operations_v1/test_operations_async_client.py new/google_api_core-2.23.0/tests/asyncio/operations_v1/test_operations_async_client.py --- old/google_api_core-2.21.0/tests/asyncio/operations_v1/test_operations_async_client.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/asyncio/operations_v1/test_operations_async_client.py 2024-11-11 18:50:47.000000000 +0100 @@ -12,7 +12,8 @@ # See the License for the specific language governing permissions and # limitations under the License. -import mock +from unittest import mock + import pytest try: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/asyncio/retry/test_retry_streaming_async.py new/google_api_core-2.23.0/tests/asyncio/retry/test_retry_streaming_async.py --- old/google_api_core-2.21.0/tests/asyncio/retry/test_retry_streaming_async.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/asyncio/retry/test_retry_streaming_async.py 2024-11-11 18:50:47.000000000 +0100 @@ -12,11 +12,16 @@ # See the License for the specific language governing permissions and # limitations under the License. +import asyncio import datetime import re -import asyncio -import mock +try: + from unittest import mock + from unittest.mock import AsyncMock # pragma: NO COVER # noqa: F401 +except ImportError: # pragma: NO COVER + import mock # type: ignore + import pytest from google.api_core import exceptions @@ -134,6 +139,7 @@ unpacked = [await generator.__anext__() for i in range(10)] assert unpacked == [0, 1, 2, 0, 1, 2, 0, 1, 2, 0] assert on_error.call_count == 3 + await generator.aclose() @mock.patch("random.uniform", autospec=True, side_effect=lambda m, n: n) @mock.patch("asyncio.sleep", autospec=True) @@ -241,6 +247,7 @@ recv = await generator.asend(msg) out_messages.append(recv) assert in_messages == out_messages + await generator.aclose() @mock.patch("asyncio.sleep", autospec=True) @pytest.mark.asyncio @@ -258,6 +265,7 @@ with pytest.raises(TypeError) as exc_info: await generator.asend("cannot send to fresh generator") assert exc_info.match("can't send non-None value") + await generator.aclose() # error thrown on 3 # generator should contain 0, 1, 2 looping @@ -266,6 +274,7 @@ unpacked = [await generator.asend(i) for i in range(10)] assert unpacked == [1, 2, 0, 1, 2, 0, 1, 2, 0, 1] assert on_error.call_count == 3 + await generator.aclose() @mock.patch("asyncio.sleep", autospec=True) @pytest.mark.asyncio @@ -377,6 +386,7 @@ assert await retryable.asend("test") == 1 assert await retryable.asend("test2") == 2 assert await retryable.asend("test3") == 3 + await retryable.aclose() @pytest.mark.parametrize("awaitable_wrapped", [True, False]) @mock.patch("asyncio.sleep", autospec=True) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/asyncio/retry/test_retry_unary_async.py new/google_api_core-2.23.0/tests/asyncio/retry/test_retry_unary_async.py --- old/google_api_core-2.21.0/tests/asyncio/retry/test_retry_unary_async.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/asyncio/retry/test_retry_unary_async.py 2024-11-11 18:50:47.000000000 +0100 @@ -15,7 +15,11 @@ import datetime import re -import mock +try: + from unittest import mock + from unittest.mock import AsyncMock # pragma: NO COVER # noqa: F401 +except ImportError: # pragma: NO COVER + import mock # type: ignore import pytest from google.api_core import exceptions diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/asyncio/test_grpc_helpers_async.py new/google_api_core-2.23.0/tests/asyncio/test_grpc_helpers_async.py --- old/google_api_core-2.21.0/tests/asyncio/test_grpc_helpers_async.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/asyncio/test_grpc_helpers_async.py 2024-11-11 18:50:47.000000000 +0100 @@ -12,7 +12,11 @@ # See the License for the specific language governing permissions and # limitations under the License. -import mock +try: + from unittest import mock + from unittest.mock import AsyncMock # pragma: NO COVER # noqa: F401 +except ImportError: # pragma: NO COVER + import mock # type: ignore import pytest # noqa: I202 try: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/asyncio/test_operation_async.py new/google_api_core-2.23.0/tests/asyncio/test_operation_async.py --- old/google_api_core-2.21.0/tests/asyncio/test_operation_async.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/asyncio/test_operation_async.py 2024-11-11 18:50:47.000000000 +0100 @@ -13,10 +13,15 @@ # limitations under the License. -import mock import pytest try: + from unittest import mock + from unittest.mock import AsyncMock # pragma: NO COVER # noqa: F401 +except ImportError: # pragma: NO COVER + import mock # type: ignore + +try: import grpc # noqa: F401 except ImportError: # pragma: NO COVER pytest.skip("No GRPC", allow_module_level=True) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/asyncio/test_page_iterator_async.py new/google_api_core-2.23.0/tests/asyncio/test_page_iterator_async.py --- old/google_api_core-2.21.0/tests/asyncio/test_page_iterator_async.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/asyncio/test_page_iterator_async.py 2024-11-11 18:50:47.000000000 +0100 @@ -14,7 +14,11 @@ import inspect -import mock +try: + from unittest import mock + from unittest.mock import AsyncMock # pragma: NO COVER # noqa: F401 +except ImportError: # pragma: NO COVER + import mock # type: ignore import pytest from google.api_core import page_iterator_async @@ -106,6 +110,7 @@ await page_aiter.__anext__() assert iterator.num_results == 1 + await page_aiter.aclose() @pytest.mark.asyncio async def test__page_aiter_no_increment(self): @@ -118,6 +123,7 @@ # results should still be 0 after fetching a page. assert iterator.num_results == 0 + await page_aiter.aclose() @pytest.mark.asyncio async def test__items_aiter(self): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/asyncio/test_rest_streaming_async.py new/google_api_core-2.23.0/tests/asyncio/test_rest_streaming_async.py --- old/google_api_core-2.21.0/tests/asyncio/test_rest_streaming_async.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/asyncio/test_rest_streaming_async.py 2024-11-11 18:50:47.000000000 +0100 @@ -15,15 +15,20 @@ # TODO: set random.seed explicitly in each test function. # See related issue: https://github.com/googleapis/python-api-core/issues/689. -import pytest # noqa: I202 -import mock - import datetime import logging import random import time from typing import List, AsyncIterator +try: + from unittest import mock + from unittest.mock import AsyncMock # pragma: NO COVER # noqa: F401 +except ImportError: # pragma: NO COVER + import mock # type: ignore + +import pytest # noqa: I202 + import proto try: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/future/test__helpers.py new/google_api_core-2.23.0/tests/unit/future/test__helpers.py --- old/google_api_core-2.21.0/tests/unit/future/test__helpers.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/future/test__helpers.py 2024-11-11 18:50:47.000000000 +0100 @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -import mock +from unittest import mock from google.api_core.future import _helpers diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/future/test_polling.py new/google_api_core-2.23.0/tests/unit/future/test_polling.py --- old/google_api_core-2.21.0/tests/unit/future/test_polling.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/future/test_polling.py 2024-11-11 18:50:47.000000000 +0100 @@ -15,8 +15,8 @@ import concurrent.futures import threading import time +from unittest import mock -import mock import pytest from google.api_core import exceptions, retry diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/gapic/test_method.py new/google_api_core-2.23.0/tests/unit/gapic/test_method.py --- old/google_api_core-2.21.0/tests/unit/gapic/test_method.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/gapic/test_method.py 2024-11-11 18:50:47.000000000 +0100 @@ -13,8 +13,8 @@ # limitations under the License. import datetime +from unittest import mock -import mock import pytest try: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/operations_v1/test_operations_rest_client.py new/google_api_core-2.23.0/tests/unit/operations_v1/test_operations_rest_client.py --- old/google_api_core-2.21.0/tests/unit/operations_v1/test_operations_rest_client.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/operations_v1/test_operations_rest_client.py 2024-11-11 18:50:47.000000000 +0100 @@ -15,7 +15,12 @@ # import os -import mock +try: + from unittest import mock + from unittest.mock import AsyncMock # pragma: NO COVER # noqa: F401 +except ImportError: # pragma: NO COVER + import mock # type: ignore + import pytest from typing import Any, List diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/retry/test_retry_base.py new/google_api_core-2.23.0/tests/unit/retry/test_retry_base.py --- old/google_api_core-2.21.0/tests/unit/retry/test_retry_base.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/retry/test_retry_base.py 2024-11-11 18:50:47.000000000 +0100 @@ -14,8 +14,8 @@ import itertools import re +from unittest import mock -import mock import pytest import requests.exceptions diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/retry/test_retry_streaming.py new/google_api_core-2.23.0/tests/unit/retry/test_retry_streaming.py --- old/google_api_core-2.21.0/tests/unit/retry/test_retry_streaming.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/retry/test_retry_streaming.py 2024-11-11 18:50:47.000000000 +0100 @@ -14,7 +14,12 @@ import re -import mock +try: + from unittest import mock + from unittest.mock import AsyncMock # pragma: NO COVER # noqa: F401 +except ImportError: # pragma: NO COVER + import mock # type: ignore + import pytest from google.api_core import exceptions diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/retry/test_retry_unary.py new/google_api_core-2.23.0/tests/unit/retry/test_retry_unary.py --- old/google_api_core-2.21.0/tests/unit/retry/test_retry_unary.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/retry/test_retry_unary.py 2024-11-11 18:50:47.000000000 +0100 @@ -13,10 +13,14 @@ # limitations under the License. import datetime +import pytest import re -import mock -import pytest +try: + from unittest import mock + from unittest.mock import AsyncMock # pragma: NO COVER # noqa: F401 +except ImportError: # pragma: NO COVER + import mock # type: ignore from google.api_core import exceptions from google.api_core import retry diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/test_bidi.py new/google_api_core-2.23.0/tests/unit/test_bidi.py --- old/google_api_core-2.21.0/tests/unit/test_bidi.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/test_bidi.py 2024-11-11 18:50:47.000000000 +0100 @@ -17,7 +17,12 @@ import queue import threading -import mock +try: + from unittest import mock + from unittest.mock import AsyncMock # pragma: NO COVER # noqa: F401 +except ImportError: # pragma: NO COVER + import mock # type: ignore + import pytest try: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/test_exceptions.py new/google_api_core-2.23.0/tests/unit/test_exceptions.py --- old/google_api_core-2.21.0/tests/unit/test_exceptions.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/test_exceptions.py 2024-11-11 18:50:47.000000000 +0100 @@ -14,8 +14,8 @@ import http.client import json +from unittest import mock -import mock import pytest import requests diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/test_extended_operation.py new/google_api_core-2.23.0/tests/unit/test_extended_operation.py --- old/google_api_core-2.21.0/tests/unit/test_extended_operation.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/test_extended_operation.py 2024-11-11 18:50:47.000000000 +0100 @@ -15,8 +15,8 @@ import dataclasses import enum import typing +from unittest import mock -import mock import pytest from google.api_core import exceptions diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/test_grpc_helpers.py new/google_api_core-2.23.0/tests/unit/test_grpc_helpers.py --- old/google_api_core-2.21.0/tests/unit/test_grpc_helpers.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/test_grpc_helpers.py 2024-11-11 18:50:47.000000000 +0100 @@ -12,7 +12,8 @@ # See the License for the specific language governing permissions and # limitations under the License. -import mock +from unittest import mock + import pytest try: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/test_operation.py new/google_api_core-2.23.0/tests/unit/test_operation.py --- old/google_api_core-2.21.0/tests/unit/test_operation.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/test_operation.py 2024-11-11 18:50:47.000000000 +0100 @@ -13,7 +13,8 @@ # limitations under the License. -import mock +from unittest import mock + import pytest try: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/test_page_iterator.py new/google_api_core-2.23.0/tests/unit/test_page_iterator.py --- old/google_api_core-2.21.0/tests/unit/test_page_iterator.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/test_page_iterator.py 2024-11-11 18:50:47.000000000 +0100 @@ -14,8 +14,8 @@ import math import types +from unittest import mock -import mock import pytest from google.api_core import page_iterator diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/test_path_template.py new/google_api_core-2.23.0/tests/unit/test_path_template.py --- old/google_api_core-2.21.0/tests/unit/test_path_template.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/test_path_template.py 2024-11-11 18:50:47.000000000 +0100 @@ -13,8 +13,8 @@ # limitations under the License. from __future__ import unicode_literals +from unittest import mock -import mock import pytest from google.api import auth_pb2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/test_protobuf_helpers.py new/google_api_core-2.23.0/tests/unit/test_protobuf_helpers.py --- old/google_api_core-2.21.0/tests/unit/test_protobuf_helpers.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/test_protobuf_helpers.py 2024-11-11 18:50:47.000000000 +0100 @@ -13,6 +13,7 @@ # limitations under the License. import pytest +import re from google.api import http_pb2 from google.api_core import protobuf_helpers @@ -65,7 +66,12 @@ in_message = any_pb2.Any() in_message.Pack(date_pb2.Date(year=1990)) - with pytest.raises(TypeError): + with pytest.raises( + TypeError, + match=re.escape( + "Could not convert `google.type.Date` with underlying type `google.protobuf.any_pb2.Any` to `google.type.TimeOfDay`" + ), + ): protobuf_helpers.from_any_pb(timeofday_pb2.TimeOfDay, in_message) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/google_api_core-2.21.0/tests/unit/test_timeout.py new/google_api_core-2.23.0/tests/unit/test_timeout.py --- old/google_api_core-2.21.0/tests/unit/test_timeout.py 2024-10-09 15:46:53.000000000 +0200 +++ new/google_api_core-2.23.0/tests/unit/test_timeout.py 2024-11-11 18:50:47.000000000 +0100 @@ -14,8 +14,7 @@ import datetime import itertools - -import mock +from unittest import mock from google.api_core import timeout as timeouts