On Wed, Sep 29, 2010 at 05:42, Antoine Pitrou <solip...@pitrou.net> wrote: > > Le mercredi 29 septembre 2010 à 07:27 -0500, Benjamin Peterson a écrit : >> > >> > I would like to piggy-back on this discussion to suggest further >> > warnings (either by default, or switchable). >> > >> > One feature I've often considered would be to add a warning in FileIO >> > and socket dealloc if these objects haven't been closed explicitly. In >> > most situations, relying on garbage collection to shutdown OS resources >> > (here, file descriptors) is something we like to discourage. >> > Furthermore, it can produce real bugs, especially under Windows when >> > coupled with refererence cycles created by traceback objects (the >> > random test_tarfile failures on the Windows buildbots were a symptom of >> > that; their cause would have been obvious with such warnings). >> > >> > What do you think? >> >> It seems like a slippery slope. Sometimes you really don't care like >> when you're just hacking together a quick script. > > Isn't the "with" statement appropriate in these cases?
Yes, which is why I suspect people saying they don't bother have been programming Python for a while and are not in the habit yet of using a 'with' statement. The amount of extra typing compared to inlining a call is minimal. > > My assumption is/was that the benefit of warning against leaks in real > applications (or even - sigh - the standard library) would outweigh the > inconvenience when hacking together a quick script. Does everyone here run all their code under py-debug? If not then I say switch it on when py-debug is on so that we at least detect the leaks in the stdlib without having to think about it. > > But if it doesn't, what about enabling it with a command-line switch? Sure, but I say always turn it on under py-debug. _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com