Repository navigation
Comparing changes
Open a pull request
base repository: openai/openai-python
base: v3.47.0
head repository: openai/openai-python
compare: v3.48.0
- 8 commits
- 56 files changed
- 7 contributors
Commits on Nov 5, 2026
-
feat(api): add stream options for agent sessions (#4251)
Adds options for controlling padding in agent session event streams. - Accept stream_options when creating a session and include_obfuscation when streaming its events - Expose optional obfuscation padding on session events - Keep event padding enabled by default
Configuration menu - View commit details
-
Copy full SHA for c6fc264 - Browse repository at this point
Copy the full SHA c6fc264View commit details
Commits on Nov 6, 2026
-
docs: consolidate AGENTS.md guidance (#4254)
## Changes being requested Reduce AGENTS.md from 786 to 505 words (36%) by linking the existing contributor security and Python support policies, consolidating generated-file ownership, and shortening repeated prose. Retain the unique agent requirements, CODEOWNER/security regression gates, complete Python-version validation command sequence, automation isolation, and large-payload compatibility/test constraints. Preserve the generated-file-ownership anchor. ## Additional context & links Validation: - Completed basic diff and semantic-preservation review, including proxy security review, Python-floor changes, automation authority, and large-payload regression scenarios. - Verified all local file links and heading anchors; retained original section anchors. - Compared the validation shell block byte-for-byte with the original; unchanged. - Diff whitespace check passed. - No Python lint/build/runtime tests run: only AGENTS.md changed; repository lint/format scripts do not check this Markdown file.
Configuration menu - View commit details
-
Copy full SHA for 44b1555 - Browse repository at this point
Copy the full SHA 44b1555View commit details
Commits on Nov 7, 2026
-
chore(api): retain agent scheduling support (#4255)
## Summary Retains the existing agent scheduling APIs. ## Changes - Preserve the existing agent scheduling APIs. Co-authored-by: jbeckwith-oai <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a1175a3 - Browse repository at this point
Copy the full SHA a1175a3View commit details
Commits on Nov 8, 2026
-
feat(api): recognize gpt-6-rosalind in beta Responses (#4257)
## Summary Includes gpt-6-rosalind in beta Responses model type hints. ## Changes - Include gpt-6-rosalind among known beta Responses model values. Co-authored-by: dpiet-oai <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3774b7e - Browse repository at this point
Copy the full SHA 3774b7eView commit details
Commits on Nov 9, 2026
-
chore(deps-dev): bump the python-maintenance group with 5 updates (#4258
) Bumps the python-maintenance group with 5 updates: | Package | From | To | | --- | --- | --- | | [botocore](https://github.com/boto/botocore) | `1.43.119` | `1.43.123` | | [ty](https://github.com/astral-sh/ty) | `0.0.92` | `0.0.95` | | [pytest](https://github.com/pytest-dev/pytest) | `9.1.1` | `9.2.0` | | [trio](https://github.com/python-trio/trio) | `0.34.0` | `0.35.0` | | [hatchling](https://github.com/pypa/hatch) | `1.32.4` | `1.33.0` | Updates `botocore` from 1.43.119 to 1.43.123 <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/boto/botocore/commit/c2b1d5167979786c0c9225485e9dba568e8db8f4"><code>c2b1d51</code></a> Merge branch 'release-1.43.123'</li> <li><a href="https://github.com/boto/botocore/commit/2dba97053e1f7614d727cbbf335b225bdb94f59b"><code>2dba970</code></a> Bumping version to 1.43.123</li> <li><a href="https://github.com/boto/botocore/commit/70ea7e376aff09029ace10f830a7b39ec481f4e1"><code>70ea7e3</code></a> Update endpoints model</li> <li><a href="https://github.com/boto/botocore/commit/e98435807abeea13316091908de45380931f9267"><code>e984358</code></a> Update to latest models</li> <li><a href="https://github.com/boto/botocore/commit/76af6f8964c1f2f3a209508e09b2863bb2299f1f"><code>76af6f8</code></a> Merge branch 'release-1.43.122'</li> <li><a href="https://github.com/boto/botocore/commit/7f517a30f80daa50e2ab84c9b1cfa073c4d8cf58"><code>7f517a3</code></a> Merge branch 'release-1.43.122' into develop</li> <li><a href="https://github.com/boto/botocore/commit/88fd8aa174bb44f4b90f904a54de91652bc712ed"><code>88fd8aa</code></a> Bumping version to 1.43.122</li> <li><a href="https://github.com/boto/botocore/commit/f16acbc44fb5ec64131c80db1676596e82491337"><code>f16acbc</code></a> Update to latest models</li> <li><a href="https://github.com/boto/botocore/commit/3c9efec65ff08d246702b0eceaae197157ef1a23"><code>3c9efec</code></a> fix(s3): prevent generate_presigned_post from mutating Conditions (<a href="https://redirect.github.com/boto/botocore/issues/3847">#3847</a>) (<a href="https://redirect.github.com/boto/botocore/issues/3">#3</a>...</li> <li><a href="https://github.com/boto/botocore/commit/750c41deb4a479d05ddfe7fe67f5595c75adf18e"><code>750c41d</code></a> Update awscrt version to 0.38.0 (<a href="https://redirect.github.com/boto/botocore/issues/3850">#3850</a>)</li> <li>Additional commits viewable in <a href="https://github.com/boto/botocore/compare/1.43.119...1.43.123">compare view</a></li> </ul> </details> <br /> Updates `ty` from 0.0.92 to 0.0.95 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/astral-sh/ty/releases">ty's releases</a>.</em></p> <blockquote> <h2>0.0.95</h2> <h2>Release Notes</h2> <p>Released on 2026-10-29.</p> <h3>Bug fixes</h3> <ul> <li>Accept another unpacked TypeVarTuple as a default (<a href="https://redirect.github.com/astral-sh/ruff/pull/29752">#29752</a>)</li> <li>Accept keyword arguments for <code>TypeAliasType</code> name and value (<a href="https://redirect.github.com/astral-sh/ruff/pull/29802">#29802</a>)</li> <li>Detect traversal budget exhaustion in products of lower bounds (<a href="https://redirect.github.com/astral-sh/ruff/pull/29679">#29679</a>)</li> <li>Fix recursive protocol materialization self-comparison (<a href="https://redirect.github.com/astral-sh/ruff/pull/29809">#29809</a>)</li> <li>Reject out-of-scope type variables in PEP 695 pack defaults (<a href="https://redirect.github.com/astral-sh/ruff/pull/29805">#29805</a>)</li> <li>Use a trailing ParamSpec default after a TypeVarTuple (<a href="https://redirect.github.com/astral-sh/ruff/pull/29755">#29755</a>)</li> </ul> <h3>LSP server</h3> <ul> <li>Parenthesize assignment and generator expressions in argument hint edits (<a href="https://redirect.github.com/astral-sh/ruff/pull/29797">#29797</a>)</li> <li>Place argument name inlay hints before grouping parentheses (<a href="https://redirect.github.com/astral-sh/ruff/pull/29794">#29794</a>)</li> <li>Place variable type inlay hints after grouping parentheses (<a href="https://redirect.github.com/astral-sh/ruff/pull/29795">#29795</a>)</li> </ul> <h3>Contributors</h3> <ul> <li><a href="https://github.com/carljm"><code>@carljm</code></a></li> <li><a href="https://github.com/AlexWaygood"><code>@AlexWaygood</code></a></li> <li><a href="https://github.com/charliermarsh"><code>@charliermarsh</code></a></li> </ul> <h2>Install ty 0.0.95</h2> <h3>Install prebuilt binaries via shell script</h3> <pre lang="sh"><code>curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/ty/releases/download/0.0.95/ty-installer.sh | sh </code></pre> <h3>Install prebuilt binaries via powershell script</h3> <pre lang="sh"><code>powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/ty/releases/download/0.0.95/ty-installer.ps1 | iex" </code></pre> <h2>Download ty 0.0.95</h2> <table> <thead> <tr> <th>File</th> <th>Platform</th> <th>Checksum</th> </tr> </thead> <tbody> <tr> <td><a href="https://releases.astral.sh/github/ty/releases/download/0.0.95/ty-aarch64-apple-darwin.tar.gz">ty-aarch64-apple-darwin.tar.gz</a></td> <td>Apple Silicon macOS</td> <td><a href="https://releases.astral.sh/github/ty/releases/download/0.0.95/ty-aarch64-apple-darwin.tar.gz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://releases.astral.sh/github/ty/releases/download/0.0.95/ty-x86_64-apple-darwin.tar.gz">ty-x86_64-apple-darwin.tar.gz</a></td> <td>Intel macOS</td> <td><a href="https://releases.astral.sh/github/ty/releases/download/0.0.95/ty-x86_64-apple-darwin.tar.gz.sha256">checksum</a></td> </tr> <tr> <td><a href="https://releases.astral.sh/github/ty/releases/download/0.0.95/ty-aarch64-pc-windows-msvc.zip">ty-aarch64-pc-windows-msvc.zip</a></td> <td>ARM64 Windows</td> <td><a href="https://releases.astral.sh/github/ty/releases/download/0.0.95/ty-aarch64-pc-windows-msvc.zip.sha256">checksum</a></td> </tr> <tr> <td><a href="https://releases.astral.sh/github/ty/releases/download/0.0.95/ty-i686-pc-windows-msvc.zip">ty-i686-pc-windows-msvc.zip</a></td> <td>x86 Windows</td> <td><a href="https://releases.astral.sh/github/ty/releases/download/0.0.95/ty-i686-pc-windows-msvc.zip.sha256">checksum</a></td> </tr> <tr> <td><a href="https://releases.astral.sh/github/ty/releases/download/0.0.95/ty-x86_64-pc-windows-msvc.zip">ty-x86_64-pc-windows-msvc.zip</a></td> <td>x64 Windows</td> <td><a href="https://releases.astral.sh/github/ty/releases/download/0.0.95/ty-x86_64-pc-windows-msvc.zip.sha256">checksum</a></td> </tr> <tr> <td><a href="https://releases.astral.sh/github/ty/releases/download/0.0.95/ty-aarch64-unknown-linux-gnu.tar.gz">ty-aarch64-unknown-linux-gnu.tar.gz</a></td> <td>ARM64 Linux</td> <td><a href="https://releases.astral.sh/github/ty/releases/download/0.0.95/ty-aarch64-unknown-linux-gnu.tar.gz.sha256">checksum</a></td> </tr> </tbody> </table> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/astral-sh/ty/blob/main/CHANGELOG.md">ty's changelog</a>.</em></p> <blockquote> <h2>0.0.95</h2> <p>Released on 2026-10-29.</p> <h3>Bug fixes</h3> <ul> <li>Accept another unpacked TypeVarTuple as a default (<a href="https://redirect.github.com/astral-sh/ruff/pull/29752">#29752</a>)</li> <li>Accept keyword arguments for <code>TypeAliasType</code> name and value (<a href="https://redirect.github.com/astral-sh/ruff/pull/29802">#29802</a>)</li> <li>Detect traversal budget exhaustion in products of lower bounds (<a href="https://redirect.github.com/astral-sh/ruff/pull/29679">#29679</a>)</li> <li>Fix recursive protocol materialization self-comparison (<a href="https://redirect.github.com/astral-sh/ruff/pull/29809">#29809</a>)</li> <li>Reject out-of-scope type variables in PEP 695 pack defaults (<a href="https://redirect.github.com/astral-sh/ruff/pull/29805">#29805</a>)</li> <li>Use a trailing ParamSpec default after a TypeVarTuple (<a href="https://redirect.github.com/astral-sh/ruff/pull/29755">#29755</a>)</li> </ul> <h3>LSP server</h3> <ul> <li>Parenthesize assignment and generator expressions in argument hint edits (<a href="https://redirect.github.com/astral-sh/ruff/pull/29797">#29797</a>)</li> <li>Place argument name inlay hints before grouping parentheses (<a href="https://redirect.github.com/astral-sh/ruff/pull/29794">#29794</a>)</li> <li>Place variable type inlay hints after grouping parentheses (<a href="https://redirect.github.com/astral-sh/ruff/pull/29795">#29795</a>)</li> </ul> <h3>Contributors</h3> <ul> <li><a href="https://github.com/carljm"><code>@carljm</code></a></li> <li><a href="https://github.com/AlexWaygood"><code>@AlexWaygood</code></a></li> <li><a href="https://github.com/charliermarsh"><code>@charliermarsh</code></a></li> </ul> <h2>0.0.94</h2> <p>Released on 2026-10-28.</p> <h3>Bug fixes</h3> <ul> <li>Correctly handle line continuation when fixing unused ignore comments (<a href="https://redirect.github.com/astral-sh/ruff/pull/29781">#29781</a>)</li> <li>Fix Linux x86-64 startup on older kernels (<a href="https://redirect.github.com/astral-sh/ty/pull/4853">#4853</a>)</li> <li>Fix a panic when a comprehension filter depends on a later binding (<a href="https://redirect.github.com/astral-sh/ruff/pull/29786">#29786</a>)</li> <li>Fix a panic when sorting diagnostics without a source location (<a href="https://redirect.github.com/astral-sh/ruff/pull/29780">#29780</a>)</li> <li>Fix panic on a chained assignment with a missing value (<a href="https://redirect.github.com/astral-sh/ruff/pull/29787">#29787</a>)</li> <li>Reject defaulted TypeVars after a TypeVarTuple in legacy generic classes (<a href="https://redirect.github.com/astral-sh/ruff/pull/29753">#29753</a>)</li> </ul> <h3>Other changes</h3> <ul> <li>Django: suppress invalid-override errors for <code>Meta</code> configurations (<a href="https://redirect.github.com/astral-sh/ruff/pull/29769">#29769</a>)</li> </ul> <h3>Contributors</h3> <ul> <li><a href="https://github.com/sharkdp"><code>@sharkdp</code></a></li> <li><a href="https://github.com/charliermarsh"><code>@charliermarsh</code></a></li> <li><a href="https://github.com/MichaReiser"><code>@MichaReiser</code></a></li> </ul> <h2>0.0.93</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/astral-sh/ty/commit/48c5ea1baf6144dc9918ae60040aaa4198b251ce"><code>48c5ea1</code></a> Bump version to 0.0.95 (<a href="https://redirect.github.com/astral-sh/ty/issues/4870">#4870</a>)</li> <li><a href="https://github.com/astral-sh/ty/commit/13ef399a5f95ab8be08f596551d09de7f063682a"><code>13ef399</code></a> Speed up releases by using larger runners for all Windows builds (<a href="https://redirect.github.com/astral-sh/ty/issues/4805">#4805</a>)</li> <li><a href="https://github.com/astral-sh/ty/commit/f8ea270e0b125116ce52868b16384819183056af"><code>f8ea270</code></a> Bump version to 0.0.94 (<a href="https://redirect.github.com/astral-sh/ty/issues/4857">#4857</a>)</li> <li><a href="https://github.com/astral-sh/ty/commit/7a36fc91318b07a58d0aa27753db4db1d212032a"><code>7a36fc9</code></a> Fix Linux x86-64 startup on older kernels (<a href="https://redirect.github.com/astral-sh/ty/issues/4853">#4853</a>)</li> <li><a href="https://github.com/astral-sh/ty/commit/3db5e4df7becd3ca55fd06c78e98bf7c8a38e469"><code>3db5e4d</code></a> Bump version to 0.0.93 (<a href="https://redirect.github.com/astral-sh/ty/issues/4842">#4842</a>)</li> <li><a href="https://github.com/astral-sh/ty/commit/f8fd0e8b5ce954b5a7f4e38431d805dd58e50e2d"><code>f8fd0e8</code></a> Update astral-sh/setup-uv action to v10.3.2 (<a href="https://redirect.github.com/astral-sh/ty/issues/4843">#4843</a>)</li> <li><a href="https://github.com/astral-sh/ty/commit/c1ca420006c7e5ef62ddfa16267fd7531a0a1000"><code>c1ca420</code></a> Update uv to v0.13.6 (<a href="https://redirect.github.com/astral-sh/ty/issues/4845">#4845</a>)</li> <li><a href="https://github.com/astral-sh/ty/commit/4c5c9079ac053fa3f879ee7625ec5c28a0817de4"><code>4c5c907</code></a> Update prek dependencies (<a href="https://redirect.github.com/astral-sh/ty/issues/4844">#4844</a>)</li> <li><a href="https://github.com/astral-sh/ty/commit/0445d6497ae22a0c480b23807cd71f47889053d8"><code>0445d64</code></a> Optimize Linux x86-64 ty releases with LLVM BOLT (<a href="https://redirect.github.com/astral-sh/ty/issues/4833">#4833</a>)</li> <li>See full diff in <a href="https://github.com/astral-sh/ty/compare/0.0.92...0.0.95">compare view</a></li> </ul> </details> <br /> Updates `pytest` from 9.1.1 to 9.2.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.2.0</h2> <h1>pytest 9.2.0 (2026-10-27)</h1> <h2>Removals and backward incompatible breaking changes</h2> <ul> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/14716">#14716</a>: <code>-c</code> now raises a usage error for a path that does not exist, is a directory, or is in a format pytest has no loader for. Such paths were previously either ignored or reported as an unhandled <code>FileNotFoundError</code>.</p> </li> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/8593">#8593</a>: The <code>indirect</code>, <code>ids</code> and <code>scope</code> arguments of <code>Metafunc.parametrize() <pytest.Metafunc.parametrize></code> -- and therefore of <code>@pytest.mark.parametrize <pytest.mark.parametrize ref></code> -- are now keyword-only.</p> <p>Passing them positionally was a common source of confusing errors, e.g. <code>parametrize("arg1", "arg2", [(1, 2)])</code> made the argvalues land in <code>indirect</code> and failed with <code>indirect fixture '(1, 2)' doesn't exist</code>; such mistakes now fail with an understandable <code>TypeError</code>. The type annotations have always declared these arguments as keyword-only.</p> </li> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/993">#993</a>: Plugin import failures at startup are now reported and classified instead of escaping as a raw traceback with the accidental exit code <code>1</code>:</p> <ul> <li>a plugin that cannot be found -- via <code>-p</code>, <code>pytest_plugins</code> or <code>PYTEST_PLUGINS</code> -- exits with <code>pytest.ExitCode</code> <code>USAGE_ERROR</code> (<code>4</code>), like a <code>conftest.py</code> that fails to import;</li> <li>a plugin that is found but raises while importing -- including a broken <code>pytest11</code> entry point or a missing plugin dependency -- exits with <code>pytest.ExitCode</code> <code>INTERNAL_ERROR</code> (<code>3</code>), with the traceback preserved.</li> </ul> <p><code>pytest.main</code> now returns these codes instead of raising <code>ImportError</code>. Also fixed an <code>IndexError</code> from pytest's own internals when the plugin raised an exception with no arguments.</p> </li> </ul> <h2>Deprecations (removal in next major release)</h2> <ul> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/14742">#14742</a>: The private <code>_pytest.python.CallSpec2</code> name has been renamed to <code>CallSpec</code>. The old <code>CallSpec2</code> alias remains available for now and will be removed in pytest 10 or 11.</p> </li> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/14755">#14755</a>: Schedule <em>yield_fixture</em> decorator for removal in pytest 10 or 11.</p> </li> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/14774">#14774</a>: Similarly to the deprecation of class-scoped fixtures defined as instance methods in pytest 9.1, <em>all</em> higher-scoped fixtures (<code>module</code>, <code>package</code>, and <code>session</code>) defined as instance methods are now deprecated.</p> <p>They suffer from the same issue the original deprecation only fixed for class-scoped fixtures, see <code>10819</code> and <code>14011</code>.</p> </li> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/14808">#14808</a>: Passing a non-string value to a <code>string</code>-typed ini option now emits a <code>pytest.PytestRemovedIn10Warning</code>. This affects <code>[tool.pytest.ini_options]</code> in <code>pyproject.toml</code>. In pytest 10 this will raise a <code>TypeError</code>, matching the behavior of the corresponding TOML config path.</p> </li> <li> <p><a href="https://redirect.github.com/pytest-dev/pytest/issues/7323">#7323</a>: Passing <code>bytes</code> to <code>TerminalReporter.write_line()</code> is now deprecated, pass a <code>str</code> instead.</p> </li> </ul> <h2>New features</h2> <ul> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/14743">#14743</a>: <!-- raw HTML omitted -->Full diff:<!-- raw HTML omitted --> now contains a legend explaining the <!-- raw HTML omitted -->+<!-- raw HTML omitted --> & <!-- raw HTML omitted -->-<!-- raw HTML omitted --> symbols in diff output.</li> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/2781">#2781</a>: When <code>strict_markers</code> is enabled, marker names used in <code>-m</code> expressions are now validated against registered markers.</li> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/6881">#6881</a>: Added the <code>parametrize_long_str_id_strategy</code> configuration option to control how long <code>str</code>/<code>bytes</code> parameter values are handled in auto-generated test IDs. Explicit IDs set via <code>ids=[...]</code> or <code>pytest.param(..., id=...)</code> are not affected. Available strategies: <code>short</code> (default, values over 100 chars fall back to <code>argname+index</code>), <code>sha256</code> (SHA-256 hex digest), <code>legacy</code> (keep full value), and <code>disallow</code> (error requesting explicit IDs).</li> </ul> <h2>Improvements in existing functionality</h2> <ul> <li><a href="https://redirect.github.com/pytest-dev/pytest/issues/10745">#10745</a>: A <code>RecursionError</code> whose recursion origin cannot be located now shows only the first and last 10 stack frames, matching what pytest already did when locating the origin failed outright. Previously the full traceback -- often around a thousand near-identical frames -- was rendered, which was both slow and unreadable. Pass <code>--full-trace</code> to see every frame.</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/ae1d0ff57b8bd4252da9ade7353523ac0ac73281"><code>ae1d0ff</code></a> Prepare release version 9.2.0</li> <li><a href="https://github.com/pytest-dev/pytest/commit/143ce31dea9b12ff2ab6add04361ee01ab114931"><code>143ce31</code></a> pre-commit: exclude codespell on generated release announcements</li> <li><a href="https://github.com/pytest-dev/pytest/commit/532dc5fc78f57de5115c5ecc9c6c29257787ada7"><code>532dc5f</code></a> tox: add attrs dependency to regen, needed in reportingdemo.rst</li> <li><a href="https://github.com/pytest-dev/pytest/commit/a7b2446ee41a7298d3a0bc22c52f3b8bacae1566"><code>a7b2446</code></a> Merge pull request <a href="https://redirect.github.com/pytest-dev/pytest/issues/15245">#15245</a> from pytest-dev/claude/project-thread-9jcf91</li> <li><a href="https://github.com/pytest-dev/pytest/commit/679d09c6945156746e17e9ec0b1c8309bbde3ad3"><code>679d09c</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/pytest-dev/pytest/issues/15266">#15266</a>)</li> <li><a href="https://github.com/pytest-dev/pytest/commit/41d12cdbb4a35a7877768d93d8dc50a9117a8d8c"><code>41d12cd</code></a> docs: clarify typing for yield fixtures</li> <li><a href="https://github.com/pytest-dev/pytest/commit/b9022ba04a33bfc76b5c9aefb8974755a80bf5ce"><code>b9022ba</code></a> Merge pull request <a href="https://redirect.github.com/pytest-dev/pytest/issues/15182">#15182</a> from 1871698/docs/improve-getting-started-description</li> <li><a href="https://github.com/pytest-dev/pytest/commit/16f87a7f364a7362fbfbb204c79a47ad567b4fbd"><code>16f87a7</code></a> docs: improve getting-started.rst test execution description</li> <li><a href="https://github.com/pytest-dev/pytest/commit/082ed70e314ee8e1ab117763d17fe801648f7508"><code>082ed70</code></a> Merge pull request <a href="https://redirect.github.com/pytest-dev/pytest/issues/15255">#15255</a> from pytest-dev/claude/project-thread-eoi3d6</li> <li><a href="https://github.com/pytest-dev/pytest/commit/ae37a013763e9c4a143245eda1acdc3c27961685"><code>ae37a01</code></a> Merge pull request <a href="https://redirect.github.com/pytest-dev/pytest/issues/15227">#15227</a> from pytest-dev/claude/project-thread-4etye4</li> <li>Additional commits viewable in <a href="https://github.com/pytest-dev/pytest/compare/9.1.1...9.2.0">compare view</a></li> </ul> </details> <br /> Updates `trio` from 0.34.0 to 0.35.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/python-trio/trio/releases">trio's releases</a>.</em></p> <blockquote> <h2>v0.35.0</h2> <p><strong>Full Changelog</strong>: <a href="https://github.com/python-trio/trio/compare/v0.34.0...v0.35.0">https://github.com/python-trio/trio/compare/v0.34.0...v0.35.0</a></p> <h2>Features</h2> <ul> <li>Mark that Trio supports 3.15. (<a href="https://redirect.github.com/python-trio/trio/issues/3563">python-trio/trio#3563</a>)</li> </ul> <h2>Bugfixes</h2> <ul> <li>Ensure that Trio consistently encodes all hostnames using IDNA 2008. (<a href="https://redirect.github.com/python-trio/trio/issues/11">python-trio/trio#11</a>)</li> <li>Avoid erroring when running in a CPython built for an Android API version less than 24. (<a href="https://redirect.github.com/python-trio/trio/issues/3493">python-trio/trio#3493</a>)</li> <li>Ensure <code>trio.lowlevel.notify_closing</code> works even on events that have been deleted, e.g. because they were registered as one shot events. (<a href="https://redirect.github.com/python-trio/trio/issues/3502">python-trio/trio#3502</a>)</li> <li><code>trio.Process</code> no longer emits an <code>EncodingWarning</code> on Linux when Python runs with <code>-X warn_default_encoding</code> (or <code>PYTHONWARNDEFAULTENCODING=1</code>). (<a href="https://redirect.github.com/python-trio/trio/issues/3555">python-trio/trio#3555</a>)</li> </ul> <h2>Miscellaneous internal changes</h2> <ul> <li>The typing for <code>async-file-objects</code> is now consistent about what it exposes based on what is exposed by the underlying object. (<a href="https://redirect.github.com/python-trio/trio/issues/3542">python-trio/trio#3542</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/python-trio/trio/commit/3b280b0b8eb86188edddd4d2e62fc947f0328f1e"><code>3b280b0</code></a> Bump version to 0.35.0</li> <li><a href="https://github.com/python-trio/trio/commit/023d1e3d2f8d8db11074797c368f077cb2287d2f"><code>023d1e3</code></a> Merge pull request <a href="https://redirect.github.com/python-trio/trio/issues/3566">#3566</a> from A5rocks/idna-consistently</li> <li><a href="https://github.com/python-trio/trio/commit/b0265fdc322b49356ffef4a1188a390d904c53d5"><code>b0265fd</code></a> Merge pull request <a href="https://redirect.github.com/python-trio/trio/issues/3567">#3567</a> from EmmanuelNiyonshuti/remove-stale-py314-beta-skipif</li> <li><a href="https://github.com/python-trio/trio/commit/9dc2007b2da11c9bb2963d864a2b238263a715aa"><code>9dc2007</code></a> remove stale py314-beta skipif on test_static_sees_all_symbols test</li> <li><a href="https://github.com/python-trio/trio/commit/f71cbdab875758abc5478f983ed53cb3bbc0357d"><code>f71cbda</code></a> Merge branch 'main' into idna-consistently</li> <li><a href="https://github.com/python-trio/trio/commit/9f2df4e0ed2b97b7d8065dd8652c6bbadc4a0946"><code>9f2df4e</code></a> Merge pull request <a href="https://redirect.github.com/python-trio/trio/issues/3563">#3563</a> from A5rocks/py3.15</li> <li><a href="https://github.com/python-trio/trio/commit/0d50d81a7915c464f8fd4cb98fcd98a049eadf43"><code>0d50d81</code></a> Use 3.15 in CI</li> <li><a href="https://github.com/python-trio/trio/commit/b5ed232e96b34cee45c82d49422ab61111aabdbb"><code>b5ed232</code></a> Encode hostnames consistently</li> <li><a href="https://github.com/python-trio/trio/commit/354708edcbd3f01cc8673bdf3ba3561c44bbb2ad"><code>354708e</code></a> Bump dependencies from commit 009bc2 (<a href="https://redirect.github.com/python-trio/trio/issues/3559">#3559</a>)</li> <li><a href="https://github.com/python-trio/trio/commit/009bc2d13850738e7762fea16097c507d599c0bf"><code>009bc2d</code></a> Update AsyncFileWrapper for consistency between what we need/what we declare ...</li> <li>Additional commits viewable in <a href="https://github.com/python-trio/trio/compare/v0.34.0...v0.35.0">compare view</a></li> </ul> </details> <br /> Updates `hatchling` from 1.32.4 to 1.33.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pypa/hatch/releases">hatchling's releases</a>.</em></p> <blockquote> <h2>Hatchling v1.33.0</h2> <p><em><strong>Added:</strong></em></p> <ul> <li>Officially support Python 3.15.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pypa/hatch/commit/c93b5427189f68a1f113b7f282b5ad11cecf00f0"><code>c93b542</code></a> release Hatch v1.18.2</li> <li><a href="https://github.com/pypa/hatch/commit/b69f97a07e65ffd2d957d89d7e3d390f3822add5"><code>b69f97a</code></a> release Hatchling v1.33.0</li> <li><a href="https://github.com/pypa/hatch/commit/e7495de2cac0710df2698b650427c7593f012037"><code>e7495de</code></a> Prepare for release for hatch 1.18.2 and hatchling 1.32.5 (<a href="https://redirect.github.com/pypa/hatch/issues/2477">#2477</a>)</li> <li><a href="https://github.com/pypa/hatch/commit/ad6d66e7c5dba7deea7601e50072676defae8b3e"><code>ad6d66e</code></a> Use --python instead of --python-version for uv commands (<a href="https://redirect.github.com/pypa/hatch/issues/2473">#2473</a>)</li> <li><a href="https://github.com/pypa/hatch/commit/6744e6038c9f026cde718666f12501545c13556d"><code>6744e60</code></a> Fix <code>hatch test</code> crashing or silently doing nothing when filters match no env...</li> <li><a href="https://github.com/pypa/hatch/commit/52de770c14b118b5a5efa872446627ebd57c2fb2"><code>52de770</code></a> match exclude key exactly when detecting injection (<a href="https://redirect.github.com/pypa/hatch/issues/2444">#2444</a>)</li> <li><a href="https://github.com/pypa/hatch/commit/7bbe76369a9454d1d79b5cfb0ee4cb8d2b76f614"><code>7bbe763</code></a> Fix require-runtime-dependencies being ignored for build hooks (<a href="https://redirect.github.com/pypa/hatch/issues/2257">#2257</a>)</li> <li><a href="https://github.com/pypa/hatch/commit/ac9c0c9544795b380c2a5f63f80c1f46db3c5d4c"><code>ac9c0c9</code></a> Add 3.15 support (<a href="https://redirect.github.com/pypa/hatch/issues/2468">#2468</a>)</li> <li><a href="https://github.com/pypa/hatch/commit/7c26ebeaf8b83f5f0374a2545bb15e36c87db0d0"><code>7c26ebe</code></a> Fix <code>hatch.cli.application.Application.ensure_plugin_dependencies</code> PyApp Comp...</li> <li>See full diff in <a href="https://github.com/pypa/hatch/compare/hatchling-v1.32.4...hatchling-v1.33.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Justin Beckwith <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4b10e22 - Browse repository at this point
Copy the full SHA 4b10e22View commit details -
chore(deps): bump multidict from 6.9.1 to 7.1.0 (#4259)
Bumps [multidict](https://github.com/aio-libs/multidict) from 6.9.1 to 7.1.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/aio-libs/multidict/releases">multidict's releases</a>.</em></p> <blockquote> <p>7.1.0 is a correctness and housekeeping release. It changes what <code>keys()</code> yields, fixes a long list of crashes and inconsistencies that Python code run in the middle of an operation could trigger, stores the common all-<code>str</code> multidicts in half the space, and deprecates <code>multidict.upstr</code>.</p> <p><strong>Behaviour changes.</strong> <code>keys()</code> and iteration over a multidict yield each key once, as spelled in its first item, so <code>len(d.keys())</code> counts distinct keys; <code>items()</code>, <code>values()</code> and <code>len(d)</code> still see every item. A <code>str</code> subclass's own <code>lower()</code> is no longer called to compute the case-insensitive identity of a <code>CIMultiDict</code> key.</p> <p><strong>Robustness.</strong> Finalizers, <code>__eq__()</code>, <code>__repr__()</code>, <code>lower()</code> and argument iterators that read or mutate the multidict in the middle of <code>__init__()</code>, <code>update()</code>, <code>merge()</code>, <code>del d[key]</code>, <code>popall()</code>, <code>popitem()</code>, <code>to_dict()</code> or <code>repr()</code> no longer crash the C extension, lose or duplicate pairs, or make the two backends disagree. Two data races against lock-free readers on the free-threaded build are gone too.</p> <p><strong>Memory.</strong> A <code>MultiDict</code> whose keys are all exact <code>str</code>, and a <code>CIMultiDict</code> whose keys are all exact <code>istr</code>, are stored in a compact table without a separate identity and hash per entry, which cuts their size by about 45%.</p> <h2>Bug fixes</h2> <ul> <li> <p>Fixed building the C extension on platforms where <code>char</code> is unsigned, such as ARM, PowerPC, s390x and RISC-V, and with GCC 9, which flags CPython's own headers from 3.12 on; both failed on a sign conversion warning since <code>-Wconversion</code> took effect. GCC 9 builds the extension without <code>-Wconversion</code> -- by <a href="https://github.com/asvetlov"><code>@asvetlov</code></a>.</p> <p><em>Related issues and pull requests on GitHub:</em> <a href="https://redirect.github.com/aio-libs/multidict/issues/1759">#1759</a>, <a href="https://redirect.github.com/aio-libs/multidict/issues/1760">#1760</a>.</p> </li> <li> <p>Fixed <code>getversion()</code> returning only the low 32 bits of the version on Windows and on 32-bit platforms, where two different versions could compare equal, and fixed a race in the pure-Python implementation on GIL builds that could give two multidicts mutated at the same time from different threads the same version -- by <a href="https://github.com/asvetlov"><code>@asvetlov</code></a>.</p> <p><em>Related issues and pull requests on GitHub:</em> <a href="https://redirect.github.com/aio-libs/multidict/issues/1607">#1607</a>, <a href="https://redirect.github.com/aio-libs/multidict/issues/1610">#1610</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/aio-libs/multidict/blob/master/CHANGES.rst">multidict's changelog</a>.</em></p> <blockquote> <h1>7.1.0</h1> <p><em>(2026-10-08)</em></p> <p>7.1.0 is a correctness and housekeeping release. It changes what :meth:<code>~multidict.MultiDict.keys</code> yields, fixes a long list of crashes and inconsistencies that Python code run in the middle of an operation could trigger, stores the common all-:class:<code>str</code> multidicts in half the space, and deprecates <code>multidict.upstr</code>.</p> <p><strong>Behaviour changes.</strong> :meth:<code>~multidict.MultiDict.keys</code> and iteration over a multidict yield each key once, as spelled in its first item, so <code>len(d.keys())</code> counts distinct keys; :meth:<code>~multidict.MultiDict.items</code>, :meth:<code>~multidict.MultiDict.values</code> and <code>len(d)</code> still see every item. A :class:<code>str</code> subclass's own <code>lower()</code> is no longer called to compute the case-insensitive identity of a :class:<code>~multidict.CIMultiDict</code> key.</p> <p><strong>Robustness.</strong> Finalizers, <code>__eq__()</code>, <code>__repr__()</code>, <code>lower()</code> and argument iterators that read or mutate the multidict in the middle of <code>__init__()</code>, <code>update()</code>, <code>merge()</code>, <code>del d[key]</code>, :meth:<code>~multidict.MultiDict.popall</code>, :meth:<code>~multidict.MultiDict.popitem</code>, :meth:<code>~multidict.MultiDict.to_dict</code> or :func:<code>repr</code> no longer crash the C extension, lose or duplicate pairs, or make the two backends disagree. Two data races against lock-free readers on the free-threaded build are gone too.</p> <p><strong>Memory.</strong> A :class:<code>~multidict.MultiDict</code> whose keys are all exact :class:<code>str</code>, and a :class:<code>~multidict.CIMultiDict</code> whose keys are all exact :class:<code>~multidict.istr</code>, are stored in a compact table without a separate identity and hash per entry, which cuts their size by about 45%.</p> <h2>Bug fixes</h2> <ul> <li> <p>Fixed building the C extension on platforms where <code>char</code> is unsigned, such as ARM, PowerPC, s390x and RISC-V, and with GCC 9, which flags CPython's own headers from 3.12 on; both failed on a sign conversion warning since <code>-Wconversion</code> took effect. GCC 9 builds the extension without <code>-Wconversion</code> -- by :user:<code>asvetlov</code>.</p> <p><em>Related issues and pull requests on GitHub:</em> :issue:<code>1759</code>, :issue:<code>1760</code>.</p> </li> <li> <p>Fixed :func:<code>~multidict.getversion</code> returning only the low 32 bits of the version on Windows and on 32-bit platforms, where two different versions could compare equal, and fixed a race in the pure-Python implementation on GIL builds that could give two multidicts mutated at the same time from different threads the same version</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/aio-libs/multidict/commit/709f2600d00c4c3ed28f696e578027a299c7da83"><code>709f260</code></a> Trim the test run of the emulated wheel jobs (<a href="https://redirect.github.com/aio-libs/multidict/issues/1762">#1762</a>)</li> <li><a href="https://github.com/aio-libs/multidict/commit/dbc3aba367f1bf5d64004b3c8f8c2b204f01c9be"><code>dbc3aba</code></a> Build(deps): Bump pypa/cibuildwheel from 4.2.1 to 4.3.0 (<a href="https://redirect.github.com/aio-libs/multidict/issues/1761">#1761</a>)</li> <li><a href="https://github.com/aio-libs/multidict/commit/ef68371d0692ebdbfa6f8ad33f5e4e4e3df0a7e2"><code>ef68371</code></a> Build without -Wconversion on GCC 9 (<a href="https://redirect.github.com/aio-libs/multidict/issues/1760">#1760</a>)</li> <li><a href="https://github.com/aio-libs/multidict/commit/e812c4fcb144403caaa962c7ac396e5b3033841e"><code>e812c4f</code></a> Fix the C extension build where char is unsigned (<a href="https://redirect.github.com/aio-libs/multidict/issues/1759">#1759</a>)</li> <li><a href="https://github.com/aio-libs/multidict/commit/f9459a10f4f1edf941be069fdee27493b9de0084"><code>f9459a1</code></a> Release 7.1.0 (<a href="https://redirect.github.com/aio-libs/multidict/issues/1758">#1758</a>)</li> <li><a href="https://github.com/aio-libs/multidict/commit/45552bd41765f4556530e49ffe5194e316521ec9"><code>45552bd</code></a> Fold the hash chain walk into _md_update() (<a href="https://redirect.github.com/aio-libs/multidict/issues/1757">#1757</a>)</li> <li><a href="https://github.com/aio-libs/multidict/commit/84c5412aa421d8cff0045fae9885e82b6e052261"><code>84c5412</code></a> Move to_dict() into to_dict.h and mark only later duplicates (<a href="https://redirect.github.com/aio-libs/multidict/issues/1756">#1756</a>)</li> <li><a href="https://github.com/aio-libs/multidict/commit/cfd8ea27ad2bb8a53d8725f79829171f06980584"><code>cfd8ea2</code></a> Reserve room for update() and merge() only when keys are added (<a href="https://redirect.github.com/aio-libs/multidict/issues/1755">#1755</a>)</li> <li><a href="https://github.com/aio-libs/multidict/commit/fb828e3f55d120212787eb79a0b5e3d2adff11aa"><code>fb828e3</code></a> Prefix header-local helpers with an underscore (<a href="https://redirect.github.com/aio-libs/multidict/issues/1753">#1753</a>)</li> <li><a href="https://github.com/aio-libs/multidict/commit/3c3fc84dc316496cb243da3c2bf8d39c8df507ba"><code>3c3fc84</code></a> Move istr_canonical() into istr_object.h (<a href="https://redirect.github.com/aio-libs/multidict/issues/1754">#1754</a>)</li> <li>Additional commits viewable in <a href="https://github.com/aio-libs/multidict/compare/v6.9.1...v7.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] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Justin Beckwith <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 28cdb1b - Browse repository at this point
Copy the full SHA 28cdb1bView commit details -
chore(deps-dev): bump types-requests from 2.33.0.20261006 to 2.33.0.2…
…0261030 (#4260) Bumps [types-requests](https://github.com/python/typeshed) from 2.33.0.20261006 to 2.33.0.20261030. <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] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Justin Beckwith <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for de498d7 - Browse repository at this point
Copy the full SHA de498d7View commit details -
Automated Release PR --- ## [3.48.0](v3.47.0...v3.48.0) (2026-11-09) ### Features * **api:** add stream options for agent sessions ([#4251](#4251)) ([c6fc264](c6fc264)) * **api:** recognize gpt-6-rosalind in beta Responses ([#4257](#4257)) ([3774b7e](3774b7e)) ### Chores * **api:** retain agent scheduling support ([#4255](#4255)) ([a1175a3](a1175a3)) * **deps:** bump locked multidict from 6.9.1 to 7.1.0 ([#4259](#4259)) ([28cdb1b](28cdb1b)) * **deps-dev:** bump the python-maintenance group with 5 updates ([#4258](#4258)) ([4b10e22](4b10e22)) * **deps-dev:** bump types-requests from 2.33.0.20261006 to 2.33.0.20261030 ([#4260](#4260)) ([de498d7](de498d7)) ### Documentation * consolidate AGENTS.md guidance ([#4254](#4254)) ([44b1555](44b1555)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Co-authored-by: openai-sdks[bot] <284451331+openai-sdks[bot]@users.noreply.github.com> Co-authored-by: Daniel Piet <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7e1582c - Browse repository at this point
Copy the full SHA 7e1582cView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v3.47.0...v3.48.0