#20625: Custom Chainable QuerySets
-------------------------------------+-------------------------------------
     Reporter:  danols               |                    Owner:  loic84
         Type:  New feature          |                   Status:  assigned
    Component:  Database layer       |                  Version:  master
  (models, ORM)                      |               Resolution:
     Severity:  Normal               |             Triage Stage:  Accepted
     Keywords:  QuerySet,            |      Needs documentation:  1
  models.Manager, chainable          |  Patch needs improvement:  1
    Has patch:  1                    |                    UI/UX:  0
  Needs tests:  1                    |
Easy pickings:  0                    |
-------------------------------------+-------------------------------------
Changes (by loic84):

 * owner:  danols => loic84


Comment:

 To summarize a bit:

 - The latest patch should cover all concerns raised so far: it handles
 specialized querysets such as `ValuesQuerySet`, doesn't break pickling,
 cruft-free methods definitions, sane defaults (no private or magic
 methods), a mechanism to opt-out or force-in certain methods and it's
 robust enough to sustain the complete Django test suite while replacing
 almost 90% of `Manager`'s public API.

 - We settled that deprecating legacy proxy methods is out of scope for
 this ticket while acknowledging that it's desirable in the long run. We'll
 open a dedicated ticket once we land this feature.

 - Since we are '''not''' deprecating the legacy methods, we need a
 dedicated test suite.

 - 1.6b1 has landed, so we can resume work targeting master.

 Where are we in term of consensus? I'll turn this into an RFC patch as
 soon as I get a green flag on the implementation.

 Latest implementation can be found here:
 https://github.com/loic/django/compare/ticket20625_optout.

-- 
Ticket URL: <https://code.djangoproject.com/ticket/20625#comment:17>
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/064.ae91a4cfb1c5e78c2955f5226d860fb6%40djangoproject.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to