Skip to content

Commit bd31a8c

Browse files
authored
feat: regenerate google-maps packages (#17073)
This Pull Request drops support for Python <=3.9 in generated packages. This is part of our ongoing effort to modernize the Cloud Python SDK libraries and remove support for End-of-Life (EOL) Python versions. ## Changes - Removed Python <=3.9 from testing, configuration, and constraints files. - Resolved dependency conflicts arising from dropping Python <=3.9 support. - Cleaned up obsolete code related to Python <=3.9 support. - Updated select copyright dates - Updated some autogenerated headings - Updated some tests to resolve issues discovered during this migration.
1 parent cc4f36f commit bd31a8c

92 files changed

Lines changed: 421 additions & 931 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

packages/google-maps-addressvalidation/docs/conf.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# -*- coding: utf-8 -*-
2-
# Copyright 2025 Google LLC
2+
# Copyright 2026 Google LLC
33
#
44
# Licensed under the Apache License, Version 2.0 (the "License");
55
# you may not use this file except in compliance with the License.
@@ -83,7 +83,7 @@
8383

8484
# General information about the project.
8585
project = "google-maps-addressvalidation"
86-
copyright = "2025, Google, LLC"
86+
copyright = "2026, Google, LLC"
8787
author = "Google APIs"
8888

8989
# The version info for the project you're documenting, acts as replacement for

packages/google-maps-addressvalidation/google/maps/addressvalidation_v1/__init__.py

Lines changed: 4 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# -*- coding: utf-8 -*-
2-
# Copyright 2025 Google LLC
2+
# Copyright 2026 Google LLC
33
#
44
# Licensed under the Apache License, Version 2.0 (the "License");
55
# you may not use this file except in compliance with the License.
@@ -21,13 +21,7 @@
2121

2222
__version__ = package_version.__version__
2323

24-
if sys.version_info >= (3, 8): # pragma: NO COVER
25-
from importlib import metadata
26-
else: # pragma: NO COVER
27-
# TODO(https://github.com/googleapis/python-api-core/issues/835): Remove
28-
# this code path once we drop support for Python 3.7
29-
import importlib_metadata as metadata
30-
24+
from importlib import metadata
3125

3226
from .services.address_validation import (
3327
AddressValidationAsyncClient,
@@ -55,28 +49,17 @@
5549
# An older version of api_core is installed which does not define the
5650
# functions above. We do equivalent checks manually.
5751
try:
58-
import sys
5952
import warnings
6053

6154
_py_version_str = sys.version.split()[0]
6255
_package_label = "google.maps.addressvalidation_v1"
63-
if sys.version_info < (3, 9):
56+
if sys.version_info < (3, 10):
6457
warnings.warn(
6558
"You are using a non-supported Python version "
6659
+ f"({_py_version_str}). Google will not post any further "
6760
+ f"updates to {_package_label} supporting this Python version. "
6861
+ "Please upgrade to the latest Python version, or at "
69-
+ f"least to Python 3.9, and then update {_package_label}.",
70-
FutureWarning,
71-
)
72-
if sys.version_info[:2] == (3, 9):
73-
warnings.warn(
74-
f"You are using a Python version ({_py_version_str}) "
75-
+ f"which Google will stop supporting in {_package_label} in "
76-
+ "January 2026. Please "
77-
+ "upgrade to the latest Python version, or at "
78-
+ "least to Python 3.10, before then, and "
79-
+ f"then update {_package_label}.",
62+
+ f"least to Python 3.10, and then update {_package_label}.",
8063
FutureWarning,
8164
)
8265

packages/google-maps-addressvalidation/noxfile.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# -*- coding: utf-8 -*-
2-
# Copyright 2025 Google LLC
2+
# Copyright 2026 Google LLC
33
#
44
# Licensed under the Apache License, Version 2.0 (the "License");
55
# you may not use this file except in compliance with the License.
@@ -31,7 +31,6 @@
3131
LINT_PATHS.append("samples")
3232

3333
ALL_PYTHON = [
34-
"3.9",
3534
"3.10",
3635
"3.11",
3736
"3.12",
@@ -390,7 +389,6 @@ def docs(session):
390389
shutil.rmtree(os.path.join("docs", "_build"), ignore_errors=True)
391390
session.run(
392391
"sphinx-build",
393-
"-W", # warnings as errors
394392
"-T", # show full traceback on exception
395393
"-N", # no colors
396394
"-b",

packages/google-maps-addressvalidation/setup.py

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# -*- coding: utf-8 -*-
2-
# Copyright 2025 Google LLC
2+
# Copyright 2026 Google LLC
33
#
44
# Licensed under the Apache License, Version 2.0 (the "License");
55
# you may not use this file except in compliance with the License.
@@ -41,11 +41,11 @@
4141
release_status = "Development Status :: 5 - Production/Stable"
4242

4343
dependencies = [
44-
"google-api-core[grpc] >= 2.11.0, <3.0.0",
44+
"google-api-core[grpc] >= 2.17.1, <3.0.0",
4545
# Exclude incompatible versions of `google-auth`
4646
# See https://github.com/googleapis/google-cloud-python/issues/12364
4747
"google-auth >= 2.14.1, <3.0.0,!=2.24.0,!=2.25.0",
48-
"grpcio >= 1.33.2, < 2.0.0",
48+
"grpcio >= 1.44.0, < 2.0.0",
4949
"grpcio >= 1.75.1, < 2.0.0; python_version >= '3.14'",
5050
"proto-plus >= 1.22.3, <2.0.0",
5151
"proto-plus >= 1.25.0, <2.0.0; python_version >= '3.13'",
@@ -74,15 +74,14 @@
7474
long_description=readme,
7575
author="Google LLC",
7676
author_email="googleapis-packages@google.com",
77-
license="Apache 2.0",
77+
license="Apache-2.0",
7878
url=url,
7979
classifiers=[
8080
release_status,
8181
"Intended Audience :: Developers",
8282
"License :: OSI Approved :: Apache Software License",
8383
"Programming Language :: Python",
8484
"Programming Language :: Python :: 3",
85-
"Programming Language :: Python :: 3.9",
8685
"Programming Language :: Python :: 3.10",
8786
"Programming Language :: Python :: 3.11",
8887
"Programming Language :: Python :: 3.12",
@@ -93,7 +92,7 @@
9392
],
9493
platforms="Posix; MacOS X; Windows",
9594
packages=packages,
96-
python_requires=">=3.9",
95+
python_requires=">=3.10",
9796
install_requires=dependencies,
9897
extras_require=extras,
9998
include_package_data=True,
Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
1-
# -*- coding: utf-8 -*-
2-
# This constraints file is required for unit tests.
3-
# List all library dependencies and extras in this file.
4-
google-api-core
5-
google-auth
6-
grpcio
7-
proto-plus
8-
protobuf
9-
# cryptography is a direct dependency of google-auth
10-
cryptography
11-
google-geo-type
1+
# This constraints file is used to check that lower bounds
2+
# are correct in setup.py
3+
# List all library dependencies and extras in this file,
4+
# pinning their versions to their lower bounds.
5+
# For example, if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0",
6+
# then this file should have google-cloud-foo==1.14.0
7+
google-api-core==2.17.1
8+
google-auth==2.14.1
9+
grpcio==1.44.0
10+
proto-plus==1.22.3
11+
protobuf==4.25.8
12+
google-geo-type==0.1.0

packages/google-maps-addressvalidation/testing/constraints-3.9.txt

Lines changed: 0 additions & 14 deletions
This file was deleted.

packages/google-maps-addressvalidation/tests/unit/gapic/addressvalidation_v1/test_address_validation.py

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# -*- coding: utf-8 -*-
2-
# Copyright 2025 Google LLC
2+
# Copyright 2026 Google LLC
33
#
44
# Licensed under the Apache License, Version 2.0 (the "License");
55
# you may not use this file except in compliance with the License.
@@ -13,18 +13,12 @@
1313
# See the License for the specific language governing permissions and
1414
# limitations under the License.
1515
#
16-
import os
17-
18-
# try/except added for compatibility with python < 3.8
19-
try:
20-
from unittest import mock
21-
from unittest.mock import AsyncMock # pragma: NO COVER
22-
except ImportError: # pragma: NO COVER
23-
import mock
24-
2516
import json
2617
import math
18+
import os
2719
from collections.abc import AsyncIterable, Iterable, Mapping, Sequence
20+
from unittest import mock
21+
from unittest.mock import AsyncMock
2822

2923
import grpc
3024
import pytest
@@ -1836,7 +1830,7 @@ def test_validate_address_rest_required_fields(
18361830

18371831
expected_params = [("$alt", "json;enum-encoding=int")]
18381832
actual_params = req.call_args.kwargs["params"]
1839-
assert expected_params == actual_params
1833+
assert sorted(expected_params) == sorted(actual_params)
18401834

18411835

18421836
def test_validate_address_rest_unset_required_fields():
@@ -1966,7 +1960,7 @@ def test_provide_validation_feedback_rest_required_fields(
19661960

19671961
expected_params = [("$alt", "json;enum-encoding=int")]
19681962
actual_params = req.call_args.kwargs["params"]
1969-
assert expected_params == actual_params
1963+
assert sorted(expected_params) == sorted(actual_params)
19701964

19711965

19721966
def test_provide_validation_feedback_rest_unset_required_fields():

packages/google-maps-areainsights/docs/conf.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# -*- coding: utf-8 -*-
2-
# Copyright 2025 Google LLC
2+
# Copyright 2026 Google LLC
33
#
44
# Licensed under the Apache License, Version 2.0 (the "License");
55
# you may not use this file except in compliance with the License.
@@ -83,7 +83,7 @@
8383

8484
# General information about the project.
8585
project = "google-maps-areainsights"
86-
copyright = "2025, Google, LLC"
86+
copyright = "2026, Google, LLC"
8787
author = "Google APIs"
8888

8989
# The version info for the project you're documenting, acts as replacement for

packages/google-maps-areainsights/google/maps/areainsights_v1/__init__.py

Lines changed: 4 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# -*- coding: utf-8 -*-
2-
# Copyright 2025 Google LLC
2+
# Copyright 2026 Google LLC
33
#
44
# Licensed under the Apache License, Version 2.0 (the "License");
55
# you may not use this file except in compliance with the License.
@@ -21,13 +21,7 @@
2121

2222
__version__ = package_version.__version__
2323

24-
if sys.version_info >= (3, 8): # pragma: NO COVER
25-
from importlib import metadata
26-
else: # pragma: NO COVER
27-
# TODO(https://github.com/googleapis/python-api-core/issues/835): Remove
28-
# this code path once we drop support for Python 3.7
29-
import importlib_metadata as metadata
30-
24+
from importlib import metadata
3125

3226
from .services.area_insights import AreaInsightsAsyncClient, AreaInsightsClient
3327
from .types.area_insights_service import (
@@ -52,28 +46,17 @@
5246
# An older version of api_core is installed which does not define the
5347
# functions above. We do equivalent checks manually.
5448
try:
55-
import sys
5649
import warnings
5750

5851
_py_version_str = sys.version.split()[0]
5952
_package_label = "google.maps.areainsights_v1"
60-
if sys.version_info < (3, 9):
53+
if sys.version_info < (3, 10):
6154
warnings.warn(
6255
"You are using a non-supported Python version "
6356
+ f"({_py_version_str}). Google will not post any further "
6457
+ f"updates to {_package_label} supporting this Python version. "
6558
+ "Please upgrade to the latest Python version, or at "
66-
+ f"least to Python 3.9, and then update {_package_label}.",
67-
FutureWarning,
68-
)
69-
if sys.version_info[:2] == (3, 9):
70-
warnings.warn(
71-
f"You are using a Python version ({_py_version_str}) "
72-
+ f"which Google will stop supporting in {_package_label} in "
73-
+ "January 2026. Please "
74-
+ "upgrade to the latest Python version, or at "
75-
+ "least to Python 3.10, before then, and "
76-
+ f"then update {_package_label}.",
59+
+ f"least to Python 3.10, and then update {_package_label}.",
7760
FutureWarning,
7861
)
7962

packages/google-maps-areainsights/noxfile.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# -*- coding: utf-8 -*-
2-
# Copyright 2025 Google LLC
2+
# Copyright 2026 Google LLC
33
#
44
# Licensed under the Apache License, Version 2.0 (the "License");
55
# you may not use this file except in compliance with the License.
@@ -31,7 +31,6 @@
3131
LINT_PATHS.append("samples")
3232

3333
ALL_PYTHON = [
34-
"3.9",
3534
"3.10",
3635
"3.11",
3736
"3.12",
@@ -390,7 +389,6 @@ def docs(session):
390389
shutil.rmtree(os.path.join("docs", "_build"), ignore_errors=True)
391390
session.run(
392391
"sphinx-build",
393-
"-W", # warnings as errors
394392
"-T", # show full traceback on exception
395393
"-N", # no colors
396394
"-b",

0 commit comments

Comments
 (0)