pyls not working with star '*' imports
atticusmatticus opened this issue · 0 comments
I am using Neovim 0.5.0-dev+nightly with pyls
which works well and quickly for most packages like numpy
for example. However when used with the fastai
library the LSP just returns:
Diagnostics:
1. 'from fastai.vision.all import *' used; unable to detect undefined names
The fastai
library is designed to be imported this way so changing this line isn't really a viable option.
To reproduce my issue you can install fastai via miniconda3:
conda install -c fastai -c pytorch fastai
and then install python-language-server:
conda install python-language-server
Then open a file in neovim with the conda-env enabled and pyls
enabled, here is a short example file:
from fastai.vision.all import *
path = untar_data(URLs.PETS)/'images'
def is_cat(x): return x[0].isupper()
dls = ImageDataLoaders.from_name_func(
path, get_image_files(path), valid_pct=0.2, seed=42,
label_func=is_cat, item_tfms=Resize(224))
learn = cnn_learner(dls, resnet34, metrics = error_rate)
all of these functions show as having warnings, for example for the path=
line:
'untar_data' may be undefined, or defined from star imports: fastai.vision.all
And the hover help for example doesn't work for these functions. Is there something that can be done to make wildcard imports like this work correctly with the language server?
If there is anymore information I can give you please let me know. Thanks