mirror of
https://github.com/langchain-ai/langgraph.git
synced 2026-08-20 06:35:46 +02:00
1a80cb3eab
Bumps the minor-and-patch group in /libs/cli with 4 updates: [click](https://github.com/pallets/click), [pathspec](https://github.com/cpburnz/python-pathspec), [ruff](https://github.com/astral-sh/ruff) and [mypy](https://github.com/python/mypy). Updates `click` from 8.3.2 to 8.3.3 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pallets/click/releases">click's releases</a>.</em></p> <blockquote> <h2>8.3.3</h2> <p>This is the Click 8.3.3 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.</p> <p>PyPI: <a href="https://pypi.org/project/click/8.3.3/">https://pypi.org/project/click/8.3.3/</a> Changes: <a href="https://click.palletsprojects.com/page/changes/#version-8-3-3">https://click.palletsprojects.com/page/changes/#version-8-3-3</a> Milestone: <a href="https://github.com/pallets/click/milestone/30">https://github.com/pallets/click/milestone/30</a></p> <ul> <li>Use :func:<code>shlex.split</code> to split pager and editor commands into <code>argv</code> lists for :class:<code>subprocess.Popen</code>, removing <code>shell=True</code>. <a href="https://redirect.github.com/pallets/click/issues/1026">#1026</a> <a href="https://redirect.github.com/pallets/click/issues/1477">#1477</a> <a href="https://redirect.github.com/pallets/click/issues/2775">#2775</a></li> <li>Fix <code>TypeError</code> when rendering help for an option whose default value is an object that doesn't support equality comparison with strings, such as <code>semver.Version</code>. <a href="https://redirect.github.com/pallets/click/issues/3298">#3298</a> <a href="https://redirect.github.com/pallets/click/issues/3299">#3299</a></li> <li>Fix pager test pollution under parallel execution by using pytest's <code>tmp_path</code> fixture instead of a shared temporary file path. <a href="https://redirect.github.com/pallets/click/issues/3238">#3238</a></li> <li>Treat <code>Sentinel.UNSET</code> values in a <code>default_map</code> as absent, so they fall through to the next default source instead of being used as the value. <a href="https://redirect.github.com/pallets/click/issues/3224">#3224</a> <a href="https://redirect.github.com/pallets/click/issues/3240">#3240</a></li> <li>Patch <code>pdb.Pdb</code> in <code>CliRunner</code> isolation so <code>pdb.set_trace()</code>, <code>breakpoint()</code>, and debuggers subclassing <code>pdb.Pdb</code> (ipdb, pdbpp) can interact with the real terminal instead of the captured I/O streams. <a href="https://redirect.github.com/pallets/click/issues/654">#654</a> <a href="https://redirect.github.com/pallets/click/issues/824">#824</a> <a href="https://redirect.github.com/pallets/click/issues/843">#843</a> <a href="https://redirect.github.com/pallets/click/issues/951">#951</a> <a href="https://redirect.github.com/pallets/click/issues/3235">#3235</a></li> <li>Add optional randomized parallel test execution using <code>pytest-randomly</code> and <code>pytest-xdist</code> to detect test pollution and race conditions. <a href="https://redirect.github.com/pallets/click/issues/3151">#3151</a></li> <li>Add contributor documentation for running stress tests, randomized parallel tests, and Flask smoke tests. <a href="https://redirect.github.com/pallets/click/issues/3151">#3151</a> <a href="https://redirect.github.com/pallets/click/issues/3177">#3177</a></li> <li>Show custom <code>show_default</code> string in prompts, matching the existing help text behavior. <a href="https://redirect.github.com/pallets/click/issues/2836">#2836</a> <a href="https://redirect.github.com/pallets/click/issues/2837">#2837</a> <a href="https://redirect.github.com/pallets/click/issues/3165">#3165</a> <a href="https://redirect.github.com/pallets/click/issues/3262">#3262</a> <a href="https://redirect.github.com/pallets/click/issues/3280">#3280</a> <a href="https://redirect.github.com/pallets/click/issues/3328">#3328</a></li> <li>Fix <code>default=True</code> with boolean <code>flag_value</code> always returning the <code>flag_value</code> instead of <code>True</code>. The <code>default=True</code> to <code>flag_value</code> substitution now only applies to non-boolean flags, where <code>True</code> acts as a sentinel meaning "activate this flag by default". For boolean flags, <code>default=True</code> is returned as a literal value. <a href="https://redirect.github.com/pallets/click/issues/3111">#3111</a> <a href="https://redirect.github.com/pallets/click/issues/3239">#3239</a></li> <li>Mark <code>make_default_short_help</code> as private API. <a href="https://redirect.github.com/pallets/click/issues/3189">#3189</a> <a href="https://redirect.github.com/pallets/click/issues/3250">#3250</a></li> <li><code>CliRunner</code>'s redirected streams now expose the original file descriptor via <code>fileno()</code>, so that <code>faulthandler</code>, <code>subprocess</code>, and other C-level consumers no longer crash with <code>io.UnsupportedOperation</code>. <a href="https://redirect.github.com/pallets/click/issues/2865">#2865</a></li> <li>Change :class:<code>ParameterSource</code> to an :class:<code>~enum.IntEnum</code> and reorder its members from most to least explicit, so values can be compared to check whether a parameter was explicitly provided. <a href="https://redirect.github.com/pallets/click/issues/2879">#2879</a> <a href="https://redirect.github.com/pallets/click/issues/3248">#3248</a></li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pallets/click/blob/main/CHANGES.rst">click's changelog</a>.</em></p> <blockquote> <h2>Version 8.3.3</h2> <p>Released 2026-04-20</p> <ul> <li>Use :func:<code>shlex.split</code> to split pager and editor commands into <code>argv</code> lists for :class:<code>subprocess.Popen</code>, removing <code>shell=True</code>. :issue:<code>1026</code> :pr:<code>1477</code> :pr:<code>2775</code></li> <li>Fix <code>TypeError</code> when rendering help for an option whose default value is an object that doesn't support equality comparison with strings, such as <code>semver.Version</code>. :issue:<code>3298</code> :pr:<code>3299</code></li> <li>Fix pager test pollution under parallel execution by using pytest's <code>tmp_path</code> fixture instead of a shared temporary file path. :pr:<code>3238</code></li> <li>Treat <code>Sentinel.UNSET</code> values in a <code>default_map</code> as absent, so they fall through to the next default source instead of being used as the value. :issue:<code>3224</code> :pr:<code>3240</code></li> <li>Patch <code>pdb.Pdb</code> in <code>CliRunner</code> isolation so <code>pdb.set_trace()</code>, <code>breakpoint()</code>, and debuggers subclassing <code>pdb.Pdb</code> (ipdb, pdbpp) can interact with the real terminal instead of the captured I/O streams. :issue:<code>654</code> :issue:<code>824</code> :issue:<code>843</code> :pr:<code>951</code> :pr:<code>3235</code></li> <li>Add optional randomized parallel test execution using <code>pytest-randomly</code> and <code>pytest-xdist</code> to detect test pollution and race conditions. :pr:<code>3151</code></li> <li>Add contributor documentation for running stress tests, randomized parallel tests, and Flask smoke tests. :pr:<code>3151</code> :pr:<code>3177</code></li> <li>Show custom <code>show_default</code> string in prompts, matching the existing help text behavior. :issue:<code>2836</code> :pr:<code>2837</code> :pr:<code>3165</code> :pr:<code>3262</code> :pr:<code>3280</code> :pr:<code>3328</code></li> <li>Fix <code>default=True</code> with boolean <code>flag_value</code> always returning the <code>flag_value</code> instead of <code>True</code>. The <code>default=True</code> to <code>flag_value</code> substitution now only applies to non-boolean flags, where <code>True</code> acts as a sentinel meaning "activate this flag by default". For boolean flags, <code>default=True</code> is returned as a literal value. :issue:<code>3111</code> :pr:<code>3239</code></li> <li>Mark <code>make_default_short_help</code> as private API. :issue:<code>3189</code> :pr:<code>3250</code></li> <li><code>CliRunner</code>'s redirected streams now expose the original file descriptor via <code>fileno()</code>, so that <code>faulthandler</code>, <code>subprocess</code>, and other C-level consumers no longer crash with <code>io.UnsupportedOperation</code>. :issue:<code>2865</code></li> <li>Change :class:<code>ParameterSource</code> to an :class:<code>~enum.IntEnum</code> and reorder its members from most to least explicit, so values can be compared to check whether a parameter was explicitly provided. :issue:<code>2879</code> :pr:<code>3248</code></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pallets/click/commit/c06d2d0a6aee6bcc50bd8257be2a4a592f4e75d0"><code>c06d2d0</code></a> Release 8.3.3</li> <li><a href="https://github.com/pallets/click/commit/f1f191ecd2c790b161187c78e7c88440e9524e5c"><code>f1f191e</code></a> Apply format guidelines to commits since latest 8.3.2 release (<a href="https://redirect.github.com/pallets/click/issues/3343">#3343</a>)</li> <li><a href="https://github.com/pallets/click/commit/bb59ba0fd279ca085d1113f0499b6a602ca31081"><code>bb59ba0</code></a> Apply format guidelines to commits since latest 8.3.2 release</li> <li><a href="https://github.com/pallets/click/commit/4a352253c9ff013e36d11e4a6820d36d00ff2cd4"><code>4a35225</code></a> Reduce blast-radius of <code>UNSET</code> in <code>default_map</code> (<a href="https://redirect.github.com/pallets/click/issues/3240">#3240</a>)</li> <li><a href="https://github.com/pallets/click/commit/c07bb936de43fd303f9cfbefe248ab23fd2199c8"><code>c07bb93</code></a> Merge branch 'stable' into unset-in-default-map</li> <li><a href="https://github.com/pallets/click/commit/c7e1ba8448cbcb2cdd9c1c7f4a592e863dcc3995"><code>c7e1ba8</code></a> Reorder <code>ParameterSource</code> (<a href="https://redirect.github.com/pallets/click/issues/3248">#3248</a>)</li> <li><a href="https://github.com/pallets/click/commit/76552ff1e8c85837f911fc34037e702ae4327eda"><code>76552ff</code></a> Show default string in prompt (<a href="https://redirect.github.com/pallets/click/issues/3328">#3328</a>)</li> <li><a href="https://github.com/pallets/click/commit/ac5cec5fe54e5a691e7bac17f441ce9498e0744c"><code>ac5cec5</code></a> Reorder ParameterSource from most to least explicit</li> <li><a href="https://github.com/pallets/click/commit/8c452e00e6772931b7071d9316b82b77e5b8f280"><code>8c452e0</code></a> Merge branch 'stable' into show-default-string-in-prompt</li> <li><a href="https://github.com/pallets/click/commit/8c95c73bd5ef89eac638f85f1904a104ba4b1a32"><code>8c95c73</code></a> Reconcile default value passing and default activation (<a href="https://redirect.github.com/pallets/click/issues/3239">#3239</a>)</li> <li>Additional commits viewable in <a href="https://github.com/pallets/click/compare/8.3.2...8.3.3">compare view</a></li> </ul> </details> <br /> Updates `pathspec` from 1.0.4 to 1.1.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/cpburnz/python-pathspec/releases">pathspec's releases</a>.</em></p> <blockquote> <h2>v1.1.1</h2> <p>Release v1.1.1. See <a href="https://github.com/cpburnz/python-pathspec/blob/v1.1.1/CHANGES.rst">CHANGES.rst</a>.</p> <h2>v1.1.0</h2> <p>Release v1.1.0. See <a href="https://github.com/cpburnz/python-pathspec/blob/v1.1.0/CHANGES.rst">CHANGES.rst</a>.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/cpburnz/python-pathspec/blob/master/CHANGES.rst">pathspec's changelog</a>.</em></p> <blockquote> <h2>1.1.1 (2026-04-26)</h2> <p>Improvements:</p> <ul> <li>Improved type checking with mypy and pyright.</li> </ul> <p>Bug fixes:</p> <ul> <li>Fixed typing on <code>PathSpec[TPattern]</code> to <code>PathSpec[TPattern_co]</code>.</li> <li>Added missing variant type-hint <code>type[Pattern]</code> to <code>PathSpec.from_lines()</code> parameter <code>pattern_factory</code>.</li> <li>Fixed possible type error when using <code>+</code> and <code>+=</code> operators on <code>PathSpec</code>.</li> </ul> <h2>1.1.0 (2026-04-22)</h2> <p>New features:</p> <ul> <li><code>Issue [#108](https://github.com/cpburnz/python-pathspec/issues/108)</code>_: Specialize pattern type for <code>PathSpec</code> as <code>PathSpec[TPattern]</code> for better debugging of <code>PathSpec().patterns</code>.</li> </ul> <p>Bug fixes:</p> <ul> <li><code>Issue [#93](https://github.com/cpburnz/python-pathspec/issues/93)</code>_: Git discards invalid range notation. <code>GitIgnoreSpecPattern</code> now discards patterns with invalid range notation like Git.</li> <li><code>Pull [#106](https://github.com/cpburnz/python-pathspec/issues/106)</code>_: Fix escape() not escaping backslash characters.</li> </ul> <p>Improvements:</p> <ul> <li><code>Pull [#110](https://github.com/cpburnz/python-pathspec/issues/110)</code>_: Nicer debug print outs (and str for regex pattern).</li> </ul> <p>.. _<code>Pull [#106](https://github.com/cpburnz/python-pathspec/issues/106)</code>: <a href="https://redirect.github.com/cpburnz/python-pathspec/pull/106">cpburnz/python-pathspec#106</a> .. _<code>Issue [#108](https://github.com/cpburnz/python-pathspec/issues/108)</code>: <a href="https://redirect.github.com/cpburnz/python-pathspec/issues/108">cpburnz/python-pathspec#108</a> .. _<code>Pull [#110](https://github.com/cpburnz/python-pathspec/issues/110)</code>: <a href="https://redirect.github.com/cpburnz/python-pathspec/pull/110">cpburnz/python-pathspec#110</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/cpburnz/python-pathspec/commit/ecf71a99ca739479d450b9830f43416ea0c519c7"><code>ecf71a9</code></a> Release v1.1.1</li> <li><a href="https://github.com/cpburnz/python-pathspec/commit/6727491ff877e570e450b078c345d9346db7e531"><code>6727491</code></a> Improve type checking with mypy and pyright</li> <li><a href="https://github.com/cpburnz/python-pathspec/commit/c9249c8b4ca165ca8c5eea191cea4c0e6f3aa827"><code>c9249c8</code></a> Release v1.1.0</li> <li><a href="https://github.com/cpburnz/python-pathspec/commit/a1abeba97f1fdbc3bc0e64e6c4d7ee9b63c4cf77"><code>a1abeba</code></a> Test Iron Proxy for CI</li> <li><a href="https://github.com/cpburnz/python-pathspec/commit/0b04daeafaea8c82a6fa3e86090061dc47c61ea6"><code>0b04dae</code></a> Test Iron Proxy for CI</li> <li><a href="https://github.com/cpburnz/python-pathspec/commit/ccaedca31c5cd904c5bb55df0f0045c675f77b7f"><code>ccaedca</code></a> Test Iron Proxy for CI</li> <li><a href="https://github.com/cpburnz/python-pathspec/commit/06391d861d68ba4763e8c377c8bb1b9392bcc76a"><code>06391d8</code></a> Test Iron Proxy for CI</li> <li><a href="https://github.com/cpburnz/python-pathspec/commit/45907bf50a5cabe525306b99e85779639d9ca55e"><code>45907bf</code></a> Test Iron Proxy for CI</li> <li><a href="https://github.com/cpburnz/python-pathspec/commit/0d7c7deb138050c8586000682134d820a176bc10"><code>0d7c7de</code></a> Pin all Github actions</li> <li><a href="https://github.com/cpburnz/python-pathspec/commit/36faddae807a997d04ccfc8cf00931819464260c"><code>36fadda</code></a> Specialize patterns</li> <li>Additional commits viewable in <a href="https://github.com/cpburnz/python-pathspec/compare/v1.0.4...v1.1.1">compare view</a></li> </ul> </details> <br /> Updates `ruff` from 0.15.11 to 0.15.12 <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.12</h2> <h2>Release Notes</h2> <p>Released on 2026-04-24.</p> <h3>Preview features</h3> <ul> <li>Implement <code>#ruff:file-ignore</code> file-level suppressions (<a href="https://redirect.github.com/astral-sh/ruff/pull/23599">#23599</a>)</li> <li>Implement <code>#ruff:ignore</code> logical-line suppressions (<a href="https://redirect.github.com/astral-sh/ruff/pull/23404">#23404</a>)</li> <li>Revert preview changes to displayed diagnostic severity in LSP (<a href="https://redirect.github.com/astral-sh/ruff/pull/24789">#24789</a>)</li> <li>[<code>airflow</code>] Implement <code>task-branch-as-short-circuit</code> (<code>AIR004</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/23579">#23579</a>)</li> <li>[<code>flake8-bugbear</code>] Fix <code>break</code>/<code>continue</code> handling in <code>loop-iterator-mutation</code> (<code>B909</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24440">#24440</a>)</li> <li>[<code>pylint</code>] Fix <code>PLC2701</code> for type parameter scopes (<a href="https://redirect.github.com/astral-sh/ruff/pull/24576">#24576</a>)</li> </ul> <h3>Rule changes</h3> <ul> <li>[<code>pandas-vet</code>] Suggest <code>.array</code> as well in <code>PD011</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/24805">#24805</a>)</li> </ul> <h3>CLI</h3> <ul> <li>Respect default Unix permissions for cache files (<a href="https://redirect.github.com/astral-sh/ruff/pull/24794">#24794</a>)</li> </ul> <h3>Documentation</h3> <ul> <li>[<code>pylint</code>] Fix <code>PLR0124</code> description not to claim self-comparison always returns the same value (<a href="https://redirect.github.com/astral-sh/ruff/pull/24749">#24749</a>)</li> <li>[<code>pyupgrade</code>] Expand docs on reusable <code>TypeVar</code>s and scoping (<code>UP046</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24153">#24153</a>)</li> <li>Improve rules table accessibility (<a href="https://redirect.github.com/astral-sh/ruff/pull/24711">#24711</a>)</li> </ul> <h3>Contributors</h3> <ul> <li><a href="https://github.com/dylwil3"><code>@dylwil3</code></a></li> <li><a href="https://github.com/AlexWaygood"><code>@AlexWaygood</code></a></li> <li><a href="https://github.com/woodruffw"><code>@woodruffw</code></a></li> <li><a href="https://github.com/avasis-ai"><code>@avasis-ai</code></a></li> <li><a href="https://github.com/Dev-iL"><code>@Dev-iL</code></a></li> <li><a href="https://github.com/denyszhak"><code>@denyszhak</code></a></li> <li><a href="https://github.com/ShipItAndPray"><code>@ShipItAndPray</code></a></li> <li><a href="https://github.com/anishgirianish"><code>@anishgirianish</code></a></li> <li><a href="https://github.com/augustelalande"><code>@augustelalande</code></a></li> <li><a href="https://github.com/amyreese"><code>@amyreese</code></a></li> <li><a href="https://github.com/majiayu000"><code>@majiayu000</code></a></li> </ul> <h2>Install ruff 0.15.12</h2> <h3>Install prebuilt binaries via shell script</h3> <pre lang="sh"><code>curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/ruff/releases/download/0.15.12/ruff-installer.sh | sh </code></pre> <!-- 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.12</h2> <p>Released on 2026-04-24.</p> <h3>Preview features</h3> <ul> <li>Implement <code>#ruff:file-ignore</code> file-level suppressions (<a href="https://redirect.github.com/astral-sh/ruff/pull/23599">#23599</a>)</li> <li>Implement <code>#ruff:ignore</code> logical-line suppressions (<a href="https://redirect.github.com/astral-sh/ruff/pull/23404">#23404</a>)</li> <li>Revert preview changes to displayed diagnostic severity in LSP (<a href="https://redirect.github.com/astral-sh/ruff/pull/24789">#24789</a>)</li> <li>[<code>airflow</code>] Implement <code>task-branch-as-short-circuit</code> (<code>AIR004</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/23579">#23579</a>)</li> <li>[<code>flake8-bugbear</code>] Fix <code>break</code>/<code>continue</code> handling in <code>loop-iterator-mutation</code> (<code>B909</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24440">#24440</a>)</li> <li>[<code>pylint</code>] Fix <code>PLC2701</code> for type parameter scopes (<a href="https://redirect.github.com/astral-sh/ruff/pull/24576">#24576</a>)</li> </ul> <h3>Rule changes</h3> <ul> <li>[<code>pandas-vet</code>] Suggest <code>.array</code> as well in <code>PD011</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/24805">#24805</a>)</li> </ul> <h3>CLI</h3> <ul> <li>Respect default Unix permissions for cache files (<a href="https://redirect.github.com/astral-sh/ruff/pull/24794">#24794</a>)</li> </ul> <h3>Documentation</h3> <ul> <li>[<code>pylint</code>] Fix <code>PLR0124</code> description not to claim self-comparison always returns the same value (<a href="https://redirect.github.com/astral-sh/ruff/pull/24749">#24749</a>)</li> <li>[<code>pyupgrade</code>] Expand docs on reusable <code>TypeVar</code>s and scoping (<code>UP046</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24153">#24153</a>)</li> <li>Improve rules table accessibility (<a href="https://redirect.github.com/astral-sh/ruff/pull/24711">#24711</a>)</li> </ul> <h3>Contributors</h3> <ul> <li><a href="https://github.com/dylwil3"><code>@dylwil3</code></a></li> <li><a href="https://github.com/AlexWaygood"><code>@AlexWaygood</code></a></li> <li><a href="https://github.com/woodruffw"><code>@woodruffw</code></a></li> <li><a href="https://github.com/avasis-ai"><code>@avasis-ai</code></a></li> <li><a href="https://github.com/Dev-iL"><code>@Dev-iL</code></a></li> <li><a href="https://github.com/denyszhak"><code>@denyszhak</code></a></li> <li><a href="https://github.com/ShipItAndPray"><code>@ShipItAndPray</code></a></li> <li><a href="https://github.com/anishgirianish"><code>@anishgirianish</code></a></li> <li><a href="https://github.com/augustelalande"><code>@augustelalande</code></a></li> <li><a href="https://github.com/amyreese"><code>@amyreese</code></a></li> <li><a href="https://github.com/majiayu000"><code>@majiayu000</code></a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/astral-sh/ruff/commit/66f93cf7ed4d36325f35a452e4afa28268fbcd28"><code>66f93cf</code></a> Bump 0.15.12 (<a href="https://redirect.github.com/astral-sh/ruff/issues/24815">#24815</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/476a4d02e8e3b6c157ac39979d8b698a1b6baa91"><code>476a4d0</code></a> [ty] Complete support for more detailed diagnostics on possibly unbound error...</li> <li><a href="https://github.com/astral-sh/ruff/commit/ed669eab30095d6c51fe6cdef6050fb01276bcb3"><code>ed669ea</code></a> Implement <code>#ruff:file-ignore</code> file-level suppressions (<a href="https://redirect.github.com/astral-sh/ruff/issues/23599">#23599</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/e73d952e43feb51356ee740c5a973fce81396ff6"><code>e73d952</code></a> [ty] Include inferred type in <code>invalid-key</code> concise diagnostic for union/inte...</li> <li><a href="https://github.com/astral-sh/ruff/commit/80feb29b31cd98c093316df2e0407b0c70c01b55"><code>80feb29</code></a> [ty] report only dead annotation-only locals as unused (<a href="https://redirect.github.com/astral-sh/ruff/issues/24811">#24811</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/0fbf2bc27336a3d17d39af52cf89b78dcda8c7c8"><code>0fbf2bc</code></a> Drop deprecated license classifier (<a href="https://redirect.github.com/astral-sh/ruff/issues/24808">#24808</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/43b174cc7f2fcb0080bb1d4843cd4bf6b72bbe27"><code>43b174c</code></a> [ty] Infer lambda parameter types with <code>Callable</code> type context (<a href="https://redirect.github.com/astral-sh/ruff/issues/24317">#24317</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/4f449ae4a2377569330a5ab94799d389357b5a3f"><code>4f449ae</code></a> [ty] Add error context for intersection types (<a href="https://redirect.github.com/astral-sh/ruff/issues/24772">#24772</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/5b4e753acb46e96ad408e4904c15308e33efe307"><code>5b4e753</code></a> [ty] Add support for goto in literal enum member inlay hint (<a href="https://redirect.github.com/astral-sh/ruff/issues/24792">#24792</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/e7cc76275a758ce1c636ea1c2d091fd576aac794"><code>e7cc762</code></a> [ty] Add error context for TypedDict assignments (<a href="https://redirect.github.com/astral-sh/ruff/issues/24790">#24790</a>)</li> <li>Additional commits viewable in <a href="https://github.com/astral-sh/ruff/compare/0.15.11...0.15.12">compare view</a></li> </ul> </details> <br /> Updates `mypy` from 1.20.1 to 1.20.2 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/python/mypy/blob/master/CHANGELOG.md">mypy's changelog</a>.</em></p> <blockquote> <h3>Mypy 1.20.1</h3> <ul> <li>Always disable sync in SQLite cache (Ivan Levkivskyi, PR <a href="https://redirect.github.com/python/mypy/pull/21184">21184</a>)</li> <li>Temporarily skip few base64 tests (Ivan Levkivskyi, PR <a href="https://redirect.github.com/python/mypy/pull/21193">21193</a>)</li> <li>Revert <code>dict.__or__</code> typeshed change (Ivan Levkivskyi, PR <a href="https://redirect.github.com/python/mypy/pull/21186">21186</a>)</li> <li>Fix narrowing for match case with variadic tuples (Shantanu, PR <a href="https://redirect.github.com/python/mypy/pull/21192">21192</a>)</li> <li>Avoid narrowing <code>type[T]</code> in type calls (Shantanu, PR <a href="https://redirect.github.com/python/mypy/pull/21174">21174</a>)</li> <li>Fix regression for catching empty tuple in except (Shantanu, PR <a href="https://redirect.github.com/python/mypy/pull/21153">21153</a>)</li> <li>Fix reachability for frozenset and dict view narrowing (Shantanu, PR <a href="https://redirect.github.com/python/mypy/pull/21151">21151</a>)</li> <li>Fix narrowing with chained comparison (Shantanu, PR <a href="https://redirect.github.com/python/mypy/pull/21150">21150</a>)</li> <li>Avoid narrowing to unreachable at module level (Shantanu, PR <a href="https://redirect.github.com/python/mypy/pull/21144">21144</a>)</li> <li>Allow dangerous identity comparisons to <code>Any</code> typed variables (Shantanu, PR <a href="https://redirect.github.com/python/mypy/pull/21142">21142</a>)</li> <li><code>--warn-unused-config</code> should not be a strict flag (Ivan Levkivskyi, PR <a href="https://redirect.github.com/python/mypy/pull/21139">21139</a>)</li> </ul> <h3>Mypy 1.20.2</h3> <ul> <li>Use WAL with SQLite cache and fix close (Shantanu, PR <a href="https://redirect.github.com/python/mypy/pull/21154">21154</a>)</li> <li>Adjust SQLite journal mode (Ivan Levkivskyi, PR <a href="https://redirect.github.com/python/mypy/pull/21217">21217</a>)</li> <li>Correctly aggregate narrowing information on parent expressions (Shantanu, PR <a href="https://redirect.github.com/python/mypy/pull/21206">21206</a>)</li> <li>Fix regression related to generic callables (Shantanu, PR <a href="https://redirect.github.com/python/mypy/pull/21208">21208</a>)</li> <li>Fix regression by avoiding widening types in some contexts (Shantanu, PR <a href="https://redirect.github.com/python/mypy/pull/21242">21242</a>)</li> <li>Fix slicing in non-strict optional mode (Shantanu, PR <a href="https://redirect.github.com/python/mypy/pull/21282">21282</a>)</li> <li>mypyc: Fix match statement semantics for "or" pattern (Shantanu, PR <a href="https://redirect.github.com/python/mypy/pull/21156">21156</a>)</li> <li>mypyc: Fix issue with module dunder attributes (Piotr Sawicki, PR <a href="https://redirect.github.com/python/mypy/pull/21275">21275</a>)</li> <li>Initial support for Python 3.15.0a8 (Marc Mueller, PR <a href="https://redirect.github.com/python/mypy/pull/21255">21255</a>)</li> </ul> <h3>Acknowledgements</h3> <p>Thanks to all mypy contributors who contributed to this release:</p> <ul> <li>A5rocks</li> <li>Aaron Wieczorek</li> <li>Adam Turner</li> <li>Ali Hamdan</li> <li>asce</li> <li>BobTheBuidler</li> <li>Brent Westbrook</li> <li>Brian Schubert</li> <li>bzoracler</li> <li>Chris Burroughs</li> <li>Christoph Tyralla</li> <li>Colin Watson</li> <li>Donghoon Nam</li> <li>E. M. Bray</li> <li>Emma Smith</li> <li>Ethan Sarp</li> <li>George Ogden</li> <li>getzze</li> <li>grayjk</li> <li>Gregor Riepl</li> <li>Ivan Levkivskyi</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/python/mypy/commit/145a062651b5f9996b75ef32b7040bd2e885ed82"><code>145a062</code></a> Bump version to 1.20.2</li> <li><a href="https://github.com/python/mypy/commit/81cd49215c288eacb987de066f02daff2553b7c7"><code>81cd492</code></a> Fix slicing with nonstrict optional (<a href="https://redirect.github.com/python/mypy/issues/21282">#21282</a>)</li> <li><a href="https://github.com/python/mypy/commit/908d3441eecbaa2a6193165317177db834d7ca1a"><code>908d344</code></a> [mypyc] Set dunder attrs when adding module to sys.modules (<a href="https://redirect.github.com/python/mypy/issues/21275">#21275</a>)</li> <li><a href="https://github.com/python/mypy/commit/ba28610fac9d2b33be210ca8dcfe4bc47b7af424"><code>ba28610</code></a> Initial support for Python 3.15.0a8 (<a href="https://redirect.github.com/python/mypy/issues/21255">#21255</a>)</li> <li><a href="https://github.com/python/mypy/commit/7b0e09f48dbd3717ed008a273cd17e8e960c2037"><code>7b0e09f</code></a> Fix match statement semantics for "or" pattern (<a href="https://redirect.github.com/python/mypy/issues/21156">#21156</a>)</li> <li><a href="https://github.com/python/mypy/commit/92b74f226de62f7505f5ef5cb158e8ec9c58b8b7"><code>92b74f2</code></a> Avoid widening types in conditional_types (<a href="https://redirect.github.com/python/mypy/issues/21242">#21242</a>)</li> <li><a href="https://github.com/python/mypy/commit/0dcbfaa40b0e360a16baea9cf851955375d91b54"><code>0dcbfaa</code></a> Fix is_overlapping_types for generic callables (<a href="https://redirect.github.com/python/mypy/issues/21208">#21208</a>)</li> <li><a href="https://github.com/python/mypy/commit/210f518dede35292033ef0d387847406a0ccef8f"><code>210f518</code></a> Correctly aggregate narrowing information on parent expressions (<a href="https://redirect.github.com/python/mypy/issues/21206">#21206</a>)</li> <li><a href="https://github.com/python/mypy/commit/c34530e53a10e385d8b0f1af4baa88a596b5ceaa"><code>c34530e</code></a> Only set journal mode in coordinator (<a href="https://redirect.github.com/python/mypy/issues/21217">#21217</a>)</li> <li><a href="https://github.com/python/mypy/commit/79a3ec6d01b56a27c00e9b3320c2b1d4d73a77f9"><code>79a3ec6</code></a> Use WAL with SQLite cache, fix close (<a href="https://redirect.github.com/python/mypy/issues/21154">#21154</a>)</li> <li>Additional commits viewable in <a href="https://github.com/python/mypy/compare/v1.20.1...v1.20.2">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>
LangGraph CLI
The official command-line interface for LangGraph, providing tools to create, develop, and deploy LangGraph applications.
Installation
Install via pip:
pip install langgraph-cli
For development mode with hot reloading:
pip install "langgraph-cli[inmem]"
Commands
langgraph new 🌱
Create a new LangGraph project from a template
langgraph new [PATH] --template TEMPLATE_NAME
langgraph dev 🏃♀️
Run LangGraph API server in development mode with hot reloading
langgraph dev [OPTIONS]
--host TEXT Host to bind to (default: 127.0.0.1)
--port INTEGER Port to bind to (default: 2024)
--no-reload Disable auto-reload
--debug-port INTEGER Enable remote debugging
--no-browser Skip opening browser window
-c, --config FILE Config file path (default: langgraph.json)
langgraph up 🚀
Launch LangGraph API server in Docker
langgraph up [OPTIONS]
-p, --port INTEGER Port to expose (default: 8123)
--wait Wait for services to start
--watch Restart on file changes
--verbose Show detailed logs
-c, --config FILE Config file path
-d, --docker-compose Additional services file
langgraph build
Build a Docker image for your LangGraph application
langgraph build -t IMAGE_TAG [OPTIONS]
--platform TEXT Target platforms (e.g., linux/amd64,linux/arm64)
--pull / --no-pull Use latest/local base image
-c, --config FILE Config file path
langgraph dockerfile
Generate a Dockerfile for custom deployments
langgraph dockerfile SAVE_PATH [OPTIONS]
-c, --config FILE Config file path
Configuration
The CLI uses a langgraph.json configuration file with these key settings:
{
"dependencies": ["langchain_openai", "./your_package"], // Required: Package dependencies
"graphs": {
"my_graph": "./your_package/file.py:graph" // Required: Graph definitions
},
"env": "./.env", // Optional: Environment variables
"python_version": "3.11", // Optional: Python version (3.11/3.12)
"pip_config_file": "./pip.conf", // Optional: pip configuration
"dockerfile_lines": [] // Optional: Additional Dockerfile commands
}
See the full documentation for detailed configuration options.
Development
To develop the CLI itself:
- Clone the repository
- Navigate to the CLI directory:
cd libs/cli - Install development dependencies:
uv pip install - Make your changes to the CLI code
- Test your changes:
# Run CLI commands directly uv run langgraph --help # Or use the examples cd examples uv pip install uv run langgraph dev # or other commands
License
This project is licensed under the terms specified in the repository's LICENSE file.