Skip to content
Release 2018.6

This release includes the final merge of the previously "experimental" API
for peer-to-peer discovery/download.  This is currently supported by Flatpak
and the EndlessOS updater.  One use case for example that this improves
is the "update via USB stick" case; you'll need to set collection IDs, and
have your update system use the repo finder API.  (Today `ostree admin upgrade`
doesn't).  Thanks a lot to Endless for all of their work on this!
PR: #1596

libostree learned how to retry HTTP requests on transient network errors.
By default, requests on such errors are now retried 5 times.
PR: #1594

There is also now a new "min-free-space-size" config option. This is similar
to the "min-free-space-percent" option but instead takes absolute values, such
as "1GB" or "10MB".
PR: #1616

The original systemd design for `ConditionNeedsUpdate=` didn't quite work
with libostree, but Endless wrote a fix and had been shipping it for a while.
That's now been merged: deploy: Delete .updated file from /etc and /var on new deployments
Part of the reason this came up now is we're planning to change rpm-ostree
to switch to systemd-sysusers:
And today sysusers uses `ConditionNeedsUpdate=`.  Once we make
the switch in rpm-ostree and test it out I'd recommend other operating
systems follow (and not use nss-altfiles). And if you've already made the switch,
let us know!
PR: #1631

We're working on using for Fedora CoreOS,
which means integrating it with libostree.  As both run in the initramfs,
we added a simple change to ensure `/var` is mounted.  A future enhancement
here will likely involve handling custom `/var` mounts too.
PR: #1617

There are a variety of other changes, like `fsck --all`, having u-boot support devicetree,

Thanks to all contributors!

Alexander Larsson (2 PRs, 3 commits)
  ostree_repo_resolve_rev: Resolve refs set in the transaction (#1624)
  PR: #1591
    fsck: Add --all to print all corrupted object
    fsck: Include the commits that contain the corruption in errors

Andrea Galbusera (1 PR, 1 commit)
  u-boot: add support for devicetree (#1590)

Arnaud Rebillout (1 PR, 1 commit)
  docs: var/local -> var/usrlocal (#1588)

Colin Walters (4 PRs, 8 commits)
  Post-release version bump (#1586)
  lib/archive: Tell g-ir-scanner to ignore the private libarchive bits (#1629)
  PR: #1566
    lib/sysroot: Add wrapper API to prune system repository
    lib: Add a public helper method for pruning to find all ref'd commits
  PR: #1632
    tests/installed: Add a free-space success path test
    lib/repo: Do free space math under lock in error path
    lib/repo: Rename free_space_size variable to free_space_mb
    lib/repo: Fix double-set-error in min-free-space-size code

Dan Nicholson (1 PR, 1 commit)
  deploy: Delete .updated file from /etc and /var on new deployments (#1631)

Jan Tojnar (1 PR, 1 commit)
  tests: Fix locale detection (#1611)

Jonathan Lebon (4 PRs, 6 commits)
  ci: Add .papr-ex.yaml (#1587)
  .gitmodules: Update URL for libglnx (#1604)
  switchroot: Allow letting ostree-prepare-root mount /var (#1617)
  PR: #1601
    ci: Drop gpgme and libgcrypt hacks
    ci: Bump to f28, except flatpak
    ci: Stop layering oci-kvm-hook

Matthew Leeds (8 PRs, 15 commits)
  bash-completion: Don't add a space after files and directories (#1598)
  Update libglnx to get g_autoptr backports (#1603)
  admin: Fix list of subcommands in help and manpage (#1621)
  lib/prune: Don't modify dirent->d_name in place (#1627)
  PR: #1596
    lib: Fix building against old glib versions
    Make P2P API public (no longer experimental)
  PR: #1605
    Fix building P2P code against old glib versions
    find-remotes: Fix unused variable warnings
    Allow compiling OstreeRepoFinderAvahi without libsoup
    Allow compiling with experimental API but without curl/soup
  PR: #1607
    ci: Use master branch as flatpak tag
    ci: Bump flatpak build to F28
  PR: #1615
    tests: Add test for including ostree.h
    Fix building against old glib versions
    Revert "lib: Fix building against old glib versions"

Philip Withnall (4 PRs, 16 commits)
  lib/repo-commit: Delay propagation of errors from abort_transaction() (#1626)
  PR: #1594
    lib/fetcher: Factor out HTTP status code handling from soup and curl
    lib/repo-pull: Add some missing assertions for progress statistics
    tests: Test pull behaviour when network timeouts occur
    ostree/trivial-httpd: Add --random-408s command line option
    lib/fetcher-soup: Map more SoupStatus codes to known GIOErrors
    lib/repo-pull: Support retrying requests on transient network errors
  PR: #1599
    lib/repo-pull: Factor out enqueue function for FetchStaticDeltaData
    lib/repo-pull: Factor out enqueue function for FetchObjectData
    lib/repo-pull: Factor out enqueue function for ScanObjectQueueData
    lib/repo-pull: Rename a variable
    lib/repo-pull: Factor out free function for FetchDeltaSuperData
    lib/repo-pull: Use GCC `?:` ternary shortcut where appropriate
    lib/repo-pull: Use values from struct in enqueue_one_object_request()
  PR: #1600
    lib/repo-pull: Support retries for delta superblocks
    lib/repo-pull: Support queuing delta superblock requests

Umang Jain (1 PR, 1 commit)
  lib/repo: Add min-free-space-size option (#1616)

Git-EVTag-v0-SHA512: cf91ea18298aa55d14078cf100af703cc925d89b0f91577f40a30ca5c42e5cbd51b386f0b9a6544ba42532593fbb36ee35f9b5f1bd8784b5dc0b7e6ad06b8950