Re: [Django] #36173: Usage of Concat with an explicit `output_field` results in unstable migrations changes

14 views
Skip to first unread message

Django

unread,
Feb 7, 2025, 4:42:42 PM2/7/25
to django-...@googlegroups.com
#36173: Usage of Concat with an explicit `output_field` results in unstable
migrations changes
-------------------------------------+-------------------------------------
Reporter: erchenstein | Owner: Simon
| Charette
Type: Bug | Status: assigned
Component: Migrations | Version: 5.1
Severity: Normal | Resolution:
Keywords: migrations concat | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Simon Charette):

* has_patch: 0 => 1

--
Ticket URL: <https://code.djangoproject.com/ticket/36173#comment:2>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
Feb 11, 2025, 3:44:46 AM2/11/25
to django-...@googlegroups.com
#36173: Usage of Concat with an explicit `output_field` results in unstable
migrations changes
-------------------------------------+-------------------------------------
Reporter: erchenstein | Owner: Simon
| Charette
Type: Bug | Status: assigned
Component: Migrations | Version: 5.1
Severity: Normal | Resolution:
Keywords: migrations concat | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by erchenstein):

Not passing the `output_field` worked. thanks for the fix.
--
Ticket URL: <https://code.djangoproject.com/ticket/36173#comment:3>

Django

unread,
Feb 15, 2025, 9:08:36 AM2/15/25
to django-...@googlegroups.com
#36173: Usage of Concat with an explicit `output_field` results in unstable
migrations changes
-------------------------------------+-------------------------------------
Reporter: erchenstein | Owner: Simon
| Charette
Type: Bug | Status: assigned
Component: Migrations | Version: 5.1
Severity: Normal | Resolution:
Keywords: migrations concat | Triage Stage: Ready for
| checkin
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak):

* stage: Accepted => Ready for checkin

--
Ticket URL: <https://code.djangoproject.com/ticket/36173#comment:4>

Django

unread,
Feb 15, 2025, 10:23:53 AM2/15/25
to django-...@googlegroups.com
#36173: Usage of Concat with an explicit `output_field` results in unstable
migrations changes
-------------------------------------+-------------------------------------
Reporter: erchenstein | Owner: Simon
| Charette
Type: Bug | Status: closed
Component: Migrations | Version: 5.1
Severity: Normal | Resolution: fixed
Keywords: migrations concat | Triage Stage: Ready for
| checkin
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak <felisiak.mariusz@…>):

* resolution: => fixed
* status: assigned => closed

Comment:

In [changeset:"df2c4952df6d93c575fb8a3c853dc9d4c2449f36" df2c495]:
{{{#!CommitTicketReference repository=""
revision="df2c4952df6d93c575fb8a3c853dc9d4c2449f36"
Fixed #36173 -- Stabilized identity of Concat with an explicit
output_field.

When Expression.__init__() overrides make use of *args, **kwargs
captures their argument values are respectively bound as a tuple and
dict instances. These composite values might themselves contain values
that require special identity treatments such as Concat(output_field)
as it's a Field instance.

Refs #30628 which introduced bound Field differentiation but lacked
argument captures handling.

Thanks erchenstein for the report.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/36173#comment:5>

Django

unread,
Feb 15, 2025, 10:24:29 AM2/15/25
to django-...@googlegroups.com
#36173: Usage of Concat with an explicit `output_field` results in unstable
migrations changes
-------------------------------------+-------------------------------------
Reporter: erchenstein | Owner: Simon
| Charette
Type: Bug | Status: closed
Component: Migrations | Version: 5.1
Severity: Normal | Resolution: fixed
Keywords: migrations concat | Triage Stage: Ready for
| checkin
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):

In [changeset:"8b1e324ca4aa1ae0721f6f5dcfba8325a751ef3c" 8b1e324]:
{{{#!CommitTicketReference repository=""
revision="8b1e324ca4aa1ae0721f6f5dcfba8325a751ef3c"
[5.2.x] Fixed #36173 -- Stabilized identity of Concat with an explicit
output_field.

When Expression.__init__() overrides make use of *args, **kwargs
captures their argument values are respectively bound as a tuple and
dict instances. These composite values might themselves contain values
that require special identity treatments such as Concat(output_field)
as it's a Field instance.

Refs #30628 which introduced bound Field differentiation but lacked
argument captures handling.

Thanks erchenstein for the report.

Backport of df2c4952df6d93c575fb8a3c853dc9d4c2449f36 from main
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/36173#comment:6>
Reply all
Reply to author
Forward
0 new messages