Skip to content

Commit 5975c48

Browse files
authored
fix(dns): Drop support for Python 3.9 (googleapis#16954)
This PR updates \`google-cloud-dns\` to establish Python 3.10 as the minimum supported version, dropping support for Python 3.7, 3.8, and 3.9. ### Changes * Configuration: Updated \`setup.py\` and \`noxfile.py\` to require Python 3.10+ and remove references to Python 3.9. * Documentation: Updated \`README.rst\` and \`CONTRIBUTING.rst\` to reflect supported Python versions. * Constraints: Transferred lower bounds to \`constraints-3.10.txt\` and dropped \`constraints-3.9.txt\`. Verified successfully with 65 passing unit tests under Python 3.10! Fixes internal issue: http://b/482126936 🦕
1 parent d5bea2e commit 5975c48

8 files changed

Lines changed: 14 additions & 32 deletions

File tree

packages/google-cloud-dns/CONTRIBUTING.rst

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ In order to add a feature:
2222
documentation.
2323

2424
- The feature must work fully on the following CPython versions:
25-
3.9, 3.10, 3.11, 3.12, 3.13 and 3.14 on both UNIX and Windows.
25+
3.10, 3.11, 3.12, 3.13 and 3.14 on both UNIX and Windows.
2626

2727
- The feature must not add unnecessary dependencies (where
2828
"unnecessary" is of course subjective, but new dependencies should
@@ -197,14 +197,12 @@ Supported Python Versions
197197

198198
We support:
199199

200-
- `Python 3.9`_
201200
- `Python 3.10`_
202201
- `Python 3.11`_
203202
- `Python 3.12`_
204203
- `Python 3.13`_
205204
- `Python 3.14`_
206205

207-
.. _Python 3.9: https://docs.python.org/3.9/
208206
.. _Python 3.10: https://docs.python.org/3.10/
209207
.. _Python 3.11: https://docs.python.org/3.11/
210208
.. _Python 3.12: https://docs.python.org/3.12/
@@ -217,17 +215,6 @@ Supported versions can be found in our ``noxfile.py`` `config`_.
217215
.. _config: https://github.com/googleapis/google-cloud-python/blob/main/noxfile.py
218216

219217

220-
We also explicitly decided to support Python 3 beginning with version 3.9.
221-
Reasons for this include:
222-
223-
- Encouraging use of newest versions of Python 3
224-
- Taking the lead of `prominent`_ open-source `projects`_
225-
- `Unicode literal support`_ which allows for a cleaner codebase that
226-
works in both Python 2 and Python 3
227-
228-
.. _prominent: https://docs.djangoproject.com/en/1.9/faq/install/#what-python-version-can-i-use-with-django
229-
.. _projects: http://flask.pocoo.org/docs/0.10/python3/
230-
.. _Unicode literal support: https://www.python.org/dev/peps/pep-0414/
231218

232219
**********
233220
Versioning

packages/google-cloud-dns/README.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,14 +60,14 @@ Supported Python Versions
6060
Our client libraries are compatible with all current `active`_ and `maintenance`_ versions of
6161
Python.
6262

63-
Python >= 3.9
63+
Python >= 3.10
6464

6565
.. _active: https://devguide.python.org/devcycle/#in-development-main-branch
6666
.. _maintenance: https://devguide.python.org/devcycle/#maintenance-branches
6767

6868
Unsupported Python Versions
6969
^^^^^^^^^^^^^^^^^^^^^^^^^^^
70-
Python <= 3.8
70+
Python <= 3.9
7171

7272
If you are using an `end-of-life`_
7373
version of Python, we recommend that you update as soon as possible to an actively supported version.

packages/google-cloud-dns/docs/README.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,14 +60,14 @@ Supported Python Versions
6060
Our client libraries are compatible with all current `active`_ and `maintenance`_ versions of
6161
Python.
6262

63-
Python >= 3.9
63+
Python >= 3.10
6464

6565
.. _active: https://devguide.python.org/devcycle/#in-development-main-branch
6666
.. _maintenance: https://devguide.python.org/devcycle/#maintenance-branches
6767

6868
Unsupported Python Versions
6969
^^^^^^^^^^^^^^^^^^^^^^^^^^^
70-
Python <= 3.8
70+
Python <= 3.9
7171

7272
If you are using an `end-of-life`_
7373
version of Python, we recommend that you update as soon as possible to an actively supported version.

packages/google-cloud-dns/noxfile.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@
3636
DEFAULT_PYTHON_VERSION = "3.14"
3737

3838
ALL_PYTHON: List[str] = [
39-
"3.9",
4039
"3.10",
4140
"3.11",
4241
"3.12",
@@ -70,7 +69,6 @@
7069
CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute()
7170

7271
nox.options.sessions = [
73-
"unit-3.9",
7472
"unit-3.10",
7573
"unit-3.11",
7674
"unit-3.12",

packages/google-cloud-dns/pytest.ini

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,6 @@ filterwarnings =
99
# Remove once https://github.com/googleapis/python-api-common-protos/pull/187/files is merged
1010
ignore:.*pkg_resources.declare_namespace:DeprecationWarning
1111
ignore:.*pkg_resources is deprecated as an API:DeprecationWarning
12-
# Remove after support for Python 3.7 is dropped
13-
ignore:After January 1, 2024, new releases of this library will drop support for Python 3.7:DeprecationWarning
1412
# Remove after support for Python 3.8, 3.9 and/or 3.10+ is dropped
1513
ignore:\s*You are using a (non-supported )?Python version \(?3\.(8|9|1[0-9]+):DeprecationWarning
1614
ignore:\s*You are using a (non-supported )?Python version \(?3\.(8|9|1[0-9]+):FutureWarning

packages/google-cloud-dns/setup.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,6 @@
7676
"License :: OSI Approved :: Apache Software License",
7777
"Programming Language :: Python",
7878
"Programming Language :: Python :: 3",
79-
"Programming Language :: Python :: 3.9",
8079
"Programming Language :: Python :: 3.10",
8180
"Programming Language :: Python :: 3.11",
8281
"Programming Language :: Python :: 3.12",
@@ -89,7 +88,7 @@
8988
packages=packages,
9089
install_requires=dependencies,
9190
extras_require=extras,
92-
python_requires=">=3.9",
91+
python_requires=">=3.10",
9392
include_package_data=True,
9493
zip_safe=False,
9594
)
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
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+
# Pin the version to the lower bound.
5+
#
6+
# e.g., if setup.py has "foo >= 1.14.0, < 2.0.0dev",
7+
# Then this file should have foo==1.14.0
8+
google-cloud-core==1.4.4

packages/google-cloud-dns/testing/constraints-3.9.txt

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

0 commit comments

Comments
 (0)