Skip to content

v0.3.0

Choose a tag to compare

@nebkat nebkat released this 15 Jul 20:48
· 87 commits to main since this release

Added

  • Partition table file commands that make the table itself the subject
    (a positional file), keeping the global --partition-table-file
    option for its existing role of overriding the layout of other
    commands:
    • convert-table <in> <out> — convert a partition table between CSV
      and binary, offline. Format is auto-detected on input and inferred
      from the output extension (.csv/.bin) or --format.
    • print-table [file] — pretty-print a partition table from a CSV or
      binary file (offline), or from the device when no file is given.
    • dump-table [output] — read the partition table from the device and
      save it as CSV or binary (default filename
      {chip}-{mac}-{timestamp}-partition-table.csv).
    • write-table <file> — flash a partition table from a CSV or binary
      file to the device. Requires an explicit file (so it can never read
      the device's current table and write it back to itself), verifies
      the table before flashing (override with --force), and warns that
      only the map is replaced — existing partition data is not moved or
      erased.

Changed

  • list is now an alias of print-table (both print the device's
    partition table identically). Its --partition-type,
    --partition-subtype, and --partition-name flags — which were never
    implemented — have been removed.

Fixed

  • Working with empty or truncated input files now reports a clear error
    instead of a confusing parser failure (e.g. "Partition table is
    missing an end-of-table marker" for a zero-byte image). Empty images,
    app binaries, and bundle ZIPs are rejected up front, as are images too
    small to reach the partition table offset and corrupt (non-ZIP)
    bundles.
  • A parsed-but-empty partition table (all-0xFF binary region,
    comment-only CSV, etc.) is now rejected across all parse paths rather
    than silently yielding a table with no partitions.
  • Loading a partition table CSV that contains bootloader rows (such as one
    produced by dump-table) no longer requires re-specifying
    --primary-bootloader-offset: the offset embedded in the CSV is
    recovered from the file, so dumped tables round-trip through
    print-table, convert-table, write-table, and --partition-table-file
    without extra arguments. The flag still works as an explicit override.