#24969: Backwards compatibility for optparse in management commands broken for
overrides.
-------------------------------------+-------------------------------------
     Reporter:  paul-butcher         |                    Owner:  nobody
         Type:  Uncategorized        |                   Status:  closed
    Component:  Core (Management     |                  Version:  1.8
  commands)                          |               Resolution:
     Severity:  Normal               |  worksforme
     Keywords:                       |             Triage Stage:
                                     |  Unreviewed
    Has patch:  0                    |      Needs documentation:  0
  Needs tests:  0                    |  Patch needs improvement:  0
Easy pickings:  0                    |                    UI/UX:  0
-------------------------------------+-------------------------------------

Comment (by paul-butcher):

 Replying to [comment:1 timgraham]:

 * Reinstate BaseCommand.option_list as it was before
 * In `use_argparse`, change the condition (currently `not
 bool(self.option_list)`) to `self.option_list == BaseCommand.option_list`.
 * In `create_parser`, remove all the individual `add_option` calls,
 leaving just the one in the loop.

 That way, the old defaulting/overriding behaviour could be maintained.

 Another candidate could be to set the conflict_handler to "resolve",
 however, that would be a major change to the behaviour (authors of derived
 classes may be expecting an OptionConflictError that doesn't come), and
 would still only allow derived classes to override, rather than remove the
 default options.  So, that would be inappropriate.

--
Ticket URL: <https://code.djangoproject.com/ticket/24969#comment:3>
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/070.b4d5af83e4d039d9b359bd2c733e02a5%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to