esphome 2021.10.3: this Python implementation (python3.9) is not supported by the script. #247

Closed
opened 2021-11-08 16:53:31 +01:00 by Xuefer · 6 comments
qcheck -v esphome
Checking acct-group/esphome-0 ...
  * 4 out of 4 files are good
Checking acct-user/esphome-0 ...
  * 7 out of 7 files are good
Checking dev-embedded/esphome-2021.10.3 ...
  * 4493 out of 4493 files are good

reproduced with --device /dev/ttyUSB0 only, but not with --device address.local

# esphome run entrance.yaml --device /dev/ttyUSB0
INFO Reading configuration entrance.yaml...
INFO Generating C++ source...
INFO Compiling app...
*******************************************************************************************************************************************************************************************************************
Obsolete PIO Core v5.2.1 is used (previous was 5.2.2)
Please remove multiple PIO Cores from a system:
https://docs.platformio.org/page/faq.html#multiple-platformio-cores-in-a-system
*******************************************************************************************************************************************************************************************************************
Processing entrance (board: nodemcu-32s; framework: arduino; platform: espressif32 @ 3.3.2)
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
Dependency Graph
|-- <AsyncTCP-esphome> 1.2.2
|-- <WiFi> 1.0
|-- <FS> 1.0
|-- <Update> 1.0
|-- <ESPAsyncWebServer-esphome> 2.0.0
|   |-- <AsyncTCP-esphome> 1.2.2
|-- <ArduinoJson-esphomelib> 5.13.3
|-- <ESPmDNS> 1.0
Compiling .pioenvs/entrance/src/main.cpp.o
Linking .pioenvs/entrance/firmware.elf
RAM:   [=         ]  12.7% (used 41532 bytes from 327680 bytes)
Flash: [=====     ]  49.2% (used 903162 bytes from 1835008 bytes)
Building .pioenvs/entrance/firmware.bin
========================================================================================== [SUCCESS] Took 17.30 seconds ==========================================================================================
INFO Successfully compiled program.

/usr/lib/python-exec/python3.9/esphome: this Python implementation (python3.9) is not supported by the script.
``` qcheck -v esphome Checking acct-group/esphome-0 ... * 4 out of 4 files are good Checking acct-user/esphome-0 ... * 7 out of 7 files are good Checking dev-embedded/esphome-2021.10.3 ... * 4493 out of 4493 files are good ``` reproduced with ```--device /dev/ttyUSB0``` only, but not with ```--device address.local``` ``` # esphome run entrance.yaml --device /dev/ttyUSB0 INFO Reading configuration entrance.yaml... INFO Generating C++ source... INFO Compiling app... ******************************************************************************************************************************************************************************************************************* Obsolete PIO Core v5.2.1 is used (previous was 5.2.2) Please remove multiple PIO Cores from a system: https://docs.platformio.org/page/faq.html#multiple-platformio-cores-in-a-system ******************************************************************************************************************************************************************************************************************* Processing entrance (board: nodemcu-32s; framework: arduino; platform: espressif32 @ 3.3.2) ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash Dependency Graph |-- <AsyncTCP-esphome> 1.2.2 |-- <WiFi> 1.0 |-- <FS> 1.0 |-- <Update> 1.0 |-- <ESPAsyncWebServer-esphome> 2.0.0 | |-- <AsyncTCP-esphome> 1.2.2 |-- <ArduinoJson-esphomelib> 5.13.3 |-- <ESPmDNS> 1.0 Compiling .pioenvs/entrance/src/main.cpp.o Linking .pioenvs/entrance/firmware.elf RAM: [= ] 12.7% (used 41532 bytes from 327680 bytes) Flash: [===== ] 49.2% (used 903162 bytes from 1835008 bytes) Building .pioenvs/entrance/firmware.bin ========================================================================================== [SUCCESS] Took 17.30 seconds ========================================================================================== INFO Successfully compiled program. /usr/lib/python-exec/python3.9/esphome: this Python implementation (python3.9) is not supported by the script. ```
Xuefer changed title from esphome: this Python implementation (python3.9) is not supported by the script. to esphome 2021.10.3: this Python implementation (python3.9) is not supported by the script. 2021-11-08 16:54:19 +01:00
onkelbeh added the
Bug
label 2021-11-09 12:23:34 +01:00
onkelbeh self-assigned this 2021-11-09 12:23:39 +01:00
Owner

Could you please try with esphome-2021.11.1, I cannot reproduce this error.

Could you please try with esphome-2021.11.1, I cannot reproduce this error.
Author
$ sudo qcheck -v esphome
Checking acct-group/esphome-0 ...
  * 4 out of 4 files are good
Checking acct-user/esphome-0 ...
  * 7 out of 7 files are good
Checking dev-embedded/esphome-2021.11.1 ...
  * 4566 out of 4566 files are good
xuefer@compiler ~/src/iot
$ esphome run entrance.yaml  --device /dev/ttyUSB0
INFO Reading configuration entrance.yaml...
INFO Generating C++ source...
INFO Compiling app...
Processing entrance (board: nodemcu-32s; framework: arduino; platform: platformio/espressif32 @ 3.3.2)
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
Dependency Graph
|-- <AsyncTCP-esphome> 1.2.2
|-- <WiFi> 1.0
|-- <FS> 1.0
|-- <Update> 1.0
|-- <ESPAsyncWebServer-esphome> 2.1.0
|   |-- <AsyncTCP-esphome> 1.2.2
|-- <ArduinoJson-esphomelib> 5.13.3
|-- <ESPmDNS> 1.0
RAM:   [=         ]  12.7% (used 41532 bytes from 327680 bytes)
Flash: [=====     ]  49.2% (used 902878 bytes from 1835008 bytes)
=========================================================================================== [SUCCESS] Took 2.86 seconds ===========================================================================================
INFO Successfully compiled program.
/usr/lib/python-exec/python3.9/esphome: this Python implementation (python3.9) is not supported by the script.
``` $ sudo qcheck -v esphome Checking acct-group/esphome-0 ... * 4 out of 4 files are good Checking acct-user/esphome-0 ... * 7 out of 7 files are good Checking dev-embedded/esphome-2021.11.1 ... * 4566 out of 4566 files are good xuefer@compiler ~/src/iot ``` ``` $ esphome run entrance.yaml --device /dev/ttyUSB0 INFO Reading configuration entrance.yaml... INFO Generating C++ source... INFO Compiling app... Processing entrance (board: nodemcu-32s; framework: arduino; platform: platformio/espressif32 @ 3.3.2) ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash Dependency Graph |-- <AsyncTCP-esphome> 1.2.2 |-- <WiFi> 1.0 |-- <FS> 1.0 |-- <Update> 1.0 |-- <ESPAsyncWebServer-esphome> 2.1.0 | |-- <AsyncTCP-esphome> 1.2.2 |-- <ArduinoJson-esphomelib> 5.13.3 |-- <ESPmDNS> 1.0 RAM: [= ] 12.7% (used 41532 bytes from 327680 bytes) Flash: [===== ] 49.2% (used 902878 bytes from 1835008 bytes) =========================================================================================== [SUCCESS] Took 2.86 seconds =========================================================================================== INFO Successfully compiled program. /usr/lib/python-exec/python3.9/esphome: this Python implementation (python3.9) is not supported by the script. ```
Author
close(3)                    = 0
newfstatat(AT_FDCWD, "/dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0", {st_mode=S_IFLNK|0777, st_size=13, ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/dev", {st_mode=S_IFDIR|0755, st_size=4060, ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/dev/serial", {st_mode=S_IFDIR|0755, st_size=80, ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/dev/serial/by-id", {st_mode=S_IFDIR|0755, st_size=60, ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0", {st_mode=S_IFLNK|0777, st_size=13, ...}, AT_SYMLINK_NOFOLLOW) = 0
readlink("/dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0", "../../ttyUSB0", 4096) = 13
newfstatat(AT_FDCWD, "/dev/ttyUSB0", {st_mode=S_IFCHR|0660, st_rdev=makedev(0xbc, 0), ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0", {st_mode=S_IFLNK|0777, st_size=13, ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/dev", {st_mode=S_IFDIR|0755, st_size=4060, ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/dev/serial", {st_mode=S_IFDIR|0755, st_size=80, ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/dev/serial/by-id", {st_mode=S_IFDIR|0755, st_size=60, ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0", {st_mode=S_IFLNK|0777, st_size=13, ...}, AT_SYMLINK_NOFOLLOW) = 0
readlink("/dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0", "../../ttyUSB0", 4096) = 13
newfstatat(AT_FDCWD, "/dev/ttyUSB0", {st_mode=S_IFCHR|0660, st_rdev=makedev(0xbc, 0), ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/sys/class/tty/usb-1a86_USB2.0-Ser_-if00-port0/device", 0x7fffffffc170, 0) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/usr/bin", {st_mode=S_IFDIR|0755, st_size=40082, ...}, 0) = 0
newfstatat(AT_FDCWD, "/usr/bin/esptool.py", {st_mode=S_IFREG|0755, st_size=2899, ...}, 0) = 0
newfstatat(AT_FDCWD, "/usr/bin/esptool.py", {st_mode=S_IFREG|0755, st_size=2899, ...}, 0) = 0
openat(AT_FDCWD, "/usr/bin/__pycache__/esptool.cpython-39.pyc", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/bin/esptool.py", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=2899, ...}, AT_EMPTY_PATH) = 0
ioctl(3, TCGETS, 0x7fffffffb440) = -1 ENOTTY (Inappropriate ioctl for device)
lseek(3, 0, SEEK_CUR)       = 0
lseek(3, 0, SEEK_CUR)       = 0
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=2899, ...}, AT_EMPTY_PATH) = 0
read(3, "#!/usr/bin/python-exec2c\n# vim:f"..., 2900) = 2899
read(3, "", 1)              = 0
close(3)                    = 0
newfstatat(AT_FDCWD, "/usr/bin/esptool.py", {st_mode=S_IFREG|0755, st_size=2899, ...}, 0) = 0
newfstatat(AT_FDCWD, "/usr/bin/__pycache__", 0x7fffffffad40, 0) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/usr/bin", {st_mode=S_IFDIR|0755, st_size=40082, ...}, 0) = 0
mkdir("/usr/bin/__pycache__", 0777) = -1 EACCES (Permission denied)
newfstatat(AT_FDCWD, "/usr/bin", {st_mode=S_IFDIR|0755, st_size=40082, ...}, 0) = 0
newfstatat(AT_FDCWD, "/usr/lib/python3.9", {st_mode=S_IFDIR|0755, st_size=4124, ...}, 0) = 0
newfstatat(AT_FDCWD, "/usr/lib/python3.9/lib-dynload", {st_mode=S_IFDIR|0755, st_size=5814, ...}, 0) = 0
newfstatat(AT_FDCWD, "/usr/lib/python3.9/site-packages", {st_mode=S_IFDIR|0755, st_size=12016, ...}, 0) = 0
newfstatat(AT_FDCWD, "/usr/lib/python3.9/site-packages/epython.py", {st_mode=S_IFREG|0644, st_size=20, ...}, 0) = 0
newfstatat(AT_FDCWD, "/usr/lib/python3.9/site-packages/epython.py", {st_mode=S_IFREG|0644, st_size=20, ...}, 0) = 0
openat(AT_FDCWD, "/usr/lib/python3.9/site-packages/__pycache__/epython.cpython-39.pyc", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=156, ...}, AT_EMPTY_PATH) = 0
ioctl(3, TCGETS, 0x7fffffffa450) = -1 ENOTTY (Inappropriate ioctl for device)
lseek(3, 0, SEEK_CUR)       = 0
lseek(3, 0, SEEK_CUR)       = 0
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=156, ...}, AT_EMPTY_PATH) = 0
read(3, "a\r\r\n\0\0\0\0m\242\207a\24\0\0\0\343\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 157) = 156
read(3, "", 1)              = 0
close(3)                    = 0
readlink("/usr/bin/esphome", 0x7fffffffa650, 4096) = -1 EINVAL (Invalid argument)
openat(AT_FDCWD, "/usr/lib/python-exec/python3.9/esphome", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
write(2, "/usr/lib/python-exec/python3.9/e"..., 111/usr/lib/python-exec/python3.9/esphome: this Python implementation (python3.9) is not supported by the script.
) = 111

``` close(3) = 0 newfstatat(AT_FDCWD, "/dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0", {st_mode=S_IFLNK|0777, st_size=13, ...}, AT_SYMLINK_NOFOLLOW) = 0 newfstatat(AT_FDCWD, "/dev", {st_mode=S_IFDIR|0755, st_size=4060, ...}, AT_SYMLINK_NOFOLLOW) = 0 newfstatat(AT_FDCWD, "/dev/serial", {st_mode=S_IFDIR|0755, st_size=80, ...}, AT_SYMLINK_NOFOLLOW) = 0 newfstatat(AT_FDCWD, "/dev/serial/by-id", {st_mode=S_IFDIR|0755, st_size=60, ...}, AT_SYMLINK_NOFOLLOW) = 0 newfstatat(AT_FDCWD, "/dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0", {st_mode=S_IFLNK|0777, st_size=13, ...}, AT_SYMLINK_NOFOLLOW) = 0 readlink("/dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0", "../../ttyUSB0", 4096) = 13 newfstatat(AT_FDCWD, "/dev/ttyUSB0", {st_mode=S_IFCHR|0660, st_rdev=makedev(0xbc, 0), ...}, AT_SYMLINK_NOFOLLOW) = 0 newfstatat(AT_FDCWD, "/dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0", {st_mode=S_IFLNK|0777, st_size=13, ...}, AT_SYMLINK_NOFOLLOW) = 0 newfstatat(AT_FDCWD, "/dev", {st_mode=S_IFDIR|0755, st_size=4060, ...}, AT_SYMLINK_NOFOLLOW) = 0 newfstatat(AT_FDCWD, "/dev/serial", {st_mode=S_IFDIR|0755, st_size=80, ...}, AT_SYMLINK_NOFOLLOW) = 0 newfstatat(AT_FDCWD, "/dev/serial/by-id", {st_mode=S_IFDIR|0755, st_size=60, ...}, AT_SYMLINK_NOFOLLOW) = 0 newfstatat(AT_FDCWD, "/dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0", {st_mode=S_IFLNK|0777, st_size=13, ...}, AT_SYMLINK_NOFOLLOW) = 0 readlink("/dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0", "../../ttyUSB0", 4096) = 13 newfstatat(AT_FDCWD, "/dev/ttyUSB0", {st_mode=S_IFCHR|0660, st_rdev=makedev(0xbc, 0), ...}, AT_SYMLINK_NOFOLLOW) = 0 newfstatat(AT_FDCWD, "/sys/class/tty/usb-1a86_USB2.0-Ser_-if00-port0/device", 0x7fffffffc170, 0) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/bin", {st_mode=S_IFDIR|0755, st_size=40082, ...}, 0) = 0 newfstatat(AT_FDCWD, "/usr/bin/esptool.py", {st_mode=S_IFREG|0755, st_size=2899, ...}, 0) = 0 newfstatat(AT_FDCWD, "/usr/bin/esptool.py", {st_mode=S_IFREG|0755, st_size=2899, ...}, 0) = 0 openat(AT_FDCWD, "/usr/bin/__pycache__/esptool.cpython-39.pyc", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/bin/esptool.py", O_RDONLY|O_CLOEXEC) = 3 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=2899, ...}, AT_EMPTY_PATH) = 0 ioctl(3, TCGETS, 0x7fffffffb440) = -1 ENOTTY (Inappropriate ioctl for device) lseek(3, 0, SEEK_CUR) = 0 lseek(3, 0, SEEK_CUR) = 0 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=2899, ...}, AT_EMPTY_PATH) = 0 read(3, "#!/usr/bin/python-exec2c\n# vim:f"..., 2900) = 2899 read(3, "", 1) = 0 close(3) = 0 newfstatat(AT_FDCWD, "/usr/bin/esptool.py", {st_mode=S_IFREG|0755, st_size=2899, ...}, 0) = 0 newfstatat(AT_FDCWD, "/usr/bin/__pycache__", 0x7fffffffad40, 0) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/bin", {st_mode=S_IFDIR|0755, st_size=40082, ...}, 0) = 0 mkdir("/usr/bin/__pycache__", 0777) = -1 EACCES (Permission denied) newfstatat(AT_FDCWD, "/usr/bin", {st_mode=S_IFDIR|0755, st_size=40082, ...}, 0) = 0 newfstatat(AT_FDCWD, "/usr/lib/python3.9", {st_mode=S_IFDIR|0755, st_size=4124, ...}, 0) = 0 newfstatat(AT_FDCWD, "/usr/lib/python3.9/lib-dynload", {st_mode=S_IFDIR|0755, st_size=5814, ...}, 0) = 0 newfstatat(AT_FDCWD, "/usr/lib/python3.9/site-packages", {st_mode=S_IFDIR|0755, st_size=12016, ...}, 0) = 0 newfstatat(AT_FDCWD, "/usr/lib/python3.9/site-packages/epython.py", {st_mode=S_IFREG|0644, st_size=20, ...}, 0) = 0 newfstatat(AT_FDCWD, "/usr/lib/python3.9/site-packages/epython.py", {st_mode=S_IFREG|0644, st_size=20, ...}, 0) = 0 openat(AT_FDCWD, "/usr/lib/python3.9/site-packages/__pycache__/epython.cpython-39.pyc", O_RDONLY|O_CLOEXEC) = 3 newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=156, ...}, AT_EMPTY_PATH) = 0 ioctl(3, TCGETS, 0x7fffffffa450) = -1 ENOTTY (Inappropriate ioctl for device) lseek(3, 0, SEEK_CUR) = 0 lseek(3, 0, SEEK_CUR) = 0 newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=156, ...}, AT_EMPTY_PATH) = 0 read(3, "a\r\r\n\0\0\0\0m\242\207a\24\0\0\0\343\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 157) = 156 read(3, "", 1) = 0 close(3) = 0 readlink("/usr/bin/esphome", 0x7fffffffa650, 4096) = -1 EINVAL (Invalid argument) openat(AT_FDCWD, "/usr/lib/python-exec/python3.9/esphome", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) write(2, "/usr/lib/python-exec/python3.9/e"..., 111/usr/lib/python-exec/python3.9/esphome: this Python implementation (python3.9) is not supported by the script. ) = 111 ```
Author

strace does not help a lot, but adding "raise 1" to /usr/bin/esptool.py (which is symlink to ../lib/python-exec/python-exec2) help a lot

Traceback (most recent call last):
  File "/usr/bin/esphome", line 33, in <module>
    sys.exit(load_entry_point('esphome==2021.11.1', 'console_scripts', 'esphome')())
  File "/usr/lib/python3.9/site-packages/esphome/__main__.py", line 817, in main
    return run_esphome(sys.argv)
  File "/usr/lib/python3.9/site-packages/esphome/__main__.py", line 804, in run_esphome
    rc = POST_CONFIG_ACTIONS[args.command](args, config)
  File "/usr/lib/python3.9/site-packages/esphome/__main__.py", line 378, in command_run
    exit_code = upload_program(config, args, port)
  File "/usr/lib/python3.9/site-packages/esphome/__main__.py", line 257, in upload_program
    return upload_using_esptool(config, host)
  File "/usr/lib/python3.9/site-packages/esphome/__main__.py", line 243, in upload_using_esptool
    rc = run_esptool(first_baudrate)
  File "/usr/lib/python3.9/site-packages/esphome/__main__.py", line 236, in run_esptool
    import esptool
  File "/usr/bin/esptool.py", line 32, in <module>
    raise 1
TypeError: exceptions must derive from BaseException

this is unexpected, it shouldn't import /usr/bin/esptool.py (when argv[0] is esphome)
"mv /usr/bin/esptool.py /usr/bin/esptool" fix the problem

is it broken by gentoo or by esptool build script?

strace does not help a lot, but adding "raise 1" to /usr/bin/esptool.py (which is symlink to ../lib/python-exec/python-exec2) help a lot ``` Traceback (most recent call last): File "/usr/bin/esphome", line 33, in <module> sys.exit(load_entry_point('esphome==2021.11.1', 'console_scripts', 'esphome')()) File "/usr/lib/python3.9/site-packages/esphome/__main__.py", line 817, in main return run_esphome(sys.argv) File "/usr/lib/python3.9/site-packages/esphome/__main__.py", line 804, in run_esphome rc = POST_CONFIG_ACTIONS[args.command](args, config) File "/usr/lib/python3.9/site-packages/esphome/__main__.py", line 378, in command_run exit_code = upload_program(config, args, port) File "/usr/lib/python3.9/site-packages/esphome/__main__.py", line 257, in upload_program return upload_using_esptool(config, host) File "/usr/lib/python3.9/site-packages/esphome/__main__.py", line 243, in upload_using_esptool rc = run_esptool(first_baudrate) File "/usr/lib/python3.9/site-packages/esphome/__main__.py", line 236, in run_esptool import esptool File "/usr/bin/esptool.py", line 32, in <module> raise 1 TypeError: exceptions must derive from BaseException ``` this is unexpected, it shouldn't import /usr/bin/esptool.py (when argv[0] is esphome) "mv /usr/bin/esptool.py /usr/bin/esptool" fix the problem is it broken by gentoo or by esptool build script?
Owner

Mine is named /usr/bin/esptool.py, and works. Currently I have no idea.

Mine is named /usr/bin/esptool.py, and works. Currently I have no idea.
Author

The problem is /usr/lib/python3.9/site-packages/esphome/main.py line 236, i

with "export ESPHOME_USE_SUBPROCESS=1" kill the problem

[ebuild R ] dev-lang/python-exec-2.4.8:2::gentoo USE="(native-symlinks) -test" PYTHON_TARGETS="(pypy3) (python3_8) (python3_9) (-python3_10)" 0 KiB

with-in process esphome, argv[0] is /usr/bin/esphome;
doing import esptool will import /usr/bin/esptool.py which is /usr/bin/python-exec2, /usr/bin/python-exec2 is expecting argv[0] to be /usr/bin/esptool.py, but actually it get /usr/bin/esphome, this is not the same as running /usr/bin/esptool.py as external command

The problem is /usr/lib/python3.9/site-packages/esphome/__main__.py line 236, i with "export ESPHOME_USE_SUBPROCESS=1" kill the problem ```[ebuild R ] dev-lang/python-exec-2.4.8:2::gentoo USE="(native-symlinks) -test" PYTHON_TARGETS="(pypy3) (python3_8) (python3_9) (-python3_10)" 0 KiB``` with-in process esphome, ```argv[0]``` is /usr/bin/esphome; doing ```import esptool``` will import /usr/bin/esptool.py which is /usr/bin/python-exec2, /usr/bin/python-exec2 is expecting ```argv[0]``` to be /usr/bin/esptool.py, but actually it get /usr/bin/esphome, this is not the same as running /usr/bin/esptool.py as external command
Sign in to join this conversation.
No Label
Bug
Bump/Update
Cleanup
Dupe
Enhancement
File Collision
Forked
help wanted
Integration: accuweather
Integration: acmeda
Integration: acomax
Integration: adax
Integration: adguard
Integration: aemet
Integration: aep_ohio
Integration: aep_texas
Integration: airq
Integration: airthings
Integration: airthings_ble
Integration: airtouch5
Integration: airzone
Integration: airzone_cloud
Integration: amazon_polly
Integration: amberelectric
Integration: ambient_station
Integration: analytics_insights
Integration: anel_pwrctrl
Integration: aosmith
Integration: apache_kafka
Integration: apcupsd
Integration: appalachianpower
Integration: apprise
Integration: aprilaire
Integration: aranet
Integration: aseko_pool_live
Integration: asuswrt
Integration: august
Integration: aws
Integration: axis
Integration: backup
Integration: bang_olufsen
Integration: blebox
Integration: blink
Integration: bluetooth
Integration: blue_current
Integration: bmw_connected_drive
Integration: bosch_shc
Integration: bring
Integration: brother
Integration: brottsplatskartan
Integration: bsblan
Integration: bthome
Integration: caldav
Integration: cast
Integration: ccm15
Integration: cloud
Integration: cloudflare
Integration: co2signal
Integration: coautilities
Integration: comelit
Integration: conversation
Integration: debugpy
Integration: deconz
Integration: deluge
Integration: denonavr
Integration: devialet
Integration: devolo_home_control
Integration: dhcp
Integration: discord
Integration: discovergy
Integration: dlna_dmr
Integration: dlna_dms
Integration: doods
Integration: drop_connect
Integration: dsmr
Integration: duotecno
Integration: duquesne_light
Integration: dwd_weather_warnings
Integration: easyenergy
Integration: ecobee
Integration: ecoforest
Integration: ecovacs
Integration: ecowitt
Integration: elgato
Integration: elvia
Integration: energyzero
Integration: enigma2
Integration: enphase_envoy
Integration: epion
Integration: esphome
Integration: evohome
Integration: ffmpeg
Integration: fjaraskupan
Integration: flexit_bacnet
Integration: flipr
Integration: forecast_solar
Integration: foscam
Integration: fritzbox
Integration: fronius
Integration: frontend
Integration: fujitsu_anywair
Integration: fyta
Integration: garages_amsterdam
Integration: gardena_bluetooth
Integration: gdacs
Integration: generic
Integration: geonetnz_quakes
Integration: geonetnz_volcano
Integration: geo_json_events
Integration: geo_rss_events
Integration: gios
Integration: glances
Integration: goodwe
Integration: google
Integration: google_assistant_sdk
Integration: google_generative_ai_conversation
Integration: govee_ble
Integration: govee_light_local
Integration: hive
Integration: hko
Integration: holiday
Integration: homekit_controller
Integration: homematicip_cloud
Integration: homewizard
Integration: honeywell
Integration: hp_ilo
Integration: html5
Integration: http
Integration: hue
Integration: hunterdouglas_powerview
Integration: husqvarna_automower
Integration: huum
Integration: hydrawise
Integration: iammeter
Integration: ibeacon
Integration: idasen_desk
Integration: ign_sismologia
Integration: image_upload
Integration: indianamichiganpower
Integration: insteon
Integration: ipp
Integration: islamic_prayer_times
Integration: justnimbus
Integration: jvc_projector
Integration: kef
Integration: kentuckypower
Integration: keymitt_ble
Integration: knx
Integration: kostal_plenticore
Integration: krispol
Integration: lamarzocco
Integration: ld2410_ble
Integration: leaone
Integration: led_ble
Integration: life360
Integration: lifx
Integration: linear_garage_door
Integration: litejet
Integration: litterrobot
Integration: local_calendar
Integration: local_todo
Integration: loqed
Integration: luci
Integration: lupusec
Integration: lutron
Integration: lutron_caseta
Integration: madeco
Integration: mastodon
Integration: matrix
Integration: matter
Integration: media_extractor
Integration: melcloud
Integration: met
Integration: meteoclimatic
Integration: meteo_france
Integration: metoffice
Integration: microbees
Integration: mill
Integration: minecraft_server
Integration: modbus
Integration: mopeka
Integration: motionblinds_ble
Integration: motionmount
Integration: motion_blinds
Integration: myuplink
Integration: nam
Integration: neato
Integration: netatmo
Integration: nexia
Integration: nextbus
Integration: nextcloud
Integration: nextdns
Integration: nibe_heatpump
Integration: nmap_tracker
Integration: nobo_hub
Integration: norway_air
Integration: notion
Integration: nsw_rural_fire_service_feed
Integration: nuki
Integration: numato
Integration: nut
Integration: nws
Integration: ollama
Integration: oncue
Integration: ondilo_ico
Integration: openai_conversation
Integration: openerz
Integration: open_meteo
Integration: opower
Integration: orvibo
Integration: osoenergy
Integration: otbr
Integration: ourgroceries
Integration: overkiz
Integration: p1_monitor
Integration: pegel_online
Integration: permobil
Integration: plex
Integration: plugwise
Integration: powerwall
Integration: private_ble_device
Integration: proxy
Integration: prusalink
Integration: psoklahoma
Integration: pure_energie
Integration: pvoutput
Integration: qingping
Integration: qld_bushfire
Integration: qrcode
Integration: rabbitair
Integration: rachio
Integration: radio_browser
Integration: rainbird
Integration: rainforest_raven
Integration: rainmachine
Integration: rdw
Integration: recorder
Integration: refoss
Integration: renault
Integration: renson
Integration: reolink
Integration: rflink
Integration: rfxtrx
Integration: ridwell
Integration: ring
Integration: risco
Integration: roborock
Integration: roku
Integration: romy
Integration: roomba
Integration: roon
Integration: route53
Integration: rova
Integration: samsam
Integration: samsungtv
Integration: schlage
Integration: scl
Integration: screenlogic
Integration: sensibo
Integration: sensorpush
Integration: sentry
Integration: seven_segments
Integration: sfr_box
Integration: shelly
Integration: sighthound
Integration: signal_messenger
Integration: simplisafe
Integration: sleepiq
Integration: slimproto
Integration: smarttub
Integration: smud
Integration: snmp
Integration: songpal
Integration: sonos
Integration: sql
Integration: squeezebox
Integration: ssdp
Integration: subaru
Integration: suez_water
Integration: sunweg
Integration: surepetcare
Integration: swepco
Integration: swiss_public_transport
Integration: switchbot
Integration: switchbot_cloud
Integration: switcher_kis
Integration: system_bridge
Integration: tado
Integration: tailwind
Integration: tankerkoenig
Integration: tasmota
Integration: technove
Integration: tedee
Integration: telegram_bot
Integration: temper
Integration: tensorflow
Integration: teslemetry
Integration: tessie
Integration: thermobeacon
Integration: thermopro
Integration: thread
Integration: tile
Integration: tolo
Integration: tplink
Integration: tplink_omada
Integration: tplink_tapo
Integration: traccar
Integration: traccar_server
Integration: trafikverket_camera
Integration: trafikverket_ferry
Integration: trafikverket_train
Integration: trafikverket_weatherstation
Integration: transmission
Integration: tuya
Integration: twentemilieu
Integration: unifi
Integration: unifiprotect
Integration: unifi_direct
Integration: upnp
Integration: usgs_earthquakes_feed
Integration: utility_meter
Integration: v2c
Integration: vallox
Integration: valve
Integration: velbus
Integration: velux
Integration: vicare
Integration: vilfo
Integration: vodafone_station
Integration: vulcan
Integration: wallbox
Integration: waqi
Integration: waze_travel_time
Integration: weatherflow_cloud
Integration: weatherkit
Integration: webmin
Integration: webostv
Integration: wemo
Integration: whirlpool
Integration: withings
Integration: wolflink
Integration: workday
Integration: wyoming
Integration: xiaomi_ble
Integration: yalexs_ble
Integration: yeelight
Integration: yolink
Integration: zamg
Integration: zeroconf
Integration: zha
Integration: zhong_hong
Integration: zondergas
Integration: zoneminder
Integration: zwave_js
invalid
New Integration
Python 3.10
Python 3.11
question
requirement
Requirement vanished
slot-conflict
Source Incomplete
SrcDir ${S} mismatch
TopLevelViolation
Update required
virtual
wontfix
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: onkelbeh/HomeAssistantRepository#247
No description provided.