Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Build: Bump sqlalchemy from 2.0.37 to 2.0.38 (apache#1620)
Bumps [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) from 2.0.37 to 2.0.38. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/sqlalchemy/sqlalchemy/releases">sqlalchemy's releases</a>.</em></p> <blockquote> <h1>2.0.38</h1> <p>Released: February 6, 2025</p> <h2>engine</h2> <ul> <li> <p><strong>[engine] [bug]</strong> Fixed event-related issue where invoking <code>Engine.execution_options()</code> on a <code>Engine</code> multiple times while making use of event-registering parameters such as <code>isolation_level</code> would lead to internal errors involving event registration.</p> <p>References: <a href="https://www.sqlalchemy.org/trac/ticket/12289">#12289</a></p> </li> </ul> <h2>sql</h2> <ul> <li> <p><strong>[sql] [bug]</strong> Reorganized the internals by which the <code>.c</code> collection on a <code>FromClause</code> gets generated so that it is resilient against the collection being accessed in concurrent fashion. An example is creating a <code>Alias</code> or <code>Subquery</code> and accessing it as a module level variable. This impacts the Oracle dialect which uses such module-level global alias objects but is of general use as well.</p> <p>References: <a href="https://www.sqlalchemy.org/trac/ticket/12302">#12302</a></p> </li> <li> <p><strong>[sql] [bug]</strong> Fixed SQL composition bug which impacted caching where using a <code>None</code> value inside of an <code>in_()</code> expression would bypass the usual "expanded bind parameter" logic used by the IN construct, which allows proper caching to take place.</p> <p>References: <a href="https://www.sqlalchemy.org/trac/ticket/12314">#12314</a></p> </li> </ul> <h2>postgresql</h2> <ul> <li> <p><strong>[postgresql] [usecase] [asyncio]</strong> Added an additional <code>asyncio.shield()</code> call within the connection terminate process of the asyncpg driver, to mitigate an issue where terminate would be prevented from completing under the anyio concurrency library.</p> <p>References: <a href="https://www.sqlalchemy.org/trac/ticket/12077">#12077</a></p> </li> <li> <p><strong>[postgresql] [bug]</strong> Adjusted the asyncpg connection wrapper so that the <code>connection.transaction()</code> call sent to asyncpg sends <code>None</code> for <code>isolation_level</code> if not otherwise set in the SQLAlchemy dialect/wrapper, thereby allowing asyncpg to make use of the server level setting for <code>isolation_level</code> in the absense of a client-level setting. Previously, this behavior of asyncpg was blocked by a hardcoded <code>read_committed</code>.</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/sqlalchemy/sqlalchemy/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 merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
- Loading branch information