Skip to content

Conversation

@parthea
Copy link
Contributor

@parthea parthea commented Feb 9, 2026

See #11024.

This PR should be merged with a merge-commit, not a squash-commit, in order to preserve the git history.

lukesneeringer and others added 30 commits June 2, 2017 14:36
Done via:

$ git grep -l author_email | \
> xargs sed -i s/jjg+google-cloud-python@google.com/googleapis-publisher@google.com/g

and manually editing `videointelligence/setup.py` and `vision/setup.py`.
* Fixing references to "dead" docs links.

Done via:

$ git grep -l 'google-cloud-auth.html' | \
> xargs sed -i s/'google-cloud-auth.html'/'core\/auth.html'/g
$ git grep -l 'http\:\/\/google-cloud-python.readthedocs.io' | \
> xargs sed -i s/'http\:\/\/google-cloud-python.readthedocs.io'/\
> 'https\:\/\/google-cloud-python.readthedocs.io'/g

Fixes #3531.

* Fixing up other docs that were moved in #3459.
Done via

$ export OLD='https\:\/\/pypi.python.org\/pypi\/'
$ export NEW='https\:\/\/pypi.org\/project\/'
$ git grep -l ${OLD} | xargs sed -i s/${OLD}/${NEW}/g

Then manually going through and adding a trailing slash to all
warehouse links.

(Though I did undo changes to `docs/json/`.)
* Core: remove httplib2, replace with Requests

Additionally remove make_exception in favor of from_http_status and from_http_response.

* Datastore: replace httplib2 with Requests

* DNS: replace httplib2 with Requests

* Error Reporting: replace httplib2 with requests

* Language: replace httplib2 with Requests

* Logging: replace httplib2 with requests

* Monitoring: replace httplib2 with Requests

* Pubsub: replace httplib2 with Requests

* Resource Manager: replace httplib2 with Requests

* Runtimeconfig: replace httplib2 with Requests

* Speech: replace httplib2 with Requests

* Storage: replace httplib2 with Requests

* BigQuery: replace httplib2 with Requests

* Translate: replace httplib2 with Requests

* Vision: replace httplib2 with Requests
* Updating all affected packages after google-cloud-core update.

* Moving 'pip install .' **after** subpackages in nox docs.

@lukesneeringer still hasn't explained why it was moved. In
it's current location, the depencencies are first retrieved
from PyPI (which fails here for the unreleased versions), e.g.

https://circleci.com/gh/GoogleCloudPlatform/google-cloud-python/2716
See also
#3763

$ sed -i '' 's/googlecloudplatform.github.io\/google-cloud-python\/stable\//googlecloudplatform.github.io\/google-cloud-python\/latest\//g' **/*.rst
* Move google.cloud.iterator to google.api.core.page_iterator
* Re-write tests to pytest style.
* Make GAXIterator private- it will soon be removed.
* Pass api_request into HTTPIterator to avoid accessing private members
* BigQuery: use google.api.core.page_iterator
* DNS: use google.api.core.page_iterator
* Logging: use google.api.core.page_iterator
* PubSub: use google.api.core.page_iterator
* Resource manager: use google.api.core.page_iterator
* Runtimeconfig: use google.api.core.page_iterator
* logging: use google.api.core._GAXIterator
* Storage: use google.api.core.page_iterator
* Pubsub: use google.api.core._GAXIterator
* Trace: use google.api.core._GAXIterator
* Spanner: use google.api.core._GAXIterator
- dns
- error_reporting
- language
- logging
- monitoring
- resource_manager
- runtimeconfig
- speech
- translate
- vision

Also updating bounds on these in `google-cloud` uber-package.
* Remove api.core packages from google.cloud.core, make google.cloud.core depend on api_core.

* s/google.api.core/google.api_core/g and nox updates

* Fixing core tests, addressing review feedback

* Fix bigquery
Also

- updating all dependencies of `grpcio` to `>= 1.7.0`. This was due to an issue [1] with `1.6.0`.
- updating the version of `google-api-core` (also to be released, This is required since the bounds on `grpcio` of `google-cloud-core==0.28.0` and `google-api-core==0.1.0` are mutually exclusive.)
- Updating `google-api-core` CHANGELOG for release.
- Updating packages to depend on `google-cloud-core>=0.28.0`.
- Installing `nox -s lint` deps locally for vision.

[1]: grpc/grpc#12455
* Making release for most packages.

Every package except those that have already been released
(`google-cloud-core`, `google-api-core`, `google-cloud-bigquery`):

- `google-cloud`
- `google-cloud-bigtable`
- `google-cloud-datastore`
- `google-cloud-dns`
- `google-cloud-error-reporting`
- `google-cloud-firestore`
- `google-cloud-language`
- `google-cloud-logging`
- `google-cloud-monitoring`
- `google-cloud-resource-manager`
- `google-cloud-runtimeconfig`
- `google-cloud-spanner`
- `google-cloud-speech`
- `google-cloud-storage`
- `google-cloud-trace`
- `google-cloud-translate`
- `google-cloud-videointelligence`
- `google-cloud-vision`

* Adding changelog files for each package.
This is to make it clear the code is between releases. Any code
that relies on a **new** feature (e.g. of `google-api-core`) will
then be able to **explicitly** make this clear by using the
lower bound of the `devN` version.

Fixes #4208.

See: https://snarky.ca/how-i-manage-package-version-numbers/
Also obeying an 80-column limit for the content and
adding a missing "``virtualenv``" in the phrase
"``pip`` and ``virtualenv``" in some of the docs.
* Closes #4319 - shorten test names

* #4319 update docs and config files
* Making a `nox -s default` session for all packages.

* Using "default" `nox` session on AppVeyor.

This was 32-bit or 64-bit Python can be used, depending
on which is the active `python` / the active `nox.exe`.
Done via:

  $ git grep -l makeResource | xargs sed -i s/makeResource/make_resource/g
gcf-owl-bot bot and others added 28 commits January 28, 2025 13:15
Source-Link: googleapis/synthtool@bd9ede2
Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:04c35dc5f49f0f503a306397d6d043685f8d2bb822ab515818c4208d7fb2db3a

Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.4 to 3.1.5.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](pallets/jinja@3.1.4...3.1.5)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Victor Chudnovsky <vchudnov@google.com>
Bumps [virtualenv](https://github.com/pypa/virtualenv) from 20.26.3 to 20.26.6.
- [Release notes](https://github.com/pypa/virtualenv/releases)
- [Changelog](https://github.com/pypa/virtualenv/blob/main/docs/changelog.rst)
- [Commits](pypa/virtualenv@20.26.3...20.26.6)

---
updated-dependencies:
- dependency-name: virtualenv
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Victor Chudnovsky <vchudnov@google.com>
Source-Link: googleapis/synthtool@93e1685
Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:631b4a35a4f9dd5e97740a97c4c117646eb85b35e103844dc49d152bd18694cd

Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
Co-authored-by: Victor Chudnovsky <vchudnov@google.com>
Source-Link: googleapis/synthtool@1fb7b51
Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:58dd193e1be3f5f02276cdf222ed7f8dfc3be1f163488aea767bcf35a0e2b0cd

Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
Co-authored-by: Victor Chudnovsky <vchudnov@google.com>
Source-Link: googleapis/synthtool@d1011bc
Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:fdc038572b896f739f95cc90e62f16c06e4f2ef0ef3bea343a358331862ad0f0

Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
Co-authored-by: Victor Chudnovsky <vchudnov@google.com>
Source-Link: googleapis/synthtool@aa69fb7
Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:f016446d6e520e5fb552c45b110cba3f217bffdd3d06bdddd076e9e6d13266cf

Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
…stalled (#313)

Co-authored-by: Victor Chudnovsky <vchudnov@google.com>
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
* feat: Adds Python 3.13 support

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* fix(kokoro): Preserve NOX_SESSION in presubmit.cfg

* Apply suggestion from @chalmerlowe

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* fix(kokoro): Update path to presubmit.cfg in owlbot.py

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* Apply suggestion from @chalmerlowe

* Apply suggestion from @chalmerlowe

* Update owlbot.py

* Update .kokoro/presubmit/presubmit.cfg

* updates owlbot.py and noxfile.py to use 3.10 for system and linting.

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* updates owlbot.py to try to account for system test

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* Apply suggestion from @chalmerlowe

* Apply suggestion from @chalmerlowe

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* Apply suggestion from @chalmerlowe

* Apply suggestion from @chalmerlowe

* Apply suggestion from @chalmerlowe

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* Apply suggestion from @chalmerlowe

* Apply suggestion from @chalmerlowe

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* Apply suggestion from @chalmerlowe

* updates lint version to match default of 3.10

* updates system test version to match default of 3.10

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* updates lint version to match default of 3.10 redux

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* modified the owlbot to take advantage of a capability in common.py_library

* 🦉 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 <gcf-owl-bot[bot]@users.noreply.github.com>
* updates trove classifier

* feat: Add constraints file for Python 3.14

* ci: Add Python 3.14 to GitHub Actions workflow

* fix(kokoro): Preserve NOX_SESSION in presubmit.cfg

* feat(ci): Add Python 3.14 support

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* ci: Re-add Python 3.14 to unittest matrix

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* fix(owlbot): Use kwargs to control python versions in templates

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* fix(owlbot): Ensure noxfile.py skips cpp impl for 3.14

* Apply suggestion from @chalmerlowe

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* Apply suggestion from @chalmerlowe

* Apply suggestion from @chalmerlowe

* 🦉 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 <gcf-owl-bot[bot]@users.noreply.github.com>
* test: ignore Python 3.10 FutureWarning

* correct regex

* regex

* also ignore DeprecationWarning for python 3.8

* regex

* regex

* add 3.9
Source-Link: googleapis/synthtool@6702a34
Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:fbbc8db67afd8b7d71bf694c5081a32da0c528eba166fbcffb3b6e56ddf907d5

Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
Co-authored-by: Chalmer Lowe <chalmerlowe@google.com>
* test: remove python 3.7 and 3.8 from noxfile unit tests

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* undo owlbot change

* add owlbot string replacement

* correct regex

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* correct regex

* modify noxfile

---------

Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
🤖 I have created a release *beep* *boop*
---


##
[0.36.0](googleapis/python-dns@v0.35.1...v0.36.0)
(2025-11-05)


### Features

* Add support for Python 3.14
([#321](googleapis/python-dns#321))
([99c0adb](googleapis/python-dns@99c0adb))
* Adds Python 3.13 support
([#319](googleapis/python-dns#319))
([ea851ce](googleapis/python-dns@ea851ce))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
Co-authored-by: Anthonios Partheniou <partheniou@google.com>
Towards googleapis/librarian#2454

---------

Co-authored-by: ohmayr <omairn@google.com>
…imes (#371)

This change suppresses the
deprecation warning for Python 3.9 to prevent it from being treated as
an error during testing under pytest.

Fixes Issue #360

---
*PR created automatically by Jules for task
[17628321005402500590](https://jules.google.com/task/17628321005402500590)
started by @chalmerlowe*

---------

Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
Co-authored-by: Chalmer Lowe <chalmerlowe@google.com>
This change addresses test failures observed on Python 3.9 environments.

1. **Warning Suppression**: Updates `pytest.ini` to broaden the ignore
pattern for the `google-auth` `FutureWarning` about Python 3.9. The
previous regex didn't account for potential whitespace formatting in the
warning message, causing tests to fail as warnings are treated as
errors.

---
*PR created automatically by Jules for task
[3002358724402762589](https://jules.google.com/task/3002358724402762589)
started by @chalmerlowe*

---------

Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
Co-authored-by: Chalmer Lowe <chalmerlowe@google.com>
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [actions/checkout](https://redirect.github.com/actions/checkout) |
action | major | `v4` → `v6` |
|
[actions/setup-python](https://redirect.github.com/actions/setup-python)
| action | major | `v5` → `v6` |
| [python](https://redirect.github.com/actions/python-versions) |
uses-with | minor | `3.10` → `3.14` |

---

### Release Notes

<details>
<summary>actions/checkout (actions/checkout)</summary>

### [`v6`](https://redirect.github.com/actions/checkout/compare/v5...v6)

[Compare
Source](https://redirect.github.com/actions/checkout/compare/v5...v6)

### [`v5`](https://redirect.github.com/actions/checkout/compare/v4...v5)

[Compare
Source](https://redirect.github.com/actions/checkout/compare/v4...v5)

</details>

<details>
<summary>actions/setup-python (actions/setup-python)</summary>

###
[`v6`](https://redirect.github.com/actions/setup-python/compare/v5...v6)

[Compare
Source](https://redirect.github.com/actions/setup-python/compare/v5...v6)

</details>

<details>
<summary>actions/python-versions (python)</summary>

###
[`v3.14.2`](https://redirect.github.com/actions/python-versions/releases/tag/3.14.2-20014991423):
3.14.2

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.14.1-19879739908...3.14.2-20014991423)

Python 3.14.2

###
[`v3.14.1`](https://redirect.github.com/actions/python-versions/releases/tag/3.14.1-19879739908):
3.14.1

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.14.0-18313368925...3.14.1-19879739908)

Python 3.14.1

###
[`v3.14.0`](https://redirect.github.com/actions/python-versions/releases/tag/3.14.0-18313368925):
3.14.0

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.13.11-20014977833...3.14.0-18313368925)

Python 3.14.0

###
[`v3.13.11`](https://redirect.github.com/actions/python-versions/releases/tag/3.13.11-20014977833):
3.13.11

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.13.10-19879712315...3.13.11-20014977833)

Python 3.13.11

###
[`v3.13.10`](https://redirect.github.com/actions/python-versions/releases/tag/3.13.10-19879712315):
3.13.10

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.13.9-18515951191...3.13.10-19879712315)

Python 3.13.10

###
[`v3.13.9`](https://redirect.github.com/actions/python-versions/releases/tag/3.13.9-18515951191):
3.13.9

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.13.8-18331000654...3.13.9-18515951191)

Python 3.13.9

###
[`v3.13.8`](https://redirect.github.com/actions/python-versions/releases/tag/3.13.8-18331000654):
3.13.8

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.13.7-16980743123...3.13.8-18331000654)

Python 3.13.8

###
[`v3.13.7`](https://redirect.github.com/actions/python-versions/releases/tag/3.13.7-16980743123):
3.13.7

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.13.6-16792117939...3.13.7-16980743123)

Python 3.13.7

###
[`v3.13.6`](https://redirect.github.com/actions/python-versions/releases/tag/3.13.6-16792117939):
3.13.6

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.13.5-15601068749...3.13.6-16792117939)

Python 3.13.6

###
[`v3.13.5`](https://redirect.github.com/actions/python-versions/releases/tag/3.13.5-15601068749):
3.13.5

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.13.4-15433317575...3.13.5-15601068749)

Python 3.13.5

###
[`v3.13.4`](https://redirect.github.com/actions/python-versions/releases/tag/3.13.4-15433317575):
3.13.4

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.13.3-14344076652...3.13.4-15433317575)

Python 3.13.4

###
[`v3.13.3`](https://redirect.github.com/actions/python-versions/releases/tag/3.13.3-14344076652):
3.13.3

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.13.2-13708744326...3.13.3-14344076652)

Python 3.13.3

###
[`v3.13.2`](https://redirect.github.com/actions/python-versions/releases/tag/3.13.2-13708744326):
3.13.2

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.13.1-13437882550...3.13.2-13708744326)

Python 3.13.2

###
[`v3.13.1`](https://redirect.github.com/actions/python-versions/releases/tag/3.13.1-13437882550):
3.13.1

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.13.0-13707372259...3.13.1-13437882550)

Python 3.13.1

###
[`v3.13.0`](https://redirect.github.com/actions/python-versions/releases/tag/3.13.0-13707372259):
3.13.0

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.12.12-18393146713...3.13.0-13707372259)

Python 3.13.0

###
[`v3.12.12`](https://redirect.github.com/actions/python-versions/releases/tag/3.12.12-18393146713):
3.12.12

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.12.11-15433310049...3.12.12-18393146713)

Python 3.12.12

###
[`v3.12.11`](https://redirect.github.com/actions/python-versions/releases/tag/3.12.11-15433310049):
3.12.11

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.12.10-14343898437...3.12.11-15433310049)

Python 3.12.11

###
[`v3.12.10`](https://redirect.github.com/actions/python-versions/releases/tag/3.12.10-14343898437):
3.12.10

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.12.9-13149478207...3.12.10-14343898437)

Python 3.12.10

###
[`v3.12.9`](https://redirect.github.com/actions/python-versions/releases/tag/3.12.9-13149478207):
3.12.9

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.12.8-12154062663...3.12.9-13149478207)

Python 3.12.9

###
[`v3.12.8`](https://redirect.github.com/actions/python-versions/releases/tag/3.12.8-12154062663):
3.12.8

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.12.7-11128208086...3.12.8-12154062663)

Python 3.12.8

###
[`v3.12.7`](https://redirect.github.com/actions/python-versions/releases/tag/3.12.7-11128208086):
3.12.7

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.12.6-10765725458...3.12.7-11128208086)

Python 3.12.7

###
[`v3.12.6`](https://redirect.github.com/actions/python-versions/releases/tag/3.12.6-10765725458):
3.12.6

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.12.5-10375840348...3.12.6-10765725458)

Python 3.12.6

###
[`v3.12.5`](https://redirect.github.com/actions/python-versions/releases/tag/3.12.5-10375840348):
3.12.5

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.12.4-9947065640...3.12.5-10375840348)

Python 3.12.5

###
[`v3.12.4`](https://redirect.github.com/actions/python-versions/releases/tag/3.12.4-9947065640):
3.12.4

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.12.3-11057844995...3.12.4-9947065640)

Python 3.12.4

###
[`v3.12.3`](https://redirect.github.com/actions/python-versions/releases/tag/3.12.3-11057844995):
3.12.3

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.12.2-11057786931...3.12.3-11057844995)

Python 3.12.3

###
[`v3.12.2`](https://redirect.github.com/actions/python-versions/releases/tag/3.12.2-11057786931):
3.12.2

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.12.1-11057762749...3.12.2-11057786931)

Python 3.12.2

###
[`v3.12.1`](https://redirect.github.com/actions/python-versions/releases/tag/3.12.1-11057762749):
3.12.1

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.12.0-11057302691...3.12.1-11057762749)

Python 3.12.1

###
[`v3.12.0`](https://redirect.github.com/actions/python-versions/releases/tag/3.12.0-11057302691):
3.12.0

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.14-18393181605...3.12.0-11057302691)

Python 3.12.0

###
[`v3.11.14`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.14-18393181605):
3.11.14

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.13-15433298024...3.11.14-18393181605)

Python 3.11.14

###
[`v3.11.13`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.13-15433298024):
3.11.13

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.12-14343939122...3.11.13-15433298024)

Python 3.11.13

###
[`v3.11.12`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.12-14343939122):
3.11.12

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.11-12160100664...3.11.12-14343939122)

Python 3.11.12

###
[`v3.11.11`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.11-12160100664):
3.11.11

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.10-10765870205...3.11.11-12160100664)

Python 3.11.11

###
[`v3.11.10`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.10-10765870205):
3.11.10

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.9-9947079978...3.11.10-10765870205)

Python 3.11.10

###
[`v3.11.9`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.9-9947079978):
3.11.9

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.8-11113201752...3.11.9-9947079978)

Python 3.11.9

###
[`v3.11.8`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.8-11113201752):
3.11.8

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.7-11113197120...3.11.8-11113201752)

Python 3.11.8

###
[`v3.11.7`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.7-11113197120):
3.11.7

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.6-11113179737...3.11.7-11113197120)

Python 3.11.7

###
[`v3.11.6`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.6-11113179737):
3.11.6

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.5-11113174019...3.11.6-11113179737)

Python 3.11.6

###
[`v3.11.5`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.5-11113174019):
3.11.5

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.4-11113170699...3.11.5-11113174019)

Python 3.11.5

###
[`v3.11.4`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.4-11113170699):
3.11.4

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.3-11059198104...3.11.4-11113170699)

Python 3.11.4

###
[`v3.11.3`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.3-11059198104):
3.11.3

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.2-11059137522...3.11.3-11059198104)

Python 3.11.3

###
[`v3.11.2`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.2-11059137522):
3.11.2

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.1-11058799881...3.11.2-11059137522)

Python 3.11.2

###
[`v3.11.1`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.1-11058799881):
3.11.1

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.11.0-11058707212...3.11.1-11058799881)

Python 3.11.1

###
[`v3.11.0`](https://redirect.github.com/actions/python-versions/releases/tag/3.11.0-11058707212):
3.11.0

[Compare
Source](https://redirect.github.com/actions/python-versions/compare/3.10.19-18393196481...3.11.0-11058707212)

Python 3.11.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/googleapis/python-dns).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi43NC41IiwidXBkYXRlZEluVmVyIjoiNDIuNzQuNSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->

---------

Co-authored-by: Anthonios Partheniou <partheniou@google.com>
Automated: Migrate {target_path} from gsutil to gcloud storage

This CL is part of the on going effort to migrate from the legacy
`gsutil` tool to the new and improved `gcloud storage` command-line
interface.
`gcloud storage` is the recommended and modern tool for interacting with
Google Cloud Storage, offering better performance, unified
authentication, and a more consistent command structure with other
`gcloud` components. 🚀

### Automation Details

This change was **generated automatically** by an agent that targets
users of `gsutil`.
The transformations applied are based on the [gsutil to gcloud storage
migration guide](http://go/gsutil-gcloud-storage-migration-guide).

### ⚠️ Action Required: Please Review and Test Carefully

While we have based the automation on the migration guide, every use
case is unique.
**It is crucial that you thoroughly test these changes in environments
appropriate to your use-case before merging.**
Be aware of potential differences between `gsutil` and `gcloud storage`
that could impact your workflows.
For instance, the structure of command output may have changed,
requiring updates to any scripts that parse it. Similarly, command
behavior can differ subtly; the `gcloud storage rsync` command has a
different file deletion logic than `gsutil rsync`, which could lead to
unintended file deletions.

Our migration guides can help guide you through a list of mappings and
some notable differences between the two tools.

Standard presubmit tests are run as part of this CL's workflow. **If you
need to target an additional test workflow or require assistance with
testing, please let us know.**

Please verify that all your Cloud Storage operations continue to work as
expected to avoid any potential disruptions in production.

### Support and Collaboration

The `GCS CLI` team is here to help! If you encounter any issues, have a
complex use case that this automated change doesn't cover, or face any
other blockers, please don't hesitate to reach out.
We are happy to work with you to test and adjust these changes as
needed.

**Contact:** `gcs-cli-hyd@google.com`

We appreciate your partnership in this important migration effort!

#gsutil-migration
… migration.python-dns.migration.2026-02-09_17-15-38.migrate
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @parthea, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request completes the migration of the Google Cloud DNS Python client library into the monorepo structure. The change involves moving all source code, tests, documentation, and build configurations into the packages/google-cloud-dns directory. This consolidation streamlines development workflows and ensures consistent tooling across Google Cloud Python client libraries. The migration is designed to preserve the full git history of the python-dns library.

Highlights

  • Library Migration: The entire python-dns client library has been moved to packages/google-cloud-dns/ to centralize it within the monorepo structure.
  • Standardized Configuration: New build, linting, and testing configuration files (.coveragerc, .flake8, noxfile.py, pytest.ini, renovate.json, setup.py) have been added to align with monorepo standards.
  • Updated Documentation: Comprehensive documentation, including CHANGELOG.md, CONTRIBUTING.rst, README.rst, and Sphinx configuration, has been added/updated for the new package location.
  • Migration Script Enhancements: The single-library.git-migrate-history.sh script was updated to correctly handle submodules and remove nested .git directories during the migration process, ensuring a clean transfer of history.
Changelog
  • packages/google-cloud-dns/
    • Added all source code, documentation, and configuration files for the google-cloud-dns Python client library. This includes build and linting configurations (.coveragerc, .flake8, .pre-commit-config.yaml, noxfile.py, pytest.ini, setup.py), project metadata (.librarian/state.yaml, .repo-metadata.json), core library modules (google/cloud/dns/*.py), comprehensive documentation (CHANGELOG.md, CODE_OF_CONDUCT.md, CONTRIBUTING.rst, LICENSE, README.rst, SECURITY.md, and the docs/ directory with Sphinx configurations), utility scripts (scripts/), and testing infrastructure (testing/, tests/).
  • scripts/split_repo_migration/single-library.git-migrate-history.sh
    • Modified the script to include --recurse-submodules when cloning the source repository.
    • Enhanced the tree-filter command to handle and remove nested .git directories within submodules, preventing issues during history migration.
    • Applied --recurse-submodules and .git directory removal to the validation clone as well.
Activity
  • No specific activity (comments, reviews, etc.) was provided in the context.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This PR migrates the google-cloud-dns library into the monorepo. The changes are extensive, covering source code, documentation, and CI/CD configuration. Overall, the migration looks good, but I've found several areas where references to the old repository (googleapis/python-dns) and outdated configurations persist. These will need to be updated to ensure CI, documentation, and repository management tools function correctly in the new monorepo structure. Key areas for improvement include updating repository URLs in metadata and documentation files, correcting CI configuration paths, and fixing a typo in the library's __init__.py that would affect documentation generation.

I am having trouble creating individual review comments. Click here to see my feedback.

packages/google-cloud-dns/.kokoro/continuous/common.cfg (17-26)

high

The build_file and TRAMPOLINE_BUILD_FILE paths appear to reference the old python-dns repository structure. These paths likely need to be updated to reflect the new monorepo structure (e.g., packages/google-cloud-dns/...) to prevent CI failures. This issue is present in other Kokoro configuration files as well.

packages/google-cloud-dns/.kokoro/noxfile.py (92)

high

The ALL_VERSIONS list is missing Python 3.14. Other CI configurations attempt to run sample tests for this version, which will fail because the py-3.14 nox session will not be defined. Please add 3.14 to this list.

ALL_VERSIONS = ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12", "3.13", "3.14"]

packages/google-cloud-dns/.repo-metadata.json (10-14)

high

There are a couple of issues in this metadata file:

  1. The repo field on line 10 points to the old googleapis/python-dns repository. It should be updated to point to the current monorepo, googleapis/google-cloud-python.
  2. The codeowner_team field on line 14 is empty. Based on the comment in .github/CODEOWNERS, this should be populated, likely with @googleapis/yoshi-python.
    "repo": "googleapis/google-cloud-python",
    "distribution_name": "google-cloud-dns",
    "requires_billing": true,
    "default_version": "",
    "codeowner_team": "@googleapis/yoshi-python",

packages/google-cloud-dns/google/cloud/dns/init.py (19-24)

high

There's a typo in the docstring references to other classes. google.cloud.DNS should be google.cloud.dns. This will cause issues with documentation generation.

- :class:`~google.cloud.dns.zone.ManagedZone` represents an collection of
  tables.
- :class:`~google.cloud.dns.resource_record_set.ResourceRecordSet` represents
  a single resource definition within a zone.
- :class:`~google.cloud.dns.changes.Changes` represents a set of changes
  (adding/deleting resource record sets) to a zone.

packages/google-cloud-dns/.github/ISSUE_TEMPLATE/bug_report.md (13)

medium

The link to search for existing issues points to the old python-dns repository. This should be updated to point to the issues in the current monorepo to ensure users are searching in the correct place.

  - Search the issues already opened: https://github.com/googleapis/google-cloud-python/issues

packages/google-cloud-dns/.github/PULL_REQUEST_TEMPLATE.md (2)

medium

The link for opening a new issue points to the old python-dns repository. This should be updated to the new repository's issue creation page.

- [ ] Make sure to open an issue as a [bug/issue](https://github.com/googleapis/google-cloud-python/issues/new/choose) before writing your code!  That way we can discuss the change, evaluate designs, and agree on the general idea

packages/google-cloud-dns/.github/workflows/unittest.yml (16-21)

medium

The versions of actions/checkout and actions/setup-python are older than in other workflows. For consistency and to use the latest features, please update them to v6.

    - name: Checkout
      uses: actions/checkout@v6
    - name: Setup Python
      uses: actions/setup-python@v6
      with:
        python-version: ${{ matrix.python }}

packages/google-cloud-dns/CONTRIBUTING.rst (63)

medium

This file contains several references to the old python-dns repository. These should be updated to point to the new monorepo location. For example, the repo link on this line should be updated.

.. _repo: https://github.com/googleapis/google-cloud-python

packages/google-cloud-dns/docs/conf.py (159)

medium

The github_repo configuration points to the old python-dns repository. This should be updated to google-cloud-python to ensure documentation links are correct.

    "github_repo": "google-cloud-python",

packages/google-cloud-dns/setup.py (73)

medium

The url in setup.py points to the old python-dns repository. This should be updated to the URL of the monorepo.

    url="https://github.com/googleapis/google-cloud-python",

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.