mail archive of the rauc mailing list
 help / color / mirror / Atom feed
From: "Enrico Jörns" <ejo@pengutronix.de>
To: "rauc@pengutronix.de" <rauc@pengutronix.de>
Subject: [RAUC] [ANNOUNCE] RAUC v1.2 released
Date: Sun, 27 Oct 2019 22:37:22 +0100	[thread overview]
Message-ID: <91985347-66da-3d44-145e-43562ca46e98@pengutronix.de> (raw)

Hi everyone,

right before the ELC-E starts tomorrow, we used the time in the hotel to
bake a brand new RAUC release for you (and your embedded devices)!
Well, here it is: RAUC v1.2

  https://github.com/rauc/rauc/releases/tag/v1.2

Are there any good reasons for updating to it? Of course!
As always there is a good mix of bug fixes and new features your
setups will benefit from:

We fixed some leaking file descriptors that may have caused RAUC to be
killed with ‘Too many open files’ errors when executing a significant
number of 'rauc status' or 'rauc install' actions without reboot.

RAUC now also will abort earlier in case of errors that are detectable
before actually entering the atomic region and writing slots. This
allows RAUC to fail earlier without leaving behind a disabled slot group
with incomplete contents.

Another noteworthy change is that we changed the default of one of
RAUC's most discussed optimization features: The skipping of slot
updates where the intended and the current slots hash matches exactly.
The past showed that this behaviour was often perceived as 'unexpected'.
It is now disabled by default but may be explicitly enabled with
'install-same=false'.

The command line interface received some new features and polishing so
that we now have a more structured status output and an optional
installation progress, activatable with 'rauc install --progress ...'.

For devices that boot from the first MBR partition, RAUC now also
supports atomic bootloader updates by manipulating the MBR to switch
between redundant partition regions.


As always, find a detailed list on what was added, changed and fixed
since v1.1 below.

We would like to say thank you to everyone who tested for v1.2, reported
issues or contributed new features!

Best regards and fail-safe updating,

The RAUC Team


---

Enhancements

  * Added ``--signing-keyring`` argument to specify a distinct keyring
for post-signing verification. This allows for example to use ``rauc
resign`` with certs not verifying against the original keyring.
  * Output of 'rauc status' is now grouped by slot groups to make it
easier to identify the redundancy setup. Previously, the present slots
were printed in a random order which was confusing, especially when
having more than three or four slots.
  * Use pkg-config to obtain valid D-Bus install directories and clean
up D-Bus directory handling. This adds libdbus-1-dev as new build
dependency. (by Michael Heimpold)
  * Moved various checks that could be performed before actually
starting the installation out of the atomic update region. This allows
RAUC to fail earlier without leaving behind a disabled slot group with
incomplete contents.
  * Added optional ``--progress`` argument to ``rauc install`` that
enables a basic text progress bar instead of the default line-by-line log.
  * Added ``tmppath`` to casync system config options to allow setting
TMPDIR for casync. (by Gaël PORTAY)
  * Slot skipping was deactivated by default as it turned out to be
unexpected behaviour for many users. The corresponding setting was
renamed to 'install-same=' ('force-install-same' will remain valid,
too). The means skipping writing for slots whose current and intended
slot hashes are equal must now be enabled explicitly. This optimization
is mainly useful for use-cases with a read-only rootfs.
  * Added new slot type ``boot-mbr-switch`` to support atomic updating
of boot partitions in the MBR. (by Thomas Hämmerle)

Bug fixes

  * Fixed detection of whether the bundle path is located in input
directory for a corner case.
  * Fixed off-by-one error in printing the remaining attempts counter in
the uboot.sh contrib script (by Ellie Reeves)
  * Fixed detection of mount points disappearing during the service's
runtime.
  * Added missing entry of 'service' subcommand to RAUC help text (if
compiled with service support).
  * Fixed inappropriate resetting of BOOT_ACK flag in eMMC extCSD
register handling which could have prevented proper booting on some
SoCs. (by Stephan Michaelsen)
  * Fixed leaking GDataInputStreams in boot selection and install
handling that led to steadily increasing number of open file descriptors
in some scenarios until exceeding system limits and leading to 'Too many
open files' errors. This was only problematic when installing many times
without rebooting.
  * Fixed 'uninitialized local' bugs in update_handler and config_file
module. (by Gaël PORTAY)
  * PKCS#11 handling now does not silently accept missing (empty) PINs
anymore, but allows interactive prompt for entering it.
  * Fixed bundle detection on big endian systems.
  * Fixed size mismatches in printf formatter and struct packing on ARM32.

Testing

  * Fix checks that depended on implicit assumptions regarding the
GHashTable behaviour that are not valid anymore for newer glib versions.
  * Added notes on required tools for unit testing and added check for
grub-editenv being present.
  * Travis now also runs cross-compilation tests for platforms armhf,
i386, arm64, armel to allow early detection of cross-compilation issues
with endianness, 32 vs. 64 bit, etc.

Code

  * Reworked subprocess call logging for debugging and added remaining
missing log output to users of r_subprocess_new().
  * Refactored slot handling code in new 'slot.c' module to be used for
both install and status information handling.
  * Added qdbusxml2cpp annotations to rauc-installer.xml for interface
class generation. (by Tobias Junghans)
  * Removed the deprecated 'network mode'. Note that this does not
affect RAUC's bundle network capabilities (casync, etc.).
  * Fixed clang compilation warnings (unused variable, printf formatter,
  non-obvious invert statements).
  * Various code cleanups, structural simplifications

Documentation

  * Added hints for creating ``/dev/data`` symlink to mount the right
data partition in dual data partition setups. (by Fabian Knapp)
  * Extended manpage to cover 'rauc status' subcommands. (by Michael
Heimpold)
  * Fixed various typos.

Contributions from: Bastian Krause, Ellie Reeves, Enrico Jörns, Fabian
Knapp,
Gaël PORTAY, Jan Lübbe, Leif Middelschulte, Michael Heimpold , Stephan
Michaelsen , Thomas Hämmerle, Thorsten Scherer, Tobias Junghans, Uwe
Kleine-König

-- 
Pengutronix e.K.                           | Enrico Jörns                |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-5080 |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
RAUC mailing list

                 reply	other threads:[~2019-10-27 21:37 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=91985347-66da-3d44-145e-43562ca46e98@pengutronix.de \
    --to=ejo@pengutronix.de \
    --cc=rauc@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox