[Python-Dev] cpython: Rename contextlib.ignored() to contextlib.ignore().

Raymond Hettinger raymond.hettinger at gmail.com
Wed Oct 16 09:07:16 CEST 2013


On Oct 15, 2013, at 4:24 PM, Nick Coghlan <ncoghlan at gmail.com> wrote:

> this thread still epitomises everything that sucks about soul destroying, energy draining bikeshed painting that makes me wonder why I ever bother trying to make anything better.
> 



FWIW, here's a little history:
* Last year, one of my clients suggested this feature
  based on code his team had been using in production.
* I thought it might be a good idea, so I scanned the standard
  library and some third-party modules to see how well it worked
  with existing examples of try/except/pass.
* I posted the proposal to the tracker over a year ago (issue 15806)
  along with some examples from the standard library.  I also posted
  an egrep search so that others could evaluate it on their own code.
* Along the way, I did usability testing on some corporate Python
  programmers who were attending my intermediate and advance
  Python classes.  The feedback was positive (expressive, readable,
  and concise).
* In February, I presented ignore() in the keynote for the U.S. Pycon.
  Again, the feedback was positive.
* After some refinements, the module maintainer (Nick) blessed it 
  and the code was checked-in to the Python 3.4 codebase in early March.
* This month, I made a minor name change from ignored() to ignore().
* The next day, Antoine launched this thread and everything hit the fan.

As Nick said, this thread was just awful.  I found it painful to read each day.
Shoot from the hip comments were given greater weight than months
of development.  Neither Nick nor I were given an ounce of respect
for the thought we put into this or for our long track record of good design.

The python-dev mailing list is a complex (and sometimes dysfunctional)
environment.  I understand that everyone on the soccer field feels a need
to step-in and kick the ball to affect the outcome, but this was too much.

To each participant, it may not seem like bike-shedding, but there
were almost a hundred emails in this thread just to kick around six lines
of code that were checked-in seven months ago:

        @contextmanager
        def ignored(*exceptions):
            try:
                yield
            except exceptions:
                pass


Raymond


P.S.  The name suppress() is not as good as ignore(), but I'm so burnt out
on this thread that I just don't care anymore.


  



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20131016/26cb7e43/attachment.html>


More information about the Python-Dev mailing list