microsoft / pylance-release

Documentation and issues for Pylance
Creative Commons Attribution 4.0 International
1.7k stars 769 forks source link

parse error on magic statement on ipython mode. #5808

Open ZJDATY opened 4 months ago

ZJDATY commented 4 months ago

When I open an. ipynb file using vscode, it always generates strange errors. Clearly able to operate normally. image image The meaning of this error is "should be an expression".

image Unable to import 'requests' from source parsing

I am using the latest version of VScode that comes with Pylance.

Pylance version:v2024.4.1

vscode version: 1.88.1 (user setup)
提交: e170252f762678dec6ca2cc69aba1570769a5d39
日期: 2024-04-10T17:41:02.734Z
Electron: 28.2.8
ElectronBuildId: 27744544
Chromium: 120.0.6099.291
Node.js: 18.18.2
V8: 12.0.267.19-electron.0
OS: Windows_NT x64 10.0.22631

image

heejaechang commented 4 months ago

sounds like our tokenzier/parser is not ignoring % statement properly in ipython mode.

for requests, it is complaining that you didn't install requests packages in the openvino env.

ZJDATY commented 4 months ago

sounds like our tokenzier/parser is not ignoring % statement properly in ipython mode.

for requests, it is complaining that you didn't install requests packages in the openvino env.

I have install requests and it can running success.

heejaechang commented 4 months ago

I have install requests and it can running success.

how about providing us a log to see what python paths (libraries) we got? if you are using latest pylance (104), then there should be Pylance: start logging/stop logging command.

can you provide us the log produced by the command to us?

rchiodo commented 4 months ago

The requests problem might be a dupe of this issue: https://github.com/microsoft/vscode-jupyter/issues/15965

Meaning we don't know which kernel is selected.

The log should show that though.

ZJDATY commented 4 months ago

sounds like our tokenzier/parser is not ignoring % statement properly in ipython mode.

for requests, it is complaining that you didn't install requests packages in the openvino env.

It seems to be that it doesn't detect my openvino environment correctly. I'm using a virtual python environment under conda.

heejaechang commented 4 months ago

so, it probably is the dup of the bug Rich linked, then.

ZJDATY commented 4 months ago

@heejaechang @rchiodo After reading your reply, it may have been caused by a kernel link error, so I tried switching the kernel multiple times and restarted VSCode and Windows 11. The error regarding import has disappeared now, it seems that the link is correct. But the first mistake still exists. image image

pyright-18848-KKlrxNNpgVLY.zip

ZJDATY commented 4 months ago

I put %pip install -q "matplotlib>=3.4" outside and it won't report any errors.

image

heejaechang commented 4 months ago

ya, first issue looks like this

sounds like our tokenzier/parser is not ignoring % statement properly in ipython mode.

looks like there is a bug around this - https://github.com/microsoft/pyright/blob/main/packages/pyright-internal/src/parser/tokenizer.ts#L450