feat: support full round-trip persistence for multimodal reference cols#2511
feat: support full round-trip persistence for multimodal reference cols#2511
Conversation
bigframes/dtypes.py
Outdated
| ) -> typing.Tuple[str, Dtype]: | ||
| is_repeated = field.mode == "REPEATED" | ||
| if field.field_type == "RECORD": | ||
| if field.description == "bigframes_dtype: OBJ_REF_DTYPE": |
There was a problem hiding this comment.
IIUC, we can changes both convert_to_schema_field and convert_schema_field to achieve round-trip persistence without changes in dataframe.py.
Please check how TIMEDELTA_DESCRIPTION_TAG works.
There was a problem hiding this comment.
Done, thanks for the tip! I've updated convert_to_schema_field and convert_schema_field to handle description tags for OBJ_REF_DTYPE and reverted the dataframe.py updates.
|
Upon checking, the failed e2e and sample tests are not related to my code change: Samples - Python 3.10, 3.11, 3.12 |
80f64f5 to
2f67d9c
Compare
PR created by the Librarian CLI to initialize a release. Merging this PR will auto trigger a release. Librarian Version: v0.7.0 Language Image: us-central1-docker.pkg.dev/cloud-sdk-librarian-prod/images-prod/python-librarian-generator@sha256:160860d189ff1c2f7515638478823712fa5b243e27ccc33a2728669fa1e2ed0c <details><summary>bigframes: 2.39.0</summary> ## [2.39.0](v2.38.0...v2.39.0) (2026-03-31) ### Features * add `df.bigquery.ai.forecast` method to pandas dataframe accessor (#2518) ([1126cec](1126cec9)) * support full round-trip persistence for multimodal reference cols (#2511) ([494a0a1](494a0a11)) * expose DataFrame.bigquery in both pandas and bigframes DataFrames (#2533) ([69fe317](69fe3176)) ### Bug Fixes * to_gbq may swap data columns when replace table (#2532) ([17ecc65](17ecc65e)) * handle aggregate operations on empty selections (#2510) ([34fb5da](34fb5daa)) * Localize BigQuery log suppression for gbq.py (#2541) ([af49ca2](af49ca29)) * Respect remote function config changes even if logic unchanged (#2512) ([b952428](b9524284)) * support melting empty DataFrames without crashing (#2509) ([e8c4603](e8c46032)) ### Performance Improvements * Make executor data uploads async internally (#2529) ([96597f0](96597f0b)) ### Documentation * gemini retouch of the index page for seo (#2514) ([2e5311e](2e5311e2)) * Rename Blob column references to ObjectRef column (#2535) ([44e0ffd](44e0ffd9)) </details>
Saves multimodal metadata descriptions on .to_gbq().
Fixes #<452681068> 🦕