Skip to content
Tags give the ability to mark specific points in history as being important
  • debian/2017.3-1
    f537739b · 2017.3-1 ·
    ostree Debian release 2017.3-1
  • upstream/2017.3
    Upstream version 2017.3
  • v2017.3
    e02e9002 · Release 2017.3 ·
    Release 2017.3
    A variety of small fixes here.  One of the most notable things is
    the static delta progress computation is now more accurate; this should
    make it easier to write a user interface consuming libostree that displays
    how much will be downloaded before initiating it.
    Related to this, `ostree admin upgrade` gained `--pull-only` and `--deploy-only`
    which makes it easier to write e.g. a systemd timer unit that does background
    pulls, but only do a deployment (i.e. upgrade) on administrator/device owner
    action.  A bit more information in <>
    and <>
    There are two API additions - it's now possible to [configure the progress UI frequency](
    and [the zlib compression level](
    Besides that, there are a variety of smaller fixes.  My favorite is probably
    a small fix for [grub2 on ppc64](,
    so we now have `fedora/26/ppc64le/atomic-host`.
    Thanks to all contributors!
    Christian Hergert (1):
          repo/checkout: fix 32-bit builds
    Colin Walters (28):
          deltas: Don't put unreadable *from* objects in fallback
          delta-show: Don't dump whole superblock, do show fallback checksums
          repo: Fix static delta progress display
          pull: Explicitly error out if metadata objects are fallbacks
          pull: Fold together deltapart+fallback count for display
          ci: Install PyYAML
          lib: Ensure an error is set in ensure_unlinked() if errno != ENOENT
          libtest: Re-enable quiet mode for building fs tree
 Add more/clean up links to consuming projects
          libglnx: Re-bump to master due to accidental reversion
          ci: Hard error on all -fsanitize=undefined warnings
          build: Add --with-smack, use it to reset contexts for writing objects
          main: Make ostree --version output YAML (and add gitrev)
          deploy: Correctly use libmount unref() calls rather than free()
          man/repo-config: Document mirrorlist
          tree-wide: Squash noncritical compiler warnings
          deploy/libmount: Fix build with old util-linux 2.23 (CentOS7)
          fetcher: Log failures into journal
          upgrade: Add support for --pull-only and --deploy-only
          grub2: Use g_spawn_sync() rather than GSubprocess to avoid SIGCHLD
          grub2: Use "linux16" only on x86/x86_64
          pull: Use all available commits for delta sources
          fetcher/curl: Fix leaks caught by ASAN
          Allow and start using C99 declaration-after-statement
          repo/checkout: Verify early if src/destination are on same device
          checkout: Support a "pure addition" mode
          repo/checkout: Convert a few functions to new "stmt-decl/FALSE" style
          Release 2017.3
    Gatis Paeglis (1):
          deltas: Expose the filename parameter
    Georges Basile Stavracas Neto (2):
          repo-pull: add option to set the async update frequency
          ostree: allow setting update frequency from command line
    Giuseppe Scrivano (1):
          contrib/golang: rm directory
    Jonathan Lebon (2):
          pull: don't use static deltas if archive repo
          libglnx: bump for -Wmaybe-uninitialized fix
    Philip Withnall (2):
          build: Fix disabling --enable-man if xsltproc is not available
          libostree: Allow compression level to be set for archive-z2 stream
    Git-EVTag-v0-SHA512: 55adebf589a0f2115f0ab3cb3f69b42ba3a08c19b3bf54580c437ac08e336651d54849666ab5718e466bdc99bbbaedca79f91619d6e5db3a0f15849029d33cfe
  • v2017.2
    da21d735 · Release 2017.2 ·
    Release 2017.2
    First, this release renames the project to `libostree`.  This best matches
    the current usage of the code, where different projects act as client tools.
    More information [in the pull request](
    However - if you're a user of `ostree admin upgrade`; don't worry, it will
    continue to be maintained and there are improvements in the pipeline.
    It's possible that there will be an effort to have a "canonical" ostree
    client-side daemon in the future.
    Moving on, there are some smaller bugfixes and enhancements in this release,
    and two big new build-time options.
    `--with-curl`: We now support libcurl as a HTTP backend. This passes all of the
    existing tests, and is suitable for evaluation by downstream consumers. Please
    give it a try, and it's likely we'll classify it as equally stable as the
    libsoup backend within a release or two. Among other features, the libcurl
    backend can speak `HTTP/2`, which can result in *substantial* speedups in the
    non-static-delta case. Another motivation for this is that for `rpm-ostree` we
    already depend on libcurl, which also links to OpenSSL in Fedora. Whereas
    `libsoup->glib-networking->gnutls`, so with this change we'll drop gnutls too.
    `--enable-rust`: This is an experiment in following a similar plan to what Firefox is doing with
    Rust.  When this build time option is enabled, a very small bit of libostree (the
    rsync-style rollsum code) is in Rust, and linked statically into the rest of the
    library.  There are no plans right now to make this a hard requirement in the
    near future.  Please let us know if a dependency on Rust would be
    a blocker for your usage of libostree.  Or conversely, if using Rust is exciting
    for you and would make you more likely to contribute, please also let us know that!
    There's more information [in the pull request](
    Thanks to all contributors!
    Alexander Larsson (1):
          rofiles-fuse: Support write/read_buf()
    Anton Gerasimov (1):
          admin-switch: Don't segfault if there's no remote
    Chen Fan (1):
          doc: fix typo in CONTRIBUTING
    Colin Walters (19):
          lib: Adjust comments in symbols section for last release
          lib: Prefix GPG errors with the checksum
          travis: Disable tests (but keep builds) on flaky distros
          lib: Move the bupsplit selftest into our test framework
          tests: Add setup for more realistic repo, change pull-many to use
          Rename to libOSTree
          oxidation: Add implementation of bupsplit in Rust
          packaging/: Delete
          lib: Add ostree_repo_reload_config()
          rust: Support `make dist` -> cargo vendor
          repo: Add archive/zlib-level option, drop default compression to 6
          pull: Add queuing into the higher level logic
          fetcher: Drop the libsoup queue
          pull: Show Estimating if we're scanning too
          libcurl backend
          libglnx: Bump
          commit: Support -F/--body-file, like git
          build: Remove .PHONY for Rust shared library
          Release 2017.2
    Jonathan Lebon (4):
          trivial-httpd: trivial option help string fixes
          docs: update pulp_ostree link
          trusted.gpg.d: keep in the same location
          fetcher queue: also throttle on outstanding writes
    Krisztian Litkey (1):
          libostree: added empty ot_cleanup_{read,write}_archive macros.
    Philip Withnall (1):
          ostree-repo: Clarify error behaviour of remote option getters
    Simon McVittie (1):
          libostree: Don't distribute generated enumtypes in tarballs
    Git-EVTag-v0-SHA512: 1191007c2417ecaae5eded9453e830f1e91532360d44a9d4e9a845ab62491863e0ad1a20437d476172d6867a4b0548ca89ad5715b802c2a9e0f6d53f62f812a8
  • debian/2017.1-1
    37e5dce4 · 2017.1-1 ·
    ostree Debian release 2017.1-1
  • upstream/2017.1
    Upstream version 2017.1
  • v2017.1
    6517a8a2 · Release 2017.1 ·
    Release 2017.1
    This release has mostly bugfixes, the main new feature is that the `prune`
    command gained more sophistication around selectively pruning branches. We're
    planning to use this in Project Atomic work where we want to co-locate both
    "development" and "stable" branches in the same repository.
    The next release is likely to be more exciting, as we have an additional new
    libcurl backend in the works - this release contains some preparatory cleanup
    for that.
    Thanks to all contributors!
    Colin Walters (19):
          docs: Fix ostree.version -> version
          fetcher: Hoist core "mirrored request" API to public
          fetcher: Move high level functions into "fetcher-util"
          fetcher: Split lowlevel API into file/membuf variants
          build-sys: Minor makefile tweaks
          Split trivial-httpd into separate binary
          pull: Rework delta superblock fetches to be async
          trivial-httpd: Daemonize better
          .dir-locals.el: Standard Emacs indentation config
          unlock: Fix description for --hotfix
          tests: Alias assert_not_reached() -> fatal()
          pull: Fix theoretical checksum collision for metadata fetches
          fetcher: Rework API to use strings for tls keys/db
          tests: Don't inject newline in URL
          tests: Loosen error regexp
          libtest: Enable web server logs
          Add support for more selective pruning
          tests: Add a big (many objects) pull
          Release 2017.1
    Dan Nicholson (3):
          repo: Fix indentation
          repo: Fix object list keys ownership
          repo: Fix list_objects annotations
    Mario Sanchez Prada (1):
          static-delta: Pretend that world unreadable objects are new objects
    Paul van Tilburg (1):
          admin: Use execlp() to look for systemctl as the shell would
    Simon McVittie (3):
          Fix TAP syntax in, and run it
          Sourced test snippets: remove shebang and make non-executable
          Make corrupt-repo-ref.js executable
    Git-EVTag-v0-SHA512: f6a195f995f2269a3312aa57dea7e575cfd38030dc6237590b1c00ebf117666604a149b864a60ab5685d4384b07661dce1960a4d0d230697046ac48e73b7ccfc
  • debian/2016.15-3
    5148760e · 2016.15-3 ·
    ostree Debian release 2016.15-3
  • debian/2016.15-2
    91125123 · 2016.15-2 ·
    ostree Debian release 2016.15-2
  • debian/2016.15-1
    f7eaa67d · 2016.15-1 ·
    ostree Debian release 2016.15-1
  • upstream/2016.15
    Upstream version 2016.15
  • debian/2016.14-2_bpo8+1
    4411f5b7 · Backport to jessie ·
    ostree Debian release 2016.14-2~bpo8+1
  • v2016.15
    c9d565a5 · Release 2016.15 ·
    Release 2016.15
    This release is mostly bugfixes - for example, it cleans up the vast
    majority of memory leaks caught by ASAN.  We also build without
    libsoup again, which is preparatory for a potential addition
    of a libcurl HTTP backend.
    Another notable change is that we now always checksum individual
    objects even when applying static deltas, regardless of whether or not
    the summary file is signed.  This is part of an ongoing thread about
    supporting OCI as a transport layer.
    Alexander Larsson (5):
          pull: scan_commit_object() - don't load variant twice
          ostree-repo-traverse: Don't leak floating GVariant
          pull_with_options: Don't leak csum_v
          pull: Don't leak delta superblock variants
          delta compilation: Fix leak
    Colin Walters (34):
          [ASAN] delta compilation: More leak fixes
          [ASAN] deltas: Fix minor memory leak
          [ASAN] cmdline: Fix minor leak in delta cmdline entrypoint
          traverse: Use g_hash_table_add
          [ASAN] sysroot: Fix leak/double free of keyfile origin
          [ASAN] metalink: Fix leaks of buffer
          [ASAN] bootconfig: Drop a pointless strdup in parser
          [ASAN] set-origin: Squash a leak
          [ASAN] tests: Fix leaks
          Define and use cleanup helpers for libarchive
          [ASAN] tests: Cleanup all current remaining leaks
          tests: Use G_DEBUG=fatal-warnings here too
          tests/keyfile-utils: Drop tests covering preconditions
          lib: Always checksum content in deltas
          pull: Write .commitpartial for local pulls first too
          lib: Remove unused ostree_metalink_get_uri()
          tree-wide: Use g_hash_table_add() where applicable
          ci: Make all ci tests gating for Homu
          build: Add more default errors
          lib: Ensure we use _GNU_SOURCE in enum templates
          fetcher: Define an abstraction over SoupURI
          build: Make libsoup optional again
          [ASAN] sysroot: Squash a leak in lockfile acquisition
          build: Always do enum scanning now
          tree-wide: Switch to autoptr for GOptionContext
          build: Error if glib isn't found
          repo: Add unconfigured-state to remote config options
          Skip gjs-based tests if ASAN is enabled
          tests: Tweak installed tests to deal with ASAN
          ci: Drop sudo installed tests
          ci: Combine UBSAN and ASAN by default
          lib: Squash last use of GFile deltas_dir
          ci: Rebase to f25
          Release 2016.15
    Dan Nicholson (1):
          repo: Fix annotations for remote_fetch_summary functions
    Jasper St. Pierre (1):
          ostree-repo-traverse: Remove an accidental print statement
    Mario Sanchez Prada (1):
          man: Mention bare-user in manpages, along with the other modes
    Simon McVittie (13):
          build: clean up ostree-remount if building without systemd
          ci-build: consistently use yes/no for booleans, not yes/empty
          ci-install: add ci_distro
          travis-ci: put an explicit copyright/license on the scripts
          travis-ci: Use a non-ostree-specific name for the Docker image
          travis-ci: Move helper function to before we start building anything
          travis-ci: cat the test log after successful test runs
          travis-ci: Run `make distcheck` too
          travis-ci: Use "slim" Debian image for testing
          travis-ci: Enable stretch (the future Debian 9), replacing unstable
          travis-ci: document parameter variables
          tests: prepend to an existing LD_LIBRARY_PATH, GI_TYPELIB_PATH
          Terminate individual tests after (10 * $TEST_TIMEOUT_FACTOR) minutes
    Git-EVTag-v0-SHA512: 18060109c2493e6a1524e293c8a664b4a8da1f23c6b25761083fc50f806aa06911d8d58171fa2985909ea1e33a011c7d3e0dc824cda54b4699fe8b04e0a1a00d
  • debian/2016.14-2
    2a661101 · 2016.14-2 ·
    ostree Debian release 2016.14-2
  • debian/2016.14-1
    86345424 · 2016.14-1 ·
    ostree Debian release 2016.14-1
  • debian/2016.13-1_bpo8+1
    796c0431 · 2016.13-1~bpo8+1 ·
    ostree Debian release 2016.13-1~bpo8+1
  • upstream/2016.14
    Upstream version 2016.14
  • v2016.14
    7584dc0f · Release 2016.14 ·
    Release 2016.14
    First, this release adds GPG verification for the commit objects
    inside deltas.  This was a vulnerability if you are fetching content
    over plain HTTP, and is still important if using TLS.  More
    information is available in [the commit](
    and there is [continuing upstream discussion](
    of transport integrity models.
    Also regarding GPG, we now make it easier to [use a GPG ASCII key](
    in a remote configuration.
    Another major thing in this release is that we started making more use
    of the [GCC/Clang sanitizers]( like
    `-fsanitize=address`, `-fsanitize=undefined` etc. and numerous small
    memory leaks were fixed in particular.
    Thanks to all contributors!
    Abhay Kadam (1):
          Fix broken link in docs/
    Alexander Larsson (1):
          commit: Fix reading xattrs from OstreeRepoFile:s
    Colin Walters (17):
          travis: Drop debian unstable since we can't fetch packages reliably
          pull: Add support for `http-headers` option
          pull: Redo logic for "scanning"
          lib: Define and use cleanup functions for gpgme
          lib: Split out helper function to create GPG context
          Add "gpgkeypath" option to remotes
          lib: Add an API to GPG verify a commit given a remote
          [UBSAN] deltas: Don't call memset(NULL, NULL, 0) with no xattrs
          [TSAN] main: Stop calling g_set_prgname()
          [TSAN] Rework assertions to always access refcount atomically
          pull: Dedup code for checking for > 0 valid results
          pull: Use new per-remote API for GPG verification
          pull: Do GPG verify commit objects when using deltas
          tests: Support TEST_SKIP_CLEANUP=err
          [ASAN] tests: Fix some memleaks in libarchive importer
          [ASAN] lib: Squash various leaks in library and commandline
          Release 2016.14
    Jasper St. Pierre (3):
          ostree-repo: Fix parameter name
          ostree-repo-static-delta-processing: Don't close(-1)
          ostree-repo: Make the lock with a long-lasting FD
    Jonathan Lebon (1):
          .redhat-ci.yml: no longer install libubsan & clang
    William Manley (1):
          ostree commit: Fix combining trees with multiple --tree=ref arguments
    Git-EVTag-v0-SHA512: 6756eef81978c4a9559327972b53019f9ea214ab92af266054d303770e7a60684e73fba0870fda81b5262a0ab3aae3f89d962cd346930932a3c668f081d5726a
  • debian/2016.13-1
    b6db0243 · 2016.13-1 ·
    ostree Debian release 2016.13-1
  • upstream/2016.13
    Upstream version 2016.13