-
v2016.5
Release 2016.5 This release is the first one where the git repository is now canonically [on Github](https://github.com/ostreedev/ostree). The [CONTRIBUTING.MD](https://github.com/ostreedev/ostree/blob/master/docs/CONTRIBUTING.md) guide is now updated, but the TL;DR is we still support patches to the mailing list and Bugzilla as well. This release has a few highlights. The first is many updates to the tests - thanks in particular to Simon McVittie is working on [Debian packaging](https://anonscm.debian.org/git/collab-maint/ostree.git) and as part of that made numerous fixes to the tests. Jonathan Lebon also helped debug some tricky issues resulting from running the tests in the Docker container for Project Atomic vs in a pbuilder etc. Jonathan Lebon also added new APIs for the OSTree SELinux handling in preparation for rpm-ostree package layering work. Alexander Larsson contributed several new API and feature additions to improve support for a model where a privileged system helper process can pull and verify content that was downloaded by an unprivileged user - i.e. "Install xdg-app system wide". Colin Walters updated the documentation, including a new section on [repository management](https://ostree.readthedocs.org/en/latest/manual/repository-management/). Gatis Paeglis introduced a [smaller GRUB2 generator](https://github.com/ostreedev/ostree/pull/228) which should be nice for embedded systems - it allows avoiding having the full GRUB2 binaries on the target system, which are large due to internal static linking. Thanks to all contributors! Alexander Larsson (19): pull: Add OSTREE_REPO_PULL_FLAGS_UNTRUSTED flag Add --untrusted option to pull and pull-local pull: Don't try to cache summaries for pull-local Fix local-pull test pull-local: Support --gpg-verify and --gpg-verify-summary Support pathnames for --subpath=... Export ostree_repo_get_remote_option* functions Inherit remotes and remote options from parent repo Add test case for inheriting remote options Add support for ostree static-delta delete Fix the symbol versions for ostree_repo_get_remote_*option fetcher: Initialize output_stream_set_lock mutex commit: Fix crash if dfd_iter is NULL Add cache_dir_fd to OstreeRepo Add OstreeRepo option for an out-of-band cache dir Add remotes-config-dir to OstreeRepo Look for $remotename.trustedkeys.gpg in remotes.d dir static-delta: Put temp files in /var/tmp static-delta: Initialize read_source_fd to -1 Colin Walters (15): Add a stub .travis.yml tests: Add a test-abi docs: Add a section on repository management commit: Support generating commits with no parent, or a custom one commit: Support writing orphans docs/CONTRIBUTING.md: Update for github move, Homu etc. tests: Make failing to kill the GPG agent non-fatal build: Find grub2-mkconfig a bit more automagically build: Make tests/libreaddir-rand.so rule use AM_V_GEN Use git.mk pull: More consistently use remote_repo_local for local repos build: Move grub2-15_ostree back to pkglibexecdir man: Elaborate on per-remote GPG refs: Add g_prefix_error around opendir for easier debugging Release 2016.5 Dan Nicholson (4): core: Add verbose messages for pruning core: Add debug messages for traversing build: Set G_LOG_DOMAIN to OSTree main: Set log handler for OSTree domain Gatis Paeglis (2): Introducing ostree-grub-generator Fix AS_HELP_STRING for builtin grub2 mkconfig Giuseppe Scrivano (6): tests: add libostreetest.h to EXTRA_DIST tests: add missing ${CMD_PREFIX} before ostree contrib: indent golang code using only tabs instead of both tabs and spaces Remove empty new lines at the EOF docs: Prefer the form "cannot" to "can not" cfg.mk: ignore syntax-check for git.mk Jonathan Lebon (7): Merge pull request #220 from cgwalters/travis-stub OstreeSePolicy: add ostree_sepolicy_get_csum() commit: support editor for orphan commits test-pull-untrusted.sh: always corrupt a regular file, not a symlink basic-test: commit with a non-empty subject small cleanups ostree-repo-pull: always initialize flags_i Krzesimir Nowak (1): manual: Fix a bunch of typos and docbookisms Simon McVittie (16): packaging: fix bashism in dist-snapshot target test-xattrs: use TAP syntax to skip test various tests: skip if temp directory lacks xattr support Symlink libreaddir-rand.so into tests directory tap-test: clean up temporary test directories as intended In tests that use gpg, terminate the gpg-agent after testing .gitignore: update Load g-i bindings from builddir during build-time testing tests/admin-test.sh: this is a bash script, not a POSIX sh script Force libreaddir-rand to be a shared library Skip tests that run rofiles-fuse if /dev/fuse or /etc/mtab unavailable Probe for GNU parallel more accurately libtest.sh: use G_TEST_SRCDIR, G_TEST_BUILDDIR to find resources test-abi: use G_TEST_SRCDIR, G_TEST_BUILDDIR test-xattrs: sync how this is skipped with test-rofiles-fuse libtest.sh: only check whether $(pwd) is empty once Git-EVTag-v0-SHA512: dc5e94e15c180d424c225f302a4f07c994157750016342016a823735cecc0c1f3e47ba2fcd3a77ce91df806c1058313a6347359024efe5dd004d7fdd7f1e7335
-
v2016.4
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
-
v2016.3
Release 2016.3 This is a quick followup to the previous release. The build was broken with `-Werror=format` on 32 bit - we didn't have any 32 bit CI, a problem which I'll be remedying in the future. There was also a regression with static delta offline execution as used by xdg-app. Besides that, Alex discovered that our handling of endianness in static deltas was wrong - we tried to canonicalize everything to big endian, but the size was missing. Newly generated deltas will now have an endianness marker which we will honor. For older deltas, we'll apply some heuristics which in my testing work well (basically if the delta sizes are in exabytes, that's probably byteswapped). Alexander Larsson (2): deltas: Fix regression in ostree_repo_static_delta_execute_offline rofiles-fuse: Handle operations on the root Colin Walters (8): libarchive: Fix a 32 bit format warning lib: Two more compiler warning fixes deltas: Fix some more 32 bit warnings deltas: Include an endianness marker deltas: Use endianness marker when parsing deltas: Heuristically detect endianness for older deltas deltas: Add a compression size heuristic for endianness detection Git-EVTag-v0-SHA512: 3517badace5a6d43c156cce2e1dcdcef7f2caa5afe702608fc37bf81146b016d7df7c13f9b637d92be6371decefb6162eb84ccb4278fef2d5a58773b83989354
-
v2016.2
Release 2016.2 First, this release has us start taking documentation more seriously. The man pages and API doc are unchanged, but the "manual" has moved out of gtk-doc, been converted to Markdown for use with `mkdocs`. This is available at: https://ostree.readthedocs.org/en/latest/ The static delta design documents are moved into the manual as well. Look for more updates here in the future around things like designing build systems, managing repositories, more implementation details, etc. Speaking of static deltas, there is now support in the pull API (and command line) for showing how much content data would be downloaded (and used uncompressed). This is intended for use with OS updater command lines and GUIs (like Cockpit). Another notable change is that we've merged in a FUSE utility called `rofiles-fuse`. This doesn't itself depend on OSTree, nor does OSTree depend on it, but they're very useful together. Specifically, if one is designing a build system that uses OSTree, or running the equivalent of RPM `%post` scripts, `rofiles-fuse` can help ensure that the build process doesn't mutate any of the hardlinks. Though this can also be addressed through container runtimes, not all systems are ready to expose container features to unprivileged users. There is also some improvements in underlying infrastructure for supporting import and export of Docker images. The primary changes here are better tar support, and OSTree now understands "whiteout" files, and optionally processes them during checkout. Besides this, there are various bugfixes, including a notable one to fix use of client side TLS certificates. Thanks to all contributors! $ git shortlog v2016.1.. Alexander Larsson (1): build: Use threadsafe GPGME Colin Walters (38): ... Giuseppe Scrivano (2): diff: do not traverse parent commits build: 'make clean' removes parse-datetime.c Joaquim Rocha (1): build: Link ostree with libarchive Jonathan Lebon (1): ostree-sysroot: add debug option to help testing Matthew Barnes (1): fetcher: Fix hung GTlsInteraction Git-EVTag-v0-SHA512: 3f8357c770694c13b9ed5442a0bba69fda8a82b20b6a42b5853d7702315f3cd28304b5214c2f3babfb66199d04cbd5c8ca520524e3c1417224c59a32dadd7df4
-
v2016.1
Release 2016.1 Notable commits: * Alexander Larsson contributed changes to better isolate concurrent use of OSTree pulls into the same repository: repo: Use per-transaction staging dir repo: Allocate a tmpdir for each OstreeFetcher to isolate concurrent downloads * Colin Walters added two new APIs that make it easier to optimize committing new trees from previously generated content: repo: Expose dfd-relative mtree writes as public API repo: Add APIs for devino optimization between checkout -> commit and contributed build fixes as well as internal optimizations for deployment writing. * Giuseppe Scrivano enhanced the prune command: prune: add new flag --static-deltas-only * Jonathan Lebon made `grub2-mkconfig` work reliably when *not* run by OSTree: grub2_generate: load sysroot before using it * Matthew Barnes added a new remote command: remote: Add "ostree remote summary" command and contributed several other cleanups inside the HTTP fetcher. Git-EVTag-v0-SHA512: d878898cbb3058fa168fbc193926c89cafbe28c2329f1757cf1cf452f3fd11a9da436978cee66010edb96f215ebc119efbdc7506058098805585d89b9a457f66
-
v2015.11
Release 2015.11 This releases fixes an important regression in v2015.10 where `ostree commit` would write invalid timestamps. There is one user-visible change in that `ostree remote refs` now prints the remote name, for convenient copy/paste. Colin Walters (2): gpg-verifier: Fix compiler warning Release 2015.11 Matthew Barnes (7): repo: Never delete .commitmeta files trivial-httpd: Avoid SoupBuffer when there's no content glnx: Update from master fetcher: Remove "sending_messages" hash table fetcher: Remove "total_requests" counter remote: Print full refspec in "ostree remote refs" repo: Fix backwards timestamp in ostree_repo_write_commit() Git-EVTag-v0-SHA512: d20ca561036e517b5c05e3bdc88c171b174cd7a66c2929e95466c6091a20ec36b9886681e9e9be5d2a798b3b3f2dfc886dd9fc324073c6bafba29e08bbf9e202
-
v2015.10
Release 2015.10 Matthew Barnes reworked the fetcher to better support fetching commit history. This was groundwork for feature work in rpm-ostree to support deploying specific commits by version. John Hiesey fixed several important bugs in the static deltas code, such as ensuring we correctly handle errors from decompression. Giuseppe Scrivano introduced the concept of a "tombstone" for a commit that signifies the commit was explicitly deleted on the server side. The idea here is that an OS vendor may want to have a CI/CD branch but not keep all history, and this way clients can detect that history was intentionally truncated. Following on that, Giuseppe also improved the `prune` commit to support relative dates with `prune --keep-younger-than=DATE`. Alexander Larsson introduced "single file" static deltas. He plans to use these in xdg-app for convenient *initial* application downloads. This could also be useful for base OS downloads, e.g. Anaconda kickstart and the like. Daniel Drake: prepare-root: set up /boot bind-mount for single partition systems Colin Walters fixed a few bugs, most notable is an embarassing one where the `ostree init-fs` command used the wrong permissions for `/tmp`. This only bit people not using tmpfs-for-tmp and hence wasn't noticed for a while. Gatis Paeglis: Don't require /boot/uEnv.txt for u-boot support Leandro Santiago: commit: Improve variable name Thanks to all contributors! Git-EVTag-v0-SHA512: 9fb84fac014fb4c8b9f2853334675c13e9f24fec9ee30bc709f982eeb7dd3c9094cd74f589dfea6da852eb82678a5e694af81e20b1a6c7d51f5f6d5bed5f0cd5
-
v2015.9
Release 2015.9 There aren't any major new features, but this release has some notable bugfixes. For example, 2015.8 broke xdg-app due to an internal change in how mainloop contexts were handled for pull - that's now fixed. Another notable change is a new API `ostree_sysroot_prepare_cleanup()` which is now used by `ostree admin deploy`. What this enables is to do: ``` ostree pull repo:$commitid ostree admin deploy repo:$commitid ``` Before this, `admin deploy` would prune the repository, removing the un-referenced commit. In other words, you can now more easily pull the exact (possibly older) commit you want and deploy it. New contributors: - Leandro Santiago - Gatis Paeglis Bugfixes from: - Alexander Larsson - Colin Walters - Giuseppe Scrivano - Matthew Barnes Git-EVTag-v0-SHA512: d528475ccdc65a882cdda8d2a5f9b1925a599d65b51207e2dace4a4a3ea14a71d5f1dc6803077d1b62b51ac7b03816b249a982d8da074ddbe198accd8476c341
-
v2015.8
Release 2015.8 There are some important bugfixes in this release for users who do multiple `ostree_repo_pull()` inside a single process lifetime, which is necessary for use by daemons. Yet more fixes continue to land for static deltas. I'm still not ready to declare them stable - it's clearly a case of the last 20% being 80% of the work. Something that's on my radar again is bsdiff; see https://lists.clearlinux.org/pipermail/dev/2015-August/000038.html Beyond that there is some neat new work on a command line (and API) for inspecting remote repositories without downloading the content. For OS vendors which provide multiple branches, this should be quite useful. Git-EVTag-v0-SHA512: 6dd75187dd67fd0dd53c7c06bbf0ef2cd5991819af4f5bd234c4b39dbdb7ae4c1a5b6c578e7acaa63fdecfc6e5df2eb9c7830021931b56528870cb6a37a834be
-
v2015.7
Release 2015.7 ExtendedVerify-SHA256-archive-tar: ec5404976139d567ece1805a8441fea50bd9e7cd6ab3f9a87ca1bd6655b5d61c ExtendedVerify-git-version: git version 1.8.3.1
-
v2015.6
Release 2015.6 ExtendedVerify-SHA256-archive-tar: c0f802e39ee060124812a642b40dbffd6beaabfa64e4d24d3d3fb57e2c6eeb61 ExtendedVerify-git-version: git version 1.8.3.1
-
v2015.5
Release 2015.5 ExtendedVerify-SHA256-archive-tar: a7ee475ce7d34000ded28948fd7040e28277fb0068e344deb9857873d54de715
-
v2015.4
Release 2015.4 ExtendedVerify-SHA256-archive-tar: 91321dca420d119a2c0447242ed856b8ff99b25af993637ed3b72a61f06fa1b2
-
-
-
-
-
-
-