Skip to content

Conversation

@vinodhinic
Copy link

Description

Should include a concise description of the changes (bug or feature), it's
impact, along with a summary of the solution

PR Checklist

Thank you for opening a Pull Request! Before submitting your PR, there are a
few things you can do to make sure it goes smoothly:

  • Make sure you reviewed
    CONTRIBUTING.md
  • Make sure to open an issue as a
    bug/issue
    before writing your code! That way we can discuss the change, evaluate
    designs, and agree on the general idea
  • Ensure the tests and linter pass
  • Code coverage does not decrease (if any source code was changed)
  • Appropriate docs were updated (if necessary)
  • Make sure to add ! if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>

@vinodhinic vinodhinic marked this pull request as draft November 25, 2025 12:39
@vinodhinic
Copy link
Author

Docs and integ tests need to be updated still.

drstrangelooker and others added 28 commits December 17, 2025 13:30
## Description

Improved integration tests for looker

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change
…/quickstart/js/langchain (googleapis#2118)

Bumps [jws](https://github.com/brianloveswords/node-jws) from 4.0.0 to
4.0.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/brianloveswords/node-jws/releases">jws's
releases</a>.</em></p>
<blockquote>
<h2>v4.0.1</h2>
<h3>Changed</h3>
<ul>
<li>Fix advisory GHSA-869p-cjfg-cm3x: createSign and createVerify now
require
that a non empty secret is provided (via opts.secret, opts.privateKey or
opts.key)
when using HMAC algorithms.</li>
<li>Upgrading JWA version to 2.0.1, addressing a compatibility issue for
Node &gt;= 25.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/auth0/node-jws/blob/master/CHANGELOG.md">jws's
changelog</a>.</em></p>
<blockquote>
<h2>[4.0.1]</h2>
<h3>Changed</h3>
<ul>
<li>Fix advisory GHSA-869p-cjfg-cm3x: createSign and createVerify now
require
that a non empty secret is provided (via opts.secret, opts.privateKey or
opts.key)
when using HMAC algorithms.</li>
<li>Upgrading JWA version to 2.0.1, adressing a compatibility issue for
Node &gt;= 25.</li>
</ul>
<h2>[3.2.3]</h2>
<h3>Changed</h3>
<ul>
<li>Fix advisory GHSA-869p-cjfg-cm3x: createSign and createVerify now
require
that a non empty secret is provided (via opts.secret, opts.privateKey or
opts.key)
when using HMAC algorithms.</li>
<li>Upgrading JWA version to 1.4.2, adressing a compatibility issue for
Node &gt;= 25.</li>
</ul>
<h2>[3.0.0]</h2>
<h3>Changed</h3>
<ul>
<li><strong>BREAKING</strong>: <code>jwt.verify</code> now requires an
<code>algorithm</code> parameter, and
<code>jws.createVerify</code> requires an <code>algorithm</code> option.
The <code>&quot;alg&quot;</code> field
signature headers is ignored. This mitigates a critical security flaw
in the library which would allow an attacker to generate signatures with
arbitrary contents that would be accepted by <code>jwt.verify</code>.
See
<a
href="https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/">https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/</a>
for details.</li>
</ul>
<h2><a
href="https://github.com/brianloveswords/node-jws/compare/v1.0.1...v2.0.0">2.0.0</a>
- 2015-01-30</h2>
<h3>Changed</h3>
<ul>
<li>
<p><strong>BREAKING</strong>: Default payload encoding changed from
<code>binary</code> to
<code>utf8</code>. <code>utf8</code> is a is a more sensible default
than <code>binary</code> because
many payloads, as far as I can tell, will contain user-facing
strings that could be in any language. (<!-- raw HTML omitted
-->[6b6de48]<!-- raw HTML omitted -->)</p>
</li>
<li>
<p>Code reorganization, thanks [<a
href="https://github.com/fearphage"><code>@​fearphage</code></a>]! (<!--
raw HTML omitted --><a
href="https://github.com/brianloveswords/node-jws/commit/7880050">7880050</a><!--
raw HTML omitted -->)</p>
</li>
</ul>
<h3>Added</h3>
<ul>
<li>Option in all relevant methods for <code>encoding</code>. For those
few users
that might be depending on a <code>binary</code> encoding of the
messages, this
is for them. (<!-- raw HTML omitted -->[6b6de48]<!-- raw HTML omitted
-->)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/auth0/node-jws/commit/34c45b2c04434f925b638de6a061de9339c0ea2e"><code>34c45b2</code></a>
Merge commit from fork</li>
<li><a
href="https://github.com/auth0/node-jws/commit/49bc39b1f5509a630e0c6849527d8bc66b29ddf5"><code>49bc39b</code></a>
version 4.0.1</li>
<li><a
href="https://github.com/auth0/node-jws/commit/d42350ccab74db06c95f2279d1674d7d6a1692f4"><code>d42350c</code></a>
Enhance tests for HMAC streaming sign and verify</li>
<li><a
href="https://github.com/auth0/node-jws/commit/5cb007cf826c70f178c9975d31e949adff75e61b"><code>5cb007c</code></a>
Improve secretOrKey initialization in VerifyStream</li>
<li><a
href="https://github.com/auth0/node-jws/commit/f9a2e1c8c61ed80d1aa97f03ec32ccb920cf51cb"><code>f9a2e1c</code></a>
Improve secret handling in SignStream</li>
<li><a
href="https://github.com/auth0/node-jws/commit/b9fb8d30e9c009ade6379f308590f1b0703eefc3"><code>b9fb8d3</code></a>
Merge pull request <a
href="https://redirect.github.com/brianloveswords/node-jws/issues/102">#102</a>
from auth0/SRE-57-Upload-opslevel-yaml</li>
<li><a
href="https://github.com/auth0/node-jws/commit/95b75ee56c64d4f8c09c70e9e9662d813bab5685"><code>95b75ee</code></a>
Upload OpsLevel YAML</li>
<li><a
href="https://github.com/auth0/node-jws/commit/8857ee77623104e5cf9955932165ddf9cea1b72c"><code>8857ee7</code></a>
test: remove unused variable (<a
href="https://redirect.github.com/brianloveswords/node-jws/issues/96">#96</a>)</li>
<li>See full diff in <a
href="https://github.com/brianloveswords/node-jws/compare/v4.0.0...v4.0.1">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~julien.wollscheid">julien.wollscheid</a>, a
new releaser for jws since your current version.</p>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=jws&package-manager=npm_and_yarn&previous-version=4.0.0&new-version=4.0.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/googleapis/genai-toolbox/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
…leapis#2196)

## Description

> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution

The list_database_stats test is flaky when run in parallel on the same
shared instance. It fails with the error: failed to create test_user1:
ERROR: role "test_user1" already exists. This test is updates to create
a random role and database name to avoid conflicts with other
simultaneously running tests.

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<1738>
…leapis#2179)

## Description

According to the OTEL
([docs](https://pkg.go.dev/go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp#WithEndpoint)),
`WithEndpoint()` sets the target endpoint (host and port) the Exporter
will connect to. The provided endpoint should resemble
"example.com:4318" (no scheme or path). And it requires the endpoint to
be secure using `https://`.

To provide an insecure endpoint with `http://`, user will need to set
`OTEL_EXPORTER_OTLP_INSECURE=true`. This PR update the docs to reflect
this.

🛠️ Fixes googleapis#1539
….0 tag (googleapis#2197)

Update links to point towards files within v0.23.0 version. There are
some updates done within the function since the previous link was
generated.
## Description

Remove warning about unused parameter in vscode

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change
…onversion to Toolbox (googleapis#2181)

## Description

This PR is to add the Gemini Data Analytics (GDA) integration for DB
NL2SQL conversion to Toolbox. It allows the user to convert a natural
language query to SQL statement based on their database instance. See
the doc section for details.

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes googleapis#2180

---------

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
)

Previously we used go-ora (a pure Go Oracle driver) because our release
pipeline did not support cross-compilation with CGO. Now that it's
fixed, we want to add support for Oracle OCI driver for advanced
features including digital wallet etc.

Users will be able to configure a source to use OCI by specifying a
`UseOCI: true` field. The source defaults to use the pure Go driver
otherwise.

Oracle Wallet:
- OCI users should use the `tnsAdmin` to set the wallet location
- Non-OCI users can should use the `walletLocation` field.

fix: googleapis#1779
Update `DROP TABLE %table_name` to `DROP TABLE IF EXISTS %tablename`.
The drop table statement often fail to run. This halts the process and
causes context timeout, and eventually failing the integration tests.
…s#2123)

## Description

Tool mysql-get-query-plan implementation, along with tests and docs.
Tool used to get information about how MySQL executes a SQL statement
(EXPLAIN).

## PR Checklist

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes googleapis#1692

---------

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Averi Kitsch <akitsch@google.com>
Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
…leapis#2188)

## Description

This PR updates the CLI to allow the --prebuilt flag to be used
simultaneously with custom tool flags (--tools-file, --tools-files, or
--tools-folder). This enables users to extend a standard prebuilt
environment with their own custom tools and configurations.

### Key changes

- Sequential Loading: Load prebuilt configurations first, then
accumulate any specified custom configurations before merging.

- Smart Defaults: Updated logic to only default to tools.yaml if no
configuration flags are provided.

- Legacy Auth Compatibility: Implemented an additive merge strategy for
authentication. Legacy authSources from custom files are merged into the
modern authServices map used by prebuilt tools.

- Strict Validation: To prevent ambiguity, the server will throw an
explicit error if a legacy authSource name conflicts with an existing
authService name (e.g., from a prebuilt config).

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes googleapis#1220

---------

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
🤖 I have created a release *beep* *boop*
---


##
[0.24.0](googleapis/genai-toolbox@v0.23.0...v0.24.0)
(2025-12-19)


### Features

* **sources/cloud-gemini-data-analytics:** Add the Gemini Data Analytics
(GDA) integration for DB NL2SQL conversion to Toolbox
([googleapis#2181](googleapis#2181))
([aa270b2](googleapis@aa270b2))
* **source/cloudsqlmysql:** Add support for IAM authentication in Cloud
SQL MySQL source
([googleapis#2050](googleapis#2050))
([af3d3c5](googleapis@af3d3c5))
* **sources/oracle:** Add Oracle OCI and Wallet support
([googleapis#1945](googleapis#1945))
([8ea39ec](googleapis@8ea39ec))
* Support combining prebuilt and custom tool configurations
([googleapis#2188](googleapis#2188))
([5788605](googleapis@5788605))
* **tools/mysql-get-query-plan:** Add new `mysql-get-query-plan` tool
for MySQL source
([googleapis#2123](googleapis#2123))
([0641da0](googleapis@0641da0))


### Bug Fixes

* **spanner:** Move list graphs validation to runtime
([googleapis#2154](googleapis#2154))
([914b3ee](googleapis@914b3ee))


---
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: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
Dedup userAgentRoundTripper into util where userAgent related code are
placed.
…eapis#2199)

This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [github.com/godror/godror](https://redirect.github.com/godror/godror)
| `v0.49.4` -> `v0.49.6` |
![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fgodror%2fgodror/v0.49.6?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fgodror%2fgodror/v0.49.4/v0.49.6?slim=true)
|

---

### Release Notes

<details>
<summary>godror/godror (github.com/godror/godror)</summary>

###
[`v0.49.6`](https://redirect.github.com/godror/godror/blob/HEAD/CHANGELOG.md#v0496)

[Compare
Source](https://redirect.github.com/godror/godror/compare/v0.49.5...v0.49.6)

##### Added

- \*bool == nil -> NULL in DB.

###
[`v0.49.5`](https://redirect.github.com/godror/godror/blob/HEAD/CHANGELOG.md#v0495)

[Compare
Source](https://redirect.github.com/godror/godror/compare/v0.49.4...v0.49.5)

- ODPI-C v5.6.4

</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.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- 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/genai-toolbox).

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

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
… to v8.8.0 (googleapis#1989)

This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[github.com/elastic/elastic-transport-go/v8](https://redirect.github.com/elastic/elastic-transport-go)
| `v8.7.0` -> `v8.8.0` |
![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2felastic%2felastic-transport-go%2fv8/v8.8.0?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2felastic%2felastic-transport-go%2fv8/v8.7.0/v8.8.0?slim=true)
|

---

### Release Notes

<details>
<summary>elastic/elastic-transport-go
(github.com/elastic/elastic-transport-go/v8)</summary>

###
[`v8.8.0`](https://redirect.github.com/elastic/elastic-transport-go/releases/tag/v8.8.0)

[Compare
Source](https://redirect.github.com/elastic/elastic-transport-go/compare/v8.7.0...v8.8.0)

##### Features

- add a Close method to transport
([#&#8203;36](https://redirect.github.com/elastic/elastic-transport-go/issues/36))
([b2d94de](https://redirect.github.com/elastic/elastic-transport-go/commit/b2d94deb8ad1efd05eab3ee465679b7bd4e42942))
- add interceptor pattern
([#&#8203;35](https://redirect.github.com/elastic/elastic-transport-go/issues/35))
([c2d0c18](https://redirect.github.com/elastic/elastic-transport-go/commit/c2d0c18106e550ed73c30f49e2b318f51a6e57db))

</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.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- 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/genai-toolbox).

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

Co-authored-by: Averi Kitsch <akitsch@google.com>
…oogleapis#1994)

This PR contains the following updates:

| Package | Change |
[Age](https://docs.renovatebot.com/merge-confidence/) |
[Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
|
[github.com/redis/go-redis/v9](https://redirect.github.com/redis/go-redis)
| `v9.16.0` -> `v9.17.2` |
![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fredis%2fgo-redis%2fv9/v9.17.2?slim=true)
|
![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fredis%2fgo-redis%2fv9/v9.16.0/v9.17.2?slim=true)
|

---

### Release Notes

<details>
<summary>redis/go-redis (github.com/redis/go-redis/v9)</summary>

###
[`v9.17.2`](https://redirect.github.com/redis/go-redis/releases/tag/v9.17.2):
9.17.2

[Compare
Source](https://redirect.github.com/redis/go-redis/compare/v9.17.1...v9.17.2)

#### 🐛 Bug Fixes

- **Connection Pool**: Fixed critical race condition in turn management
that could cause connection leaks when dial goroutines complete after
request timeout
([#&#8203;3626](https://redirect.github.com/redis/go-redis/pull/3626))
by [@&#8203;cyningsun](https://redirect.github.com/cyningsun)
- **Context Timeout**: Improved context timeout calculation to use
minimum of remaining time and DialTimeout, preventing goroutines from
waiting longer than necessary
([#&#8203;3626](https://redirect.github.com/redis/go-redis/pull/3626))
by [@&#8203;cyningsun](https://redirect.github.com/cyningsun)

#### 🧰 Maintenance

- chore(deps): bump rojopolis/spellcheck-github-actions from 0.54.0 to
0.55.0
([#&#8203;3627](https://redirect.github.com/redis/go-redis/pull/3627))

#### Contributors

We'd like to thank all the contributors who worked on this release!

[@&#8203;cyningsun](https://redirect.github.com/cyningsun) and
[@&#8203;ndyakov](https://redirect.github.com/ndyakov)

###
[`v9.17.1`](https://redirect.github.com/redis/go-redis/releases/tag/v9.17.1):
9.17.1

[Compare
Source](https://redirect.github.com/redis/go-redis/compare/v9.17.0...v9.17.1)

#### 🐛 Bug Fixes

- add wait to keyless commands list
([#&#8203;3615](https://redirect.github.com/redis/go-redis/pull/3615))
by [@&#8203;marcoferrer](https://redirect.github.com/marcoferrer)
- fix(time): remove cached time optimization
([#&#8203;3611](https://redirect.github.com/redis/go-redis/pull/3611))
by [@&#8203;ndyakov](https://redirect.github.com/ndyakov)

#### 🧰 Maintenance

- chore(deps): bump golangci/golangci-lint-action from 9.0.0 to 9.1.0
([#&#8203;3609](https://redirect.github.com/redis/go-redis/pull/3609))
- chore(deps): bump actions/checkout from 5 to 6
([#&#8203;3610](https://redirect.github.com/redis/go-redis/pull/3610))
- chore(script): fix help call in tag.sh
([#&#8203;3606](https://redirect.github.com/redis/go-redis/pull/3606))
by [@&#8203;ndyakov](https://redirect.github.com/ndyakov)

#### Contributors

We'd like to thank all the contributors who worked on this release!

[@&#8203;marcoferrer](https://redirect.github.com/marcoferrer) and
[@&#8203;ndyakov](https://redirect.github.com/ndyakov)

###
[`v9.17.0`](https://redirect.github.com/redis/go-redis/releases/tag/v9.17.0):
9.17.0

[Compare
Source](https://redirect.github.com/redis/go-redis/compare/v9.16.0...v9.17.0)

#### 🚀 Highlights

##### Redis 8.4 Support

Added support for Redis 8.4, including new commands and features
([#&#8203;3572](https://redirect.github.com/redis/go-redis/pull/3572))

##### Typed Errors

Introduced typed errors for better error handling using `errors.As`
instead of string checks. Errors can now be wrapped and set to commands
in hooks without breaking library functionality
([#&#8203;3602](https://redirect.github.com/redis/go-redis/pull/3602))

##### New Commands

- **CAS/CAD Commands**: Added support for
Compare-And-Set/Compare-And-Delete operations with conditional matching
(`IFEQ`, `IFNE`, `IFDEQ`, `IFDNE`)
([#&#8203;3583](https://redirect.github.com/redis/go-redis/pull/3583),
[#&#8203;3595](https://redirect.github.com/redis/go-redis/pull/3595))
- **MSETEX**: Atomically set multiple key-value pairs with expiration
options and conditional modes
([#&#8203;3580](https://redirect.github.com/redis/go-redis/pull/3580))
- **XReadGroup CLAIM**: Consume both incoming and idle pending entries
from streams in a single call
([#&#8203;3578](https://redirect.github.com/redis/go-redis/pull/3578))
- **ACL Commands**: Added `ACLGenPass`, `ACLUsers`, and `ACLWhoAmI`
([#&#8203;3576](https://redirect.github.com/redis/go-redis/pull/3576))
- **SLOWLOG Commands**: Added `SLOWLOG LEN` and `SLOWLOG RESET`
([#&#8203;3585](https://redirect.github.com/redis/go-redis/pull/3585))
- **LATENCY Commands**: Added `LATENCY LATEST` and `LATENCY RESET`
([#&#8203;3584](https://redirect.github.com/redis/go-redis/pull/3584))

##### Search & Vector Improvements

- **Hybrid Search**: Added **EXPERIMENTAL** support for the new
`FT.HYBRID` command
([#&#8203;3573](https://redirect.github.com/redis/go-redis/pull/3573))
- **Vector Range**: Added `VRANGE` command for vector sets
([#&#8203;3543](https://redirect.github.com/redis/go-redis/pull/3543))
- **FT.INFO Enhancements**: Added vector-specific attributes in FT.INFO
response
([#&#8203;3596](https://redirect.github.com/redis/go-redis/pull/3596))

##### Connection Pool Improvements

- **Improved Connection Success Rate**: Implemented FIFO queue-based
fairness and context pattern for connection creation to prevent
premature cancellation under high concurrency
([#&#8203;3518](https://redirect.github.com/redis/go-redis/pull/3518))
- **Connection State Machine**: Resolved race conditions and improved
pool performance with proper state tracking
([#&#8203;3559](https://redirect.github.com/redis/go-redis/pull/3559))
- **Pool Performance**: Significant performance improvements with faster
semaphores, lockless hook manager, and reduced allocations (47-67%
faster Get/Put operations)
([#&#8203;3565](https://redirect.github.com/redis/go-redis/pull/3565))

##### Metrics & Observability

- **Canceled Metric Attribute**: Added 'canceled' metrics attribute to
distinguish context cancellation errors from other errors
([#&#8203;3566](https://redirect.github.com/redis/go-redis/pull/3566))

#### ✨ New Features

- Typed errors with wrapping support
([#&#8203;3602](https://redirect.github.com/redis/go-redis/pull/3602))
by [@&#8203;ndyakov](https://redirect.github.com/ndyakov)
- CAS/CAD commands (marked as experimental)
([#&#8203;3583](https://redirect.github.com/redis/go-redis/pull/3583),
[#&#8203;3595](https://redirect.github.com/redis/go-redis/pull/3595)) by
[@&#8203;ndyakov](https://redirect.github.com/ndyakov),
[@&#8203;htemelski-redis](https://redirect.github.com/htemelski-redis)
- MSETEX command support
([#&#8203;3580](https://redirect.github.com/redis/go-redis/pull/3580))
by [@&#8203;ofekshenawa](https://redirect.github.com/ofekshenawa)
- XReadGroup CLAIM argument
([#&#8203;3578](https://redirect.github.com/redis/go-redis/pull/3578))
by [@&#8203;ofekshenawa](https://redirect.github.com/ofekshenawa)
- ACL commands: GenPass, Users, WhoAmI
([#&#8203;3576](https://redirect.github.com/redis/go-redis/pull/3576))
by [@&#8203;destinyoooo](https://redirect.github.com/destinyoooo)
- SLOWLOG commands: LEN, RESET
([#&#8203;3585](https://redirect.github.com/redis/go-redis/pull/3585))
by [@&#8203;destinyoooo](https://redirect.github.com/destinyoooo)
- LATENCY commands: LATEST, RESET
([#&#8203;3584](https://redirect.github.com/redis/go-redis/pull/3584))
by [@&#8203;destinyoooo](https://redirect.github.com/destinyoooo)
- Hybrid search command (FT.HYBRID)
([#&#8203;3573](https://redirect.github.com/redis/go-redis/pull/3573))
by
[@&#8203;htemelski-redis](https://redirect.github.com/htemelski-redis)
- Vector range command (VRANGE)
([#&#8203;3543](https://redirect.github.com/redis/go-redis/pull/3543))
by [@&#8203;cxljs](https://redirect.github.com/cxljs)
- Vector-specific attributes in FT.INFO
([#&#8203;3596](https://redirect.github.com/redis/go-redis/pull/3596))
by [@&#8203;ndyakov](https://redirect.github.com/ndyakov)
- Improved connection pool success rate with FIFO queue
([#&#8203;3518](https://redirect.github.com/redis/go-redis/pull/3518))
by [@&#8203;cyningsun](https://redirect.github.com/cyningsun)
- Canceled metrics attribute for context errors
([#&#8203;3566](https://redirect.github.com/redis/go-redis/pull/3566))
by [@&#8203;pvragov](https://redirect.github.com/pvragov)

#### 🐛 Bug Fixes

- Fixed Failover Client MaintNotificationsConfig
([#&#8203;3600](https://redirect.github.com/redis/go-redis/pull/3600))
by [@&#8203;ajax16384](https://redirect.github.com/ajax16384)
- Fixed ACLGenPass function to use the bit parameter
([#&#8203;3597](https://redirect.github.com/redis/go-redis/pull/3597))
by [@&#8203;destinyoooo](https://redirect.github.com/destinyoooo)
- Return error instead of panic from commands
([#&#8203;3568](https://redirect.github.com/redis/go-redis/pull/3568))
by [@&#8203;dragneelfps](https://redirect.github.com/dragneelfps)
- Safety harness in `joinErrors` to prevent panic
([#&#8203;3577](https://redirect.github.com/redis/go-redis/pull/3577))
by [@&#8203;manisharma](https://redirect.github.com/manisharma)

#### ⚡ Performance

- Connection state machine with race condition fixes
([#&#8203;3559](https://redirect.github.com/redis/go-redis/pull/3559))
by [@&#8203;ndyakov](https://redirect.github.com/ndyakov)
- Pool performance improvements: 47-67% faster Get/Put, 33% less memory,
50% fewer allocations
([#&#8203;3565](https://redirect.github.com/redis/go-redis/pull/3565))
by [@&#8203;ndyakov](https://redirect.github.com/ndyakov)

#### 🧪 Testing & Infrastructure

- Updated to Redis 8.4.0 image
([#&#8203;3603](https://redirect.github.com/redis/go-redis/pull/3603))
by [@&#8203;ndyakov](https://redirect.github.com/ndyakov)
- Added Redis 8.4-RC1-pre to CI
([#&#8203;3572](https://redirect.github.com/redis/go-redis/pull/3572))
by [@&#8203;ndyakov](https://redirect.github.com/ndyakov)
- Refactored tests for idiomatic Go
([#&#8203;3561](https://redirect.github.com/redis/go-redis/pull/3561),
[#&#8203;3562](https://redirect.github.com/redis/go-redis/pull/3562),
[#&#8203;3563](https://redirect.github.com/redis/go-redis/pull/3563)) by
[@&#8203;12ya](https://redirect.github.com/12ya)

#### 👥 Contributors

We'd like to thank all the contributors who worked on this release!

[@&#8203;12ya](https://redirect.github.com/12ya),
[@&#8203;ajax16384](https://redirect.github.com/ajax16384),
[@&#8203;cxljs](https://redirect.github.com/cxljs),
[@&#8203;cyningsun](https://redirect.github.com/cyningsun),
[@&#8203;destinyoooo](https://redirect.github.com/destinyoooo),
[@&#8203;dragneelfps](https://redirect.github.com/dragneelfps),
[@&#8203;htemelski-redis](https://redirect.github.com/htemelski-redis),
[@&#8203;manisharma](https://redirect.github.com/manisharma),
[@&#8203;ndyakov](https://redirect.github.com/ndyakov),
[@&#8203;ofekshenawa](https://redirect.github.com/ofekshenawa),
[@&#8203;pvragov](https://redirect.github.com/pvragov)

***

**Full Changelog**:
<redis/go-redis@v9.16.0...v9.17.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.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- 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/genai-toolbox).

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

Co-authored-by: Averi Kitsch <akitsch@google.com>
## Description

> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [ ] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>
This PR update the linking mechanism between Source and Tool.

Tools are directly linked to their Source, either by pointing to the
Source's functions or by assigning values from the source during Tool's
initialization. However, the existing approach means that any
modification to the Source after Tool's initialization might not be
reflected. To address this limitation, each tool should only store a
name reference to the Source, rather than direct link or assigned
values.

Tools will provide interface for `compatibleSource`. This will be used
to determine if a Source is compatible with the Tool.
```
type compatibleSource interface{
    Client() http.Client
    ProjectID() string
}
```

During `Invoke()`, the tool will run the following operations:
* retrieve Source from the `resourceManager` with source's named defined
in Tool's config
* validate Source via `compatibleSource interface{}`
* run the remaining `Invoke()` function. Fields that are needed is
retrieved directly from the source.

With this update, resource manager is also added as input to other
Tool's function that require access to source (e.g.
`RequiresClientAuthorization()`).
…ion (googleapis#2228)

## Description

This PR fixes issues in the `alloydb-wait-for-operation` tool where the
connection message was not being generated correctly upon operation
completion.

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>
…leapis#2235)

## Description
The list_database_stats test fails intermittently when run in parallel
on shared instances. Specifically, the "filter by tablespace" and "sort
by size" test cases fail because they encounter unexpected databases in
the pg_default tablespace created by concurrent test runs.
This PR narrows the scope of these test cases by filtering for specific
database names. This ensures assertions remain isolated to the current
test run regardless of other databases present in the shared
environment.

```
 go test -tags=integration tests/postgres/postgres_integration_test.go
ok      command-line-arguments  14.455s
```

> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<1738>
## Description

This PR adds a new section to the `looker_mcp.md` document that explains
how to connect Looker to Antigravity.

The new **"Connect with Antigravity"** section provides two methods for
connecting:

- **MCP Store:** A straightforward method using the built-in MCP Store
in Antigravity.
- **Custom config:** For connecting to a custom MCP server by adding a
configuration to the mcp_config.json file.

These changes will help users easily connect Looker to Antigravity.

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

Co-authored-by: Averi Kitsch <akitsch@google.com>
…entation in Invoke() function to Source (googleapis#2226)

Move source-related queries from `Invoke()` function into Source.

This is an effort to generalizing tools to work with any Source that
implements a specific interface. This will provide a better segregation
of the roles for Tools vs Source.

Tool's role will be limited to the following:
* Resolve any pre-implementation steps or parameters (e.g. template
parameters)
* Retrieving Source
* Calling the source's implementation


Along with these updates, this PR also resolve some comments from
Gemini:
* update `fmt.Printf()` to logging as a Debug log -- within
`GetOperations()`
* update `fmt.Printf()` during failure to retrieve user agent into
throwing an error. UserAgent are expected to be retrieved successfully
during source initialization. Failure to retrieve will indicate a server
error.
This workflow prevents the links that are broken or 404 errors by
checking the documentation links during development and before merging
into the main code base. This ensures all project documentation (Readme
, contribution files) remains current and functional , proactively
addressing technical debt. Please note this is a resubmission of a
previous [PR](googleapis#1756)
that was closed due to merge conflicts

---------

Co-authored-by: Twisha Bansal <58483338+twishabansal@users.noreply.github.com>
Update the README.md to explicitly define MAJOR, MINOR, and PATCH
increments for post-1.0.0 versioning, enhancing clarity and readability.

## Description

> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [actions/cache](https://redirect.github.com/actions/cache) | action |
major | `v4` -> `v5` |
| [actions/checkout](https://redirect.github.com/actions/checkout) |
action | major | `v5.0.1` -> `v6.0.1` |
| [actions/checkout](https://redirect.github.com/actions/checkout) |
action | major | `v5` -> `v6` |
|
[golangci/golangci-lint-action](https://redirect.github.com/golangci/golangci-lint-action)
| action | major | `v8.0.0` -> `v9.2.0` |

---

### Release Notes

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

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

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

</details>

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

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

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

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

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

</details>

<details>
<summary>golangci/golangci-lint-action
(golangci/golangci-lint-action)</summary>

###
[`v9.2.0`](https://redirect.github.com/golangci/golangci-lint-action/releases/tag/v9.2.0)

[Compare
Source](https://redirect.github.com/golangci/golangci-lint-action/compare/v9.1.0...v9.2.0)

<!-- Release notes generated using configuration in .github/release.yml
at v9.2.0 -->

#### What's Changed

##### Changes

- feat: add version-file option by
[@&#8203;ldez](https://redirect.github.com/ldez) in
[#&#8203;1320](https://redirect.github.com/golangci/golangci-lint-action/pull/1320)
- chore: move samples into fixtures by
[@&#8203;ldez](https://redirect.github.com/ldez) in
[#&#8203;1321](https://redirect.github.com/golangci/golangci-lint-action/pull/1321)

##### Dependencies

- build(deps-dev): bump the dev-dependencies group with 2 updates by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;1317](https://redirect.github.com/golangci/golangci-lint-action/pull/1317)
- build(deps): bump actions/checkout from 5 to 6 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;1318](https://redirect.github.com/golangci/golangci-lint-action/pull/1318)
- build(deps-dev): bump the dev-dependencies group with 3 updates by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;1323](https://redirect.github.com/golangci/golangci-lint-action/pull/1323)
- build(deps): bump yaml from 2.8.1 to 2.8.2 in the dependencies group
by [@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;1324](https://redirect.github.com/golangci/golangci-lint-action/pull/1324)

**Full Changelog**:
<golangci/golangci-lint-action@v9.1.0...v9.2.0>

###
[`v9.1.0`](https://redirect.github.com/golangci/golangci-lint-action/releases/tag/v9.1.0)

[Compare
Source](https://redirect.github.com/golangci/golangci-lint-action/compare/v9.0.0...v9.1.0)

<!-- Release notes generated using configuration in .github/release.yml
at v9.1.0 -->

#### What's Changed

##### Changes

- feat: automatic module directories by
[@&#8203;ldez](https://redirect.github.com/ldez) in
[#&#8203;1315](https://redirect.github.com/golangci/golangci-lint-action/pull/1315)

##### Documentation

- docs: organize options by
[@&#8203;ldez](https://redirect.github.com/ldez) in
[#&#8203;1314](https://redirect.github.com/golangci/golangci-lint-action/pull/1314)

##### Dependencies

- build(deps-dev): bump the dev-dependencies group with 2 updates by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;1307](https://redirect.github.com/golangci/golangci-lint-action/pull/1307)
- build(deps-dev): bump js-yaml from 4.1.0 to 4.1.1 by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;1309](https://redirect.github.com/golangci/golangci-lint-action/pull/1309)
- build(deps-dev): bump the dev-dependencies group with 2 updates by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;1310](https://redirect.github.com/golangci/golangci-lint-action/pull/1310)
- build(deps): bump the dependencies group with 2 updates by
[@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot] in
[#&#8203;1311](https://redirect.github.com/golangci/golangci-lint-action/pull/1311)

**Full Changelog**:
<golangci/golangci-lint-action@v9.0.0...v9.1.0>

###
[`v9.0.0`](https://redirect.github.com/golangci/golangci-lint-action/releases/tag/v9.0.0)

[Compare
Source](https://redirect.github.com/golangci/golangci-lint-action/compare/v8.0.0...v9.0.0)

In the scope of this release, we change Nodejs runtime from node20 to
node24
(<https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/>).

#### What's Changed

##### Changes

- feat: add install-only option by
[@&#8203;ldez](https://redirect.github.com/ldez) in
[#&#8203;1305](https://redirect.github.com/golangci/golangci-lint-action/pull/1305)
- feat: support Module Plugin System by
[@&#8203;ldez](https://redirect.github.com/ldez) in
[#&#8203;1306](https://redirect.github.com/golangci/golangci-lint-action/pull/1306)

**Full Changelog**:
<golangci/golangci-lint-action@v8.0.0...v9.0.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/genai-toolbox).

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

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
Yuan325 and others added 17 commits January 8, 2026 19:42
## Description

Previously added `allowed-origins` (for CORs) is not sufficient for
preventing DNS rebinding attacks. We'll have to check host headers.

To test, run Toolbox with the following:
```
go run . --allowed-hosts=127.0.0.1:5000
```

Test with the following:
```
// curl successfully
curl -H "Host: 127.0.0.1:5000" http://127.0.0.1:5000

// will show Invalid Host Header error
curl -H "Host: attacker:5000" http://127.0.0.1:5000
```

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [ ] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>
## Description

Add default value to manifest (for both native endpoint and mcp
endpoint).

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes googleapis#1602
…oogleapis#2265)

## Description

PSV should only be required when when it is needed. Currently, we
require psv even whenever user uses AlloyDB AI NL tool. This is due to
the statement that we use to execute nl query.

This PR modified the statement query to only utilize `param_names` and
`param_values` when needed.

Manually tested with a db that does not have psv installed.

🛠️ Fixes googleapis#1970
Update hugo version for release v0.25.0
🤖 I have created a release *beep* *boop*
---


##
[0.25.0](googleapis/genai-toolbox@v0.24.0...v0.25.0)
(2026-01-08)


### Features

* Add `embeddingModel` support
([googleapis#2121](googleapis#2121))
([9c62f31](googleapis@9c62f31))
* Add `allowed-hosts` flag
([googleapis#2254](googleapis#2254))
([17b41f6](googleapis@17b41f6))
* Add parameter default value to manifest
([googleapis#2264](googleapis#2264))
([9d1feca](googleapis@9d1feca))
* **snowflake:** Add Snowflake Source and Tools
([googleapis#858](googleapis#858))
([b706b5b](googleapis@b706b5b))
* **prebuilt/cloud-sql-mysql:** Update CSQL MySQL prebuilt tools to use
IAM ([googleapis#2202](googleapis#2202))
([731a32e](googleapis@731a32e))
* **sources/bigquery:** Make credentials scope configurable
([googleapis#2210](googleapis#2210))
([a450600](googleapis@a450600))
* **sources/trino:** Add ssl verification options and fix docs example
([googleapis#2155](googleapis#2155))
([4a4cf1e](googleapis@4a4cf1e))
* **tools/looker:** Add ability to set destination folder with
`make_look` and `make_dashboard`.
([googleapis#2245](googleapis#2245))
([eb79339](googleapis@eb79339))
* **tools/postgressql:** Add tool to list store procedure
([googleapis#2156](googleapis#2156))
([cf0fc51](googleapis@cf0fc51))
* **tools/postgressql:** Add Parameter `embeddedBy` config support
([googleapis#2151](googleapis#2151))
([17b70cc](googleapis@17b70cc))


### Bug Fixes

* **server:** Add `embeddingModel` config initialization
([googleapis#2281](googleapis#2281))
([a779975](googleapis@a779975))
* **sources/cloudgda:** Add import for cloudgda source
([googleapis#2217](googleapis#2217))
([7daa411](googleapis@7daa411))
* **tools/alloydb-wait-for-operation:** Fix connection message
generation
([googleapis#2228](googleapis#2228))
([7053fbb](googleapis@7053fbb))
* **tools/alloydbainl:** Only add psv when NL Config Param is defined
([googleapis#2265](googleapis#2265))
([ef8f3b0](googleapis@ef8f3b0))
* **tools/looker:** Looker client OAuth nil pointer error
([googleapis#2231](googleapis#2231))
([268700b](googleapis@268700b))

---
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: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
## Description

update docs to reflect triaging workflow and SLO

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [x] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>
…oogleapis#2262)

This change allows the agent developer to control the maxium number of
rows returned from tools running BigQuery SQL query. Using this feature
the agent developer could limit how large output is presented to LLM in
an agentic user journey.

## Description

> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue
googleapis#2261
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes googleapis#2261 2261
…ke() function to Source (googleapis#2273)

Move source-related queries from `Invoke()` function into Source.

This is an effort to generalizing tools to work with any Source that
implements a specific interface. This will provide a better segregation
of the roles for Tools vs Source.

Tool's role will be limited to the following:
* Resolve any pre-implementation steps or parameters (e.g. template
parameters)
* Retrieving Source
* Calling the source's implementation
…oogleapis#2274)

Move source-related queries from `Invoke()` function into Source.

This PR addresses the following sources:
* dataplex
* http
* serverlessspark

This is an effort to generalizing tools to work with any Source that
implements a specific interface. This will provide a better segregation
of the roles for Tools vs Source.

Tool's role will be limited to the following:
* Resolve any pre-implementation steps or parameters (e.g. template
parameters)
* Retrieving Source
* Calling the source's implementation
…unction into Source (googleapis#2275)

Move source-related queries from `Invoke()` function into Source.

This is an effort to generalizing tools to work with any Source that
implements a specific interface. This will provide a better segregation
of the roles for Tools vs Source.

Tool's role will be limited to the following:
* Resolve any pre-implementation steps or parameters (e.g. template
parameters)
* Retrieving Source
* Calling the source's implementation
…leapis#2251)

## Description

> Should include a concise description of the changes (bug or feature),
it's
> impact, along with a summary of the solution

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes #<issue_number_goes_here>

Co-authored-by: Averi Kitsch <akitsch@google.com>
…ction into Source (googleapis#2277)

Move source-related queries from `Invoke()` function into Source.

This is an effort to generalizing tools to work with any Source that
implements a specific interface. This will provide a better segregation
of the roles for Tools vs Source.

Tool's role will be limited to the following:
* Resolve any pre-implementation steps or parameters (e.g. template
parameters)
* Retrieving Source
* Calling the source's implementation
…tion into Source (googleapis#2278)

Move source-related queries from `Invoke()` function into Source.

This is an effort to generalizing tools to work with any Source that
implements a specific interface. This will provide a better segregation
of the roles for Tools vs Source.

Tool's role will be limited to the following:
* Resolve any pre-implementation steps or parameters (e.g. template
parameters)
* Retrieving Source
* Calling the source's implementation
…oogleapis#2283)

Update existing docs to install PSV extensions **only** when needed.
This tool could be use without installing PSV if NLConfigParam is not
used.

---------

Co-authored-by: Averi Kitsch <akitsch@google.com>
## Description

Addresses an issue where Dataplex AspectTypes created during integration
tests were not consistently deleted. This accumulation led to exceeding
the AspectType quota.
To prevent this, the test setup now includes a step to list and delete
all existing AspectTypes within the test project and location *before*
attempting to create any new ones. This ensures a clean state for each
test run and avoids hitting the quota.


## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [ ] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)
- [ ] Make sure to add `!` if this involve a breaking change

🛠️ Fixes googleapis#2057

Co-authored-by: Averi Kitsch <akitsch@google.com>
## Description

Samples for MCP with Neo4j for this page:
https://googleapis.github.io/genai-toolbox/samples/

## PR Checklist

> Thank you for opening a Pull Request! Before submitting your PR, there
are a
> few things you can do to make sure it goes smoothly:

- [x] Make sure you reviewed

[CONTRIBUTING.md](https://github.com/googleapis/genai-toolbox/blob/main/CONTRIBUTING.md)
- [ ] Make sure to open an issue as a

[bug/issue](https://github.com/googleapis/genai-toolbox/issues/new/choose)
  before writing your code! That way we can discuss the change, evaluate
  designs, and agree on the general idea
- [x] Ensure the tests and linter pass
- [x] Code coverage does not decrease (if any source code was changed)
- [x] Appropriate docs were updated (if necessary)
- [x] Make sure to add `!` if this involve a breaking change

---------

Co-authored-by: Yuan Teoh <45984206+Yuan325@users.noreply.github.com>
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.