Release 2016.4 There's a fair amount of stuff in this release, but the `ostree admin unlock` command has me the most excited. It actually starts to take us all of the way back to one of the original visions of OSTree, which was to make it easy for people to develop/hack on the OS locally, making it easy to "roll back" to a known good state. If you found *developing* using an OSTree managed system painful, I think `ostree admin unlock` command goes a long way towards fixing that. There is more to do here, but give it a try! Other notable changes: Alexander Larsson and Giuseppe Scrivano both worked on caching the `summary` file, to avoid redownloading more data than we need to just to detect "nothing changed". Colin Walters committed 'lib: Introduce versioned symbols' which is important for consumers of the shared library to note. There are updates to the manual, including a new section on writing buildsystems designed to use OSTree. Expect more content like this. Speaking of the shared library some APIs were added so that projects like rpm-ostree can more precisely watch the sysroot. Following is a shortlog with the most significant other commits; thanks to all contributors! Alexander Larsson (4): rofiles-fuse: Fix permission comparison pull local: Don't import objects we already have Colin Walters (33): repo: Add ostree_repo_get_dfd() tests: Port to glib-tap.mk, make `make check` run all of the tests deploy: Bump the mtime on ostree/deploy after deployments finish lib: Add ostree_sysroot_init_osname() API, bump mtime lib: Add ostree_sysroot_load_if_changed() API docs: Add a section on writing buildsystems contrib/golang: Initial golang bindings libglnx porting: gs_fd_close -> glnx_fd_close (And more) manual: Migrate related projects wiki page into manual deploy: Handle a read-only /boot Use GSubprocess instead of GSSubprocess (libgsystem removal) admin: Add an `unlock` command, and libostree API Dan Nicholson (2): prune: Don't fail on partial commits traverse: Require variant when traversing dirtree Giuseppe Scrivano (12): ostree-repo: new public function `ostree_repo_list_refs_ext` refs: allow to specify multiple refs as args refs: add tests libostree: Adjust `cleanup_ref_prefix` to use ostree_repo_list_refs_ext refs: Add argument --list to print the full ref name pull: cache summary and summary.sig repo: use the skip summary download optimization for repo_remote_fetch_summary prune: delete all cached summaries files tests: add test for summary file caching Micah Abbott (1): docs: Cleanup Markdown Simon McVittie (3): tests/admin-test.sh: add #!/bin/sh Skip test_libarchive_ignore_device_file if we cannot write xattrs test-libarchive: fix underlinking Stef Walter (1): Fix building without libarchive Git-EVTag-v0-SHA512: ed34ea35e9c64b5b48b91ca76abe6cddaf604676d4455e90da88c8d7c73d24323a8d48fa6f8d556f1cc3bec1ff8a74bc1c0793255b28a140432f677e8ef992f0