Skip to content

Releases: fwup-home/fwup

v0.10.0

23 Oct 16:31
Compare
Choose a tag to compare
  • New features
    • Add U-Boot environment support. This allows firmware updates to modify
      the U-Boot environment to indicate things like which partition is active.
      fwup can also look at the U-Boot environment to decide which partition to
      update.
    • Add raw_memset to write a fixed value over a range of blocks. This is good
      for invalidating SDCard regions in manufacturing so that they're
      guaranteed to be reinitialized on first boot. SDCard TRIM support would be
      better, but fwup doesn't work on the bulk programmers.
    • Add define_eval() to support running simple math expressions when building
      firmware update packages. This makes entering offset/size pairs less
      tedious.
  • Bug fixes
    • Re-enable max SDCard size check on Linux to reduce risk of writing to an
      hard drive partition by accident.

v0.9.2

23 Sep 16:00
Compare
Choose a tag to compare
  • Bug fixes
    • Fix SDCard corruption issue on Windows. Disk volumes are now locked for
      the duration of the write process. Thanks to @michaelkschmidt for the fix.
    • Allow /dev/sda to be auto-detected as an SDCard on Linux. It turned out
      that for some systems, this was a legit location. Most people will not
      see it, since it doesn't pass other tests.
    • Set compression parameters on libarchive's zip compressor. This wasn't a
      actually a bug, but there seemed to be some variability in how .fw files
      were compressed.

v0.9.1

19 Sep 13:08
Compare
Choose a tag to compare
  • New features
    • Build Chocolatey package for Windows - lets Windows user run choco install fwup once the package is accepted into the Chocolatey repo.
    • Build a .deb package for Raspbian. This makes it easier to install
      fwup on Raspberry Pis. CI now builds and tests 32-bit armhf versions.

v0.9.0

08 Sep 14:06
Compare
Choose a tag to compare
  • New features
    • Windows port - It's now possible to natively write to SDCards on
      Windows.
  • Bug fixes
    • Don't create files in /dev. This fixes a TOCTOU bug where an SDCard
      exists during enumeration time and disappears before the write. When this
      happened, a regular file was created in /dev which just confused
      everyone.
    • Support writing 0-byte files to FAT partitions. They were being skipped
      before. This is different than touching a file since it can be used to
      truncate an existing file.

v0.8.2

10 Aug 01:15
Compare
Choose a tag to compare

This release addresses a corruption issue when updating
an existing FAT filesystem. The corruption manifests itself as zero'ing out 512 bytes
at some place in the filesystem that wasn't being upgraded. It appears that the
location stays the same with the configuration that reproduced the issue. Due to some luck,
the condition that causes this is relatively rare and appears to only have
caused crashes for BeagleBone Green users. BeagleBone Black users still had the
corruption, but it did not seem to affect operation.

It is highly recommended to upgrade the version of fwup on your target to this
version.

  • Bug fixes
    • Fix FAT filesystem corruption when running a software update.

v0.8.1

03 Aug 20:45
Compare
Choose a tag to compare

This release is a bug fix release on v0.8.0. The combination of significantly
improved code coverage on the regression tests (see Coveralls status) and the
Windows port uncovered several bugs. People submitting fwup to distributions are
highly encouraged to run the regression tests (make check), since some issues
only appear when running against old or misconfigured versions of libconfuse and
libarchive.

  • Bug fixes
    • Use pkg-config in autoconf scripts to properly discover transitive
      dependencies. Thanks to the Buildroot project for discovering a broken
      configuration.
    • Fix lack of compression support in libarchive in static builds (regression
      test added to catch this in the future)
    • Fix MBR partition handling on 32-bit systems (offsets between 2^31 and
      2^32 would fail)
    • Fix uninitialized variable when framing on stdin/stdout is enabled
    • Various error message improvements thanks to Greg Mefford.

v0.8.0

20 Jun 17:52
Compare
Choose a tag to compare
  • New features
    • Added assertions for verifying that inputs don't excede their expected
      sizes. The assertions are only checked at .fw creation time.
    • Add support for concatenating files together to create one resource. This
      was always possible before using a preprocessing script, but is more
      convenient now.
    • Add "framed" input and output when using stdin/stdout to simplify
      integration with Erlang and possibly other languages.
    • Detecting attached SDCards no longer requires superuser permissions on
      Linux.
    • Listing detected SDCards (--detect option) prints the SDCard size as
      well. _This is a breaking change if you're using fwup --detect in a script_
  • Bug fixes
    • Fixed va_args bug that could cause a crash with long fwup.conf inputs
    • fwup compiles against uclibc now
    • autoreconf can be run without creating the m4 directory beforehand

v0.7.0

31 May 08:30
Compare
Choose a tag to compare

This release introduces a change to specifying requirements on upgrade sections.
Previously, the only supported option was require-partition1-offset.
Requirements can now be specified using function syntax. If you have older versions of
fwup in the field, using this new feature will create .fw files that won't
apply. The change makes requirement support less of a hack. If you don't change
to the new syntax, fwup will continue to create .fw files that are
compatible with old versions.

  • New features
    • Task requirement code now uses functions for checks
    • Add fat_touch to create 0 length files on FAT filesystems
    • Add require-fat-file-exists to check for the existance of a file when
      determining which task to run
    • libconfuse 3.0's unknown attribute support is now used to make fwup
      more robust against changes to meta.conf contents
    • open_memstream (or its 3rd party implementation) is no longer needed. This
      helps portability.
    • The meta.conf file is stripped of empty sections, lists, and attributes
      set to their defaults. If you have an old fwup version in the field, or
      you're using libconfuse < 3.0, it is now much harder to generate
      incompatible fwup files assuming you don't use features newer than your
      deployed fwup versions.
  • Bug fixes
    • Autodetection will work for SDCards up to 64 GB now
    • Fixed off-by-month bug when creating files in FAT partitions

v0.6.1

07 Mar 22:11
Compare
Choose a tag to compare
  • New features
    • Add bash completion
    • Prebuilt .deb and .rpm archives for Linux

v0.6.0

08 Feb 02:53
Compare
Choose a tag to compare
  • Bug fixes
    • Fix FAT filesystem creation for AM335x processors (Beaglebone Black)
  • New features
    • Added manpages