#24340: Nested deconstruction does not descend into lists, tuples or dicts
----------------------------+--------------------
     Reporter:  gasman      |      Owner:  nobody
         Type:  Bug         |     Status:  new
    Component:  Migrations  |    Version:  1.7
     Severity:  Normal      |   Keywords:
 Triage Stage:  Unreviewed  |  Has patch:  0
Easy pickings:  0           |      UI/UX:  0
----------------------------+--------------------
 `django.db.migrations.autodetector.deep_deconstruct` returns list, tuple
 and dict values untouched, rather than recursively deconstructing the
 items within those collections. This causes problems when those items are
 objects with `deconstruct` methods, which compare as equal when
 deconstructed but not when compared directly - in these cases, the
 autodetector will wrongly report a change to the field.

 (I'll share the details of my rather esoteric use case if you really want,
 but given that `deep_deconstruct` already includes specific handling for
 classes and fields as parameters of a model field, I dare say that it's
 not too much of a leap to include these types as well!)

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

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/049.bd11780f119d044eef4f6925cf7e991c%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to