On 25 February 2015 at 20:21, Paul Moore email@example.com wrote:
On 25 February 2015 at 10:17, Chris Angelico firstname.lastname@example.org wrote:
Agreed; the difference does need justification. Here's justification: Interactive execution places code and output right next to each other. The warning would be emitted right at the time when the corresponding code is entered.
On the other hand, what if "import <3rd party module>" flags a deprecation warning because of something the module author does? Certainly I can just ignore it (as it's "only" a warning) but it would get annoying pretty fast if I couldn't suppress it...
Ah, this is exactly the reason we turned them off in the first place (only applied at the module level, rather than the whole application level).
That puts me firmly in the -1 camp, for the same reason we turned them off in the first place.
Turning them all on is a matter of passing "-Wall" at the command line, but the command line help could stand to say that explicitly (currently it only describes the full selective warning control syntax, without mentioning the "all", "once" and "error" shorthands: https://docs.python.org/3/using/cmdline.html#cmdoption-W)