Skip to content

Commit 4fedd8d

Browse files
Merge remote-tracking branch 'origin/main' into tbergeron_udf_return_change
2 parents 976586b + 3cc859c commit 4fedd8d

File tree

768 files changed

+69898
-12189
lines changed

Some content is hidden

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

768 files changed

+69898
-12189
lines changed

.github/CODEOWNERS

Lines changed: 42 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,46 @@
11
# Code owners file.
22
# This file controls who is tagged for review for any given pull request.
3+
#
4+
# To add a new package or team:
5+
# 1. Add any new team names to the list of teams below. This allows us to
6+
# quickly view which teams are present in this repo.
7+
# 2. Add the package path and corresponding team
8+
# 3. The new team must have "Write" access to google-cloud-python
9+
# See go/cloud-sdk-googleapis#aod for instructions on requesting
10+
# access to modify repo settings.
311

4-
# Default owner for all directories not owned by others
5-
* @googleapis/cloud-sdk-python-team @googleapis/cloud-sdk-librarian-team
12+
# List of teams in this repo
13+
# - @googleapis/aion-team
14+
# - @googleapis/bigquery-dataframe-team
15+
# - @googleapis/bigquery-team
16+
# - @googleapis/bigtable-team
17+
# - @googleapis/cloud-sdk-auth-team
18+
# - @googleapis/cloud-sdk-python-team
19+
# - @googleapis/dkp-team
20+
# - @googleapis/firestore-team
21+
# - @googleapis/gcs-team
22+
# - @googleapis/pubsub-team
23+
# - @googleapis/spanner-team
624

7-
/packages/google-auth/ @googleapis/cloud-sdk-python-team @googleapis/cloud-sdk-librarian-team @googleapis/cloud-sdk-auth-team @googleapis/aion-team
25+
# As per the above, the following list is only used for notifications, not for approvals.
26+
# Googlers see b/477912165 and corresponding design doc
27+
28+
# Catch all. @googleapis/cloud-sdk-python-team is notified on every change for packages not owned by other teams.
29+
* @googleapis/cloud-sdk-python-team
30+
31+
/packages/bigframes/ @googleapis/bigquery-team @googleapis/bigquery-dataframe-team
32+
/packages/bigquery-magics/ @googleapis/bigquery-team @googleapis/bigquery-dataframe-team
33+
/packages/db-dtypes/ @googleapis/bigquery-team @googleapis/bigquery-dataframe-team
34+
/packages/django-google-spanner/ @googleapis/spanner-team
35+
/packages/gcp-sphinx-docfx-yaml/ @googleapis/dkp-team
36+
/packages/google-auth/ @googleapis/cloud-sdk-auth-team @googleapis/aion-team
37+
/packages/google-cloud-bigquery*/ @googleapis/bigquery-team @googleapis/bigquery-dataframe-team
38+
/packages/google-cloud-bigtable/ @googleapis/bigtable-team
39+
/packages/google-cloud-firestore/ @googleapis/firestore-team
40+
/packages/google-cloud-pubsub/ @googleapis/pubsub-team
41+
/packages/google-cloud-spanner/ @googleapis/spanner-team
42+
/packages/google-cloud-storage/ @googleapis/gcs-team
43+
/packages/google-resumable-media/ @googleapis/gcs-team @googleapis/bigquery-team @googleapis/bigquery-dataframe-team
44+
/packages/pandas-gbq/ @googleapis/bigquery-team @googleapis/bigquery-dataframe-team
45+
/packages/sqlalchemy-bigquery/ @googleapis/bigquery-team @googleapis/bigquery-dataframe-team
46+
/packages/sqlalchemy-spanner/ @googleapis/spanner-team

.github/workflows/docs.yml

Lines changed: 0 additions & 90 deletions
Original file line numberDiff line numberDiff line change
@@ -13,66 +13,7 @@ permissions:
1313
contents: read
1414

1515
jobs:
16-
# The two jobs "docs" and "docsfx" are marked as required checks
17-
# (and reset as such periodically) elsewhere in our
18-
# automation. Since we don't want to block non-release PRs on docs
19-
# failures, we want these checks to always show up as succeeded for
20-
# those PRs. For release PRs, we do want the checks to run and block
21-
# merge on failure.
22-
#
23-
# We accomplish this by using an "if:" conditional. Jobs
24-
# thus skipped via a conditional (i.e. a false condition) show as
25-
# having succeeded. See:
26-
# https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/troubleshooting-required-status-checks#handling-skipped-but-required-checks
27-
#
28-
# Since we want advance notice of docs errors, we also have two
29-
# corresponding non-required checks, the jobs "docs-warnings" and
30-
# "docfx-warnings", that run for all non-release PRs (i.e., when the
31-
# "docs" and "docfx" jobs don't run).
32-
#
33-
#
34-
# PLEASE ENSURE THE FOLLOWING AT ALL TIMES:
35-
#
36-
# - the "*-warnings" checks remain NON-REQUIRED in the repo
37-
# settings.
38-
#
39-
# - the steps for the jobs "docs" and "docfx" are identical to the
40-
# ones in "docs-warnings" and "docfx-warnings", respectively. We
41-
# will be able to avoid config duplication once GitHub actions
42-
# support YAML anchors (see
43-
# https://github.com/actions/runner/issues/1182)
4416
docs:
45-
if: github.actor == 'release-please[bot]'
46-
runs-on: ubuntu-latest
47-
steps:
48-
- name: Checkout
49-
uses: actions/checkout@v6
50-
# Use a fetch-depth of 2 to avoid error `fatal: origin/main...HEAD: no merge base`
51-
# See https://github.com/googleapis/google-cloud-python/issues/12013
52-
# and https://github.com/actions/checkout#checkout-head.
53-
with:
54-
fetch-depth: 2
55-
- name: Setup Python
56-
uses: actions/setup-python@v6
57-
with:
58-
python-version: "3.10"
59-
- name: Install nox
60-
run: |
61-
python -m pip install --upgrade setuptools pip wheel
62-
python -m pip install nox
63-
- name: Run docs
64-
env:
65-
BUILD_TYPE: presubmit
66-
TARGET_BRANCH: ${{ github.base_ref || github.event.merge_group.base_ref }}
67-
TEST_TYPE: docs
68-
# TODO(https://github.com/googleapis/google-cloud-python/issues/13775): Specify `PY_VERSION` rather than relying on the default python version of the nox session.
69-
PY_VERSION: "unused"
70-
run: |
71-
ci/run_conditional_tests.sh
72-
docs-warnings:
73-
if: github.actor != 'release-please[bot]'
74-
name: "Docs warnings: will block release"
75-
continue-on-error: true
7617
runs-on: ubuntu-latest
7718
steps:
7819
- name: Checkout
@@ -100,37 +41,6 @@ jobs:
10041
run: |
10142
ci/run_conditional_tests.sh
10243
docfx:
103-
if: github.actor == 'release-please[bot]'
104-
runs-on: ubuntu-latest
105-
steps:
106-
- name: Checkout
107-
uses: actions/checkout@v6
108-
# Use a fetch-depth of 2 to avoid error `fatal: origin/main...HEAD: no merge base`
109-
# See https://github.com/googleapis/google-cloud-python/issues/12013
110-
# and https://github.com/actions/checkout#checkout-head.
111-
with:
112-
fetch-depth: 2
113-
- name: Setup Python
114-
uses: actions/setup-python@v6
115-
with:
116-
python-version: "3.10"
117-
- name: Install nox
118-
run: |
119-
python -m pip install --upgrade setuptools pip wheel
120-
python -m pip install nox
121-
- name: Run docfx
122-
env:
123-
BUILD_TYPE: presubmit
124-
TARGET_BRANCH: ${{ github.base_ref || github.event.merge_group.base_ref }}
125-
TEST_TYPE: docfx
126-
# TODO(https://github.com/googleapis/google-cloud-python/issues/13775): Specify `PY_VERSION` rather than relying on the default python version of the nox session.
127-
PY_VERSION: "unused"
128-
run: |
129-
ci/run_conditional_tests.sh
130-
docfx-warnings:
131-
if: github.actor != 'release-please[bot]'
132-
name: "Docfx warnings: will block release"
133-
continue-on-error: true
13444
runs-on: ubuntu-latest
13545
steps:
13646
- name: Checkout

.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,3 +66,9 @@ pylintrc.test
6666

6767
# Ruff cache
6868
.ruff_cache
69+
70+
# Bazel (created in packages/gapic-generator)
71+
bazel-bin
72+
bazel-gapic-generator
73+
bazel-out
74+
bazel-testlogs
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Format: //devtools/kokoro/config/proto/build.proto
2+
3+
# Only run these nox sessions.
4+
env_vars: {
5+
key: "NOX_SESSION"
6+
value: "e2e load system_prerelease notebook system_noextras"
7+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Format: //devtools/kokoro/config/proto/build.proto
2+
3+
# Only run this nox session.
4+
env_vars: {
5+
key: "NOX_SESSION"
6+
value: "cleanup doctest"
7+
}
8+
9+
env_vars: {
10+
key: "GOOGLE_CLOUD_PROJECT"
11+
value: "bigframes-testing"
12+
}

.kokoro/system.sh

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,8 @@ run_package_test() {
4343
local PROJECT_ID
4444
local GOOGLE_APPLICATION_CREDENTIALS
4545
local NOX_FILE
46-
local NOX_SESSION
46+
# Inherit NOX_SESSION from environment to allow configs (like prerelease.cfg) to pass it in
47+
local NOX_SESSION="${NOX_SESSION}"
4748

4849
echo "------------------------------------------------------------"
4950
echo "Configuring environment for: ${package_name}"
@@ -66,7 +67,8 @@ run_package_test() {
6667
PROJECT_ID=$(cat "${KOKORO_GFILE_DIR}/project-id.json")
6768
GOOGLE_APPLICATION_CREDENTIALS="${KOKORO_GFILE_DIR}/service-account.json"
6869
NOX_FILE="noxfile.py"
69-
NOX_SESSION="system-3.12"
70+
# Use inherited NOX_SESSION if set, otherwise fallback to system-3.12
71+
NOX_SESSION="${NOX_SESSION:-system-3.12}"
7072
;;
7173
esac
7274

@@ -96,15 +98,16 @@ packages_with_system_tests=(
9698
"google-cloud-datastore"
9799
"google-cloud-dns"
98100
"google-cloud-error-reporting"
99-
"sqlalchemy-spanner"
100101
"google-cloud-firestore"
101102
"google-cloud-logging"
102103
"google-cloud-ndb"
103104
"google-cloud-pubsub"
104105
"google-cloud-spanner"
106+
"google-cloud-storage"
105107
"google-cloud-testutils"
106-
"sqlalchemy-bigquery"
107108
"pandas-gbq"
109+
"sqlalchemy-bigquery"
110+
"sqlalchemy-spanner"
108111
)
109112

110113
# A file for running system tests
@@ -138,11 +141,11 @@ for path in `find 'packages' \
138141
package_modified=$(git diff "${KOKORO_GITHUB_PULL_REQUEST_TARGET_BRANCH}...${KOKORO_GITHUB_PULL_REQUEST_COMMIT}" -- ${files_to_check} | wc -l)
139142
set -e
140143

141-
if [[ "${package_modified}" -gt 0 ]]; then
144+
if [[ "${package_modified}" -gt 0 || "$KOKORO_BUILD_ARTIFACTS_SUBDIR" == *"continuous"* ]]; then
142145
# Call the function - its internal exports won't affect the next loop
143146
run_package_test "$package_name" || RETVAL=$?
144147
else
145-
echo "No changes in ${package_name}, skipping."
148+
echo "No changes in ${package_name} and not a continuous build, skipping."
146149
fi
147150
done
148151
exit ${RETVAL}

.librarian/config.yaml

Lines changed: 19 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,26 @@
1-
global_files_allowlist:
2-
# Allow the container to read and write the root `CHANGELOG.md`
3-
# file during the `release` step to update the latest client library
4-
# versions which are hardcoded in the file.
5-
- path: "CHANGELOG.md"
6-
permissions: "read-write"
1+
# This file is being migrated to librarian@latest, and is no longer maintained by hand.
72

3+
release_only_mode: true
4+
global_files_allowlist:
5+
- path: CHANGELOG.md
6+
permissions: read-write
87
libraries:
9-
# libraries have "release_blocked: true" so that releases are
10-
# explicitly initiated.
11-
# TODO(https://github.com/googleapis/google-cloud-python/issues/16180):
12-
# `google-django-spanner` is blocked until the presubmits are green.
13-
- id: "google-django-spanner"
8+
- id: google-django-spanner
149
release_blocked: true
15-
# TODO(https://github.com/googleapis/google-cloud-python/issues/16487):
16-
# Allow releases for google-cloud-storage once this bug is fixed.
17-
- id: "google-cloud-storage"
10+
- id: google-cloud-storage
1811
release_blocked: true
19-
# TODO(https://github.com/googleapis/google-cloud-python/issues/16494):
20-
# Allow generation for google-cloud-bigtable once this bug is fixed.
21-
- id: "google-cloud-bigtable"
22-
generate_blocked: true
23-
# TODO(https://github.com/googleapis/google-cloud-python/issues/16489):
24-
# Allow releases for bigframes once the bug above is fixed.
25-
- id: "bigframes"
12+
- generate_blocked: true
13+
id: google-cloud-bigtable
14+
- id: bigframes
2615
release_blocked: true
27-
# TODO(https://github.com/googleapis/google-cloud-python/issues/16506):
28-
# Allow generation/release for google-cloud-firestore once this bug is fixed.
29-
- id: "google-cloud-firestore"
30-
generate_blocked: true
16+
- generate_blocked: true
17+
- generate_blocked: true
18+
id: google-cloud-dialogflow
19+
- id: google-crc32c
3120
release_blocked: true
32-
# TODO(https://github.com/googleapis/google-cloud-python/issues/16165):
33-
# Allow generation for google-cloud-dialogflow once this bug is fixed.
34-
- id: "google-cloud-dialogflow"
35-
generate_blocked: true
36-
# TODO(https://github.com/googleapis/google-cloud-python/issues/16520):
37-
# Allow release for google-crc32c once this bug is fixed.
38-
- id: "google-crc32c"
21+
- id: google-cloud-spanner
3922
release_blocked: true
23+
- generate_blocked: true
24+
id: google-area120-tables
25+
- generate_blocked: true
26+
id: google-cloud-config

0 commit comments

Comments
 (0)