Message385364
For similar reasons as friendly-traceback, I'd be interested in a list of stdlib modules to be able to provide additional information in case of exceptions.
For instance:
string.ascii_lowercase
> Before: NameError("name 'string' is not defined",)
> After: NameError("name 'string' is not defined. Did you mean to import string first)
from maths import pi
> Before: ImportError('No module named maths',)
> After: ImportError("No module named maths. Did you mean 'math'?",)
choice
> Before: NameError("name 'choice' is not defined",)
> After: NameError("name 'choice' is not defined. Did you mean 'choice' from random (not imported)?",)
from itertools import pi
> Before: ImportError('cannot import name pi',)
> After: ImportError("cannot import name pi. Did you mean 'from math import pi'?",)
The first 2 cases only use the module name but the last 2 cases will actually import the modules to get the names in it and I want to do this for modules which are safe to import (no side-effect expected).
Source: https://github.com/SylvainDe/DidYouMean-Python/blob/master/didyoumean/didyoumean_internal.py#L30 (but if you are interested in that kind of features, I'd recommend using friendly-traceback instead) |
|
Date |
User |
Action |
Args |
2021-01-20 19:51:21 | SylvainDe | set | recipients:
+ SylvainDe, ronaldoussoren, vstinner, serhiy.storchaka, corona10 |
2021-01-20 19:51:21 | SylvainDe | set | messageid: <1611172281.32.0.211659579197.issue42955@roundup.psfhosted.org> |
2021-01-20 19:51:21 | SylvainDe | link | issue42955 messages |
2021-01-20 19:51:20 | SylvainDe | create | |
|