Skip to content

Releases: fhrbata/esp-ice

Version 0.15.1

Choose a tag to compare

@github-actions github-actions released this 20 May 15:11

v0.15.1 (2026-05-20)

🐛 Bug Fixes

  • build: force -no-pie for STATIC=1 on linux+musl (Frantisek Hrbata - 63c544a)

Version 0.15.0

Choose a tag to compare

@github-actions github-actions released this 11 May 08:08

v0.15.0 (2026-05-11)

✨ New Features

  • target/openocd: preserve openocd startup banner in gdb pane scrollback (Frantisek Hrbata - 47d7cfd)

🐛 Bug Fixes

  • init: canonicalize idf-path to absolute via path_realpath (Frantisek Hrbata - 5eab60e)
  • target/openocd: adopt idf.py-style gdb preamble (reset + thbreak app_main) (Frantisek Hrbata - 7a935e7)
  • target/openocd: show openocd startup banner in the gdb pane on entry (Frantisek Hrbata - 52bc8e8)
  • target/openocd: close the blank row between buried and redrawn (gdb) (Frantisek Hrbata - 2da4fdf)
  • target/openocd: UART pane hint -- yellow, CRLF-terminated, accurate text (Frantisek Hrbata - 0841e61)
  • target/openocd,target/qemu: paint immediately and unbury the gdb prompt (Frantisek Hrbata - 97b9839)
  • idf/kconfgen: preserve user value across fixpoint visibility flips (Frantisek Hrbata - d4a125d)

📖 Documentation

  • add VHS walkthrough demo, hoist Experimental-PoC warning (Frantisek Hrbata - 7617b3a)

Version 0.14.0

Choose a tag to compare

@github-actions github-actions released this 07 May 12:50

v0.14.0 (2026-05-07)

✨ New Features

  • target/openocd: print hint about Ctrl-T r in the UART pane (Frantisek Hrbata - 0979fd6)
  • init: persist serial.port / serial.baud in .ice/config (Frantisek Hrbata - 57866a5)
  • serial: add serial_pick_default_port and serial_complete_baud (Frantisek Hrbata - 0a230ec)

🐛 Bug Fixes

  • target/openocd: atomic DTR/RTS toggle on UART open (Frantisek Hrbata - 8acff60)
  • target/openocd: distinguish openocd-exited from spawn timeout (Frantisek Hrbata - 9241920)
  • target/openocd: wait for the gdb listener, not the first listener (Frantisek Hrbata - e33861d)
  • idf/kconfgen: ignore stale sdkconfig values for promptless symbols (Frantisek Hrbata - 093adfc)

Version 0.13.0

Choose a tag to compare

@github-actions github-actions released this 07 May 06:38

v0.13.0 (2026-05-07)

✨ New Features

  • coredump: add ice coredump porcelain (chip -> idf coredump) (Frantisek Hrbata - e36b064)
  • idf/coredump: synthesise GDB-loadable ELF from BIN_V* dumps (Frantisek Hrbata - c3bfd4e)
  • idf/coredump: add --interactive (mirrors upstream dbg_corefile) (Frantisek Hrbata - e763f57)
  • idf/coredump: add --rom-elf pass-through to gdb (Frantisek Hrbata - 37344ca)
  • fs: add temp_dir() / make_temp_file(); use them in coredump (Frantisek Hrbata - 25710cb)
  • idf/coredump: add ice idf coredump (info, verify, extract, gdb) (Frantisek Hrbata - 7e84016)
  • base64: add base64 decoder helper at the project root (Frantisek Hrbata - 5961352)

🐛 Bug Fixes

  • idf/coredump: silence clang-tidy bugprone-implicit-widening errors (Frantisek Hrbata - 8452fd1)
  • idf/ldgen: per-rule EXCLUDE_FILE, symbol-rule lifecycle, dedup archives (Frantisek Hrbata - c0b6345)
  • idf/ldgen: emit root-level (archive: *) rules unconditionally (Frantisek Hrbata - b74905e)

🔧 Code Refactoring

  • target: rename ice target debug -> ice target openocd (Frantisek Hrbata - 00e9cb5)
  • qemu: split into ice qemu (porcelain) + ice target qemu (plumbing) (Frantisek Hrbata - 55c025d)

Version 0.12.0

Choose a tag to compare

@github-actions github-actions released this 04 May 16:29

v0.12.0 (2026-05-04)

✨ New Features

  • debug: ice debug -- OpenOCD + gdb dual-pane debug session (Frantisek Hrbata - 8d8db73)
  • tui: widget-owned inspect mode + mouse / paste / yank (Frantisek Hrbata - 8847050)
  • qemu: auto-install qemu via 'ice tools install' when missing (Frantisek Hrbata - a3b944e)
  • qemu: make GDB stub port configurable via --gdb-port (Frantisek Hrbata - aff552c)
  • qemu: auto-discover qemu and gdb under ice_home/tools/ (Frantisek Hrbata - 9aa730e)
  • qemu: --debug dual-pane gdb + UART in one window (Frantisek Hrbata - a02f3f6)
  • platform: pty primitive for embedding interactive children (Frantisek Hrbata - f5f2d7c)
  • qemu: add --gdb flag for two-terminal debug (Frantisek Hrbata - 82dc844)
  • qemu: add ice qemu for running firmware on QEMU (Frantisek Hrbata - 0adb90e)
  • platform: add pipe_write_all and kill_w shim (Frantisek Hrbata - 0f1ad2e)
  • tui: add origin + rect helpers for pane composition (Frantisek Hrbata - 0146624)
  • init: redirect check_sizes/gen_empty/gen_extra_subtypes/parttool.py to ice (Frantisek Hrbata - ee41d76)
  • target: add partition namespace replacing parttool.py (Frantisek Hrbata - 3629f99)
  • idf/partition-table: add decode/empty/subtypes-header/check-bootloader/check-partition (Frantisek Hrbata - abe2cb5)
  • partition_table: add binary parser, CSV emitter, runtime extras (Frantisek Hrbata - f2f0f85)

🐛 Bug Fixes

  • debug: run openocd in a pty so its log lines render correctly (Frantisek Hrbata - 8becc04)
  • qemu: reject empty offset in flash-image builder (Frantisek Hrbata - c5b6cff)
  • target/partition: accept -q/--quiet for parttool.py compat (Frantisek Hrbata - 51f5db1)
  • vt100: decode UTF-8 input bytes and implement ECH (Frantisek Hrbata - f98c464)
  • platform: macOS ioctl request was getting sign-extended (Frantisek Hrbata - 9ba2596)
  • platform: set pty winsize on both master and slave for macOS (Frantisek Hrbata - 7662ba5)
  • platform: set pty initial winsize on master, not slave (Frantisek Hrbata - d6b1872)
  • platform: cross-build failures on ppc64el and older mingw (Frantisek Hrbata - 3912800)
  • qemu,platform: clang-tidy lint failures from macOS CI (Frantisek Hrbata - e28f7db)
  • qemu: three smoke-test bugs in ice qemu's argv assembly (Frantisek Hrbata - 86819a0)
  • idf/partition-table: refactor empty.c so the analyzer can see fclose (Frantisek Hrbata - 2d09995)

🔧 Code Refactoring

  • platform: drop pipe_write_all, callers use write(2) directly (Frantisek Hrbata - af34f9d)

Version 0.11.0

Choose a tag to compare

@github-actions github-actions released this 01 May 10:23

v0.11.0 (2026-05-01)

✨ New Features

  • progress: mirror recent output and show a banner on Ctrl-v (Frantisek Hrbata - 9612653)
  • size: colorize table / tree / csv / json / dot output (Frantisek Hrbata - a17b74e)
  • size: add files / components / symbols / deps subcommands (Frantisek Hrbata - 5920386)
  • idf,size: expose --format and --archive-details completers (Frantisek Hrbata - 6b95e63)
  • idf,size: rewrite as a 1:1 esp-idf-size replacement (Frantisek Hrbata - 3b73900)
  • json: add json_serialize_pretty + integer-aware numbers (Frantisek Hrbata - 4855a43)
  • elf: add SHT_SYMTAB symbol-table reader (Frantisek Hrbata - 1bc1cbc)
  • map: parse the Cross Reference Table (Frantisek Hrbata - 7de09cd)

🐛 Bug Fixes

  • flash,monitor: handle linux target without scanning serial ports (Frantisek Hrbata - bd67fdc)
  • repo: pass --progress to git so output mirrors during clone/fetch (Frantisek Hrbata - e7521ac)
  • completion: refuse to install in the wrong shell (Frantisek Hrbata - a830bd2)
  • dispatch: skip setup_project on --ice-complete (Frantisek Hrbata - f6e408e)

🔧 Code Refactoring

  • dispatch: split --help / --ice-complete handling (Frantisek Hrbata - fc179b9)
  • platform: promote glob_match to a platform abstraction (Frantisek Hrbata - 24716a8)

Version 0.10.0

Choose a tag to compare

@github-actions github-actions released this 28 Apr 11:41

v0.10.0 (2026-04-28)

✨ New Features

  • idf,component: print resolve / fetch status during prepare (Frantisek Hrbata - a266e6a)
  • progress: runtime Ctrl-v toggle between spinner and live output (Frantisek Hrbata - ca34e9f)
  • progress: wrapper/log rework with --ice-wrapped flag (Frantisek Hrbata - e42a62f)

🐛 Bug Fixes

  • idf,component: verify component_hash against the unpacked dirhash (Frantisek Hrbata - e5c3a2a)

🔧 Code Refactoring

  • progress: stream child output when stdout is not a tty (Frantisek Hrbata - 49dc294)

Version 0.9.0

Choose a tag to compare

@github-actions github-actions released this 27 Apr 16:42

v0.9.0 (2026-04-27)

✨ New Features

  • target: auto-detect port when --port is omitted (Jaroslav Burian - 0992613)
  • completion: tab-complete serial ports for --port (Jaroslav Burian - 48054ce)
  • kconfgen: deferred diagnostic report subsystem (Jan Beran - f695199)
  • kconfgen: validate value type on sdkconfig load (Jan Beran - 45381d2)
  • kconfgen: add kc_expr_to_sbuf sbuf-based pretty-printer (Jan Beran - 85e74db)

🐛 Bug Fixes

  • kconfgen: pin fixture files to LF so Windows diff matches (Frantisek Hrbata - 2342b2d)
  • kconfgen: copy fixtures into $O so paths stay relative on Windows (Frantisek Hrbata - 7817b2f)
  • kconfgen: keep PATH around in fixture harness so Windows can load DLLs (Frantisek Hrbata - eb65bec)
  • kconfgen: accept "modules" as an option subcommand (Frantisek Hrbata - 2d4af27)
  • kconfgen: annotate kc_lex_die_unexpected as NORETURN (Frantisek Hrbata - 8188d41)
  • kconfgen: match python's env-set vs env-unset distinction (Frantisek Hrbata - b2b7148)
  • kconfgen: preserve user_default_seeded across kc_resolve (Frantisek Hrbata - 69fac42)
  • kconfgen: keep kc_load_env_file in kc_confread after split (Jan Beran - f6e374a)
  • kconfgen: locale-independent strtod for numeric comparisons (Jan Beran - 70465c2)
  • serial: use IOSSIOSPEED for non-standard baud rates on macOS (Frantisek Hrbata - a00cc93)
  • error: colour only the diagnostic prefix, not the whole line (Frantisek Hrbata - 04bd787)
  • hints: defer hint template formatting to after the regex matches (Frantisek Hrbata - 5497dba)
  • init: switch python shim from sitecustomize.py to .pth (Frantisek Hrbata - 3c50305)

🔧 Code Refactoring

  • kconfgen: split sdkconfig reader and renames out of kc_io.c (Jan Beran - 8e97f48)
  • kconfgen: extract kc_sym_type_default helper (Jan Beran - 6ac040b)

Version 0.8.1

Choose a tag to compare

@github-actions github-actions released this 27 Apr 09:09

v0.8.1 (2026-04-27)

🐛 Bug Fixes

  • monitor,vt100: stop modal blink when serial data streams fast (Jaroslav Burian - bce963e)

Version 0.8.0

Choose a tag to compare

@github-actions github-actions released this 27 Apr 08:43

v0.8.0 (2026-04-27)

✨ New Features

  • vt100,tui,monitor: inner-terminal vt100 emulator for ice monitor (Frantisek Hrbata - 45e014e)
  • tui,monitor: interactive TUI with normal/inspect modes (Frantisek Hrbata - 04f9ccf)
  • idf,component: native component-manager hooks via PubGrub (Frantisek Hrbata - f50720a)
  • json: decode \uXXXX unicode escapes to UTF-8 (Frantisek Hrbata - 3172c12)
  • add ZIP archive reader (Frantisek Hrbata - 08be81c)
  • add PubGrub version-constraint solver (Frantisek Hrbata - e2da9db)
  • add in-house SemVer 2.0.0 parser (Frantisek Hrbata - eaf23e6)

🐛 Bug Fixes

  • idf,component: handle path-override deps in prepare (Frantisek Hrbata - 142897f)
  • tui,monitor: keep modal overlays solid as serial bytes stream (Frantisek Hrbata - e6ff683)
  • ci,win: install python and zip on the MSYS2 runner (Frantisek Hrbata - c280432)
  • idf,component: verify archive sha256 against the lockfile (Frantisek Hrbata - 48dca2b)
  • zip: reject backslash and ':' to block Windows zip-slip (Frantisek Hrbata - d896516)
  • image: match esptool elf2image output byte-for-byte (Frantisek Hrbata - 4aa2a2f)
  • yaml: support zero-indent block sequences (Frantisek Hrbata - eb5e571)
  • address clang-tidy errors (Frantisek Hrbata - d967dc5)

🔧 Code Refactoring

  • extract git CLI helpers from cmd/repo/ (Frantisek Hrbata - a1e44a5)