New submission from Gregory P. Smith <g...@krypto.org>:

Recurring theme: The stdlib has the issue of DeprecationWarning being added to 
APIs we are changing or removing a few versions in the future yet we perceive 
that many people never actually bother to try checking their code for 
deprecation warnings.  Only raising issues with a documented, warned, planned 
in advance API change when it actually happens.

Could we reduce the chances of this by enabling DeprecationWarnings by default 
for processes started via unittest.main() and other common unittest 
entrypoints?  (other test frameworks like pytest should also consider this if 
they don't already; do we have any existing external implementations of this 
for inspiration?)

One issue with this is that some important warnings are at _parse_ time or 
_import_ time.  But we can deal with import time ones if we are able to have 
the unittest entrypoint re-exec the process with the same args but with 
warnings enabled.  (and _could_ surface parse time ones if we're willing to 
accept slower process startup by disabling use of pycs; i wouldn't go that far)

Related work: https://www.python.org/dev/peps/pep-0565/

has this idea already been discussed?  I don't remember and haven't searched 
backwards...

----------
components: Library (Lib), Tests
messages: 363620
nosy: gregory.p.smith, ncoghlan, vstinner
priority: normal
severity: normal
stage: needs patch
status: open
title: Enable DeprecationWarnings by default when not explicit in 
unittest.main()
type: enhancement
versions: Python 3.9

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue39892>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to