alecthomas / alecthomas/importmagic
Imports block detection needs to be smarter
- Lingua principale
- Python
- Stelle
- 122
- Fork
- 21
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
The current imports block detection need to be improved, for example, this is a typical and common import block in applications that supports several versions of some library or different versions of python even:
``` python
try:
import ujson as json
except ImportError:
import json
from collections import defaultdict
import sys
def main():
print(os.uname())
a = defaultdict(list)
```
This is translated to
``` python
import json
import sys
from collections import defaultdict
import ujsonas json
try:
import ujson as json
except ImportError:
import json
from collections import defaultdict
import sys
def main():
print(os.uname())
a = defaultdict(list)
```
That is a complete disaster, in the other hand, the scope is fine:
```
print(scope.find_unresolved_and_unreferenced_symbols())
(set(['os.uname']), set(['sys', 'json', 'main']))
```
The importer has no clue about what is really imported in the file as its not able to know where the imports block really ends.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Valutazione
Questa issue non è ancora stata valutata.