Swupdate Versions Save

Software Update for Embedded Systems

2023.12.1

3 months ago

Fix postupdate regression issue. This is just a bug fix for postupdate command not working in 2023.12

2023.12

4 months ago

2023.12

New features:

  • handlers: docker support for loading images and create containers
  • add nodejs binding
  • bootloader : support NVIDIA cboot
  • IPC : download URL can be transferred via IPC
  • Support new libubootenv version
  • Support per application vars and not just bootloader's
  • Support SSL for delta updates
  • Support newer libgpiod

Fixes:

  • please read git history for the complete list

2023.05

11 months ago
  • New features:

    • support btrfs in the partitioner
    • suricatta / backend: allow runtime selection
    • Mongoose : updated to 7.9
    • Support dynamic loading and static linking of bootloader libraries
    • Add PKCS#7 verification for wolfSSL
    • Python package swupdateclient
  • Fixes:

    • improve documentation
    • fix SEGV in mbedtls
    • fix memory usage in delta handler
    • fix number of steps in progress
    • deadlock if progress client are blocked
    • fix decrypt for zchunk header
    • fix grubenv with new grub version

2022.12

1 year ago

New features: Lua: - Expose bootloader interface to Lua - Filesystem functions Bootloader: - Dynamic loading of bootloader library Webserver: - Mongoose updated to 7.8 Progress: - fix steps when scripts are used Handler: - generic copy handler in chain - gtp_partition handler Suricatta: - Lua implementation - Generic Server example code Fixes: - fix steps when scripts are used - Fix Coverity Issues - wrong erase blocks in flash handlers

2022.05

1 year ago

2021.11

2 years ago

Features:

  • security:

    • Add optional CMS single signer verification
  • general: - BUG: buffer overflow with semantic version > 50 - Functions to detect automatically rootfs

  • License: - Completed REUSE compliant

  • handlers: - diskpart : fixes, hybrid partitions, device lock force mode, partuuid support - Delta Update - Fix rawcopy as script handler - MTD: erase sectors instead of whole device

  • Lua : - Fix, support for Luajit recovered. - New function (version and getroot)

  • Webserver: - fix progress bar in browser

  • doc: - Improved documentation for building with Yocto - Best practise - Fixes

  • ipc: - add status streaming support

  • fixes : - fix defects reported by coverity

  • ci: - switch from Travis to gitlab

Just run git log -M 2021.04..2021.11 for full Changelog

2021.04

3 years ago

2021.04

Features:

  • security:

    • first block decryption with pkcs11
  • general:

    • merge install from file with OTA install
    • extend -o option
      • create directory if not present
    • selections via configuration file
    • optimize reuse of configuration file
    • fix postinstall in case of downloader
    • add thread synchronization at startup
  • License:

    • prepare to be REUSE compatible (WIP)
  • handlers:

    • diskpart : extend to initialize a filesystem
      • support for VFAT
      • support for ext2 / ext3 /ext4
  • Lua :

    • detect root device and export to Lua
  • Webserver:

    • Update to Mongoose 6.18
  • doc:

    • rewrote some parts not very clear
  • ipc:

    • extend IPC with new option
    • -o can be set via IPC
    • dry-run can be set via IPC
    • version checking via IPC
    • increase robustness
  • parser:

    • full support of links
    • extend hook to partitions
  • bootloader:

    • fix grub interface
  • build:

    • do not rebuild if nothing changed
  • fixes :

    • fix defects reported by coverity

2020.11

3 years ago

2020.11

Features:

  • security:

    • encryption of sw-description (aes-cbc-256)
    • fix IVT size for encryption (IPC)
    • support WolfSSL and PKCS#11
    • fix encryption of single block
    • mbedTLS : support RSA PSS
  • general:

    • rework dry-run mode (scripts were executed)
    • semantic version to compare versions
    • resume after a power-cut
    • library becomes shared
  • handlers:

    • diskpart: new table available after setting to be able to install SW
    • diskpart : write table only in case of changes
    • new: UUID checker. It checks that a filesystem with same UUID does not exist.
  • Lua :

    • add interface to get which selection is chosen
    • LuaJIT (5.1) compatibility
  • progress interface:

    • add non blocking mode
    • send total number of bytes to be downloaded, too.
  • doc:

    • maintain links to previous release on Website
  • ipc:

    • allow to set selection for each install request
    • new interface, API will be more stable
    • commands to enable / disable suricatta daemon
  • others:

    • drop CRC check (useful for not patched cpio, that means with Debian and files > 2GB)
    • support cpio newc format
    • state save also outside suricatta
  • build:

    • out of tree build fixed
  • tools:

    • swupdate-progress in quiet mode
  • fixes :

    • check in git history for full changelog

2020.04

4 years ago

Prepare 2020.04

  • Lua: expose more functions
  • Webserver :
    • Updated to mongoose 6.16
  • New handlers:
    • readback handler
    • disk partitioning handler
    • provide full log for shell scripts
  • Handlers:
    • added "create-destination" to archive handler
  • Security:
    • Add an IPC to set AES key for decryption
    • IVT for each artifact
    • Added RSAPSS in case of mbedTLD
  • suricatta:
    • IPC to enable / disable daemon
    • send full log to Hawkbit Server
    • added configuration if token must be used to download artifacts (fix compatibility with AWS)
    • added "-f" to bind the interface to the channel
  • configuration:
    • default configuration file searched if none is passed
  • tools:
    • a script can be called after update
  • parser:
    • Hooks available for bootloader variables, too
    • Version of firmware sent to progress interface
  • general:
    • preupdate command
    • fix multilib support in OE
    • add support for coverity and fix of most defects found
    • fixes and clean up (list in git history)

2019.11

4 years ago
  • Improved support for libubootenv
  • rework swuforwarder, fix corruption
  • support system update
  • drop legacy webserver
  • support more as one instance of SWUpdate on the same target
  • improve support for Debian
  • Parser:
    • regexp for hardware compatibility check
    • new attribute: install-if-higher
    • hook support for bootloader section
    • new attribute: output to save SWU
    • bootloader_marker ("recovery_status") deactivable
  • Handlers:
    • ubiswap: atomic switch of UBI volumes
    • SSBL : switch between sw set with own structure
    • introduce handler without data
    • ubivol: auto-resize of volumes
    • fix rdiff handler
    • archive: set locale
  • Security:
    • support for rsa-pss
    • support for MBEDTLS
  • Lua:
    • export swupdate_progress_update
  • Compression:
    • added support for zstd
  • Documentation:
    • general improvements and fixes
    • links to newer talks about SWUpdate
  • Webserver:
    • fix hang if connection is broken