aiohttp-demos
aiohttp-demos copied to clipboard
build(deps): bump sqlalchemy from 1.4.45 to 2.0.28
Bumps sqlalchemy from 1.4.45 to 2.0.28.
Release notes
Sourced from sqlalchemy's releases.
2.0.28
Released: March 4, 2024
orm
[orm] [performance] [bug] [regression] Adjusted the fix made in #10570, released in 2.0.23, where new logic was added to reconcile possibly changing bound parameter values across cache key generations used within the
_orm.with_expression()construct. The new logic changes the approach by which the new bound parameter values are associated with the statement, avoiding the need to deep-copy the statement which can result in a significant performance penalty for very deep / complex SQL constructs. The new approach no longer requires this deep-copy step.References: #11085
[orm] [bug] [regression] Fixed regression caused by #9779 where using the "secondary" table in a relationship
and_()expression would fail to be aliased to match how the "secondary" table normally renders within a_sql.Select.join()expression, leading to an invalid query.References: #11010
engine
[engine] [usecase] Added new core execution option
_engine.Connection.execution_options.preserve_rowcount. When set, thecursor.rowcountattribute from the DBAPI cursor will be unconditionally memoized at statement execution time, so that whatever value the DBAPI offers for any kind of statement will be available using the_engine.CursorResult.rowcountattribute from the_engine.CursorResult. This allows the rowcount to be accessed for statments such as INSERT and SELECT, to the degree supported by the DBAPI in use. Theengine_insertmanyvaluesalso supports this option and will ensure_engine.CursorResult.rowcountis correctly set for a bulk INSERT of rows when set.References: #10974
asyncio
- [asyncio] [bug] An error is raised if a
QueuePoolor other non-asyncio pool class is passed to_asyncio.create_async_engine(). This engine only accepts asyncio-compatible pool classes includingAsyncAdaptedQueuePool. Other pool classes such asNullPoolare compatible with both synchronous and asynchronous
... (truncated)
Commits
- See full diff in compare view
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 commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill 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 versionwill 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 dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)