Show line which caused the DeprecationWarning (#1831)

When raising a DeprecationWarning, show the line in the application code
which caused the warning, rather than the line in Flask

e.g. a file `app.py` with:

```python
from flask import Flask
from flask.ext.babel import Babel
```

will show:

```
app.py:2: ExtDeprecationWarning: Importing flask.ext.babel is
deprecated, use flask_babel instead.
```

instead of:

```
/home/mapleoin/venv/local/lib/python2.7/site-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.babel is deprecated, use flask_babel instead.
  .format(x=modname), ExtDeprecationWarning
```
This commit is contained in:
Ionuț Arțăriși 2016-05-29 22:51:05 +01:00 committed by David Lord
parent 70de011d51
commit ba07f5bd81
1 changed files with 1 additions and 1 deletions

View File

@ -68,7 +68,7 @@ class ExtensionImporter(object):
warnings.warn(
"Importing flask.ext.{x} is deprecated, use flask_{x} instead."
.format(x=modname), ExtDeprecationWarning
.format(x=modname), ExtDeprecationWarning, stacklevel=2
)
for path in self.module_choices: