Skip to content

Commit 6a15739

Browse files
committed
merge: merge feat/gapic-centralization-api-core into feat/gapic-generator-centralization
2 parents 32303a0 + 4eb40c0 commit 6a15739

1,963 files changed

Lines changed: 138178 additions & 20110 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.
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: import-profiler
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
- preview
8+
# Trigger workflow on GitHub merge queue events
9+
merge_group:
10+
types: [checks_requested]
11+
12+
permissions:
13+
contents: read
14+
15+
jobs:
16+
import-profile:
17+
runs-on: ubuntu-latest
18+
timeout-minutes: 60
19+
steps:
20+
- name: Checkout
21+
uses: actions/checkout@v6
22+
with:
23+
fetch-depth: 2
24+
- name: Setup Python
25+
uses: actions/setup-python@v6
26+
with:
27+
python-version: "3.15"
28+
allow-prereleases: true
29+
- name: Run import profiler
30+
env:
31+
BUILD_TYPE: presubmit
32+
TARGET_BRANCH: ${{ github.base_ref || github.event.merge_group.base_ref }}
33+
TEST_TYPE: import_profile
34+
PY_VERSION: "3.15"
35+
# Workaround: Allows libcst to compile on Python 3.15+ while PyO3 catches up
36+
PYO3_USE_ABI3_FORWARD_COMPATIBILITY: "1"
37+
run: |
38+
ci/run_conditional_tests.sh

.librarian/generator-input/client-post-processing/bigtable-integration.yaml

Lines changed: 0 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -357,52 +357,6 @@ replacements:
357357
358358
Quick Start
359359
count: 1
360-
- paths: [
361-
packages/google-cloud-bigtable/mypy.ini
362-
]
363-
before: |
364-
\[mypy\]
365-
[\s\S]*?incremental = True
366-
after: |
367-
[mypy]
368-
python_version = 3.13
369-
namespace_packages = True
370-
check_untyped_defs = True
371-
warn_unreachable = True
372-
disallow_any_generics = True
373-
exclude = tests/unit/gapic/
374-
375-
[mypy-grpc.*]
376-
ignore_missing_imports = True
377-
378-
[mypy-google.auth.*]
379-
ignore_missing_imports = True
380-
381-
[mypy-google.iam.*]
382-
ignore_missing_imports = True
383-
384-
[mypy-google.longrunning.*]
385-
ignore_missing_imports = True
386-
387-
[mypy-google.oauth2.*]
388-
ignore_missing_imports = True
389-
390-
[mypy-google.rpc.*]
391-
ignore_missing_imports = True
392-
393-
[mypy-proto.*]
394-
ignore_missing_imports = True
395-
396-
[mypy-pytest]
397-
ignore_missing_imports = True
398-
399-
[mypy-google.cloud.*]
400-
ignore_errors = True
401-
402-
# only verify data client
403-
[mypy-google.cloud.bigtable.data.*]
404-
ignore_errors = False
405-
count: 1
406360
# Note: noxfile.py is heavily customized so we clobber the whole file.
407361
- paths: [
408362
packages/google-cloud-bigtable/noxfile.py

.librarian/generator-input/client-post-processing/datastore-integration.yaml

Lines changed: 0 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -39,42 +39,6 @@ replacements:
3939
"google-cloud-core >= 2.0.0, <3.0.0",
4040
"grpcio >= 1.59.0, < 2.0.0",
4141
count: 1
42-
- paths: [
43-
"packages/google-cloud-datastore/mypy.ini",
44-
]
45-
before: |-
46-
# Performance: reuse results from previous runs to speed up 'nox'
47-
incremental = True
48-
after: |-
49-
# Performance: reuse results from previous runs to speed up "nox"
50-
incremental = True
51-
52-
[mypy-google.cloud.datastore._app_engine_key_pb2]
53-
ignore_errors = True
54-
55-
# TODO(https://github.com/googleapis/gapic-generator-python/issues/2410):
56-
# Remove once this generator bug is fixed
57-
[mypy-google.cloud.datastore_v1.services.datastore.async_client]
58-
ignore_errors = True
59-
60-
# TODO(https://github.com/googleapis/gapic-generator-python/issues/2410):
61-
# Remove once this generator bug is fixed
62-
[mypy-google.cloud.datastore_v1.services.datastore.client]
63-
ignore_errors = True
64-
count: 1
65-
- paths: [
66-
"packages/google-cloud-datastore/mypy.ini",
67-
]
68-
before: |
69-
ignore_missing_imports = False
70-
71-
# TODO\(https://github.com/googleapis/gapic-generator-python/issues/2563\):
72-
# Dependencies that historically lacks py.typed markers
73-
\[mypy-google\.iam\.\*\]
74-
ignore_missing_imports = True
75-
after: |
76-
ignore_missing_imports = True
77-
count: 1
7842
- paths: [
7943
"packages/google-cloud-datastore/docs/index.rst",
8044
]

.release-please-individual-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"packages/bigframes": "2.45.0",
2+
"packages/bigframes": "2.46.0",
33
"packages/google-crc32c": "1.8.0",
44
"packages/pandas-gbq": "0.35.0",
55
"packages/sqlalchemy-bigquery": "1.17.0"

ci/run_single_test.sh

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,62 @@ case ${TEST_TYPE} in
105105
;;
106106
esac
107107
;;
108+
import_profile)
109+
if [ -f setup.py ] || [ -f pyproject.toml ]; then
110+
echo "Creating temporary virtualenv for import profile..."
111+
python3 -m venv .venv-profiler
112+
source .venv-profiler/bin/activate
113+
python -m pip install --upgrade pip setuptools
114+
115+
PACKAGE_NAME=$(basename $(pwd))
116+
PROFILER_TEMP_DIR=$(mktemp -d)
117+
cp ../../scripts/import_profiler/profiler.py "${PROFILER_TEMP_DIR}/profiler.py"
118+
PROFILER_SCRIPT="${PROFILER_TEMP_DIR}/profiler.py"
119+
BASELINE_CSV="${PROFILER_TEMP_DIR}/baseline_${PACKAGE_NAME}.csv"
120+
121+
if [ -n "${TARGET_BRANCH}" ]; then
122+
# Try upstream first (for forks), then origin
123+
BASELINE_COMMIT=$(git merge-base HEAD "upstream/${TARGET_BRANCH}" 2>/dev/null || \
124+
git merge-base HEAD "origin/${TARGET_BRANCH}" 2>/dev/null || \
125+
git merge-base HEAD "${TARGET_BRANCH}" 2>/dev/null || true)
126+
if [ -n "${BASELINE_COMMIT}" ]; then
127+
echo "Checking out baseline commit ${BASELINE_COMMIT} in a temporary worktree..."
128+
REPO_PREFIX=$(git rev-parse --show-prefix)
129+
WORKTREE_DIR=$(mktemp -d)
130+
rmdir "${WORKTREE_DIR}"
131+
if git worktree add "${WORKTREE_DIR}" "${BASELINE_COMMIT}" 2>/dev/null; then
132+
(
133+
cd "${WORKTREE_DIR}/${REPO_PREFIX}"
134+
if [ -f setup.py ] || [ -f pyproject.toml ]; then
135+
pip install -e .
136+
python "${PROFILER_SCRIPT}" --package "${PACKAGE_NAME}" --iterations 11 --csv "${BASELINE_CSV}"
137+
fi
138+
)
139+
git worktree remove -f "${WORKTREE_DIR}"
140+
else
141+
echo "Failed to create git worktree for baseline. Skipping baseline generation."
142+
fi
143+
else
144+
echo "Could not find baseline commit for ${TARGET_BRANCH:-main}. Skipping baseline generation."
145+
fi
146+
fi
147+
148+
pip install -e .
149+
150+
if [ -f "${BASELINE_CSV}" ]; then
151+
python ${PROFILER_SCRIPT} --package ${PACKAGE_NAME} --iterations 11 --fail-threshold 5000 --diff-baseline "${BASELINE_CSV}" --diff-threshold 100
152+
else
153+
python ${PROFILER_SCRIPT} --package ${PACKAGE_NAME} --iterations 11 --fail-threshold 5000
154+
fi
155+
retval=$?
156+
deactivate
157+
rm -rf .venv-profiler
158+
rm -rf "${PROFILER_TEMP_DIR}"
159+
else
160+
echo "Skipping import_profile as this does not appear to be a Python package (no setup.py or pyproject.toml)."
161+
retval=0
162+
fi
163+
;;
108164
*)
109165
nox -s ${TEST_TYPE}
110166
retval=$?

librarian.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414
language: python
15-
version: v0.22.0
15+
version: v0.26.0
1616
repo: googleapis/google-cloud-python
1717
sources:
1818
googleapis:
19-
commit: 99f54e6513f09d8df1707a6c553b0a3c6ef9b5fb
20-
sha256: 7cee15fe1ae76a16aaf70425c4380a3a0fcbfeb4ea8e30c934c43f5cd54b9657
19+
commit: fe04226e3d76435acbfd3ffb51f6771740e1fb5b
20+
sha256: e99c641a9c5525394de43c762b9db50c3ada1f219d6dbdba594ae992fbe1d838
2121
default:
2222
output: packages
2323
tag_format: '{name}-v{version}'
@@ -58,7 +58,7 @@ default:
5858
library_type: GAPIC_AUTO
5959
libraries:
6060
- name: bigframes
61-
version: 2.45.0
61+
version: 2.46.0
6262
python:
6363
library_type: INTEGRATION
6464
- name: bigquery-magics

packages/bigframes/CHANGELOG.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,30 @@
44

55
[1]: https://pypi.org/project/bigframes/#history
66

7+
## [2.46.0](https://github.com/googleapis/google-cloud-python/compare/bigframes-v2.45.0...bigframes-v2.46.0) (2026-07-16)
8+
9+
10+
### Features
11+
12+
* **bigframes:** Support groupby.agg/transform with udf transpiler ([#17613](https://github.com/googleapis/google-cloud-python/issues/17613)) ([cae94f9](https://github.com/googleapis/google-cloud-python/commit/cae94f99121d7708671a35acf82616cfe378cccb))
13+
* **bigframes:** support offset-based column access via iloc ([#17367](https://github.com/googleapis/google-cloud-python/issues/17367)) ([4253fab](https://github.com/googleapis/google-cloud-python/commit/4253fab07ccdb2b94e247f8dade793828754b88b))
14+
15+
16+
### Bug Fixes
17+
18+
* **bigframes:** Fix sqlglot backend regressions ([#17655](https://github.com/googleapis/google-cloud-python/issues/17655)) ([91f93bc](https://github.com/googleapis/google-cloud-python/commit/91f93bcd7b71b6cea62f506ed684500cec1eb6bb))
19+
* bump gradio from 6.15.0 to 6.15.1 in /packages/bigframes ([#17712](https://github.com/googleapis/google-cloud-python/issues/17712)) ([a85d59f](https://github.com/googleapis/google-cloud-python/commit/a85d59f39998d94cbac8d5e98547f18b3cc5e5be))
20+
* bump mistune from 3.2.1 to 3.3.0 in /packages/bigframes ([#17694](https://github.com/googleapis/google-cloud-python/issues/17694)) ([e5f7fef](https://github.com/googleapis/google-cloud-python/commit/e5f7fef31c2bbe5f559f4c79fdaf4ebcf6e1bd3f))
21+
* bump soupsieve from 2.7 to 2.8.4 in /packages/bigframes ([#17695](https://github.com/googleapis/google-cloud-python/issues/17695)) ([635da34](https://github.com/googleapis/google-cloud-python/commit/635da3453b2ba78b8abea43c554a055257f33aa1))
22+
* bump transformers from 5.3.0 to 5.5.0 in /packages/bigframes ([#17700](https://github.com/googleapis/google-cloud-python/issues/17700)) ([4b049c4](https://github.com/googleapis/google-cloud-python/commit/4b049c4eb8dc1ec91320b55fe515c339cd448af3))
23+
* emit bracketed inline array syntax for scalar subquery expressions ([#17716](https://github.com/googleapis/google-cloud-python/issues/17716)) ([ce5fd50](https://github.com/googleapis/google-cloud-python/commit/ce5fd500b68c16f56ea8066d8a6fa4b0b8d92081))
24+
25+
26+
### Documentation
27+
28+
* make landing page quickstart runnable ([fc423c8](https://github.com/googleapis/google-cloud-python/commit/fc423c809cc80168f45fee795d5db5dc7a571fb1))
29+
* make landing page quickstart runnable ([#17687](https://github.com/googleapis/google-cloud-python/issues/17687)) ([fc423c8](https://github.com/googleapis/google-cloud-python/commit/fc423c809cc80168f45fee795d5db5dc7a571fb1))
30+
731
## [2.45.0](https://github.com/googleapis/google-cloud-python/compare/bigframes-v2.44.0...bigframes-v2.45.0) (2026-07-08)
832

933

packages/bigframes/bigframes/display/table_widget_angular/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
"@angular/build": "^21.2.16",
2626
"@angular/cli": "^21.2.16",
2727
"@angular/compiler-cli": "^21.2.0",
28-
"esbuild": "^0.20.0",
28+
"esbuild": "^0.28.0",
2929
"jsdom": "^28.0.0",
3030
"prettier": "^3.8.1",
3131
"typescript": "~5.9.2",

packages/bigframes/bigframes/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "2.45.0"
15+
__version__ = "2.46.0"
1616

1717
# {x-release-please-start-date}
1818
__release_date__ = "2026-06-12"

packages/bigframes/testing/constraints-3.11.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ google-pasta==0.2.0
172172
google-resumable-media==2.7.2
173173
googleapis-common-protos==1.70.0
174174
googledrivedownloader==1.1.0
175-
gradio==6.15.0
175+
gradio==6.15.1
176176
gradio_client==1.11.0
177177
graphviz==0.21
178178
greenlet==3.2.3

0 commit comments

Comments
 (0)