On 8 November 2017 at 10:03, Guido van Rossum <gu...@python.org> wrote:
> OK, so let's come up with a set of heuristics that does the right thing for
> those cases specifically. I'd say whenever you're executing code from a
> zipfile or some such it's not considered your own code (by default).

My current preferred heuristic is just to add a new default filter to the list:

    once::DeprecationWarning:__main__

Which says to warn specifically for the __main__ module, and continue
ignoring everything else.

That way ad hoc scripts and the REPL will get warnings by default,
while zipapps and packages can avoid warnings by keeping their
__main__.py simple, and importing a CLI helper function from another
module. Entry point wrapper scripts will implicitly have the same
effect for installed packages.

If folks want to get warnings for other modules as well, then they can
either pass "-Wd" to get warnings for everything, or else enable them
selectively using the default main module filter as an example.

Cheers,
Nick.

-- 
Nick Coghlan   |   ncogh...@gmail.com   |   Brisbane, Australia
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to