mirror of
https://github.com/evroon/bracket.git
synced 2026-09-15 23:49:11 -04:00
master
405
Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
767c4b5847 |
Bump sentry-sdk from 2.66.0 to 2.68.0 in /backend (#1830)
Bumps [sentry-sdk](https://github.com/getsentry/sentry-python) from 2.66.0 to 2.68.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/releases">sentry-sdk's releases</a>.</em></p> <blockquote> <h2>2.68.0</h2> <h3>Important</h3> <ul> <li> <p>We're making <code>enable_logs</code> and <code>enable_metrics</code> no-op with this release (<a href="https://redirect.github.com/getsentry/sentry-python/pull/7177">#7177</a>), and they'll be dropped in the next major.</p> <p>Previously, <code>enable_logs</code> also controlled automatic logs collection from the logging and Loguru integrations. These integrations now get an integration-level <code>capture_sentry_logs</code> boolean option to allow for more control over the auto-collection. These options are <code>False</code> by default, i.e., <strong>nothing is auto-collected without your explicit opt-in</strong>.</p> <h4>Action Needed</h4> <p>If you had <code>enable_logs</code> set to <code>True</code>:</p> <ul> <li>If you were using the <code>sentry_sdk.logger.X</code> API, no action necessary, the API will just work.</li> <li>If you were auto-collecting logs from either <code>LoggingIntegration</code> or <code>LoguruIntegration</code>, the auto-collection <strong>will be turned off in this release</strong>. You can switch auto-collection on explicitly with:</li> </ul> <pre lang="python"><code>import sentry_sdk from sentry_sdk.integrations.logging import LoggingIntegration from sentry_sdk.integrations.loguru import LoguruIntegration <p>sentry_sdk.init(<br /> integrations=[<br /> LoggingIntegration(capture_sentry_logs=True),<br /> LoguruIntegration(capture_sentry_logs=True),<br /> ],<br /> )<br /> </code></pre></p> <p>If you had <code>enable_logs</code> set to <code>False</code>:</p> <ul> <li>If you were using it to gate usages of the <code>sentry_sdk.logger.X</code> API, you'll need to remove the calls entirely or define a <code>before_send_log</code> callback to filter out unwanted logs.</li> </ul> <p>If you has <code>enable_metrics</code> set to <code>False</code>:</p> <ul> <li>Any metrics emitted using the metrics API will be emitted. You'll need to drop them in a <code>before_send_metric</code> or remove the calls to the API.</li> </ul> <h3>Why We're Doing This</h3> <p>We recognize this is a disruptive change for some folks and want to make it clear this is a one-off. We're removing the options because they were an unnecessary hurdle that one had to jump through to be able to use logs and metrics, and it was confusing why the logging API would not just work on its own. On the other hand, we wanted to give you more fine-grained control over automatic collection.</p> </li> </ul> <h3>New Features ✨</h3> <h4>Other</h4> <ul> <li>Set the segment source on the scope for <code>NoOpStreamedSpan</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/7163">#7163</a></li> <li>Remove early return for <code>NoOpStreamedSpan</code> in <code>set_transaction_name()</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/7164">#7164</a></li> <li>Set the segment name on the scope with <code>NoOpStreamedSpan</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/7162">#7162</a></li> </ul> <h3>Bug Fixes 🐛</h3> <ul> <li>(batcher) Add global flush trigger based on the span number by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/7150">#7150</a></li> </ul> <h3>Internal Changes 🔧</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md">sentry-sdk's changelog</a>.</em></p> <blockquote> <h2>2.68.0</h2> <h3>Important</h3> <ul> <li> <p>We're making <code>enable_logs</code> and <code>enable_metrics</code> no-op with this release (<a href="https://redirect.github.com/getsentry/sentry-python/pull/7177">#7177</a>), and they'll be dropped in the next major.</p> <p>Previously, <code>enable_logs</code> also controlled automatic logs collection from the logging and Loguru integrations. These integrations now get an integration-level <code>capture_sentry_logs</code> boolean option to allow for more control over the auto-collection. These options are <code>False</code> by default, i.e., <strong>nothing is auto-collected without your explicit opt-in</strong>.</p> <h4>Action Needed</h4> <p>If you had <code>enable_logs</code> set to <code>True</code>:</p> <ul> <li>If you were using the <code>sentry_sdk.logger.X</code> API, no action necessary, the API will just work.</li> <li>If you were auto-collecting logs from either <code>LoggingIntegration</code> or <code>LoguruIntegration</code>, the auto-collection <strong>will be turned off in this release</strong>. You can switch auto-collection on explicitly with:</li> </ul> <pre lang="python"><code>import sentry_sdk from sentry_sdk.integrations.logging import LoggingIntegration from sentry_sdk.integrations.loguru import LoguruIntegration <p>sentry_sdk.init(<br /> integrations=[<br /> LoggingIntegration(capture_sentry_logs=True),<br /> LoguruIntegration(capture_sentry_logs=True),<br /> ],<br /> )<br /> </code></pre></p> <p>If you had <code>enable_logs</code> set to <code>False</code>:</p> <ul> <li>If you were using it to gate usages of the <code>sentry_sdk.logger.X</code> API, you'll need to remove the calls entirely or define a <code>before_send_log</code> callback to filter out unwanted logs.</li> </ul> <p>If you has <code>enable_metrics</code> set to <code>False</code>:</p> <ul> <li>Any metrics emitted using the metrics API will be emitted. You'll need to drop them in a <code>before_send_metric</code> or remove the calls to the API.</li> </ul> <h3>Why We're Doing This</h3> <p>We recognize this is a disruptive change for some folks and want to make it clear this is a one-off. We're removing the options because they were an unnecessary hurdle that one had to jump through to be able to use logs and metrics, and it was confusing why the logging API would not just work on its own. On the other hand, we wanted to give you more fine-grained control over automatic collection.</p> </li> </ul> <h3>New Features ✨</h3> <h4>Other</h4> <ul> <li>Set the segment source on the scope for <code>NoOpStreamedSpan</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/7163">#7163</a></li> <li>Remove early return for <code>NoOpStreamedSpan</code> in <code>set_transaction_name()</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/7164">#7164</a></li> <li>Set the segment name on the scope with <code>NoOpStreamedSpan</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/7162">#7162</a></li> </ul> <h3>Bug Fixes 🐛</h3> <ul> <li>(batcher) Add global flush trigger based on the span number by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/7150">#7150</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/getsentry/sentry-python/commit/c819e660c623b41b881349a7c7b3d9d2b94b157a"><code>c819e66</code></a> Update README</li> <li><a href="https://github.com/getsentry/sentry-python/commit/90446df489044416d92bb392cff17a8ddc863b01"><code>90446df</code></a> Update CHANGELOG.md</li> <li><a href="https://github.com/getsentry/sentry-python/commit/cb2499cf743298f8bbde0662e62f42d6a0c12514"><code>cb2499c</code></a> release: 2.68.0</li> <li><a href="https://github.com/getsentry/sentry-python/commit/1c3b50d1cc5996249552b1808a77eeb3ad28e138"><code>1c3b50d</code></a> ref: Flush trace buckets when segment spans finish (<a href="https://redirect.github.com/getsentry/sentry-python/issues/7170">#7170</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/c200bdfb297dd83599f5fab5c693c463e7148e19"><code>c200bdf</code></a> test(django): Remove dead code and stale markers from the Django test suite (...</li> <li><a href="https://github.com/getsentry/sentry-python/commit/4e4ea83b4fafaae3d53e68d756c55c74fee37545"><code>4e4ea83</code></a> ref(boto3): Move crumbs to integration (<a href="https://redirect.github.com/getsentry/sentry-python/issues/7165">#7165</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/0f0cd1fe65eeba9801077fd96dfe6e736dde11c2"><code>0f0cd1f</code></a> ref(stdlib): Move crumbs to integration (<a href="https://redirect.github.com/getsentry/sentry-python/issues/7161">#7161</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/2fef9bce3cd58d7f2993bb2d1c7169845e154c81"><code>2fef9bc</code></a> chore: Make <code>enable_logs</code>, <code>enable_metrics</code> no-op (<a href="https://redirect.github.com/getsentry/sentry-python/issues/7177">#7177</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/81777391339ed248a167f6e1aff1cb0df088cfc9"><code>8177739</code></a> ref(httpx,httpx2): Move crumbs to integrations (<a href="https://redirect.github.com/getsentry/sentry-python/issues/7149">#7149</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/e4d7398fb7769c5853ad6ae9c80696192ce83982"><code>e4d7398</code></a> ref(pyreqwest): Move crumbs to integration (<a href="https://redirect.github.com/getsentry/sentry-python/issues/7148">#7148</a>)</li> <li>Additional commits viewable in <a href="https://github.com/getsentry/sentry-python/compare/2.66.0...2.68.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
ee59ae1686 |
Bump starlette from 1.3.1 to 1.6.0 in /backend (#1820)
Bumps [starlette](https://github.com/Kludex/starlette) from 1.3.1 to 1.6.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/starlette/releases">starlette's releases</a>.</em></p> <blockquote> <h2>Version 1.6.0</h2> <h2>What's Changed</h2> <ul> <li>Add <code>max_body_size</code> to <code>Starlette</code> and route classes by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3431">Kludex/starlette#3431</a></li> <li>Expose <code>http.response.debug</code> info via response extensions by <a href="https://github.com/y2kbugger"><code>@y2kbugger</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3130">Kludex/starlette#3130</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/y2kbugger"><code>@y2kbugger</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/starlette/pull/3130">Kludex/starlette#3130</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/starlette/compare/1.5.1...1.6.0">https://github.com/Kludex/starlette/compare/1.5.1...1.6.0</a></p> <h2>Version 1.5.1</h2> <h2>What's Changed</h2> <ul> <li>Reject inverted single-byte Range like <code>bytes=5-4</code> by <a href="https://github.com/nikolauspschuetz"><code>@nikolauspschuetz</code></a> in <a href="https://redirect.github.com/encode/starlette/pull/3389">encode/starlette#3389</a></li> <li>Limit <code>FileResponse</code> to 100 ranges by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/encode/starlette/pull/3430">encode/starlette#3430</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/encode/starlette/compare/1.5.0...1.5.1">https://github.com/encode/starlette/compare/1.5.0...1.5.1</a></p> <h2>Version 1.5.0</h2> <p>This release is all about giving <code>GZipMiddleware</code> some love. 🗜️</p> <h2>What's Changed</h2> <ul> <li>Add <code>exclude_content_types</code> parameter to <code>GZipMiddleware</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/encode/starlette/pull/3418">encode/starlette#3418</a></li> <li>Flush GZip output for each streamed chunk by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/encode/starlette/pull/3419">encode/starlette#3419</a></li> <li>Skip compression of partial responses in <code>GZipMiddleware</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/encode/starlette/pull/3420">encode/starlette#3420</a></li> <li>Expand default excluded content types in <code>GZipMiddleware</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/encode/starlette/pull/3421">encode/starlette#3421</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/encode/starlette/compare/1.4.1...1.5.0">https://github.com/encode/starlette/compare/1.4.1...1.5.0</a></p> <h2>Version 1.4.1</h2> <h2>What's Changed</h2> <ul> <li>Default <code>thread_minimum_size</code> in <code>GZipResponder</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3415">Kludex/starlette#3415</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/starlette/compare/1.4.0...1.4.1">https://github.com/Kludex/starlette/compare/1.4.0...1.4.1</a></p> <h2>Version 1.4.0</h2> <h2>What's Changed</h2> <ul> <li>Lazily allocate GZipMiddleware compression resources by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3407">Kludex/starlette#3407</a></li> <li>Use <code>zlib.compressobj</code> instead of <code>GzipFile</code> in <code>GZipMiddleware</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3411">Kludex/starlette#3411</a></li> <li>Offload large GZip compression by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3410">Kludex/starlette#3410</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/benberryallwood"><code>@benberryallwood</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/starlette/pull/3334">Kludex/starlette#3334</a></li> <li><a href="https://github.com/lkk7"><code>@lkk7</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/starlette/pull/3359">Kludex/starlette#3359</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/starlette/compare/1.3.1...1.4.0">https://github.com/Kludex/starlette/compare/1.3.1...1.4.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/starlette/blob/main/docs/release-notes.md">starlette's changelog</a>.</em></p> <blockquote> <h2>1.6.0 (August 8, 2026)</h2> <h4>Added</h4> <ul> <li>Add <code>max_body_size</code> to <code>Starlette</code> and route classes <a href="https://redirect.github.com/encode/starlette/pull/3431">#3431</a>.</li> <li>Expose <code>http.response.debug</code> information via response extensions <a href="https://redirect.github.com/encode/starlette/pull/3130">#3130</a>.</li> </ul> <h2>1.5.1 (August 8, 2026)</h2> <h4>Fixed</h4> <ul> <li>Reject inverted single-byte ranges in <code>FileResponse</code> <a href="https://redirect.github.com/encode/starlette/pull/3389">#3389</a>.</li> <li>Limit <code>FileResponse</code> to 100 ranges <a href="https://redirect.github.com/encode/starlette/pull/3430">#3430</a>.</li> </ul> <h2>1.5.0 (August 8, 2026)</h2> <h4>Added</h4> <ul> <li>Add <code>exclude_content_types</code> parameter to <code>GZipMiddleware</code> <a href="https://redirect.github.com/encode/starlette/pull/3418">#3418</a>.</li> </ul> <h4>Changed</h4> <ul> <li>Expand default excluded content types in <code>GZipMiddleware</code> <a href="https://redirect.github.com/encode/starlette/pull/3421">#3421</a>.</li> </ul> <h4>Fixed</h4> <ul> <li>Flush GZip output for each streamed chunk <a href="https://redirect.github.com/encode/starlette/pull/3419">#3419</a>.</li> <li>Skip compression of partial responses in <code>GZipMiddleware</code> <a href="https://redirect.github.com/encode/starlette/pull/3420">#3420</a>.</li> </ul> <h2>1.4.1 (August 5, 2026)</h2> <h4>Fixed</h4> <ul> <li>Default <code>thread_minimum_size</code> to 128 KiB in <code>GZipResponder</code>, keeping it usable without the new keyword argument <a href="https://redirect.github.com/encode/starlette/pull/3415">#3415</a>.</li> </ul> <h2>1.4.0 (August 5, 2026)</h2> <h4>Added</h4> <ul> <li>Offload large GZip compression to a worker thread, keeping the event loop responsive. <code>GZipMiddleware</code> accepts a new <code>thread_minimum_size</code> parameter (default 128 KiB) controlling the minimum body chunk size compressed in a thread <a href="https://redirect.github.com/encode/starlette/pull/3410">#3410</a>.</li> </ul> <h4>Changed</h4> <ul> <li>Use <code>zlib.compressobj</code> instead of <code>GzipFile</code> in <code>GZipMiddleware</code>, reducing memory usage during compression <a href="https://redirect.github.com/encode/starlette/pull/3411">#3411</a>.</li> <li>Lazily allocate <code>GZipMiddleware</code> compression resources, avoiding compressor allocation for responses that are never compressed <a href="https://redirect.github.com/encode/starlette/pull/3407">#3407</a>.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/starlette/commit/4f250d6b814587e20c5365f0a5f0c4d42bcb929f"><code>4f250d6</code></a> Version 1.6.0 (<a href="https://redirect.github.com/Kludex/starlette/issues/3434">#3434</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/9eea41ad3c26ad21b9bdfe4578c1cdad6c9b9ac2"><code>9eea41a</code></a> Expose <code>http.response.debug</code> info via response extensions (<a href="https://redirect.github.com/Kludex/starlette/issues/3130">#3130</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/38f8999a229610b36f39d11f67d80515a15c6330"><code>38f8999</code></a> Add <code>max_body_size</code> to <code>Starlette</code> and route classes (<a href="https://redirect.github.com/Kludex/starlette/issues/3431">#3431</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/c41236c03868fb3779a64101f4ea88cd47877e23"><code>c41236c</code></a> Version 1.5.1 (<a href="https://redirect.github.com/Kludex/starlette/issues/3432">#3432</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/9c500db197859dba4a8db13fa8e7d2c55de8152c"><code>9c500db</code></a> Limit <code>FileResponse</code> to 100 ranges (<a href="https://redirect.github.com/Kludex/starlette/issues/3430">#3430</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/78ae82cad482fe66a73fb1217f0a6609b3f998f6"><code>78ae82c</code></a> Reject inverted single-byte Range like bytes=5-4 (<a href="https://redirect.github.com/Kludex/starlette/issues/3389">#3389</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/c1d6edaf43920104d4389e983c3e0314f6af14cf"><code>c1d6eda</code></a> chore(deps): bump pymdown-extensions from 11.0 to 11.0.1 (<a href="https://redirect.github.com/Kludex/starlette/issues/3429">#3429</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/ee66ca48418780d6415d231851b31464febc32de"><code>ee66ca4</code></a> chore(deps): bump the python-packages group across 1 directory with 8 updates...</li> <li><a href="https://github.com/Kludex/starlette/commit/00d10167523f819d39d5ca36732348d58645a447"><code>00d1016</code></a> fix(tests): skip test_staticfiles_filename_too_long on Windows where os.pathc...</li> <li><a href="https://github.com/Kludex/starlette/commit/d96887ea7b49db3d1d15994be6438c7fe99936f4"><code>d96887e</code></a> Add Pydantic Logfire banner to the docs (<a href="https://redirect.github.com/Kludex/starlette/issues/3428">#3428</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kludex/starlette/compare/1.3.1...1.6.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
538deee504 |
Bump pydantic-settings from 2.14.2 to 2.15.0 in /backend (#1818)
Bumps [pydantic-settings](https://github.com/pydantic/pydantic-settings) from 2.14.2 to 2.15.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pydantic/pydantic-settings/releases">pydantic-settings's releases</a>.</em></p> <blockquote> <h2>v2.15.0</h2> <h2>Highlights</h2> <h3>Behavior changes</h3> <ul> <li><strong><code>case_sensitive</code> now applies to init kwargs and config-file sources</strong> (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/900">#900</a>). <code>InitSettingsSource</code> and the JSON/TOML/YAML config sources previously ignored <code>case_sensitive</code>. Since it defaults to <code>False</code>, <strong>case-insensitive matching is now the default</strong> for these sources — e.g. <code>Settings(TeSt=...)</code> now populates a <code>test</code> field where it previously did not. Nested keys are still matched case-sensitively.</li> <li><strong>Fields with unresolved forward references now emit a warning</strong> (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/901">#901</a>). Settings sources can silently fail to resolve such fields; they now raise <code>IncompleteFieldDefinitionWarning</code> telling you to call <code>model_rebuild()</code>. If you have <code>filterwarnings = error</code> configured, this may surface as a new failure.</li> <li><strong>Non-JSON env values for strict fields now raise <code>ValidationError</code></strong> (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/926">#926</a>) instead of a less specific error.</li> </ul> <h3>New features</h3> <ul> <li><strong>Show environment variable names in CLI help</strong> via <code>cli_show_env_vars=True</code> (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/860">#860</a>), so generated <code>--help</code> output doubles as configuration documentation.</li> <li><strong><code>PYDANTIC_SETTINGS_DEBUG</code> for debugging settings resolution</strong> (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/906">#906</a>, <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/913">#913</a>). Set it to a truthy value with <code>DEBUG</code> logging enabled to see each source's contribution in priority order, which source won for each value, and which <code>env_file</code>/secret files were probed, loaded, or skipped — the long-standing "why isn't my <code>.env</code> being picked up?" question.</li> <li><strong><code>toml_table_header</code> for regular TOML files</strong> (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/882">#882</a>, <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/886">#886</a>, <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/887">#887</a>), letting you root settings at a nested table in any TOML file, not just <code>pyproject.toml</code>.</li> <li><strong><code>Traversable</code> support for JSON/TOML/YAML file sources</strong> (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/902">#902</a>), so you can load config packaged inside a distribution — including files inside a zip or wheel — via <code>importlib.resources.files(...)</code> without casting to <code>Path</code>.</li> <li><strong>GCP: <code>project_id</code> can come from an earlier settings source</strong> (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/878">#878</a>), rather than only from the constructor or <code>GOOGLE_CLOUD_PROJECT</code>.</li> </ul> <h3>Bug fixes</h3> <ul> <li>Fix env vars not loading on Windows with <code>case_sensitive=True</code> (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/894">#894</a>). Windows upper-cases <code>os.environ</code> keys, so fields raised <code>Field required</code> instead of picking up their values.</li> <li>Read secret files as UTF-8 instead of the platform locale encoding (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/917">#917</a>). On Windows code pages such as cp1252 this silently corrupted non-ASCII secrets.</li> <li>Fix <code>AliasPath</code> on nested model fields not JSON-decoding env values (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/898">#898</a>).</li> <li>Fix case-insensitive matching for <strong>optional</strong> nested models (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/905">#905</a>).</li> <li>Fix dotenv extras being wrongly claimed by a complex field sharing a name prefix (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/912">#912</a>) — e.g. <code>dbx_token</code> being swallowed by a <code>db: dict</code> field.</li> <li>Fix <code>nested_model_default_partial_update=True</code> corrupting discriminated unions (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/876">#876</a>).</li> <li>Fix <code>Secret</code> subclasses crashing when loaded from the environment (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/920">#920</a>).</li> <li>Fix enum names not parsing through nested annotations such as <code>Optional[Annotated[MyEnum, ...]]</code> with <code>env_parse_enums=True</code> (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/910">#910</a>).</li> <li>An empty <code>yaml_config_section</code> now falls back to defaults instead of raising <code>AttributeError: 'NoneType' object has no attribute 'keys'</code> (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/914">#914</a>).</li> <li><code>NestedSecretsSettingsSource</code> no longer follows symlinks pointing outside <code>secrets_dir</code> (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/889">#889</a>).</li> <li>GCP: skip the <code>list_secrets</code> call when <code>case_sensitive=True</code> (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/862">#862</a>), lowering the required IAM permissions to just <code>roles/secretmanager.secretAccessor</code>.</li> <li>AWS: <code>types-boto3[secretsmanager]</code> is no longer required at runtime (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/880">#880</a>).</li> </ul> <h3>Documentation</h3> <ul> <li>Document JSON parsing of complex env values, plus a comma-separated-values recipe (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/919">#919</a>).</li> <li>Recommend an async settings loading pattern (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/908">#908</a>).</li> <li>Clarify behavior when an unprefixed value is present in a dotenv file (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/895">#895</a>).</li> <li>Clarify environment variable helper descriptions (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/867">#867</a>) and fix assorted typos (<a href="https://redirect.github.com/pydantic/pydantic-settings/pull/904">#904</a>).</li> </ul> <!-- raw HTML omitted --> <h2>What's Changed</h2> <ul> <li>Update documentation link for Pydantic settings by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/863">pydantic/pydantic-settings#863</a></li> <li>Bump the python-packages group with 4 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/865">pydantic/pydantic-settings#865</a></li> <li>docs: clarify environment variable helper descriptions by <a href="https://github.com/vip892766gma"><code>@vip892766gma</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/867">pydantic/pydantic-settings#867</a></li> <li>Bump the python-packages group with 4 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/870">pydantic/pydantic-settings#870</a></li> <li>Bump the python-packages group with 4 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/875">pydantic/pydantic-settings#875</a></li> <li>Skip list_secrets call when case_sensitive=True by <a href="https://github.com/ecerulm"><code>@ecerulm</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/862">pydantic/pydantic-settings#862</a></li> <li>GoogleSecretManagerSettingsSource: read project_id from previous sources by <a href="https://github.com/ecerulm"><code>@ecerulm</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/878">pydantic/pydantic-settings#878</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pydantic/pydantic-settings/commit/f725ca187bee4212e9ef799eefa3cb25be788462"><code>f725ca1</code></a> Prepare release 2.15.0 (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/930">#930</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/28f35c25fac5d61210d532c31a300d49c0b684a4"><code>28f35c2</code></a> Bump the python-packages group with 4 updates (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/929">#929</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/9056db049560897229f2603493753bae27b6479f"><code>9056db0</code></a> test: move function-local imports to the top of test modules (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/927">#927</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/f077e3ab3d9492838c7ef9275a88c95134688095"><code>f077e3a</code></a> fix: raise ValidationError for non-JSON env values on strict fields (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/926">#926</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/ae25d703c458b57f5a9a425f6ec9a28ad868f980"><code>ae25d70</code></a> fix: treat Secret subclasses as non-complex fields (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/716">#716</a>) (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/920">#920</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/798dcea2a23b08a3e9b37994014e036224f6dd18"><code>798dcea</code></a> Bump the python-packages group with 4 updates (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/924">#924</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/a190041d353bda2d432ea1908de4c499ae89ee0a"><code>a190041</code></a> Bump the github-actions group with 4 updates (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/925">#925</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/5d9333282b5c85d65a457c45e4476369b9949726"><code>5d93332</code></a> Bump the python-packages group with 4 updates (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/921">#921</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/d2fdeda91157140d2ff0c05404f32a9b1218115a"><code>d2fdeda</code></a> fix: read secret files as UTF-8 instead of the locale encoding (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/917">#917</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/2256a4e60f83f2da81e7654252562fc4841aa5d4"><code>2256a4e</code></a> Bump the python-packages group with 3 updates (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/915">#915</a>)</li> <li>Additional commits viewable in <a href="https://github.com/pydantic/pydantic-settings/compare/v2.14.2...v2.15.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
c86362f1b6 |
Bump alembic from 1.18.0 to 1.19.1 in /backend (#1817)
Bumps [alembic](https://github.com/sqlalchemy/alembic) from 1.18.0 to 1.19.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/sqlalchemy/alembic/releases">alembic's releases</a>.</em></p> <blockquote> <h1>1.19.1</h1> <p>Released: August 8, 2026</p> <h2>bug</h2> <ul> <li> <p><strong>[bug] [autogenerate]</strong> Fixed bug in the check constraint detection implemented in <a href="https://redirect.github.com/sqlalchemy/alembic/issues/508">#508</a> that failed to take into account column bound check constraints, leading to wrong autogenerate detections.</p> <p>References: <a href="https://redirect.github.com/sqlalchemy/alembic/issues/1842">#1842</a></p> </li> </ul> <h1>1.19.0</h1> <p>Released: August 4, 2026</p> <h2>changed</h2> <ul> <li> <p><strong>[changed] [installation]</strong> Environmental updates:</p> <pre><code>- Trove classifiers now include Python 3.15 which is now part of CI integration <ul> <li> <p>Python 3.14 is also added to trove classifiers which had been previously omitted</p> </li> <li> <p>Implemented <a href="https://peps.python.org/pep-0604">PEP 604</a> style unions in type annotations </code></pre></p> </li> </ul> </li> </ul> <h2>feature</h2> <ul> <li> <p><strong>[feature] [autogenerate]</strong> Autogenerate now detects the addition and removal of named CHECK constraints, as part of the default autogenerate behavior. Detection is name-based only; a constraint whose name is unchanged is presumed equivalent regardless of its expression text, as reliably normalizing SQL expressions across backends for comparison purposes is not generally feasible. This behavior is implemented as a plugin named <code>alembic.autogenerate.checkconstraint_byname</code>, and may be disabled if not desired by excluding it from the <code>EnvironmentContext.configure.autogenerate_plugins</code> list. Pull request courtesy Francois van Kempen.</p> <p>References: <a href="https://redirect.github.com/sqlalchemy/alembic/issues/508">#508</a></p> </li> </ul> <h2>bug</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/sqlalchemy/alembic/commits">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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
1550107777 |
Bump pyrefly from 1.1.1 to 1.2.0 in /backend (#1808)
Bumps [pyrefly](https://github.com/facebook/pyrefly) from 1.1.1 to 1.2.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/facebook/pyrefly/releases">pyrefly's releases</a>.</em></p> <blockquote> <h2>Pyrefly v1.2.0</h2> <p><em>Release date: July 31, 2026</em></p> <p>Pyrefly v1.2.0 bundles <strong>901 commits</strong> from <strong>59 contributors</strong>.</p> <hr /> <h2>✨ New & Improved</h2> <h3>Type Checking</h3> <ul> <li>Attrs classes are now fully supported with comprehensive field synthesis, validation, and special-method generation. Pyrefly recognizes <code>@attr.s</code>, <code>@define</code>, <code>@frozen</code>, and their variants, handling field specifiers (<code>attr.ib()</code>, <code>field()</code>), converters, validators, defaults, and private-field aliasing. Converters are typed from their real input type rather than <code>Any</code>, including the <code>@<field>.converter</code> decorator, <code>attrs.converters.pipe</code>, <code>attrs.converters.default_if_none</code>, and generic converters like <code>copy.deepcopy</code>. See the new <a href="https://pyrefly.org/en/docs/attrs/">attrs documentation</a> for details.</li> <li><code>functools.partial</code> is now type-checked instead of treated as opaque. Bound arguments are validated at construction and Pyrefly synthesizes a precise residual signature for the remaining parameters, so errors surface at both the <code>partial(...)</code> call and the later invocation. Generic functions, overloads, constructors, bound methods, and <code>**Unpack[TypedDict]</code> parameters are supported, and results expose <code>.func</code>, <code>.args</code>, and <code>.keywords</code>. Precise residual callable assignment is enabled by the <code>strict</code> and <code>all</code> presets or explicitly with <code>strict-partial-subtyping</code>.</li> <li>Functions decorated with <code>functools.singledispatch</code> now type-check calls using the signature of the function you decorated, and registered implementations are checked against that function's first parameter. Generic <code>singledispatch</code> functions infer from call arguments instead of reporting <code>Unknown</code>.</li> <li>Pyrefly can now warn when a function declared to return a concrete type returns <code>Any</code>, with separate diagnostics for explicit and inferred cases. Off by default, and migrated automatically from mypy's <code>warn_return_any</code>.</li> <li>Pattern matching is substantially more precise: positional class patterns resolve attribute names from <code>__match_args__</code> at solve time, sequence element captures read from the narrowed subject so sibling constraints refine them, and <code>isinstance</code> on a facet filters the parent union to matching members. Fully covered class and sequence patterns now subtract their union member from later cases.</li> <li>Unpacking a variadic tuple with a fixed prefix and suffix no longer smears those elements into the starred capture, so <code>a, *rest, b = t</code> where <code>t: tuple[int, *tuple[bool, ...], str]</code> types <code>rest</code> as <code>list[bool]</code>.</li> <li>TypedDict classes now synthesize <code>__required_keys__</code> and <code>__optional_keys__</code>, so protocols requiring them (like those in langgraph) satisfy structural checks. <code>.get()</code> and <code>.pop()</code> with literal defaults preserve the field type.</li> <li>Overload handling improved throughout: constrained TypeVar arguments expand during resolution, rejected overloads no longer leak argument errors into diagnostics, and exact callback-forwarding signatures resolve overloaded callbacks against forwarded arguments for helpers like <code>asyncio.to_thread</code>.</li> <li>Enum <code>.value</code> on an enum type now infers as the union of member literal values instead of widening to the mixed-in data type.</li> <li>Lambda parameters are contextually typed more thoroughly. Types are stored directly rather than resolved through inference variables, and <code>*args</code>/<code>**kwargs</code> resolve from callable hints to <code>tuple[...]</code> and <code>dict[str, ...]</code> inside the body while preserving element types in the signature.</li> <li>All properties are now treated as data descriptors, and reflected binary-operation dunders are tried first for proper subclasses, fixing a class of incorrect attribute and operator results.</li> <li>Cyclic type aliases reachable from an annotation are now detected instead of hanging, and class finality is taken into account when deciding whether a condition is redundant.</li> <li>Continued basedpyright parity work: class instance truthiness is recognized, code under <code>if TYPE_CHECKING</code> is handled consistently, <code>typing_extensions.sentinel</code> is supported with relaxed naming restrictions, and <code>super(cls, cls)</code> is accepted.</li> <li><code>copy.replace</code> is now type-checked like dataclass replacement, and <code>isinstance(x, type)</code> preserves type arguments when narrowing unions.</li> <li>Narrowing a receiver typed as <code>Self</code> to a subclass now preserves <code>Self</code>, eliminating false return errors in methods that return the narrowed receiver.</li> </ul> <h3>Library Support</h3> <ul> <li>Pydantic constructor synthesis now honors <code>populate_by_name</code> and built-in <code>alias_generator</code> functions, ignores <code>Field(init=False)</code> to match runtime, and treats <code>frozen</code> as a readonly field reason.</li> <li>Django <code>ForeignKey</code> targets now resolve attribute expressions and string references such as <code>"app_label.Model"</code>, preserving the generated relation and <code><field>_id</code> types.</li> <li>Bare factory-boy factory calls now return the model type via <code>FactoryMetaClass</code>.</li> <li>PEP 561 partial stub packages are now supported in imports. Pyrefly reads the <code>partial</code> marker from <code>py.typed</code> and merges the stubs with the runtime package, deferring to the runtime package for omitted modules while preserving <code>.pyi</code>-before-<code>.py</code> precedence for provided ones.</li> <li>A configured <code>typeshed-path</code> now supplies stdlib stubs as well as third-party stubs, enabling complete custom-typeshed testing and overrides.</li> </ul> <h3>Language Server</h3> <ul> <li>Hover now resolves keyword arguments, renders callable protocols as their <code>__call__</code> signature, preserves overload docstrings at call sites, shows enum fields, wraps nested callable and <code>Concatenate[...]</code> signatures for readability, and covers <code>and</code>/<code>or</code> operators, augmented assignments, and union methods.</li> <li>Auto-import completions respect <code>python.analysis.autoImportCompletions</code>, rank deprecated stdlib typing aliases below their modern equivalents, avoid duplicates for already-imported modules, and preserve import aliases correctly.</li> <li>Rename now works on aliased imports and across files for keyword arguments, and renaming a Protocol class targets the class rather than <code>__init__</code>.</li> <li>Go-to-definition now navigates directly to symbols in non-Python files such as <code>.thrift</code>, including nested attribute and enum access and intermediate components of multi-dotted imports.</li> <li>Inlay hints debounce server-side (default 150ms), preventing width jitter while typing. <code>NewType</code> values now use their callable constructor signature instead of producing an invalid <code>type[N]</code> annotation.</li> <li>Notebook support improved: hover and type lookups work past the first cell, and inlay hints, document symbols, references, and diagnostic grouping work in cells following markdown cells.</li> <li>Document symbols fall back to flat <code>SymbolInformation</code> for clients such as Helix, semantic tokens cover <code>with ... as</code> and <code>except ... as</code> bindings, and cross-file diagnostics refresh on save in strict-spec clients such as Zed.</li> <li><code>#region</code>/<code>#endregion</code> markers create folding regions, and selection ranges now follow AST nesting from expression to statement to scope to document.</li> <li>Baselined errors now appear as hints instead of errors, making it easier to distinguish new issues from known technical debt. Baselining also now applies correctly to unused-ignore diagnostics.</li> <li>Match captures receive consistent semantic highlighting and preserve their declaration identity for go-to-definition.</li> <li><code>lspArguments</code> defaults to <code>["lsp"]</code> when empty, preventing startup failures in dev containers and remote environments.</li> <li>The VSCode extension adds an "Infer Types for Current File" command to the command palette.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/facebook/pyrefly/commit/1933169ad8ee9e4d4114112eb56ef0811fb0a094"><code>1933169</code></a> cut 1.2.0</li> <li><a href="https://github.com/facebook/pyrefly/commit/df11f5d1e2e5c1623659ed7b5b6cb36d33cada7e"><code>df11f5d</code></a> Enforce call-boundary consumption in production</li> <li><a href="https://github.com/facebook/pyrefly/commit/e67bc8e7a319e1c01abceed03f35a87ed3ae8cd0"><code>e67bc8e</code></a> Transfer quantified handles to call boundaries</li> <li><a href="https://github.com/facebook/pyrefly/commit/6ba516f98687c37ff72cb76118e2cae12fce3c9b"><code>6ba516f</code></a> Move deferred call state into its boundary</li> <li><a href="https://github.com/facebook/pyrefly/commit/8888e70c5342f24f18c2e2961e2fd68e8e20b7a1"><code>8888e70</code></a> Scope call contexts to a lexical boundary</li> <li><a href="https://github.com/facebook/pyrefly/commit/f8c9e7cf2e6dedcf521c8d6001d171d33fab3f27"><code>f8c9e7c</code></a> LSP: default lspArguments to ["lsp"] when empty</li> <li><a href="https://github.com/facebook/pyrefly/commit/3f0c2285c96579385d1fee8295cd669a76e9b592"><code>3f0c228</code></a> Remove dead .hgignore</li> <li><a href="https://github.com/facebook/pyrefly/commit/335510d760c4e8e8642c32e994886de7e9495519"><code>335510d</code></a> improve Sandbox: link shortening <a href="https://redirect.github.com/facebook/pyrefly/issues/1063">#1063</a> (<a href="https://redirect.github.com/facebook/pyrefly/issues/4327">#4327</a>)</li> <li><a href="https://github.com/facebook/pyrefly/commit/41094b96c71e8da4506745157effeafe21e17e5a"><code>41094b9</code></a> Keep lambda hint decomposition transactional</li> <li><a href="https://github.com/facebook/pyrefly/commit/3193b6a3a17a3995ea244e3cdc383cda227c06d9"><code>3193b6a</code></a> fix behavior of init=False for pydantic.BaseModel (<a href="https://redirect.github.com/facebook/pyrefly/issues/4352">#4352</a>)</li> <li>Additional commits viewable in <a href="https://github.com/facebook/pyrefly/compare/1.1.1...1.2.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) </details> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: evroon <11857441+evroon@users.noreply.github.com> |
||
|
|
bf31ad1564 |
Bump uvicorn from 0.51.0 to 0.52.1 in /backend (#1810)
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.51.0 to 0.52.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/releases">uvicorn's releases</a>.</em></p> <blockquote> <h2>Version 0.52.1</h2> <h3>Fixed</h3> <ul> <li>Complete the closing handshake on server-initiated WebSocket closes in the <code>websockets-sansio</code> and <code>wsproto</code> implementations, waiting for the client's close reply with a 10 second timeout instead of resetting the connection (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3053">#3053</a>)</li> <li>Add missing write flow control to the <code>websockets-sansio</code> implementation, preventing data truncation on server-initiated closes with large in-flight payloads (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3048">#3048</a>)</li> <li>Handle connection loss while a WebSocket write is waiting on backpressure (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3050">#3050</a>)</li> <li>Remove duplicate <code>Content-Type</code> and <code>Content-Length</code> headers from WebSocket denial responses on the <code>websockets-sansio</code> implementation, and deliver non-UTF-8 denial bodies intact (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3041">#3041</a>)</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.52.0...0.52.1">https://github.com/Kludex/uvicorn/compare/0.52.0...0.52.1</a></p> <h2>Version 0.52.0</h2> <p>This release adds an experimental HTTP/1.1 implementation backed by <a href="https://zttp.marcelotryle.com/">zttp</a>, a sans-IO HTTP parser I've been developing on the side: a core written in Zig, with bindings to Python. It has been running under a fuzzer for some weeks now, and has been through multiple rounds of security auditing.</p> <p>It is still <strong>experimental</strong>, so don't put it in front of production traffic yet. Try it with <code>--http zttp</code>, and please send any feedback to the <a href="https://github.com/Kludex/uvicorn/issues">issue tracker</a>.</p> <h3>Added</h3> <ul> <li>Add an experimental <code>zttp</code> HTTP/1.1 implementation, selectable with <code>--http zttp</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2979">#2979</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Keep non-ASCII WebSocket request headers intact with websockets 17.0, which encodes them with ISO-8859-1 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3036">#3036</a>)</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.51.0...0.52.0">https://github.com/Kludex/uvicorn/compare/0.51.0...0.52.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md">uvicorn's changelog</a>.</em></p> <blockquote> <h2>0.52.1 (August 1, 2026)</h2> <h3>Fixed</h3> <ul> <li>Complete the closing handshake on server-initiated WebSocket closes in the <code>websockets-sansio</code> and <code>wsproto</code> implementations, waiting for the client's close reply with a 10 second timeout instead of resetting the connection (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3053">#3053</a>)</li> <li>Add missing write flow control to the <code>websockets-sansio</code> implementation, preventing data truncation on server-initiated closes with large in-flight payloads (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3048">#3048</a>)</li> <li>Handle connection loss while a WebSocket write is waiting on backpressure (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3050">#3050</a>)</li> <li>Remove duplicate <code>Content-Type</code> and <code>Content-Length</code> headers from WebSocket denial responses on the <code>websockets-sansio</code> implementation, and deliver non-UTF-8 denial bodies intact (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3041">#3041</a>)</li> </ul> <h2>0.52.0 (July 29, 2026)</h2> <p>This release adds an experimental HTTP/1.1 implementation backed by <a href="https://zttp.marcelotryle.com/">zttp</a>, a sans-IO HTTP parser I've been developing on the side: a core written in Zig, with bindings to Python. It has been running under a fuzzer for some weeks now, and has been through multiple rounds of security auditing.</p> <p>It is still <strong>experimental</strong>, so don't put it in front of production traffic yet. Try it with <code>--http zttp</code>, and please send any feedback to the <a href="https://github.com/Kludex/uvicorn/issues">issue tracker</a>.</p> <h3>Added</h3> <ul> <li>Add an experimental <code>zttp</code> HTTP/1.1 implementation, selectable with <code>--http zttp</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2979">#2979</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Keep non-ASCII WebSocket request headers intact with websockets 17.0, which encodes them with ISO-8859-1 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3036">#3036</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/uvicorn/commit/ee8e45ca472db17b4aef1d539f209539062d002e"><code>ee8e45c</code></a> Version 0.52.1 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3056">#3056</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/b57926d3f46348b5773b184cdf53ae8588300b77"><code>b57926d</code></a> Remove duplicate content headers from WebSocket denial responses on websocket...</li> <li><a href="https://github.com/Kludex/uvicorn/commit/49de1b91d497d038d97a0475f7459fbf66b9b8f9"><code>49de1b9</code></a> chore(deps): bump pymdown-extensions from 10.21.3 to 11.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3042">#3042</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/2f3fa3ab55b945d34d3933ec267be5b6ca41fc14"><code>2f3fa3a</code></a> Complete server-initiated closes in SansIO WebSocket protocols (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3053">#3053</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/8c59d55b92b94fd5bee5960d1456ff8cb3072a32"><code>8c59d55</code></a> chore(deps): bump the github-actions group with 5 updates (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3054">#3054</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/e148451dd97c321b71abd029f01e6eabebe4958c"><code>e148451</code></a> Handle connection loss during WebSocket write backpressure (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3050">#3050</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/e16a69b6c8f186d76ca45b08de2cacba8472edd8"><code>e16a69b</code></a> Add missing write flow control to <code>websockets-sansio</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3048">#3048</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/ef1dd44319549de33079c0e69ef0d09c48c0a964"><code>ef1dd44</code></a> Fold the zttp-only tests back into the HTTP test suite (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3046">#3046</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/8f1b884cd4a5298539ce77c44d96c7aebd512dff"><code>8f1b884</code></a> Version 0.52.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3044">#3044</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/f6833dbac8c3923c6c2915fe996cd06ceecd125b"><code>f6833db</code></a> Add experimental zttp HTTP/1.1 protocol (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2979">#2979</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kludex/uvicorn/compare/0.51.0...0.52.1">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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
f3920e7213 |
Bump fastapi from 0.140.0 to 0.141.1 in /backend (#1809)
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.140.0 to 0.141.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/fastapi/fastapi/releases">fastapi's releases</a>.</em></p> <blockquote> <h2>0.141.1</h2> <h3>Fixes</h3> <ul> <li>🐛 Fix support for background tasks and headers from dependencies in <code>app.frontend()</code>. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16105">#16105</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <h3>Docs</h3> <ul> <li>📝 Document <code>FASTAPI_ENV</code> in FastAPI CLI guide. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16104">#16104</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <h2>0.141.0</h2> <h3>Features</h3> <ul> <li>✨ Add <code>app.frontend(check_dir="auto")</code>, to make local development more convenient with <code>fastapi dev</code>. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16102">#16102</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <h2>0.140.13</h2> <h3>Fixes</h3> <ul> <li>🐛 Fix <code>status_code</code> being ignored for SSE and JSONL streaming endpoints. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15937">#15937</a> by <a href="https://github.com/SAURABHSALVE"><code>@SAURABHSALVE</code></a>.</li> </ul> <h3>Docs</h3> <ul> <li>📝 Fix <code>format_sse_event</code> docstring rendering of <code>\n\n</code> terminator. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15613">#15613</a> by <a href="https://github.com/AshNicolus"><code>@AshNicolus</code></a>.</li> <li>📝 Add API reference page for fastapi.sse. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15930">#15930</a> by <a href="https://github.com/SAURABHSALVE"><code>@SAURABHSALVE</code></a>.</li> </ul> <h2>0.140.12</h2> <h3>Fixes</h3> <ul> <li>🐛 Fix line splitting in <code>format_sse_event</code> to comply with SSE spec. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15515">#15515</a> by <a href="https://github.com/Zawwarsami16"><code>@Zawwarsami16</code></a>.</li> </ul> <h2>0.140.11</h2> <h3>Fixes</h3> <ul> <li>🐛 Fix <code>response_model_*</code> params ignored for non-generator endpoints with <code>Iterable[..]</code> return type. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15093">#15093</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> </ul> <h2>0.140.10</h2> <h3>Fixes</h3> <ul> <li>🐛 Fix handling sequences with nested Annotated types. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/14874">#14874</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>🐛 Accept any base test failure as regression. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16092">#16092</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🐛 Preserve pytest exit code in regression check. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16091">#16091</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>✅ Test PR regressions against base code. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16090">#16090</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <h2>0.140.9</h2> <h3>Fixes</h3> <ul> <li>🐛 Fix <code>exclude_defaults</code> not propagated to dict keys and values in <code>jsonable_encoder</code>. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16043">#16043</a> by <a href="https://github.com/MBGrao"><code>@MBGrao</code></a>.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f"><code>95f8322</code></a> 🔖 Release version 0.141.1 (<a href="https://redirect.github.com/fastapi/fastapi/issues/16106">#16106</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/f137944c435cff4e4b30ea7d12855ea88ddb868c"><code>f137944</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/d62354434b2e508fe89024213b220ca8e67dea5e"><code>d623544</code></a> 🐛 Fix support for background tasks and headers from dependencies in `app.fron...</li> <li><a href="https://github.com/fastapi/fastapi/commit/1d211b9c1009d577f39fa2b19b10d9a93a72a0ed"><code>1d211b9</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/8a1f8768411e62093e70ce142ea10863a485643c"><code>8a1f876</code></a> 📝 Document <code>FASTAPI_ENV</code> in FastAPI CLI guide (<a href="https://redirect.github.com/fastapi/fastapi/issues/16104">#16104</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/c7e7b651d6946c07cc9f675f39c9501d08319e57"><code>c7e7b65</code></a> 🔖 Release version 0.141.0 (<a href="https://redirect.github.com/fastapi/fastapi/issues/16103">#16103</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/6bceb84053eb2405e9c000aad30ea13367b5ee32"><code>6bceb84</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/5429fed84e84e32672c25a953eca3429b841ce90"><code>5429fed</code></a> ✨ Add <code>app.frontend(check_dir="auto")</code>, to make local development more conven...</li> <li><a href="https://github.com/fastapi/fastapi/commit/628663f4f899c465da423bce681c7adf9a218948"><code>628663f</code></a> 🔖 Release version 0.140.13 (<a href="https://redirect.github.com/fastapi/fastapi/issues/16096">#16096</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/0b54fd00273019034dd30b120ac842e65d80690e"><code>0b54fd0</code></a> 📝 Update release notes</li> <li>Additional commits viewable in <a href="https://github.com/fastapi/fastapi/compare/0.140.0...0.141.1">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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
5169542733 |
Bump ruff from 0.15.0 to 0.16.0 in /backend (#1794)
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.15.0 to 0.16.0. <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.16.0</h2> <h2>Release Notes</h2> <p>Released on 2026-07-23.</p> <p>Check out the <a href="https://astral.sh/blog/ruff-v0.16.0">blog post</a> for a migration guide and overview of the changes!</p> <h3>Breaking changes</h3> <ul> <li> <p>Ruff now enables a much larger set of rules by default (413, up from 59). See the blog post for more details and the new <a href="https://docs.astral.sh/ruff/default-rules/">Default Rules</a> page for a full listing of the enabled rules. Note that this is primarily an expansion, but 18 of the more opinionated pycodestyle (<code>E</code>) and pyflakes (<code>F</code>) rules have been removed from the default set: <code>E401</code>, <code>E402</code>, <code>E701</code>, <code>E702</code>, <code>E703</code>, <code>E711</code>, <code>E712</code>, <code>E713</code>, <code>E714</code>, <code>E721</code>, <code>E731</code>, <code>E741</code>, <code>E742</code>, <code>E743</code>, <code>F403</code>, <code>F405</code>, <code>F406</code>, and <code>F722</code>.</p> </li> <li> <p>Ruff can now format Python code blocks in Markdown files and will do this by default. See the <a href="https://docs.astral.sh/ruff/formatter/#markdown-code-formatting">documentation</a> for more details.</p> </li> <li> <p>Ruff now supports <code>ruff: ignore</code> comments at the ends of lines, like <code>noqa</code> comments, or on the line preceding a diagnostic. For example, these both suppress an <a href="https://docs.astral.sh/ruff/rules/unused-import/"><code>unused-import</code></a> (<code>F401</code>) diagnostic:</p> <pre lang="py"><code>import math # ruff: ignore[F401] <h1>ruff: ignore[F401]</h1> <p>import os </code></pre></p> </li> <li> <p>Fixes are now shown in <code>check</code> and <code>format --check</code> output:</p> <pre lang="console"><code>❯ ruff format --check . unformatted: File would be reformatted --> try.md:1:1 | 1 | ```python - import math 2 + import math 3 | ``` | <p>1 file would be reformatted </code></pre></p> <p>This example also shows off the Markdown formatting.</p> </li> <li> <p><code>format --check</code> now supports the same output formats as the linter, including the <code>github</code> and <code>gitlab</code> outputs for rendering annotations in CI:</p> <pre lang="console"><code>❯ ruff format --check --output-format github . ::error title=ruff (unformatted),file=try.md,line=2,col=8,endLine=2,endColumn=10::try.md:2:8: unformatted: File would be reformatted </code></pre> <p>See the CLI help or <a href="https://docs.astral.sh/ruff/settings/#output-format">documentation</a> for the full list of supported formats.</p> </li> <li> <p>The <code>filename</code>, <code>location</code>, <code>end_location</code>, <code>fix.edits[].location</code>, and <code>fix.edits[].end_location</code> fields in the JSON output format may now be <code>null</code> rather than defaulting to the empty string and row 1, column 1, respectively.</p> </li> </ul> <!-- 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.16.0</h2> <p>Released on 2026-07-23.</p> <p>Check out the <a href="https://astral.sh/blog/ruff-v0.16.0">blog post</a> for a migration guide and overview of the changes!</p> <h3>Breaking changes</h3> <ul> <li> <p>Ruff now enables a much larger set of rules by default (413, up from 59). See the blog post for more details and the new <a href="https://docs.astral.sh/ruff/default-rules/">Default Rules</a> page for a full listing of the enabled rules. Note that this is primarily an expansion, but 18 of the more opinionated pycodestyle (<code>E</code>) and pyflakes (<code>F</code>) rules have been removed from the default set: <code>E401</code>, <code>E402</code>, <code>E701</code>, <code>E702</code>, <code>E703</code>, <code>E711</code>, <code>E712</code>, <code>E713</code>, <code>E714</code>, <code>E721</code>, <code>E731</code>, <code>E741</code>, <code>E742</code>, <code>E743</code>, <code>F403</code>, <code>F405</code>, <code>F406</code>, and <code>F722</code>.</p> </li> <li> <p>Ruff can now format Python code blocks in Markdown files and will do this by default. See the <a href="https://docs.astral.sh/ruff/formatter/#markdown-code-formatting">documentation</a> for more details.</p> </li> <li> <p>Ruff now supports <code>ruff: ignore</code> comments at the ends of lines, like <code>noqa</code> comments, or on the line preceding a diagnostic. For example, these both suppress an <a href="https://docs.astral.sh/ruff/rules/unused-import/"><code>unused-import</code></a> (<code>F401</code>) diagnostic:</p> <pre lang="py"><code>import math # ruff: ignore[F401] <h1>ruff: ignore[F401]</h1> <p>import os </code></pre></p> </li> <li> <p>Fixes are now shown in <code>check</code> and <code>format --check</code> output:</p> <pre lang="console"><code>❯ ruff format --check . unformatted: File would be reformatted --> try.md:1:1 | 1 | ```python - import math 2 + import math 3 | ``` | <p>1 file would be reformatted </code></pre></p> <p>This example also shows off the Markdown formatting.</p> </li> <li> <p><code>format --check</code> now supports the same output formats as the linter, including the <code>github</code> and <code>gitlab</code> outputs for rendering annotations in CI:</p> <pre lang="console"><code></code></pre> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/astral-sh/ruff/commit/a2635fd8f39e1d34ce8074cb486809426148f3e9"><code>a2635fd</code></a> Bump 0.16.0 (<a href="https://redirect.github.com/astral-sh/ruff/issues/27136">#27136</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/34334491652f8ceca5246d15c5c5afe0d6bc77ae"><code>3433449</code></a> [ty] Reuse full call diagnostics for implicit setter calls (<a href="https://redirect.github.com/astral-sh/ruff/issues/27115">#27115</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/22400709220931375e072ad5d7460b9fc781af78"><code>2240070</code></a> Reflect <code>ruff: ignore</code> and <code>--add-ignore</code> stabilization in documentation (<a href="https://redirect.github.com/astral-sh/ruff/issues/27">#27</a>...</li> <li><a href="https://github.com/astral-sh/ruff/commit/17ef71142c52230b923dad46ee5554140fc3fd2e"><code>17ef711</code></a> Stabilize <code>--add-ignore</code> (<a href="https://redirect.github.com/astral-sh/ruff/issues/27125">#27125</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/ef912bbbe466856aa4aac10ad2a8856eb3d5aef3"><code>ef912bb</code></a> Add newly stabilized rules to defaults (<a href="https://redirect.github.com/astral-sh/ruff/issues/27055">#27055</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/b30f04023281b46f12011f13ce6b45c247e0d2e3"><code>b30f040</code></a> Stabilize new default rules (<a href="https://redirect.github.com/astral-sh/ruff/issues/27035">#27035</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/bcd70c5f10ea97ed52a785d70e7f33b83b7c697a"><code>bcd70c5</code></a> Exclude Markdown files from <code>format-dev</code> runs (<a href="https://redirect.github.com/astral-sh/ruff/issues/27052">#27052</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/87e51e2cbbaed376fc13dead40fd772361fa07c0"><code>87e51e2</code></a> Fix <code>format --check</code> spans for syntax errors (<a href="https://redirect.github.com/astral-sh/ruff/issues/27045">#27045</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/afe2723a348364ac7f4b9abd76fc67779490c05e"><code>afe2723</code></a> [<code>flake8-gettext</code>] Stabilize qualified-name and built-in binding resolution (...</li> <li><a href="https://github.com/astral-sh/ruff/commit/a9702d8928344f77a41dbe535f655a69fb04e2df"><code>a9702d8</code></a> [<code>flake8-bandit</code>] Stabilize string literal binding resolution (<code>S310</code>) (<a href="https://redirect.github.com/astral-sh/ruff/issues/26944">#26944</a>)</li> <li>Additional commits viewable in <a href="https://github.com/astral-sh/ruff/compare/0.15.0...0.16.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
29f4154e32 |
Bump fastapi from 0.139.0 to 0.140.0 in /backend (#1792)
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.139.0 to 0.140.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/fastapi/fastapi/releases">fastapi's releases</a>.</em></p> <blockquote> <h2>0.140.0</h2> <h3>Refactors</h3> <ul> <li>⚡️ Reduce memory usage in dependencies. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16049">#16049</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <h3>Docs</h3> <ul> <li>📝 Fix links in docs. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15967">#15967</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>📝 Add Library Skills documentation. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16041">#16041</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>📝 Update docs to use uv projects by default. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16032">#16032</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>📝 Restructure FastAPI People and related pages. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16015">#16015</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>👷 Add CI memory benchmark. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16046">#16046</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>👥 Update FastAPI People - Sponsors. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16027">#16027</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🔥 Remove now-obsolete scripts to generate data for FastAPI People. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16016">#16016</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <h2>0.139.2</h2> <h3>Fixes</h3> <ul> <li>🐛 Refactor router route building to make it thread-safe, mainly relevant for tests running in parallel threads (uncommon). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16013">#16013</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <h2>0.139.1</h2> <h3>Fixes</h3> <ul> <li>🐛 Fix frontend fallback support for doted paths like <code>/users/john.doe</code>. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16011">#16011</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <h3>Docs</h3> <ul> <li>📝 Fix topic repository list not being displayed and <code>skip_users</code> not being applied. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15995">#15995</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> </ul> <h3>Translations</h3> <ul> <li>🌐 Update translations for tr (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16005">#16005</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for zh-hant (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15996">#15996</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for fr (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16006">#16006</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for de (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15999">#15999</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for ko (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16004">#16004</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for zh (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16001">#16001</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for uk (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16003">#16003</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for ja (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15998">#15998</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for pt (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16000">#16000</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for es (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15997">#15997</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for ru (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/16002">#16002</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for hi (add-missing). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15990">#15990</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for hi (add-missing). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15925">#15925</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for hi (add-missing). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15797">#15797</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update <code>llm-prompt.md</code> for Hindi. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15810">#15810</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>🌐 Fix language-specific translation prompt for Russian language. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15924">#15924</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/fastapi/fastapi/commit/255b912928904e3ba5980425a54d6837c8bd1a1c"><code>255b912</code></a> 🔖 Release version 0.140.0 (<a href="https://redirect.github.com/fastapi/fastapi/issues/16050">#16050</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/892eacd27dcdcfe6c5ea114543ff473cbbfd7c6f"><code>892eacd</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/027082950068d6e3897b5422ab6cde3168f7d8b0"><code>0270829</code></a> ⚡️ Reduce memory usage in dependencies (<a href="https://redirect.github.com/fastapi/fastapi/issues/16049">#16049</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/ae031be7b5a2df589f63f4d25389cf07b7b8fc86"><code>ae031be</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/f3644b33cdaf1b14868d77f1c309e0a455c6bac8"><code>f3644b3</code></a> 📝 Fix links in docs (<a href="https://redirect.github.com/fastapi/fastapi/issues/15967">#15967</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/1e24ca0e12e9a66cecb1e42780b9116374e2618d"><code>1e24ca0</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/513c396322664bcb3bdcb3946c440a8ed8ef080b"><code>513c396</code></a> 👷 Add CI memory benchmark (<a href="https://redirect.github.com/fastapi/fastapi/issues/16046">#16046</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/a64dfbbd21a445288ff583d58e1f646fe6baf3af"><code>a64dfbb</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/4f155486f0c1465c5e1f8701544acc10cb8a78bb"><code>4f15548</code></a> 📝 Add Library Skills documentation (<a href="https://redirect.github.com/fastapi/fastapi/issues/16041">#16041</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/704fbe1439341994100622853f515a8af7ccc2eb"><code>704fbe1</code></a> 📝 Update release notes</li> <li>Additional commits viewable in <a href="https://github.com/fastapi/fastapi/compare/0.139.0...0.140.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
02ab76eeea |
Bump types-simplejson from 3.20.0.20250218 to 4.1.0.20260724 in /backend (#1791)
Bumps [types-simplejson](https://github.com/python/typeshed) from 3.20.0.20250218 to 4.1.0.20260724. <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/python/typeshed/commits">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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
6295b1f49a |
Bump sentry-sdk from 2.64.0 to 2.66.0 in /backend (#1784)
Bumps [sentry-sdk](https://github.com/getsentry/sentry-python) from 2.64.0 to 2.66.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/releases">sentry-sdk's releases</a>.</em></p> <blockquote> <h2>2.66.0</h2> <h3>New Features ✨</h3> <ul> <li>(tracing) Promote trace_lifecycle and ignore_spans to top-level options by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6821">#6821</a></li> </ul> <h3>Bug Fixes 🐛</h3> <h4>Tracing</h4> <ul> <li>Skip child span creation in streaming path when no current span (HTTP clients) by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6811">#6811</a></li> <li>Skip child span creation in streaming path when no current span (task queues) by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6814">#6814</a></li> <li>Skip child span creation in streaming path when no current span (misc) by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6815">#6815</a></li> <li>Skip child span creation in streaming path when no current span (databases) by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6808">#6808</a></li> <li>Skip child span creation in streaming path when no current span (web frameworks) by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6810">#6810</a></li> <li>Skip child span creation in streaming path when no current span (django) by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6809">#6809</a></li> </ul> <h3>Internal Changes 🔧</h3> <ul> <li>(logging) Fix flaky test_logging_captured_warnings by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6824">#6824</a></li> <li>Remove flaky no cyclic garbage test by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6817">#6817</a></li> <li>Remove Claude permission settings by <a href="https://github.com/cleptric"><code>@cleptric</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6806">#6806</a></li> <li>Move <code>nullcontext</code> to <code>sentry_sdk.utils</code> by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6805">#6805</a></li> </ul> <h2>2.65.0</h2> <h3>New Features ✨</h3> <h4>Huey</h4> <ul> <li>Set <code>messaging.destination.name</code> on consumer spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6779">#6779</a></li> <li>Set <code>messaging.destination.name</code> on producer spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6778">#6778</a></li> </ul> <h4>Other</h4> <ul> <li>(arq) Set <code>messaging.destination.name</code> on consumer spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6767">#6767</a></li> <li>(dramatiq) Set <code>messaging.destination.name</code> on consumer spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6776">#6776</a></li> <li>(rq) Set <code>messaging.destination.name</code> on consumer spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6774">#6774</a></li> </ul> <h3>Bug Fixes 🐛</h3> <h4>Tracing</h4> <ul> <li>Take first sentry-trace header in case multiple are supplied by <a href="https://github.com/sl0thentr0py"><code>@sl0thentr0py</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6722">#6722</a></li> </ul> <h4>Other</h4> <ul> <li>(django) Avoid <code>ValueError</code> in async middleware <code>process_*</code> hooks by <a href="https://github.com/r0ro"><code>@r0ro</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6698">#6698</a></li> <li>(scope) Drop None user attribute values in set_user by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6692">#6692</a></li> <li>(starlette) Don't overwrite user set during request in AuthenticationMiddleware by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6760">#6760</a></li> </ul> <h3>Internal Changes 🔧</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md">sentry-sdk's changelog</a>.</em></p> <blockquote> <h2>2.66.0</h2> <h3>New Features ✨</h3> <ul> <li>(tracing) Promote trace_lifecycle and ignore_spans to top-level options by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6821">#6821</a></li> </ul> <h3>Bug Fixes 🐛</h3> <h4>Tracing</h4> <ul> <li>Skip child span creation in streaming path when no current span (HTTP clients) by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6811">#6811</a></li> <li>Skip child span creation in streaming path when no current span (task queues) by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6814">#6814</a></li> <li>Skip child span creation in streaming path when no current span (misc) by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6815">#6815</a></li> <li>Skip child span creation in streaming path when no current span (databases) by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6808">#6808</a></li> <li>Skip child span creation in streaming path when no current span (web frameworks) by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6810">#6810</a></li> <li>Skip child span creation in streaming path when no current span (django) by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6809">#6809</a></li> </ul> <h3>Internal Changes 🔧</h3> <ul> <li>(logging) Fix flaky test_logging_captured_warnings by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6824">#6824</a></li> <li>Remove flaky no cyclic garbage test by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6817">#6817</a></li> <li>Remove Claude permission settings by <a href="https://github.com/cleptric"><code>@cleptric</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6806">#6806</a></li> <li>Move <code>nullcontext</code> to <code>sentry_sdk.utils</code> by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6805">#6805</a></li> </ul> <h2>2.65.0</h2> <h3>New Features ✨</h3> <h4>Huey</h4> <ul> <li>Set <code>messaging.destination.name</code> on consumer spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6779">#6779</a></li> <li>Set <code>messaging.destination.name</code> on producer spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6778">#6778</a></li> </ul> <h4>Other</h4> <ul> <li>(arq) Set <code>messaging.destination.name</code> on consumer spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6767">#6767</a></li> <li>(dramatiq) Set <code>messaging.destination.name</code> on consumer spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6776">#6776</a></li> <li>(rq) Set <code>messaging.destination.name</code> on consumer spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6774">#6774</a></li> </ul> <h3>Bug Fixes 🐛</h3> <h4>Tracing</h4> <ul> <li>Take first sentry-trace header in case multiple are supplied by <a href="https://github.com/sl0thentr0py"><code>@sl0thentr0py</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6722">#6722</a></li> </ul> <h4>Other</h4> <ul> <li>(django) Avoid <code>ValueError</code> in async middleware <code>process_*</code> hooks by <a href="https://github.com/r0ro"><code>@r0ro</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6698">#6698</a></li> <li>(scope) Drop None user attribute values in set_user by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6692">#6692</a></li> <li>(starlette) Don't overwrite user set during request in AuthenticationMiddleware by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6760">#6760</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/getsentry/sentry-python/commit/5179f60b025693f381d6d93cd69817f32931825b"><code>5179f60</code></a> update changelog with docs link</li> <li><a href="https://github.com/getsentry/sentry-python/commit/e4bcb59e5a87772b1a9dee6189889a2dcee8d776"><code>e4bcb59</code></a> release: 2.66.0</li> <li><a href="https://github.com/getsentry/sentry-python/commit/5ba869c03908edde69b2c6526bdd5f03a37bfef4"><code>5ba869c</code></a> fix(tracing): Skip child span creation in streaming path when no current span...</li> <li><a href="https://github.com/getsentry/sentry-python/commit/efddaab9211769982e0c1874e2fb77b0db88b4cd"><code>efddaab</code></a> fix(tracing): Skip child span creation in streaming path when no current span...</li> <li><a href="https://github.com/getsentry/sentry-python/commit/b199a9eea34d7107d81714ca2d1c759f3a6e7e0e"><code>b199a9e</code></a> fix(tracing): Skip child span creation in streaming path when no current span...</li> <li><a href="https://github.com/getsentry/sentry-python/commit/d695a6eb6ab6a81251d1abec12b61456b786a566"><code>d695a6e</code></a> fix(tracing): Skip child span creation in streaming path when no current span...</li> <li><a href="https://github.com/getsentry/sentry-python/commit/dbf5d03f30d97cffd12116e09a34df7b4c2fdafe"><code>dbf5d03</code></a> fix(tracing): Skip child span creation in streaming path when no current span...</li> <li><a href="https://github.com/getsentry/sentry-python/commit/5c1403440a25999f7d6ce69fcb106205be0b8322"><code>5c14034</code></a> fix(tracing): Skip child span creation in streaming path when no current span...</li> <li><a href="https://github.com/getsentry/sentry-python/commit/e0d2c4a4c5e01452865d06d4cdcafb5823fef164"><code>e0d2c4a</code></a> feat(tracing): Promote trace_lifecycle and ignore_spans to top-level options ...</li> <li><a href="https://github.com/getsentry/sentry-python/commit/baa423fa766a5ba990ad27b1d3b1231f4b265182"><code>baa423f</code></a> test(logging): Fix flaky test_logging_captured_warnings (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6824">#6824</a>)</li> <li>Additional commits viewable in <a href="https://github.com/getsentry/sentry-python/compare/2.64.0...2.66.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
70286f2375 |
Bump mypy from 2.2.0 to 2.3.0 in /backend (#1783)
Bumps [mypy](https://github.com/python/mypy) from 2.2.0 to 2.3.0. <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> <h1>Mypy Release Notes</h1> <h2>Next Release</h2> <h3>Packaging changes</h3> <ul> <li>No longer provide mypyc-accelerated wheels for macOS x86_64 [mypyc-wheels <a href="https://redirect.github.com/python/mypy/issues/119">#119</a>](<a href="https://redirect.github.com/mypyc/mypy_mypyc-wheels/pull/119">mypyc/mypy_mypyc-wheels#119</a>)</li> </ul> <h2>Mypy 2.3</h2> <p>We've just uploaded mypy 2.3.0 to the Python Package Index (<a href="https://pypi.org/project/mypy/">PyPI</a>). Mypy is a static type checker for Python. This release includes new features, performance improvements and bug fixes. You can install it as follows:</p> <pre><code>python3 -m pip install -U mypy </code></pre> <p>You can read the full documentation for this release on <a href="http://mypy.readthedocs.io">Read the Docs</a>.</p> <h3>The Upcoming Switch to the New Native Parser</h3> <p>We are planning to enable the new native parser (<code>--native-parser</code>) by default soon. We recommend that you test the native parser in your projects and report any issues in the <a href="https://github.com/python/mypy/issues">mypy issue tracker</a>.</p> <h3>Mypyc Free-threading Memory Safety</h3> <p>Free-threaded Python builds that don't have the GIL require additional synchronization primitives or lock-free algorithms to ensure memory safety when there are race conditions (for example, when a thread reads a list item while another thread writes the same list item concurrently). This release greatly improves memory safety of free threading.</p> <p>List operations are now memory-safe on free threaded Python builds, even in the presence of race conditions. This has some performance cost. For list-heavy workloads, using <code>librt.vecs.vec</code> instead of list is often significantly faster, but note that <code>vec</code> is not (and likely won't be) fully memory safe, and the user is expected to avoid race conditions. The newly introduced <code>librt.threading.Lock</code> helps with this. Using variable-length tuples can also be more efficient than lists, since tuples are immutable and don't require expensive synchronization to ensure memory safety.</p> <p>Instance attribute access is also (mostly) memory safe now on free-threaded builds in the presence of race conditions. We are planning to fix the remaining unsafe cases in a future release.</p> <p>Full list of changes:</p> <ul> <li>Make attribute access memory safe on free-threaded builds (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21705">21705</a>)</li> <li>Fix unsafe borrowing of instance attributes with free-threading (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21688">21688</a>)</li> <li>Make list get/set item more memory safe on free-threaded builds (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21683">21683</a>)</li> <li>Don't borrow list items on free-threaded builds (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21679">21679</a>)</li> <li>Make multiple assignment from list memory-safe on free-threaded builds (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21684">21684</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/python/mypy/commit/8aabf8435357eaffceca7237f371e293b8168e54"><code>8aabf84</code></a> Drop +dev from version</li> <li><a href="https://github.com/python/mypy/commit/4d8ad2ab5e86c99581b73775f2c00b9b8265b589"><code>4d8ad2a</code></a> Update changelog for 2.3 release (<a href="https://redirect.github.com/python/mypy/issues/21728">#21728</a>)</li> <li><a href="https://github.com/python/mypy/commit/2c2154672040c52e481f423854d104e6cf172585"><code>2c21546</code></a> [mypyc] Update documentation of race conditions under free threading (<a href="https://redirect.github.com/python/mypy/issues/21726">#21726</a>)</li> <li><a href="https://github.com/python/mypy/commit/a9f62a3cf98a58a7a2607b7c81695802b39f5edc"><code>a9f62a3</code></a> [mypyc] Make attribute access memory safe on free-threaded builds (<a href="https://redirect.github.com/python/mypy/issues/21705">#21705</a>)</li> <li><a href="https://github.com/python/mypy/commit/0faa413ebf7c924a864ef5dabd70303d898e7766"><code>0faa413</code></a> Use <code>PYODIDE</code> environment variable for Emscripten cross-compilation detection...</li> <li><a href="https://github.com/python/mypy/commit/3d75cdb09f0928fa8b83e5ef03572ed878ac8d09"><code>3d75cdb</code></a> [mypyc] Borrow final attributes more aggressively (<a href="https://redirect.github.com/python/mypy/issues/21702">#21702</a>)</li> <li><a href="https://github.com/python/mypy/commit/24c237d85b48f618e655ffff1dc0f19089d9b599"><code>24c237d</code></a> [mypyc] Improve documentation of Final (<a href="https://redirect.github.com/python/mypy/issues/21713">#21713</a>)</li> <li><a href="https://github.com/python/mypy/commit/b5be217392b9b2771d1764066b9d600bf93ce7a8"><code>b5be217</code></a> [mypyc] Update free threading Python compatibility docs (<a href="https://redirect.github.com/python/mypy/issues/21711">#21711</a>)</li> <li><a href="https://github.com/python/mypy/commit/cbcb51add3094ec91b29cdd4c624943bf251b63f"><code>cbcb51a</code></a> Narrow for frozendict membership check (<a href="https://redirect.github.com/python/mypy/issues/21709">#21709</a>)</li> <li><a href="https://github.com/python/mypy/commit/af2bc0f3cc7f2f129f0c11294158d0c292692c3d"><code>af2bc0f</code></a> Sync typeshed (<a href="https://redirect.github.com/python/mypy/issues/21707">#21707</a>)</li> <li>Additional commits viewable in <a href="https://github.com/python/mypy/compare/v2.2.0...v2.3.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
76f3054446 |
Bump mypy from 2.1.0 to 2.2.0 in /backend (#1777)
Bumps [mypy](https://github.com/python/mypy) from 2.1.0 to 2.2.0. <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> <h1>Mypy Release Notes</h1> <h2>Next Release</h2> <h3>Packaging changes</h3> <ul> <li>No longer provide mypyc-accelerated wheels for macOS x86_64 [mypyc-wheels <a href="https://redirect.github.com/python/mypy/issues/119">#119</a>](<a href="https://redirect.github.com/mypyc/mypy_mypyc-wheels/pull/119">mypyc/mypy_mypyc-wheels#119</a>)</li> </ul> <h2>Mypy 2.3</h2> <p>We've just uploaded mypy 2.3.0 to the Python Package Index (<a href="https://pypi.org/project/mypy/">PyPI</a>). Mypy is a static type checker for Python. This release includes new features, performance improvements and bug fixes. You can install it as follows:</p> <pre><code>python3 -m pip install -U mypy </code></pre> <p>You can read the full documentation for this release on <a href="http://mypy.readthedocs.io">Read the Docs</a>.</p> <h3>The Upcoming Switch to the New Native Parser</h3> <p>We are planning to enable the new native parser (<code>--native-parser</code>) by default soon. We recommend that you test the native parser in your projects and report any issues in the <a href="https://github.com/python/mypy/issues">mypy issue tracker</a>.</p> <h3>Mypyc Free-threading Memory Safety</h3> <p>Free-threaded Python builds that don't have the GIL require additional synchronization primitives or lock-free algorithms to ensure memory safety when there are race conditions (for example, when a thread reads a list item while another thread writes the same list item concurrently). This release greatly improves memory safety of free threading.</p> <p>List operations are now memory-safe on free threaded Python builds, even in the presence of race conditions. This has some performance cost. For list-heavy workloads, using <code>librt.vecs.vec</code> instead of list is often significantly faster, but note that <code>vec</code> is not (and likely won't be) fully memory safe, and the user is expected to avoid race conditions. The newly introduced <code>librt.threading.Lock</code> helps with this. Using variable-length tuples can also be more efficient than lists, since tuples are immutable and don't require expensive synchronization to ensure memory safety.</p> <p>Instance attribute access is also (mostly) memory safe now on free-threaded builds in the presence of race conditions. We are planning to fix the remaining unsafe cases in a future release.</p> <p>Full list of changes:</p> <ul> <li>Make attribute access memory safe on free-threaded builds (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21705">21705</a>)</li> <li>Fix unsafe borrowing of instance attributes with free-threading (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21688">21688</a>)</li> <li>Make list get/set item more memory safe on free-threaded builds (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21683">21683</a>)</li> <li>Don't borrow list items on free-threaded builds (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21679">21679</a>)</li> <li>Make multiple assignment from list memory-safe on free-threaded builds (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21684">21684</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/python/mypy/commit/b3c4a5b93adb49f979ab553fffebae7179cefa74"><code>b3c4a5b</code></a> Mark release</li> <li><a href="https://github.com/python/mypy/commit/396f5082ac677a5115fbd6a0122328a6711f73dd"><code>396f508</code></a> [Chore] Update changelog for 2.2 (<a href="https://redirect.github.com/python/mypy/issues/21691">#21691</a>)</li> <li><a href="https://github.com/python/mypy/commit/9592a9ea65a9502b14ac3094b28f9e0e3a2e500a"><code>9592a9e</code></a> Upload wasm wheels to PyPI (<a href="https://redirect.github.com/python/mypy/issues/21671">#21671</a>)</li> <li><a href="https://github.com/python/mypy/commit/1dc69620d9e827b015e6486114e0aaff7ec2d990"><code>1dc6962</code></a> Bump ast-serialize to 0.6.0 (<a href="https://redirect.github.com/python/mypy/issues/21664">#21664</a>)</li> <li><a href="https://github.com/python/mypy/commit/96a791310d47575827e44d10360505d8e23807b0"><code>96a7913</code></a> Bump librt to 0.12.0 (<a href="https://redirect.github.com/python/mypy/issues/21663">#21663</a>)</li> <li><a href="https://github.com/python/mypy/commit/5ef090270579013c337a9bcc79e2c58417f09538"><code>5ef0902</code></a> Fix the exportjson tool (.ff cache to .json conversion) (<a href="https://redirect.github.com/python/mypy/issues/21628">#21628</a>)</li> <li><a href="https://github.com/python/mypy/commit/8d621adb954731ba76b25bf7130275f3cadbb81a"><code>8d621ad</code></a> Support --shadow-file with --native-parser (<a href="https://redirect.github.com/python/mypy/issues/21623">#21623</a>)</li> <li><a href="https://github.com/python/mypy/commit/74ecdd8ecc9bee271eab49948436af63751ed1ff"><code>74ecdd8</code></a> Sync typeshed (<a href="https://redirect.github.com/python/mypy/issues/21612">#21612</a>)</li> <li><a href="https://github.com/python/mypy/commit/0cd154158ab2829a2f8c7a2728c7d4ed55e8f193"><code>0cd1541</code></a> [mypyc] Make function wrappers thread-safe on free-threaded builds (<a href="https://redirect.github.com/python/mypy/issues/21620">#21620</a>)</li> <li><a href="https://github.com/python/mypy/commit/22a9cfd1595798810e27ef145ea4c989ccdcc883"><code>22a9cfd</code></a> [mypyc] Make list remove and index thread-safe on free-threaded builds (<a href="https://redirect.github.com/python/mypy/issues/21614">#21614</a>)</li> <li>Additional commits viewable in <a href="https://github.com/python/mypy/compare/v2.1.0...v2.2.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
3063b5ed6f |
Bump uvicorn from 0.50.0 to 0.51.0 in /backend (#1776)
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.50.0 to 0.51.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/releases">uvicorn's releases</a>.</em></p> <blockquote> <h2>Version 0.51.0</h2> <h2>What's Changed</h2> <ul> <li>Restart workers with overlap on SIGHUP for near-zero-downtime reloads by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/3025">Kludex/uvicorn#3025</a></li> <li>Remove colorama from the standard extra by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/3027">Kludex/uvicorn#3027</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.50.2...0.51.0">https://github.com/Kludex/uvicorn/compare/0.50.2...0.51.0</a></p> <h2>Version 0.50.1</h2> <h2>What's Changed</h2> <ul> <li>Split comma-separated <code>Sec-WebSocket-Protocol</code> values in the websockets-sansio implementation by <a href="https://github.com/Aayush7352"><code>@Aayush7352</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/3019">Kludex/uvicorn#3019</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/Aayush7352"><code>@Aayush7352</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/uvicorn/pull/3019">Kludex/uvicorn#3019</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.50.0...0.50.1">https://github.com/Kludex/uvicorn/compare/0.50.0...0.50.1</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md">uvicorn's changelog</a>.</em></p> <blockquote> <h2>0.51.0 (July 8, 2026)</h2> <h3>Added</h3> <ul> <li>Restart workers one at a time on <code>SIGHUP</code>, bringing each replacement up before retiring the old worker, so reloads no longer drop requests (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3025">#3025</a>)</li> </ul> <h3>Removed</h3> <ul> <li>Remove <code>colorama</code> from the <code>standard</code> extra (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3027">#3027</a>)</li> </ul> <h2>0.50.2 (July 6, 2026)</h2> <h3>Fixed</h3> <ul> <li>Require <code>websockets>=13.0</code>, which the default <code>websockets-sansio</code> implementation needs (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3021">#3021</a>)</li> </ul> <h2>0.50.1 (July 6, 2026)</h2> <h3>Fixed</h3> <ul> <li>Split comma-separated <code>Sec-WebSocket-Protocol</code> values in the <code>websockets-sansio</code> implementation (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3019">#3019</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/uvicorn/commit/e4d0b05eb8c6459b7ba27ad13a2c2f4f8d4ece50"><code>e4d0b05</code></a> Version 0.51.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3028">#3028</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/944e43ddbf715aea7c587f2738cd94c3f9106110"><code>944e43d</code></a> Remove colorama from the standard extra (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3027">#3027</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/2e787704f2610133059e76d56bbd60f48edd34a3"><code>2e78770</code></a> Restart workers with overlap on SIGHUP for near-zero-downtime reloads (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3025">#3025</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/a1b570cf577d512bfd396b64d72313233e9c3325"><code>a1b570c</code></a> Version 0.50.2 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3022">#3022</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/83c7da7332ac3100171c258071de40d5dde35e13"><code>83c7da7</code></a> Require websockets>=13.0 for the default sansio implementation (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3021">#3021</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/b4d011668a75d02370353f34de6dea59692dcad2"><code>b4d0116</code></a> Version 0.50.1 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3020">#3020</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/2a9151d0e763df2c56da2bfe8c5dcead4fe5a276"><code>2a9151d</code></a> Split comma-separated <code>Sec-WebSocket-Protocol</code> values in the websockets-sansi...</li> <li><a href="https://github.com/Kludex/uvicorn/commit/1bf3ab42e3aba1cf4acd1ef0c29d8ad9a599d333"><code>1bf3ab4</code></a> Cover the excluded-directory branch in <code>FileFilter</code> with a direct test (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3014">#3014</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/837b5f960dbe2f03e9f12feb9955ce2217211ad8"><code>837b5f9</code></a> Deflake multiprocess, reload, and signal supervisor tests (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2975">#2975</a>)</li> <li>See full diff in <a href="https://github.com/Kludex/uvicorn/compare/0.50.0...0.51.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
adbc3ebdb4 |
Bump fastapi from 0.138.0 to 0.139.0 in /backend (#1766)
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.138.0 to 0.139.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/fastapi/fastapi/releases">fastapi's releases</a>.</em></p> <blockquote> <h2>0.139.0</h2> <h3>Features</h3> <ul> <li>✨ Support dependencies in <code>app.frontend()</code>, e.g. for automatic cookie authentication for the frontend. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15908">#15908</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <h3>Translations</h3> <ul> <li>🌐 Update translations for fr (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15897">#15897</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for ja (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15895">#15895</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for zh-hant (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15896">#15896</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for de (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15899">#15899</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for es (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15892">#15892</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for tr (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15891">#15891</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for pt (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15893">#15893</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for zh (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15898">#15898</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for uk (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15900">#15900</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for ko (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15890">#15890</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for ru (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15894">#15894</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for ko (add-missing). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15888">#15888</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for es (add-missing). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15880">#15880</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for zh-hant (add-missing). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15889">#15889</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for pt (add-missing). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15883">#15883</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for zh (add-missing). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15885">#15885</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for ja (add-missing). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15882">#15882</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for tr (add-missing). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15887">#15887</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for uk (add-missing). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15886">#15886</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for fr (add-missing). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15881">#15881</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for de (add-missing). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15884">#15884</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for ru (add-missing). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15879">#15879</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>👥 Update FastAPI People - Experts. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15909">#15909</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>👥 Update FastAPI GitHub topic repositories. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15906">#15906</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>👥 Update FastAPI People - Contributors and Translators. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15878">#15878</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>👷 Remove not needed <code>allow-unsafe-pr-checkout: true</code>. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15876">#15876</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>⬆ Bump the github-actions group with 5 updates. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15872">#15872</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump the python-packages group across 1 directory with 10 updates. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15870">#15870</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump CodSpeedHQ/action from 4.17.0 to 4.17.5 in the github-actions group. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15826">#15826</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> </ul> <h2>0.138.1</h2> <h3>Refactors</h3> <ul> <li>♻️ Refactor Library Skills, make info easier to find for agents. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15841">#15841</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>👷 Simplify pull request workflow triggers. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15836">#15836</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>👷 Update issue-manager to 0.7.1. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15833">#15833</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>⬆️ Update issue-manager to 0.7.0. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15831">#15831</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/fastapi/fastapi/commit/cecd96d9c6c318e0df1c40cedbc2e953381ddfd3"><code>cecd96d</code></a> 🔖 Release version 0.139.0 (<a href="https://redirect.github.com/fastapi/fastapi/issues/15910">#15910</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/aea660936b55fdbd84270d24f892839388922dd6"><code>aea6609</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/319be508ce7db9ee5f52c3b9baa68c6cc1037c10"><code>319be50</code></a> ✨ Support dependencies in <code>app.frontend()</code>, e.g. for automatic cookie authent...</li> <li><a href="https://github.com/fastapi/fastapi/commit/66a90f6ee9c0cf58ec61b14f8925344d6f16eae5"><code>66a90f6</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/d30a3ebfc7d7fd7851ba4243677266c53cb9f154"><code>d30a3eb</code></a> 👥 Update FastAPI People - Experts (<a href="https://redirect.github.com/fastapi/fastapi/issues/15909">#15909</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/122f1b58f4e0fabfefef3710a8c8247bb2bd820b"><code>122f1b5</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/fd6ece32eeb27c9ce164bd9170f9d8e1db1dacff"><code>fd6ece3</code></a> 👥 Update FastAPI GitHub topic repositories (<a href="https://redirect.github.com/fastapi/fastapi/issues/15906">#15906</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/ec2a6adaf14c440bdcd0fd3f4ca203daa8c3ba6a"><code>ec2a6ad</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/9d7d7febd3a66844f948254c1ba4745b6cc16f40"><code>9d7d7fe</code></a> 🌐 Update translations for fr (update-outdated) (<a href="https://redirect.github.com/fastapi/fastapi/issues/15897">#15897</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/8dc852df4713efa998d126c5194302e9f06e7675"><code>8dc852d</code></a> 📝 Update release notes</li> <li>Additional commits viewable in <a href="https://github.com/fastapi/fastapi/compare/0.138.0...0.139.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
d21013794b |
Bump uvicorn from 0.49.0 to 0.50.0 in /backend (#1765)
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.49.0 to 0.50.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/releases">uvicorn's releases</a>.</em></p> <blockquote> <h2>Version 0.50.0</h2> <h2>What's Changed</h2> <ul> <li>Memoize trusted host checks to avoid re-parsing the client IP per request by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2970">Kludex/uvicorn#2970</a></li> <li>Cache the <code>asgi</code> scope sub-dict per connection by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2976">Kludex/uvicorn#2976</a></li> <li>Build a fresh <code>asgi</code> scope dict per request by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2977">Kludex/uvicorn#2977</a></li> <li>Replace click.style with an internal ANSI style helper by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2981">Kludex/uvicorn#2981</a></li> <li>Avoid copying single-frame WebSocket payloads in websockets-sansio by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2983">Kludex/uvicorn#2983</a></li> <li>Deprecate the legacy websockets implementation and default <code>auto</code> to websockets-sansio by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2985">Kludex/uvicorn#2985</a></li> <li>Exit with a dedicated code on startup failure and stop the supervisor when a worker can't boot by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/3001">Kludex/uvicorn#3001</a></li> <li>Skip the eager app import in the parent when spawning workers by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/3012">Kludex/uvicorn#3012</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.49.0...0.50.0">https://github.com/Kludex/uvicorn/compare/0.49.0...0.50.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md">uvicorn's changelog</a>.</em></p> <blockquote> <h2>0.50.0 (July 4, 2026)</h2> <p>If you use WebSockets, note that <code>--ws auto</code> now picks the <code>websockets-sansio</code> implementation. You shouldn't need it, but you can pin <code>--ws websockets</code> to get the deprecated legacy one back.</p> <h3>Changed</h3> <ul> <li>Exit with the dedicated code 3 on any startup failure: app loading, socket bind and lifespan startup errors previously exited with a mix of 0, 1 and 3 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3001">#3001</a>)</li> <li>Stop the multiprocess supervisor when a worker exits with code 3 instead of restarting it forever (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3001">#3001</a>)</li> <li>Default <code>--ws auto</code> to <code>websockets-sansio</code> when websockets is installed (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2985">#2985</a>)</li> <li>Skip the eager app import in the parent process with <code>--reload</code> or <code>--workers</code>, fixing a memory regression introduced in 0.47.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3012">#3012</a>)</li> <li>Build a fresh <code>asgi</code> scope dict per request (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2977">#2977</a>)</li> <li>Cache the <code>asgi</code> scope sub-dict per connection (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2976">#2976</a>)</li> <li>Avoid copying single-frame WebSocket payloads in <code>websockets-sansio</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2983">#2983</a>)</li> <li>Memoize trusted host checks in <code>ProxyHeadersMiddleware</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2970">#2970</a>)</li> <li>Replace <code>click.style</code> with an internal ANSI style helper (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2981">#2981</a>)</li> </ul> <h3>Deprecated</h3> <ul> <li>Deprecate the legacy <code>websockets</code> implementation; use <code>websockets-sansio</code> or <code>wsproto</code> instead (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2985">#2985</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/uvicorn/commit/21d2c16fd162ce0e92b5c35f4aadca63a8b12e2d"><code>21d2c16</code></a> Version 0.50.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3013">#3013</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/6c42e8d63bc41e7b721d30b33ff97c7e2fc27ce4"><code>6c42e8d</code></a> Skip the eager app import in the parent when spawning workers (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3012">#3012</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/56a4631c98bdfa8f4712214e3910add5e5e7d7ba"><code>56a4631</code></a> Exit with a dedicated code on startup failure and stop the supervisor when a ...</li> <li><a href="https://github.com/Kludex/uvicorn/commit/3314dfcc18835a4d4afbac4b0c4b8f0ee0d5095d"><code>3314dfc</code></a> chore(deps): bump the github-actions group with 4 updates (<a href="https://redirect.github.com/Kludex/uvicorn/issues/3007">#3007</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/e8a31bca03254b8457c4c89596e310282cc33edc"><code>e8a31bc</code></a> chore(deps): bump the python-packages group across 1 directory with 9 updates...</li> <li><a href="https://github.com/Kludex/uvicorn/commit/8d088b18f1ead0d75a0603d983300717079f9025"><code>8d088b1</code></a> Deprecate the legacy websockets implementation and default <code>auto</code> to websocke...</li> <li><a href="https://github.com/Kludex/uvicorn/commit/5b08cf6374430ce47de74ff2e594b277d09db17e"><code>5b08cf6</code></a> Avoid copying single-frame WebSocket payloads in websockets-sansio (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2983">#2983</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/bf3f60c28e92178878ecf043b858ab55cd97c223"><code>bf3f60c</code></a> Replace click.style with an internal ANSI style helper (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2981">#2981</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/eea1bcc895349d0f3c5e2fe8229d6484f801a1c4"><code>eea1bcc</code></a> Build a fresh <code>asgi</code> scope dict per request (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2977">#2977</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/afed2116795358dee707dbfc890b9eb5106d4720"><code>afed211</code></a> Cache the <code>asgi</code> scope sub-dict per connection (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2976">#2976</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kludex/uvicorn/compare/0.49.0...0.50.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
1cf528621c |
Bump sentry-sdk from 2.63.0 to 2.64.0 in /backend (#1763)
Bumps [sentry-sdk](https://github.com/getsentry/sentry-python) from 2.63.0 to 2.64.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/releases">sentry-sdk's releases</a>.</em></p> <blockquote> <h2>2.64.0</h2> <p>The SDK now extracts all <code>gen_ai</code> spans out of a transaction and sends them as v2 envelope items by default. This prevents <code>gen_ai</code> spans from being dropped when the transaction payload exceeds size limits. Because they are no longer constrained by transaction size limits, AI message data is also no longer truncated. To keep the previous behavior, set <code>stream_gen_ai_spans=False</code>.</p> <p>Self-hosted Sentry users should opt out with <code>stream_gen_ai_spans=False</code>, since streamed <code>gen_ai</code> spans may not be ingested by their Sentry instance.</p> <h3>Bug Fixes 🐛</h3> <ul> <li>(asyncpg) Use distinct span ops for cursor iteration and fetch to prevent N+1 false positives by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6609">#6609</a></li> <li>(aiohttp) Gate url.full, url.path, url.query on send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6650">#6650</a></li> <li>(asgi) Add url.path to ASGI request span attributes by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6652">#6652</a></li> <li>(boto3) Gate url.full, url.query, url.fragment behind send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6674">#6674</a></li> <li>(httpx) Gate url.full, url.query, and url.fragment behind send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6668">#6668</a></li> <li>(httpx2) Gate url.full, url.query on send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6670">#6670</a></li> <li>(langgraph) Ignore <code>GraphBubbleUp</code> exceptions by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6608">#6608</a></li> <li>(litellm) Store span off-band, not in forwarded metadata by <a href="https://github.com/jgreer013"><code>@jgreer013</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6598">#6598</a></li> <li>(mcp) Support MCP SDK v2 handler signature and removed request_ctx by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6583">#6583</a></li> <li>(pydantic-ai) Stop truncating in the streaming trace lifecycle by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6659">#6659</a></li> <li>(pymongo) Add db.query.text to streamed query spans by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6637">#6637</a></li> <li>(pyreqwest) Gate url.full, url.query, url.fragment on send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6673">#6673</a></li> <li>(sanic) Gate url.full, url.path, and http.query behind send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6663">#6663</a></li> <li>(starlette) Stop duplicating <code>scope["root_path"]</code> in URLs by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6579">#6579</a></li> <li>(stdlib) Gate url.full and http.query behind send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6666">#6666</a></li> <li>(tests) Fix flaky OTel propagator entry point test by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6655">#6655</a></li> <li>(tornado) Gate url.full, url.path, url.query on send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6664">#6664</a></li> <li>(wsgi) Gate url.full, url.path, and http.query behind send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6654">#6654</a></li> <li>Stop unconditionally importing <code>contextvars</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6625">#6625</a></li> <li>(.agents) Update project agent lockfiles by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6662">#6662</a></li> </ul> <h3>Documentation 📚</h3> <ul> <li>Add light/dark logos by <a href="https://github.com/hwhsu1231"><code>@hwhsu1231</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6627">#6627</a></li> <li>Fix typos by <a href="https://github.com/juliosuas"><code>@juliosuas</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6602">#6602</a></li> </ul> <h3>Internal Changes 🔧</h3> <ul> <li>(mcp) Pin mcp package to <2.0.0 while alphas are in flight by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6687">#6687</a></li> <li>🤖 Update test matrix with new releases (06/29) by <a href="https://github.com/github-actions"><code>@github-actions</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6682">#6682</a></li> <li>Make <code>stream_gen_ai_spans</code> opt out by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6658">#6658</a></li> <li>Remove <code>setuptools</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6618">#6618</a></li> <li>Remove <code>executing</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6619">#6619</a></li> <li>Remove <code>asttokens</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6615">#6615</a></li> <li>Remove <code>responses</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6621">#6621</a></li> <li>Remove <code>pytest-forked</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6611">#6611</a></li> <li>Remove <code>docker</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6616">#6616</a></li> <li>Add <code>--skip-version-update</code> option to <code>populate_tox.py</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6675">#6675</a></li> <li>Remove <code>httpcore</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6622">#6622</a></li> <li>Remove <code>pytest-timeout</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6613">#6613</a></li> <li>Remove <code>pytest-localserver</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6612">#6612</a></li> <li>Remove <code>jsonschema</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6620">#6620</a></li> <li>Remove <code>socksio</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6617">#6617</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md">sentry-sdk's changelog</a>.</em></p> <blockquote> <h2>2.64.0</h2> <p>The SDK now extracts all <code>gen_ai</code> spans out of a transaction and sends them as v2 envelope items by default. This prevents <code>gen_ai</code> spans from being dropped when the transaction payload exceeds size limits. Because they are no longer constrained by transaction size limits, AI message data is also no longer truncated. To keep the previous behavior, set <code>stream_gen_ai_spans=False</code>.</p> <p>Self-hosted Sentry users should opt out with <code>stream_gen_ai_spans=False</code>, since streamed <code>gen_ai</code> spans may not be ingested by their Sentry instance.</p> <h3>Bug Fixes 🐛</h3> <ul> <li>(asyncpg) Use distinct span ops for cursor iteration and fetch to prevent N+1 false positives by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6609">#6609</a></li> <li>(aiohttp) Gate url.full, url.path, url.query on send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6650">#6650</a></li> <li>(asgi) Add url.path to ASGI request span attributes by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6652">#6652</a></li> <li>(boto3) Gate url.full, url.query, url.fragment behind send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6674">#6674</a></li> <li>(httpx) Gate url.full, url.query, and url.fragment behind send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6668">#6668</a></li> <li>(httpx2) Gate url.full, url.query on send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6670">#6670</a></li> <li>(langgraph) Ignore <code>GraphBubbleUp</code> exceptions by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6608">#6608</a></li> <li>(litellm) Store span off-band, not in forwarded metadata by <a href="https://github.com/jgreer013"><code>@jgreer013</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6598">#6598</a></li> <li>(mcp) Support MCP SDK v2 handler signature and removed request_ctx by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6583">#6583</a></li> <li>(pydantic-ai) Stop truncating in the streaming trace lifecycle by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6659">#6659</a></li> <li>(pymongo) Add db.query.text to streamed query spans by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6637">#6637</a></li> <li>(pyreqwest) Gate url.full, url.query, url.fragment on send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6673">#6673</a></li> <li>(sanic) Gate url.full, url.path, and http.query behind send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6663">#6663</a></li> <li>(starlette) Stop duplicating <code>scope["root_path"]</code> in URLs by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6579">#6579</a></li> <li>(stdlib) Gate url.full and http.query behind send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6666">#6666</a></li> <li>(tests) Fix flaky OTel propagator entry point test by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6655">#6655</a></li> <li>(tornado) Gate url.full, url.path, url.query on send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6664">#6664</a></li> <li>(wsgi) Gate url.full, url.path, and http.query behind send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6654">#6654</a></li> <li>Stop unconditionally importing <code>contextvars</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6625">#6625</a></li> <li>(.agents) Update project agent lockfiles by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6662">#6662</a></li> </ul> <h3>Documentation 📚</h3> <ul> <li>Add light/dark logos by <a href="https://github.com/hwhsu1231"><code>@hwhsu1231</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6627">#6627</a></li> <li>Fix typos by <a href="https://github.com/juliosuas"><code>@juliosuas</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6602">#6602</a></li> </ul> <h3>Internal Changes 🔧</h3> <ul> <li>(mcp) Pin mcp package to <2.0.0 while alphas are in flight by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6687">#6687</a></li> <li>🤖 Update test matrix with new releases (06/29) by <a href="https://github.com/github-actions"><code>@github-actions</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6682">#6682</a></li> <li>Make <code>stream_gen_ai_spans</code> opt out by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6658">#6658</a></li> <li>Remove <code>setuptools</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6618">#6618</a></li> <li>Remove <code>executing</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6619">#6619</a></li> <li>Remove <code>asttokens</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6615">#6615</a></li> <li>Remove <code>responses</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6621">#6621</a></li> <li>Remove <code>pytest-forked</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6611">#6611</a></li> <li>Remove <code>docker</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6616">#6616</a></li> <li>Add <code>--skip-version-update</code> option to <code>populate_tox.py</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6675">#6675</a></li> <li>Remove <code>httpcore</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6622">#6622</a></li> <li>Remove <code>pytest-timeout</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6613">#6613</a></li> <li>Remove <code>pytest-localserver</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6612">#6612</a></li> <li>Remove <code>jsonschema</code> from <code>requirements-testing.txt</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6620">#6620</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/getsentry/sentry-python/commit/9cb0167cee81bb19686f36adb8e9888248f214af"><code>9cb0167</code></a> Call out changed stream_gen_ai_spans default value</li> <li><a href="https://github.com/getsentry/sentry-python/commit/bdbe208f41e8c2dd4615dc64dcd1485497d65d6d"><code>bdbe208</code></a> Update CHANGELOG.md</li> <li><a href="https://github.com/getsentry/sentry-python/commit/8966e45ade8bd3036027e7ad8aca2c3402d3e0fa"><code>8966e45</code></a> release: 2.64.0</li> <li><a href="https://github.com/getsentry/sentry-python/commit/707464306ca78d4928e4668ba4d383948f7eb7fb"><code>7074643</code></a> ci: 🤖 Update test matrix with new releases (06/29) (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6682">#6682</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/b0f319f4fb0a33d521a80e27304104b8a992c45e"><code>b0f319f</code></a> (test): exclude django 6.1 alphas and betas from tox (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6690">#6690</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/a661615a40fa26450e4b4f50cec760733cc858d8"><code>a661615</code></a> (test): need to include the alpha tag for mcp package inclusion (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6688">#6688</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/9c836062fc6f7244aae5046ce66814f0469c9891"><code>9c83606</code></a> ci(mcp): Pin mcp package to <2.0.0 while alphas are in flight (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6687">#6687</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/1dd161de3fef199b46342e8c0947a503316e5e99"><code>1dd161d</code></a> feat: Set <code>sentry.trace_lifecycle</code> attr in span streaming (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6684">#6684</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/5dabd02e83cfb8a4bb8160c766df70864407f569"><code>5dabd02</code></a> fix(pydantic-ai): Stop truncating in the streaming trace lifecycle (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6659">#6659</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/7991f716a4bdef5c0b01ba5a3c6a3765640e312b"><code>7991f71</code></a> ref: Make <code>stream_gen_ai_spans</code> opt out (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6658">#6658</a>)</li> <li>Additional commits viewable in <a href="https://github.com/getsentry/sentry-python/compare/2.63.0...2.64.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
2b2bd85b0e |
Bump aiohttp from 3.14.1 to 3.14.3 in /backend in the uv group across 1 directory (#1757)
Bumps the uv group with 1 update in the /backend directory: [aiohttp](https://github.com/aio-libs/aiohttp). Updates `aiohttp` from 3.14.1 to 3.14.3 [](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 <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 You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/evroon/bracket/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
8fb557aa81 |
Fix SQLAlchemy and operator misuse causing broken query predicates and cross-tournament access (#1721)
Python's `and` operator is unsafe with SQLAlchemy clause elements: in
SQLAlchemy 2.0 it raises `TypeError` (routes return 500); in older
versions it short-circuits to the right-hand operand, silently dropping
the `id = X` filter and enabling cross-tournament entity access.
## Changes
**`routes/util.py`**
- `team_dependency`: replace `and` with `&`
- `round_dependency` / `match_dependency`: `rounds` and `matches` have
no direct `tournament_id`; replace the broken `and` chain with proper
JOINs through `stage_items → stages` to enforce tournament scoping
**`routes/courts.py`**
- `create_court` post-insert fetch: replace `and` with `&`
**`tests/.../teams_test.py`**
- Add `test_cross_tournament_team_access_denied`: asserts that a `PUT`
on tournament A's URL using a `team_id` belonging to tournament B
returns 404
```python
# Before (BROKEN — evaluates to just the right-hand side)
teams.select().where(teams.c.id == team_id and teams.c.tournament_id == tournament_id)
# After (CORRECT)
teams.select().where((teams.c.id == team_id) & (teams.c.tournament_id == tournament_id))
# round_dependency — no tournament_id on rounds table, use JOIN
rounds.select()
.join(stage_items, rounds.c.stage_item_id == stage_items.c.id)
.join(stages, stage_items.c.stage_id == stages.c.id)
.where((rounds.c.id == round_id) & (stages.c.tournament_id == tournament_id))
```
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
|
||
|
|
05811b8c14 |
Bump aiohttp from 3.14.0 to 3.14.1 in /backend (#1748)
Bumps [aiohttp](https://github.com/aio-libs/aiohttp) from 3.14.0 to 3.14.1. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/aio-libs/aiohttp/blob/master/CHANGES.rst">aiohttp's changelog</a>.</em></p> <blockquote> <h1>3.14.1 (2026-06-07)</h1> <h2>Bug fixes</h2> <ul> <li> <p>Fixed a race condition in :py:class:<code>~aiohttp.TCPConnector</code> where closing the connector while a DNS resolution was in-flight could raise :py:exc:<code>AttributeError</code> instead of :py:exc:<code>~aiohttp.ClientConnectionError</code> -- by :user:<code>goingforstudying-ctrl</code>.</p> <p><em>Related issues and pull requests on GitHub:</em> :issue:<code>12497</code>.</p> </li> <li> <p>Fixed <code>CancelledError</code> not closing a connection -- by :user:<code>aiolibsbot</code>.</p> <p><em>Related issues and pull requests on GitHub:</em> :issue:<code>12795</code>.</p> </li> <li> <p>Tightened up some websocket parser checks -- by :user:<code>Dreamsorcerer</code>.</p> <p><em>Related issues and pull requests on GitHub:</em> :issue:<code>12817</code>.</p> </li> <li> <p>Fixed :class:<code>~aiohttp.CookieJar</code> dropping the host-only flag of cookies when persisted with :meth:<code>~aiohttp.CookieJar.save</code> and reloaded with :meth:<code>~aiohttp.CookieJar.load</code>, so a cookie set without a <code>Domain</code> attribute is again scoped to the exact host that set it after a reload; the absolute expiration deadline is now persisted as well, so a reloaded cookie keeps its original lifetime instead of being rescheduled from the load time. :meth:<code>~aiohttp.CookieJar.load</code> now replaces the jar contents rather than merging onto prior state, and loaded cookies pass through the same acceptance rules as :meth:<code>~aiohttp.CookieJar.update_cookies</code>, so a cookie for an IP-address host is dropped when loaded into a jar created without <code>unsafe=True</code> -- by :user:<code>bdraco</code>.</p> <p><em>Related issues and pull requests on GitHub:</em> :issue:<code>12824</code>.</p> </li> <li> <p>Scoped :class:<code>~aiohttp.DigestAuthMiddleware</code> credentials to the origin of the first request it handles, so a redirect to a different origin no longer triggers a digest response computed from the configured credentials; a challenge from another origin is only answered when that origin falls within a protection space advertised by the anchor origin through the RFC 7616 <code>domain</code> directive -- by :user:<code>bdraco</code>.</p> <p><em>Related issues and pull requests on GitHub:</em> :issue:<code>12825</code>.</p> </li> <li> <p>Fixed the C HTTP parser not enforcing <code>max_line_size</code> on a request target or response reason phrase that is split across multiple reads; each fragment was checked on its own, so an accumulated line could exceed the limit without raising <code>LineTooLong</code>. The accumulated length is now checked, matching the pure-Python parser -- by :user:<code>bdraco</code>.</p> <p><em>Related issues and pull requests on GitHub:</em></p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/aio-libs/aiohttp/commit/9c35d03aa5fecd294510196e07f176f1a2e7fa33"><code>9c35d03</code></a> Release v3.14.1 (<a href="https://redirect.github.com/aio-libs/aiohttp/issues/12864">#12864</a>)</li> <li><a href="https://github.com/aio-libs/aiohttp/commit/38b956c617c8529f7e97e55e0390a474c6cb5f8a"><code>38b956c</code></a> [PR <a href="https://redirect.github.com/aio-libs/aiohttp/issues/12861">#12861</a>/59684b5c backport][3.14] Revert "Drop list compression (<a href="https://redirect.github.com/aio-libs/aiohttp/issues/12857">#12857</a>)" (...</li> <li><a href="https://github.com/aio-libs/aiohttp/commit/8f3100960faba4fea56afa1646aa072c128cc9db"><code>8f31009</code></a> [PR <a href="https://redirect.github.com/aio-libs/aiohttp/issues/12857">#12857</a>/69dff14d backport][3.14] Drop list compression (<a href="https://redirect.github.com/aio-libs/aiohttp/issues/12858">#12858</a>)</li> <li><a href="https://github.com/aio-libs/aiohttp/commit/dfdfa9d5aad5d21f91c79fb2ceeba0f8046cb6cf"><code>dfdfa9d</code></a> [PR <a href="https://redirect.github.com/aio-libs/aiohttp/issues/12830">#12830</a>/93a2b1c3 backport][3.14] Bound pipelined request queue per connect...</li> <li><a href="https://github.com/aio-libs/aiohttp/commit/0e9cedd995c6ebaa84ae1a9148212599e0e888f4"><code>0e9cedd</code></a> [PR <a href="https://redirect.github.com/aio-libs/aiohttp/issues/12827">#12827</a>/ccf218ab backport][3.14] Numeric ipv4 resolver bypass (<a href="https://redirect.github.com/aio-libs/aiohttp/issues/12849">#12849</a>)</li> <li><a href="https://github.com/aio-libs/aiohttp/commit/a762eda5242f6490d6ba667533193f8b473ad587"><code>a762eda</code></a> [PR <a href="https://redirect.github.com/aio-libs/aiohttp/issues/12831">#12831</a>/1ac92dae backport][3.14] Payload close on disconnect (<a href="https://redirect.github.com/aio-libs/aiohttp/issues/12843">#12843</a>)</li> <li><a href="https://github.com/aio-libs/aiohttp/commit/a329a7aacad5284f087af36103aff778746da0f2"><code>a329a7a</code></a> [PR <a href="https://redirect.github.com/aio-libs/aiohttp/issues/12824">#12824</a>/60b85e98 backport][3.14] Preserve host-only cookie scope across Co...</li> <li><a href="https://github.com/aio-libs/aiohttp/commit/4f7480e474cccc6a8cc2c92ad3f17a31dedf8232"><code>4f7480e</code></a> [PR <a href="https://redirect.github.com/aio-libs/aiohttp/issues/12828">#12828</a>/13b635d7 backport][3.14] Bounded unread compressed drain (<a href="https://redirect.github.com/aio-libs/aiohttp/issues/12845">#12845</a>)</li> <li><a href="https://github.com/aio-libs/aiohttp/commit/5ab61bb4cd88f19b712f12c7c9295fe262bf804d"><code>5ab61bb</code></a> [PR <a href="https://redirect.github.com/aio-libs/aiohttp/issues/12826">#12826</a>/36df6c13 backport][3.14] Enforce max_line_size on fragmented reque...</li> <li><a href="https://github.com/aio-libs/aiohttp/commit/3912667ae5281b5a14c58e04e02a3834534ff0d5"><code>3912667</code></a> [3.14] Add test that env proxy auth is scoped to the redirect-selected proxy ...</li> <li>Additional commits viewable in <a href="https://github.com/aio-libs/aiohttp/compare/v3.14.0...v3.14.1">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/evroon/bracket/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
23ebf88d8a |
Bump python-multipart from 0.0.27 to 0.0.31 in /backend (#1747)
Bumps [python-multipart](https://github.com/Kludex/python-multipart) from 0.0.27 to 0.0.31. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/python-multipart/releases">python-multipart's releases</a>.</em></p> <blockquote> <h2>Version 0.0.31</h2> <h2>What's Changed</h2> <ul> <li>Speed up multipart header parsing and callback dispatch by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/python-multipart/pull/295">Kludex/python-multipart#295</a></li> <li>Bound header field name size before validating by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/python-multipart/pull/296">Kludex/python-multipart#296</a></li> <li>Validate Content-Length is non-negative in parse_form by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/python-multipart/pull/297">Kludex/python-multipart#297</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/python-multipart/compare/0.0.30...0.0.31">https://github.com/Kludex/python-multipart/compare/0.0.30...0.0.31</a></p> <h2>Version 0.0.30</h2> <h2>What's Changed</h2> <ul> <li>Treat only <code>&</code> as the urlencoded field separator by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/python-multipart/pull/290">Kludex/python-multipart#290</a></li> <li>Ignore RFC 2231 extended parameters in <code>parse_options_header</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/python-multipart/pull/291">Kludex/python-multipart#291</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/python-multipart/compare/0.0.29...0.0.30">https://github.com/Kludex/python-multipart/compare/0.0.29...0.0.30</a></p> <h2>Version 0.0.29</h2> <h2>What's Changed</h2> <ul> <li>Handle malformed RFC 2231 continuations in <code>parse_options_header</code> by <a href="https://github.com/manunio"><code>@manunio</code></a> in <a href="https://redirect.github.com/Kludex/python-multipart/pull/270">Kludex/python-multipart#270</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/python-multipart/compare/0.0.28...0.0.29">https://github.com/Kludex/python-multipart/compare/0.0.28...0.0.29</a></p> <h2>Version 0.0.28</h2> <h2>What's Changed</h2> <ul> <li>Speed up partial-boundary tail scan via <code>bytes.find</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/python-multipart/pull/281">Kludex/python-multipart#281</a></li> <li>Cap multipart boundary length at 256 bytes by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/python-multipart/pull/282">Kludex/python-multipart#282</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/python-multipart/compare/0.0.27...0.0.28">https://github.com/Kludex/python-multipart/compare/0.0.27...0.0.28</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/python-multipart/blob/main/CHANGELOG.md">python-multipart's changelog</a>.</em></p> <blockquote> <h2>0.0.31 (2026-06-04)</h2> <ul> <li>Speed up multipart header parsing and callback dispatch <a href="https://redirect.github.com/Kludex/python-multipart/pull/295">#295</a>.</li> <li>Bound header field name size before validating <a href="https://redirect.github.com/Kludex/python-multipart/pull/296">#296</a>.</li> <li>Validate <code>Content-Length</code> is non-negative in <code>parse_form</code> <a href="https://redirect.github.com/Kludex/python-multipart/pull/297">#297</a>.</li> </ul> <h2>0.0.30 (2026-05-31)</h2> <ul> <li>Parse <code>application/x-www-form-urlencoded</code> bodies per the WHATWG URL standard, treating only <code>&</code> as a field separator <a href="https://redirect.github.com/Kludex/python-multipart/pull/290">#290</a>.</li> <li>Ignore RFC 2231/5987 extended parameters (<code>name*</code>, <code>filename*</code>) in <code>parse_options_header</code>, keeping the plain parameter authoritative per <a href="https://datatracker.ietf.org/doc/html/rfc7578#section-4.2">RFC 7578 §4.2</a> <a href="https://redirect.github.com/Kludex/python-multipart/pull/291">#291</a>.</li> </ul> <h2>0.0.29 (2026-05-17)</h2> <ul> <li>Handle malformed RFC 2231 continuations in <code>parse_options_header</code> <a href="https://redirect.github.com/Kludex/python-multipart/pull/270">#270</a>.</li> </ul> <h2>0.0.28 (2026-05-10)</h2> <ul> <li>Speed up partial-boundary tail scan via <code>bytes.find</code> <a href="https://redirect.github.com/Kludex/python-multipart/pull/281">#281</a>.</li> <li>Cap multipart boundary length at 256 bytes <a href="https://redirect.github.com/Kludex/python-multipart/pull/282">#282</a>.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/python-multipart/commit/4cffc68a165f7a6f6b7756ce006fabf07a05b7a4"><code>4cffc68</code></a> Version 0.0.31 (<a href="https://redirect.github.com/Kludex/python-multipart/issues/298">#298</a>)</li> <li><a href="https://github.com/Kludex/python-multipart/commit/c814948acf509cef7881fa75c969969b19239bbf"><code>c814948</code></a> Reject negative <code>Content-Length</code> in <code>parse_form</code> (<a href="https://redirect.github.com/Kludex/python-multipart/issues/297">#297</a>)</li> <li><a href="https://github.com/Kludex/python-multipart/commit/6b837d47bc68826ed5cbbcb50c6c6a6093444494"><code>6b837d4</code></a> Bound header field name size before validating (<a href="https://redirect.github.com/Kludex/python-multipart/issues/296">#296</a>)</li> <li><a href="https://github.com/Kludex/python-multipart/commit/e0c4f9df2e737d1663fbbdd6563f80613a2089f9"><code>e0c4f9d</code></a> Bump the github-actions group with 3 updates (<a href="https://redirect.github.com/Kludex/python-multipart/issues/294">#294</a>)</li> <li><a href="https://github.com/Kludex/python-multipart/commit/b8a01bb683e8e8675fdb5d831b206a478c8215aa"><code>b8a01bb</code></a> Bump the python-packages group with 3 updates (<a href="https://redirect.github.com/Kludex/python-multipart/issues/293">#293</a>)</li> <li><a href="https://github.com/Kludex/python-multipart/commit/6732164f30c58e28589a1e22213d2f6b8c6bad9f"><code>6732164</code></a> Speed up multipart header parsing and callback dispatch (<a href="https://redirect.github.com/Kludex/python-multipart/issues/295">#295</a>)</li> <li><a href="https://github.com/Kludex/python-multipart/commit/9d3ead568a259f222cff6425262ff63e88d930d4"><code>9d3ead5</code></a> Version 0.0.30 (<a href="https://redirect.github.com/Kludex/python-multipart/issues/292">#292</a>)</li> <li><a href="https://github.com/Kludex/python-multipart/commit/3506c15ce99cb62faf2d5ceb3c4c1e5800cb843d"><code>3506c15</code></a> Ignore RFC 2231 extended parameters in <code>parse_options_header</code> (<a href="https://redirect.github.com/Kludex/python-multipart/issues/291">#291</a>)</li> <li><a href="https://github.com/Kludex/python-multipart/commit/d69df35cd2cad9c72794c2c340db646afae957d8"><code>d69df35</code></a> Treat only <code>&</code> as the urlencoded field separator (<a href="https://redirect.github.com/Kludex/python-multipart/issues/290">#290</a>)</li> <li><a href="https://github.com/Kludex/python-multipart/commit/1e6ff9740b09fb439755f30e2b0e2ada1d297325"><code>1e6ff97</code></a> Bump idna from 3.11 to 3.15 (<a href="https://redirect.github.com/Kludex/python-multipart/issues/289">#289</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kludex/python-multipart/compare/0.0.27...0.0.31">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/evroon/bracket/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
5bd2a5bd24 |
Bump pyrefly from 1.0.0 to 1.1.1 in /backend (#1741)
Bumps [pyrefly](https://github.com/facebook/pyrefly) from 1.0.0 to 1.1.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/facebook/pyrefly/releases">pyrefly's releases</a>.</em></p> <blockquote> <h2>Pyrefly v1.1.1</h2> <p><em>Release date: June 18, 2026</em></p> <p>Pyrefly v1.1.1 is a patch release with a single bug fix.</p> <hr /> <h2>🐛 Bug fixes</h2> <ul> <li><strong><a href="https://redirect.github.com/facebook/pyrefly/issues/3867">#3867</a>:</strong> Fixed a regression introduced in 1.1.0 where <code>isinstance()</code> narrowing of a union variable silently stopped working when an earlier sibling branch in the same <code>if</code>/<code>elif</code>/<code>else</code> chain narrowed a different variable with <code>isinstance()</code> and returned. The later narrowing left the union untouched, producing false <code>missing-attribute</code> errors on code that checked correctly in 1.0.0.</li> </ul> <p>Thank-you to all our contributors who found these bugs and reported them! Did you know this is one of the most helpful contributions you can make to an open-source project? If you find any bugs in Pyrefly we want to know about them! Please open a bug report issue <a href="https://github.com/facebook/pyrefly/issues">here</a>.</p> <hr /> <h2>📦 Upgrade</h2> <pre lang="bash"><code>pip install --upgrade pyrefly==1.1.1 </code></pre> <h3>How to safely upgrade your codebase</h3> <p>Upgrading the version of Pyrefly you're using or a third-party library you depend on can reveal new type errors in your code. Fixing them all at once is often unrealistic. We've written scripts to help you temporarily silence them. After upgrading, follow these steps:</p> <ol> <li><code>pyrefly check --suppress-errors</code></li> <li>Run your code formatter of choice</li> <li><code>pyrefly check --remove-unused-ignores</code></li> <li>Repeat until you achieve a clean formatting run and a clean type check.</li> </ol> <p>This will add <code># pyrefly: ignore</code> comments to your code, enabling you to silence errors and return to fix them later. This can make the process of upgrading a large codebase much more manageable.</p> <p>Read more about error suppressions in the <a href="https://pyrefly.org/en/docs/error-suppressions/">Pyrefly documentation</a>.</p> <h2>Pyrefly v1.1.0</h2> <p><em>Release date: June 17, 2026</em></p> <p>Pyrefly v1.1.0 bundles <strong>250 commits</strong> from <strong>25 contributors</strong>.</p> <hr /> <h2>✨ New & Improved</h2> <h3>Type Checking</h3> <ul> <li>Pyrefly now correctly narrows <code>TypedDict</code> types after <code>isinstance(x, dict)</code> checks, treating them as runtime <code>dict</code> instances while preserving field information in the positive branch.</li> <li>Type narrowing for bounded and constrained <code>TypeVar</code>s has been significantly improved. <code>isinstance</code> checks now correctly narrow <code>Self</code> and bounded type variables via their disjoint-base representatives, and negative narrowing on bounded TypeVars no longer produces false positives.</li> <li>Constrained <code>TypeVar</code>s are now preserved through method calls and binary operations, so <code>T & int</code> where <code>T: (int, str)</code> correctly returns <code>T & int</code> instead of losing the TypeVar.</li> <li>Classes decorated with <code>@dataclass(slots=True)</code> are now recognized as PEP 800 disjoint bases when they synthesize non-empty <code>__slots__</code>, enabling proper multiple-inheritance conflict detection and type narrowing.</li> <li>Pyrefly now detects when methods override parent class methods without using the <code>@override</code> decorator, and a new quick fix can automatically add the decorator for you.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/facebook/pyrefly/commit/b87de05834c401898c79fd9686b806c051dd3667"><code>b87de05</code></a> cut 1.1.1</li> <li><a href="https://github.com/facebook/pyrefly/commit/a297847fa0cee3a34b1dd2a055a70c1ebf3c0237"><code>a297847</code></a> release notes for v1.1.1</li> <li><a href="https://github.com/facebook/pyrefly/commit/4be867378805aa33bfe87d12e589561964a61b4f"><code>4be8673</code></a> Fix isinstance narrowing silently breaking after a sibling branch narrows ano...</li> <li><a href="https://github.com/facebook/pyrefly/commit/67a11d42e5b1f141e3aa5340387da4f94292926d"><code>67a11d4</code></a> cut 1.1.0</li> <li><a href="https://github.com/facebook/pyrefly/commit/6eb38a7c373e760612524ef1803b8029714e08ae"><code>6eb38a7</code></a> Handle empty name invalid syntax</li> <li><a href="https://github.com/facebook/pyrefly/commit/54f61bc1042f368c9ed7b3cab4996a43bae51ec5"><code>54f61bc</code></a> Resolve type-alias refs against their own module, not typing</li> <li><a href="https://github.com/facebook/pyrefly/commit/fc495dc8a74201bcbcb464f092dd3ec5e963c906"><code>fc495dc</code></a> add test for resolving type alias references</li> <li><a href="https://github.com/facebook/pyrefly/commit/33de466bda7bb20fccfb45c3063ae543aa957164"><code>33de466</code></a> Resolve real source locations by reusing the query transaction (<a href="https://redirect.github.com/facebook/pyrefly/issues/3829">#3829</a>)</li> <li><a href="https://github.com/facebook/pyrefly/commit/3fd550de5b5e01fb42e542e80eba18af7a51de9a"><code>3fd550d</code></a> Teach the type converter to resolve export locations</li> <li><a href="https://github.com/facebook/pyrefly/commit/86f0da71bd5300188f1f3698720616d41d5bf64e"><code>86f0da7</code></a> Lazy materialize implicit builtins</li> <li>Additional commits viewable in <a href="https://github.com/facebook/pyrefly/compare/1.0.0...1.1.1">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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
878d0b4ce2 |
Bump fastapi from 0.136.0 to 0.138.0 in /backend (#1740)
Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.136.0 to 0.138.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/fastapi/fastapi/releases">fastapi's releases</a>.</em></p> <blockquote> <h2>0.138.0</h2> <h3>Features</h3> <ul> <li>✨ Add support for <code>app.frontend("/", directory="dist")</code> and <code>router.frontend("/", directory="dist")</code>. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15800">#15800</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>. <ul> <li>Read the docs: <a href="https://fastapi.tiangolo.com/tutorial/frontend/">Frontend</a>.</li> </ul> </li> </ul> <h3>Docs</h3> <ul> <li>📝 Fix typo in release notes. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15807">#15807</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>📝 Add <code>app.frontend()</code> instructions to Agent Library Skill. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15805">#15805</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>📝 Update release notes link. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15802">#15802</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>✏️ Update white space characters in bigger apps. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15801">#15801</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>✏️ Fix grammar, typos, and broken links in docs. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15694">#15694</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> </ul> <h3>Translations</h3> <ul> <li>🌐 Enable Hindi docs translations. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15554">#15554</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>🐛 Fix failing test, update format for raised errors. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15804">#15804</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>👷 Fix test-alls-green. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15803">#15803</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🔧 Enable checking <code>release-notes.md</code> for typos. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15796">#15796</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>📝 Tweak wording about deploying to FastAPI Cloud. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15793">#15793</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🔨 Use <code>gpt-5.5</code> model in <code>translate.py</code>, specify <code>-chat</code> to avoid warnings. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15792">#15792</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> </ul> <h2>0.137.2</h2> <h3>Features</h3> <ul> <li>✨ Add <code>iter_route_contexts()</code> for advanced use cases that used to use <code>router.routes</code> (e.g. Jupyverse). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15785">#15785</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <h3>Translations</h3> <ul> <li>🌐 Fix broken Markdown in Korean custom response docs. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15774">#15774</a> by <a href="https://github.com/kooqooo"><code>@kooqooo</code></a>.</li> <li>🌐 Update translations for fr (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15761">#15761</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for zh-hant (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15760">#15760</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for de (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15759">#15759</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for ko (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15757">#15757</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for uk (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15756">#15756</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for zh (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15755">#15755</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for tr (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15754">#15754</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for pt (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15753">#15753</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for es (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15752">#15752</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for ja (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15751">#15751</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🌐 Update translations for ru (update-outdated). PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15758">#15758</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>🔧 Update sponsors: add BairesDev. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15787">#15787</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>🔨 Update sponsors script to simplify previews. PR <a href="https://redirect.github.com/fastapi/fastapi/pull/15786">#15786</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/fastapi/fastapi/commit/4b83b0d409009c8de9df4070fe163838b1a700c7"><code>4b83b0d</code></a> 🔖 Release version 0.138.0 (<a href="https://redirect.github.com/fastapi/fastapi/issues/15808">#15808</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/041cb0cdfa2d0f705d14ed07c2c2e0f92ef5f32c"><code>041cb0c</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/10393846ede7a2947cec594d15a43f813001cab4"><code>1039384</code></a> 📝 Fix typo in release notes (<a href="https://redirect.github.com/fastapi/fastapi/issues/15807">#15807</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/0303491b69ff84a4632c0314e6db4df74f2f93f9"><code>0303491</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/190f6e2033c8b886b25027be284d8c8c1893f28c"><code>190f6e2</code></a> 📝 Add Frontend instructions to Agent Library Skill (<a href="https://redirect.github.com/fastapi/fastapi/issues/15805">#15805</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/17945e5ab7f25234340c152a40d232a98857e079"><code>17945e5</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/2260afaf433103c8104b34d256cf0b96b058823b"><code>2260afa</code></a> 🐛 Fix failing test, update format for raised errors (<a href="https://redirect.github.com/fastapi/fastapi/issues/15804">#15804</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/0cd5001d0ef80a07e2d775c5c75522391a3e06d7"><code>0cd5001</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/fastapi/commit/7cb1ab6264bc03319832f553730b511192a0c0d3"><code>7cb1ab6</code></a> 👷 Fix test-alls-green (<a href="https://redirect.github.com/fastapi/fastapi/issues/15803">#15803</a>)</li> <li><a href="https://github.com/fastapi/fastapi/commit/9c7eceb00ff6e1d37980954418f7c9dab30a4cd5"><code>9c7eceb</code></a> 📝 Update release notes</li> <li>Additional commits viewable in <a href="https://github.com/fastapi/fastapi/compare/0.136.0...0.138.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
4ad9494c7e |
Bump sentry-sdk from 2.62.0 to 2.63.0 in /backend (#1739)
Bumps [sentry-sdk](https://github.com/getsentry/sentry-python) from 2.62.0 to 2.63.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/releases">sentry-sdk's releases</a>.</em></p> <blockquote> <h2>2.63.0</h2> <h3>Bug Fixes 🐛</h3> <h4>Fastapi</h4> <ul> <li>Prevent double wrapping of sync handlers on FastAPI >= 0.137 by <a href="https://github.com/jhonny-on"><code>@jhonny-on</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6569">#6569</a></li> <li>Use effective_route_context path for prefixed routers by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6572">#6572</a></li> </ul> <h4>Other</h4> <ul> <li>(asgi) Gate query string and client IP behind send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6501">#6501</a></li> <li>(serializer) Avoid creating reference cycles on every call by <a href="https://github.com/Malkiz223"><code>@Malkiz223</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6563">#6563</a></li> <li>(user) Set <code>user.ip_address</code> on telemetry if present by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6555">#6555</a></li> <li>Remove 0000 trace_id fallbacks by <a href="https://github.com/sl0thentr0py"><code>@sl0thentr0py</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6570">#6570</a></li> <li>MANIFEST.in: Graft tests directory. by <a href="https://github.com/charlesroelli"><code>@charlesroelli</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6237">#6237</a></li> </ul> <h3>Internal Changes 🔧</h3> <ul> <li>(fastapi) Verify request info capture with POST endpoints by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6287">#6287</a></li> <li>(starlette) Verify request info capture with POST endpoints by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6269">#6269</a></li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md">sentry-sdk's changelog</a>.</em></p> <blockquote> <h2>2.63.0</h2> <h3>Bug Fixes 🐛</h3> <h4>Fastapi</h4> <ul> <li>Prevent double wrapping of sync handlers on FastAPI >= 0.137 by <a href="https://github.com/jhonny-on"><code>@jhonny-on</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6569">#6569</a></li> <li>Use effective_route_context path for prefixed routers by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6572">#6572</a></li> </ul> <h4>Other</h4> <ul> <li>(asgi) Gate query string and client IP behind send_default_pii by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6501">#6501</a></li> <li>(serializer) Avoid creating reference cycles on every call by <a href="https://github.com/Malkiz223"><code>@Malkiz223</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6563">#6563</a></li> <li>(user) Set <code>user.ip_address</code> on telemetry if present by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6555">#6555</a></li> <li>Remove 0000 trace_id fallbacks by <a href="https://github.com/sl0thentr0py"><code>@sl0thentr0py</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6570">#6570</a></li> <li>MANIFEST.in: Graft tests directory. by <a href="https://github.com/charlesroelli"><code>@charlesroelli</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6237">#6237</a></li> </ul> <h3>Internal Changes 🔧</h3> <ul> <li>(fastapi) Verify request info capture with POST endpoints by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6287">#6287</a></li> <li>(starlette) Verify request info capture with POST endpoints by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6269">#6269</a></li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/getsentry/sentry-python/commit/44b008a336bd9c64bf54ab8318bffbf9cc015bd1"><code>44b008a</code></a> update changelog</li> <li><a href="https://github.com/getsentry/sentry-python/commit/0b2af511fd1b28208b8f8860c68efcab85e81970"><code>0b2af51</code></a> Update CHANGELOG.md</li> <li><a href="https://github.com/getsentry/sentry-python/commit/250caadc80033e975e7b4746ee1411bcf7fa98f3"><code>250caad</code></a> release: 2.63.0</li> <li><a href="https://github.com/getsentry/sentry-python/commit/72a57de789777a7b0b836ef1225463478cb7df6a"><code>72a57de</code></a> fix(flask): Set user data on scope at request start (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6566">#6566</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/6a4c3a1cb84a94b30ff1c0648e127dcf80bd83f8"><code>6a4c3a1</code></a> fix: Remove 0000 trace_id fallbacks (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6570">#6570</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/1df9835e485a346f670ca5615106536a20212795"><code>1df9835</code></a> feat(falcon): Set name and source on request span when streaming (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6562">#6562</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/77874bdb80039de5521830a88b133015e3c0b7a0"><code>77874bd</code></a> test(falcon): Support span streaming (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6561">#6561</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/6bcfb9cf7e8e00a009bcd5ba4e1cb00f3fffe2d9"><code>6bcfb9c</code></a> fix(fastapi): Prevent double wrapping of sync handlers on FastAPI >= 0.137 (#...</li> <li><a href="https://github.com/getsentry/sentry-python/commit/72d972c176a1d41a8179b6666ca723de665399b5"><code>72d972c</code></a> fix(fastapi): use effective_route_context path for prefixed routers (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6572">#6572</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/cc802f6fcedcbd50f76afe2fc902d4d21b6691d6"><code>cc802f6</code></a> feat(chalice): Add span streaming support to Chalice integration (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6503">#6503</a>)</li> <li>Additional commits viewable in <a href="https://github.com/getsentry/sentry-python/compare/2.62.0...2.63.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
edce9f8b43 |
Bump starlette from 1.2.1 to 1.3.1 in /backend (#1737)
Bumps [starlette](https://github.com/Kludex/starlette) from 1.2.1 to 1.3.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/starlette/releases">starlette's releases</a>.</em></p> <blockquote> <h2>Version 1.3.1</h2> <h2>What's Changed</h2> <ul> <li>Use <code>StarletteDeprecationWarning</code> instead of <code>DeprecationWarning</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3119">Kludex/starlette#3119</a></li> <li>Enforce <code>max_fields</code> and <code>max_part_size</code> in <code>FormParser</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3329">Kludex/starlette#3329</a></li> <li>Enforce <code>FormParser</code> limits in parser callbacks by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3331">Kludex/starlette#3331</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/starlette/compare/1.3.0...1.3.1">https://github.com/Kludex/starlette/compare/1.3.0...1.3.1</a></p> <h2>Version 1.3.0</h2> <h2>What's Changed</h2> <ul> <li>Clamp oversized suffix ranges in <code>FileResponse</code> by <a href="https://github.com/jiyujie2006"><code>@jiyujie2006</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3307">Kludex/starlette#3307</a></li> <li>Catch <code>OSError</code> alongside <code>MultiPartException</code> when closing temp files by <a href="https://github.com/N3XT3R1337"><code>@N3XT3R1337</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3191">Kludex/starlette#3191</a></li> <li>Add <code>httpx2</code> to the <code>full</code> extra by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3323">Kludex/starlette#3323</a></li> <li>Adjust testclient typing and warnings by <a href="https://github.com/waketzheng"><code>@waketzheng</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3322">Kludex/starlette#3322</a></li> <li>Fix IndexError in URL.replace() on a URL with no authority by <a href="https://github.com/LeSingh1"><code>@LeSingh1</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3317">Kludex/starlette#3317</a></li> <li>Annotate URLPath protocol parameter with Literal by <a href="https://github.com/Chang-LeHung"><code>@Chang-LeHung</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3285">Kludex/starlette#3285</a></li> <li>avoid collapsing exception groups from user code by <a href="https://github.com/graingert"><code>@graingert</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/2830">Kludex/starlette#2830</a></li> <li>Use <code>removeprefix</code> to strip weak ETag indicator in <code>is_not_modified</code> by <a href="https://github.com/gnosyslambda"><code>@gnosyslambda</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3193">Kludex/starlette#3193</a></li> <li>Build <code>request.url</code> from structured components by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3326">Kludex/starlette#3326</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/jiyujie2006"><code>@jiyujie2006</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/starlette/pull/3307">Kludex/starlette#3307</a></li> <li><a href="https://github.com/N3XT3R1337"><code>@N3XT3R1337</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/starlette/pull/3191">Kludex/starlette#3191</a></li> <li><a href="https://github.com/leestana01"><code>@leestana01</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/starlette/pull/3319">Kludex/starlette#3319</a></li> <li><a href="https://github.com/LeSingh1"><code>@LeSingh1</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/starlette/pull/3317">Kludex/starlette#3317</a></li> <li><a href="https://github.com/EmmanuelNiyonshuti"><code>@EmmanuelNiyonshuti</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/starlette/pull/3204">Kludex/starlette#3204</a></li> <li><a href="https://github.com/Chang-LeHung"><code>@Chang-LeHung</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/starlette/pull/3285">Kludex/starlette#3285</a></li> <li><a href="https://github.com/gnosyslambda"><code>@gnosyslambda</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/starlette/pull/3193">Kludex/starlette#3193</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/starlette/compare/1.2.1...1.3.0">https://github.com/Kludex/starlette/compare/1.2.1...1.3.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/starlette/blob/main/docs/release-notes.md">starlette's changelog</a>.</em></p> <blockquote> <h2>1.3.1 (June 12, 2026)</h2> <h4>Fixed</h4> <ul> <li>Enforce <code>max_fields</code> and <code>max_part_size</code> in <code>FormParser</code> <a href="https://redirect.github.com/encode/starlette/pull/3329">#3329</a>.</li> <li>Enforce <code>FormParser</code> limits in parser callbacks <a href="https://redirect.github.com/encode/starlette/pull/3331">#3331</a>.</li> </ul> <h2>1.3.0 (June 11, 2026)</h2> <h4>Added</h4> <ul> <li>Add <code>httpx2</code> to the <code>full</code> extra <a href="https://redirect.github.com/encode/starlette/pull/3323">#3323</a>.</li> <li>Annotate the <code>URLPath</code> <code>protocol</code> parameter with <code>Literal</code> <a href="https://redirect.github.com/encode/starlette/pull/3285">#3285</a>.</li> </ul> <h4>Fixed</h4> <ul> <li>Build <code>request.url</code> from structured components <a href="https://redirect.github.com/encode/starlette/pull/3326">#3326</a>.</li> <li>Clamp oversized suffix ranges in <code>FileResponse</code> <a href="https://redirect.github.com/encode/starlette/pull/3307">#3307</a>.</li> <li>Catch <code>OSError</code> alongside <code>MultiPartException</code> when closing temp files <a href="https://redirect.github.com/encode/starlette/pull/3191">#3191</a>.</li> <li>Avoid collapsing exception groups raised from user code <a href="https://redirect.github.com/encode/starlette/pull/2830">#2830</a>.</li> <li>Use <code>removeprefix</code> to strip the weak <code>ETag</code> indicator in <code>is_not_modified</code> <a href="https://redirect.github.com/encode/starlette/pull/3193">#3193</a>.</li> <li>Fix <code>IndexError</code> in <code>URL.replace()</code> on a URL with no authority <a href="https://redirect.github.com/encode/starlette/pull/3317">#3317</a>.</li> <li>Adjust <code>testclient</code> typing and warnings <a href="https://redirect.github.com/encode/starlette/pull/3322">#3322</a>.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/starlette/commit/8ebffd0678570ddd5d5bb11c6f3c3c7fd4682ab9"><code>8ebffd0</code></a> Version 1.3.1 (<a href="https://redirect.github.com/Kludex/starlette/issues/3330">#3330</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/25b8e179d8d7ed86769c02f648772dd5fb43dc3c"><code>25b8e17</code></a> Enforce <code>FormParser</code> limits in parser callbacks (<a href="https://redirect.github.com/Kludex/starlette/issues/3331">#3331</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/dba1c4babc4f99ad2622bb913d87045775dda735"><code>dba1c4b</code></a> Enforce <code>max_fields</code> and <code>max_part_size</code> in <code>FormParser</code> (<a href="https://redirect.github.com/Kludex/starlette/issues/3329">#3329</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/45e51dcf99f3a270b0bcec1aec5410b4345863a9"><code>45e51dc</code></a> Use <code>StarletteDeprecationWarning</code> instead of <code>DeprecationWarning</code> (<a href="https://redirect.github.com/Kludex/starlette/issues/3119">#3119</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/5f8610c386e13de1d80d36efa961e1486a1d2d01"><code>5f8610c</code></a> Version 1.3.0 (<a href="https://redirect.github.com/Kludex/starlette/issues/3327">#3327</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/167b5850e809f38b27fbfed62d58bf6442855975"><code>167b585</code></a> Build <code>request.url</code> from structured components (<a href="https://redirect.github.com/Kludex/starlette/issues/3326">#3326</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/37309255b4c1b9c381a2d24a1eaf83100984a16a"><code>3730925</code></a> Use <code>removeprefix</code> to strip weak ETag indicator in <code>is_not_modified</code> (<a href="https://redirect.github.com/Kludex/starlette/issues/3193">#3193</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/e6f7ad1ab85efb27ab7910d8007b3f4531f7b083"><code>e6f7ad1</code></a> avoid collapsing exception groups from user code (<a href="https://redirect.github.com/Kludex/starlette/issues/2830">#2830</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/115228fcdca0e0ef5bf4a95a40ddce5a9fced428"><code>115228f</code></a> Annotate URLPath protocol parameter with Literal (<a href="https://redirect.github.com/Kludex/starlette/issues/3285">#3285</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/113f193a34353c9153857028c1074351d22fad07"><code>113f193</code></a> docs: replace inline ASGI server list with link to canonical implemen… (<a href="https://redirect.github.com/Kludex/starlette/issues/3204">#3204</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kludex/starlette/compare/1.2.1...1.3.1">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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
9ee493a8b2 |
Bump sentry-sdk from 2.61.0 to 2.62.0 in /backend (#1736)
Bumps [sentry-sdk](https://github.com/getsentry/sentry-python) from 2.61.0 to 2.62.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/releases">sentry-sdk's releases</a>.</em></p> <blockquote> <h2>2.62.0</h2> <h3>New Features ✨</h3> <ul> <li> <p>Add integration for <code>aiomysql</code> by <a href="https://github.com/tonal"><code>@tonal</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/4703">#4703</a></p> <p>We're adding support for the <code>aiomysql</code> package. To enable the integration, add it to your <code>integrations</code> list:</p> <pre lang="python"><code>import sentry_sdk from sentry_sdk.integrations.aiomysql import AioMySQLIntegration <p>sentry_sdk.init( traces_sample_rate=1.0, integrations=[AioMySQLIntegration()], ) </code></pre></p> </li> <li> <p>Support HTTPX2 by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6463">#6463</a></p> <p>We're adding out-of-the-box support for HTTPX2. As long as use the package, the Sentry integration will be enabled automatically and you should see your requests instrumented in Sentry.</p> <pre lang="python"><code>import httpx2 import sentry_sdk <p>sentry_sdk.init(...)</p> <p>with sentry_sdk.start_transaction(name="testing_sentry"): httpx2.get("<a href="https://sentry.io/">https://sentry.io/</a>") </code></pre></p> </li> </ul> <h3>Bug Fixes 🐛</h3> <ul> <li>(arq) Never capture control flow exceptions by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6507">#6507</a></li> <li>(client) Guard against dotless qualified_name in _setup_instrumentation by <a href="https://github.com/devteamaegis"><code>@devteamaegis</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6452">#6452</a></li> <li>(pydantic-ai) Only use hooks when <code>ModelRequestContext.model</code> exists by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6480">#6480</a></li> <li>(rq) Restore <code>functools.wraps()</code> for patched functions by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6532">#6532</a></li> <li>(tracing_utils) Handle baggage values containing '=' in from_incoming_header by <a href="https://github.com/devteamaegis"><code>@devteamaegis</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6450">#6450</a></li> <li>(utils) Handle image_url string shorthand in _is_image_type_with_blob_content by <a href="https://github.com/devteamaegis"><code>@devteamaegis</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6478">#6478</a></li> </ul> <h3>Internal Changes 🔧</h3> <ul> <li>(arq) Only pin <code>fakeredis<2.36.0</code> in tests by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6444">#6444</a></li> <li>(flaky) Change env for flaky test detector by <a href="https://github.com/sl0thentr0py"><code>@sl0thentr0py</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6492">#6492</a></li> <li>(pydantic-ai) Create event loop before invoking sync methods by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6475">#6475</a></li> <li>Use <code>package-ecosystem: uv</code> in dependabot by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6522">#6522</a></li> <li>🤖 Update test matrix with new releases (06/08) by <a href="https://github.com/github-actions"><code>@github-actions</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6519">#6519</a></li> <li>Raise minimum supported <code>aiomysql</code> version and update text matrix by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6496">#6496</a></li> <li>Deprecate OpenTelemetryIntegration in favor of OTLPIntegration and no-op for span first by <a href="https://github.com/sl0thentr0py"><code>@sl0thentr0py</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6494">#6494</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md">sentry-sdk's changelog</a>.</em></p> <blockquote> <h2>2.62.0</h2> <h3>New Features ✨</h3> <ul> <li> <p>Add integration for <code>aiomysql</code> by <a href="https://github.com/tonal"><code>@tonal</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/4703">#4703</a></p> <p>We're adding support for the <code>aiomysql</code> package. To enable the integration, add it to your <code>integrations</code> list:</p> <pre lang="python"><code>import sentry_sdk from sentry_sdk.integrations.aiomysql import AioMySQLIntegration <p>sentry_sdk.init( traces_sample_rate=1.0, integrations=[AioMySQLIntegration()], ) </code></pre></p> </li> <li> <p>Support HTTPX2 by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6463">#6463</a></p> <p>We're adding out-of-the-box support for HTTPX2. As long as use the package, the Sentry integration will be enabled automatically and you should see your requests instrumented in Sentry.</p> <pre lang="python"><code>import httpx2 import sentry_sdk <p>sentry_sdk.init(...)</p> <p>with sentry_sdk.start_transaction(name="testing_sentry"): httpx2.get("<a href="https://sentry.io/">https://sentry.io/</a>") </code></pre></p> </li> </ul> <h3>Bug Fixes 🐛</h3> <ul> <li>(arq) Never capture control flow exceptions by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6507">#6507</a></li> <li>(client) Guard against dotless qualified_name in _setup_instrumentation by <a href="https://github.com/devteamaegis"><code>@devteamaegis</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6452">#6452</a></li> <li>(pydantic-ai) Only use hooks when <code>ModelRequestContext.model</code> exists by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6480">#6480</a></li> <li>(rq) Restore <code>functools.wraps()</code> for patched functions by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6532">#6532</a></li> <li>(tracing_utils) Handle baggage values containing '=' in from_incoming_header by <a href="https://github.com/devteamaegis"><code>@devteamaegis</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6450">#6450</a></li> <li>(utils) Handle image_url string shorthand in _is_image_type_with_blob_content by <a href="https://github.com/devteamaegis"><code>@devteamaegis</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6478">#6478</a></li> </ul> <h3>Internal Changes 🔧</h3> <ul> <li>(arq) Only pin <code>fakeredis<2.36.0</code> in tests by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6444">#6444</a></li> <li>(flaky) Change env for flaky test detector by <a href="https://github.com/sl0thentr0py"><code>@sl0thentr0py</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6492">#6492</a></li> <li>(pydantic-ai) Create event loop before invoking sync methods by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6475">#6475</a></li> <li>Use <code>package-ecosystem: uv</code> in dependabot by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6522">#6522</a></li> <li>🤖 Update test matrix with new releases (06/08) by <a href="https://github.com/github-actions"><code>@github-actions</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6519">#6519</a></li> <li>Raise minimum supported <code>aiomysql</code> version and update text matrix by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6496">#6496</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/getsentry/sentry-python/commit/0bac65a1c046e6eb7125d6413c29a188144e875b"><code>0bac65a</code></a> Update CHANGELOG.md</li> <li><a href="https://github.com/getsentry/sentry-python/commit/4a53c102d7a9dc4144900058ab456bcd82aaf17b"><code>4a53c10</code></a> release: 2.62.0</li> <li><a href="https://github.com/getsentry/sentry-python/commit/afff0e23a44e0f264fdd7c50aa0d1af63c1aca41"><code>afff0e2</code></a> fix(rq): Restore <code>functools.wraps()</code> for patched functions (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6532">#6532</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/33ca589e7b36f0bc33ba470506d5668704912d59"><code>33ca589</code></a> build(deps-dev): bump openfeature-sdk from 0.9.0 to 0.10.0 (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6528">#6528</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/4fdd8e042b0c35cb0193e1aec825d3e5b11c4ce1"><code>4fdd8e0</code></a> build(deps): bump pip from 26.1.1 to 26.1.2 (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6530">#6530</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/b466c279d7e2416d4374922ece59190de01c0ffb"><code>b466c27</code></a> build(deps-dev): bump httpx2 from 2.2.0 to 2.3.0 (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6523">#6523</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/0be028f9ac82dbb3f5fdede5c03a8900148fbe7b"><code>0be028f</code></a> build(deps-dev): bump typer from 0.26.2 to 0.26.7 (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6526">#6526</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/344c013951a5feaf9b07db91ce4d2969b20103a9"><code>344c013</code></a> build(deps-dev): bump ruff from 0.15.14 to 0.15.16 (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6529">#6529</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/7d38a49af058d46299e1e01ec0086ff05f585866"><code>7d38a49</code></a> ci: Use package-ecosystem: uv in dependabot (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6522">#6522</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/8c50017e5ad90f413ec7b70a2622ebfc007c9ff4"><code>8c50017</code></a> build(deps): bump getsentry/craft/.github/workflows/changelog-preview.yml fro...</li> <li>Additional commits viewable in <a href="https://github.com/getsentry/sentry-python/compare/2.61.0...2.62.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
279f66be12 |
Bump pytest from 9.0.3 to 9.1.0 in /backend (#1735)
Bumps [pytest](https://github.com/pytest-dev/pytest) from 9.0.3 to 9.1.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest/releases">pytest's releases</a>.</em></p> <blockquote> <h2>9.1.0</h2> <h1>pytest 9.1.0 (2026-06-13)</h1> <h2>Removals and backward incompatible breaking changes</h2> <ul> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/14533">#14533</a>: When using <code>--doctest-modules</code>, autouse fixtures with <code>module</code>, <code>package</code> or <code>session</code> scope that are defined inline in Python test modules (not plugins or conftests) will now possibly execute twice.</p> <p>If this is undesirable, move the fixture definition to a <code>conftest.py</code> file if possible.</p> <p>Technical explanation for those interested: When using <!-- raw HTML omitted -->--doctest-modules<!-- raw HTML omitted -->, pytest possibly collects Python modules twice, once as <code>pytest.Module</code> and once as a <code>DoctestModule</code> (depending on the configuration). Due to improvements in pytest's fixture implementation, if e.g. the <code>DoctestModule</code> collects a fixture, it is now visible to it only, and not to the <code>Module</code>. This means that both need to register the fixtures independently.</p> </li> </ul> <h2>Deprecations (removal in next major release)</h2> <ul> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/10819">#10819</a>: Added a deprecation warning for class-scoped fixtures defined as instance methods (without <code>@classmethod</code>). Such fixtures set attributes on a different instance than the test methods use, leading to unexpected behavior. Use <code>@classmethod</code> decorator instead -- by <code>yastcher</code>.</p> <p>See <code>10819</code> and <code>14011</code>.</p> </li> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/12882">#12882</a>: Calling <code>request.getfixturevalue() <pytest.FixtureRequest.getfixturevalue></code> during teardown to request a fixture that was not already requested is now deprecated and will become an error in pytest 10.</p> <p>See <code>dynamic-fixture-request-during-teardown</code> for details.</p> </li> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/13409">#13409</a>: Using non-<code>~collections.abc.Collection</code> iterables (such as generators, iterators, or custom iterable objects) for the <code>argvalues</code> parameter in <code>@pytest.mark.parametrize <pytest.mark.parametrize ref></code> and <code>metafunc.parametrize <pytest.Metafunc.parametrize></code> is now deprecated.</p> <p>These iterables get exhausted after the first iteration, leading to tests getting unexpectedly skipped in cases such as running <code>pytest.main()</code> multiple times, using class-level parametrize decorators, or collecting tests multiple times.</p> <p>See <code>parametrize-iterators</code> for details and suggestions.</p> </li> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/13946">#13946</a>: The private <code>config.inicfg</code> attribute is now deprecated. Use <code>config.getini() <pytest.Config.getini></code> to access configuration values instead.</p> <p>See <code>config-inicfg</code> for more details.</p> </li> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/14004">#14004</a>: Passing <code>baseid</code> to <code>~pytest.FixtureDef</code> or <code>nodeid</code> strings to fixture registration APIs is now deprecated. These are internal pytest APIs that are used by some plugins.</p> <p>Use the <code>node</code> parameter instead for fixture scoping. This enables more robust node-based matching instead of string prefix matching. If you've used <code>nodeid=None</code>, pass <code>node=session</code> instead.</p> <p>This will be removed in pytest 10.</p> </li> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/14335">#14335</a>: The method of configuring hooks using markers, deprecated since pytest 7.2, is now scheduled to be removed in pytest 10. See <code>hook-markers</code> for more details.</p> </li> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/14434">#14434</a>: The <code>--pastebin</code> option is now deprecated.</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pytest/commit/b2522cf0b11fb33ecc1f4895fa1dffbb9252a63d"><code>b2522cf</code></a> Prepare release version 9.1.0</li> <li><a href="https://github.com/pytest-dev/pytest/commit/368d2fca78e86ac79ec269bb078fcb1259a94fed"><code>368d2fc</code></a> [refactor] Tighten <code>SetComparisonFunction</code> to <code>Iterator[str]</code> (<a href="https://redirect.github.com/pytest-dev/pytest/issues/14587">#14587</a>)</li> <li><a href="https://github.com/pytest-dev/pytest/commit/ff77cd8b66b43a88c26ca54384bbcab72d079497"><code>ff77cd8</code></a> [refactor] Make base assertion comparisons return an iterator instead of a li...</li> <li><a href="https://github.com/pytest-dev/pytest/commit/0d8491a4ecf971800de0479ef55c7f5292c54937"><code>0d8491a</code></a> build(deps): Bump actions/stale from 10.2.0 to 10.3.0</li> <li><a href="https://github.com/pytest-dev/pytest/commit/4a809d9c892f6abb5ba92b77b06f1dd878f4660a"><code>4a809d9</code></a> Merge pull request <a href="https://redirect.github.com/pytest-dev/pytest/issues/14568">#14568</a> from pytest-dev/register-fixture</li> <li><a href="https://github.com/pytest-dev/pytest/commit/5dfa38541becfb77d0f52cac4cc8cce71849ab61"><code>5dfa385</code></a> Fix recursion traceback test to cover all styles (<a href="https://redirect.github.com/pytest-dev/pytest/issues/14582">#14582</a>)</li> <li><a href="https://github.com/pytest-dev/pytest/commit/f52ff0c1778c15038cf2bbb00b7668dac674cc26"><code>f52ff0c</code></a> Add <code>pytest.register_fixture</code></li> <li><a href="https://github.com/pytest-dev/pytest/commit/a8ac094e80df788aec844794170b126eab0be7a4"><code>a8ac094</code></a> Merge pull request <a href="https://redirect.github.com/pytest-dev/pytest/issues/14567">#14567</a> from pytest-dev/more-visibility-deprecate</li> <li><a href="https://github.com/pytest-dev/pytest/commit/e5620cd21ec62f5a5f9a5141a3c76fb3953729b6"><code>e5620cd</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/pytest-dev/pytest/issues/14577">#14577</a>)</li> <li><a href="https://github.com/pytest-dev/pytest/commit/2ce9c6d94eb691ea4da7f91f330602cbb67a6daf"><code>2ce9c6d</code></a> Merge pull request <a href="https://redirect.github.com/pytest-dev/pytest/issues/14540">#14540</a> from minbang930/fix-14533-doctest-module-fixtures</li> <li>Additional commits viewable in <a href="https://github.com/pytest-dev/pytest/compare/9.0.3...9.1.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
d5f5a40986 |
Bump aiohttp from 3.13.4 to 3.14.0 in /backend (#1732)
[](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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
7cb4638f61 |
Bump uvicorn from 0.48.0 to 0.49.0 in /backend (#1733)
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.48.0 to 0.49.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/releases">uvicorn's releases</a>.</em></p> <blockquote> <h2>Version 0.49.0</h2> <h2>What's Changed</h2> <ul> <li>Bump httptools minimum version to 0.8.0 by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2962">Kludex/uvicorn#2962</a></li> <li>Consume duplicate forwarding headers in ProxyHeadersMiddleware (reverses the 0.48.0 behavior of ignoring them) by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2971">Kludex/uvicorn#2971</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.48.0...0.49.0">https://github.com/Kludex/uvicorn/compare/0.48.0...0.49.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md">uvicorn's changelog</a>.</em></p> <blockquote> <h2>0.49.0 (June 3, 2026)</h2> <h3>Changed</h3> <ul> <li>Bump <code>httptools</code> minimum version to 0.8.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2962">#2962</a>)</li> <li>Consume duplicate forwarding headers in <code>ProxyHeadersMiddleware</code> (reverses the 0.48.0 behavior of ignoring them) (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2971">#2971</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/uvicorn/commit/3ef2e3e08e3d9ad9572800f8bc54f3eaed9eab0a"><code>3ef2e3e</code></a> Version 0.49.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2973">#2973</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/eeb64b1d1c95a14096ed3313377c74b485f558fc"><code>eeb64b1</code></a> Consume duplicate forwarding headers in ProxyHeadersMiddleware (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2971">#2971</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/630f4aca14e79183617c71be714030842a1041c5"><code>630f4ac</code></a> Make the watchfiles reload tests deterministic (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2972">#2972</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/9154922e3730f7aba68ecc3ecbf536680ee8fd1c"><code>9154922</code></a> chore(deps): bump the github-actions group across 1 directory with 6 updates ...</li> <li><a href="https://github.com/Kludex/uvicorn/commit/739727a1d80e468d1e47e98bbd824ee9e3c9554b"><code>739727a</code></a> Migrate docs deploy from Cloudflare Pages to Workers (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2967">#2967</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/be4a240488d3fb678a11b8e8f83505266f5f1de7"><code>be4a240</code></a> Gate docs preview deploy on Cloudflare token presence (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2966">#2966</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/c489d7e10dfe653a2bba914feedf2a632a026e6f"><code>c489d7e</code></a> Bump httptools minimum version to 0.8.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2962">#2962</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/9f547bd82ef52bcba206e04170b359bd6daa25b3"><code>9f547bd</code></a> Skip docs preview deploy for Dependabot PRs (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2961">#2961</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/44446b894e37ca76830d6aa83df4349795400ed4"><code>44446b8</code></a> Migrate documentation from MkDocs Material to Zensical (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2959">#2959</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/cfd659c4f18b526adce9c255c96707bab20af40c"><code>cfd659c</code></a> Bump pymdown-extensions to 10.21.3 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2958">#2958</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kludex/uvicorn/compare/0.48.0...0.49.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
8a6d86980f |
Bump uvicorn from 0.47.0 to 0.48.0 in /backend (#1726)
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.47.0 to 0.48.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/releases">uvicorn's releases</a>.</em></p> <blockquote> <h2>Version 0.48.0</h2> <h2>What's Changed</h2> <ul> <li>Default <code>ssl_ciphers</code> to <code>None</code> and use OpenSSL defaults by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2940">Kludex/uvicorn#2940</a></li> <li>Ignore duplicate forwarding headers in <code>ProxyHeadersMiddleware</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2944">Kludex/uvicorn#2944</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.47.0...0.48.0">https://github.com/Kludex/uvicorn/compare/0.47.0...0.48.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md">uvicorn's changelog</a>.</em></p> <blockquote> <h2>0.48.0 (May 24, 2026)</h2> <h3>Changed</h3> <ul> <li>Default <code>ssl_ciphers</code> to <code>None</code> and use OpenSSL defaults (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2940">#2940</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Ignore duplicate forwarding headers in <code>ProxyHeadersMiddleware</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2944">#2944</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/uvicorn/commit/73e84e58d7f6b8b3dfd8a9e3e42d716862250f33"><code>73e84e5</code></a> Version 0.48.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2951">#2951</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/45ea11690b4a62fa6df339d2b6ee3b8545a418e0"><code>45ea116</code></a> Ignore duplicate forwarding headers in <code>ProxyHeadersMiddleware</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2944">#2944</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/dd4394c3cbfd9f27a696a7b08047149690058158"><code>dd4394c</code></a> chore(deps): bump idna from 3.11 to 3.15 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2941">#2941</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/abe07818a191cd036dc3824d802d052207e01c7e"><code>abe0781</code></a> Default <code>ssl_ciphers</code> to <code>None</code> and use OpenSSL defaults (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2940">#2940</a>)</li> <li>See full diff in <a href="https://github.com/Kludex/uvicorn/compare/0.47.0...0.48.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
8376072d5f |
Bump starlette from 1.1.0 to 1.2.1 in /backend (#1725)
Bumps [starlette](https://github.com/Kludex/starlette) from 1.1.0 to 1.2.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/starlette/releases">starlette's releases</a>.</em></p> <blockquote> <h2>Version 1.2.1</h2> <h2>What's Changed</h2> <ul> <li>Use <code>httpx2</code> for type checking in the <code>testclient</code> module by <a href="https://github.com/leifwar"><code>@leifwar</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3304">Kludex/starlette#3304</a></li> <li>Add assert error for requires() when request param is not Request type by <a href="https://github.com/KeeganOP"><code>@KeeganOP</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3298">Kludex/starlette#3298</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/leifwar"><code>@leifwar</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/starlette/pull/3304">Kludex/starlette#3304</a></li> <li><a href="https://github.com/diskeu"><code>@diskeu</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/starlette/pull/3243">Kludex/starlette#3243</a></li> <li><a href="https://github.com/KeeganOP"><code>@KeeganOP</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/starlette/pull/3298">Kludex/starlette#3298</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/starlette/compare/1.2.0...1.2.1">https://github.com/Kludex/starlette/compare/1.2.0...1.2.1</a></p> <h2>Version 1.2.0</h2> <h2>What's Changed</h2> <ul> <li>Support httpx2 in the test client by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3291">Kludex/starlette#3291</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/starlette/compare/1.1.0...1.2.0">https://github.com/Kludex/starlette/compare/1.1.0...1.2.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/starlette/blob/main/docs/release-notes.md">starlette's changelog</a>.</em></p> <blockquote> <h2>1.2.1 (May 31, 2026)</h2> <h4>Fixed</h4> <ul> <li>Use <code>httpx2</code> for type checking in the <code>testclient</code> module <a href="https://redirect.github.com/encode/starlette/pull/3304">#3304</a>.</li> <li>Add assert error for <code>requires()</code> when the request parameter is not a <code>Request</code> type <a href="https://redirect.github.com/encode/starlette/pull/3298">#3298</a>.</li> </ul> <h2>1.2.0 (May 28, 2026)</h2> <h4>Added</h4> <ul> <li>Support httpx2 in the test client <a href="https://redirect.github.com/encode/starlette/pull/3291">#3291</a>.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/starlette/commit/ef773fe9fe86d452ea014a39c6ede1029b341e73"><code>ef773fe</code></a> Version 1.2.1 (<a href="https://redirect.github.com/Kludex/starlette/issues/3306">#3306</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/3fc68a7e394cb938bd202774b9d6f5c33a237a66"><code>3fc68a7</code></a> Add sponsors section to docs sidebar (<a href="https://redirect.github.com/Kludex/starlette/issues/3305">#3305</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/b053f7bbf194c3fac77d87c6033ec6181eb4cd90"><code>b053f7b</code></a> chore(deps): bump the python-packages group across 1 directory with 6 updates...</li> <li><a href="https://github.com/Kludex/starlette/commit/14787751400853cc21853983a02d84bbfb4da45d"><code>1478775</code></a> Add assert error for requires() when request param is not Request type (<a href="https://redirect.github.com/Kludex/starlette/issues/3298">#3298</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/65765470827be550cdbc1a2e7165da494da7f6e8"><code>6576547</code></a> Describe disconnected-after-response behavior in test docstring (<a href="https://redirect.github.com/Kludex/starlette/issues/3243">#3243</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/9cb1553be6ff3d18a0d30a18e3b623ea86edeef0"><code>9cb1553</code></a> Use same module (httpx|httpx2) for type checking as for runtime (<a href="https://redirect.github.com/Kludex/starlette/issues/3304">#3304</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/4060987466412dcdb3e5a0f05973b4208dddb6f0"><code>4060987</code></a> Version 1.2.0 (<a href="https://redirect.github.com/Kludex/starlette/issues/3300">#3300</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/1e289ca3f957370122fb3bf7e046db65f6675037"><code>1e289ca</code></a> Migrate docs deploy from Cloudflare Pages to Workers Static Assets (<a href="https://redirect.github.com/Kludex/starlette/issues/3282">#3282</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/100f05a66bf3ff5643540164ae95fc3ad9ed3443"><code>100f05a</code></a> Add <code>httpx2</code> as a dev dependency (<a href="https://redirect.github.com/Kludex/starlette/issues/3295">#3295</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/508023b488b649d97c091eb60da1d8ef3636ee06"><code>508023b</code></a> Support httpx2 in the test client (<a href="https://redirect.github.com/Kludex/starlette/issues/3291">#3291</a>)</li> <li>See full diff in <a href="https://github.com/Kludex/starlette/compare/1.1.0...1.2.1">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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
0c8f1eb2de |
Bump sentry-sdk from 2.60.0 to 2.61.0 in /backend (#1724)
Bumps [sentry-sdk](https://github.com/getsentry/sentry-python) from 2.60.0 to 2.61.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/releases">sentry-sdk's releases</a>.</em></p> <blockquote> <h2>2.61.0</h2> <h3>New Features ✨</h3> <ul> <li> <p>Add <code>server.address</code> to transformed spans when <code>stream_gen_ai_spans=True</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6307">#6307</a></p> </li> <li> <p>Allow integrations to define control flow exceptions by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6425">#6425</a></p> </li> <li> <p>Disable string truncation for events by default by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6290">#6290</a></p> <p>Following a previous significant increase of the string truncation limit, we've now completely removed the limit by default. In case you have large strings in your events, you should now be able to see them.</p> <p>In rare cases, if you have really long strings (or a lot of them), you might see envelopes being dropped because of their size. If that happens, you can set the <code>max_value_length</code> <code>init</code> option to the previous value of <code>100_000</code>:</p> <pre lang="python"><code>sentry_sdk.init( ..., max_value_length=100_000, ) </code></pre> </li> </ul> <h3>Bug Fixes 🐛</h3> <h4>Langchain</h4> <ul> <li>Stop setting transaction status when child span fails by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6301">#6301</a></li> <li>Catch <code>TypeError</code> on <code>langchain.agents</code> import by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6268">#6268</a></li> </ul> <h4>Openai Agents</h4> <ul> <li>Handle <code>starting_agent</code> keyword argument in runner patches by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6428">#6428</a></li> <li>Remove hosted MCP tool spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6391">#6391</a></li> <li>Use <code>name</code>, not <code>description</code> in <code>start_span</code> by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6323">#6323</a></li> <li>Stop setting transaction status when child span fails by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6303">#6303</a></li> </ul> <h4>Pydantic AI</h4> <ul> <li>Stop setting tokens on Invoke Agent spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6320">#6320</a></li> <li>Stop setting transaction status when child span fails by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6302">#6302</a></li> <li>Remove <code>Agent.run_stream_events()</code> patch by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6281">#6281</a></li> </ul> <h4>Strawberry</h4> <ul> <li>Wrap yields in try-except to ensure span cleanup by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6381">#6381</a></li> <li>Fix <code>AttributeError</code> on <code>graphql_span</code> in <code>resolve</code> by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6289">#6289</a></li> </ul> <h4>Other</h4> <ul> <li>(anthropic) Do not set <code>gen_ai.response.model</code> to <code>None</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6312">#6312</a></li> <li>(asyncpg) Use Sentry span attribute name conventions by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6306">#6306</a></li> <li>(boto3) Guard setting method by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6288">#6288</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md">sentry-sdk's changelog</a>.</em></p> <blockquote> <h2>2.61.0</h2> <h3>New Features ✨</h3> <ul> <li> <p>Add <code>server.address</code> to transformed spans when <code>stream_gen_ai_spans=True</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6307">#6307</a></p> </li> <li> <p>Allow integrations to define control flow exceptions by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6425">#6425</a></p> </li> <li> <p>Disable string truncation for events by default by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6290">#6290</a></p> <p>Following a previous significant increase of the string truncation limit, we've now completely removed the limit by default. In case you have large strings in your events, you should now be able to see them.</p> <p>In rare cases, if you have really long strings (or a lot of them), you might see envelopes being dropped because of their size. If that happens, you can set the <code>max_value_length</code> <code>init</code> option to the previous value of <code>100_000</code>:</p> <pre lang="python"><code>sentry_sdk.init( ..., max_value_length=100_000, ) </code></pre> </li> </ul> <h3>Bug Fixes 🐛</h3> <h4>Langchain</h4> <ul> <li>Stop setting transaction status when child span fails by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6301">#6301</a></li> <li>Catch <code>TypeError</code> on <code>langchain.agents</code> import by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6268">#6268</a></li> </ul> <h4>Openai Agents</h4> <ul> <li>Handle <code>starting_agent</code> keyword argument in runner patches by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6428">#6428</a></li> <li>Remove hosted MCP tool spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6391">#6391</a></li> <li>Use <code>name</code>, not <code>description</code> in <code>start_span</code> by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6323">#6323</a></li> <li>Stop setting transaction status when child span fails by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6303">#6303</a></li> </ul> <h4>Pydantic AI</h4> <ul> <li>Stop setting tokens on Invoke Agent spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6320">#6320</a></li> <li>Stop setting transaction status when child span fails by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6302">#6302</a></li> <li>Remove <code>Agent.run_stream_events()</code> patch by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6281">#6281</a></li> </ul> <h4>Strawberry</h4> <ul> <li>Wrap yields in try-except to ensure span cleanup by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6381">#6381</a></li> <li>Fix <code>AttributeError</code> on <code>graphql_span</code> in <code>resolve</code> by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6289">#6289</a></li> </ul> <h4>Other</h4> <ul> <li>(anthropic) Do not set <code>gen_ai.response.model</code> to <code>None</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6312">#6312</a></li> <li>(asyncpg) Use Sentry span attribute name conventions by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6306">#6306</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/getsentry/sentry-python/commit/53df8783b8961e2cba32d932b78c79e4408c7ed6"><code>53df878</code></a> Update CHANGELOG.md</li> <li><a href="https://github.com/getsentry/sentry-python/commit/24f6bf7a81aeb554f9ed1459d6a386bec6878ab1"><code>24f6bf7</code></a> Update CHANGELOG.md</li> <li><a href="https://github.com/getsentry/sentry-python/commit/f50bec574650d3c09b14683491219d458f72c13b"><code>f50bec5</code></a> Update CHANGELOG.md</li> <li><a href="https://github.com/getsentry/sentry-python/commit/35469462b9d672ec6be408a3292447252ea23712"><code>3546946</code></a> release: 2.61.0</li> <li><a href="https://github.com/getsentry/sentry-python/commit/54f768680cad8a40ab97be4dddd16c12c9cba493"><code>54f7686</code></a> feat(span-streaming): Add more attrs to segment spans (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6432">#6432</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/7e27e34fd05b337574a93352c773b1d4a2885d13"><code>7e27e34</code></a> feat(openai): Support span streaming (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6431">#6431</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/139a9a176f732ba7f1456510c2f0f00930e38558"><code>139a9a1</code></a> feat: Add <code>server.address</code> to transformed spans when `stream_gen_ai_spans=Tru...</li> <li><a href="https://github.com/getsentry/sentry-python/commit/7bf1d6ee4ba0069e074c462c256f8a88b8b450a0"><code>7bf1d6e</code></a> fix(openai_agents): Handle starting_agent keyword argument in runner patches ...</li> <li><a href="https://github.com/getsentry/sentry-python/commit/5662d86fd9ac8ddf635c0da489b275093c0feb08"><code>5662d86</code></a> test(langchain): Deduplicate by removing <code>node.callspec.id</code> matching (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6426">#6426</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/fb9def2f53ec65bbf70d1d8a63acb1a6a2f4e195"><code>fb9def2</code></a> feat(huey): Migrate Huey integration to spans-first tracing (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6399">#6399</a>)</li> <li>Additional commits viewable in <a href="https://github.com/getsentry/sentry-python/compare/2.60.0...2.61.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
8aa1bb1c36 |
Bump pytest-asyncio from 1.3.0 to 1.4.0 in /backend (#1723)
Bumps [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) from 1.3.0 to 1.4.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-asyncio/releases">pytest-asyncio's releases</a>.</em></p> <blockquote> <h2>pytest-asyncio v1.4.0</h2> <h1><a href="https://github.com/pytest-dev/pytest-asyncio/tree/1.4.0">1.4.0</a> - 2026-05-26</h1> <h2>Deprecated</h2> <ul> <li>Overriding the <em>event_loop_policy</em> fixture is deprecated. Use the <code>pytest_asyncio_loop_factories</code> hook instead. (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1419">#1419</a>)</li> </ul> <h2>Added</h2> <ul> <li> <p>Added the <code>pytest_asyncio_loop_factories</code> hook to parametrize asyncio tests with custom event loop factories.</p> <p>The hook returns a mapping of factory names to loop factories, and <code>pytest.mark.asyncio(loop_factories=[...])</code> selects a subset of configured factories per test. When a single factory is configured, test names are unchanged.</p> <p>Synchronous <code>@pytest_asyncio.fixture</code> functions now see the correct event loop when custom loop factories are configured, even when test code disrupts the current event loop (e.g., via <code>asyncio.run()</code> or <code>asyncio.set_event_loop(None)</code>). (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1164">#1164</a>)</p> </li> </ul> <h2>Changed</h2> <ul> <li>Improved the readability of the warning message that is displayed when <code>asyncio_default_fixture_loop_scope</code> is unset (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1298">#1298</a>)</li> <li>Only import <code>asyncio.AbstractEventLoopPolicy</code> for type checking to avoid raising a DeprecationWarning. (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1394">#1394</a>)</li> <li>Updated minimum supported pytest version to v8.4.0. (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1397">#1397</a>)</li> </ul> <h2>Fixed</h2> <ul> <li>Fixed a <code>ResourceWarning: unclosed event loop</code> warning that could occur when a synchronous test called <code>asyncio.run()</code> or otherwise unset the current event loop after pytest-asyncio had run an async test or fixture. (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/724">#724</a>)</li> </ul> <h2>Notes for Downstream Packagers</h2> <ul> <li>Added dependency on <code>sphinx-tabs >= 3.5</code> to organize documentation examples into tabs. (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1395">#1395</a>)</li> </ul> <h2>pytest-asyncio v1.4.0a2</h2> <h1><a href="https://github.com/pytest-dev/pytest-asyncio/tree/1.4.0a2">1.4.0a2</a> - 2026-05-02</h1> <h2>Deprecated</h2> <ul> <li>Overriding the <em>event_loop_policy</em> fixture is deprecated. Use the <code>pytest_asyncio_loop_factories</code> hook instead. (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1419">#1419</a>)</li> </ul> <h2>Added</h2> <ul> <li> <p>Added the <code>pytest_asyncio_loop_factories</code> hook to parametrize asyncio tests with custom event loop factories.</p> <p>The hook returns a mapping of factory names to loop factories, and <code>pytest.mark.asyncio(loop_factories=[...])</code> selects a subset of configured factories per test. When a single factory is configured, test names are unchanged on pytest 8.4+.</p> <p>Synchronous <code>@pytest_asyncio.fixture</code> functions now see the correct event loop when custom loop factories are configured, even when test code disrupts the current event loop (e.g., via <code>asyncio.run()</code> or <code>asyncio.set_event_loop(None)</code>). (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1164">#1164</a>)</p> </li> </ul> <h2>Changed</h2> <ul> <li>Improved the readability of the warning message that is displayed when <code>asyncio_default_fixture_loop_scope</code> is unset (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1298">#1298</a>)</li> <li>Only import <code>asyncio.AbstractEventLoopPolicy</code> for type checking to avoid raising a DeprecationWarning. (<a href="https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1394">#1394</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/6e14cd2af9292dca1fa2b027a06bbc40b0e0e425"><code>6e14cd2</code></a> chore: Prepare release of v1.4.0.</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/4b900fb5d0c30949c574e55dd904ee179f858a5e"><code>4b900fb</code></a> Build(deps): Bump codecov/codecov-action from 6.0.0 to 6.0.1</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/ab9f63245094865c42c940a34af724b0dec1debf"><code>ab9f632</code></a> Build(deps): Bump zipp from 3.23.1 to 4.1.0</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/a56fc77ecd59f781d8471b0f6a82bf58e08c95fa"><code>a56fc77</code></a> Build(deps): Bump hypothesis from 6.152.6 to 6.152.8</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/e8bae9bc1f197731fc1a210c0da557af7b698e6d"><code>e8bae9b</code></a> Build(deps): Bump requests from 2.34.0 to 2.34.2</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/fc433402c570fd36a7a227ef4bc3abd4579299de"><code>fc43340</code></a> Build(deps): Bump idna from 3.14 to 3.15</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/762eaf5033b798b965c92afdbb2cebefa8fc3a8b"><code>762eaf5</code></a> Build(deps): Bump jaraco-functools from 4.4.0 to 4.5.0</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/b62e2228c80070977baf6b77ba89d5c148af920f"><code>b62e222</code></a> Build(deps): Bump click from 8.3.3 to 8.4.0</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/919044700627889d25ca63b6e7a3bc785f3137eb"><code>9190447</code></a> Build(deps): Bump pydantic from 2.13.3 to 2.13.4</li> <li><a href="https://github.com/pytest-dev/pytest-asyncio/commit/82a393c5e31b6ebbbd8ec2a8dafc5f35b9cf1236"><code>82a393c</code></a> ci: Remove unnecessary debug output.</li> <li>Additional commits viewable in <a href="https://github.com/pytest-dev/pytest-asyncio/compare/v1.3.0...v1.4.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
1d5e71fc20 |
Bump starlette from 1.0.1 to 1.1.0 in /backend (#1720)
Bumps [starlette](https://github.com/Kludex/starlette) from 1.0.1 to 1.1.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/starlette/releases">starlette's releases</a>.</em></p> <blockquote> <h2>Version 1.1.0</h2> <h2>What's Changed</h2> <ul> <li>Use <code>"application/octet-stream"</code> as the <code>FileResponse</code> media type fallback by <a href="https://github.com/ATOM00blue"><code>@ATOM00blue</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3283">Kludex/starlette#3283</a></li> <li>Only dispatch standard HTTP verbs in <code>HTTPEndpoint</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3286">Kludex/starlette#3286</a></li> <li>Reject absolute paths in <code>StaticFiles.lookup_path</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3287">Kludex/starlette#3287</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/ATOM00blue"><code>@ATOM00blue</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/starlette/pull/3283">Kludex/starlette#3283</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/starlette/compare/1.0.1...1.1.0">https://github.com/Kludex/starlette/compare/1.0.1...1.1.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/starlette/blob/main/docs/release-notes.md">starlette's changelog</a>.</em></p> <blockquote> <h2>1.1.0 (May 23, 2026)</h2> <h4>Added</h4> <ul> <li>Use <code>"application/octet-stream"</code> as the <code>FileResponse</code> media type fallback <a href="https://redirect.github.com/encode/starlette/pull/3283">#3283</a>.</li> </ul> <h4>Fixed</h4> <ul> <li>Only dispatch standard HTTP verbs in <code>HTTPEndpoint</code> <a href="https://redirect.github.com/encode/starlette/pull/3286">#3286</a>.</li> <li>Reject absolute paths in <code>StaticFiles.lookup_path</code> <a href="https://redirect.github.com/encode/starlette/pull/3287">#3287</a>.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/starlette/commit/a4ff83b1aacaf8955e241dd00444c27823be163a"><code>a4ff83b</code></a> Version 1.1.0 (<a href="https://redirect.github.com/Kludex/starlette/issues/3289">#3289</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/fd53168a7767b6b55ba5af787fd88f49e33cabc5"><code>fd53168</code></a> Reject absolute paths in <code>StaticFiles.lookup_path</code> (<a href="https://redirect.github.com/Kludex/starlette/issues/3287">#3287</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/e3f972225adb1d84b80dba132f520cc24cb84229"><code>e3f9722</code></a> Only dispatch standard HTTP verbs in <code>HTTPEndpoint</code> (<a href="https://redirect.github.com/Kludex/starlette/issues/3286">#3286</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/348f86dc92fed6e3c0314154e38deec90a6bcabd"><code>348f86d</code></a> Use <code>"application/octet-stream"</code> as the <code>FileResponse</code> media type fallback (#...</li> <li>See full diff in <a href="https://github.com/Kludex/starlette/compare/1.0.1...1.1.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
611dfdbcfc |
Bump pydantic-settings from 2.14.0 to 2.14.2 in /backend (#1719)
Bumps [pydantic-settings](https://github.com/pydantic/pydantic-settings) from 2.14.0 to 2.14.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pydantic/pydantic-settings/releases">pydantic-settings's releases</a>.</em></p> <blockquote> <h2>v2.14.2</h2> <h2>What's Changed</h2> <p>This is a security patch release.</p> <ul> <li>Prevent <code>NestedSecretsSettingsSource</code> from following symlinks outside <code>secrets_dir</code> by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/889">pydantic/pydantic-settings#889</a></li> <li>Prepare release 2.14.2 by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/890">pydantic/pydantic-settings#890</a></li> </ul> <h3>Security</h3> <p>Fixes <a href="https://github.com/pydantic/pydantic-settings/security/advisories/GHSA-4xgf-cpjx-pc3j">GHSA-4xgf-cpjx-pc3j</a>: <code>NestedSecretsSettingsSource</code> with <code>secrets_nested_subdir=True</code> could follow a symbolic link inside <code>secrets_dir</code> pointing outside it, reading out-of-tree files into settings values and bypassing the <code>secrets_dir_max_size</code> cap. Affected versions: <code>>= 2.12.0, < 2.14.2</code>.</p> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic-settings/compare/v2.14.1...v2.14.2">https://github.com/pydantic/pydantic-settings/compare/v2.14.1...v2.14.2</a></p> <h2>v2.14.1</h2> <h2>What's Changed</h2> <ul> <li>Bump the python-packages group with 4 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/850">pydantic/pydantic-settings#850</a></li> <li>Bump the python-packages group with 5 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/854">pydantic/pydantic-settings#854</a></li> <li>Bump the github-actions group with 3 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/853">pydantic/pydantic-settings#853</a></li> <li>Bump the python-packages group with 2 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/856">pydantic/pydantic-settings#856</a></li> <li>Fix field named <code>cls</code> conflicting with classmethod parameter by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/858">pydantic/pydantic-settings#858</a></li> <li>Prepare release 2.14.1 by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/859">pydantic/pydantic-settings#859</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic-settings/compare/v2.14.0...v2.14.1">https://github.com/pydantic/pydantic-settings/compare/v2.14.0...v2.14.1</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pydantic/pydantic-settings/commit/d703bd717e5e07439fa89da2245eee6139413e9e"><code>d703bd7</code></a> Prepare release 2.14.2 (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/890">#890</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/e95c30bec8cfaee88ee275138c064aea97a25bdf"><code>e95c30b</code></a> Prepare release 2.14.1 (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/859">#859</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/0c8734581b6cf70a995afad603ac456631d00621"><code>0c87345</code></a> Fix field named <code>cls</code> conflicting with classmethod parameter (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/858">#858</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/7bd0072795a800065b42210b6dca90fc9b83daf7"><code>7bd0072</code></a> Bump the python-packages group with 2 updates (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/856">#856</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/b03e573d017ed48e1c2774a5e0b715db9766c76b"><code>b03e573</code></a> Bump the github-actions group with 3 updates (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/853">#853</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/eaa3b434938411ec8a3717ea646614561e713f51"><code>eaa3b43</code></a> Bump the python-packages group with 5 updates (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/854">#854</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/9f95615c24c6813c1d7d203576581a79cb6d9e8e"><code>9f95615</code></a> Bump the python-packages group with 4 updates (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/850">#850</a>)</li> <li>See full diff in <a href="https://github.com/pydantic/pydantic-settings/compare/v2.14.0...v2.14.2">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/evroon/bracket/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
9077b2d0a0 |
Bump uvicorn from 0.46.0 to 0.47.0 in /backend (#1718)
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.46.0 to 0.47.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/releases">uvicorn's releases</a>.</em></p> <blockquote> <h2>Version 0.47.0</h2> <h2>What's Changed</h2> <ul> <li>Eagerly import the ASGI app in the parent process by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2919">Kludex/uvicorn#2919</a></li> <li>Add <code>ssl_context_factory</code> for custom <code>SSLContext</code> configuration by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2920">Kludex/uvicorn#2920</a></li> <li>Treat <code>fd=0</code> as a valid file descriptor with reload/workers by <a href="https://github.com/eltoder"><code>@eltoder</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2927">Kludex/uvicorn#2927</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.46.0...0.47.0">https://github.com/Kludex/uvicorn/compare/0.46.0...0.47.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md">uvicorn's changelog</a>.</em></p> <blockquote> <h2>0.47.0 (May 14, 2026)</h2> <h3>Added</h3> <ul> <li>Add <code>ssl_context_factory</code> for custom <code>SSLContext</code> configuration (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2920">#2920</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Eagerly import the ASGI app in the parent process (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2919">#2919</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Treat <code>fd=0</code> as a valid file descriptor with reload/workers (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2927">#2927</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/uvicorn/commit/479a2c0c89186714f1aac52aecdebebf271395ac"><code>479a2c0</code></a> Version 0.47.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2937">#2937</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/89347fd166ebedf98fb3f806ce8ea44e93b1c2b5"><code>89347fd</code></a> Add 7-day cooldown for dependency resolution via uv exclude-newer (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2936">#2936</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/767315b38ae509cee9fe8ee9d09f6da920536096"><code>767315b</code></a> Drop unused contents/actions permissions from zizmor workflow (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2935">#2935</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/f25ee43e68a9678453cbca99ad96f1a447ff34af"><code>f25ee43</code></a> chore(deps): bump urllib3 from 2.6.3 to 2.7.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2933">#2933</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/8782666189a3d36c978de5698620db705659bf44"><code>8782666</code></a> Fix typo in <code>docs/deployment/index.md</code>. (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2932">#2932</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/ad5ff87c869e8a34e9b04fcd5ca38d65c526893c"><code>ad5ff87</code></a> Treat <code>fd=0</code> as a valid file descriptor with reload/workers (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2927">#2927</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/6761b2c8f9272fa0e908d0b9cdcb3cb0aa11382f"><code>6761b2c</code></a> Remove Hugging Face sponsor block from docs (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2923">#2923</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/438f64834de00708a9bb3548a36090e7a924ad84"><code>438f648</code></a> Surface sponsors on welcome page and sidebar (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2921">#2921</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/10ddc6dd296cb6e432a00835abe27f1c822373c1"><code>10ddc6d</code></a> Add <code>ssl_context_factory</code> for custom <code>SSLContext</code> configuration (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2920">#2920</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/b499bc45101d920e691e384025d728507215d4d1"><code>b499bc4</code></a> Eagerly import the ASGI app in the parent process (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2919">#2919</a>)</li> <li>See full diff in <a href="https://github.com/Kludex/uvicorn/compare/0.46.0...0.47.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
8c80246c97 |
Bump mypy from 2.0.0 to 2.1.0 in /backend (#1717)
Bumps [mypy](https://github.com/python/mypy) from 2.0.0 to 2.1.0. <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> <h1>Mypy Release Notes</h1> <h2>Next Release</h2> <h2>Mypy 2.1</h2> <p>We’ve just uploaded mypy 2.1.0 to the Python Package Index (<a href="https://pypi.org/project/mypy/">PyPI</a>). Mypy is a static type checker for Python. This release includes new features, performance improvements and bug fixes. You can install it as follows:</p> <pre><code>python3 -m pip install -U mypy </code></pre> <p>You can read the full documentation for this release on <a href="http://mypy.readthedocs.io">Read the Docs</a>.</p> <h3>librt.vecs: Fast Growable Array Type for Mypyc</h3> <p>The new <code>librt.vecs</code> module provides an efficient growable array type <code>vec</code> that is optimized for mypyc use. It provides fast, packed arrays with integer and floating point value types, which can be <strong>several times faster</strong> than <code>list</code>, and tens of times faster than <code>array.array</code> in code compiled using mypyc. It also supports nested <code>vec</code> objects and non-value-type items, such as <code>vec[vec[str]]</code>.</p> <p>Refer to the <a href="https://mypyc.readthedocs.io/en/latest/librt_vecs.html">documentation</a> for the details.</p> <p>Contributed by Jukka Lehtosalo.</p> <h3>librt.random: Fast Pseudo-Random Number Generation</h3> <p>The new <code>librt.random</code> module provides fast pseudo-random number generation that is optimized for code compiled using mypyc. It can be 3x to 10x faster than the stdlib <code>random</code> module in compiled code.</p> <p>Refer to the <a href="https://mypyc.readthedocs.io/en/latest/librt_random.html">documentation</a> for the details.</p> <p>Contributed by Jukka Lehtosalo (PR <a href="https://redirect.github.com/python/mypy/pull/21433">21433</a>).</p> <h3>Mypyc Improvements</h3> <ul> <li>Enable incremental self-compilation (Vaggelis Danias, PR <a href="https://redirect.github.com/python/mypy/pull/21369">21369</a>)</li> <li>Make compilation order with multiple files consistent (Piotr Sawicki, PR <a href="https://redirect.github.com/python/mypy/pull/21419">21419</a>)</li> <li>Fix crash on accessing <code>StopAsyncIteration</code> (Piotr Sawicki, PR <a href="https://redirect.github.com/python/mypy/pull/21406">21406</a>)</li> <li>Fix incremental compilation with <code>separate</code> flag (Vaggelis Danias, PR <a href="https://redirect.github.com/python/mypy/pull/21299">21299</a>)</li> </ul> <h3>Fixes to Crashes</h3> <ul> <li>Fix crash on partial type with <code>--allow-redefinition</code> and <code>global</code> declaration (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21428">21428</a>)</li> <li>Fix broken awaitable generator patching (Ivan Levkivskyi, PR <a href="https://redirect.github.com/python/mypy/pull/21435">21435</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/python/mypy/commit/c1c336d7e34eb313080c79b156518c58d27c7234"><code>c1c336d</code></a> Remove +dev from version</li> <li><a href="https://github.com/python/mypy/commit/74df14b7cbf08140236aa45bbb7f42219b0b1df7"><code>74df14b</code></a> Add changelog for mypy 2.1 (<a href="https://redirect.github.com/python/mypy/issues/21464">#21464</a>)</li> <li><a href="https://github.com/python/mypy/commit/022d9bc96f86c40f338a5cf150f1806cc8f300ff"><code>022d9bc</code></a> Revert "TypeForm: Enable by default (<a href="https://redirect.github.com/python/mypy/issues/21262">#21262</a>)"</li> <li><a href="https://github.com/python/mypy/commit/8826288214f1cb31496e610667481221e025359c"><code>8826288</code></a> [mypyc] Document librt.random (<a href="https://redirect.github.com/python/mypy/issues/21463">#21463</a>)</li> <li><a href="https://github.com/python/mypy/commit/3f4067b699dbe52d08e42ef3b3ebfdebdc06bd96"><code>3f4067b</code></a> Bump librt version to 0.11.0 (<a href="https://redirect.github.com/python/mypy/issues/21458">#21458</a>)</li> <li><a href="https://github.com/python/mypy/commit/2b1eb58a250c5f1eb4ef5fb1f312ff528c5a1d4e"><code>2b1eb58</code></a> [mypyc] Enable incremental self-compilation (<a href="https://redirect.github.com/python/mypy/issues/21369">#21369</a>)</li> <li><a href="https://github.com/python/mypy/commit/8152f4af3f6c03beaf2660026240f0fdce7feecc"><code>8152f4a</code></a> Respect file config comments for stale modules (<a href="https://redirect.github.com/python/mypy/issues/21444">#21444</a>)</li> <li><a href="https://github.com/python/mypy/commit/116d60bdd3fdfe8d97c6afe99370910db56f1b92"><code>116d60b</code></a> Fix nondeterminism from nonassociativity of overload joins (<a href="https://redirect.github.com/python/mypy/issues/21455">#21455</a>)</li> <li><a href="https://github.com/python/mypy/commit/6c4af8e42110cea3f84bc02add2ca7b89c268210"><code>6c4af8e</code></a> Fix function call message change for small number of args (<a href="https://redirect.github.com/python/mypy/issues/21432">#21432</a>)</li> <li><a href="https://github.com/python/mypy/commit/4b8fdcaf24032592510e8f15421fb32d82a71800"><code>4b8fdca</code></a> [mypyc] Add librt.random module (<a href="https://redirect.github.com/python/mypy/issues/21433">#21433</a>)</li> <li>Additional commits viewable in <a href="https://github.com/python/mypy/compare/v2.0.0...v2.1.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
284d2eceb6 |
Bump pyrefly from 0.64.1 to 1.0.0 in /backend (#1716)
Bumps [pyrefly](https://github.com/facebook/pyrefly) from 0.64.1 to 1.0.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/facebook/pyrefly/releases">pyrefly's releases</a>.</em></p> <blockquote> <h2>Pyrefly v1.0.0</h2> <p><strong>Status: STABLE</strong> <em>Release date: 12 May 2026</em></p> <h2>Pyrefly v1.0.0 is here!</h2> <p>We're thrilled to announce that Pyrefly has reached its stable 1.0.0 release! Since our <a href="https://github.com/facebook/pyrefly/releases/tag/0.42.0">beta release</a> in November 2025, we've fixed hundreds of bugs, improved performance, and added lots of new functionality. Pyrefly is already the default type checker for Instagram at Meta and has been adopted by other large production codebases like PyTorch and JAX. Today, we're making it official: Pyrefly is production ready.</p> <p>This would not have been possible without our amazing open-source community. To everyone who filed GitHub issues, submitted pull requests, gave us feedback at conferences, or joined us on Discord: thank you. Your contributions shaped this release.</p> <p>These release notes cover the major highlights since our beta release. For the full history, see our <a href="https://github.com/facebook/pyrefly/releases">past weekly release notes</a>.</p> <hr /> <h2>Performance Improvements</h2> <p>We've continued to push Pyrefly's performance since the <a href="https://pyrefly.org/blog/2026/02/06/performance-improvements/">speed improvements we shared in February</a>. Since beta:</p> <ul> <li><strong>2–125x faster updated diagnostics</strong> after saving a file (no, that’s not a typo!). Thanks to fine-grained dependency tracking and streaming diagnostics, updates now consistently arrive in milliseconds</li> <li><strong>20–36% faster full type checking</strong> on large projects like PyTorch and Pandas</li> <li><strong>2–3x faster initial indexing</strong> when Pyrefly first scans your project</li> <li><strong>40–60% less memory usage</strong> during both indexing and incremental type checking</li> </ul> <p>(Tested on an M4 Macbook Pro using open-source benchmarks from <a href="https://github.com/lolpack/type_coverage_py">type_coverage_py</a> and <a href="https://github.com/astral-sh/ruff/tree/e990dfd069fceef96f797b46161ef78862608449/scripts/ty_benchmark">ty_benchmark</a>.)</p> <p>Compare the performance of Pyrefly and other Python type checkers on our regularly updated <a href="https://python-type-checking.com/typecheck_benchmark/">benchmarking suite</a>, which runs against 53 popular Python packages.</p> <hr /> <h2>Configuration Presets</h2> <p>A new <code>preset</code> configuration option provides named bundles of error severities and behavior settings.</p> <table> <thead> <tr> <th align="left">Preset</th> <th align="left">Description</th> </tr> </thead> <tbody> <tr> <td align="left"><code>off</code></td> <td align="left">Silences all diagnostics. Useful for IDE-only users or if you want total control of which errors are enabled.</td> </tr> <tr> <td align="left"><code>basic</code></td> <td align="left">Low-noise, high-confidence diagnostics only (syntax errors, missing imports, unknown names, etc.). Ideal for unconfigured projects or IDE-first users.</td> </tr> <tr> <td align="left"><code>legacy</code></td> <td align="left">For codebases migrating from mypy. Disables checks mypy doesn't have. <code>pyrefly init</code> now emits this preset automatically when migrating from a mypy config.</td> </tr> <tr> <td align="left"><code>default</code></td> <td align="left">The standard Pyrefly experience. Equivalent to having no preset.</td> </tr> <tr> <td align="left"><code>strict</code></td> <td align="left">Enables additional strict checks on top of the <code>default</code> preset. For users who want to avoid <code>Any</code> types in their codebase.</td> </tr> </tbody> </table> <p>See the <a href="https://pyrefly.org/en/docs/configuration/#preset">configuration docs</a> for details.</p> <hr /> <h2>Onboarding Experience</h2> <p>We’ve made improvements to the out-of-the-box experience for projects without a <code>pyrefly.toml</code>.</p> <ul> <li><strong>Automatic config synthesis</strong> — if you have a mypy or pyright config, Pyrefly automatically migrates your settings and synthesizes an appropriate in-memory Pyrefly config. (This is the same migration that <code>pyrefly init</code> would commit to disk.)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/facebook/pyrefly/commit/2362c071caa576f9112781b5571f9e283cd52920"><code>2362c07</code></a> Bump to version 1.0.0 with release notes</li> <li><a href="https://github.com/facebook/pyrefly/commit/471bb8316cf40e9d29cbc79d5c701a7dec3ab6b5"><code>471bb83</code></a> Prep README.md and pyproject.toml for V1</li> <li><a href="https://github.com/facebook/pyrefly/commit/f2c6df4c66c726af4c7603272da47b65d91d4d4c"><code>f2c6df4</code></a> Use vanity URLs for unconfigured-config upsell</li> <li><a href="https://github.com/facebook/pyrefly/commit/d5bf386fd24f8969506f2edd0e06c3896962dbce"><code>d5bf386</code></a> Fix TSP extra IPC connection shutdown hang (<a href="https://redirect.github.com/facebook/pyrefly/issues/3287">#3287</a>)</li> <li><a href="https://github.com/facebook/pyrefly/commit/e0a91be41640e70e0cd45a57eae98eecf86459a4"><code>e0a91be</code></a> do not send snapshotchanged to extra connections</li> <li><a href="https://github.com/facebook/pyrefly/commit/3df562c8165ea2ac69b389eb1552f9dbf5c18573"><code>3df562c</code></a> extract TypeErrorDisplayStatus into its own module</li> <li>See full diff in <a href="https://github.com/facebook/pyrefly/compare/0.64.1...1.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
0de812c8b9 |
Bump sentry-sdk from 2.59.0 to 2.60.0 in /backend (#1715)
Bumps [sentry-sdk](https://github.com/getsentry/sentry-python) from 2.59.0 to 2.60.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/releases">sentry-sdk's releases</a>.</em></p> <blockquote> <h2>2.60.0</h2> <p>Adds a new <code>stream_gen_ai_spans</code> option that controls how <code>gen_ai</code> spans are sent to Sentry. When set, the SDK extracts all <code>gen_ai</code> spans out of a transaction and sends them as v2 envelope items.</p> <p>Enable this option if <code>gen_ai</code> spans are being dropped because the transaction payload exceeds size limits.</p> <pre lang="python"><code>import sentry_sdk <p>sentry_sdk.init(<br /> dsn='https://<a href="mailto:examplePublicKey@o0.ingest.sentry.io">examplePublicKey@o0.ingest.sentry.io</a>/0',<br /> stream_gen_ai_spans=True,<br /> )<br /> </code></pre></p> <h3>New Features ✨</h3> <ul> <li>(asyncpg) Add cursor span support via BaseCursor method patching by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6252">#6252</a></li> <li>(integrations) Pass along the conversation ID for openai <code>responses</code> calls by <a href="https://github.com/constantinius"><code>@constantinius</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6199">#6199</a></li> <li>(wsgi,asgi) Introduce substitute values for filtered fields in span-streaming mode by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6178">#6178</a></li> <li>Remove truncation when <code>stream_gen_ai_spans</code> is enabled by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6260">#6260</a></li> <li>Add option to send GenAI spans in the new span format by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6079">#6079</a></li> </ul> <h3>Bug Fixes 🐛</h3> <h4>Openai</h4> <ul> <li>Guard against <code>choices=None</code> by <a href="https://github.com/cla7aye15I4nd"><code>@cla7aye15I4nd</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6216">#6216</a></li> <li>Stop setting transaction status when child span fails by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6192">#6192</a></li> <li>Only finish relevant spans in Responses patches by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6191">#6191</a></li> <li>Only finish relevant spans in Chat Completions patches by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6190">#6190</a></li> </ul> <h4>Other</h4> <ul> <li>(stdlib) Instrument response body read for chunked HTTP responses by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6202">#6202</a></li> <li>(typing) Add <code>@sentry_sdk.traces.trace</code> overloads to fix typing by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6236">#6236</a></li> <li>Use proto version 2 to fix backfilled user agent and IP by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6256">#6256</a></li> <li>Make sure <code>http.server</code> spans are segments by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6230">#6230</a></li> <li>Handle mypy 2.0 related failures by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6218">#6218</a></li> </ul> <h3>Internal Changes 🔧</h3> <h4>Django</h4> <ul> <li>Check transaction annotations on transaction events by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6251">#6251</a></li> <li>Reload middleware on test teardown by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6249">#6249</a></li> </ul> <h4>Openai</h4> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md">sentry-sdk's changelog</a>.</em></p> <blockquote> <h2>2.60.0</h2> <p>Adds a new <code>stream_gen_ai_spans</code> option that controls how <code>gen_ai</code> spans are sent to Sentry. When set, the SDK extracts all <code>gen_ai</code> spans out of a transaction and sends them as v2 envelope items.</p> <p>Enable this option if <code>gen_ai</code> spans are being dropped because the transaction payload exceeds size limits.</p> <pre lang="python"><code>import sentry_sdk <p>sentry_sdk.init(<br /> dsn='https://<a href="mailto:examplePublicKey@o0.ingest.sentry.io">examplePublicKey@o0.ingest.sentry.io</a>/0',<br /> stream_gen_ai_spans=True,<br /> )<br /> </code></pre></p> <h3>New Features ✨</h3> <ul> <li>(asyncpg) Add cursor span support via BaseCursor method patching by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6252">#6252</a></li> <li>(integrations) Pass along the conversation ID for openai <code>responses</code> calls by <a href="https://github.com/constantinius"><code>@constantinius</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6199">#6199</a></li> <li>(wsgi,asgi) Introduce substitute values for filtered fields in span-streaming mode by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6178">#6178</a></li> <li>Remove truncation when <code>stream_gen_ai_spans</code> is enabled by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6260">#6260</a></li> <li>Add option to send GenAI spans in the new span format by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6079">#6079</a></li> </ul> <h3>Bug Fixes 🐛</h3> <h4>Openai</h4> <ul> <li>Guard against <code>choices=None</code> by <a href="https://github.com/cla7aye15I4nd"><code>@cla7aye15I4nd</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6216">#6216</a></li> <li>Stop setting transaction status when child span fails by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6192">#6192</a></li> <li>Only finish relevant spans in Responses patches by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6191">#6191</a></li> <li>Only finish relevant spans in Chat Completions patches by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6190">#6190</a></li> </ul> <h4>Other</h4> <ul> <li>(stdlib) Instrument response body read for chunked HTTP responses by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6202">#6202</a></li> <li>(typing) Add <code>@sentry_sdk.traces.trace</code> overloads to fix typing by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6236">#6236</a></li> <li>Use proto version 2 to fix backfilled user agent and IP by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6256">#6256</a></li> <li>Make sure <code>http.server</code> spans are segments by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6230">#6230</a></li> <li>Handle mypy 2.0 related failures by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6218">#6218</a></li> </ul> <h3>Internal Changes 🔧</h3> <h4>Django</h4> <ul> <li>Check transaction annotations on transaction events by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6251">#6251</a></li> <li>Reload middleware on test teardown by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6249">#6249</a></li> </ul> <h4>Openai</h4> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/getsentry/sentry-python/commit/e30caaa97793fd37b782d8c48b7727a43428fafd"><code>e30caaa</code></a> Update CHANGELOG.md</li> <li><a href="https://github.com/getsentry/sentry-python/commit/d31ac85a92def5d6f2395fe2bfa8a9133c581323"><code>d31ac85</code></a> release: 2.60.0</li> <li><a href="https://github.com/getsentry/sentry-python/commit/fcb93051c5b85f28ee6dc623dd67736d430ef432"><code>fcb9305</code></a> feat: Remove truncation when <code>stream_gen_ai_spans</code> is enabled (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6260">#6260</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/253a4d42b13bb5b54cb3b623a32d9fc99639b226"><code>253a4d4</code></a> feat: Add option to send GenAI spans in the new span format (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6079">#6079</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/619d803d82f7bbf2a15a80432334c863e4c206eb"><code>619d803</code></a> test(langchain): Inline global state (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6261">#6261</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/f92c8036a8ed166ab3be8a48f6344fd98d1761dd"><code>f92c803</code></a> Revert "fix: Work around compromised transitive dependency (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6257">#6257</a>)" (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6262">#6262</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/7a303dcbf0e4bc6aa701446d79e847d56db26137"><code>7a303dc</code></a> Add option to drop scrubbed user IP addresses (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6241">#6241</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/edaa6d6d142e430e1dd0a1097e0b77506cf159e9"><code>edaa6d6</code></a> feat(pymongo): Add span streaming support (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6253">#6253</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/0e47eadedea808a4ca7865a480552872208be890"><code>0e47ead</code></a> feat(asyncpg): Add cursor span support via BaseCursor method patching (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6252">#6252</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/17cc8c7b2c31c2df130418bb49137814d4d35f7b"><code>17cc8c7</code></a> fix: Use proto version 2 to fix backfilled user agent and IP (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6256">#6256</a>)</li> <li>Additional commits viewable in <a href="https://github.com/getsentry/sentry-python/compare/2.59.0...2.60.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
d9c06d0d5d |
Bump click from 8.3.0 to 8.4.0 in /backend (#1714)
Bumps [click](https://github.com/pallets/click) from 8.3.0 to 8.4.0. <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.4.0</h2> <p>This is the Click 8.4.0 feature release. A feature release may include new features, remove previously deprecated code, add new deprecation, or introduce potentially breaking changes.</p> <p>We encourage everyone to upgrade. You can read more about our <a href="https://palletsprojects.com/versions">Version Support Policy</a> on our website.</p> <p>PyPI: <a href="https://pypi.org/project/click/8.4.0/">https://pypi.org/project/click/8.4.0/</a> Changes: <a href="https://click.palletsprojects.com/page/changes/#version-8-4-0">https://click.palletsprojects.com/page/changes/#version-8-4-0</a> Milestone <a href="https://github.com/pallets/click/milestone/30">https://github.com/pallets/click/milestone/30</a></p> <ul> <li> <p><code>ParamType</code> typing improvements. <a href="https://redirect.github.com/pallets/click/issues/3371">#3371</a></p> <ul> <li>:class:<code>ParamType</code> is now a generic abstract base class, parameterized by its converted value type.</li> <li>:meth:<code>~ParamType.convert</code> return types are narrowed on all concrete types (<code>str</code> for :class:<code>STRING</code>, <code>int</code> for :class:<code>INT</code>, etc.).</li> <li>:meth:<code>~ParamType.to_info_dict</code> returns specific :class:<code>~typing.TypedDict</code> subclasses instead of <code>dict[str, Any]</code>.</li> <li>:class:<code>CompositeParamType</code> and the number-range base are now generic with abstract methods.</li> </ul> </li> <li> <p>Refactor <code>convert_type</code> to extract type inference into a private <code>_guess_type</code> helper, and add :func:<code>typing.overload</code> signatures. <a href="https://redirect.github.com/pallets/click/issues/3372">#3372</a></p> </li> <li> <p><code>Parameter</code> typing improvements. <a href="https://redirect.github.com/pallets/click/issues/2805">#2805</a></p> <ul> <li>:class:<code>Parameter</code> is now an abstract base class, making explicit that it cannot be instantiated directly.</li> <li>:attr:<code>Parameter.name</code> is now <code>str</code> instead of <code>str | None</code>. When <code>expose_value=False</code>, the name is set to <code>""</code> instead of <code>None</code>.</li> <li>The <code>ctx</code> parameter of :meth:<code>Parameter.get_error_hint</code> is now typed as <code>Context | None</code>, matching the runtime behavior.</li> </ul> </li> <li> <p>Split string values from <code>default_map</code> for parameters with <code>nargs > 1</code> or :class:<code>Tuple</code> type, matching environment variable behavior. <a href="https://redirect.github.com/pallets/click/issues/2745">#2745</a> <a href="https://redirect.github.com/pallets/click/issues/3364">#3364</a></p> </li> <li> <p>Auto-detect <code>type=UNPROCESSED</code> for <code>flag_value</code> of non-basic types (not <code>str</code>, <code>int</code>, <code>float</code>, or <code>bool</code>), so programmer-provided Python objects like classes and enum members are passed through unchanged instead of being stringified. Previously <code>type=click.UNPROCESSED</code> had to be set explicitly. <a href="https://redirect.github.com/pallets/click/issues/2012">#2012</a> <a href="https://redirect.github.com/pallets/click/issues/3363">#3363</a></p> </li> <li> <p>The error hint now uses <code>Command.get_help_option_names</code> to pick non-shadowed help option names, so <code>Try '... -h'</code> no longer points to a subcommand option that shadows <code>-h</code>. All surviving names are shown (<code>-h/--help</code>). <a href="https://redirect.github.com/pallets/click/issues/2790">#2790</a> <a href="https://redirect.github.com/pallets/click/issues/3208">#3208</a></p> </li> <li> <p>Fix readline functionality on non-Windows platforms. Prompt text is now passed directly to readline instead of being printed separately, allowing proper backspace, line editing, and line wrapping behavior. <a href="https://redirect.github.com/pallets/click/issues/2968">#2968</a></p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pallets/click/blob/main/CHANGES.md">click's changelog</a>.</em></p> <blockquote> <h2>Version 8.4.0</h2> <p>Released 2026-05-17</p> <ul> <li> <p>{class}<code>ParamType</code> typing improvements. {pr}<code>3371</code></p> <ul> <li>{class}<code>ParamType</code> is now a generic abstract base class, parameterized by its converted value type.</li> <li>{meth}<code>~ParamType.convert</code> return types are narrowed on all concrete types (<code>str</code> for {class}<code>STRING</code>, <code>int</code> for {class}<code>INT</code>, etc.).</li> <li>{meth}<code>~ParamType.to_info_dict</code> returns specific {class}<code>~typing.TypedDict</code> subclasses instead of <code>dict[str, Any]</code>.</li> <li>{class}<code>CompositeParamType</code> and the number-range base are now generic with abstract methods.</li> </ul> </li> <li> <p>Refactor <code>convert_type</code> to extract type inference into a private <code>_guess_type</code> helper, and add {func}<code>typing.overload</code> signatures. {pr}<code>3372</code></p> </li> <li> <p>{class}<code>Parameter</code> typing improvements. {pr}<code>2805</code></p> <ul> <li>{class}<code>Parameter</code> is now an abstract base class, making explicit that it cannot be instantiated directly.</li> <li>{attr}<code>Parameter.name</code> is now <code>str</code> instead of <code>str | None</code>. When <code>expose_value=False</code>, the name is set to <code>""</code> instead of <code>None</code>.</li> <li>The <code>ctx</code> parameter of {meth}<code>Parameter.get_error_hint</code> is now typed as <code>Context | None</code>, matching the runtime behavior.</li> </ul> </li> <li> <p>Split string values from <code>default_map</code> for parameters with <code>nargs > 1</code> or {class}<code>Tuple</code> type, matching environment variable behavior. {issue}<code>2745</code> {pr}<code>3364</code></p> </li> <li> <p>Auto-detect <code>type=UNPROCESSED</code> for <code>flag_value</code> of non-basic types (not <code>str</code>, <code>int</code>, <code>float</code>, or <code>bool</code>), so programmer-provided Python objects like classes and enum members are passed through unchanged instead of being stringified. Previously <code>type=click.UNPROCESSED</code> had to be set explicitly. {issue}<code>2012</code> {pr}<code>3363</code></p> </li> <li> <p>The error hint now uses {meth}<code>Command.get_help_option_names</code> to pick non-shadowed help option names, so <code>Try '... -h'</code> no longer points to a subcommand option that shadows <code>-h</code>. The longest surviving name is shown (<code>--help</code> over <code>-h</code>) for readability. {issue}<code>2790</code> {pr}<code>3208</code></p> </li> <li> <p>Fix readline functionality on non-Windows platforms. Prompt text is now passed directly to readline instead of being printed separately, allowing proper backspace, line editing, and line wrapping behavior. {issue}<code>2968</code> {pr}<code>2969</code></p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pallets/click/commit/41f410fb7528305d7e87c8cfa704f6c2456f57fc"><code>41f410f</code></a> Release 8.4.0</li> <li><a href="https://github.com/pallets/click/commit/e3e69e3bf8d749ac1a632f2ece4d38ec7f6588f5"><code>e3e69e3</code></a> Add type annotations for instance attributes in <code>utils</code> (<a href="https://redirect.github.com/pallets/click/issues/3422">#3422</a>)</li> <li><a href="https://github.com/pallets/click/commit/3bb230dcd5d751f8605b46e9df5a541639d5fd4e"><code>3bb230d</code></a> WIP: Fix <code>HelpFormatter.write_usage</code> producing spurious characters (<a href="https://redirect.github.com/pallets/click/issues/3434">#3434</a>)</li> <li><a href="https://github.com/pallets/click/commit/63274a79d08fdc5c19220696144489f7144a8547"><code>63274a7</code></a> <code>click.get_pager_file</code>: add tests (<a href="https://redirect.github.com/pallets/click/issues/1572">#1572</a> followup) (<a href="https://redirect.github.com/pallets/click/issues/3405">#3405</a>)</li> <li><a href="https://github.com/pallets/click/commit/0551bf53588ae87f462d336f24f853a156fefe3a"><code>0551bf5</code></a> Fix <code>HelpFormatter.write_usage</code> producing spurious characters</li> <li><a href="https://github.com/pallets/click/commit/fc41aa1d0b62494eb93e92ff3929601221e3abf4"><code>fc41aa1</code></a> Apply class-body annotations to <code>KeepOpenFile</code> for consistency</li> <li><a href="https://github.com/pallets/click/commit/b761eda3bad977ec2f485451d85fd8ec365f0bf4"><code>b761eda</code></a> Skip some tests on Windows</li> <li><a href="https://github.com/pallets/click/commit/98302ac4f49e443a48abd3fbb95c86202b89547d"><code>98302ac</code></a> Check <code>PAGER</code> usage, color preservation and edge-cases</li> <li><a href="https://github.com/pallets/click/commit/dbdae170879d460e78963f8af35c5cb9c5b86e89"><code>dbdae17</code></a> Fix documentation</li> <li><a href="https://github.com/pallets/click/commit/1aa2d53d63ff68bf14b35931177aac9270e39713"><code>1aa2d53</code></a> Redesigned tests and get_pager_file branching to be more clear and not set color</li> <li>Additional commits viewable in <a href="https://github.com/pallets/click/compare/8.3.0...8.4.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
3ccaafd6cd |
Bump pyjwt from 2.12.0 to 2.13.0 in /backend (#1712)
Bumps [pyjwt](https://github.com/jpadilla/pyjwt) from 2.12.0 to 2.13.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/jpadilla/pyjwt/releases">pyjwt's releases</a>.</em></p> <blockquote> <h2>2.13.0</h2> <h1>PyJWT 2.13.0 — Security Release</h1> <p>This release bundles five security fixes plus three additional hardening / spec-compliance changes. We recommend all users upgrade.</p> <h2>Security</h2> <ul> <li> <p><strong><a href="https://github.com/jpadilla/pyjwt/security/advisories/GHSA-xgmm-8j9v-c9wx"><code>GHSA-xgmm-8j9v-c9wx</code></a> — JWK JSON accepted as HMAC secret (algorithm confusion).</strong> <code>HMACAlgorithm.prepare_key</code> previously rejected PEM- and SSH-formatted asymmetric keys but did not catch a JWK passed as a raw JSON string. In a verifier configured with both symmetric and asymmetric algorithms in <code>algorithms=[…]</code> and a raw-JSON JWK as the key, an attacker could forge HS256 tokens using the JWK text as the HMAC secret. The guard has been extended to reject any JWK-shaped JSON. <em>Reported by <a href="https://github.com/aradona91"><code>@aradona91</code></a>.</em></p> </li> <li> <p><strong><a href="https://github.com/jpadilla/pyjwt/security/advisories/GHSA-jq35-7prp-9v3f"><code>GHSA-jq35-7prp-9v3f</code></a> — Algorithm allow-list bypass with <code>PyJWK</code> / <code>PyJWKClient</code>.</strong> When verifying with a <code>PyJWK</code>, the caller's <code>algorithms=[…]</code> allow-list was checked against the token header <code>alg</code> as a string only; actual verification used the algorithm bound to the <code>PyJWK</code>. An attacker who controlled a registered JWKS key could sign with one algorithm and advertise another on the header. PyJWT now requires the token header <code>alg</code> to match the <code>PyJWK</code>'s algorithm before verification. <em>Reported by <a href="https://github.com/sushi-gif"><code>@sushi-gif</code></a>.</em></p> </li> <li> <p><strong><a href="https://github.com/jpadilla/pyjwt/security/advisories/GHSA-w7vc-732c-9m39"><code>GHSA-w7vc-732c-9m39</code></a> — DoS via base64 decode of unused payload segment when <code>b64=false</code>.</strong> For detached-payload JWS (<code>b64=false</code>), the compact-form payload segment was base64-decoded before being discarded in favor of the caller-supplied <code>detached_payload</code>. An attacker could inflate the unused segment to force CPU + memory cost without holding a valid signature. The segment is now required to be empty per RFC 7515 Appendix F, and is no longer decoded. <em>Reported by <a href="https://github.com/thesmartshadow"><code>@thesmartshadow</code></a>.</em></p> </li> <li> <p><strong><a href="https://github.com/jpadilla/pyjwt/security/advisories/GHSA-993g-76c3-p5m4"><code>GHSA-993g-76c3-p5m4</code></a> — <code>PyJWKClient</code> accepts non-HTTP(S) URIs.</strong> <code>PyJWKClient.fetch_data</code> passed its URI to <code>urllib.request.urlopen</code>, which by default also handles <code>file://</code>, <code>ftp://</code>, and <code>data:</code> schemes. An application that fed an attacker-influenced URI into <code>PyJWKClient</code> could be coerced into reading local files or reaching other unintended schemes. <code>PyJWKClient</code> now rejects any URI whose scheme isn't <code>http</code> or <code>https</code>. <em>Reported by <a href="https://github.com/KEIJOT"><code>@KEIJOT</code></a>.</em></p> </li> <li> <p><strong><a href="https://github.com/jpadilla/pyjwt/security/advisories/GHSA-fhv5-28vv-h8m8"><code>GHSA-fhv5-28vv-h8m8</code></a> — <code>PyJWKClient</code> cache wiped on fetch error.</strong> A <code>finally</code>-block <code>put(jwk_set=None)</code> cleared the JWK Set cache whenever a fetch raised, turning a transient JWKS-endpoint outage into application-wide auth failure. The cache write was moved into the success path; transient errors no longer evict valid cached keys. <em>Reported by <a href="https://github.com/eddieran"><code>@eddieran</code></a>.</em></p> </li> </ul> <h2>Fixed</h2> <ul> <li>Reject empty HMAC keys outright in <code>HMACAlgorithm.prepare_key</code> with <code>InvalidKeyError</code> instead of accepting them with only a warning. Defends against the <code>os.getenv("JWT_SECRET", "")</code> footgun. <em>Thanks to <a href="https://github.com/SnailSploit"><code>@SnailSploit</code></a> and <a href="https://github.com/spartan8806"><code>@spartan8806</code></a> for the reports.</em></li> <li>Forward per-call <code>options</code> (including <code>enforce_minimum_key_length</code>) from <code>PyJWT.decode</code> through to <code>PyJWS._verify_signature</code>. The option was previously silently dropped between the two layers, so it only took effect when set on the <code>PyJWT</code> instance. <em>Thanks to <a href="https://github.com/WLUB"><code>@WLUB</code></a> for the report.</em></li> <li><strong>RFC 7797 §3 compliance for <code>b64=false</code>:</strong> the encoder now auto-adds <code>"b64"</code> to <code>crit</code>, and the decoder rejects tokens that set <code>b64=false</code> without listing it in <code>crit</code>. <em>Thanks to <a href="https://github.com/MachineLearning-Nerd"><code>@MachineLearning-Nerd</code></a> for the report.</em></li> </ul> <h2>Changed</h2> <ul> <li>Migrate the <code>dev</code>, <code>docs</code>, and <code>tests</code> package extras to dependency groups, by <a href="https://github.com/kurtmckee"><code>@kurtmckee</code></a> in <a href="https://redirect.github.com/jpadilla/pyjwt/pull/1152">#1152</a>.</li> </ul> <h2>Upgrade notes</h2> <p>Most fixes are invisible to correctly-configured callers. A few behavioral changes you may encounter:</p> <ul> <li><strong>Empty HMAC keys now raise.</strong> If your app passed <code>""</code> or <code>b""</code> as a secret (often via a missing env var, e.g. <code>os.getenv("JWT_SECRET", "")</code>), <code>encode</code>/<code>decode</code> will now raise <code>InvalidKeyError</code>. This is the intended behavior — fix the configuration.</li> <li><strong><code>PyJWK</code> decoding now requires the token's <code>alg</code> to match the JWK's algorithm.</strong> Previously a mismatch was silently honored if the header <code>alg</code> appeared in the allow-list. Tokens that relied on this mismatch will now fail with <code>InvalidAlgorithmError</code>.</li> <li><strong><code>PyJWKClient</code> now rejects non-HTTP(S) URIs at construction time.</strong> Tests or dev environments that fetched JWKS from <code>file://</code> URIs need to switch to a local HTTP server or load the JWKS by other means (e.g. construct <code>PyJWKSet.from_dict(...)</code> directly).</li> <li><strong><code>b64=false</code> tokens are now strictly RFC 7515 / 7797 compliant.</strong> Tokens with a non-empty compact-form payload segment, or that omit <code>"b64"</code> from <code>crit</code>, will be rejected. PyJWT-produced tokens always satisfy both invariants, so round-trips through PyJWT are unaffected.</li> <li><strong><code>enforce_minimum_key_length</code> set per-call now takes effect.</strong> Callers who passed <code>options={"enforce_minimum_key_length": True}</code> to <code>jwt.decode()</code> previously got no enforcement; they will now get <code>InvalidKeyError</code> on undersized keys, as documented.</li> </ul> <p><strong>Full changelog:</strong> <a href="https://github.com/jpadilla/pyjwt/compare/2.12.1...2.13.0">https://github.com/jpadilla/pyjwt/compare/2.12.1...2.13.0</a></p> <h2>2.12.1</h2> <h2>What's Changed</h2> <ul> <li>Add typing_extensions dependency for Python < 3.11 by <a href="https://github.com/jpadilla"><code>@jpadilla</code></a> in <a href="https://redirect.github.com/jpadilla/pyjwt/pull/1151">jpadilla/pyjwt#1151</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1">https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst">pyjwt's changelog</a>.</em></p> <blockquote> <h2><code>v2.13.0 <https://github.com/jpadilla/pyjwt/compare/2.12.1...2.13.0></code>__</h2> <p>Security</p> <pre><code> - Reject JWK JSON documents passed as raw HMAC secrets in ``HMACAlgorithm.prepare_key`` to close an algorithm-confusion gap that the existing PEM/SSH guard did not cover. Reported by @aradona91 in `GHSA-xgmm-8j9v-c9wx <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-xgmm-8j9v-c9wx>`__. - Bind the JWT header ``alg`` to ``PyJWK.algorithm_name`` during verification so the caller's ``algorithms=[...]`` allow-list cannot be bypassed when decoding with a ``PyJWK`` / ``PyJWKClient`` key. Reported by @sushi-gif in `GHSA-jq35-7prp-9v3f <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-jq35-7prp-9v3f>`__. - Reject non-``http(s)`` URI schemes in ``PyJWKClient`` so attacker- influenced URIs cannot read local files or reach unintended schemes via urllib's default ``file://`` / ``ftp://`` / ``data:`` handlers. Reported by @KEIJOT in `GHSA-993g-76c3-p5m4 <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-993g-76c3-p5m4>`__. - Preserve the cached JWK Set on fetch errors in ``PyJWKClient.fetch_data``. The previous ``finally``-block ``put(None)`` pattern cleared the cache on any transient outage, turning one bad JWKS request into application- wide auth failure. Reported by @eddieran in `GHSA-fhv5-28vv-h8m8 <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-fhv5-28vv-h8m8>`__. - Skip the unconditional base64 decode of the compact-form payload segment when ``b64=false`` is set in the protected header, and require that segment to be empty (RFC 7515 Appendix F detached form). Closes an unauthenticated DoS amplifier. Reported by @thesmartshadow in `GHSA-w7vc-732c-9m39 <https://github.com/jpadilla/pyjwt/security/advisories/GHSA-w7vc-732c-9m39>`__. <p>Fixed</p> <pre><code> - Reject empty HMAC keys outright in ``HMACAlgorithm.prepare_key`` with ``InvalidKeyError`` instead of accepting them with only a warning. Thanks to @SnailSploit and @spartan8806 for independently flagging the footgun. - Forward per-call ``options`` (including ``enforce_minimum_key_length``) from ``PyJWT.decode`` through to ``PyJWS._verify_signature`` so the option actually takes effect when set at the call site rather than only on the ``PyJWT`` instance. Thanks to @WLUB for the report. - RFC 7797 §3 compliance for ``b64=false``: the encoder now auto-adds ``&quot;b64&quot;`` to the ``crit`` header parameter, and the decoder rejects tokens that set ``b64=false`` without listing it in ``crit``. Thanks to @MachineLearning-Nerd for the report. Changed </code></pre> <ul> <li>Migrate the <code>dev</code>, <code>docs</code>, and <code>tests</code> package extras to dependency groups by <a href="https://github.com/kurtmckee"><code>@kurtmckee</code></a> in <code>[#1152](https://github.com/jpadilla/pyjwt/issues/1152) &lt;https://github.com/jpadilla/pyjwt/pull/1152&gt;</code>__</li> </ul> <p><code>v2.12.1 &lt;https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1&gt;</code>__ </tr></table> </code></pre></p> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/jpadilla/pyjwt/commit/7144e4534c34810f4525dc4578a32addd8212cff"><code>7144e45</code></a> Apply ruff format</li> <li><a href="https://github.com/jpadilla/pyjwt/commit/d2f4bec4963897c0ef96ef64a875894f2c8542ab"><code>d2f4bec</code></a> Restore <code>cast()</code> calls with cross-version <code>type: ignore</code> for <code>prepare_key</code></li> <li><a href="https://github.com/jpadilla/pyjwt/commit/22f478cebddd8294259c30f037ecb92b0b348774"><code>22f478c</code></a> Remove redundant casts in <code>RSAAlgorithm.prepare_key</code> and `ECAlgorithm.prepare...</li> <li><a href="https://github.com/jpadilla/pyjwt/commit/95791b1759b8aa4f2203575d344d5c78564cdc81"><code>95791b1</code></a> Bundle security fixes and hardening into 2.13.0</li> <li><a href="https://github.com/jpadilla/pyjwt/commit/dcc27a9d3182a2349c30b160758785c6ce7a6508"><code>dcc27a9</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/jpadilla/pyjwt/issues/1155">#1155</a>)</li> <li><a href="https://github.com/jpadilla/pyjwt/commit/9d08a9a1896845ed8eaf88e6f6ac61e5800c3e7a"><code>9d08a9a</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/jpadilla/pyjwt/issues/1146">#1146</a>)</li> <li><a href="https://github.com/jpadilla/pyjwt/commit/b87c10014d4109f0214fea188d00faaaf8a80e64"><code>b87c100</code></a> Bump codecov/codecov-action from 5 to 6 (<a href="https://redirect.github.com/jpadilla/pyjwt/issues/1154">#1154</a>)</li> <li><a href="https://github.com/jpadilla/pyjwt/commit/40e3147eb5f790d8d041772e5fc00728a176c812"><code>40e3147</code></a> Migrate development extras to dependency groups (<a href="https://redirect.github.com/jpadilla/pyjwt/issues/1152">#1152</a>)</li> <li><a href="https://github.com/jpadilla/pyjwt/commit/a4e1a3d1218b01c5806420b8f16d9308ac4adc30"><code>a4e1a3d</code></a> Add typing_extensions dependency for Python < 3.11 (<a href="https://redirect.github.com/jpadilla/pyjwt/issues/1151">#1151</a>)</li> <li>See full diff in <a href="https://github.com/jpadilla/pyjwt/compare/2.12.0...2.13.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/evroon/bracket/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
e0a455995f |
Bump mypy from 1.20.0 to 2.0.0 in /backend (#1709)
Bumps [mypy](https://github.com/python/mypy) from 1.20.0 to 2.0.0. <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> <h1>Mypy Release Notes</h1> <h2>Next Release</h2> <h2>Mypy 2.1</h2> <p>We’ve just uploaded mypy 2.1.0 to the Python Package Index (<a href="https://pypi.org/project/mypy/">PyPI</a>). Mypy is a static type checker for Python. This release includes new features, performance improvements and bug fixes. You can install it as follows:</p> <pre><code>python3 -m pip install -U mypy </code></pre> <p>You can read the full documentation for this release on <a href="http://mypy.readthedocs.io">Read the Docs</a>.</p> <h3>librt.vecs: Fast Growable Array Type for Mypyc</h3> <p>The new <code>librt.vecs</code> module provides an efficient growable array type <code>vec</code> that is optimized for mypyc use. It provides fast, packed arrays with integer and floating point value types, which can be <strong>several times faster</strong> than <code>list</code>, and tens of times faster than <code>array.array</code> in code compiled using mypyc. It also supports nested <code>vec</code> objects and non-value-type items, such as <code>vec[vec[str]]</code>.</p> <p>Refer to the <a href="https://mypyc.readthedocs.io/en/latest/librt_vecs.html">documentation</a> for the details.</p> <p>Contributed by Jukka Lehtosalo.</p> <h3>librt.random: Fast Pseudo-Random Number Generation</h3> <p>The new <code>librt.random</code> module provides fast pseudo-random number generation that is optimized for code compiled using mypyc. It can be 3x to 10x faster than the stdlib <code>random</code> module in compiled code.</p> <p>Refer to the <a href="https://mypyc.readthedocs.io/en/latest/librt_random.html">documentation</a> for the details.</p> <p>Contributed by Jukka Lehtosalo (PR <a href="https://redirect.github.com/python/mypy/pull/21433">21433</a>).</p> <h3>Mypyc Improvements</h3> <ul> <li>Enable incremental self-compilation (Vaggelis Danias, PR <a href="https://redirect.github.com/python/mypy/pull/21369">21369</a>)</li> <li>Make compilation order with multiple files consistent (Piotr Sawicki, PR <a href="https://redirect.github.com/python/mypy/pull/21419">21419</a>)</li> <li>Fix crash on accessing <code>StopAsyncIteration</code> (Piotr Sawicki, PR <a href="https://redirect.github.com/python/mypy/pull/21406">21406</a>)</li> <li>Fix incremental compilation with <code>separate</code> flag (Vaggelis Danias, PR <a href="https://redirect.github.com/python/mypy/pull/21299">21299</a>)</li> </ul> <h3>Fixes to Crashes</h3> <ul> <li>Fix crash on partial type with <code>--allow-redefinition</code> and <code>global</code> declaration (Jukka Lehtosalo, PR <a href="https://redirect.github.com/python/mypy/pull/21428">21428</a>)</li> <li>Fix broken awaitable generator patching (Ivan Levkivskyi, PR <a href="https://redirect.github.com/python/mypy/pull/21435">21435</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/python/mypy/commit/7a765008a138ec46c579bfc6ef608860cab36033"><code>7a76500</code></a> Remove +dev from version</li> <li><a href="https://github.com/python/mypy/commit/5a3ab3b29f03d8baafeced3761e1afc8bd58be79"><code>5a3ab3b</code></a> Changelog for mypy 2.0 (<a href="https://redirect.github.com/python/mypy/issues/21422">#21422</a>)</li> <li><a href="https://github.com/python/mypy/commit/f9c86e21e88f96806c65790d604bf1264db39434"><code>f9c86e2</code></a> Some changelog updates for 2.0 (<a href="https://redirect.github.com/python/mypy/issues/21413">#21413</a>)</li> <li><a href="https://github.com/python/mypy/commit/519eaf15e0ceafae30337083577a54c7d3f3b4fe"><code>519eaf1</code></a> Bump librt to 0.10.0 (<a href="https://redirect.github.com/python/mypy/issues/21415">#21415</a>)</li> <li><a href="https://github.com/python/mypy/commit/158a6207d6e221cc403e1d556097b5abf5157cdd"><code>158a620</code></a> Fix negative narrowing for containers (<a href="https://redirect.github.com/python/mypy/issues/21411">#21411</a>)</li> <li><a href="https://github.com/python/mypy/commit/e556eb93a3c551a320a536879ce0a1608d14d490"><code>e556eb9</code></a> Try fixing mypy mypyc wheels (<a href="https://redirect.github.com/python/mypy/issues/21392">#21392</a>)</li> <li><a href="https://github.com/python/mypy/commit/f2c97971f5f4dcd749cf87df1e1308ab5754490a"><code>f2c9797</code></a> Expose --num-workers and --native-parser (<a href="https://redirect.github.com/python/mypy/issues/21387">#21387</a>)</li> <li><a href="https://github.com/python/mypy/commit/db0cb2f7c68b0f9d43d6ee1ab68117c1550dac39"><code>db0cb2f</code></a> Bump ast-serialize cache version (<a href="https://redirect.github.com/python/mypy/issues/21388">#21388</a>)</li> <li><a href="https://github.com/python/mypy/commit/1090ca6d476f629c566250a41204450043a47cf5"><code>1090ca6</code></a> Bump ast-serialize version to 0.3.0 only (<a href="https://redirect.github.com/python/mypy/issues/21391">#21391</a>)</li> <li><a href="https://github.com/python/mypy/commit/714ca9f2ac76e7c6dd56e26fd555f69313ba47ab"><code>714ca9f</code></a> [mypyc] Add note about librt.strings thread safety (<a href="https://redirect.github.com/python/mypy/issues/21383">#21383</a>)</li> <li>Additional commits viewable in <a href="https://github.com/python/mypy/compare/v1.20.0...v2.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
4f1dc6ae80 |
Bump pyrefly from 0.63.1 to 0.64.1 in /backend (#1710)
Bumps [pyrefly](https://github.com/facebook/pyrefly) from 0.63.1 to 0.64.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/facebook/pyrefly/releases">pyrefly's releases</a>.</em></p> <blockquote> <h2>Pyrefly v0.64.1</h2> <p><strong>Full Changelog</strong>: <a href="https://github.com/facebook/pyrefly/compare/0.64.0...0.64.1">https://github.com/facebook/pyrefly/compare/0.64.0...0.64.1</a></p> <h2>Pyrefly v0.64.0</h2> <p><strong>Status : BETA</strong> <em>Release date: May 05, 2026</em></p> <p>Pyrefly v0.64.0 bundles <strong>190 commits</strong> from <strong>20 contributors</strong>.</p> <hr /> <h2>✨ New & Improved</h2> <table> <thead> <tr> <th>Area</th> <th>What's new</th> </tr> </thead> <tbody> <tr> <td><strong>Type Checking</strong></td> <td>- You can now pass generic or overloaded callables to higher-order functions and Pyrefly will preserve their structure in the return type. For example, <code>identity(identity)</code> now correctly returns a generic callable instead of degrading to <code>Unknown</code>. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Same-scope class rebinds (like <code>Real = Dummy</code> after <code>class Real</code>) are now checked against the original class as if it were an implicit <code>type[Real]</code> annotation, preventing silent type changes and fixing spurious constructor-call errors. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Generic classes with missing type arguments in lax mode now default to <code>Any</code> instead of raising variance errors, improving consistency with how we handle other incomplete types. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Pydantic <code>field_validator</code> decorators with <code>mode='before'</code> and <code>mode='plain'</code> are now supported, allowing validators to accept broader input types before coercion. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Spurious unpack diagnostics are no longer emitted when the right-hand side involves <code>Never</code> (e.g. <code>a, b, c = never()</code> or <code>a, b = (never(), 1)</code>). The unpack solver is now <code>Never</code>-aware, recognizing that the producing expression cannot complete and any error message at the unpack site would be misleading. <!-- raw HTML omitted --><!-- raw HTML omitted -->- <code>assert</code> statements now check that <code>__bool__</code> is callable on the test expression, matching the behavior already in place for <code>if</code>, <code>while</code>, and ternary expressions (and aligning with mypy and pyright).</td> </tr> <tr> <td><strong>Language Server</strong></td> <td>- The language server now advertises both <code>source.fixAll</code> and <code>source.fixAll.pyrefly</code> code action kinds, enabling selective fix-on-save configuration across editors that implement the LSP protocol. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Document highlights now correctly distinguish between read and write references, setting <code>DocumentHighlightKind::WRITE</code> for assignments and declarations. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Go-to-definition on relative imports in site-packages files now correctly resolves to the package source instead of returning null when a <code>pyproject.toml</code> exists at the project root. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Notebook cell index resolution has been fixed to prevent mismatches between code cells and markdown cells, eliminating panics and incorrect byte offset calculations in Jupyter notebooks. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Cross-module "find references" (external references) is now enabled by default, returning references across the entire project rather than just the current file. <!-- raw HTML omitted --><!-- raw HTML omitted -->- A new quick fix turns the existing "Did you mean <code>Foo.BAR</code>?" diagnostic note for missing enum members into a code action that replaces the offending string literal with the proper enum member access. <!-- raw HTML omitted --><!-- raw HTML omitted -->- A new <code># pyrefly: ignore</code> quick fix inserts a suppression comment for the diagnostic at the cursor, automatically merging into an existing pyrefly-ignore directive on the same line or on a comment-only line above when present. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Numeric parameter defaults now preserve their source spelling (e.g. <code>0o777</code>, <code>0xFF</code>, <code>0b101</code>) in hover and signature display rather than being normalized to decimal. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Code actions documentation has been added to the IDE Supported Features page, covering quick fixes and <code>source.fixAll.pyrefly</code> configuration.</td> </tr> <tr> <td><strong>Onboarding & VS Code Extension</strong></td> <td>- A redesigned unconfigured-project experience: when no <code>pyrefly.toml</code> is found, Pyrefly auto-detects nearby <code>mypy.ini</code>, <code>pyrightconfig.json</code>, or <code>[tool.mypy]</code>/<code>[tool.pyright]</code> sections in <code>pyproject.toml</code> and synthesizes an in-memory configuration migrated from those settings (using the <code>legacy</code> or <code>default</code> preset respectively). With no detectable configuration, the new <code>basic</code> preset is used. <!-- raw HTML omitted --><!-- raw HTML omitted -->- A new <code>python.pyrefly.typeCheckingMode</code> workspace setting (auto / off / basic / legacy / default / strict, default <code>auto</code>) lets users pick a preset for files not covered by an explicit Pyrefly configuration, directly from the VS Code settings UI. The legacy <code>python.pyrefly.displayTypeErrors</code> setting is now deprecated, with values transparently mapped to the new model. <!-- raw HTML omitted --><!-- raw HTML omitted -->- A new <code>python.pyrefly.disableTypeErrors</code> workspace setting provides a clean per-workspace kill switch for diagnostics, independent of the type-checking mode. <!-- raw HTML omitted --><!-- raw HTML omitted -->- The VS Code status bar has been redesigned: it now shows the active preset (e.g. "Pyrefly (Legacy)", "Pyrefly (Basic)") and the tooltip explains why that preset was chosen and links to the relevant docs. <!-- raw HTML omitted --><!-- raw HTML omitted -->- After a <code>pyrefly check</code> on an unconfigured project, the CLI now prints a short upsell to <strong>stderr</strong> explaining what configuration was synthesized and pointing at <code>pyrefly init</code>. The message is routed to stderr so machine-readable stdout formats (e.g. <code>--output-format json</code>) remain untouched.</td> </tr> <tr> <td><strong>Configuration</strong></td> <td>- Configuration presets (<code>off</code>, <code>basic</code>, <code>legacy</code>, <code>default</code>, <code>strict</code>) are now available via the <code>preset</code> option, providing named collections of error severities and behavior settings as a base configuration that user settings can override. <!-- raw HTML omitted --><!-- raw HTML omitted -->- The <code>legacy</code> preset is now used by <code>pyrefly init</code> for mypy migration, disabling checks mypy doesn't have and setting looser inference defaults. <!-- raw HTML omitted --><!-- raw HTML omitted -->- The <code>implicit-any</code> error code has been split into sub-kinds (<code>implicit-any-attribute</code>, <code>implicit-any-empty-container</code>, <code>implicit-any-parameter</code>, <code>implicit-any-type-argument</code>) with <code>implicit-any</code> as the parent, allowing finer-grained control over where implicit <code>Any</code> is flagged. <!-- raw HTML omitted --><!-- raw HTML omitted -->- The <code>unbound-name</code> error is now disabled in the <code>legacy</code> preset to match mypy's default behavior, which does not flag possibly-undefined variables.</td> </tr> <tr> <td><strong>Error Reporting</strong></td> <td>- A new <code>incompatible-overload-residual</code> error kind has been introduced for cases where all branches of an overloaded callable are pruned during higher-order function analysis, making it easier to configure these errors independently. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Error messages for all-pruned overload residuals now describe the incompatibility in terms of "solved type variables" rather than "solved type constraints" for better clarity. <!-- raw HTML omitted --><!-- raw HTML omitted -->- The <code>pyrefly suppress</code> command now correctly handles removal of unused ignores via the <code>--remove-unused</code> flag, which was previously broken.</td> </tr> <tr> <td><strong>Factory Boy Support</strong></td> <td>- Pyrefly now infers the correct model return types for <code>create()</code>, <code>build()</code>, <code>create_batch()</code>, and <code>build_batch()</code> methods on <code>DjangoModelFactory</code> subclasses by reading the inner <code>Meta.model</code> attribute. <!-- raw HTML omitted --><!-- raw HTML omitted -->- False-positive <code>bad-override</code> errors on the inner <code>Meta</code> class in factory-boy factories are now suppressed, matching how we handle Django and Marshmallow.</td> </tr> <tr> <td><strong>Reporting</strong></td> <td>- The <code>pyrefly report</code> JSON output now includes a <code>path</code> field on each <code>ModuleReport</code>, for compatibility with typestats and similar tooling.</td> </tr> <tr> <td><strong>Performance</strong></td> <td>- Deeply-nested dict literals no longer cause exponential memory growth during type inference. A depth-25 dict literal that previously consumed ~7.7 GB now uses ~239 MB by computing the union of field types on demand instead of storing it redundantly. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Callable residual finalization has been optimized to avoid redundant type cloning and traversals, reducing memory churn in attribute-heavy code. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Eliminated some bugs that caused Pyrefly to unnecessarily analyze dependencies, improving latency and memory use, especially in the IDE.</td> </tr> </tbody> </table> <hr /> <h2>🐛 bug fixes</h2> <p>We closed <strong>15</strong> bug issues this release 👏</p> <ul> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3057">#3057</a>: Fixed an issue where string concatenation with the <code>+</code> operator was incorrectly flagging <code>str</code> as not assignable to <code>LiteralString</code> attributes. Pyrefly now preserves <code>LiteralString</code> style when adding two explicit string literals and uses implicit style otherwise.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/105">#105</a>: Fixed premature type pinning in function calls where arguments were incorrectly narrowed before all constraints were solved. For example, <code>foo(x, y)</code> with <code>x: int | None</code> and <code>y: int | None</code> no longer incorrectly narrows <code>x</code> to <code>None</code> when passed to a generic <code>foo[T](https://github.com/facebook/pyrefly/blob/HEAD/a: T, b: T)</code>.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3198">#3198</a>: Fixed <code>pyrefly suppress --remove-unused</code> which was not actually removing unused error suppressions. The command now correctly processes the <code>--remove-unused</code> flag.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3024">#3024</a>: The language server now advertises <code>source.fixAll.pyrefly</code> in addition to <code>source.fixAll</code>, allowing users to selectively enable or disable Pyrefly's fix-all actions in editors that support LSP code action kinds.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/2819">#2819</a>: Fixed incorrect variance errors when using generic classes like Pydantic's <code>RootModel</code> in lax mode. Missing type arguments now degrade to <code>Any</code> instead of raising errors, matching our handling of other incomplete types.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3000">#3000</a>: Fixed "find references" failures in Cursor and other editors caused by relative imports in site-packages not resolving correctly when a <code>pyproject.toml</code> existed at the project root.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/2563">#2563</a>: Fixed go-to-definition on relative imports in virtual environment site-packages, which was returning null because the project root's import path was matching before the more specific site-package prefix.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3193">#3193</a>: Fixed an error where <code>list["A|B"]</code> was incorrectly rejected as <code>not-a-type</code>. Type argument subscripts are now bound as type expressions even in value context, allowing forward-ref strings to be parsed.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3286">#3286</a>: Fixed exponential memory blowup when type-checking deeply-nested dict literals, which could cause VSCode to be killed by the OS. Memory usage for a depth-25 dict dropped from ~7.7 GB to ~239 MB.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3261">#3261</a>: Fixed a false positive <code>bad-class-definition</code> when a dataclass field was assigned inside a <code>@classmethod</code> or <code>__init_subclass__</code>. Pyrefly was incorrectly extracting these as dataclass fields, even though Python's <code>dataclasses.dataclass</code> ignores them at runtime.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/2914">#2914</a>: <code>assert</code> statements now flag a non-callable <code>__bool__</code> on the test expression, closing a gap that previously only caught the issue inside <code>if</code>, <code>while</code>, and ternary expressions.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/2867">#2867</a>: Fixed <code>urlunparse</code> being inferred as returning <code>Literal[b'']</code> instead of <code>str</code>. The fix reworks <code>as_superclass</code> so tuple-like <code>NamedTuple</code> subclasses are upcast through their erased tuple element types, which stops <code>ParseResult</code> from spuriously matching <code>Iterable[None]</code> and selecting the bytes overload.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3266">#3266</a>: Added a quick fix for the existing "Did you mean <code>Foo.BAR</code>?" diagnostic note for missing enum members, turning the suggestion into a code action that rewrites the surrounding string literal.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3230">#3230</a>: Numeric parameter defaults now preserve their original spelling (e.g. <code>0o777</code>) in hover and signature display rather than being normalized to a decimal value.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3302">#3302</a>: Added a <code>path</code> field to the <code>pyrefly report</code> JSON <code>ModuleReport</code>, restoring compatibility with typestats.</li> </ul> <p>Thank-you to all our contributors who found these bugs and reported them! Did you know this is one of the most helpful contributions you can make to an open-source project? If you find any bugs in Pyrefly we want to know about them! Please open a bug report issue <a href="https://github.com/facebook/pyrefly/issues">here</a></p> <hr /> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/facebook/pyrefly/commit/71ff2a5cbc7ce9a82e758174fe25274256728c28"><code>71ff2a5</code></a> upgrade</li> <li><a href="https://github.com/facebook/pyrefly/commit/b3d41027a20764fd076c7af89d9dbb45e64dd458"><code>b3d4102</code></a> Strip debuginfo from release binaries to reduce binary size</li> <li><a href="https://github.com/facebook/pyrefly/commit/ccb904d47281c22195839bcc714eb1c38256e690"><code>ccb904d</code></a> Fix Pyrefly regression with imported TypeVars via attribute access (<a href="https://redirect.github.com/facebook/pyrefly/issues/3333">#3333</a>)</li> <li><a href="https://github.com/facebook/pyrefly/commit/fb2ef608a2bb9b896a0232be0783338eea3b028a"><code>fb2ef60</code></a> support vscode-python-environments extension (<a href="https://redirect.github.com/facebook/pyrefly/issues/3327">#3327</a>)</li> <li><a href="https://github.com/facebook/pyrefly/commit/e63fa8d7d9160d3d319569ee2a4439883eaa4c9e"><code>e63fa8d</code></a> remove extensionDependency on ms-python.python (<a href="https://redirect.github.com/facebook/pyrefly/issues/3326">#3326</a>)</li> <li><a href="https://github.com/facebook/pyrefly/commit/15b8f817923a9b3efb8f5192a8ba1359878c3e58"><code>15b8f81</code></a> abstract away python-environment from extension (<a href="https://redirect.github.com/facebook/pyrefly/issues/3325">#3325</a>)</li> <li><a href="https://github.com/facebook/pyrefly/commit/e267ba6974db6d041c1fe74975c08d938d8ae3d1"><code>e267ba6</code></a> Fix provide_type race condition with config recheck cancellation (<a href="https://redirect.github.com/facebook/pyrefly/issues/3316">#3316</a>)</li> <li><a href="https://github.com/facebook/pyrefly/commit/fe26ba3ace3c39794b19b8220f35c56a19d0b9cf"><code>fe26ba3</code></a> Fix failing quick fix test</li> <li><a href="https://github.com/facebook/pyrefly/commit/6d9611de431d43e26d47b5e97e4499cf9a94e931"><code>6d9611d</code></a> Use <code>FuncMetadata::def</code> to reduce code duplication</li> <li><a href="https://github.com/facebook/pyrefly/commit/a545b3a13cac916b4d92b69ee82bb936c3432eb0"><code>a545b3a</code></a> Add a more general <code>FuncMetadata::def</code> helper</li> <li>Additional commits viewable in <a href="https://github.com/facebook/pyrefly/compare/0.63.1...0.64.1">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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
9a47d9cf6a |
Bump gunicorn from 25.3.0 to 26.0.0 in /backend (#1708)
Bumps [gunicorn](https://github.com/benoitc/gunicorn) from 25.3.0 to 26.0.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/benoitc/gunicorn/releases">gunicorn's releases</a>.</em></p> <blockquote> <h2>26.0.0</h2> <h2>Breaking Changes</h2> <ul> <li><strong>Eventlet worker removed</strong>: The <code>eventlet</code> worker class has been dropped. Migrate to <code>gevent</code>, <code>gthread</code>, or <code>tornado</code>.</li> </ul> <h2>New Features</h2> <ul> <li><strong>ASGI Framework Compatibility Suite</strong>: New end-to-end compatibility test harness covering Starlette, FastAPI, Litestar, Quart, Sanic, and BlackSheep. Current grid passes 438/444 tests (98%).</li> <li><strong>ASGI Test Suite Expansion</strong>: 134 additional ASGI unit tests covering protocol semantics, lifespan, websockets, and chunked framing.</li> </ul> <h2>Security</h2> <ul> <li><strong>HTTP/1.1 Request-Target Validation</strong> (RFC 9112 sections 3.2.3, 3.2.4): <ul> <li>Reject <code>authority-form</code> request-target outside <code>CONNECT</code></li> <li>Reject <code>asterisk-form</code> request-target outside <code>OPTIONS</code></li> <li>Reject <code>relative-reference</code> request-targets</li> </ul> </li> <li><strong>Header Field Hardening</strong> (RFC 9110): <ul> <li>Reject control characters in header field-value (section 5.5)</li> <li>Reject forbidden trailer field-names (section 6.5.1)</li> <li>Reject <code>Content-Length</code> list form (RFC 9112 section 6.3)</li> </ul> </li> <li><strong>Request Smuggling Hardening</strong>: <ul> <li>Tighten keepalive gate and scope <code>finish_body</code> byte cap</li> <li>Keep <code>_body_receiver</code> alive across the keepalive smuggling gate so pipelined requests cannot re-enter a closed body</li> <li>Address parser/protocol findings from a six-point WSGI/ASGI audit</li> </ul> </li> <li><strong>PROXY Protocol (ASGI)</strong>: Enforce <code>proxy_allow_ips</code> and tighten v1/v2 parsing in the ASGI callback parser.</li> <li><strong>Connection Draining</strong>: Drain the connection on close per RFC 9112 section 9.6 to prevent reset-on-close truncation.</li> </ul> <h2>Bug Fixes</h2> <ul> <li><strong>Body Framing on HEAD/204/304</strong>: <ul> <li>Keep <code>Content-Length</code> on HEAD and 304 responses (<a href="https://redirect.github.com/benoitc/gunicorn/issues/3621">#3621</a>)</li> <li>Drop body framing on HEAD/204/304 even when the framework set it</li> <li>Warn once when an ASGI app emits a body for a no-body response</li> </ul> </li> <li><strong>HTTP/2 ASGI</strong>: <ul> <li>Fix <code>_handle_stream_ended</code> to set <code>_body_complete</code> in the async HTTP/2 handler so request bodies finalize correctly on stream end</li> <li>Add <code>InvalidChunkExtension</code> mapping and fast-parser support in ASGI tests (<a href="https://redirect.github.com/benoitc/gunicorn/issues/3565">#3565</a>)</li> </ul> </li> <li><strong>HTTP/1.1 100-Continue</strong>: Stop adding <code>Transfer-Encoding: chunked</code> to 100-Continue interim responses.</li> <li><strong>WebSocket Close Handshake</strong> (RFC 6455): <ul> <li>Comply with the close handshake state machine</li> <li>Close the transport after the close handshake completes</li> <li>Fix binary send when the <code>text</code> key is <code>None</code></li> </ul> </li> <li><strong>Early Hints</strong>: Validate headers in the <code>early_hints</code> callback to match <code>process_headers</code>; pass only the header name to <code>InvalidHeader</code> (<a href="https://redirect.github.com/benoitc/gunicorn/issues/3588">#3588</a>).</li> <li><strong>ASGI Framework Fixes</strong>: <ul> <li>Fix ASGI disconnect handling for Django-style apps</li> <li>Fix Litestar request handling (use raw ASGI receive for body/headers)</li> <li>Fix Litestar HTTP endpoints for compatibility tests</li> <li>Fix Quart headers endpoint to normalize keys to lowercase</li> <li>Fix Quart WebSocket close test app (missing <code>accept()</code>)</li> <li>Fix duplicate <code>Transfer-Encoding</code> header for BlackSheep streaming</li> </ul> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/benoitc/gunicorn/commit/5d819cf36040f6cc6175fcc804d703fb899509dd"><code>5d819cf</code></a> release: 26.0.0</li> <li><a href="https://github.com/benoitc/gunicorn/commit/b45c70df105f7d5dcbc5abfb732804d6464edc21"><code>b45c70d</code></a> Merge pull request <a href="https://redirect.github.com/benoitc/gunicorn/issues/3611">#3611</a> from zc-mattcen/docs-typo</li> <li><a href="https://github.com/benoitc/gunicorn/commit/99c8d48acf453deb5c49fe12e195dbc00d888d1e"><code>99c8d48</code></a> Merge pull request <a href="https://redirect.github.com/benoitc/gunicorn/issues/3623">#3623</a> from benoitc/chore/drop-eventlet-add-h2-uvloop-test-...</li> <li><a href="https://github.com/benoitc/gunicorn/commit/5a655af50f20e005dd9e32e6078dc82fa45f3d4b"><code>5a655af</code></a> Merge pull request <a href="https://redirect.github.com/benoitc/gunicorn/issues/3622">#3622</a> from benoitc/test/docker-port-and-ipv4-fixes</li> <li><a href="https://github.com/benoitc/gunicorn/commit/201df19a8011c0a1d6a0e75ebe22e89d48eb935e"><code>201df19</code></a> chore: remove eventlet worker; add h2 and uvloop to test deps</li> <li><a href="https://github.com/benoitc/gunicorn/commit/f4ac8e1f1bf1d365e77f41915da55bec31873f84"><code>f4ac8e1</code></a> test: pass action name to dirty client and stabilize after TTOU spam</li> <li><a href="https://github.com/benoitc/gunicorn/commit/54d38afddf1f0db0c15b5f4ff63f3c7bfad96961"><code>54d38af</code></a> test: unblock docker fixtures on macOS hosts</li> <li><a href="https://github.com/benoitc/gunicorn/commit/68843c8893dd938456f0a2da62085ab5776f8871"><code>68843c8</code></a> Merge pull request <a href="https://redirect.github.com/benoitc/gunicorn/issues/3621">#3621</a> from benoitc/fix/asgi-preserve-content-length-on-hea...</li> <li><a href="https://github.com/benoitc/gunicorn/commit/31f2618f733cc0c78690df63f4e344aaf3f56b20"><code>31f2618</code></a> Merge pull request <a href="https://redirect.github.com/benoitc/gunicorn/issues/3620">#3620</a> from benoitc/fix/asgi-proxy-protocol-trust-and-parsing</li> <li><a href="https://github.com/benoitc/gunicorn/commit/41ec7527dbd8a9e52728477700707ad40e41d9dc"><code>41ec752</code></a> fix: keep Content-Length on HEAD and 304 responses</li> <li>Additional commits viewable in <a href="https://github.com/benoitc/gunicorn/compare/25.3.0...26.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
280a573976 |
Bump starlette from 1.0.0 to 1.0.1 in /backend (#1706)
Bumps [starlette](https://github.com/Kludex/starlette) from 1.0.0 to 1.0.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/starlette/releases">starlette's releases</a>.</em></p> <blockquote> <h2>Version 1.0.1</h2> <h2>What's Changed</h2> <ul> <li>Ignore malformed <code>Host</code> header when constructing <code>request.url</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/starlette/pull/3279">Kludex/starlette#3279</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/starlette/compare/1.0.0...1.0.1">https://github.com/Kludex/starlette/compare/1.0.0...1.0.1</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/starlette/blob/main/docs/release-notes.md">starlette's changelog</a>.</em></p> <blockquote> <h2>1.0.1 (May 21, 2026)</h2> <h4>Fixed</h4> <ul> <li>Ignore malformed <code>Host</code> header when constructing <code>request.url</code> <a href="https://redirect.github.com/encode/starlette/pull/3279">#3279</a>.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/starlette/commit/48f8e331b23ca692f4713ac1f370bff1b5cd034c"><code>48f8e33</code></a> Version 1.0.1 (<a href="https://redirect.github.com/Kludex/starlette/issues/3281">#3281</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/f078832be1aa27ab0e7ec3153479a347749e967a"><code>f078832</code></a> Remove Hugging Face sponsor block from docs (<a href="https://redirect.github.com/Kludex/starlette/issues/3280">#3280</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/472951eba8f6e35be845fd1b91625a1b5488294b"><code>472951e</code></a> chore(deps): bump the github-actions group with 2 updates (<a href="https://redirect.github.com/Kludex/starlette/issues/3277">#3277</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/764dab0dcfb9033d75442d7a359645c9f94648c6"><code>764dab0</code></a> Ignore malformed <code>Host</code> header when constructing <code>request.url</code> (<a href="https://redirect.github.com/Kludex/starlette/issues/3279">#3279</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/19d08115ce56da8d4da2838ecdd9c5882cb2b365"><code>19d0811</code></a> Harden GitHub Actions workflows and Dependabot config (<a href="https://redirect.github.com/Kludex/starlette/issues/3276">#3276</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/01f46378120fe2c6312074ed7e997e3b5f7d8c20"><code>01f4637</code></a> chore(deps): bump idna from 3.10 to 3.15 (<a href="https://redirect.github.com/Kludex/starlette/issues/3274">#3274</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/b8fa5140d2ef9f22483d777e936ab4c2df897179"><code>b8fa514</code></a> docs: fix typos in TestClient docs and test_requests comment (<a href="https://redirect.github.com/Kludex/starlette/issues/3266">#3266</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/e935b6b5d4616c2317bbdadfb4cf07a8e7637955"><code>e935b6b</code></a> fix uvicorn domain (<a href="https://redirect.github.com/Kludex/starlette/issues/3269">#3269</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/96af9521a7e46bc0d00b5227186f03b70b6d242f"><code>96af952</code></a> Add 7-day cooldown for dependency resolution via uv exclude-newer (<a href="https://redirect.github.com/Kludex/starlette/issues/3265">#3265</a>)</li> <li><a href="https://github.com/Kludex/starlette/commit/61e385bd6dc438a90493c50f65ed232430f873fb"><code>61e385b</code></a> Add zizmor GitHub Actions security analysis workflow (<a href="https://redirect.github.com/Kludex/starlette/issues/3264">#3264</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kludex/starlette/compare/1.0.0...1.0.1">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/evroon/bracket/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
0b8e32af0a |
Bump sentry-sdk from 2.58.0 to 2.59.0 in /backend (#1704)
Bumps [sentry-sdk](https://github.com/getsentry/sentry-python) from 2.58.0 to 2.59.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/releases">sentry-sdk's releases</a>.</em></p> <blockquote> <h2>2.59.0</h2> <h3>New Features ✨</h3> <h4>Langchain</h4> <ul> <li>Record <code>run_name</code> as <code>gen_ai.function_id</code> on Invoke Agent Spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/5926">#5926</a></li> <li>Record <code>run_name</code> in <code>on_tool_start</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/5925">#5925</a></li> <li>Record <code>run_name</code> in <code>on_chat_model_start</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/5924">#5924</a></li> </ul> <h4>Other</h4> <ul> <li>(ci) Cancel in-progress PR workflows on new commit push by <a href="https://github.com/joshuarli"><code>@joshuarli</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/5994">#5994</a></li> <li>(consts) Add updated span convention constants to SPANDATA by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6093">#6093</a></li> <li>(fastapi) Support span streaming in active thread tracking by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6118">#6118</a></li> <li>(httpx) Migrate to span first by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6084">#6084</a></li> <li>(huggingface_hub) Migrate to span first by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6124">#6124</a></li> <li>(mcp) Migrate to span first by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6131">#6131</a></li> <li>Add <code>db.driver.name</code> spans to database integrations by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6082">#6082</a></li> </ul> <h3>Bug Fixes 🐛</h3> <p>We've put additional data that might contain sensitive information, like GraphQL documents, behind the <code>send_default_pii</code> option.</p> <h4>Httpx</h4> <ul> <li>Consistently early-exit when adding request source by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6151">#6151</a></li> <li>Set <code>code.namespace</code> and <code>code.function</code> instead of <code>code.function.name</code> in span streaming by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6150">#6150</a></li> </ul> <h4>Langchain</h4> <ul> <li>Record <code>run_name</code> as <code>gen_ai.function_id</code> for text completions by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6073">#6073</a></li> <li>Set agent name as <code>gen_ai.agent.name</code> for chat and tool spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/5877">#5877</a></li> </ul> <h4>Other</h4> <ul> <li>(asgi) Use <code>inspect.iscoroutinefunction</code> on Python 3.14+ by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6135">#6135</a></li> <li>(batcher) Reset lock and flusher in child after fork by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6163">#6163</a></li> <li>(google_genai) Redact binary data in inline_data and fix multi-part message extraction by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/5977">#5977</a></li> <li>(grpc) Add isolation_scope to async server interceptor by <a href="https://github.com/robinvd"><code>@robinvd</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/5940">#5940</a></li> <li>(metrics,logs) Don't attach <code>span_id</code> if no active span by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6162">#6162</a></li> <li>(monitor) Release <code>Monitor._thread_lock</code> after fork (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6148">#6148</a>) by <a href="https://github.com/vokracko"><code>@vokracko</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6159">#6159</a></li> <li>(openai-agents) Resolve agent from <code>bindings</code> for openai-agents >= 0.14 by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6102">#6102</a></li> <li>(profiler) Stop nulling buffer on teardown by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6075">#6075</a></li> <li>(quart) Use <code>inspect.iscoroutinefunction</code> when Quart does by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6133">#6133</a></li> <li>(security) Prevent GitHub script injection in update-tox workflow by <a href="https://github.com/fix-it-felix-sentry"><code>@fix-it-felix-sentry</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6171">#6171</a></li> <li>(starlette/fastapi) Use <code>inspect.iscoroutinefunction</code> when Starlette does by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6134">#6134</a></li> <li>(tornado) Make sure context manager doesn't double yield by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6152">#6152</a></li> <li>Introduce <code>_get_current_streamed_span()</code> to keep types backwards compatible by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6177">#6177</a></li> </ul> <h3>Internal Changes 🔧</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md">sentry-sdk's changelog</a>.</em></p> <blockquote> <h2>2.59.0</h2> <h3>New Features ✨</h3> <h4>Langchain</h4> <ul> <li>Record <code>run_name</code> as <code>gen_ai.function_id</code> on Invoke Agent Spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/5926">#5926</a></li> <li>Record <code>run_name</code> in <code>on_tool_start</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/5925">#5925</a></li> <li>Record <code>run_name</code> in <code>on_chat_model_start</code> by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/5924">#5924</a></li> </ul> <h4>Other</h4> <ul> <li>(ci) Cancel in-progress PR workflows on new commit push by <a href="https://github.com/joshuarli"><code>@joshuarli</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/5994">#5994</a></li> <li>(consts) Add updated span convention constants to SPANDATA by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6093">#6093</a></li> <li>(fastapi) Support span streaming in active thread tracking by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6118">#6118</a></li> <li>(httpx) Migrate to span first by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6084">#6084</a></li> <li>(huggingface_hub) Migrate to span first by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6124">#6124</a></li> <li>(mcp) Migrate to span first by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6131">#6131</a></li> <li>Add <code>db.driver.name</code> spans to database integrations by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6082">#6082</a></li> </ul> <h3>Bug Fixes 🐛</h3> <p>We've put additional data that might contain sensitive information, like GraphQL documents, behind the <code>send_default_pii</code> option.</p> <h4>Httpx</h4> <ul> <li>Consistently early-exit when adding request source by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6151">#6151</a></li> <li>Set <code>code.namespace</code> and <code>code.function</code> instead of <code>code.function.name</code> in span streaming by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6150">#6150</a></li> </ul> <h4>Langchain</h4> <ul> <li>Record <code>run_name</code> as <code>gen_ai.function_id</code> for text completions by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6073">#6073</a></li> <li>Set agent name as <code>gen_ai.agent.name</code> for chat and tool spans by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/5877">#5877</a></li> </ul> <h4>Other</h4> <ul> <li>(asgi) Use <code>inspect.iscoroutinefunction</code> on Python 3.14+ by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6135">#6135</a></li> <li>(batcher) Reset lock and flusher in child after fork by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6163">#6163</a></li> <li>(google_genai) Redact binary data in inline_data and fix multi-part message extraction by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/5977">#5977</a></li> <li>(grpc) Add isolation_scope to async server interceptor by <a href="https://github.com/robinvd"><code>@robinvd</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/5940">#5940</a></li> <li>(metrics,logs) Don't attach <code>span_id</code> if no active span by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6162">#6162</a></li> <li>(monitor) Release <code>Monitor._thread_lock</code> after fork (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6148">#6148</a>) by <a href="https://github.com/vokracko"><code>@vokracko</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6159">#6159</a></li> <li>(openai-agents) Resolve agent from <code>bindings</code> for openai-agents >= 0.14 by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6102">#6102</a></li> <li>(profiler) Stop nulling buffer on teardown by <a href="https://github.com/ericapisani"><code>@ericapisani</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6075">#6075</a></li> <li>(quart) Use <code>inspect.iscoroutinefunction</code> when Quart does by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6133">#6133</a></li> <li>(security) Prevent GitHub script injection in update-tox workflow by <a href="https://github.com/fix-it-felix-sentry"><code>@fix-it-felix-sentry</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6171">#6171</a></li> <li>(starlette/fastapi) Use <code>inspect.iscoroutinefunction</code> when Starlette does by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6134">#6134</a></li> <li>(tornado) Make sure context manager doesn't double yield by <a href="https://github.com/sentrivana"><code>@sentrivana</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6152">#6152</a></li> <li>Introduce <code>_get_current_streamed_span()</code> to keep types backwards compatible by <a href="https://github.com/alexander-alderman-webb"><code>@alexander-alderman-webb</code></a> in <a href="https://redirect.github.com/getsentry/sentry-python/pull/6177">#6177</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/getsentry/sentry-python/commit/689cb97e333534f093f16f75f2c212a986bab7e5"><code>689cb97</code></a> Update CHANGELOG.md</li> <li><a href="https://github.com/getsentry/sentry-python/commit/397dda917fa40782e48e24ac01ecf822de0771fc"><code>397dda9</code></a> release: 2.59.0</li> <li><a href="https://github.com/getsentry/sentry-python/commit/c0c254a8f8bbd2009c409b12c50d6075e262c6f8"><code>c0c254a</code></a> test: Rename file (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6194">#6194</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/d90a9238ccf84dd49b2c994e8cbc9cc7b8fdbf80"><code>d90a923</code></a> ref(batcher): Only flush the bucket that triggered the flush event (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6168">#6168</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/6436518b21943881122e0cc6e0e49fe1355fd23f"><code>6436518</code></a> ci: 🤖 Update test matrix with new releases (05/04) (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6186">#6186</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/98294ceeb77376237ce9c4cac66b1925adb37f54"><code>98294ce</code></a> fix: Introduce <code>_get_current_streamed_span()</code> to keep types backwards compati...</li> <li><a href="https://github.com/getsentry/sentry-python/commit/66b3c6b8178dd6fa8e2e976481a642b53db27319"><code>66b3c6b</code></a> test(fastmcp): Span streaming tests (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6167">#6167</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/b5735abb51b21dba8cee1f35a918dbe51babf038"><code>b5735ab</code></a> fix(batcher): Reset lock and flusher in child after fork (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6163">#6163</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/fc3eab43a6ee9af6fced602d5c56467e2d690603"><code>fc3eab4</code></a> fix(metrics,logs): Don't attach <code>span_id</code> if no active span (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6162">#6162</a>)</li> <li><a href="https://github.com/getsentry/sentry-python/commit/8e5bd96c7a21839b54849f813d834d46969abd2a"><code>8e5bd96</code></a> test: Assert presence of profile chunks after shutdown (<a href="https://redirect.github.com/getsentry/sentry-python/issues/6174">#6174</a>)</li> <li>Additional commits viewable in <a href="https://github.com/getsentry/sentry-python/compare/2.58.0...2.59.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
119d097795 |
Bump pyrefly from 0.62.0 to 0.63.1 in /backend (#1703)
Bumps [pyrefly](https://github.com/facebook/pyrefly) from 0.62.0 to 0.63.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/facebook/pyrefly/releases">pyrefly's releases</a>.</em></p> <blockquote> <h2>Pyrefly v0.63.1</h2> <p><strong>Full Changelog</strong>: <a href="https://github.com/facebook/pyrefly/compare/0.63.0...0.63.1">https://github.com/facebook/pyrefly/compare/0.63.0...0.63.1</a></p> <h2>Pyrefly v0.63.0</h2> <p><strong>Status : BETA</strong> <em>Release date: April 27, 2026</em></p> <p>Pyrefly v0.63.0 bundles <strong>129 commits</strong> from <strong>26 contributors</strong>.</p> <hr /> <h2>✨ New & Improved</h2> <table> <thead> <tr> <th>Area</th> <th>What's new</th> </tr> </thead> <tbody> <tr> <td><strong>Type Checking</strong></td> <td>- Enum member types are preserved even when the metaclass conflicts with <code>EnumMeta</code>, reducing noise in projects using custom metaclasses with enums. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Constrained <code>TypeVar</code>s no longer get pinned to a specific constraint when matched against <code>Any</code>, preventing false positives. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Self/cls annotations on all methods and classmethods are validated to ensure they reference the defining class or a superclass, catching more annotation errors.</td> </tr> <tr> <td><strong>Language Server</strong></td> <td>- The LSP now reports <code>unused-ignore</code> diagnostics when configured to do so, helping you clean up stale suppression comments. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Completions for attribute override definitions are available in class bodies, surfacing base-class members filtered by fuzzy match. <!-- raw HTML omitted --><!-- raw HTML omitted -->- The LSP server no longer crashes on Jupyter notebook cell URIs (<code>vscode-notebook-cell:</code>), with full support for resolving notebook cell paths and position offsets. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Workspace symbol search uses the correct location for re-exported symbols, preventing panics on multi-byte UTF-8 characters. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Inlay hints are clickable for built-in types like <code>tuple</code>, <code>dict</code>, and <code>str</code>, enabling go-to-definition directly from hint overlays.</td> </tr> <tr> <td><strong>Error Messages</strong></td> <td>- A new <code>unnecessary-type-conversion</code> lint warns when <code>str()</code>, <code>int()</code>, or <code>float()</code> is called on an argument that is already of that exact type.</td> </tr> <tr> <td><strong>Reporting & Coverage</strong></td> <td>- Public symbol filtering is available via <code>pyrefly report --public-only</code>, using cross-module tracing to report only public symbols.</td> </tr> <tr> <td><strong>Performance</strong></td> <td>- TypedDict subset checks are now cached on the Solver, reducing CPU time by ~5.3x and wall time by ~6.7x on pydantic (from 9.5s to 1.4s).</td> </tr> <tr> <td><strong>Configuration & Initialization</strong></td> <td>- <code>pyrefly init</code> supports <code>--dry-run</code> for safe previews without writing files, and <code>--print-config</code> for machine-readable TOML output.</td> </tr> </tbody> </table> <hr /> <h2>🐛 bug fixes</h2> <p>We closed <strong>9</strong> bug issues this release 👏</p> <ul> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3099">#3099</a>: Fixed an issue where property setters and deleters inflated typable counts in <code>pyrefly report</code> by incorrectly counting their trivial <code>-> None</code> return types.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3098">#3098</a>: Fixed an issue where overloads in <code>pyrefly report</code> were not deduplicated, causing parameters and callable signatures to be counted multiple times and inflate coverage metrics.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3067">#3067</a>: Fixed an issue where the type display path was dropping the unpack marker (<code>*</code>) for direct <code>TypeVarTuple</code> arguments, causing <code>Shape</code> to render bare instead of <code>*Shape</code>.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3040">#3040</a>: Fixed an issue where properties on metaclasses were not taking precedence over properties on the class during class-level attribute access, causing false <code>bad-assignment</code> and <code>bad-return</code> errors.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3150">#3150</a>: Fixed an issue where type aliases were inflating type coverage in <code>pyrefly report</code> by being counted as typable entities.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3041">#3041</a>: Fixed a panic during workspace/symbol requests on re-exported symbols with multi-byte UTF-8 characters, caused by using the canonical module's byte offset against the re-exporting file's buffer.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3109">#3109</a>: Added a new <code>unnecessary-type-conversion</code> lint that warns when <code>str()</code>, <code>int()</code>, or <code>float()</code> is called on an argument that is already of that exact type, making the conversion redundant.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3187">#3187</a>: Fixed a panic in <code>pyrefly report</code> when <code>@no_type_check</code> decorator was used, caused by a missing key lookup for skipped parameter annotations.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3090">#3090</a>: Improved the unused-coroutine error message when an <code>await</code> expression already has <code>await</code> but produces a coroutine due to an incorrect return type annotation on the function definition.</li> </ul> <p>Thank-you to all our contributors who found these bugs and reported them! Did you know this is one of the most helpful contributions you can make to an open-source project? If you find any bugs in Pyrefly we want to know about them! Please open a bug report issue <a href="https://github.com/facebook/pyrefly/issues">here</a></p> <hr /> <h2>📦 Upgrade</h2> <pre lang="bash"><code>pip install --upgrade pyrefly==0.63.0 </code></pre> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/facebook/pyrefly/commit/e765bc651ba4017f8e83872c62e497054edd922d"><code>e765bc6</code></a> bump version</li> <li><a href="https://github.com/facebook/pyrefly/commit/599bee32312972878756d0f54b36c161bad9598f"><code>599bee3</code></a> better inlay hints docs</li> <li><a href="https://github.com/facebook/pyrefly/commit/a4ff846acb0ce215b7a15c0253f150b0a506b099"><code>a4ff846</code></a> Add module uri to module tsp types (<a href="https://redirect.github.com/facebook/pyrefly/issues/3250">#3250</a>)</li> <li><a href="https://github.com/facebook/pyrefly/commit/625877be165908162f4b875fba99daa61cb3e9cf"><code>625877b</code></a> Implement multi-connection architecture (<a href="https://redirect.github.com/facebook/pyrefly/issues/3218">#3218</a>)</li> <li><a href="https://github.com/facebook/pyrefly/commit/252c52a3f8d0cbe902eb58aee929028f9375cff6"><code>252c52a</code></a> move process_event into own block</li> <li><a href="https://github.com/facebook/pyrefly/commit/18bb101c9061de6f42a698bd827f6e9248de6bed"><code>18bb101</code></a> factor out snapshot_changed_notification</li> <li><a href="https://github.com/facebook/pyrefly/commit/447f5f97e8badeff4a55e329d83fe4e67dc6ca8b"><code>447f5f9</code></a> add set_experimental to server</li> <li><a href="https://github.com/facebook/pyrefly/commit/84bdff6a151aec92969eea662a52cb24c1641a5b"><code>84bdff6</code></a> Consolidate response helpers and extract parse_tsp_request</li> <li><a href="https://github.com/facebook/pyrefly/commit/66b487bf83de7b00b0f615966c70b7ec290c4a2e"><code>66b487b</code></a> Rename TspServer to TspConnection</li> <li><a href="https://github.com/facebook/pyrefly/commit/43ec5ac1260b56cea8c9be45548751fb949c34d6"><code>43ec5ac</code></a> Add IPC transport for TSP connections (<a href="https://redirect.github.com/facebook/pyrefly/issues/3217">#3217</a>)</li> <li>Additional commits viewable in <a href="https://github.com/facebook/pyrefly/compare/0.62.0...0.63.1">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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
1e1e1788e6 |
Bump uvicorn from 0.44.0 to 0.46.0 in /backend (#1698)
Bumps [uvicorn](https://github.com/Kludex/uvicorn) from 0.44.0 to 0.46.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/releases">uvicorn's releases</a>.</em></p> <blockquote> <h2>Version 0.46.0</h2> <h2>What's Changed</h2> <ul> <li>Support <code>ws_max_size</code> in <code>wsproto</code> implementation by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2915">Kludex/uvicorn#2915</a></li> <li>Support <code>ws_ping_interval</code> and <code>ws_ping_timeout</code> in <code>wsproto</code> implementation by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2916">Kludex/uvicorn#2916</a></li> <li>Use <code>bytearray</code> for incoming WebSocket message buffer in websockets-sansio by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2917">Kludex/uvicorn#2917</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.45.0...0.46.0">https://github.com/Kludex/uvicorn/compare/0.45.0...0.46.0</a></p> <h2>Version 0.45.0</h2> <h2>What's Changed</h2> <ul> <li>Preserve forwarded client ports in proxy headers middleware by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2903">Kludex/uvicorn#2903</a></li> <li>Accept <code>os.PathLike</code> for <code>log_config</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2905">Kludex/uvicorn#2905</a></li> <li>Accept <code>log_level</code> strings case-insensitively by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2907">Kludex/uvicorn#2907</a></li> <li>Raise helpful <code>ImportError</code> when PyYAML is missing for YAML log config by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2906">Kludex/uvicorn#2906</a></li> <li>Revert empty context for ASGI runs by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2911">Kludex/uvicorn#2911</a></li> <li>Add <code>--reset-contextvars</code> flag to isolate ASGI request context by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2912">Kludex/uvicorn#2912</a></li> <li>Revert "Emit <code>http.disconnect</code> on server shutdown for streaming responses" (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2829">#2829</a>) by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2913">Kludex/uvicorn#2913</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/Krishnachaitanyakc"><code>@Krishnachaitanyakc</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2870">Kludex/uvicorn#2870</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.44.0...0.45.0">https://github.com/Kludex/uvicorn/compare/0.44.0...0.45.0</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md">uvicorn's changelog</a>.</em></p> <blockquote> <h2>0.46.0 (April 23, 2026)</h2> <h3>Added</h3> <ul> <li>Support <code>ws_max_size</code> in <code>wsproto</code> implementation (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2915">#2915</a>)</li> <li>Support <code>ws_ping_interval</code> and <code>ws_ping_timeout</code> in <code>wsproto</code> implementation (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2916">#2916</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Use <code>bytearray</code> for incoming WebSocket message buffer in <code>websockets-sansio</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2917">#2917</a>)</li> </ul> <h2>0.45.0 (April 21, 2026)</h2> <h3>Added</h3> <ul> <li>Add <code>--reset-contextvars</code> flag to isolate ASGI request context (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2912">#2912</a>)</li> <li>Accept <code>os.PathLike</code> for <code>log_config</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2905">#2905</a>)</li> <li>Accept <code>log_level</code> strings case-insensitively (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2907">#2907</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Revert "Emit <code>http.disconnect</code> on server shutdown for streaming responses" (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2913">#2913</a>)</li> <li>Revert "Explicitly start ASGI run with empty context" (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2911">#2911</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Preserve forwarded client ports in proxy headers middleware (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2903">#2903</a>)</li> <li>Raise helpful <code>ImportError</code> when PyYAML is missing for YAML log config (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2906">#2906</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/uvicorn/commit/b224045f5900b7f766743bcb16ba9fc3adea2606"><code>b224045</code></a> Version 0.46.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2918">#2918</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/7375b5bf66d962186d663e85615d4b4d956bf880"><code>7375b5b</code></a> Use <code>bytearray</code> for incoming WebSocket message buffer in websockets-sansio (#...</li> <li><a href="https://github.com/Kludex/uvicorn/commit/d438fb16fe2d23c7bbc2ca7094645cff1f116458"><code>d438fb1</code></a> Support <code>ws_ping_interval</code> and <code>ws_ping_timeout</code> in <code>wsproto</code> implementation ...</li> <li><a href="https://github.com/Kludex/uvicorn/commit/3e6b96446653d0156434bce529a14c80764c9eda"><code>3e6b964</code></a> Support <code>ws_max_size</code> in <code>wsproto</code> implementation (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2915">#2915</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/2c423bd82be169459ea254a61476de34767e0326"><code>2c423bd</code></a> Version 0.45.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2914">#2914</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/7f027f8e25e47668a9c2ce8b5c21b35054c48d02"><code>7f027f8</code></a> Revert "Emit <code>http.disconnect</code> on server shutdown for streaming responses" (#...</li> <li><a href="https://github.com/Kludex/uvicorn/commit/73a80c3cc87de269ed016e584a25e585ae6f2b44"><code>73a80c3</code></a> Add <code>--reset-contextvars</code> flag to isolate ASGI request context (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2912">#2912</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/45c0b568d38e9bf4f2f036bc2d79eb98b0e72f72"><code>45c0b56</code></a> Revert empty context for ASGI runs (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2911">#2911</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/850d92656de0cb5859ee5f6ba252e19ad3d38989"><code>850d926</code></a> Raise helpful <code>ImportError</code> when PyYAML is missing for YAML log config (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2906">#2906</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/fdcacb4b83bc686ea1ba9e50ffe5b8cfe49b3e00"><code>fdcacb4</code></a> Accept <code>log_level</code> strings case-insensitively (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2907">#2907</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kludex/uvicorn/compare/0.44.0...0.46.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
38efd1e2b9 |
Bump pydantic-settings from 2.13.0 to 2.14.0 in /backend (#1697)
Bumps [pydantic-settings](https://github.com/pydantic/pydantic-settings) from 2.13.0 to 2.14.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pydantic/pydantic-settings/releases">pydantic-settings's releases</a>.</em></p> <blockquote> <h2>v2.14.0</h2> <h2>What's Changed</h2> <ul> <li>Fix parsing env vars into Optional Strict types by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/792">pydantic/pydantic-settings#792</a></li> <li>Fix RecursionError with mutually recursive models in CLI by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/794">pydantic/pydantic-settings#794</a></li> <li>Fix env_file from model_config ignored in CliApp.run() (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/795">#795</a>) by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/796">pydantic/pydantic-settings#796</a></li> <li>Update dependencies by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/798">pydantic/pydantic-settings#798</a></li> <li>Add Dependabot configuration by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/801">pydantic/pydantic-settings#801</a></li> <li>Bump samuelcolvin/check-python-version from 4.1 to 5 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/802">pydantic/pydantic-settings#802</a></li> <li>Bump actions/upload-artifact from 4 to 7 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/803">pydantic/pydantic-settings#803</a></li> <li>Bump actions/checkout from 4 to 6 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/804">pydantic/pydantic-settings#804</a></li> <li>Bump astral-sh/setup-uv from 5 to 7 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/805">pydantic/pydantic-settings#805</a></li> <li>Bump actions/setup-python from 5 to 6 by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/806">pydantic/pydantic-settings#806</a></li> <li>Ignore chardet and group GitHub Actions in Dependabot by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/808">pydantic/pydantic-settings#808</a></li> <li>Bump actions/download-artifact from 4 to 8 in the github-actions group by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/809">pydantic/pydantic-settings#809</a></li> <li>Bump the python-packages group with 2 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/810">pydantic/pydantic-settings#810</a></li> <li>Support reading .env files from FIFOs (e.g. 1Password Environments) by <a href="https://github.com/JacobHayes"><code>@JacobHayes</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/776">pydantic/pydantic-settings#776</a></li> <li>Fix AliasChoices ignored when changing provider priority by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/813">pydantic/pydantic-settings#813</a></li> <li>fix: resolve KeyError in run_subcommand for underscore field names by <a href="https://github.com/bradykieffer"><code>@bradykieffer</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/799">pydantic/pydantic-settings#799</a></li> <li>Bump the python-packages group with 3 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/814">pydantic/pydantic-settings#814</a></li> <li>Fix <code>Literal[numeric Enum]</code> coercion for CLI and env vars by <a href="https://github.com/m9810223"><code>@m9810223</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/811">pydantic/pydantic-settings#811</a></li> <li>Fix nested discriminated unions not discovered by env/CLI providers by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/816">pydantic/pydantic-settings#816</a></li> <li>Bump the python-packages group with 3 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/820">pydantic/pydantic-settings#820</a></li> <li>CLI ensure env nested max split internally. by <a href="https://github.com/kschwab"><code>@kschwab</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/821">pydantic/pydantic-settings#821</a></li> <li>Bump the python-packages group with 4 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/824">pydantic/pydantic-settings#824</a></li> <li>Migrate <code>boto3-stubs</code> to <code>types-boto3</code> by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/831">pydantic/pydantic-settings#831</a></li> <li>Fix CLI not recognizing field name with validate_by_name and AliasChoices by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/826">pydantic/pydantic-settings#826</a></li> <li>Allow customisation of the dotevn setting source to filter variables by <a href="https://github.com/CaselIT"><code>@CaselIT</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/832">pydantic/pydantic-settings#832</a></li> <li>Bump the python-packages group with 3 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/833">pydantic/pydantic-settings#833</a></li> <li>Introduce yamlfmt by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/836">pydantic/pydantic-settings#836</a></li> <li>Bump boto3 from 1.42.82 to 1.42.83 in the python-packages group by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/837">pydantic/pydantic-settings#837</a></li> <li>Introduce zizmor by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/838">pydantic/pydantic-settings#838</a></li> <li>Fix CliPositionalArg[list[CustomType]] crash for custom types by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/839">pydantic/pydantic-settings#839</a></li> <li>Add note about Mypy plugin for <code>BaseSettings.__init__()</code> by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/842">pydantic/pydantic-settings#842</a></li> <li>Fix <code>cli_ignore_unknown_args=True</code> not working on subcommands by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/844">pydantic/pydantic-settings#844</a></li> <li>Bump the python-packages group with 4 updates by <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/847">pydantic/pydantic-settings#847</a></li> <li>Fix CLI descriptions lost under <code>python -OO</code> by falling back to <code>json_schema_extra</code> by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/843">pydantic/pydantic-settings#843</a></li> <li>Prepare release 2.14.0 by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/848">pydantic/pydantic-settings#848</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] made their first contribution in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/802">pydantic/pydantic-settings#802</a></li> <li><a href="https://github.com/JacobHayes"><code>@JacobHayes</code></a> made their first contribution in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/776">pydantic/pydantic-settings#776</a></li> <li><a href="https://github.com/bradykieffer"><code>@bradykieffer</code></a> made their first contribution in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/799">pydantic/pydantic-settings#799</a></li> <li><a href="https://github.com/CaselIT"><code>@CaselIT</code></a> made their first contribution in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/832">pydantic/pydantic-settings#832</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic-settings/compare/v2.13.1...v2.14.0">https://github.com/pydantic/pydantic-settings/compare/v2.13.1...v2.14.0</a></p> <h2>v2.13.1</h2> <h2>What's Changed</h2> <ul> <li>Fix regression for bool fields since 2.13.0 by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/784">pydantic/pydantic-settings#784</a></li> <li>Fix RecursionError with self-referential models in CliApp by <a href="https://github.com/hramezani"><code>@hramezani</code></a> in <a href="https://redirect.github.com/pydantic/pydantic-settings/pull/783">pydantic/pydantic-settings#783</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pydantic/pydantic-settings/commit/8916beeecc6d0510e3d0532a0ed839937400ddc3"><code>8916bee</code></a> Prepare release 2.14.0 (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/848">#848</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/39e551c0910c85505b608ff85a103b2c9f7396c5"><code>39e551c</code></a> Fix CLI descriptions lost under <code>python -OO</code> by falling back to `json_schema_...</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/9ed7f48ea2c90f436a03b01f721fe6656c869b14"><code>9ed7f48</code></a> Bump the python-packages group with 4 updates (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/847">#847</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/617c690fb16c95eb0fb98fc88c0d6d82b9af4fa9"><code>617c690</code></a> Fix <code>cli_ignore_unknown_args=True</code> not working on subcommands (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/844">#844</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/577c05f7e8ac25904da2381db51ed4ddd4b3e4fe"><code>577c05f</code></a> Add note about Mypy plugin for <code>BaseSettings.__init__()</code> (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/842">#842</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/2355bc54e9d442ca7916f02de28d0c936e75441c"><code>2355bc5</code></a> Fix CliPositionalArg[list[CustomType]] crash for custom types (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/839">#839</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/16bd6fd230d6280d52db6ce2a0ffef8f908cc89d"><code>16bd6fd</code></a> Introduce zizmor (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/838">#838</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/df8b239fe09ba712767bdf378bc90627df375f04"><code>df8b239</code></a> Bump boto3 from 1.42.82 to 1.42.83 in the python-packages group (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/837">#837</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/c5401a27999cd6c0e93925deb0660cd51013c8b1"><code>c5401a2</code></a> Introduce yamlfmt (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/836">#836</a>)</li> <li><a href="https://github.com/pydantic/pydantic-settings/commit/953e28e6cfe9a9e536375d771a4ffd48535a4ab2"><code>953e28e</code></a> Bump the python-packages group with 3 updates (<a href="https://redirect.github.com/pydantic/pydantic-settings/issues/833">#833</a>)</li> <li>Additional commits viewable in <a href="https://github.com/pydantic/pydantic-settings/compare/v2.13.0...v2.14.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
4fb0d150f5 |
Bump pyrefly from 0.61.1 to 0.62.0 in /backend (#1696)
Bumps [pyrefly](https://github.com/facebook/pyrefly) from 0.61.1 to 0.62.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/facebook/pyrefly/releases">pyrefly's releases</a>.</em></p> <blockquote> <h2>Pyrefly v0.62.0</h2> <p><strong>Status : BETA</strong> <em>Release date: April 20, 2026</em></p> <p>Pyrefly v0.62.0 bundles <strong>87 commits</strong> from <strong>23 contributors</strong>.</p> <hr /> <h2>✨ New & Improved</h2> <table> <thead> <tr> <th>Area</th> <th>What's new</th> </tr> </thead> <tbody> <tr> <td><strong>Type Checking</strong></td> <td>- <code>TypeVarTuple</code> inference has been changed to be consistent with <code>TypeVar</code>, per a recent change to the typing spec. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Errors logged during speculative union checks and overload calls are now reverted, eliminating a source of confusing false positives. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Union-typed decorators that return fully unknown types (either <code>Unknown</code> or callables with all-unknown signatures) preserve the original function signature instead of replacing it with <code>Unknown</code>, reducing false positives by ~23% on TensorFlow.</td> </tr> <tr> <td><strong>Language Server</strong></td> <td>- Semantic tokens and completions work for <code>inmemory://</code> documents on Windows. <!-- raw HTML omitted --><!-- raw HTML omitted -->- LSP server crashes from out-of-range line numbers in client requests are prevented by clamping positions to the buffer's valid range.</td> </tr> <tr> <td><strong>Error Reporting</strong></td> <td>- Error kinds can now have sub-kinds that can be disabled using their shared prefix. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Invariance checks for mutable attributes (corresponding to mypy's <code>mutable-override</code> opt-in behavior) have been moved to a new <code>bad-override-mutable-attribute</code> error code that is a sub-kind of <code>bad-override</code>. <!-- raw HTML omitted --><!-- raw HTML omitted -->- The <code>bad-param-name-override</code> error has been renamed to <code>bad-override-param-name</code> and made a sub-kind of <code>bad-override</code>. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Sub-configs that define <code>[errors]</code> inherit the root config's error severity overrides for any codes they don't explicitly set.</td> </tr> <tr> <td><strong>Configuration</strong></td> <td>- When migrating from mypy via <code>pyrefly init</code>, <code>bad-override-mutable-attribute</code> is disabled by default to match mypy's behavior. <!-- raw HTML omitted --><!-- raw HTML omitted -->- Project excludes (e.g., <code>project-excludes = ["**/*.ipynb"]</code>) no longer block discovery of <code>.py</code> files when the default <code>project-includes</code> contains both <code>**/*.py*</code> and <code>**/*.ipynb</code>.</td> </tr> </tbody> </table> <hr /> <h2>🐛 bug fixes</h2> <p>We closed 12 bug issues this release 👏</p> <ul> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3118">#3118</a>: Fixed incorrect stub package recommendations for typeshed third-party libraries. Pyrefly now suggests the correct package name (e.g., <code>types-python-dateutil</code> for the <code>dateutil</code> module, not <code>types-dateutil</code>) by extracting the module→package mapping from the bundled typeshed archive, preventing potential typosquatting.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3081">#3081</a>: Fixed NewType wrappers with NoneType bases being incorrectly rejected or treated inconsistently. <code>NewType("NewNoneType", NoneType)</code> is now accepted as a valid nominal type declaration, and plain <code>None</code> is correctly rejected where <code>NewNoneType</code> is required.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3052">#3052</a>: Fixed false positive <code>unexpected-keyword</code> errors for named parameters before <code>*args: P.args</code>. Functions like <code>call_with_retry(f, max_attempts=10, *args: P.args, **kwargs: P.kwargs)</code> now correctly allow <code>max_attempts</code> to be passed as a keyword argument, matching mypy and pyright behavior.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3110">#3110</a>: Fixed LSP server crashes when the client sends a position with a line number beyond the end of the buffer (e.g., after a <code>DidChangeTextDocument</code> race where the file was truncated). Out-of-range positions now map to EOF instead of panicking.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/2912">#2912</a>: Fixed false positive <code>bad-argument-type</code> for <code>list(null_values.items())</code> when the return type hint is a union like <code>Sequence[str] | list[tuple[str, str]]</code>. Pyrefly now tries constructing the class with each union member independently and unions the results, ensuring the inferred type is assignable to the hint.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/2644">#2644</a>: Fixed false positive <code>bad-argument-type</code> when calling a method with <code>AnyStr</code>. Placeholder variables used during overload resolution are now saved and restored around overload calls, preventing <code>AnyStr</code> from being incorrectly specialized to <code>str</code> and polluting subsequent checks.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/2872">#2872</a>: Fixed false positive <code>invalid-type-var</code> for generic functions captured as closure default arguments. The <code>Visit</code> implementation for <code>DefaultValue</code> now calls <code>visit</code> instead of <code>recurse</code>, ensuring type-level visitors see the <code>Type</code> node stored in the default value.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3159">#3159</a>: Fixed incorrect type inference for <code>.value</code> on enum members with non-data-type mixins. Mixins that don't define <code>__new__</code> (e.g., <code>class Meta: pass</code>) are no longer treated as data type mixins, so <code>Foo.bar.value</code> correctly returns <code>Literal[1]</code> instead of <code>Meta</code>.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3161">#3161</a>: Fixed false positive <code>bad-argument-type</code> for overloaded functions with vararg unpacking (e.g., <code>*args: *tuple[int, str]</code>). Type check errors for unpacked varargs are now sent to <code>call_errors</code> instead of <code>arg_errors</code>, so they don't cause the overload to be incorrectly rejected.</li> <li><a href="https://redirect.github.com/facebook/pyrefly/issues/3047">#3047</a>: Fixed false positive <code>bad-specialization</code> when matching a type variable against a union like <code>N | Iterable[N]</code>. Pyrefly now uses snapshot-based rollback when trying each union member, ensuring specialization errors from one branch don't leak into the final result if another branch succeeds without errors.</li> <li>And more! <a href="https://redirect.github.com/facebook/pyrefly/issues/3122">#3122</a>, <a href="https://redirect.github.com/facebook/pyrefly/issues/3080">#3080</a>, <a href="https://redirect.github.com/facebook/pyrefly/issues/3074">#3074</a></li> </ul> <p>Thank-you to all our contributors who found these bugs and reported them! Did you know this is one of the most helpful contributions you can make to an open-source project? If you find any bugs in Pyrefly we want to know about them! Please open a bug report issue <a href="https://github.com/facebook/pyrefly/issues">here</a></p> <hr /> <h2>📦 Upgrade</h2> <pre lang="bash"><code>pip install --upgrade pyrefly==0.62.0 </code></pre> <h3>How to safely upgrade your codebase</h3> <p>Upgrading the version of Pyrefly you're using or a third-party library you depend on can reveal new type errors in your code. Fixing them all at once is often unrealistic. We've written scripts to help you temporarily silence them. After upgrading, follow these steps:</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/facebook/pyrefly/commit/de2839344133e9cab81fcec5947a4c890a3564b4"><code>de28393</code></a> Update pyrefly version</li> <li><a href="https://github.com/facebook/pyrefly/commit/05a213c7ebe0674b284c8c9e4433ccc47399d481"><code>05a213c</code></a> upgrade provenant to 0.0.22</li> <li><a href="https://github.com/facebook/pyrefly/commit/141dd714f9755a11979d3ee36453d9dbd0272277"><code>141dd71</code></a> Fix lint issues</li> <li><a href="https://github.com/facebook/pyrefly/commit/4707a8fd6984811e52b41c0f61f51ce23b5cd7d9"><code>4707a8f</code></a> Assume unannotated <code>__new__</code> returns <code>Self</code> (<a href="https://redirect.github.com/facebook/pyrefly/issues/3139">#3139</a>)</li> <li><a href="https://github.com/facebook/pyrefly/commit/05b3e73d044792017fe0edb8ec22eb201c4d34cb"><code>05b3e73</code></a> Add provenant-cli binary dependency</li> <li><a href="https://github.com/facebook/pyrefly/commit/593495be0eff4ed0356e9862a86aafc122e1f233"><code>593495b</code></a> Bump semver 1.0.27 -> 1.0.28</li> <li><a href="https://github.com/facebook/pyrefly/commit/2dbb18dace24e8c7aa8469b61fcc4dd6458f4bfb"><code>2dbb18d</code></a> Fix incorrect type inference for enum member .value with mixin</li> <li><a href="https://github.com/facebook/pyrefly/commit/69bb0219795dad3be71c1288814b0b7595ebaec6"><code>69bb021</code></a> Fix false positive invalid-type-var for generic functions used as closure def...</li> <li><a href="https://github.com/facebook/pyrefly/commit/9bc95b4747a8fe351ceb16e0b2e12977990c080c"><code>9bc95b4</code></a> include a schema version in <code>pyrefly report</code> <a href="https://redirect.github.com/facebook/pyrefly/issues/3103">#3103</a> (<a href="https://redirect.github.com/facebook/pyrefly/issues/3163">#3163</a>)</li> <li><a href="https://github.com/facebook/pyrefly/commit/24c22be0646f31120c4cf6da548c8ba0b1a3def8"><code>24c22be</code></a> Fix(<a href="https://redirect.github.com/facebook/pyrefly/issues/2918">#2918</a>): <code>NotImplemented</code> being incorrectly accepted as a callable (<a href="https://redirect.github.com/facebook/pyrefly/issues/3101">#3101</a>)</li> <li>Additional commits viewable in <a href="https://github.com/facebook/pyrefly/compare/0.61.1...0.62.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) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |