John Kennedy
1867503157
perf(core): copy-on-write callbacks, cache inspect.signature, frozenset config keys
...
- Add copy-on-write (COW) to BaseCallbackManager.copy() — defer
shallow copies of handlers/tags/metadata until first mutation
- Cache inspect.signature() results for BaseChatModel._generate and
_agenerate to avoid repeated introspection per invoke
- Cache signature(self._run) and _get_runnable_config_param in
ChildTool.__init__ to avoid per-invocation introspection
- Convert CONFIG_KEYS and COPIABLE_KEYS from lists to frozensets
for O(1) membership checks
- Fast path in _format_for_tracing when no messages have list content
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-27 22:10:45 -08:00
John Kennedy
e2da14595b
perf(core): optimize callback manager hot paths
...
- get_child(): pass state directly to constructor instead of calling
set_handlers/add_tags/add_metadata sequentially (-22%)
- add_tags(): use set-based dedup instead of O(n) list scans per tag,
early return when tags list is empty (-70% on duplicate tags)
- handle_event/ahandle_event: early return when handlers list is empty
- _configure(): skip throwaway CallbackManager construction on the
common path where inheritable_callbacks is provided
These are the top bottlenecks identified by profiling langgraph's
react_agent benchmark, where langchain_core callbacks account for ~35%
of runtime.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-27 21:37:52 -08:00
John Kennedy
67b777f655
fix(deepseek): use proper URL parsing for azure endpoint detection
...
Replace substring check `"azure.com" in url` with `urlparse`-based
hostname validation to prevent bypass via crafted URLs (CWE-20).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-27 21:08:10 -08:00
John Kennedy
e939c96792
fix: compaction typo ( #35467 )
...
_This PR applies 2/2 suggestions from code quality [AI
findings](https://github.com/langchain-ai/langchain/security/quality/ai-findings )._
---------
Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com>
2026-02-27 19:30:37 +00:00
ccurme
c600b932a6
fix(openai): add test for CSV and accommodate breaking changes in file url inputs ( #35454 )
2026-02-26 13:50:39 -05:00
dependabot[bot]
63e49f62f1
chore: bump langgraph-checkpoint from 3.0.1 to 4.0.0 in /libs/langchain_v1 ( #35445 )
2026-02-26 13:47:28 -05:00
dependabot[bot]
e86d47103d
chore: bump langgraph-checkpoint from 3.0.0 to 4.0.0 in /libs/model-profiles ( #35446 )
2026-02-26 13:45:49 -05:00
dependabot[bot]
4f1d2d0500
chore: bump langgraph-checkpoint from 3.0.0 to 4.0.0 in /libs/partners/openai ( #35448 )
2026-02-26 13:43:54 -05:00
dependabot[bot]
a33112b451
chore: bump the langchain-deps group across 3 directories with 14 updates ( #35441 )
...
Bumps the langchain-deps group with 4 updates in the /libs/core
directory: [langsmith](https://github.com/langchain-ai/langsmith-sdk ),
[uuid-utils](https://github.com/aminalaee/uuid-utils ),
[ruff](https://github.com/astral-sh/ruff ) and
[responses](https://github.com/getsentry/responses ).
Bumps the langchain-deps group with 9 updates in the /libs/langchain
directory:
| Package | From | To |
| --- | --- | --- |
| [langsmith](https://github.com/langchain-ai/langsmith-sdk ) | `0.7.3` |
`0.7.6` |
| [packaging](https://github.com/pypa/packaging ) | `24.2` | `26.0` |
| [ruff](https://github.com/astral-sh/ruff ) | `0.15.1` | `0.15.2` |
| [responses](https://github.com/getsentry/responses ) | `0.25.8` |
`0.26.0` |
| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy ) | `2.0.46` |
`2.0.47` |
| [langchain-anthropic](https://github.com/langchain-ai/langchain ) |
`1.3.3` | `1.3.4` |
|
[langchain-google-genai](https://github.com/langchain-ai/langchain-google )
| `4.2.0` | `4.2.1` |
| [langchain-aws](https://github.com/langchain-ai/langchain-aws ) |
`1.2.5` | `1.3.0` |
| [fastapi](https://github.com/fastapi/fastapi ) | `0.129.0` | `0.133.0`
|
Bumps the langchain-deps group with 5 updates in the /libs/langchain_v1
directory:
| Package | From | To |
| --- | --- | --- |
| [ruff](https://github.com/astral-sh/ruff ) | `0.15.1` | `0.15.2` |
|
[langchain-google-genai](https://github.com/langchain-ai/langchain-google )
| `4.2.0` | `4.2.1` |
| [langchain-aws](https://github.com/langchain-ai/langchain-aws ) |
`1.2.5` | `1.3.0` |
| [langgraph](https://github.com/langchain-ai/langgraph ) | `1.0.8` |
`1.0.9` |
| [langchain-azure-ai](https://github.com/langchain-ai/langchain-azure )
| `1.0.4` | `1.0.61` |
Updates `langsmith` from 0.7.3 to 0.7.6
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/langchain-ai/langsmith-sdk/releases ">langsmith's
releases</a>.</em></p>
<blockquote>
<h2>v0.7.6</h2>
<h2>What's Changed</h2>
<ul>
<li>feat(python): add sandbox exception types and client plumbing by <a
href="https://github.com/DanielKneipp "><code>@DanielKneipp</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2442 ">langchain-ai/langsmith-sdk#2442</a></li>
<li>fix(py, claude agent sdk): Correctly parent spans in asyncio context
by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2457 ">langchain-ai/langsmith-sdk#2457</a></li>
<li>perf(py): Improve retry logic for tracing ops by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2459 ">langchain-ai/langsmith-sdk#2459</a></li>
<li>feat(py, claude agent sdk): Add wrapping for PostToolUseFailure hook
by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2460 ">langchain-ai/langsmith-sdk#2460</a></li>
<li>chore(claude agent sdk): rm debug logs by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2461 ">langchain-ai/langsmith-sdk#2461</a></li>
<li>release(py): 0.7.6 by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2462 ">langchain-ai/langsmith-sdk#2462</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.5...v0.7.6 ">https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.5...v0.7.6 </a></p>
<h2>v0.7.5</h2>
<h2>What's Changed</h2>
<ul>
<li>chore(deps): bump chalk from 4.1.2 to 5.6.2 in /js by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2416 ">langchain-ai/langsmith-sdk#2416</a></li>
<li>chore(deps-dev): bump <code>@jest/reporters</code> from 29.7.0 to
30.2.0 in /js by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2417 ">langchain-ai/langsmith-sdk#2417</a></li>
<li>chore(deps): bump the py-minor-and-patch group across 1 directory
with 16 updates by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2440 ">langchain-ai/langsmith-sdk#2440</a></li>
<li>chore(deps-dev): bump pandas-stubs from 2.3.3.251219 to 2.3.3.260113
in /python by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2404 ">langchain-ai/langsmith-sdk#2404</a></li>
<li>chore(deps-dev): bump the js-minor-and-patch group across 1
directory with 10 updates by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2433 ">langchain-ai/langsmith-sdk#2433</a></li>
<li>make zstandard optional by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2453 ">langchain-ai/langsmith-sdk#2453</a></li>
<li>fix(py/adk): fix multi-agent tracing by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2451 ">langchain-ai/langsmith-sdk#2451</a></li>
<li>release(py): 0.7.5 by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2456 ">langchain-ai/langsmith-sdk#2456</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.4...v0.7.5 ">https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.4...v0.7.5 </a></p>
<h2>v0.7.4</h2>
<h2>What's Changed</h2>
<ul>
<li>fix(google-adk): add wrapt dependency by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2436 ">langchain-ai/langsmith-sdk#2436</a></li>
<li>chore: lock dependencies by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2439 ">langchain-ai/langsmith-sdk#2439</a></li>
<li>release(py): 0.7.4 by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2441 ">langchain-ai/langsmith-sdk#2441</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.3...v0.7.4 ">https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.3...v0.7.4 </a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="22a048477a "><code>22a0484</code></a>
release(py): 0.7.6 (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2462 ">#2462</a>)</li>
<li><a
href="01acee8618 "><code>01acee8</code></a>
chore(claude agent sdk): rm debug logs (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2461 ">#2461</a>)</li>
<li><a
href="4e366c4685 "><code>4e366c4</code></a>
feat(py, claude agent sdk): Add wrapping for PostToolUseFailure hook (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2460 ">#2460</a>)</li>
<li><a
href="4e25507853 "><code>4e25507</code></a>
perf(py): Improve retry logic for tracing ops (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2459 ">#2459</a>)</li>
<li><a
href="daa0330aff "><code>daa0330</code></a>
fix(py, claude agent sdk): Correctly parent spans in asyncio context (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2457 ">#2457</a>)</li>
<li><a
href="070a20719a "><code>070a207</code></a>
feat(python): add sandbox exception types and client plumbing (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2442 ">#2442</a>)</li>
<li><a
href="6f852006cb "><code>6f85200</code></a>
release(py): 0.7.5 (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2456 ">#2456</a>)</li>
<li><a
href="901486fd5e "><code>901486f</code></a>
fix(py/adk): fix multi-agent tracing (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2451 ">#2451</a>)</li>
<li><a
href="31d1828efe "><code>31d1828</code></a>
make zstandard optional (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2453 ">#2453</a>)</li>
<li><a
href="78c263920a "><code>78c2639</code></a>
chore(deps-dev): bump the js-minor-and-patch group across 1 directory
with 10...</li>
<li>Additional commits viewable in <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.3...v0.7.6 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `uuid-utils` from 0.14.0 to 0.14.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/aminalaee/uuid-utils/releases ">uuid-utils's
releases</a>.</em></p>
<blockquote>
<h2>0.14.1</h2>
<h2>What's Changed</h2>
<ul>
<li>Use SPDX license identifier by <a
href="https://github.com/vargenau "><code>@vargenau</code></a> in <a
href="https://redirect.github.com/aminalaee/uuid-utils/pull/129 ">aminalaee/uuid-utils#129</a></li>
<li>Fix byte-order in <code>uuid1</code> and <code>uuid6</code> by <a
href="https://github.com/aminalaee "><code>@aminalaee</code></a> in <a
href="https://redirect.github.com/aminalaee/uuid-utils/pull/130 ">aminalaee/uuid-utils#130</a></li>
<li>Remove uuid_unstable flag and minor docs update by <a
href="https://github.com/aminalaee "><code>@aminalaee</code></a> in <a
href="https://github.com ">https://github.com </a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/aminalaee/uuid-utils/compare/0.14.0...0.15.0 ">https://github.com/aminalaee/uuid-utils/compare/0.14.0...0.15.0 </a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="c09cd2940a "><code>c09cd29</code></a>
Version 0.14.1 (<a
href="https://redirect.github.com/aminalaee/uuid-utils/issues/134 ">#134</a>)</li>
<li><a
href="a547f37f69 "><code>a547f37</code></a>
Remove uuid_unstable flag and update docs (<a
href="https://redirect.github.com/aminalaee/uuid-utils/issues/133 ">#133</a>)</li>
<li><a
href="4c632bfe63 "><code>4c632bf</code></a>
Fix byte-order in <code>uuid1</code> and <code>uuid6</code> (<a
href="https://redirect.github.com/aminalaee/uuid-utils/issues/130 ">#130</a>)</li>
<li><a
href="a5aca8c399 "><code>a5aca8c</code></a>
Use SPDX license identifier (<a
href="https://redirect.github.com/aminalaee/uuid-utils/issues/129 ">#129</a>)</li>
<li><a
href="21d14455b9 "><code>21d1445</code></a>
Update Github Action (<a
href="https://redirect.github.com/aminalaee/uuid-utils/issues/132 ">#132</a>)</li>
<li><a
href="c935c3559f "><code>c935c35</code></a>
Bump CodSpeedHQ/action from 4.8.2 to 4.10.2 (<a
href="https://redirect.github.com/aminalaee/uuid-utils/issues/126 ">#126</a>)</li>
<li><a
href="c2613e3003 "><code>c2613e3</code></a>
Bump uraimo/run-on-arch-action from 2.8.1 to 3.0.1 (<a
href="https://redirect.github.com/aminalaee/uuid-utils/issues/127 ">#127</a>)</li>
<li><a
href="df39faf8e8 "><code>df39faf</code></a>
Bump actions/setup-python from 5 to 6 (<a
href="https://redirect.github.com/aminalaee/uuid-utils/issues/128 ">#128</a>)</li>
<li><a
href="f1b61c7ed1 "><code>f1b61c7</code></a>
Bump CodSpeedHQ/action from 4.5.2 to 4.8.2 (<a
href="https://redirect.github.com/aminalaee/uuid-utils/issues/124 ">#124</a>)</li>
<li><a
href="08c833b3cb "><code>08c833b</code></a>
Bump astral-sh/setup-uv from 4 to 7 (<a
href="https://redirect.github.com/aminalaee/uuid-utils/issues/123 ">#123</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/aminalaee/uuid-utils/compare/0.14.0...0.14.1 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `ruff` from 0.15.1 to 0.15.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases ">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.15.2</h2>
<h2>Release Notes</h2>
<p>Released on 2026-02-19.</p>
<h3>Preview features</h3>
<ul>
<li>
<p>Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/pull/23385 ">#23385</a>)</p>
<p>In preview, Ruff now enables a significantly expanded default rule
set of 412 rules, up from the stable default set of 59 rules. The new
rules are mostly a superset of the stable defaults, with the exception
of these rules, which are removed from the preview defaults:</p>
<ul>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-imports-on-one-line "><code>multiple-imports-on-one-line</code></a>
(<code>E401</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E402</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E701</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-statements-on-one-line-semicolon "><code>multiple-statements-on-one-line-semicolon</code></a>
(<code>E702</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/useless-semicolon "><code>useless-semicolon</code></a>
(<code>E703</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/none-comparison "><code>none-comparison</code></a>
(<code>E711</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/true-false-comparison "><code>true-false-comparison</code></a>
(<code>E712</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-in-test "><code>not-in-test</code></a>
(<code>E713</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-is-test "><code>not-is-test</code></a>
(<code>E714</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/type-comparison "><code>type-comparison</code></a>
(<code>E721</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/lambda-assignment "><code>lambda-assignment</code></a>
(<code>E731</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-variable-name "><code>ambiguous-variable-name</code></a>
(<code>E741</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-class-name "><code>ambiguous-class-name</code></a>
(<code>E742</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-function-name "><code>ambiguous-function-name</code></a>
(<code>E743</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star "><code>undefined-local-with-import-star</code></a>
(<code>F403</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star-usage "><code>undefined-local-with-import-star-usage</code></a>
(<code>F405</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-nested-import-star-usage "><code>undefined-local-with-nested-import-star-usage</code></a>
(<code>F406</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/forward-annotation-syntax-error "><code>forward-annotation-syntax-error</code></a>
(<code>F722</code>)</li>
</ul>
<p>If you use preview and prefer the old defaults, you can restore them
with configuration like:</p>
<pre lang="toml"><code>
# ruff.toml
<p>[lint]
select = ["E4", "E7", "E9",
"F"]</p>
<h1>pyproject.toml</h1>
<p>[tool.ruff.lint]
select = ["E4", "E7", "E9", "F"]
</code></pre></p>
<p>If you do give them a try, feel free to share your feedback in the <a
href="https://github.com/astral-sh/ruff/discussions/23203 ">GitHub
discussion</a>!</p>
</li>
<li>
<p>[<code>flake8-pyi</code>] Also check string annotations
(<code>PYI041</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/19023 ">#19023</a>)</p>
</li>
</ul>
<h3>Bug fixes</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md ">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.15.2</h2>
<p>Released on 2026-02-19.</p>
<h3>Preview features</h3>
<ul>
<li>
<p>Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/pull/23385 ">#23385</a>)</p>
<p>In preview, Ruff now enables a significantly expanded default rule
set of 412
rules, up from the stable default set of 59 rules. The new rules are
mostly a
superset of the stable defaults, with the exception of these rules,
which are
removed from the preview defaults:</p>
<ul>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-imports-on-one-line "><code>multiple-imports-on-one-line</code></a>
(<code>E401</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E402</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E701</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-statements-on-one-line-semicolon "><code>multiple-statements-on-one-line-semicolon</code></a>
(<code>E702</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/useless-semicolon "><code>useless-semicolon</code></a>
(<code>E703</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/none-comparison "><code>none-comparison</code></a>
(<code>E711</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/true-false-comparison "><code>true-false-comparison</code></a>
(<code>E712</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-in-test "><code>not-in-test</code></a>
(<code>E713</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-is-test "><code>not-is-test</code></a>
(<code>E714</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/type-comparison "><code>type-comparison</code></a>
(<code>E721</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/lambda-assignment "><code>lambda-assignment</code></a>
(<code>E731</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-variable-name "><code>ambiguous-variable-name</code></a>
(<code>E741</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-class-name "><code>ambiguous-class-name</code></a>
(<code>E742</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-function-name "><code>ambiguous-function-name</code></a>
(<code>E743</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star "><code>undefined-local-with-import-star</code></a>
(<code>F403</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star-usage "><code>undefined-local-with-import-star-usage</code></a>
(<code>F405</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-nested-import-star-usage "><code>undefined-local-with-nested-import-star-usage</code></a>
(<code>F406</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/forward-annotation-syntax-error "><code>forward-annotation-syntax-error</code></a>
(<code>F722</code>)</li>
</ul>
<p>If you use preview and prefer the old defaults, you can restore them
with
configuration like:</p>
<pre lang="toml"><code>
# ruff.toml
<p>[lint]
select = ["E4", "E7", "E9",
"F"]</p>
<h1>pyproject.toml</h1>
<p>[tool.ruff.lint]
select = ["E4", "E7", "E9", "F"]
</code></pre></p>
<p>If you do give them a try, feel free to share your feedback in the <a
href="https://github.com/astral-sh/ruff/discussions/23203 ">GitHub
discussion</a>!</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9d18ee9115 "><code>9d18ee9</code></a>
Hard code workflow name and <code>cancel-in-progress</code> only for PRs
(<a
href="https://redirect.github.com/astral-sh/ruff/issues/23431 ">#23431</a>)</li>
<li><a
href="7cc15f024b "><code>7cc15f0</code></a>
Bump 0.15.2 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23430 ">#23430</a>)</li>
<li><a
href="d1b544393a "><code>d1b5443</code></a>
Add extension mapping to configuration file options (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23384 ">#23384</a>)</li>
<li><a
href="222574af90 "><code>222574a</code></a>
Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23385 ">#23385</a>)</li>
<li><a
href="1465b5de38 "><code>1465b5d</code></a>
[<code>flake8-async</code>] Fix <code>in_async_context</code> logic (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23426 ">#23426</a>)</li>
<li><a
href="410902fa40 "><code>410902f</code></a>
[<code>pyupgrade</code>] Fix handling of <code>typing.{io,re}</code>
(<code>UP035</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23131 ">#23131</a>)</li>
<li><a
href="729610acd9 "><code>729610a</code></a>
[ty] Fall back to ambiguous for large control flow graphs (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23399 ">#23399</a>)</li>
<li><a
href="1425c185b0 "><code>1425c18</code></a>
[ty] Add code folding support</li>
<li><a
href="97acaaea5f "><code>97acaae</code></a>
[ty] Fix stack overflow for self-referential <code>TypeOf</code> in
annotations (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23407 ">#23407</a>)</li>
<li><a
href="1f380c8258 "><code>1f380c8</code></a>
[ty] Update tests <code>reveal_type</code> and <code>Never</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23418 ">#23418</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.15.1...0.15.2 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `responses` from 0.25.8 to 0.26.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/getsentry/responses/releases ">responses's
releases</a>.</em></p>
<blockquote>
<h2>0.26.0</h2>
<ul>
<li>When using <code>assert_all_requests_are_fired=True</code>,
assertions about
unfired requests are now raised even when an exception occurs in the
context manager or
decorated function. Previously, these assertions were suppressed when
exceptions occurred.
This new behavior provides valuable debugging context about which mocked
requests were
or weren't called.</li>
<li>Consider the <code>Retry-After</code> header when handling
retries</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/getsentry/responses/blob/master/CHANGES ">responses's
changelog</a>.</em></p>
<blockquote>
<h2>0.26.0</h2>
<ul>
<li>When using <code>assert_all_requests_are_fired=True</code>,
assertions about
unfired requests are now raised even when an exception occurs in the
context manager or
decorated function. Previously, these assertions were suppressed when
exceptions occurred.
This new behavior provides valuable debugging context about which mocked
requests were
or weren't called.</li>
<li>Consider the <code>Retry-After</code> header when handling
retries</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="94913d0580 "><code>94913d0</code></a>
release: 0.26.0</li>
<li><a
href="051b79e7fc "><code>051b79e</code></a>
Make <code>assert_all_requests_are_fired</code> always assert on
exception (<a
href="https://redirect.github.com/getsentry/responses/issues/782 ">#782</a>)</li>
<li><a
href="0905cb8bd5 "><code>0905cb8</code></a>
Fix query_param_matcher not matching empty query parameter values (<a
href="https://redirect.github.com/getsentry/responses/issues/787 ">#787</a>)</li>
<li><a
href="e0c6faab41 "><code>e0c6faa</code></a>
ci(release): Switch from action-prepare-release to Craft (<a
href="https://redirect.github.com/getsentry/responses/issues/785 ">#785</a>)</li>
<li><a
href="1be3a737b7 "><code>1be3a73</code></a>
fix: Consider the <code>Retry-After</code> header when handling retries
(<a
href="https://redirect.github.com/getsentry/responses/issues/784 ">#784</a>)</li>
<li><a
href="c6730fbc87 "><code>c6730fb</code></a>
Merge branch 'release/0.25.8'</li>
<li>See full diff in <a
href="https://github.com/getsentry/responses/compare/0.25.8...0.26.0 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `langsmith` from 0.7.3 to 0.7.6
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/langchain-ai/langsmith-sdk/releases ">langsmith's
releases</a>.</em></p>
<blockquote>
<h2>v0.7.6</h2>
<h2>What's Changed</h2>
<ul>
<li>feat(python): add sandbox exception types and client plumbing by <a
href="https://github.com/DanielKneipp "><code>@DanielKneipp</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2442 ">langchain-ai/langsmith-sdk#2442</a></li>
<li>fix(py, claude agent sdk): Correctly parent spans in asyncio context
by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2457 ">langchain-ai/langsmith-sdk#2457</a></li>
<li>perf(py): Improve retry logic for tracing ops by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2459 ">langchain-ai/langsmith-sdk#2459</a></li>
<li>feat(py, claude agent sdk): Add wrapping for PostToolUseFailure hook
by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2460 ">langchain-ai/langsmith-sdk#2460</a></li>
<li>chore(claude agent sdk): rm debug logs by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2461 ">langchain-ai/langsmith-sdk#2461</a></li>
<li>release(py): 0.7.6 by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2462 ">langchain-ai/langsmith-sdk#2462</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.5...v0.7.6 ">https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.5...v0.7.6 </a></p>
<h2>v0.7.5</h2>
<h2>What's Changed</h2>
<ul>
<li>chore(deps): bump chalk from 4.1.2 to 5.6.2 in /js by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2416 ">langchain-ai/langsmith-sdk#2416</a></li>
<li>chore(deps-dev): bump <code>@jest/reporters</code> from 29.7.0 to
30.2.0 in /js by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2417 ">langchain-ai/langsmith-sdk#2417</a></li>
<li>chore(deps): bump the py-minor-and-patch group across 1 directory
with 16 updates by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2440 ">langchain-ai/langsmith-sdk#2440</a></li>
<li>chore(deps-dev): bump pandas-stubs from 2.3.3.251219 to 2.3.3.260113
in /python by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2404 ">langchain-ai/langsmith-sdk#2404</a></li>
<li>chore(deps-dev): bump the js-minor-and-patch group across 1
directory with 10 updates by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2433 ">langchain-ai/langsmith-sdk#2433</a></li>
<li>make zstandard optional by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2453 ">langchain-ai/langsmith-sdk#2453</a></li>
<li>fix(py/adk): fix multi-agent tracing by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2451 ">langchain-ai/langsmith-sdk#2451</a></li>
<li>release(py): 0.7.5 by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2456 ">langchain-ai/langsmith-sdk#2456</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.4...v0.7.5 ">https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.4...v0.7.5 </a></p>
<h2>v0.7.4</h2>
<h2>What's Changed</h2>
<ul>
<li>fix(google-adk): add wrapt dependency by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2436 ">langchain-ai/langsmith-sdk#2436</a></li>
<li>chore: lock dependencies by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2439 ">langchain-ai/langsmith-sdk#2439</a></li>
<li>release(py): 0.7.4 by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2441 ">langchain-ai/langsmith-sdk#2441</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.3...v0.7.4 ">https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.3...v0.7.4 </a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="22a048477a "><code>22a0484</code></a>
release(py): 0.7.6 (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2462 ">#2462</a>)</li>
<li><a
href="01acee8618 "><code>01acee8</code></a>
chore(claude agent sdk): rm debug logs (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2461 ">#2461</a>)</li>
<li><a
href="4e366c4685 "><code>4e366c4</code></a>
feat(py, claude agent sdk): Add wrapping for PostToolUseFailure hook (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2460 ">#2460</a>)</li>
<li><a
href="4e25507853 "><code>4e25507</code></a>
perf(py): Improve retry logic for tracing ops (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2459 ">#2459</a>)</li>
<li><a
href="daa0330aff "><code>daa0330</code></a>
fix(py, claude agent sdk): Correctly parent spans in asyncio context (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2457 ">#2457</a>)</li>
<li><a
href="070a20719a "><code>070a207</code></a>
feat(python): add sandbox exception types and client plumbing (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2442 ">#2442</a>)</li>
<li><a
href="6f852006cb "><code>6f85200</code></a>
release(py): 0.7.5 (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2456 ">#2456</a>)</li>
<li><a
href="901486fd5e "><code>901486f</code></a>
fix(py/adk): fix multi-agent tracing (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2451 ">#2451</a>)</li>
<li><a
href="31d1828efe "><code>31d1828</code></a>
make zstandard optional (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2453 ">#2453</a>)</li>
<li><a
href="78c263920a "><code>78c2639</code></a>
chore(deps-dev): bump the js-minor-and-patch group across 1 directory
with 10...</li>
<li>Additional commits viewable in <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.3...v0.7.6 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `responses` from 0.25.8 to 0.26.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/getsentry/responses/releases ">responses's
releases</a>.</em></p>
<blockquote>
<h2>0.26.0</h2>
<ul>
<li>When using <code>assert_all_requests_are_fired=True</code>,
assertions about
unfired requests are now raised even when an exception occurs in the
context manager or
decorated function. Previously, these assertions were suppressed when
exceptions occurred.
This new behavior provides valuable debugging context about which mocked
requests were
or weren't called.</li>
<li>Consider the <code>Retry-After</code> header when handling
retries</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/getsentry/responses/blob/master/CHANGES ">responses's
changelog</a>.</em></p>
<blockquote>
<h2>0.26.0</h2>
<ul>
<li>When using <code>assert_all_requests_are_fired=True</code>,
assertions about
unfired requests are now raised even when an exception occurs in the
context manager or
decorated function. Previously, these assertions were suppressed when
exceptions occurred.
This new behavior provides valuable debugging context about which mocked
requests were
or weren't called.</li>
<li>Consider the <code>Retry-After</code> header when handling
retries</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="94913d0580 "><code>94913d0</code></a>
release: 0.26.0</li>
<li><a
href="051b79e7fc "><code>051b79e</code></a>
Make <code>assert_all_requests_are_fired</code> always assert on
exception (<a
href="https://redirect.github.com/getsentry/responses/issues/782 ">#782</a>)</li>
<li><a
href="0905cb8bd5 "><code>0905cb8</code></a>
Fix query_param_matcher not matching empty query parameter values (<a
href="https://redirect.github.com/getsentry/responses/issues/787 ">#787</a>)</li>
<li><a
href="e0c6faab41 "><code>e0c6faa</code></a>
ci(release): Switch from action-prepare-release to Craft (<a
href="https://redirect.github.com/getsentry/responses/issues/785 ">#785</a>)</li>
<li><a
href="1be3a737b7 "><code>1be3a73</code></a>
fix: Consider the <code>Retry-After</code> header when handling retries
(<a
href="https://redirect.github.com/getsentry/responses/issues/784 ">#784</a>)</li>
<li><a
href="c6730fbc87 "><code>c6730fb</code></a>
Merge branch 'release/0.25.8'</li>
<li>See full diff in <a
href="https://github.com/getsentry/responses/compare/0.25.8...0.26.0 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `ruff` from 0.15.1 to 0.15.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases ">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.15.2</h2>
<h2>Release Notes</h2>
<p>Released on 2026-02-19.</p>
<h3>Preview features</h3>
<ul>
<li>
<p>Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/pull/23385 ">#23385</a>)</p>
<p>In preview, Ruff now enables a significantly expanded default rule
set of 412 rules, up from the stable default set of 59 rules. The new
rules are mostly a superset of the stable defaults, with the exception
of these rules, which are removed from the preview defaults:</p>
<ul>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-imports-on-one-line "><code>multiple-imports-on-one-line</code></a>
(<code>E401</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E402</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E701</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-statements-on-one-line-semicolon "><code>multiple-statements-on-one-line-semicolon</code></a>
(<code>E702</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/useless-semicolon "><code>useless-semicolon</code></a>
(<code>E703</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/none-comparison "><code>none-comparison</code></a>
(<code>E711</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/true-false-comparison "><code>true-false-comparison</code></a>
(<code>E712</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-in-test "><code>not-in-test</code></a>
(<code>E713</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-is-test "><code>not-is-test</code></a>
(<code>E714</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/type-comparison "><code>type-comparison</code></a>
(<code>E721</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/lambda-assignment "><code>lambda-assignment</code></a>
(<code>E731</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-variable-name "><code>ambiguous-variable-name</code></a>
(<code>E741</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-class-name "><code>ambiguous-class-name</code></a>
(<code>E742</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-function-name "><code>ambiguous-function-name</code></a>
(<code>E743</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star "><code>undefined-local-with-import-star</code></a>
(<code>F403</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star-usage "><code>undefined-local-with-import-star-usage</code></a>
(<code>F405</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-nested-import-star-usage "><code>undefined-local-with-nested-import-star-usage</code></a>
(<code>F406</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/forward-annotation-syntax-error "><code>forward-annotation-syntax-error</code></a>
(<code>F722</code>)</li>
</ul>
<p>If you use preview and prefer the old defaults, you can restore them
with configuration like:</p>
<pre lang="toml"><code>
# ruff.toml
<p>[lint]
select = ["E4", "E7", "E9",
"F"]</p>
<h1>pyproject.toml</h1>
<p>[tool.ruff.lint]
select = ["E4", "E7", "E9", "F"]
</code></pre></p>
<p>If you do give them a try, feel free to share your feedback in the <a
href="https://github.com/astral-sh/ruff/discussions/23203 ">GitHub
discussion</a>!</p>
</li>
<li>
<p>[<code>flake8-pyi</code>] Also check string annotations
(<code>PYI041</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/19023 ">#19023</a>)</p>
</li>
</ul>
<h3>Bug fixes</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md ">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.15.2</h2>
<p>Released on 2026-02-19.</p>
<h3>Preview features</h3>
<ul>
<li>
<p>Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/pull/23385 ">#23385</a>)</p>
<p>In preview, Ruff now enables a significantly expanded default rule
set of 412
rules, up from the stable default set of 59 rules. The new rules are
mostly a
superset of the stable defaults, with the exception of these rules,
which are
removed from the preview defaults:</p>
<ul>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-imports-on-one-line "><code>multiple-imports-on-one-line</code></a>
(<code>E401</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E402</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E701</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-statements-on-one-line-semicolon "><code>multiple-statements-on-one-line-semicolon</code></a>
(<code>E702</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/useless-semicolon "><code>useless-semicolon</code></a>
(<code>E703</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/none-comparison "><code>none-comparison</code></a>
(<code>E711</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/true-false-comparison "><code>true-false-comparison</code></a>
(<code>E712</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-in-test "><code>not-in-test</code></a>
(<code>E713</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-is-test "><code>not-is-test</code></a>
(<code>E714</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/type-comparison "><code>type-comparison</code></a>
(<code>E721</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/lambda-assignment "><code>lambda-assignment</code></a>
(<code>E731</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-variable-name "><code>ambiguous-variable-name</code></a>
(<code>E741</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-class-name "><code>ambiguous-class-name</code></a>
(<code>E742</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-function-name "><code>ambiguous-function-name</code></a>
(<code>E743</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star "><code>undefined-local-with-import-star</code></a>
(<code>F403</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star-usage "><code>undefined-local-with-import-star-usage</code></a>
(<code>F405</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-nested-import-star-usage "><code>undefined-local-with-nested-import-star-usage</code></a>
(<code>F406</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/forward-annotation-syntax-error "><code>forward-annotation-syntax-error</code></a>
(<code>F722</code>)</li>
</ul>
<p>If you use preview and prefer the old defaults, you can restore them
with
configuration like:</p>
<pre lang="toml"><code>
# ruff.toml
<p>[lint]
select = ["E4", "E7", "E9",
"F"]</p>
<h1>pyproject.toml</h1>
<p>[tool.ruff.lint]
select = ["E4", "E7", "E9", "F"]
</code></pre></p>
<p>If you do give them a try, feel free to share your feedback in the <a
href="https://github.com/astral-sh/ruff/discussions/23203 ">GitHub
discussion</a>!</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9d18ee9115 "><code>9d18ee9</code></a>
Hard code workflow name and <code>cancel-in-progress</code> only for PRs
(<a
href="https://redirect.github.com/astral-sh/ruff/issues/23431 ">#23431</a>)</li>
<li><a
href="7cc15f024b "><code>7cc15f0</code></a>
Bump 0.15.2 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23430 ">#23430</a>)</li>
<li><a
href="d1b544393a "><code>d1b5443</code></a>
Add extension mapping to configuration file options (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23384 ">#23384</a>)</li>
<li><a
href="222574af90 "><code>222574a</code></a>
Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23385 ">#23385</a>)</li>
<li><a
href="1465b5de38 "><code>1465b5d</code></a>
[<code>flake8-async</code>] Fix <code>in_async_context</code> logic (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23426 ">#23426</a>)</li>
<li><a
href="410902fa40 "><code>410902f</code></a>
[<code>pyupgrade</code>] Fix handling of <code>typing.{io,re}</code>
(<code>UP035</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23131 ">#23131</a>)</li>
<li><a
href="729610acd9 "><code>729610a</code></a>
[ty] Fall back to ambiguous for large control flow graphs (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23399 ">#23399</a>)</li>
<li><a
href="1425c185b0 "><code>1425c18</code></a>
[ty] Add code folding support</li>
<li><a
href="97acaaea5f "><code>97acaae</code></a>
[ty] Fix stack overflow for self-referential <code>TypeOf</code> in
annotations (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23407 ">#23407</a>)</li>
<li><a
href="1f380c8258 "><code>1f380c8</code></a>
[ty] Update tests <code>reveal_type</code> and <code>Never</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23418 ">#23418</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.15.1...0.15.2 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `ruff` from 0.15.1 to 0.15.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases ">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.15.2</h2>
<h2>Release Notes</h2>
<p>Released on 2026-02-19.</p>
<h3>Preview features</h3>
<ul>
<li>
<p>Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/pull/23385 ">#23385</a>)</p>
<p>In preview, Ruff now enables a significantly expanded default rule
set of 412 rules, up from the stable default set of 59 rules. The new
rules are mostly a superset of the stable defaults, with the exception
of these rules, which are removed from the preview defaults:</p>
<ul>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-imports-on-one-line "><code>multiple-imports-on-one-line</code></a>
(<code>E401</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E402</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E701</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-statements-on-one-line-semicolon "><code>multiple-statements-on-one-line-semicolon</code></a>
(<code>E702</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/useless-semicolon "><code>useless-semicolon</code></a>
(<code>E703</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/none-comparison "><code>none-comparison</code></a>
(<code>E711</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/true-false-comparison "><code>true-false-comparison</code></a>
(<code>E712</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-in-test "><code>not-in-test</code></a>
(<code>E713</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-is-test "><code>not-is-test</code></a>
(<code>E714</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/type-comparison "><code>type-comparison</code></a>
(<code>E721</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/lambda-assignment "><code>lambda-assignment</code></a>
(<code>E731</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-variable-name "><code>ambiguous-variable-name</code></a>
(<code>E741</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-class-name "><code>ambiguous-class-name</code></a>
(<code>E742</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-function-name "><code>ambiguous-function-name</code></a>
(<code>E743</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star "><code>undefined-local-with-import-star</code></a>
(<code>F403</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star-usage "><code>undefined-local-with-import-star-usage</code></a>
(<code>F405</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-nested-import-star-usage "><code>undefined-local-with-nested-import-star-usage</code></a>
(<code>F406</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/forward-annotation-syntax-error "><code>forward-annotation-syntax-error</code></a>
(<code>F722</code>)</li>
</ul>
<p>If you use preview and prefer the old defaults, you can restore them
with configuration like:</p>
<pre lang="toml"><code>
# ruff.toml
<p>[lint]
select = ["E4", "E7", "E9",
"F"]</p>
<h1>pyproject.toml</h1>
<p>[tool.ruff.lint]
select = ["E4", "E7", "E9", "F"]
</code></pre></p>
<p>If you do give them a try, feel free to share your feedback in the <a
href="https://github.com/astral-sh/ruff/discussions/23203 ">GitHub
discussion</a>!</p>
</li>
<li>
<p>[<code>flake8-pyi</code>] Also check string annotations
(<code>PYI041</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/19023 ">#19023</a>)</p>
</li>
</ul>
<h3>Bug fixes</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md ">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.15.2</h2>
<p>Released on 2026-02-19.</p>
<h3>Preview features</h3>
<ul>
<li>
<p>Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/pull/23385 ">#23385</a>)</p>
<p>In preview, Ruff now enables a significantly expanded default rule
set of 412
rules, up from the stable default set of 59 rules. The new rules are
mostly a
superset of the stable defaults, with the exception of these rules,
which are
removed from the preview defaults:</p>
<ul>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-imports-on-one-line "><code>multiple-imports-on-one-line</code></a>
(<code>E401</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E402</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E701</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-statements-on-one-line-semicolon "><code>multiple-statements-on-one-line-semicolon</code></a>
(<code>E702</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/useless-semicolon "><code>useless-semicolon</code></a>
(<code>E703</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/none-comparison "><code>none-comparison</code></a>
(<code>E711</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/true-false-comparison "><code>true-false-comparison</code></a>
(<code>E712</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-in-test "><code>not-in-test</code></a>
(<code>E713</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-is-test "><code>not-is-test</code></a>
(<code>E714</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/type-comparison "><code>type-comparison</code></a>
(<code>E721</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/lambda-assignment "><code>lambda-assignment</code></a>
(<code>E731</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-variable-name "><code>ambiguous-variable-name</code></a>
(<code>E741</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-class-name "><code>ambiguous-class-name</code></a>
(<code>E742</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-function-name "><code>ambiguous-function-name</code></a>
(<code>E743</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star "><code>undefined-local-with-import-star</code></a>
(<code>F403</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star-usage "><code>undefined-local-with-import-star-usage</code></a>
(<code>F405</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-nested-import-star-usage "><code>undefined-local-with-nested-import-star-usage</code></a>
(<code>F406</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/forward-annotation-syntax-error "><code>forward-annotation-syntax-error</code></a>
(<code>F722</code>)</li>
</ul>
<p>If you use preview and prefer the old defaults, you can restore them
with
configuration like:</p>
<pre lang="toml"><code>
# ruff.toml
<p>[lint]
select = ["E4", "E7", "E9",
"F"]</p>
<h1>pyproject.toml</h1>
<p>[tool.ruff.lint]
select = ["E4", "E7", "E9", "F"]
</code></pre></p>
<p>If you do give them a try, feel free to share your feedback in the <a
href="https://github.com/astral-sh/ruff/discussions/23203 ">GitHub
discussion</a>!</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9d18ee9115 "><code>9d18ee9</code></a>
Hard code workflow name and <code>cancel-in-progress</code> only for PRs
(<a
href="https://redirect.github.com/astral-sh/ruff/issues/23431 ">#23431</a>)</li>
<li><a
href="7cc15f024b "><code>7cc15f0</code></a>
Bump 0.15.2 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23430 ">#23430</a>)</li>
<li><a
href="d1b544393a "><code>d1b5443</code></a>
Add extension mapping to configuration file options (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23384 ">#23384</a>)</li>
<li><a
href="222574af90 "><code>222574a</code></a>
Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23385 ">#23385</a>)</li>
<li><a
href="1465b5de38 "><code>1465b5d</code></a>
[<code>flake8-async</code>] Fix <code>in_async_context</code> logic (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23426 ">#23426</a>)</li>
<li><a
href="410902fa40 "><code>410902f</code></a>
[<code>pyupgrade</code>] Fix handling of <code>typing.{io,re}</code>
(<code>UP035</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23131 ">#23131</a>)</li>
<li><a
href="729610acd9 "><code>729610a</code></a>
[ty] Fall back to ambiguous for large control flow graphs (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23399 ">#23399</a>)</li>
<li><a
href="1425c185b0 "><code>1425c18</code></a>
[ty] Add code folding support</li>
<li><a
href="97acaaea5f "><code>97acaae</code></a>
[ty] Fix stack overflow for self-referential <code>TypeOf</code> in
annotations (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23407 ">#23407</a>)</li>
<li><a
href="1f380c8258 "><code>1f380c8</code></a>
[ty] Update tests <code>reveal_type</code> and <code>Never</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23418 ">#23418</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.15.1...0.15.2 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `langsmith` from 0.7.3 to 0.7.6
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/langchain-ai/langsmith-sdk/releases ">langsmith's
releases</a>.</em></p>
<blockquote>
<h2>v0.7.6</h2>
<h2>What's Changed</h2>
<ul>
<li>feat(python): add sandbox exception types and client plumbing by <a
href="https://github.com/DanielKneipp "><code>@DanielKneipp</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2442 ">langchain-ai/langsmith-sdk#2442</a></li>
<li>fix(py, claude agent sdk): Correctly parent spans in asyncio context
by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2457 ">langchain-ai/langsmith-sdk#2457</a></li>
<li>perf(py): Improve retry logic for tracing ops by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2459 ">langchain-ai/langsmith-sdk#2459</a></li>
<li>feat(py, claude agent sdk): Add wrapping for PostToolUseFailure hook
by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2460 ">langchain-ai/langsmith-sdk#2460</a></li>
<li>chore(claude agent sdk): rm debug logs by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2461 ">langchain-ai/langsmith-sdk#2461</a></li>
<li>release(py): 0.7.6 by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2462 ">langchain-ai/langsmith-sdk#2462</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.5...v0.7.6 ">https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.5...v0.7.6 </a></p>
<h2>v0.7.5</h2>
<h2>What's Changed</h2>
<ul>
<li>chore(deps): bump chalk from 4.1.2 to 5.6.2 in /js by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2416 ">langchain-ai/langsmith-sdk#2416</a></li>
<li>chore(deps-dev): bump <code>@jest/reporters</code> from 29.7.0 to
30.2.0 in /js by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2417 ">langchain-ai/langsmith-sdk#2417</a></li>
<li>chore(deps): bump the py-minor-and-patch group across 1 directory
with 16 updates by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2440 ">langchain-ai/langsmith-sdk#2440</a></li>
<li>chore(deps-dev): bump pandas-stubs from 2.3.3.251219 to 2.3.3.260113
in /python by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2404 ">langchain-ai/langsmith-sdk#2404</a></li>
<li>chore(deps-dev): bump the js-minor-and-patch group across 1
directory with 10 updates by <a
href="https://github.com/dependabot "><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2433 ">langchain-ai/langsmith-sdk#2433</a></li>
<li>make zstandard optional by <a
href="https://github.com/angus-langchain "><code>@angus-langchain</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2453 ">langchain-ai/langsmith-sdk#2453</a></li>
<li>fix(py/adk): fix multi-agent tracing by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2451 ">langchain-ai/langsmith-sdk#2451</a></li>
<li>release(py): 0.7.5 by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2456 ">langchain-ai/langsmith-sdk#2456</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.4...v0.7.5 ">https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.4...v0.7.5 </a></p>
<h2>v0.7.4</h2>
<h2>What's Changed</h2>
<ul>
<li>fix(google-adk): add wrapt dependency by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2436 ">langchain-ai/langsmith-sdk#2436</a></li>
<li>chore: lock dependencies by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2439 ">langchain-ai/langsmith-sdk#2439</a></li>
<li>release(py): 0.7.4 by <a
href="https://github.com/QuentinBrosse "><code>@QuentinBrosse</code></a>
in <a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/2441 ">langchain-ai/langsmith-sdk#2441</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.3...v0.7.4 ">https://github.com/langchain-ai/langsmith-sdk/compare/v0.7.3...v0.7.4 </a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="22a048477a "><code>22a0484</code></a>
release(py): 0.7.6 (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2462 ">#2462</a>)</li>
<li><a
href="01acee8618 "><code>01acee8</code></a>
chore(claude agent sdk): rm debug logs (<a
href="https://redirect.github.com/langchain-ai/langsmith-sdk/issues/2461 ">#2461</a>)</li>
<li><a
href="4e366c4685 "><code>4e366c4</code></a>
feat(py, claude a...
_Description has been truncated_
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-26 02:48:31 -08:00
dependabot[bot]
b5f71cd690
chore: bump langgraph-checkpoint from 3.0.1 to 4.0.0 in /libs/partners/anthropic ( #35450 )
...
Bumps [langgraph-checkpoint](https://github.com/langchain-ai/langgraph )
from 3.0.1 to 4.0.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/langchain-ai/langgraph/releases ">langgraph-checkpoint's
releases</a>.</em></p>
<blockquote>
<h2>langgraph-checkpoint==4.0.0</h2>
<p>Changes since checkpoint==3.0.1</p>
<ul>
<li>fix: flip default on base cache (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6677 ">#6677</a>)</li>
<li>fix(checkpoint): InMemorySaver context managers should return self
in… (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6529 ">#6529</a>)</li>
<li>fix: docstring for serializer protocol (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6525 ">#6525</a>)</li>
<li>chore: clean up some refs (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6487 ">#6487</a>)</li>
<li>chore: add <code>pyproject.toml</code> links (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6364 ">#6364</a>)</li>
</ul>
<h2>langgraph-checkpoint-postgres==3.0.4</h2>
<p>Changes since checkpointpostgres==3.0.3</p>
<ul>
<li>chore: Omit lock when using connection pool (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6734 ">#6734</a>)</li>
<li>chore(deps): upgrade dependencies with <code>uv lock
--upgrade</code> (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6671 ">#6671</a>)</li>
<li>chore: update twitter URLs (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6683 ">#6683</a>)</li>
</ul>
<h2>langgraph-checkpoint-postgres==3.0.3</h2>
<p>Changes since checkpointpostgres==3.0.2</p>
<ul>
<li>fix: flip default on base cache (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6677 ">#6677</a>)</li>
<li>docs: storage nits (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6651 ">#6651</a>)</li>
</ul>
<h2>langgraph-checkpoint-sqlite==3.0.3</h2>
<p>Changes since checkpointsqlite==3.0.2</p>
<ul>
<li>fix: aiosqlite's breaking change (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6699 ">#6699</a>)</li>
<li>chore(deps): upgrade dependencies with <code>uv lock
--upgrade</code> (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6671 ">#6671</a>)</li>
<li>chore: update twitter URLs (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6683 ">#6683</a>)</li>
</ul>
<h2>langgraph-checkpoint-postgres==3.0.2</h2>
<p>Changes since checkpointpostgres==3.0.1</p>
<ul>
<li>release(checkpoint-postgres): 3.0.1 (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6568 ">#6568</a>)</li>
<li>chore: pgqs (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6567 ">#6567</a>)</li>
<li>fix(checkpoint-postgres): ensure vector extension is created only if
not exists (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6154 ">#6154</a>)</li>
<li>fix(checkpoint-postgres): Replace f-string SQL formatting with
parameterized queries in migration statements (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6328 ">#6328</a>)</li>
<li>chore: add <code>pyproject.toml</code> links (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6364 ">#6364</a>)</li>
<li>docs: add license files for checkpoint-sqlite and
checkpoint-postgres (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6392 ">#6392</a>)</li>
</ul>
<h2>langgraph-checkpoint-sqlite==3.0.2</h2>
<p>Changes since checkpointsqlite==3.0.1</p>
<ul>
<li>fix: flip default on base cache (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6677 ">#6677</a>)</li>
<li>docs: storage nits (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6651 ">#6651</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f91d79d0c8 "><code>f91d79d</code></a>
fix: flip default on base cache (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6677 ">#6677</a>)</li>
<li><a
href="cb2faa7dda "><code>cb2faa7</code></a>
fix(prebuilt): support generic type arguments for ToolRuntime injection
(<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6509 ">#6509</a>)</li>
<li><a
href="a5827c5c61 "><code>a5827c5</code></a>
fix: change default recursion limit (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6676 ">#6676</a>)</li>
<li><a
href="5212369bd0 "><code>5212369</code></a>
feat(sdk-py): add end-time to crons client (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6674 ">#6674</a>)</li>
<li><a
href="7045a23148 "><code>7045a23</code></a>
fix: add <code>state</code> attribute to <code>ToolCallRequest</code>
overrides (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6668 ">#6668</a>)</li>
<li><a
href="728db10b1f "><code>728db10</code></a>
fix: suppress unintended deprecation warning (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6669 ">#6669</a>)</li>
<li><a
href="454af21896 "><code>454af21</code></a>
feat(sdk-py): cron.on_run_completed support (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6662 ">#6662</a>)</li>
<li><a
href="b4630d8452 "><code>b4630d8</code></a>
chore: delete docs (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6488 ">#6488</a>)</li>
<li><a
href="311465bbf7 "><code>311465b</code></a>
fix: sanitize namespace for deeply nested graph jumps (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6665 ">#6665</a>)</li>
<li><a
href="8ccead9560 "><code>8ccead9</code></a>
docs: x-refs and explainer in tool node docs (<a
href="https://redirect.github.com/langchain-ai/langgraph/issues/6653 ">#6653</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/langchain-ai/langgraph/compare/checkpoint==3.0.1...checkpoint==4.0.0 ">compare
view</a></li>
</ul>
</details>
<br />
[](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 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/langchain-ai/langchain/network/alerts ).
</details>
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-26 02:46:51 -08:00
dependabot[bot]
8791ada8c0
chore: bump nltk from 3.9.2 to 3.9.3 in /libs/text-splitters ( #35449 )
...
Bumps [nltk](https://github.com/nltk/nltk ) from 3.9.2 to 3.9.3.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/nltk/nltk/blob/develop/ChangeLog ">nltk's
changelog</a>.</em></p>
<blockquote>
<p>Version 3.9.3 2026-02-21</p>
<ul>
<li>Fix CVE-2025-14009: secure ZIP extraction in nltk.downloader (<a
href="https://redirect.github.com/nltk/nltk/issues/3468 ">#3468</a>)</li>
<li>Block path traversal/arbitrary reads in nltk.data for protocol-less
refs (<a
href="https://redirect.github.com/nltk/nltk/issues/3467 ">#3467</a>)</li>
<li>Block path traversal/abs paths in corpus readers and FS pointers (<a
href="https://redirect.github.com/nltk/nltk/issues/3479 ">#3479</a>, <a
href="https://redirect.github.com/nltk/nltk/issues/3480 ">#3480</a>)</li>
<li>Validate external StanfordSegmenter JARs using SHA256 (<a
href="https://redirect.github.com/nltk/nltk/issues/3477 ">#3477</a>)</li>
<li>Add optional sandbox enforcement for filestring() (<a
href="https://redirect.github.com/nltk/nltk/issues/3485 ">#3485</a>)</li>
<li>Maintenance: downloader/zipped models, CI/tooling updates</li>
</ul>
<p>Thanks to the following contributors to 3.9.3:
Chris Clauss, Eric Kafe, HyperPS, purificant, Shivansh-Game, Christopher
Smith</p>
<p>Version 3.9.2 2025-10-01</p>
<ul>
<li>Update download checksums to use SHA256 in built index</li>
<li>Fix percentage escape in new-style string formatting</li>
<li>replace shortened URLs using goo.gl</li>
<li>Make Wordnet interoperable with various taggers and tagged
corpora</li>
<li>Fix saving PerceptronTagger</li>
<li>Document how to reproduce old Wordnet studies</li>
<li>properly initialize Portuguese corpus reader</li>
<li>support for mixed rules conversion into Chomsky Normal Form</li>
<li>only import tkinter if a GUI is needed</li>
<li>issue <a
href="https://redirect.github.com/nltk/nltk/issues/2112 ">#2112</a> with
Corenlp</li>
<li>new environment variable
NLTK_DOWNLOADER_FORCE_INTERACTIVE_SHELL</li>
<li>Lesk defaults to most frequent sense in case of ties</li>
</ul>
<p>Thanks to the following contributors to 3.9.2:
Jose Cols, Peter de Blanc, GeneralPoxter, Eric Kafe, William LaCroix,
Jason Liu,
Samer Masterson, Mike014, purificant, Andrew Ernest Ritz, samertm, Ikram
Ul Haq,
Christopher Smith, Ryan Mannion</p>
<p>Version 3.9.1 2024-08-19</p>
<ul>
<li>Fixed bug that prevented wordnet from loading</li>
</ul>
<p>Version 3.9 2024-08-18</p>
<ul>
<li>Fix security vulnerability CVE-2024-39705 (breaking change)</li>
<li>Replace pickled models (punkt, chunker, taggers) by new pickle-free
"_tab" packages</li>
<li>No longer sort Wordnet synsets and relations (sort in calling
function when required)</li>
<li>Only strip the last suffix in Wordnet Morphy, thus restricting
synsets() results</li>
<li>Add Python 3.12 support</li>
<li>Many other minor fixes</li>
</ul>
<p>Thanks to the following contributors to 3.8.2:
Tom Aarsen, Cat Lee Ball, Veralara Bernhard, Carlos Brandt, Konstantin
Chernyshev, Michael Higgins,
Eric Kafe, Vivek Kalyan, David Lukes, Rob Malouf, purificant, Alex
Rudnick, Liling Tan, Akihiro Yamazaki.</p>
<p>Version 3.8.1 2023-01-02</p>
<ul>
<li>Resolve RCE vulnerability in localhost WordNet Browser (<a
href="https://redirect.github.com/nltk/nltk/issues/3100 ">#3100</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4154eb85e8 "><code>4154eb8</code></a>
Merge pull request <a
href="https://redirect.github.com/nltk/nltk/issues/3503 ">#3503</a> from
ekaf/hotfix-3501</li>
<li><a
href="7a710cbc8b "><code>7a710cb</code></a>
Prepare release 3.9.3</li>
<li><a
href="1056b323af "><code>1056b32</code></a>
Merge pull request <a
href="https://redirect.github.com/nltk/nltk/issues/3468 ">#3468</a> from
HyperPS/fix/secure-unzip-rce</li>
<li><a
href="7dc5baa98f "><code>7dc5baa</code></a>
Resolve merge conflict in tag mapping using normalized nltk resource
URL</li>
<li><a
href="7ef38b8aa6 "><code>7ef38b8</code></a>
Merge pull request <a
href="https://redirect.github.com/nltk/nltk/issues/3467 ">#3467</a> from
HyperPS/develop</li>
<li><a
href="b2e1164bf8 "><code>b2e1164</code></a>
Merge pull request <a
href="https://redirect.github.com/nltk/nltk/issues/3485 ">#3485</a> from
HyperPS/fix-filestring-sandbox-update</li>
<li><a
href="ac0ce55daa "><code>ac0ce55</code></a>
Merge pull request <a
href="https://redirect.github.com/nltk/nltk/issues/3480 ">#3480</a> from
HyperPS/fix/filesystem-sandbox-security</li>
<li><a
href="603e34d25a "><code>603e34d</code></a>
Merge pull request <a
href="https://redirect.github.com/nltk/nltk/issues/3479 ">#3479</a> from
HyperPS/fix/corpusreader-path-traversal</li>
<li><a
href="b63a5014aa "><code>b63a501</code></a>
Merge pull request <a
href="https://redirect.github.com/nltk/nltk/issues/3477 ">#3477</a> from
HyperPS/fix/stanford-segmenter-rce-sha256</li>
<li><a
href="df38955e50 "><code>df38955</code></a>
Merge pull request <a
href="https://redirect.github.com/nltk/nltk/issues/3494 ">#3494</a> from
ekaf/ewnv</li>
<li>Additional commits viewable in <a
href="https://github.com/nltk/nltk/compare/3.9.2...3.9.3 ">compare
view</a></li>
</ul>
</details>
<br />
[](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 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/langchain-ai/langchain/network/alerts ).
</details>
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-26 02:46:32 -08:00
ccurme
94a58825d3
release(core): 1.2.16 ( #35439 )
langchain-core==1.2.16
2026-02-25 09:31:15 -05:00
Guofang.Tang
78678534f9
fix(core): treat empty tool chunk ids as missing in merge ( #35414 )
2026-02-24 18:12:49 -05:00
ccurme
4ffb584ddf
release(anthropic): 1.3.4 ( #35418 )
langchain-anthropic==1.3.4
2026-02-24 08:51:01 -05:00
ccurme
cdb9742511
fix(anthropic): filter out common OpenAI Responses block types ( #35417 )
2026-02-24 08:45:54 -05:00
dependabot[bot]
0b975d4d1b
chore: bump the other-deps group across 3 directories with 2 updates ( #35407 )
...
Bumps the other-deps group with 1 update in the /libs/model-profiles
directory: [ruff](https://github.com/astral-sh/ruff ).
Bumps the other-deps group with 1 update in the /libs/standard-tests
directory: [ruff](https://github.com/astral-sh/ruff ).
Bumps the other-deps group with 2 updates in the /libs/text-splitters
directory: [ruff](https://github.com/astral-sh/ruff ) and
[sentence-transformers](https://github.com/huggingface/sentence-transformers ).
Updates `ruff` from 0.15.1 to 0.15.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases ">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.15.2</h2>
<h2>Release Notes</h2>
<p>Released on 2026-02-19.</p>
<h3>Preview features</h3>
<ul>
<li>
<p>Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/pull/23385 ">#23385</a>)</p>
<p>In preview, Ruff now enables a significantly expanded default rule
set of 412 rules, up from the stable default set of 59 rules. The new
rules are mostly a superset of the stable defaults, with the exception
of these rules, which are removed from the preview defaults:</p>
<ul>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-imports-on-one-line "><code>multiple-imports-on-one-line</code></a>
(<code>E401</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E402</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E701</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-statements-on-one-line-semicolon "><code>multiple-statements-on-one-line-semicolon</code></a>
(<code>E702</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/useless-semicolon "><code>useless-semicolon</code></a>
(<code>E703</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/none-comparison "><code>none-comparison</code></a>
(<code>E711</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/true-false-comparison "><code>true-false-comparison</code></a>
(<code>E712</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-in-test "><code>not-in-test</code></a>
(<code>E713</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-is-test "><code>not-is-test</code></a>
(<code>E714</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/type-comparison "><code>type-comparison</code></a>
(<code>E721</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/lambda-assignment "><code>lambda-assignment</code></a>
(<code>E731</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-variable-name "><code>ambiguous-variable-name</code></a>
(<code>E741</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-class-name "><code>ambiguous-class-name</code></a>
(<code>E742</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-function-name "><code>ambiguous-function-name</code></a>
(<code>E743</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star "><code>undefined-local-with-import-star</code></a>
(<code>F403</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star-usage "><code>undefined-local-with-import-star-usage</code></a>
(<code>F405</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-nested-import-star-usage "><code>undefined-local-with-nested-import-star-usage</code></a>
(<code>F406</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/forward-annotation-syntax-error "><code>forward-annotation-syntax-error</code></a>
(<code>F722</code>)</li>
</ul>
<p>If you use preview and prefer the old defaults, you can restore them
with configuration like:</p>
<pre lang="toml"><code>
# ruff.toml
<p>[lint]
select = ["E4", "E7", "E9",
"F"]</p>
<h1>pyproject.toml</h1>
<p>[tool.ruff.lint]
select = ["E4", "E7", "E9", "F"]
</code></pre></p>
<p>If you do give them a try, feel free to share your feedback in the <a
href="https://github.com/astral-sh/ruff/discussions/23203 ">GitHub
discussion</a>!</p>
</li>
<li>
<p>[<code>flake8-pyi</code>] Also check string annotations
(<code>PYI041</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/19023 ">#19023</a>)</p>
</li>
</ul>
<h3>Bug fixes</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md ">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.15.2</h2>
<p>Released on 2026-02-19.</p>
<h3>Preview features</h3>
<ul>
<li>
<p>Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/pull/23385 ">#23385</a>)</p>
<p>In preview, Ruff now enables a significantly expanded default rule
set of 412
rules, up from the stable default set of 59 rules. The new rules are
mostly a
superset of the stable defaults, with the exception of these rules,
which are
removed from the preview defaults:</p>
<ul>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-imports-on-one-line "><code>multiple-imports-on-one-line</code></a>
(<code>E401</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E402</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E701</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-statements-on-one-line-semicolon "><code>multiple-statements-on-one-line-semicolon</code></a>
(<code>E702</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/useless-semicolon "><code>useless-semicolon</code></a>
(<code>E703</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/none-comparison "><code>none-comparison</code></a>
(<code>E711</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/true-false-comparison "><code>true-false-comparison</code></a>
(<code>E712</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-in-test "><code>not-in-test</code></a>
(<code>E713</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-is-test "><code>not-is-test</code></a>
(<code>E714</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/type-comparison "><code>type-comparison</code></a>
(<code>E721</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/lambda-assignment "><code>lambda-assignment</code></a>
(<code>E731</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-variable-name "><code>ambiguous-variable-name</code></a>
(<code>E741</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-class-name "><code>ambiguous-class-name</code></a>
(<code>E742</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-function-name "><code>ambiguous-function-name</code></a>
(<code>E743</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star "><code>undefined-local-with-import-star</code></a>
(<code>F403</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star-usage "><code>undefined-local-with-import-star-usage</code></a>
(<code>F405</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-nested-import-star-usage "><code>undefined-local-with-nested-import-star-usage</code></a>
(<code>F406</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/forward-annotation-syntax-error "><code>forward-annotation-syntax-error</code></a>
(<code>F722</code>)</li>
</ul>
<p>If you use preview and prefer the old defaults, you can restore them
with
configuration like:</p>
<pre lang="toml"><code>
# ruff.toml
<p>[lint]
select = ["E4", "E7", "E9",
"F"]</p>
<h1>pyproject.toml</h1>
<p>[tool.ruff.lint]
select = ["E4", "E7", "E9", "F"]
</code></pre></p>
<p>If you do give them a try, feel free to share your feedback in the <a
href="https://github.com/astral-sh/ruff/discussions/23203 ">GitHub
discussion</a>!</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9d18ee9115 "><code>9d18ee9</code></a>
Hard code workflow name and <code>cancel-in-progress</code> only for PRs
(<a
href="https://redirect.github.com/astral-sh/ruff/issues/23431 ">#23431</a>)</li>
<li><a
href="7cc15f024b "><code>7cc15f0</code></a>
Bump 0.15.2 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23430 ">#23430</a>)</li>
<li><a
href="d1b544393a "><code>d1b5443</code></a>
Add extension mapping to configuration file options (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23384 ">#23384</a>)</li>
<li><a
href="222574af90 "><code>222574a</code></a>
Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23385 ">#23385</a>)</li>
<li><a
href="1465b5de38 "><code>1465b5d</code></a>
[<code>flake8-async</code>] Fix <code>in_async_context</code> logic (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23426 ">#23426</a>)</li>
<li><a
href="410902fa40 "><code>410902f</code></a>
[<code>pyupgrade</code>] Fix handling of <code>typing.{io,re}</code>
(<code>UP035</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23131 ">#23131</a>)</li>
<li><a
href="729610acd9 "><code>729610a</code></a>
[ty] Fall back to ambiguous for large control flow graphs (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23399 ">#23399</a>)</li>
<li><a
href="1425c185b0 "><code>1425c18</code></a>
[ty] Add code folding support</li>
<li><a
href="97acaaea5f "><code>97acaae</code></a>
[ty] Fix stack overflow for self-referential <code>TypeOf</code> in
annotations (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23407 ">#23407</a>)</li>
<li><a
href="1f380c8258 "><code>1f380c8</code></a>
[ty] Update tests <code>reveal_type</code> and <code>Never</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23418 ">#23418</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.15.1...0.15.2 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `ruff` from 0.15.1 to 0.15.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases ">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.15.2</h2>
<h2>Release Notes</h2>
<p>Released on 2026-02-19.</p>
<h3>Preview features</h3>
<ul>
<li>
<p>Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/pull/23385 ">#23385</a>)</p>
<p>In preview, Ruff now enables a significantly expanded default rule
set of 412 rules, up from the stable default set of 59 rules. The new
rules are mostly a superset of the stable defaults, with the exception
of these rules, which are removed from the preview defaults:</p>
<ul>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-imports-on-one-line "><code>multiple-imports-on-one-line</code></a>
(<code>E401</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E402</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E701</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-statements-on-one-line-semicolon "><code>multiple-statements-on-one-line-semicolon</code></a>
(<code>E702</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/useless-semicolon "><code>useless-semicolon</code></a>
(<code>E703</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/none-comparison "><code>none-comparison</code></a>
(<code>E711</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/true-false-comparison "><code>true-false-comparison</code></a>
(<code>E712</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-in-test "><code>not-in-test</code></a>
(<code>E713</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-is-test "><code>not-is-test</code></a>
(<code>E714</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/type-comparison "><code>type-comparison</code></a>
(<code>E721</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/lambda-assignment "><code>lambda-assignment</code></a>
(<code>E731</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-variable-name "><code>ambiguous-variable-name</code></a>
(<code>E741</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-class-name "><code>ambiguous-class-name</code></a>
(<code>E742</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-function-name "><code>ambiguous-function-name</code></a>
(<code>E743</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star "><code>undefined-local-with-import-star</code></a>
(<code>F403</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star-usage "><code>undefined-local-with-import-star-usage</code></a>
(<code>F405</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-nested-import-star-usage "><code>undefined-local-with-nested-import-star-usage</code></a>
(<code>F406</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/forward-annotation-syntax-error "><code>forward-annotation-syntax-error</code></a>
(<code>F722</code>)</li>
</ul>
<p>If you use preview and prefer the old defaults, you can restore them
with configuration like:</p>
<pre lang="toml"><code>
# ruff.toml
<p>[lint]
select = ["E4", "E7", "E9",
"F"]</p>
<h1>pyproject.toml</h1>
<p>[tool.ruff.lint]
select = ["E4", "E7", "E9", "F"]
</code></pre></p>
<p>If you do give them a try, feel free to share your feedback in the <a
href="https://github.com/astral-sh/ruff/discussions/23203 ">GitHub
discussion</a>!</p>
</li>
<li>
<p>[<code>flake8-pyi</code>] Also check string annotations
(<code>PYI041</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/19023 ">#19023</a>)</p>
</li>
</ul>
<h3>Bug fixes</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md ">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.15.2</h2>
<p>Released on 2026-02-19.</p>
<h3>Preview features</h3>
<ul>
<li>
<p>Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/pull/23385 ">#23385</a>)</p>
<p>In preview, Ruff now enables a significantly expanded default rule
set of 412
rules, up from the stable default set of 59 rules. The new rules are
mostly a
superset of the stable defaults, with the exception of these rules,
which are
removed from the preview defaults:</p>
<ul>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-imports-on-one-line "><code>multiple-imports-on-one-line</code></a>
(<code>E401</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E402</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E701</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-statements-on-one-line-semicolon "><code>multiple-statements-on-one-line-semicolon</code></a>
(<code>E702</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/useless-semicolon "><code>useless-semicolon</code></a>
(<code>E703</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/none-comparison "><code>none-comparison</code></a>
(<code>E711</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/true-false-comparison "><code>true-false-comparison</code></a>
(<code>E712</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-in-test "><code>not-in-test</code></a>
(<code>E713</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-is-test "><code>not-is-test</code></a>
(<code>E714</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/type-comparison "><code>type-comparison</code></a>
(<code>E721</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/lambda-assignment "><code>lambda-assignment</code></a>
(<code>E731</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-variable-name "><code>ambiguous-variable-name</code></a>
(<code>E741</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-class-name "><code>ambiguous-class-name</code></a>
(<code>E742</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-function-name "><code>ambiguous-function-name</code></a>
(<code>E743</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star "><code>undefined-local-with-import-star</code></a>
(<code>F403</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star-usage "><code>undefined-local-with-import-star-usage</code></a>
(<code>F405</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-nested-import-star-usage "><code>undefined-local-with-nested-import-star-usage</code></a>
(<code>F406</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/forward-annotation-syntax-error "><code>forward-annotation-syntax-error</code></a>
(<code>F722</code>)</li>
</ul>
<p>If you use preview and prefer the old defaults, you can restore them
with
configuration like:</p>
<pre lang="toml"><code>
# ruff.toml
<p>[lint]
select = ["E4", "E7", "E9",
"F"]</p>
<h1>pyproject.toml</h1>
<p>[tool.ruff.lint]
select = ["E4", "E7", "E9", "F"]
</code></pre></p>
<p>If you do give them a try, feel free to share your feedback in the <a
href="https://github.com/astral-sh/ruff/discussions/23203 ">GitHub
discussion</a>!</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9d18ee9115 "><code>9d18ee9</code></a>
Hard code workflow name and <code>cancel-in-progress</code> only for PRs
(<a
href="https://redirect.github.com/astral-sh/ruff/issues/23431 ">#23431</a>)</li>
<li><a
href="7cc15f024b "><code>7cc15f0</code></a>
Bump 0.15.2 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23430 ">#23430</a>)</li>
<li><a
href="d1b544393a "><code>d1b5443</code></a>
Add extension mapping to configuration file options (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23384 ">#23384</a>)</li>
<li><a
href="222574af90 "><code>222574a</code></a>
Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23385 ">#23385</a>)</li>
<li><a
href="1465b5de38 "><code>1465b5d</code></a>
[<code>flake8-async</code>] Fix <code>in_async_context</code> logic (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23426 ">#23426</a>)</li>
<li><a
href="410902fa40 "><code>410902f</code></a>
[<code>pyupgrade</code>] Fix handling of <code>typing.{io,re}</code>
(<code>UP035</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23131 ">#23131</a>)</li>
<li><a
href="729610acd9 "><code>729610a</code></a>
[ty] Fall back to ambiguous for large control flow graphs (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23399 ">#23399</a>)</li>
<li><a
href="1425c185b0 "><code>1425c18</code></a>
[ty] Add code folding support</li>
<li><a
href="97acaaea5f "><code>97acaae</code></a>
[ty] Fix stack overflow for self-referential <code>TypeOf</code> in
annotations (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23407 ">#23407</a>)</li>
<li><a
href="1f380c8258 "><code>1f380c8</code></a>
[ty] Update tests <code>reveal_type</code> and <code>Never</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23418 ">#23418</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.15.1...0.15.2 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `ruff` from 0.15.1 to 0.15.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases ">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.15.2</h2>
<h2>Release Notes</h2>
<p>Released on 2026-02-19.</p>
<h3>Preview features</h3>
<ul>
<li>
<p>Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/pull/23385 ">#23385</a>)</p>
<p>In preview, Ruff now enables a significantly expanded default rule
set of 412 rules, up from the stable default set of 59 rules. The new
rules are mostly a superset of the stable defaults, with the exception
of these rules, which are removed from the preview defaults:</p>
<ul>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-imports-on-one-line "><code>multiple-imports-on-one-line</code></a>
(<code>E401</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E402</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E701</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-statements-on-one-line-semicolon "><code>multiple-statements-on-one-line-semicolon</code></a>
(<code>E702</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/useless-semicolon "><code>useless-semicolon</code></a>
(<code>E703</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/none-comparison "><code>none-comparison</code></a>
(<code>E711</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/true-false-comparison "><code>true-false-comparison</code></a>
(<code>E712</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-in-test "><code>not-in-test</code></a>
(<code>E713</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-is-test "><code>not-is-test</code></a>
(<code>E714</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/type-comparison "><code>type-comparison</code></a>
(<code>E721</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/lambda-assignment "><code>lambda-assignment</code></a>
(<code>E731</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-variable-name "><code>ambiguous-variable-name</code></a>
(<code>E741</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-class-name "><code>ambiguous-class-name</code></a>
(<code>E742</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-function-name "><code>ambiguous-function-name</code></a>
(<code>E743</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star "><code>undefined-local-with-import-star</code></a>
(<code>F403</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star-usage "><code>undefined-local-with-import-star-usage</code></a>
(<code>F405</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-nested-import-star-usage "><code>undefined-local-with-nested-import-star-usage</code></a>
(<code>F406</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/forward-annotation-syntax-error "><code>forward-annotation-syntax-error</code></a>
(<code>F722</code>)</li>
</ul>
<p>If you use preview and prefer the old defaults, you can restore them
with configuration like:</p>
<pre lang="toml"><code>
# ruff.toml
<p>[lint]
select = ["E4", "E7", "E9",
"F"]</p>
<h1>pyproject.toml</h1>
<p>[tool.ruff.lint]
select = ["E4", "E7", "E9", "F"]
</code></pre></p>
<p>If you do give them a try, feel free to share your feedback in the <a
href="https://github.com/astral-sh/ruff/discussions/23203 ">GitHub
discussion</a>!</p>
</li>
<li>
<p>[<code>flake8-pyi</code>] Also check string annotations
(<code>PYI041</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/pull/19023 ">#19023</a>)</p>
</li>
</ul>
<h3>Bug fixes</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md ">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.15.2</h2>
<p>Released on 2026-02-19.</p>
<h3>Preview features</h3>
<ul>
<li>
<p>Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/pull/23385 ">#23385</a>)</p>
<p>In preview, Ruff now enables a significantly expanded default rule
set of 412
rules, up from the stable default set of 59 rules. The new rules are
mostly a
superset of the stable defaults, with the exception of these rules,
which are
removed from the preview defaults:</p>
<ul>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-imports-on-one-line "><code>multiple-imports-on-one-line</code></a>
(<code>E401</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E402</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/module-import-not-at-top-of-file "><code>module-import-not-at-top-of-file</code></a>
(<code>E701</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/multiple-statements-on-one-line-semicolon "><code>multiple-statements-on-one-line-semicolon</code></a>
(<code>E702</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/useless-semicolon "><code>useless-semicolon</code></a>
(<code>E703</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/none-comparison "><code>none-comparison</code></a>
(<code>E711</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/true-false-comparison "><code>true-false-comparison</code></a>
(<code>E712</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-in-test "><code>not-in-test</code></a>
(<code>E713</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/not-is-test "><code>not-is-test</code></a>
(<code>E714</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/type-comparison "><code>type-comparison</code></a>
(<code>E721</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/lambda-assignment "><code>lambda-assignment</code></a>
(<code>E731</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-variable-name "><code>ambiguous-variable-name</code></a>
(<code>E741</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-class-name "><code>ambiguous-class-name</code></a>
(<code>E742</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/ambiguous-function-name "><code>ambiguous-function-name</code></a>
(<code>E743</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star "><code>undefined-local-with-import-star</code></a>
(<code>F403</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-import-star-usage "><code>undefined-local-with-import-star-usage</code></a>
(<code>F405</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/undefined-local-with-nested-import-star-usage "><code>undefined-local-with-nested-import-star-usage</code></a>
(<code>F406</code>)</li>
<li><a
href="https://docs.astral.sh/ruff/rules/forward-annotation-syntax-error "><code>forward-annotation-syntax-error</code></a>
(<code>F722</code>)</li>
</ul>
<p>If you use preview and prefer the old defaults, you can restore them
with
configuration like:</p>
<pre lang="toml"><code>
# ruff.toml
<p>[lint]
select = ["E4", "E7", "E9",
"F"]</p>
<h1>pyproject.toml</h1>
<p>[tool.ruff.lint]
select = ["E4", "E7", "E9", "F"]
</code></pre></p>
<p>If you do give them a try, feel free to share your feedback in the <a
href="https://github.com/astral-sh/ruff/discussions/23203 ">GitHub
discussion</a>!</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9d18ee9115 "><code>9d18ee9</code></a>
Hard code workflow name and <code>cancel-in-progress</code> only for PRs
(<a
href="https://redirect.github.com/astral-sh/ruff/issues/23431 ">#23431</a>)</li>
<li><a
href="7cc15f024b "><code>7cc15f0</code></a>
Bump 0.15.2 (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23430 ">#23430</a>)</li>
<li><a
href="d1b544393a "><code>d1b5443</code></a>
Add extension mapping to configuration file options (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23384 ">#23384</a>)</li>
<li><a
href="222574af90 "><code>222574a</code></a>
Expand the default rule set (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23385 ">#23385</a>)</li>
<li><a
href="1465b5de38 "><code>1465b5d</code></a>
[<code>flake8-async</code>] Fix <code>in_async_context</code> logic (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23426 ">#23426</a>)</li>
<li><a
href="410902fa40 "><code>410902f</code></a>
[<code>pyupgrade</code>] Fix handling of <code>typing.{io,re}</code>
(<code>UP035</code>) (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23131 ">#23131</a>)</li>
<li><a
href="729610acd9 "><code>729610a</code></a>
[ty] Fall back to ambiguous for large control flow graphs (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23399 ">#23399</a>)</li>
<li><a
href="1425c185b0 "><code>1425c18</code></a>
[ty] Add code folding support</li>
<li><a
href="97acaaea5f "><code>97acaae</code></a>
[ty] Fix stack overflow for self-referential <code>TypeOf</code> in
annotations (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23407 ">#23407</a>)</li>
<li><a
href="1f380c8258 "><code>1f380c8</code></a>
[ty] Update tests <code>reveal_type</code> and <code>Never</code> (<a
href="https://redirect.github.com/astral-sh/ruff/issues/23418 ">#23418</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.15.1...0.15.2 ">compare
view</a></li>
</ul>
</details>
<br />
Updates `sentence-transformers` from 5.2.2 to 5.2.3
<details>
<summary>Commits</summary>
<ul>
<li><a
href="eae47949a4 "><code>eae4794</code></a>
Release v5.2.3</li>
<li><a
href="1a6b4e6180 "><code>1a6b4e6</code></a>
[<code>compat</code>] Introduce Transformers v5.2 compatibility: trainer
_nested_gather ...</li>
<li>See full diff in <a
href="https://github.com/huggingface/sentence-transformers/compare/v5.2.2...v5.2.3 ">compare
view</a></li>
</ul>
</details>
<br />
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 show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-23 14:36:18 -08:00
Tanzim Hossain Romel
2d1492a864
fix(core): improve error message for non-JSON-serializable tool schemas ( #34376 )
langchain-core==1.2.15
2026-02-22 17:32:00 -05:00
Balaji Seshadri
d6e46bb4b0
fix(core): improve typing/docs for on_chat_model_start to clarify required positional args ( #35324 )
2026-02-22 14:46:32 -05:00
dependabot[bot]
875c3c573d
chore: bump google-cloud-aiplatform from 1.127.0 to 1.133.0 in /libs/langchain_v1 ( #35397 )
2026-02-22 13:47:04 -05:00
dependabot[bot]
32725b3d9b
chore: bump google-cloud-aiplatform from 1.117.0 to 1.133.0 in /libs/langchain ( #35392 )
2026-02-22 09:39:06 -05:00
ccurme
2fa460d325
fix(anthropic): update integration tests ( #35396 )
2026-02-22 09:33:21 -05:00
Mason Daugherty
6199525f50
perf(core): defer specific langsmith imports to reduce import time ( #35298 )
...
Defer `langsmith` and tracer imports in `callbacks/manager.py` and
`runnables/config.py` from module-level to function-level.
These imports pull in the full `langsmith` package (~132ms) at import
time but are only used inside `_configure()`, `trace_as_chain_group()`,
`_set_config_context()`, and `set_config_context()` — none of which run
during module initialization.
2026-02-21 00:29:35 -05:00
ccurme
00538ff5fc
revert: add ChatAnthropicBedrockWrapper ( #35371 )
2026-02-20 15:58:35 -05:00
Mason Daugherty
be1c3fcc1d
feat(openrouter): default headers ( #35369 )
2026-02-20 14:44:06 -05:00
ccurme
5f13eb91e0
chore(infra): disable tests on prior published packages on core release ( #35368 )
2026-02-20 13:58:53 -05:00
ccurme
bcfb87c211
release(core): 1.2.15 ( #35367 )
2026-02-20 13:44:26 -05:00
Mason Daugherty
ca246ddef2
fix(anthropic): replace retired model IDs in tests and docstrings ( #35365 )
...
## Summary
- Replace `claude-3-5-haiku-20241022` and `claude-3-7-sonnet-20250219`
with `claude-haiku-4-5-20251001` and `claude-sonnet-4-5-20250929`
respectively
- Both models were retired by Anthropic on February 19, 2026, causing
all anthropic integration tests to fail
- Updates integration tests, a unit test, and docstring examples in
`langchain-core`
See:
https://platform.claude.com/docs/en/docs/resources/model-deprecations
2026-02-20 13:44:15 -05:00
ccurme
070c234104
fix(langchain): support anthropic-bedrock in init_chat_model ( #35366 )
2026-02-20 13:38:11 -05:00
NITIN Madan
63f3669e12
feat(anthropic): add ChatAnthropicBedrock wrapper ( #35091 )
2026-02-20 13:06:12 -05:00
Mohammad Mohtashim
03826061be
fix(deepseek): Tool Choice to required for Azure Deployment in case specific function dict is given ( #34848 )
2026-02-20 12:50:25 -05:00
Mason Daugherty
0081deae96
feat(infra): schedule daily model profile refresh with job summary ( #35354 )
...
- Schedules the `refresh_model_profiles` workflow to run daily at 08:00
UTC (manual trigger available).
- Adds a job summary step that reports whether a PR was created/updated
or skipped because profiles were already up to date.
- Each run supersedes any stale PR from a previous run since the action
force-pushes to a fixed branch (`bot/refresh-model-profiles`).
2026-02-20 00:43:09 -05:00
Mason Daugherty
70192690b1
fix(model-profiles): sort generated profiles by model ID for stable diffs ( #35344 )
...
- Sort model profiles alphabetically by model ID (the top-level
`_PROFILES` dictionary keys, e.g. `claude-3-5-haiku-20241022`,
`gpt-4o-mini`) before writing `_profiles.py`, so that regenerating
profiles only shows actual data changes in diffs — not random reordering
from the models.dev API response order
- Regenerate all 10 partner profile files with the new sorted ordering
2026-02-19 23:11:22 -05:00
Mason Daugherty
8aa7a3f07a
chore: update agent files ( #35346 )
2026-02-19 23:11:02 -05:00
Mason Daugherty
e95e869d9e
chore(infra): add GitHub App token generation step ( #35334 )
2026-02-19 22:48:51 -05:00
ccurme
5362bf5666
fix(anthropic): set max input tokens based on 1m context beta header ( #35341 )
2026-02-19 21:01:49 -05:00
Mason Daugherty
135a208919
chore: add model profile info to agent files ( #35336 )
2026-02-19 14:03:56 -05:00
Mason Daugherty
4af87fd025
fix(infra): fix trailing comma regex in profile generation script ( #35333 )
...
The trailing comma regex in the profile generation script consumed the
closing `}` as part of its match, preventing nested closing braces from
getting their own trailing comma. This caused `ruff format` failures on
every generated `_profiles.py` file.
Switches to a lookahead (`(?=...)`) so the closing bracket is asserted
but not consumed, allowing each nesting level to independently receive
its trailing comma.
Fixes #35332 .
2026-02-19 13:27:02 -05:00
Christophe Bornet
6a6ef8caad
style: fix some ruff noqa ( #35321 )
2026-02-19 13:19:30 -05:00
Mason Daugherty
59be7d734f
feat(infra): model profile bump tool ( #35331 )
2026-02-19 13:03:10 -05:00
ccurme
9851838eb8
release(core): 1.2.14 ( #35328 )
langchain-core==1.2.14
2026-02-19 09:18:24 -05:00
Mason Daugherty
18230f625f
chore(core): remove langserve from sys info util, add deepagents ( #35325 )
...
getting with the times
2026-02-18 23:32:54 -05:00
Théo Deschamps
83f81d65af
fix(langchain): allow Gemini 3 models to use ProviderStrategy with tools ( #34464 )
2026-02-18 21:14:16 -05:00
Mattijs Ugen
5c6f8fe0a6
fix(openai): accept valid responses that are falsy at runtime ( #35307 )
2026-02-18 21:06:43 -05:00
yaowubarbara
5053436dcf
fix(core): fix merge_lists incorrectly merging parallel tool calls ( #35281 )
2026-02-18 20:33:17 -05:00
Shivangi Sharma
3686bcbd96
fix(core): accept int temperature in _get_ls_params for LangSmith tracing ( #35302 )
2026-02-18 18:30:02 -05:00
ccurme
9c160e2368
revert: accept integer temperature values in _get_ls_params ( #35319 )
2026-02-18 18:19:28 -05:00
ccurme
269947b11f
release(text-splitters): 1.1.1 ( #35318 )
langchain-text-splitters==1.1.1
2026-02-18 17:59:36 -05:00
Balaji Seshadri
a9f3627229
fix(core): accept integer temperature values in _get_ls_params ( #35317 )
2026-02-18 17:52:13 -05:00
Maxime Grenu
8951c01fe8
fix(text-splitters): prevent JSFrameworkTextSplitter from mutating self._separators on each split_text() call ( #35316 )
2026-02-18 17:51:42 -05:00
Eugene Yurtsev
8323f556d9
docs(core): update load note to be precise ( #35309 )
...
update load doc-string for precision
2026-02-18 15:22:59 -05:00