pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/comms/py-esptool



Module Name:    pkgsrc
Committed By:   gdt
Date:           Tue Jul 22 19:13:19 UTC 2025

Modified Files:
        pkgsrc/comms/py-esptool: Makefile PLIST distinfo
Added Files:
        pkgsrc/comms/py-esptool/patches: patch-esptool_cli__util.py

Log Message:
py-esptool: Update to 5.0.1

Packaged in wip by Frédéric Fauberteau

pkgsrc changes:
---------------
  * Adjust dependencies per upstream changes:
    - require modern py-cryptography, dropping py-ecdsa
    - add click and rich-click, dropping argcomplete
  * Add patch to use up-to-date click (as found in pkgsrc), vs
    upstream's expectation of old click.
  * Adjust python versions; upstream requires >= 3.10

upstream changes:
-----------------
v5.0.1 (2025-07-15)
Bug Fixes
  * elf2image: validate ELF section types and addresses before processing
    (Jaroslav Burian - 97a1546)
  * elf2image: handle PREINIT_ARRAY section type in ESP32-P4 elf file properly
    (Jaroslav Burian - ec84a75)
  * elf2image: Fix incorrect logger call (Marek Matej - 637f0e6)

v5.0.0 (2025-07-02)
Breaking changes
  * The .py suffix is deprecated for the following scripts:
    o esptool
    o espefuse
    o espsecure
    o esp_rfc2217_server (Peter Dragun - 635cde1)
  * execute-scripts command is removed (Peter Dragun - ff72b26)
New Features
  * espefuse: Use the esptool logger, more concise messages (Radim Karniš - 983338f)
  * espefuse: Replace execute-scripts with public API (Peter Dragun - ff72b26)
  * espefuse: Add public API for espefuse (Peter Dragun - d7da0f8)
  * espefuse: Rename all commands to use dashes and add tests for deprecated commands (Peter Dragun - ade3088)
  * espefuse: Add support for chaining commands with click parser (Peter Dragun - 0a2ea69)
  * espefuse: Refactor CLI and use click for parsing arguments (Peter Dragun - aa80001)
  * espefuse: Adds efuse calculation fields for ESP32-C5 (Konstantin Kondrashov - 9104038)
  * espefuse: Adds 3-bit field for wafer major version in ESP32-P4 (Konstantin Kondrashov - c102510)
  * verbosity: Allow setting silent or verbose output levels (Radim Karniš - 90e3770)
  * efuse: Adds efuses for ESP32-C61 ECO3 (Konstantin Kondrashov - 6146410)
  * espefuse: Support efuse for ESP32-C5 ECO2 (v1.0) (Konstantin Kondrashov - 3726726)
  * espsecure: Use esptool logger, unify output format of messages (Radim Karniš - 905249c)
  * stub_flasher: Support for >16MB flash on P4 and >16MB encrypted writes on S3 (Radim Karniš - 4e6803e)
  * espsecure: Drop ecdsa module, use cryptography instead (Radim Karniš - e132f6f)
  * espsecure: Unify all commands and options to use dash instead of underscore (Peter Dragun - 36325fd)
  * espsecure: Use rich click for CLI parsing (Peter Dragun - 9c7ddc1)
  * targets: Update chip features lists with more info (Radim Karniš - 3c776aa)
  * logging: Add collapsible output stages and ASCII progress bars (Radim Karniš - f3cf107)
  * trace: Update --trace with more info and more readable formatting (Radim Karniš - 0beee77)
  * cli: Commands and options use dashes instead of underscores for uniformity (Peter Dragun - 3cecd6d)
  * cmds: Expand input of all functions to file paths, bytes, or file-like objects (Radim Karniš - 46a9e31)
  * cmds: Allow all functions to both return bytes and write to files (Radim Karniš - 03b84a1)
  * cmds: Polish the public API, unify arg names, pack some args (Radim Karniš - 37a13a9)
  * cmds: Encapsulate logic for running the stub flasher in run_stub (Radim Karniš - 063d9d5)
  * cli: Add click-based CLI interface (Peter Dragun - d40fefa)
  * cmds: Allow commands to output bytes, as well as write to a file (Radim Karniš - 0153b79)
  * cmds: Rework the public API to work as a Python module (Radim Karniš - ba36933)
  * flash_attach: Encapsulate logic for flash attaching and configuration (Radim Karniš - 6e959ef)
  * esp32h4: update the ESP32H4StubLoader (Chen Jichang - f7c78f8)
  * espefuse: Updates esp32h4 efuse table and fixes tests (Konstantin Kondrashov - 3da8c57)
  * esp32h4: add ESP32H4 esptool support (Chen Jichang - bcf5c6e)
  * esp32h21: Add Microsoft UF2 family ID (Radim Karniš - cb0d334)
  * errors: Print errors to STDERR, catch KeyboardInterrupt (Radim Karniš - 0864e17)
  * write_flash: Remove the superfluous --verify option (Radim Karniš - dbf3d1c)
  * logger: Add a custom logger, allow output redirection (Radim Karniš - 1ce02db)
  * image_info: Deprecate the --version 1 output format (Radim Karniš - 3f625c3)
  * Remove .py suffix from scripts (Peter Dragun - 635cde1)
  * detect flash size of Adesto flash chips (Jaroslav Burian - 0b56f85)
  * Add support for k, M suffix for flash size (Peter Dragun - 6f0d779)
  * Rename reset modes to use dash instead of underscore (Peter Dragun - 851919f)
Removals
  * make_image: Remove the make_image command in favor of other workflows (Radim Karniš - 955a7c8)
  * beta_targets: Removed support for beta chip targets (Radim Karniš - 8f1c206)
  * Deprecate Python versions 3.7, 3.8 and 3.9 (Peter Dragun - 19f1bee)

v4.9.0 (2025-06-19)
New Features
  * espefuse: Add eFuses for ESP32-C61 ECO3 (Radim Karniš - 98688ab)
  * espefuse: Support efuse for ESP32-C5 ECO2 (v1.0) (Konstantin Kondrashov - ce16054)
  * stub_flasher: Support for >16MB flash on P4 and >16MB encrypted writes on S3 (Radim Karniš - 0110514)
  * espefuse: Updates esp32h4 efuse table and fixes tests (Konstantin Kondrashov - 777c505)
  * esp32h4: add ESP32H4 esptool support (Chen Jichang - edb99bd)
  * esp32h21: Add Microsoft UF2 family ID (Radim Karniš - 74d27ae)
  * watchdog_reset: Add a new watchdog_reset option working even in USB modes (Radim Karniš - d37c38a)
  * espsecure: Improves an error message for encrypt_flash_data and decrypt_flash_data (Konstantin Kondrashov - ef407ed)
  * espefuse: Clean up efuse code for ESP32H2 (Konstantin Kondrashov - 4e922fe)
  * espefuse: Support different efuse table versions for ESP32H2 (Konstantin Kondrashov - d51ecbe)
  * espefuse: Adds efuses for esp32h2 eco5 (Konstantin Kondrashov - 9b74df6)
  * esp32h21: add ESP32H21 esptool support (gaoxu - 92ceff2)
  * esp32-p4: add support for flasher stub in USB OTG mode (Peter Dragun - 804f2db)
  * esp32-c5: Add ECO1 magic number (Radim Karniš - 6cc002c)
  * esp_rfc2217: Improved the logger message format (Jakub Kocka - 39a12a4)
  * espefuse: Adds 3 bit for PSRAM_CAP efuse field (Konstantin Kondrashov - ab2e0bf)
  * espefuse: Adds API for getting block and wafer versions (Konstantin Kondrashov - 111c6c0)
  * espefuse: Adds ADC calibration data for ESP32-C61 (Konstantin Kondrashov - 36d9735)
  * espefuse: Adds ADC calibration data for ESP32-C5 (Konstantin Kondrashov - a903812)
  * espefuse: Adds ADC calibration data for ESP32-P4 (Konstantin Kondrashov - 215e4b8)
  * erase_region: Enable erasing in ROM bootloader and SDM (Radim Karniš - e0deeac)
  * hard_reset: Support custom hard reset sequence configuration (Radim Karniš - 1b15738)
  * print usb mode when output chip info (Jan Beran - 749d1ad)
  * Add new app description segments (Jaroslav Burian - b23e60f)
  * add filtering based on serial number (Jaroslav Burian - 88319db)
  * Add support for Python 3.13 (Radim Karniš - 6abd05d)


To generate a diff of this commit:
cvs rdiff -u -r1.19 -r1.20 pkgsrc/comms/py-esptool/Makefile
cvs rdiff -u -r1.10 -r1.11 pkgsrc/comms/py-esptool/PLIST
cvs rdiff -u -r1.13 -r1.14 pkgsrc/comms/py-esptool/distinfo
cvs rdiff -u -r0 -r1.1 \
    pkgsrc/comms/py-esptool/patches/patch-esptool_cli__util.py

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/comms/py-esptool/Makefile
diff -u pkgsrc/comms/py-esptool/Makefile:1.19 pkgsrc/comms/py-esptool/Makefile:1.20
--- pkgsrc/comms/py-esptool/Makefile:1.19       Sat Jul  5 11:44:09 2025
+++ pkgsrc/comms/py-esptool/Makefile    Tue Jul 22 19:13:18 2025
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.19 2025/07/05 11:44:09 wiz Exp $
+# $NetBSD: Makefile,v 1.20 2025/07/22 19:13:18 gdt Exp $
 
-DISTNAME=      esptool-4.8.1
+DISTNAME=      esptool-5.0.1
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME}
 CATEGORIES=    comms python
 MASTER_SITES=  ${MASTER_SITE_PYPI:=e/esptool/}
@@ -11,21 +11,24 @@ COMMENT=    Firmware tool for ESP8266/ESP32
 LICENSE=       gnu-gpl-v2
 
 TOOL_DEPENDS+= ${PYPKGPREFIX}-setuptools>=78:../../devel/py-setuptools
-DEPENDS+=      ${PYPKGPREFIX}-argcomplete>=3:../../devel/py-argcomplete
 DEPENDS+=      ${PYPKGPREFIX}-bitstring>=4.2.1:../../devel/py-bitstring
-DEPENDS+=      ${PYPKGPREFIX}-ecdsa>=0.16.0:../../security/py-ecdsa
-DEPENDS+=      ${PYPKGPREFIX}-intelhex-[0-9]*:../../devel/py-intelhex
-DEPENDS+=      ${PYPKGPREFIX}-reedsolo>=1.5.3:../../converters/py-reedsolo
+PYTHON_VERSIONED_DEPENDENCIES+=        cryptography
 DEPENDS+=      ${PYPKGPREFIX}-serial>=3.3:../../comms/py-serial
+DEPENDS+=      ${PYPKGPREFIX}-reedsolo>=1.5.3:../../converters/py-reedsolo
 DEPENDS+=      ${PYPKGPREFIX}-yaml>=5.1:../../textproc/py-yaml
+DEPENDS+=      ${PYPKGPREFIX}-intelhex-[0-9]*:../../devel/py-intelhex
+DEPENDS+=      ${PYPKGPREFIX}-rich-click-[0-9]*:../../devel/py-rich-click
+DEPENDS+=      ${PYPKGPREFIX}-click-[0-9]*:../../devel/py-click
 
 USE_LANGUAGES= # none
 
 PYTHON_SELF_CONFLICT=  yes
 
-PYTHON_VERSIONS_INCOMPATIBLE=  39 310
+# esptool requires >= 3.10
+# \todo Should 3.10 be explicitly in ACCEPTED?
+# \todo If 39 is not added to accepted, do we need to put it in INCOMPATIBLE?
+PYTHON_VERSIONS_INCOMPATIBLE=  39
 
-PYTHON_VERSIONED_DEPENDENCIES+=        cryptography
 .include "../../lang/python/versioned_dependencies.mk"
 .include "../../lang/python/wheel.mk"
 .include "../../mk/bsd.pkg.mk"

Index: pkgsrc/comms/py-esptool/PLIST
diff -u pkgsrc/comms/py-esptool/PLIST:1.10 pkgsrc/comms/py-esptool/PLIST:1.11
--- pkgsrc/comms/py-esptool/PLIST:1.10  Tue Apr 15 15:42:11 2025
+++ pkgsrc/comms/py-esptool/PLIST       Tue Jul 22 19:13:18 2025
@@ -1,13 +1,12 @@
-@comment $NetBSD: PLIST,v 1.10 2025/04/15 15:42:11 adam Exp $
+@comment $NetBSD: PLIST,v 1.11 2025/07/22 19:13:18 gdt Exp $
+bin/esp_rfc2217_server
 bin/esp_rfc2217_server.py
+bin/espefuse
 bin/espefuse.py
+bin/espsecure
 bin/espsecure.py
+bin/esptool
 bin/esptool.py
-${PYSITELIB}/${WHEEL_INFODIR}/METADATA
-${PYSITELIB}/${WHEEL_INFODIR}/RECORD
-${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
-${PYSITELIB}/${WHEEL_INFODIR}/licenses/LICENSE
-${PYSITELIB}/${WHEEL_INFODIR}/top_level.txt
 ${PYSITELIB}/esp_rfc2217_server/__init__.py
 ${PYSITELIB}/esp_rfc2217_server/__init__.pyc
 ${PYSITELIB}/esp_rfc2217_server/__init__.pyo
@@ -26,6 +25,9 @@ ${PYSITELIB}/espefuse/__init__.pyo
 ${PYSITELIB}/espefuse/__main__.py
 ${PYSITELIB}/espefuse/__main__.pyc
 ${PYSITELIB}/espefuse/__main__.pyo
+${PYSITELIB}/espefuse/cli_util.py
+${PYSITELIB}/espefuse/cli_util.pyc
+${PYSITELIB}/espefuse/cli_util.pyo
 ${PYSITELIB}/espefuse/efuse/__init__.py
 ${PYSITELIB}/espefuse/efuse/__init__.pyc
 ${PYSITELIB}/espefuse/efuse/__init__.pyo
@@ -101,21 +103,6 @@ ${PYSITELIB}/espefuse/efuse/esp32c5/mem_
 ${PYSITELIB}/espefuse/efuse/esp32c5/operations.py
 ${PYSITELIB}/espefuse/efuse/esp32c5/operations.pyc
 ${PYSITELIB}/espefuse/efuse/esp32c5/operations.pyo
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/__init__.py
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/__init__.pyc
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/__init__.pyo
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/emulate_efuse_controller.py
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/emulate_efuse_controller.pyc
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/emulate_efuse_controller.pyo
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/fields.py
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/fields.pyc
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/fields.pyo
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/mem_definition.py
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/mem_definition.pyc
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/mem_definition.pyo
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/operations.py
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/operations.pyc
-${PYSITELIB}/espefuse/efuse/esp32c5beta3/operations.pyo
 ${PYSITELIB}/espefuse/efuse/esp32c6/__init__.py
 ${PYSITELIB}/espefuse/efuse/esp32c6/__init__.pyc
 ${PYSITELIB}/espefuse/efuse/esp32c6/__init__.pyo
@@ -161,21 +148,36 @@ ${PYSITELIB}/espefuse/efuse/esp32h2/mem_
 ${PYSITELIB}/espefuse/efuse/esp32h2/operations.py
 ${PYSITELIB}/espefuse/efuse/esp32h2/operations.pyc
 ${PYSITELIB}/espefuse/efuse/esp32h2/operations.pyo
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/__init__.py
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/__init__.pyc
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/__init__.pyo
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/emulate_efuse_controller.py
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/emulate_efuse_controller.pyc
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/emulate_efuse_controller.pyo
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/fields.py
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/fields.pyc
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/fields.pyo
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/mem_definition.py
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/mem_definition.pyc
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/mem_definition.pyo
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/operations.py
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/operations.pyc
-${PYSITELIB}/espefuse/efuse/esp32h2beta1/operations.pyo
+${PYSITELIB}/espefuse/efuse/esp32h21/__init__.py
+${PYSITELIB}/espefuse/efuse/esp32h21/__init__.pyc
+${PYSITELIB}/espefuse/efuse/esp32h21/__init__.pyo
+${PYSITELIB}/espefuse/efuse/esp32h21/emulate_efuse_controller.py
+${PYSITELIB}/espefuse/efuse/esp32h21/emulate_efuse_controller.pyc
+${PYSITELIB}/espefuse/efuse/esp32h21/emulate_efuse_controller.pyo
+${PYSITELIB}/espefuse/efuse/esp32h21/fields.py
+${PYSITELIB}/espefuse/efuse/esp32h21/fields.pyc
+${PYSITELIB}/espefuse/efuse/esp32h21/fields.pyo
+${PYSITELIB}/espefuse/efuse/esp32h21/mem_definition.py
+${PYSITELIB}/espefuse/efuse/esp32h21/mem_definition.pyc
+${PYSITELIB}/espefuse/efuse/esp32h21/mem_definition.pyo
+${PYSITELIB}/espefuse/efuse/esp32h21/operations.py
+${PYSITELIB}/espefuse/efuse/esp32h21/operations.pyc
+${PYSITELIB}/espefuse/efuse/esp32h21/operations.pyo
+${PYSITELIB}/espefuse/efuse/esp32h4/__init__.py
+${PYSITELIB}/espefuse/efuse/esp32h4/__init__.pyc
+${PYSITELIB}/espefuse/efuse/esp32h4/__init__.pyo
+${PYSITELIB}/espefuse/efuse/esp32h4/emulate_efuse_controller.py
+${PYSITELIB}/espefuse/efuse/esp32h4/emulate_efuse_controller.pyc
+${PYSITELIB}/espefuse/efuse/esp32h4/emulate_efuse_controller.pyo
+${PYSITELIB}/espefuse/efuse/esp32h4/fields.py
+${PYSITELIB}/espefuse/efuse/esp32h4/fields.pyc
+${PYSITELIB}/espefuse/efuse/esp32h4/fields.pyo
+${PYSITELIB}/espefuse/efuse/esp32h4/mem_definition.py
+${PYSITELIB}/espefuse/efuse/esp32h4/mem_definition.pyc
+${PYSITELIB}/espefuse/efuse/esp32h4/mem_definition.pyo
+${PYSITELIB}/espefuse/efuse/esp32h4/operations.py
+${PYSITELIB}/espefuse/efuse/esp32h4/operations.pyc
+${PYSITELIB}/espefuse/efuse/esp32h4/operations.pyo
 ${PYSITELIB}/espefuse/efuse/esp32p4/__init__.py
 ${PYSITELIB}/espefuse/efuse/esp32p4/__init__.pyc
 ${PYSITELIB}/espefuse/efuse/esp32p4/__init__.pyo
@@ -221,21 +223,6 @@ ${PYSITELIB}/espefuse/efuse/esp32s3/mem_
 ${PYSITELIB}/espefuse/efuse/esp32s3/operations.py
 ${PYSITELIB}/espefuse/efuse/esp32s3/operations.pyc
 ${PYSITELIB}/espefuse/efuse/esp32s3/operations.pyo
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/__init__.py
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/__init__.pyc
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/__init__.pyo
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/emulate_efuse_controller.py
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/emulate_efuse_controller.pyc
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/emulate_efuse_controller.pyo
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/fields.py
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/fields.pyc
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/fields.pyo
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/mem_definition.py
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/mem_definition.pyc
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/mem_definition.pyo
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/operations.py
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/operations.pyc
-${PYSITELIB}/espefuse/efuse/esp32s3beta2/operations.pyo
 ${PYSITELIB}/espefuse/efuse/mem_definition_base.py
 ${PYSITELIB}/espefuse/efuse/mem_definition_base.pyc
 ${PYSITELIB}/espefuse/efuse/mem_definition_base.pyo
@@ -246,13 +233,18 @@ ${PYSITELIB}/espefuse/efuse_defs/esp32.y
 ${PYSITELIB}/espefuse/efuse_defs/esp32c2.yaml
 ${PYSITELIB}/espefuse/efuse_defs/esp32c3.yaml
 ${PYSITELIB}/espefuse/efuse_defs/esp32c5.yaml
-${PYSITELIB}/espefuse/efuse_defs/esp32c5beta3.yaml
 ${PYSITELIB}/espefuse/efuse_defs/esp32c6.yaml
 ${PYSITELIB}/espefuse/efuse_defs/esp32c61.yaml
 ${PYSITELIB}/espefuse/efuse_defs/esp32h2.yaml
+${PYSITELIB}/espefuse/efuse_defs/esp32h21.yaml
+${PYSITELIB}/espefuse/efuse_defs/esp32h2_v0.0_v1.1.yaml
+${PYSITELIB}/espefuse/efuse_defs/esp32h4.yaml
 ${PYSITELIB}/espefuse/efuse_defs/esp32p4.yaml
 ${PYSITELIB}/espefuse/efuse_defs/esp32s2.yaml
 ${PYSITELIB}/espefuse/efuse_defs/esp32s3.yaml
+${PYSITELIB}/espefuse/efuse_interface.py
+${PYSITELIB}/espefuse/efuse_interface.pyc
+${PYSITELIB}/espefuse/efuse_interface.pyo
 ${PYSITELIB}/espsecure/__init__.py
 ${PYSITELIB}/espsecure/__init__.pyc
 ${PYSITELIB}/espsecure/__init__.pyo
@@ -265,6 +257,12 @@ ${PYSITELIB}/espsecure/esp_hsm_sign/__in
 ${PYSITELIB}/espsecure/esp_hsm_sign/exceptions.py
 ${PYSITELIB}/espsecure/esp_hsm_sign/exceptions.pyc
 ${PYSITELIB}/espsecure/esp_hsm_sign/exceptions.pyo
+${PYSITELIB}/${WHEEL_INFODIR}/METADATA
+${PYSITELIB}/${WHEEL_INFODIR}/RECORD
+${PYSITELIB}/${WHEEL_INFODIR}/WHEEL
+${PYSITELIB}/${WHEEL_INFODIR}/entry_points.txt
+${PYSITELIB}/${WHEEL_INFODIR}/licenses/LICENSE
+${PYSITELIB}/${WHEEL_INFODIR}/top_level.txt
 ${PYSITELIB}/esptool/__init__.py
 ${PYSITELIB}/esptool/__init__.pyc
 ${PYSITELIB}/esptool/__init__.pyo
@@ -274,6 +272,9 @@ ${PYSITELIB}/esptool/__main__.pyo
 ${PYSITELIB}/esptool/bin_image.py
 ${PYSITELIB}/esptool/bin_image.pyc
 ${PYSITELIB}/esptool/bin_image.pyo
+${PYSITELIB}/esptool/cli_util.py
+${PYSITELIB}/esptool/cli_util.pyc
+${PYSITELIB}/esptool/cli_util.pyo
 ${PYSITELIB}/esptool/cmds.py
 ${PYSITELIB}/esptool/cmds.pyc
 ${PYSITELIB}/esptool/cmds.pyo
@@ -283,6 +284,9 @@ ${PYSITELIB}/esptool/config.pyo
 ${PYSITELIB}/esptool/loader.py
 ${PYSITELIB}/esptool/loader.pyc
 ${PYSITELIB}/esptool/loader.pyo
+${PYSITELIB}/esptool/logger.py
+${PYSITELIB}/esptool/logger.pyc
+${PYSITELIB}/esptool/logger.pyo
 ${PYSITELIB}/esptool/reset.py
 ${PYSITELIB}/esptool/reset.pyc
 ${PYSITELIB}/esptool/reset.pyo
@@ -301,27 +305,21 @@ ${PYSITELIB}/esptool/targets/esp32c3.pyo
 ${PYSITELIB}/esptool/targets/esp32c5.py
 ${PYSITELIB}/esptool/targets/esp32c5.pyc
 ${PYSITELIB}/esptool/targets/esp32c5.pyo
-${PYSITELIB}/esptool/targets/esp32c5beta3.py
-${PYSITELIB}/esptool/targets/esp32c5beta3.pyc
-${PYSITELIB}/esptool/targets/esp32c5beta3.pyo
 ${PYSITELIB}/esptool/targets/esp32c6.py
 ${PYSITELIB}/esptool/targets/esp32c6.pyc
 ${PYSITELIB}/esptool/targets/esp32c6.pyo
 ${PYSITELIB}/esptool/targets/esp32c61.py
 ${PYSITELIB}/esptool/targets/esp32c61.pyc
 ${PYSITELIB}/esptool/targets/esp32c61.pyo
-${PYSITELIB}/esptool/targets/esp32c6beta.py
-${PYSITELIB}/esptool/targets/esp32c6beta.pyc
-${PYSITELIB}/esptool/targets/esp32c6beta.pyo
 ${PYSITELIB}/esptool/targets/esp32h2.py
 ${PYSITELIB}/esptool/targets/esp32h2.pyc
 ${PYSITELIB}/esptool/targets/esp32h2.pyo
-${PYSITELIB}/esptool/targets/esp32h2beta1.py
-${PYSITELIB}/esptool/targets/esp32h2beta1.pyc
-${PYSITELIB}/esptool/targets/esp32h2beta1.pyo
-${PYSITELIB}/esptool/targets/esp32h2beta2.py
-${PYSITELIB}/esptool/targets/esp32h2beta2.pyc
-${PYSITELIB}/esptool/targets/esp32h2beta2.pyo
+${PYSITELIB}/esptool/targets/esp32h21.py
+${PYSITELIB}/esptool/targets/esp32h21.pyc
+${PYSITELIB}/esptool/targets/esp32h21.pyo
+${PYSITELIB}/esptool/targets/esp32h4.py
+${PYSITELIB}/esptool/targets/esp32h4.pyc
+${PYSITELIB}/esptool/targets/esp32h4.pyo
 ${PYSITELIB}/esptool/targets/esp32p4.py
 ${PYSITELIB}/esptool/targets/esp32p4.pyc
 ${PYSITELIB}/esptool/targets/esp32p4.pyo
@@ -331,28 +329,21 @@ ${PYSITELIB}/esptool/targets/esp32s2.pyo
 ${PYSITELIB}/esptool/targets/esp32s3.py
 ${PYSITELIB}/esptool/targets/esp32s3.pyc
 ${PYSITELIB}/esptool/targets/esp32s3.pyo
-${PYSITELIB}/esptool/targets/esp32s3beta2.py
-${PYSITELIB}/esptool/targets/esp32s3beta2.pyc
-${PYSITELIB}/esptool/targets/esp32s3beta2.pyo
 ${PYSITELIB}/esptool/targets/esp8266.py
 ${PYSITELIB}/esptool/targets/esp8266.pyc
 ${PYSITELIB}/esptool/targets/esp8266.pyo
+${PYSITELIB}/esptool/targets/stub_flasher/1/.DS_Store
 ${PYSITELIB}/esptool/targets/stub_flasher/1/README.md
 ${PYSITELIB}/esptool/targets/stub_flasher/1/esp32.json
 ${PYSITELIB}/esptool/targets/stub_flasher/1/esp32c2.json
 ${PYSITELIB}/esptool/targets/stub_flasher/1/esp32c3.json
 ${PYSITELIB}/esptool/targets/stub_flasher/1/esp32c5.json
-${PYSITELIB}/esptool/targets/stub_flasher/1/esp32c5beta3.json
 ${PYSITELIB}/esptool/targets/stub_flasher/1/esp32c6.json
 ${PYSITELIB}/esptool/targets/stub_flasher/1/esp32c61.json
-${PYSITELIB}/esptool/targets/stub_flasher/1/esp32c6beta.json
 ${PYSITELIB}/esptool/targets/stub_flasher/1/esp32h2.json
-${PYSITELIB}/esptool/targets/stub_flasher/1/esp32h2beta1.json
-${PYSITELIB}/esptool/targets/stub_flasher/1/esp32h2beta2.json
 ${PYSITELIB}/esptool/targets/stub_flasher/1/esp32p4.json
 ${PYSITELIB}/esptool/targets/stub_flasher/1/esp32s2.json
 ${PYSITELIB}/esptool/targets/stub_flasher/1/esp32s3.json
-${PYSITELIB}/esptool/targets/stub_flasher/1/esp32s3beta2.json
 ${PYSITELIB}/esptool/targets/stub_flasher/1/esp8266.json
 ${PYSITELIB}/esptool/targets/stub_flasher/2/LICENSE-APACHE
 ${PYSITELIB}/esptool/targets/stub_flasher/2/LICENSE-MIT
@@ -360,10 +351,14 @@ ${PYSITELIB}/esptool/targets/stub_flashe
 ${PYSITELIB}/esptool/targets/stub_flasher/2/esp32.json
 ${PYSITELIB}/esptool/targets/stub_flasher/2/esp32c2.json
 ${PYSITELIB}/esptool/targets/stub_flasher/2/esp32c3.json
+${PYSITELIB}/esptool/targets/stub_flasher/2/esp32c5.json
 ${PYSITELIB}/esptool/targets/stub_flasher/2/esp32c6.json
+${PYSITELIB}/esptool/targets/stub_flasher/2/esp32c61.json
 ${PYSITELIB}/esptool/targets/stub_flasher/2/esp32h2.json
+${PYSITELIB}/esptool/targets/stub_flasher/2/esp32p4.json
 ${PYSITELIB}/esptool/targets/stub_flasher/2/esp32s2.json
 ${PYSITELIB}/esptool/targets/stub_flasher/2/esp32s3.json
+${PYSITELIB}/esptool/targets/stub_flasher/2/esp8266.json
 ${PYSITELIB}/esptool/uf2_writer.py
 ${PYSITELIB}/esptool/uf2_writer.pyc
 ${PYSITELIB}/esptool/uf2_writer.pyo

Index: pkgsrc/comms/py-esptool/distinfo
diff -u pkgsrc/comms/py-esptool/distinfo:1.13 pkgsrc/comms/py-esptool/distinfo:1.14
--- pkgsrc/comms/py-esptool/distinfo:1.13       Tue Apr 15 15:42:11 2025
+++ pkgsrc/comms/py-esptool/distinfo    Tue Jul 22 19:13:18 2025
@@ -1,5 +1,6 @@
-$NetBSD: distinfo,v 1.13 2025/04/15 15:42:11 adam Exp $
+$NetBSD: distinfo,v 1.14 2025/07/22 19:13:18 gdt Exp $
 
-BLAKE2s (esptool-4.8.1.tar.gz) = 202045bc330c4cd76c2d4e26fcb1fb9211cc2ece7899f9598bb8bcfe4dabe307
-SHA512 (esptool-4.8.1.tar.gz) = 584d73d2ca501194db782cdb1bc3655e8f7655c4dcbf461877900dc5e0f85934b97712ce9be908d8ee44d8bcca233c6cfc91e63e54305bc9bc08d565eb515b5a
-Size (esptool-4.8.1.tar.gz) = 409512 bytes
+BLAKE2s (esptool-5.0.1.tar.gz) = 2169c6115850ba1ecb8979baa19d5936c6974d5ce920078cf93d9aa70702b30f
+SHA512 (esptool-5.0.1.tar.gz) = dc57f1a36ae0689c878d69c97e207e71f3dfc0b6cb551cc2425c0890329d6b2f1200158150c9a3c1f1d310296f07af4db47fe11b85f76e00140e49ade82eb7a2
+Size (esptool-5.0.1.tar.gz) = 373632 bytes
+SHA1 (patch-esptool_cli__util.py) = c65229eee5104d55b007fc7c38b4663a3ba37c16

Added files:

Index: pkgsrc/comms/py-esptool/patches/patch-esptool_cli__util.py
diff -u /dev/null pkgsrc/comms/py-esptool/patches/patch-esptool_cli__util.py:1.1
--- /dev/null   Tue Jul 22 19:13:19 2025
+++ pkgsrc/comms/py-esptool/patches/patch-esptool_cli__util.py  Tue Jul 22 19:13:18 2025
@@ -0,0 +1,26 @@
+$NetBSD: patch-esptool_cli__util.py,v 1.1 2025/07/22 19:13:18 gdt Exp $
+
+Adjust click usage for >= 8.2.0, vs upstream's expecation of old click.
+
+https://github.com/espressif/esptool/pull/1104
+
+--- esptool/cli_util.py.orig   2025-07-19 20:28:53.595125845 +0000
++++ esptool/cli_util.py
+@@ -155,7 +155,7 @@ class AddrFilenamePairType(click.Path):
+ 
+     name = "addr-filename-pair"
+ 
+-    def get_metavar(self, param):
++    def get_metavar(self, param, ctx=None):
+         return "<address> <filename>"
+ 
+     def convert(
+@@ -294,7 +294,7 @@ class OptionEatAll(click.Option):
+         self._eat_all_parser = None
+         # Set the metavar dynamically based on the type's metavar
+         if self.type and hasattr(self.type, "name"):
+-            self.metavar = f"[{self.type.get_metavar(None) or self.type.name.upper()}]"
++            self.metavar = f"[{self.type.get_metavar(None, None) or self.type.name.upper()}]"
+ 
+     def add_to_parser(self, parser, ctx):
+         def parser_process(value, state):



Home | Main Index | Thread Index | Old Index