:tags: bug, orm, dataclasses
:tickets: 6346
- Adjusted the declarative scan for dataclasses so that the inheritance
- behavior of :func:`_orm.declared_attr` established on a mixin, when using
- the new form of having it inside of a ``dataclasses.field()`` construct and
- not actually a descriptor attribute on the class, correctly accommodates
- the case when the target class to be mapped is a subclass of an existing
- mapped class which has already mapped that :func:`_orm.declared_attr`, and
- therefore should not be re-applied to this class.
+ Adjusted the declarative scan for dataclasses so that the inheritance
+ behavior of :func:`_orm.declared_attr` established on a mixin, when using
+ the new form of having it inside of a ``dataclasses.field()`` construct and
+ not actually a descriptor attribute on the class, correctly accommodates
+ the case when the target class to be mapped is a subclass of an existing
+ mapped class which has already mapped that :func:`_orm.declared_attr`, and
+ therefore should not be re-applied to this class.
:tags: bug, orm
:tickets: 6350
- Fixed two distinct issues, each of which would come into play under certain
- circumstances, most likely however one which is a common mis-configuration
- in :class:`_hybrid.hybrid_property`, where the "expression" implementation
- would return a non :class:`_sql.ClauseElement` such as a boolean value.
- For both issues, 1.3's behavior was to silently ignore the
- mis-configuration and ultimately attempt to interpret the value as a
- SQL expression, which would lead to an incorrect query.
+ Fixed two distinct issues mostly affecting
+ :class:`_hybrid.hybrid_property`, which would come into play under common
+ mis-configuration scenarios that were silently ignored in 1.3, and now
+ failed in 1.4, where the "expression" implementation would return a non
+ :class:`_sql.ClauseElement` such as a boolean value. For both issues, 1.3's
+ behavior was to silently ignore the mis-configuration and ultimately
+ attempt to interpret the value as a SQL expression, which would lead to an
+ incorrect query.
* Fixed issue regarding interaction of the attribute system with
hybrid_property, where if the ``__clause_element__()`` method of the
:tags: bug, orm, regression
:tickets: 6360, 6359
- Fixed issue where the new :ref:`session_autobegin` behavior failed to
- "autobegin" in the case where an existing persistent object has an
- attribute change, which would then impact the behavior of
+ Fixed issue where the new :ref:`autobegin <session_autobegin>` behavior
+ failed to "autobegin" in the case where an existing persistent object has
+ an attribute change, which would then impact the behavior of
:meth:`_orm.Session.rollback` in that no snapshot was created to be rolled
back. The "attribute modify" mechanics have been updated to ensure
"autobegin", which does not perform any database work, does occur when
.. change::
- :tags: ext, bug, regression
+ :tags: orm, bug, regression
:tickets: 6386
Fixed regression in ORM where using hybrid property to indicate an