@esp-vision/device-cli 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/DEVICE_CORE_NOTICE.md +13 -0
  2. package/README.md +5 -1
  3. package/THIRD_PARTY_NOTICES.md +25 -5
  4. package/dist/device-cli.mjs +20044 -7795
  5. package/dist/native/LICENSE +21 -0
  6. package/dist/native/bindings.cjs +1860 -0
  7. package/dist/native/koffi/LICENSE.txt +22 -0
  8. package/dist/native/koffi/build/koffi/linux_arm64/koffi.node +0 -0
  9. package/dist/native/koffi/build/koffi/linux_armhf/koffi.node +0 -0
  10. package/dist/native/koffi/build/koffi/linux_ia32/koffi.node +0 -0
  11. package/dist/native/koffi/build/koffi/linux_loong64/koffi.node +0 -0
  12. package/dist/native/koffi/build/koffi/linux_riscv64d/koffi.node +0 -0
  13. package/dist/native/koffi/build/koffi/linux_x64/koffi.node +0 -0
  14. package/dist/native/koffi/build/koffi/musl_arm64/koffi.node +0 -0
  15. package/dist/native/koffi/build/koffi/musl_x64/koffi.node +0 -0
  16. package/dist/native/koffi/index.js +634 -0
  17. package/dist/native/koffi/package.json +38 -0
  18. package/dist/native/koffi/src/cnoke/LICENSE.txt +22 -0
  19. package/dist/native/koffi/vendor/node-addon-api/LICENSE.md +9 -0
  20. package/dist/native/koffi/vendor/node-api-headers/LICENSE +21 -0
  21. package/dist/native/package.json +1 -0
  22. package/dist/native/prebuilds/android-arm/@serialport+bindings-cpp.armv7.node +0 -0
  23. package/dist/native/prebuilds/android-arm64/@serialport+bindings-cpp.armv8.node +0 -0
  24. package/dist/native/prebuilds/darwin-x64+arm64/@serialport+bindings-cpp.node +0 -0
  25. package/dist/native/prebuilds/linux-arm/@serialport+bindings-cpp.armv6.glibc.node +0 -0
  26. package/dist/native/prebuilds/linux-arm/@serialport+bindings-cpp.armv7.glibc.node +0 -0
  27. package/dist/native/prebuilds/linux-arm/@serialport+bindings-cpp.armv7.musl.node +0 -0
  28. package/dist/native/prebuilds/linux-arm64/@serialport+bindings-cpp.armv8.glibc.node +0 -0
  29. package/dist/native/prebuilds/linux-arm64/@serialport+bindings-cpp.armv8.musl.node +0 -0
  30. package/dist/native/prebuilds/linux-x64/@serialport+bindings-cpp.glibc.node +0 -0
  31. package/dist/native/prebuilds/linux-x64/@serialport+bindings-cpp.musl.node +0 -0
  32. package/dist/native/prebuilds/win32-arm64/@serialport+bindings-cpp.armv8.node +0 -0
  33. package/dist/native/prebuilds/win32-ia32/@serialport+bindings-cpp.node +0 -0
  34. package/dist/native/prebuilds/win32-x64/@serialport+bindings-cpp.node +0 -0
  35. package/licenses/atob-lite-LICENSE.md +18 -0
  36. package/licenses/debug-LICENSE +20 -0
  37. package/licenses/esptool-js-LICENSE +202 -0
  38. package/licenses/koffi-LICENSE.txt +22 -0
  39. package/licenses/ms-license.md +21 -0
  40. package/licenses/node-addon-api-LICENSE.md +9 -0
  41. package/licenses/node-gyp-build-LICENSE +21 -0
  42. package/licenses/pako-LICENSE +21 -0
  43. package/licenses/serialport__bindings-cpp-LICENSE +21 -0
  44. package/licenses/serialport__bindings-interface-LICENSE +21 -0
  45. package/licenses/serialport__parser-delimiter-LICENSE +21 -0
  46. package/licenses/serialport__parser-readline-LICENSE +21 -0
  47. package/package.json +5 -5
  48. package/dist/node_rom.py +0 -64
  49. package/dist/node_serial.py +0 -77
@@ -30,3 +30,16 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
30
30
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
31
31
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
32
32
  SOFTWARE.
33
+
34
+ Browser and Node ROM flashing use the separately installed esptool-js 0.7.1 package,
35
+ Copyright (c) 2023 Espressif Systems (Shanghai) Co. Ltd., Apache License 2.0.
36
+ The package's esp-flasher-stub v1.2.2 set-2 binaries retain their upstream
37
+ dual Apache-2.0/MIT terms. Its pako (MIT/Zlib) and atob-lite (MIT) dependencies
38
+ retain their own notices. No upstream source or stub binary is vendored here.
39
+ The S31 native-USB watchdog reset adapter uses the register sequence also
40
+ implemented by Apache-2.0 esptool-js P4 watchdog support.
41
+
42
+ Node serial access uses @serialport/bindings-cpp 13.0.0 (MIT).
43
+ Linux USB-Serial-JTAG modem controls use Koffi 2.16.3 (MIT).
44
+ Portable CLI/plugin bundles preserve original loaders, binaries and licenses,
45
+ including Koffi cnoke and Node API header notices.
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  `@esp-vision/device-cli` installs the `esp-vision-device` command for device discovery, inspection, configuration, control, firmware updates, Python execution, device file operations, JPEG capture, sequential batch plans, and bounded event watches. It is an optional host interface backed by the same `@esp-vision/device-core` package used by ESP-VISION clients.
4
4
 
5
- Requires Node.js 22 or newer. Serial access requires Python with `pyserial`; firmware flashing requires Python `esptool==5.6.0`. LAN discovery uses the bundled multicast-DNS client. Check the selected interpreter with `PYTHON --version` and `PYTHON -c "import serial"`; install pyserial there with `PYTHON -m pip install pyserial` (replace `PYTHON` with that executable). Windows Python Launcher users can use `--python py` and `py -m pip install pyserial`. A failed serial setup gets a bounded environment diagnosis after connection cleanup; successful connections, TCP operations, help, and offline firmware checks do not start it. Busy/access-denied errors keep their port-specific guidance; an unknown adapter failure is not proof of missing Python or pyserial.
5
+ Requires Node.js 22 or newer. Serial access uses bundled npm native bindings; firmware flashing uses the same esptool-js backend as the website. No host Python, pyserial or Python esptool installation is required. LAN discovery uses the bundled multicast-DNS client. Port permissions and ownership still apply. The deprecated `--python` option is accepted but ignored for compatibility.
6
6
 
7
7
  Run `esp-vision-device --help` for the command reference, or `esp-vision-device --help --json` for the versioned machine-readable command, output, and limit capabilities envelope.
8
8
 
@@ -60,3 +60,7 @@ Status, Python output, firmware phases, cancellation, errors, and duration are N
60
60
  Inspect JSON output uses the same versioned envelope as other commands. Human-readable inspect output remains a terminal table.
61
61
 
62
62
  Device paths such as `/models` stay absolute device paths on Windows. Git Bash/MSYS may rewrite them; use PowerShell or prefix the individual command with `MSYS2_ARG_CONV_EXCL="*"`, supplying local paths in Windows form. Quoting the device path alone does not prevent conversion. Invalid device paths now fail before connecting, with a shell hint for Windows host paths.
63
+
64
+ ## Coordinated source builds
65
+
66
+ Before Core 0.8.0 is published, use `node tools/ci/mcp/install_host.mjs --output <project-artifact-directory>` from the repository root, then build the CLI. The tracked Core lock intentionally has no registry URL or integrity for the unpublished version; the installer qualifies an exact local tarball and records its hash without changing that lock. Other dependencies keep their registry locks. Publish Core first, refresh the CLI registry lock from that published version, then rebuild and qualify CLI/plugin artifacts before publishing their versions. The publishing gate rejects a missing or mismatched registry integrity.
@@ -5,11 +5,23 @@ The CLI bundle includes the following third-party packages. Their original licen
5
5
  | Package | Version | License | License file |
6
6
  | --- | --- | --- | --- |
7
7
  | @leichtgewicht/ip-codec | 2.0.5 | MIT | `leichtgewicht__ip-codec-LICENSE` |
8
+ | @serialport/bindings-cpp | 13.0.0 | MIT | `serialport__bindings-cpp-LICENSE` |
9
+ | @serialport/bindings-interface | 1.2.2 | MIT | `serialport__bindings-interface-LICENSE` |
10
+ | @serialport/parser-delimiter | 12.0.0 | MIT | `serialport__parser-delimiter-LICENSE` |
11
+ | @serialport/parser-readline | 12.0.0 | MIT | `serialport__parser-readline-LICENSE` |
8
12
  | ansi-regex | 6.4.0 | MIT | `ansi-regex-license` |
13
+ | atob-lite | 2.0.0 | MIT | `atob-lite-LICENSE.md` |
14
+ | debug | 4.4.0 | MIT | `debug-LICENSE` |
9
15
  | dns-packet | 5.6.1 | MIT | `dns-packet-LICENSE` |
10
16
  | emoji-regex | 10.6.0 | MIT | `emoji-regex-LICENSE-MIT.txt` |
17
+ | esptool-js | 0.7.1 | Apache-2.0 | `esptool-js-LICENSE` |
11
18
  | get-east-asian-width | 1.7.0 | MIT | `get-east-asian-width-license` |
19
+ | koffi | 2.16.3 | MIT | `koffi-LICENSE.txt` |
20
+ | ms | 2.1.3 | MIT | `ms-license.md` |
12
21
  | multicast-dns | 7.2.5 | MIT | `multicast-dns-LICENSE` |
22
+ | node-addon-api | 8.3.0 | MIT | `node-addon-api-LICENSE.md` |
23
+ | node-gyp-build | 4.8.4 | MIT | `node-gyp-build-LICENSE` |
24
+ | pako | 2.2.0 | (MIT AND Zlib) | `pako-LICENSE` |
13
25
  | smol-toml | 1.9.1 | BSD-3-Clause | `smol-toml-LICENSE` |
14
26
  | string-width | 7.2.0 | MIT | `string-width-license` |
15
27
  | strip-ansi | 7.2.0 | MIT | `strip-ansi-license` |
@@ -112,23 +124,31 @@ Bundled from: `node_modules/smol-toml/dist/date.js`, `node_modules/smol-toml/dis
112
124
 
113
125
  ### Source notice 6
114
126
 
115
- Bundled from: `node_modules/@esp-vision/device-core/src/firmware_feed.js`, `node_modules/@esp-vision/device-core/src/firmware_flash.js`, `node_modules/@esp-vision/device-core/src/index.js`, `node_modules/@esp-vision/device-core/src/network_discovery.js`, `node_modules/@esp-vision/device-core/src/network_discovery_node.js`, `node_modules/@esp-vision/device-core/src/node_inventory.js`, `node_modules/@esp-vision/device-core/src/node_rom.js`, `node_modules/@esp-vision/device-core/src/node_transport.js`, `src/cli.js`
127
+ Bundled from: `node_modules/pako/dist/pako.esm.mjs`
116
128
 
117
129
  ```text
118
- // SPDX-FileCopyrightText: 2026 ESP-VISION-IDE
130
+ /*! pako 2.2.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */
119
131
  ```
120
132
 
121
133
  ### Source notice 7
122
134
 
123
- Bundled from: `node_modules/@esp-vision/device-core/src/firmware_io.js`, `node_modules/@esp-vision/device-core/src/firmware_release.js`, `node_modules/@esp-vision/device-core/src/node.js`, `src/serial_diagnostics.js`
135
+ Bundled from: `node_modules/@esp-vision/device-core/src/firmware_feed.js`, `node_modules/@esp-vision/device-core/src/firmware_flash.js`, `node_modules/@esp-vision/device-core/src/index.js`, `node_modules/@esp-vision/device-core/src/network_discovery.js`, `node_modules/@esp-vision/device-core/src/network_discovery_node.js`, `node_modules/@esp-vision/device-core/src/node_inventory.js`, `node_modules/@esp-vision/device-core/src/node_rom.js`, `node_modules/@esp-vision/device-core/src/node_rom_port.js`, `node_modules/@esp-vision/device-core/src/node_transport.js`, `src/cli.js`
124
136
 
125
137
  ```text
126
- // SPDX-FileCopyrightText: 2026 Espressif Systems (Shanghai) CO LTD
138
+ // SPDX-FileCopyrightText: 2026 ESP-VISION-IDE
127
139
  ```
128
140
 
129
141
  ### Source notice 8
130
142
 
131
- Bundled from: `node_modules/@esp-vision/device-core/src/device_files.js`, `node_modules/@esp-vision/device-core/src/device_python.js`, `node_modules/@esp-vision/device-core/src/firmware_feed.js`, `node_modules/@esp-vision/device-core/src/firmware_flash.js`, `node_modules/@esp-vision/device-core/src/firmware_io.js`, `node_modules/@esp-vision/device-core/src/firmware_release.js`, `node_modules/@esp-vision/device-core/src/index.js`, `node_modules/@esp-vision/device-core/src/network_discovery.js`, `node_modules/@esp-vision/device-core/src/network_discovery_node.js`, `node_modules/@esp-vision/device-core/src/node.js`, `node_modules/@esp-vision/device-core/src/node_inventory.js`, `node_modules/@esp-vision/device-core/src/node_rom.js`, `node_modules/@esp-vision/device-core/src/node_transport.js`, `src/cli.js`, `src/serial_diagnostics.js`
143
+ Bundled from: `node_modules/@esp-vision/device-core/src/browser_rom_compat.js`, `node_modules/@esp-vision/device-core/src/device_capture.js`, `node_modules/@esp-vision/device-core/src/firmware_io.js`, `node_modules/@esp-vision/device-core/src/firmware_partitions.js`, `node_modules/@esp-vision/device-core/src/firmware_release.js`, `node_modules/@esp-vision/device-core/src/jpeg_validate.js`, `node_modules/@esp-vision/device-core/src/node.js`, `node_modules/@esp-vision/device-core/src/node_rom.js`, `node_modules/@esp-vision/device-core/src/node_rom_probe.js`, `node_modules/@esp-vision/device-core/src/node_serial.js`, `node_modules/@esp-vision/device-core/src/node_signals.js`, `node_modules/@esp-vision/device-core/src/rom_identity.js`, `node_modules/@esp-vision/device-core/src/rom_loader.js`, `node_modules/@esp-vision/device-core/src/rom_md5.js`, `node_modules/@esp-vision/device-core/src/rom_reset.js`, `src/serial_diagnostics.js`
144
+
145
+ ```text
146
+ // SPDX-FileCopyrightText: 2026 Espressif Systems (Shanghai) CO LTD
147
+ ```
148
+
149
+ ### Source notice 9
150
+
151
+ Bundled from: `node_modules/@esp-vision/device-core/src/browser_rom_compat.js`, `node_modules/@esp-vision/device-core/src/device_capture.js`, `node_modules/@esp-vision/device-core/src/device_files.js`, `node_modules/@esp-vision/device-core/src/device_python.js`, `node_modules/@esp-vision/device-core/src/firmware_feed.js`, `node_modules/@esp-vision/device-core/src/firmware_flash.js`, `node_modules/@esp-vision/device-core/src/firmware_io.js`, `node_modules/@esp-vision/device-core/src/firmware_partitions.js`, `node_modules/@esp-vision/device-core/src/firmware_release.js`, `node_modules/@esp-vision/device-core/src/index.js`, `node_modules/@esp-vision/device-core/src/jpeg_validate.js`, `node_modules/@esp-vision/device-core/src/network_discovery.js`, `node_modules/@esp-vision/device-core/src/network_discovery_node.js`, `node_modules/@esp-vision/device-core/src/node.js`, `node_modules/@esp-vision/device-core/src/node_inventory.js`, `node_modules/@esp-vision/device-core/src/node_rom.js`, `node_modules/@esp-vision/device-core/src/node_rom_port.js`, `node_modules/@esp-vision/device-core/src/node_rom_probe.js`, `node_modules/@esp-vision/device-core/src/node_serial.js`, `node_modules/@esp-vision/device-core/src/node_signals.js`, `node_modules/@esp-vision/device-core/src/node_transport.js`, `node_modules/@esp-vision/device-core/src/rom_identity.js`, `node_modules/@esp-vision/device-core/src/rom_loader.js`, `node_modules/@esp-vision/device-core/src/rom_md5.js`, `node_modules/@esp-vision/device-core/src/rom_reset.js`, `src/cli.js`, `src/serial_diagnostics.js`
132
152
 
133
153
  ```text
134
154
  // SPDX-License-Identifier: Apache-2.0