Skip to content

Conversation

@google-labs-jules
Copy link
Contributor

This change updates bigframes/core/pyformat.py to directly embed str values rather than escaping them first. Unit tests have been updated to reflect this change.


PR created automatically by Jules for task 5189763854933796072

Updates `bigframes/core/pyformat.py` to directly embed string values in the formatted output. This allows for dynamic substitution of SQL identifiers, such as table or column names.

Updated unit tests to reflect this new behavior by using valid SQL identifiers in the test cases.
@google-labs-jules
Copy link
Contributor Author

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!


For security, I will only act on instructions from the user who triggered this task.

New to Jules? Learn more at jules.google/docs.

@product-auto-label product-auto-label bot added size: s Pull request size is small. api: bigquery Issues related to the googleapis/python-bigquery-dataframes API. labels Nov 10, 2025
@tswast tswast marked this pull request as ready for review November 10, 2025 14:49
@tswast tswast requested review from a team as code owners November 10, 2025 14:49
@tswast tswast requested a review from GarrettWu November 10, 2025 14:49
tswast
tswast previously approved these changes Nov 10, 2025
@tswast tswast requested a review from sycai November 10, 2025 14:50
@tswast
Copy link
Collaborator

tswast commented Nov 10, 2025

@google-labs-jules nox -r -s unit-3.11 is failing.

FAILED tests/unit/pandas/io/test_api.py::test_read_gbq_colab_calls_set_location - assert "SELECT 'value1' AS param1" == 'SELECT value1 AS param1'
  
  - SELECT value1 AS param1
  + SELECT 'value1' AS param1
  ?        +      +

It seems this may be related to this change. Please fix.

@google-labs-jules
Copy link
Contributor Author

@google-labs-jules nox -r -s unit-3.11 is failing.

FAILED tests/unit/pandas/io/test_api.py::test_read_gbq_colab_calls_set_location - assert "SELECT 'value1' AS param1" == 'SELECT value1 AS param1'
  
  - SELECT value1 AS param1
  + SELECT 'value1' AS param1
  ?        +      +

It seems this may be related to this change. Please fix.

You are right, that test was failing due to my changes. I have now fixed the test. Thank you for catching that!

@google-labs-jules
Copy link
Contributor Author

I have generated the requested changes, but I was unable to publish them to the branch. You can publish the changes manually from the Jules UI.

This commit fixes a unit test that was failing due to the changes in pyformat. The test is updated to pass a pre-quoted string, ensuring the resulting SQL is valid.
@tswast
Copy link
Collaborator

tswast commented Nov 10, 2025

Remaining test should be fixed by #2246

@google-labs-jules
Copy link
Contributor Author

Remaining test should be fixed by #2246

Thank you for the information. I will consider my work on this issue complete.

Updates `bigframes/core/pyformat.py` to directly embed string values in the formatted output. This allows for dynamic substitution of SQL identifiers, such as table or column names.

Updated unit tests to reflect this new behavior by using valid SQL identifiers in the test cases.
tswast
tswast previously approved these changes Nov 10, 2025
sycai
sycai previously approved these changes Nov 10, 2025
@tswast tswast enabled auto-merge (squash) November 10, 2025 18:35
@tswast tswast disabled auto-merge November 10, 2025 18:35
@tswast tswast enabled auto-merge (squash) November 10, 2025 18:35
@tswast tswast added the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Nov 10, 2025
@bigframes-bot bigframes-bot removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Nov 10, 2025
@tswast tswast added the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Nov 10, 2025
@bigframes-bot bigframes-bot removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Nov 10, 2025
@tswast tswast merged commit d2d38f9 into main Nov 10, 2025
20 of 26 checks passed
@tswast tswast deleted the b455813915-pyformat-str branch November 10, 2025 20:22
@tswast tswast changed the title feat: embed str values directly in pyformat feat: SQL Cell no longer escapes formatted string values Nov 10, 2025
sycai pushed a commit that referenced this pull request Nov 10, 2025
🤖 I have created a release *beep* *boop*
---


##
[2.29.0](v2.28.0...v2.29.0)
(2025-11-10)


### Features

* Add bigframes.bigquery.st_regionstats to join raster data from Earth
Engine
([#2228](#2228))
([10ec52f](10ec52f))
* Add DataFrame.resample and Series.resample
([#2213](#2213))
([c9ca02c](c9ca02c))
* SQL Cell no longer escapes formatted string values
([#2245](#2245))
([d2d38f9](d2d38f9))
* Support left_index and right_index for merge
([#2220](#2220))
([da9ba26](da9ba26))


### Bug Fixes

* Correctly iterate over null struct values in ManagedArrowTable
([#2209](#2209))
([12e04d5](12e04d5))
* Simplify UnsupportedTypeError message
([#2212](#2212))
([6c9a18d](6c9a18d))
* Support results with STRUCT and ARRAY columns containing JSON
subfields in `to_pandas_batches()`
([#2216](#2216))
([3d8b17f](3d8b17f))


### Documentation

* Switch API reference docs to pydata theme
([#2237](#2237))
([9b86dcf](9b86dcf))
* Update notebook for JSON subfields support in to_pandas_batches()
([#2138](#2138))
([5663d2a](5663d2a))

---
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>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api: bigquery Issues related to the googleapis/python-bigquery-dataframes API. size: s Pull request size is small.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants