espressif / vscode-esp-idf-extension

Visual Studio Code extension for ESP-IDF projects
https://docs.espressif.com/projects/vscode-esp-idf-extension/en/latest/
Apache License 2.0
1.08k stars 306 forks source link

Extension never gets past "installation" stage (VSC-1246) #1080

Closed xobs closed 11 months ago

xobs commented 1 year ago

OS

Windows

Operating System version

Windows 11 22H2 (22621.2428)

Visual Studio Code version

1.84.1

ESP-IDF version

a7fbf452fa181452f266b16c49063e2ff069f119

Python version

3.10.11

Doctor command output

There is no output when I run the command. However, I see from the log file that it is copied to the clipboard. This should be communicated to the user.

---------------------------------------------- ESP-IDF Extension for Visual Studio Code report --------------------------------------------- OS win32 x64 10.0.22621 System environment variable IDF_PYTHON_ENV_PATH C:.espressif\python_env\idf5.2_py3.10_env System environment variable PATH C:.espressif\tools\xtensa-esp-elf-gdb\12.1_20221002\xtensa-esp-elf-gdb\bin;C:.espressif\tools\riscv32-esp-elf-gdb\12.1_20221002\riscv32-esp-elf-gdb\bin;C:.espressif\tools\esp32ulp-elf\2.35_20220830\esp32ulp-elf\bin;C:.espressif\tools\cmake\3.24.0\bin;C:.espressif\tools\openocd-esp32\v0.12.0-esp32-20230921\openocd-esp32\bin;C:.espressif\tools\ninja\1.11.1\;C:.espressif\tools\idf-exe\1.0.3\;C:.espressif\tools\ccache\4.8\ccache-4.8-windows-x86_64;C:.espressif\tools\dfu-util\0.11\dfu-util-0.11-win64;C:.espressif\python_env\idf5.2_py3.10_env\Scripts;C:\esp\esp-idf\tools;C:\Program Files\PowerShell\7;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\libnvvp;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\dotnet\;C:\Program Files (x86)\MATLAB\MATLAB Runtime\v85\runtime\win32;C:\Program Files\Microsoft Network Monitor 3\;C:\Program Files (x86)\Windows Kits\10\Microsoft Application Virtualization\Sequencer\;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Program Files\usbipd-win\;C:\Program Files\NVIDIA Corporation\Nsight Compute 2022.4.0\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files (x86)\dotnet\;C:\Program Files\Git\cmd;C:\Program Files\ojdkbuild\java-17-openjdk-17.0.3.0.6-1\bin;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\;C:\Program Files\CMake\bin;C:\Program Files\Docker\Docker\resources\bin;C:\Program Files\Go\bin;C:\Program Files\nodejs\;E:\Software\Liquid Technologies\Liquid Studio\XmlDataBinder20\Redist20\cpp\win32\bin;E:\Software\Liquid Technologies\Liquid Studio\XmlDataBinder20\Redist20\cpp\win64\bin;C:\Program Files\PowerShell\7\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:.rustup\toolchains\esp\riscv32-esp-elf\esp-13.2.0_20230928\riscv32-esp-elf\bin;C:.rustup\toolchains\esp\xtensa-esp-elf\esp-13.2.0_20230928\xtensa-esp-elf\bin;C:.rustup\toolchains\esp\xtensa-esp32-elf-clang\esp-16.0.0-20230516\esp-clang\bin;C:\Program Files\PowerShell\7;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\libnvvp;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\dotnet\;C:\Program Files (x86)\MATLAB\MATLAB Runtime\v85\runtime\win32;C:\Program Files\Microsoft Network Monitor 3\;C:\Program Files (x86)\Windows Kits\10\Microsoft Application Virtualization\Sequencer\;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Program Files\usbipd-win\;C:\Program Files\NVIDIA Corporation\Nsight Compute 2022.4.0\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files (x86)\dotnet\;C:\Program Files\Git\cmd;C:\Program Files\ojdkbuild\java-17-openjdk-17.0.3.0.6-1\bin;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\;C:\Program Files\CMake\bin;C:\Program Files\Docker\Docker\resources\bin;C:\Program Files\Go\bin;C:\Program Files\nodejs\;E:\Software\Liquid Technologies\Liquid Studio\XmlDataBinder20\Redist20\cpp\win32\bin;E:\Software\Liquid Technologies\Liquid Studio\XmlDataBinder20\Redist20\cpp\win64\bin;C:\Program Files\PowerShell\7\;C:.cargo\bin;C:\AppData\Local\Microsoft\WindowsApps;C:\AppData\Local\Programs\Microsoft VS Code\bin;C:.dotnet\tools;C:\Program Files (x86)\Nmap;C:\AppData\Local\Microsoft\WinGet\Links;E:\Software\Renode\bin;C:\go\bin;E:\Software\flutter\bin;C:\AppData\Roaming\npm;E:\Software\Microsoft VS Code Insiders\bin;E:\Software\xpack-riscv-none-elf-gcc-12.2.0-3\bin\;C:\AppData\Local\Microsoft\WindowsApps System environment variable PYTHON undefined Visual Studio Code version 1.84.1 Visual Studio Code language en Visual Studio Code shell C:\Program Files\PowerShell\7\pwsh.exe ESP-IDF Extension version 1.6.5 Workspace folder e:\Code\Farpatch\farpatch ---------------------------------------------------- Extension configuration settings ------------------------------------------------------ ESP-ADF Path (idf.espAdfPath) ${env:ADF_PATH} ESP-IDF Path (idf.espIdfPath) C:\esp\esp-idf ESP-MDF Path (idf.espMdfPath) ${env:MDF_PATH} ESP-Matter Path (idf.espMatterPath) ${env:ESP_MATTER_PATH} Custom extra paths (idf.customExtraPaths) C:.espressif\tools\xtensa-esp-elf-gdb\12.1_20231023\xtensa-esp-elf-gdb\bin;C:.espressif\tools\riscv32-esp-elf-gdb\12.1_20231023\riscv32-esp-elf-gdb\bin;C:.espressif\tools\xtensa-esp-elf\esp-13.2.0_20230928\xtensa-esp-elf\bin;C:.espressif\tools\riscv32-esp-elf\esp-13.2.0_20230928\riscv32-esp-elf\bin;C:.espressif\tools\esp32ulp-elf\2.35_20220830\esp32ulp-elf\bin;C:.espressif\tools\cmake\3.24.0\bin;C:.espressif\tools\openocd-esp32\v0.12.0-esp32-20230921\openocd-esp32\bin;C:.espressif\tools\ninja\1.11.1;C:.espressif\tools\idf-exe\1.0.3;C:.espressif\tools\ccache\4.8\ccache-4.8-windows-x86_64;C:.espressif\tools\dfu-util\0.11\dfu-util-0.11-win64;C:.espressif\tools\esp-rom-elfs\20230320 Custom extra vars (idf.customExtraVars) OPENOCD_SCRIPTS: C:.espressif\tools\openocd-esp32\v0.12.0-esp32-20230921/openocd-esp32/share/openocd/scripts IDF_CCACHE_ENABLE: 1 ESP_ROM_ELF_DIR: C:.espressif\tools\esp-rom-elfs\20230320/ Virtual env Python Path (idf.pythonBinPath) C:.espressif\python_env\idf5.0_py3.10_env\Scripts\python.exe Serial port (idf.port) COM14 OpenOCD Configs (idf.openOcdConfigs) board/esp32s3-builtin.cfg ESP-IDF Tools Path (idf.toolsPath) C:.espressif Git Path (idf.gitPath) C:.espressif\tools\idf-git\2.39.2\cmd\git.exe -------------------------------------------------------- Configurations access ------------------------------------------------------------- Access to ESP-ADF Path (idf.espAdfPath) false Access to ESP-IDF Path (idf.espIdfPath) true Access to ESP-MDF Path (idf.espMdfPath) false Access to ESP-Matter Path (idf.espMatterPath) false Access to ESP-IDF Custom extra paths Access to C:.espressif\tools\xtensa-esp-elf-gdb\12.1_20231023\xtensa-esp-elf-gdb\bin: true Access to C:.espressif\tools\riscv32-esp-elf-gdb\12.1_20231023\riscv32-esp-elf-gdb\bin: true Access to C:.espressif\tools\xtensa-esp-elf\esp-13.2.0_20230928\xtensa-esp-elf\bin: true Access to C:.espressif\tools\riscv32-esp-elf\esp-13.2.0_20230928\riscv32-esp-elf\bin: true Access to C:.espressif\tools\esp32ulp-elf\2.35_20220830\esp32ulp-elf\bin: true Access to C:.espressif\tools\cmake\3.24.0\bin: true Access to C:.espressif\tools\openocd-esp32\v0.12.0-esp32-20230921\openocd-esp32\bin: true Access to C:.espressif\tools\ninja\1.11.1: true Access to C:.espressif\tools\idf-exe\1.0.3: true Access to C:.espressif\tools\ccache\4.8\ccache-4.8-windows-x86_64: true Access to C:.espressif\tools\dfu-util\0.11\dfu-util-0.11-win64: true Access to C:.espressif\tools\esp-rom-elfs\20230320: true Access to Virtual env Python Path (idf.pythonBinPath) false Access to CMake in environment PATH undefined Access to Ninja in environment PATH undefined Access to ESP-IDF Tools Path (idf.toolsPath) true -------------------------------------------------------- Configurations has spaces ------------------------------------------------------------- Spaces in system environment Path true Spaces in ESP-ADF Path (idf.espAdfPath) false Spaces in ESP-IDF Path (idf.espIdfPath) false Spaces in ESP-MDF Path (idf.espMdfPath) false Spaces in ESP-Matter Path (idf.espMatterPath) false Spaces in ESP-IDF Custom extra paths Spaces in C:.espressif\tools\xtensa-esp-elf-gdb\12.1_20231023\xtensa-esp-elf-gdb\bin: false Spaces in C:.espressif\tools\riscv32-esp-elf-gdb\12.1_20231023\riscv32-esp-elf-gdb\bin: false Spaces in C:.espressif\tools\xtensa-esp-elf\esp-13.2.0_20230928\xtensa-esp-elf\bin: false Spaces in C:.espressif\tools\riscv32-esp-elf\esp-13.2.0_20230928\riscv32-esp-elf\bin: false Spaces in C:.espressif\tools\esp32ulp-elf\2.35_20220830\esp32ulp-elf\bin: false Spaces in C:.espressif\tools\cmake\3.24.0\bin: false Spaces in C:.espressif\tools\openocd-esp32\v0.12.0-esp32-20230921\openocd-esp32\bin: false Spaces in C:.espressif\tools\ninja\1.11.1: false Spaces in C:.espressif\tools\idf-exe\1.0.3: false Spaces in C:.espressif\tools\ccache\4.8\ccache-4.8-windows-x86_64: false Spaces in C:.espressif\tools\dfu-util\0.11\dfu-util-0.11-win64: false Spaces in C:.espressif\tools\esp-rom-elfs\20230320: false Spaces in Virtual env Python Path (idf.pythonBinPath) false Spaces in ESP-IDF Tools Path (idf.toolsPath) false ----------------------------------------------------------- Executables Versions ----------------------------------------------------------- Git version 2.39.2.windows.1 ESP-IDF version 5.3.0 Python version Not found Python's pip version Not found -------------------------------------------------- Project configuration settings ---------------------------------------------------------- -------------------------------------------------- Python packages in idf.pythonBinPath ---------------------------------------------------- ---------------------------------------------------- Check ESP-IDF python requirements.txt ------------------------------------------------- Check ESP-IDF Python packages undefined ---------------------------------------------------- Check extension requirements.txt ------------------------------------------------------ Check Extension Python packages undefined ---------------------------------------------------- Check ESP-IDF debug adapter requirements.txt ------------------------------------------ Check Debug AdapterPython packages undefined ----------------------------------------------------------- Latest error ----------------------------------------------------------------- Latest error at Unknown error in ESP-IDF doctor command

Extension

[This text cannot be included here because it is longer than 65536 characters]

Description

When I open an esp-idf program, I'm constantly sent through the setup process. I'm using esp-idf in a terminal window, so I know the installation is fine.

When I run setup it automatically chooses my existing setup. It then attempts to install a bunch of stuff. The last line is Installing ESP-IDF extension python packages in C:\Users\Sean\.espressif\python_env\idf5.3_py3.11_env\Scripts\python.exe ... and then it just goes back to the Setup screen without giving an error.

Debug Message

N/A

Other Steps to Reproduce

No idea. My solution right now is to ignore the esp-idf extension and do everything via Terminal, since the extension just isn't working. This used to work, but some update somewhere has broken it.

I have checked existing issues, online documentation and the Troubleshooting Guide

brianignacio5 commented 1 year ago

Can you share the extension log lines related to the setup ? There should be something related to python packages install based on your description.

Seems to me you have conflicting settings in your project and the extension. See that Doctor command has idf.pythonBinPath to different location from what you are mentioning in the setup.

xobs commented 1 year ago

Here is the file, compressed as a zip file: esp_idf_vsc_ext.zip

There is no error message that appears -- it just keeps sending me back to the same setup screen. Perhaps one should be added?

To the best of my knowledge, I haven't updated my settings.json file with any ESP-specific configuration, so if there's an inconsistency there then it is a bug caused by esp-idf.

I do see something has set idf.pythonBinPathWin in my settings.json to C:\\Users\\Sean\\.espressif\\python_env\\idf5.1_py3.8_env\\Scripts\\python.exe which is a valid path. What could have set that variable, and how should it be fixed?

github-actions[bot] commented 11 months ago

This issue has been marked as stale since there are no activities, and this will be closed in 5 days if there are no further activities

brianignacio5 commented 11 months ago

What is the output when you run this in terminal:

C:\\Users\\Sean\\.espressif\\python_env\\idf5.1_py3.8_env\\Scripts\\python.exe\" \"C:\\Users\\Sean\\esp\\esp-idf\\tools\\check_python_dependencies.py\" -r \"C:\\Users\\Sean\\esp\\esp-idf\\tools\\requirements\\requirements.core.txt\"

What is the output of installation stage ? Check menu View -> Output -> Select ESP-IDF from dropdown. What is the output from setup?

xobs commented 11 months ago

Something must have changed. When I started up vscode-esp-idf-extension today it said this:

idf_versions.txt has (1) KB
idf_versions.txt progress: 100.00% (0.08 / 0.08) KB
The following Python requirements are not satisfied:
'esp-idf-panic-decoder' - was not found and is required by the application

'pyclang' - was not found and is required by the application
To install the missing packages, please run "install.bat"
Diagnostic information:
    IDF_PYTHON_ENV_PATH: C:\Users\Sean\.espressif\python_env\idf5.0_py3.10_env
    Python interpreter used: C:\Users\Sean\.espressif\python_env\idf5.1_py3.8_env\Scripts\python.exe
    Warning: python interpreter not running from IDF_PYTHON_ENV_PATH
    PATH: C:\Users\Sean\esp\esp-idf\components\esptool_py\esptool;C:\Users\Sean\esp\esp-idf\components\espcoredump;C:\Users\Sean\esp\esp-idf\components\partition_table;C:\Users\Sean\.espressif\tools\xtensa-esp-elf-gdb\12.1_20231023\xtensa-esp-elf-gdb\bin;C:\Users\Sean\.espressif\tools\riscv32-esp-elf-gdb\12.1_20231023\riscv32-esp-elf-gdb\bin;C:\Users\Sean\.espressif\tools\xtensa-esp-elf\esp-13.2.0_20230928\xtensa-esp-elf\bin;C:\Users\Sean\.espressif\tools\riscv32-esp-elf\esp-13.2.0_20230928\riscv32-esp-elf\bin;C:\Users\Sean\.espressif\tools\esp32ulp-elf\2.35_20220830\esp32ulp-elf\bin;C:\Users\Sean\.espressif\tools\cmake\3.24.0\bin;C:\Users\Sean\.espressif\tools\openocd-esp32\v0.12.0-esp32-20230921\openocd-esp32\bin;C:\Users\Sean\.espressif\tools\ninja\1.11.1;C:\Users\Sean\.espressif\tools\idf-exe\1.0.3;C:\Users\Sean\.espressif\tools\ccache\4.8\ccache-4.8-windows-x86_64;C:\Users\Sean\.espressif\tools\dfu-util\0.11\dfu-util-0.11-win64;C:\Users\Sean\.espressif\tools\esp-rom-elfs\20230320;C:\Users\Sean\.espressif\python_env\idf5.0_py3.10_env\Scripts;C:\Users\Sean\esp\esp-idf\tools;C:\Users\Sean\.espressif\tools\idf-git\2.30.1\cmd;C:\Program Files\PowerShell\7;;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\libnvvp;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\dotnet\;C:\Program Files (x86)\MATLAB\MATLAB Runtime\v85\runtime\win32;C:\Program Files\Microsoft Network Monitor 3\;C:\Program Files (x86)\Windows Kits\10\Microsoft Application Virtualization\Sequencer\;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Program Files\usbipd-win\;C:\Program Files\NVIDIA Corporation\Nsight Compute 2022.4.0\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files (x86)\dotnet\;C:\Program Files\Git\cmd;C:\Program Files\ojdkbuild\java-17-openjdk-17.0.3.0.6-1\bin;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\;C:\Program Files\CMake\bin;C:\Program Files\Docker\Docker\resources\bin;C:\Program Files\Go\bin;C:\Program Files\nodejs\;E:\Software\Liquid Technologies\Liquid Studio\XmlDataBinder20\Redist20\cpp\win32\bin;E:\Software\Liquid Technologies\Liquid Studio\XmlDataBinder20\Redist20\cpp\win64\bin;C:\Program Files\PowerShell\7\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Users\Sean\.rustup\toolchains\esp\riscv32-esp-elf\esp-13.2.0_20230928\riscv32-esp-elf\bin;C:\Users\Sean\.rustup\toolchains\esp\xtensa-esp-elf\esp-13.2.0_20230928\xtensa-esp-elf\bin;C:\Users\Sean\.rustup\toolchains\esp\xtensa-esp32-elf-clang\esp-16.0.0-20230516\esp-clang\bin;C:\Program Files\PowerShell\7;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.0\libnvvp;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\dotnet\;C:\Program Files (x86)\MATLAB\MATLAB Runtime\v85\runtime\win32;C:\Program Files\Microsoft Network Monitor 3\;C:\Program Files (x86)\Windows Kits\10\Microsoft Application Virtualization\Sequencer\;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Program Files\usbipd-win\;C:\Program Files\NVIDIA Corporation\Nsight Compute 2022.4.0\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files (x86)\dotnet\;C:\Program Files\Git\cmd;C:\Program Files\ojdkbuild\java-17-openjdk-17.0.3.0.6-1\bin;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\;C:\Program Files\CMake\bin;C:\Program Files\Docker\Docker\resources\bin;C:\Program Files\Go\bin;C:\Program Files\nodejs\;E:\Software\Liquid Technologies\Liquid Studio\XmlDataBinder20\Redist20\cpp\win32\bin;C:\Program Files (x86)\GnuWin32\bin;C:\Program Files\PowerShell\7\;C:\Users\Sean\.cargo\bin;C:\Users\Sean\AppData\Local\Microsoft\WindowsApps;C:\Users\Sean\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\Sean\.dotnet\tools;C:\Program Files (x86)\Nmap;C:\Users\Sean\AppData\Local\Microsoft\WinGet\Links;E:\Software\Renode\bin;C:\Users\Sean\go\bin;E:\Software\flutter\bin;C:\Users\Sean\AppData\Roaming\npm;E:\Software\Microsoft VS Code Insiders\bin;E:\Software\xpack-riscv-none-elf-gcc-12.2.0-3\bin\;E:\Software\xpack-arm-none-eabi-gcc-11.2.1-1.2\bin;
Command failed: "C:\Users\Sean\.espressif\python_env\idf5.1_py3.8_env\Scripts\python.exe" "C:\Users\Sean\esp\esp-idf\tools\check_python_dependencies.py" -r "C:\Users\Sean\esp\esp-idf\tools\requirements\requirements.core.txt"
Installing ESP-IDF extension python packages in C:\Users\Sean\.espressif\python_env\idf5.1_py3.8_env\Scripts\python.exe ...

...

Then it proceeded to install as normal.

It seems like it might have been missing a module called esp-idf-panic-decoder, and that has since been remedied? If there was an improvement to be made it might be to check all dependencies before installing. But for now it "works for me". Please close the issue unless you would like to do more forensics.