Skip to content

Bump sqlalchemy from 1.3.20 to 1.4.16

Norman Ziegner requested to merge dependabot/pip/sqlalchemy-1.4.16 into master

Bumps sqlalchemy from 1.3.20 to 1.4.16.

Release notes

Sourced from sqlalchemy's releases.

1.4.16

Released: May 28, 2021

general

  • [general] [bug] Resolved various deprecation warnings which were appearing as of Python version 3.10.0b1.

    References: #6540, #6543

orm

  • [orm] [bug] Fixed issue when using _orm.relationship.cascade_backrefs parameter set to False, which per change_5150 is set to become the standard behavior in SQLAlchemy 2.0, where adding the item to a collection that uniquifies, such as set or dict would fail to fire a cascade event if the object were already associated in that collection via the backref. This fix represents a fundamental change in the collection mechanics by introducing a new event state which can fire off for a collection mutation even if there is no net change on the collection; the action is now suited using a new event hook _orm.AttributeEvents.append_wo_mutation().

    References: #6471

  • [orm] [bug] [regression] Fixed regression involving clause adaption of labeled ORM compound elements, such as single-table inheritance discriminator expressions with conditionals or CASE expressions, which could cause aliased expressions such as those used in ORM join / joinedload operations to not be adapted correctly, such as referring to the wrong table in the ON clause in a join.

    This change also improves a performance bump that was located within the process of invoking _sql.Select.join() given an ORM attribute as a target.

    References: #6550

  • [orm] [bug] [regression] Fixed regression where the full combination of joined inheritance, global with_polymorphic, self-referential relationship and joined loading would fail to be able to produce a query with the scope of lazy loads and object refresh operations that also attempted to render the joined loader.

    References: #6495

  • [orm] [bug] Enhanced the bind resolution rules for _orm.Session.execute() so that when a non-ORM statement such as an _sql.insert() construct nonetheless is built against ORM objects, to the greatest degree possible

... (truncated)

Commits

Merge request reports