smarter deprecation warning using regex
This commit is contained in:
parent
e31d41ca7c
commit
6a170b4c10
1 changed files with 19 additions and 2 deletions
|
@ -15,10 +15,27 @@ REQUIRES = [
|
|||
'git+https://github.com/karlicoss/rexport',
|
||||
]
|
||||
|
||||
from my.core import warnings as W
|
||||
import re
|
||||
import traceback
|
||||
|
||||
# some hacky traceback to inspect the current stack
|
||||
# to see if the user is using the old style of importing
|
||||
warn = False
|
||||
for f in traceback.extract_stack():
|
||||
line = f.line or '' # just in case it's None, who knows..
|
||||
|
||||
# cover the most common ways of previously interacting with the module
|
||||
if 'import my.reddit ' in (line + ' '):
|
||||
warn = True
|
||||
elif 'from my import reddit' in line:
|
||||
warn = True
|
||||
elif re.match(r"from my\.reddit\simport\s(comments|saved|submissions|upvoted)", line):
|
||||
warn = True
|
||||
|
||||
# TODO: add link to instructions to migrate
|
||||
W.high("DEPRECATED! Instead of my.reddit, import from my.reddit.all instead.")
|
||||
if warn:
|
||||
from my.core import warnings as W
|
||||
W.high("DEPRECATED! Instead of my.reddit, import from my.reddit.all instead.")
|
||||
|
||||
|
||||
from .rexport import *
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue