Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 9e26318

Browse files
committed
Add a new API:
warn_explicit(message, category, filename, lineno, module, registry) The regular warn() call calculates a bunch of values and calls warn_explicit() with these. This will be used to issue better syntax warnings.
1 parent d6a1d79 commit 9e26318

1 file changed

Lines changed: 10 additions & 0 deletions

File tree

Lib/warnings.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,16 @@ def warn(message, category=None, stacklevel=1):
3434
filename = module
3535
# Quick test for common case
3636
registry = globals.setdefault("__warningregistry__", {})
37+
warn_explicit(message, category, filename, lineno, module, registry)
38+
39+
def warn_explicit(message, category, filename, lineno,
40+
module=None, registry=None):
41+
if module is None:
42+
module = filename
43+
if module[-3:].lower() == ".py":
44+
module = module[:-3] # XXX What about leading pathname?
45+
if registry is None:
46+
registry = {}
3747
key = (message, category, lineno)
3848
if registry.get(key):
3949
return

0 commit comments

Comments
 (0)