Colin Walters [Mon, 17 Jan 2022 16:46:04 +0000 (11:46 -0500)]
deploy: Add a 5s max timeout on global filesystem `sync()`
https://bugzilla.redhat.com/show_bug.cgi?id=
2003532
Basically there's a systemd bug where it's losing the `_netdev`
aspect of Ceph filesystem mounts. This means the network is taken
down before Ceph is unmounted. In turn, our invocation of `sync()`
blocks on Ceph, which won't succeed.
And this in turn manifests as a failure to transition to the new
deployment.
I initially did this patch to just rip out the global `sync()`. I
am pretty sure we don't need it anymore. We've been doing individual
`syncfs()` on `/sysroot` and `/boot` for a while now, and those
are the only filesystems we should be touching. But *proving* that
is a whole other thing of course.
To be conservative, let's instead just add a timeout of 5s on
our invocation of `sync()`. It doesn't return any information on
success/error anyways.
To allow testing without the `sync()` invocation, we also support
a new `OSTREE_SYSROOT_OPT_SKIP_SYNC=1` environment variable. For
staged deployments, this needs to be injected via e.g. systemd unit
overrides into `ostree-finalize-staged.service`.
Implementing this is a bit hairy - we need to spawn a thread. I
debated blocking in arecursive mainloop, but I think `g_cond_wait_until()`
is also fine here.
Colin Walters [Thu, 13 Jan 2022 14:50:19 +0000 (09:50 -0500)]
Merge pull request #2517 from dbnicholson/ubuntu-seccomp
github: Workaround glib/seccomp issue on Ubuntu impish
Dan Nicholson [Thu, 13 Jan 2022 00:10:56 +0000 (17:10 -0700)]
github: Workaround glib/seccomp issue on Ubuntu impish
The ubuntu-latest VMs are currently based on 20.04 (focal). In focal,
libseccomp2 doesn't know about the close_range syscall[1], but
g_spawn_sync in impish tries to use close_range since it's defined in
glibc. That causes libseccomp2 to return EPERM as it does for any
unknown syscalls. g_spawn_sync carries on silently instead of falling
back to other means of setting CLOEXEC on open FDs. Eventually it causes
some tests to hang since once side of a pipe is never closed. Remove
this when libseccomp2 in focal is updated or glib in impish handles the
EPERM better.
1. https://bugs.launchpad.net/ubuntu/+source/libseccomp/+bug/
1944436
Fixes: #2495
Jonathan Lebon [Wed, 12 Jan 2022 18:39:59 +0000 (13:39 -0500)]
Merge pull request #2516 from cgwalters/define-ostree-booted
Colin Walters [Wed, 12 Jan 2022 17:47:11 +0000 (12:47 -0500)]
sysroot: Add a public `#define OSTREE_PATH_BOOTED`
This is public API. Motivated by
https://github.com/coreos/rpm-ostree/pull/3325/files#diff-56528694f6f3213d6fb88d872f77291412dceec263b57166519843b13eca9a4dR30
Colin Walters [Wed, 12 Jan 2022 11:51:14 +0000 (06:51 -0500)]
Merge pull request #2514 from lucab/ups/drop-setenv
libostree/sepolicy: get rid of a g_setenv() call
Joseph Marrero Corchado [Wed, 12 Jan 2022 02:01:20 +0000 (21:01 -0500)]
Merge pull request #2515 from cgwalters/cliwrap-lib
main: Also support CLI extensions in `/usr/libexec/libostree/ext`
Colin Walters [Tue, 11 Jan 2022 21:46:49 +0000 (16:46 -0500)]
main: Also support CLI extensions in `/usr/libexec/libostree/ext`
In fixing https://github.com/coreos/rpm-ostree/pull/3323
I felt that it was a bit ugly we're installing `/usr/bin/ostree-container`.
It's kind of an implementation detail. We want users to use
`ostree container`.
Let's support values outside of $PATH too.
For example, this also ensures that TAB completion for `ost` expands
to `ostree ` with a space.
Luca BRUNO [Tue, 11 Jan 2022 15:39:30 +0000 (15:39 +0000)]
libostree/sepolicy: get rid of a g_setenv() call
This removes a 'g_setenv()' call, which could potentially be unsafe
in a multi-thread context.
The current libselinux codebase does not seem to check for
`LIBSELINUX_DISABLE_PCRE_PRECOMPILED`, so I think this has no effects
nowadays.
Additionally, I could not find any reference to it in libselinux
git history, so I'm not sure if it ever played any role at all.
My current understanding is that this is coming from version
incompatibilities between an older libselinux in the build environment
and a newer policy (with precompiled regexs) in the target.
But from the ML discussion I found, I think it eventually got
solved in a different way, possibly by avoiding the policy binary
caches.
Refs:
* https://www.spinics.net/lists/selinux/msg14822.html
* https://github.com/ostreedev/ostree/pull/2513#discussion_r781042884
Luca Bruno [Mon, 10 Jan 2022 17:38:50 +0000 (17:38 +0000)]
Merge pull request #2513 from lucab/ups/setenv-error
ostree: check g_setenv return value
Luca BRUNO [Mon, 10 Jan 2022 10:22:28 +0000 (10:22 +0000)]
ostree: check g_setenv return value
This adds proper return-value checks on g_setenv calls.
It fixes a static analysis warning highlighted by Coverity.
Luca Bruno [Mon, 10 Jan 2022 13:32:25 +0000 (13:32 +0000)]
Merge pull request #2512 from lucab/ups/variant-builder-error-memleak
libotutil: avoid leaking builder memory on error
Luca BRUNO [Mon, 10 Jan 2022 09:30:11 +0000 (09:30 +0000)]
libotutil: avoid leaking builder memory on error
This swaps the order of a couple of input sanity checks, in order
to fix a minor memory leak due to an early-return on the error
path.
Memory for the result is now allocated only after input has been
sanity-checked.
It fixes a static analysis warning highlighted by Coverity.
Luca Bruno [Wed, 5 Jan 2022 14:32:55 +0000 (14:32 +0000)]
Merge pull request #2509 from ostreedev/release-2022.1
Release 2022.1
Luca BRUNO [Wed, 5 Jan 2022 10:03:59 +0000 (10:03 +0000)]
configure: post-release version bump
Luca BRUNO [Wed, 5 Jan 2022 10:03:03 +0000 (10:03 +0000)]
Release 2022.1
Dan Nicholson [Tue, 4 Jan 2022 13:17:08 +0000 (06:17 -0700)]
Merge pull request #2506 from lucab/ups/dependabot-config
github: add dependabot config
Luca BRUNO [Tue, 4 Jan 2022 10:30:20 +0000 (10:30 +0000)]
github: add dependabot config
This adds a configuration file for dependabot, taking care of automatic
updates for all git submodules.
Luca Bruno [Tue, 4 Jan 2022 10:27:14 +0000 (10:27 +0000)]
Merge pull request #2376 from smcv/fuse3
rofiles-fuse: Build using FUSE 3 if possible, falling back to FUSE 2
Simon McVittie [Tue, 4 Jan 2022 09:41:38 +0000 (09:41 +0000)]
rofiles-fuse: Build using FUSE 3 if possible, falling back to FUSE 2
This adds build-time configuration logic to automatically detect
and switch between libfuse 2.x and 3.x.
Signed-off-by: Simon McVittie <smcv@collabora.com>
Co-authored-by: Luca BRUNO <luca.bruno@coreos.com>
Colin Walters [Mon, 3 Jan 2022 21:57:52 +0000 (16:57 -0500)]
Merge pull request #2505 from lucab/ups/bsdiff-error-throw
lib/static-delta: throw a proper error on bspatch failure
Colin Walters [Mon, 3 Jan 2022 18:20:55 +0000 (13:20 -0500)]
Merge pull request #2504 from lucab/ups/bsdiff-CVE-2014-9862
bsdiff: bump submodule, pick up fix for CVE-2014-9862
Luca BRUNO [Mon, 3 Jan 2022 17:38:51 +0000 (17:38 +0000)]
lib/static-delta: throw a proper error on bspatch failure
This makes sure that a populated GError is returned when bsdiff
patching fails. The human-friendly label also helps in debugging.
Luca BRUNO [Mon, 3 Jan 2022 15:42:50 +0000 (15:42 +0000)]
bsdiff: bump submodule, pick up fix for CVE-2014-9862
This updates the bsdiff submodule to latest upstream revision, in
order to pick up additional bound checks for CVE-2014-9862.
Update submodule: bsdiff
Ref:
* https://www.x41-dsec.de/lab/advisories/x41-2020-006-bspatch/
Colin Walters [Mon, 3 Jan 2022 15:14:48 +0000 (10:14 -0500)]
Merge pull request #2503 from lucab/ups/libostree-content-writer-header
lib: use ostree-content-writer header
Luca BRUNO [Mon, 3 Jan 2022 14:20:58 +0000 (14:20 +0000)]
lib: use ostree-content-writer header
This installs and exposes the content of `ostree-content-writer.h`,
so that library consumers can properly reference symbols defined
in that header.
Dan Nicholson [Tue, 21 Dec 2021 23:03:45 +0000 (16:03 -0700)]
Merge pull request #2502 from cgwalters/analyzer
two minor clang-analyzer fixes
Colin Walters [Tue, 21 Dec 2021 19:24:03 +0000 (14:24 -0500)]
tests: Fix clang-analyzer not seeing through `g_error()`
Basically due to the glib structured logging rework we lost the
`noreturn` attribute on `g_error()`.
This is fixed in glib as of https://gitlab.gnome.org/GNOME/glib/-/commit/
f97ff20adf4eb7b952dd83e2c13046fe9e282f50
But we might as well just throw an error here.
Colin Walters [Tue, 21 Dec 2021 19:23:12 +0000 (14:23 -0500)]
soup-uri: Fix clang-analyzer warning by dropping dead code
Fixes `Argument with 'nonnull' attribute passed null` by making
the code not exist at all anymore.
In upstream libsoup this code is gone too; it uses `GUri` from glib
which we probably could now too, but one thing at a time.
Luca Bruno [Tue, 21 Dec 2021 14:08:48 +0000 (14:08 +0000)]
Merge pull request #2501 from lucab/ups/test-cli-extensions-tweak
tests/cli-extensions: tweak test logic
Luca BRUNO [Tue, 21 Dec 2021 10:16:36 +0000 (10:16 +0000)]
tests/cli-extensions: tweak test logic
This updates the test logic for CLI extensions, actually checking
for functional output from the subcommand.
It also cleans up some environmental leftover.
Colin Walters [Mon, 20 Dec 2021 18:47:31 +0000 (13:47 -0500)]
Merge pull request #2500 from lucab/ups/cli-extensions
main: add support for CLI extensions via external binaries
Luca BRUNO [Mon, 20 Dec 2021 10:00:02 +0000 (10:00 +0000)]
main: add support for CLI extensions via external binaries
This adds some logic to detect and dispatch unknown subcommands to
extensions available in `$PATH`. Additional commands can be
implemented by adding relevant `ostree-$verb` binaries to the system.
As an example, if a `/usr/bin/ostree-extcommand` extension is provided,
the execution of `ostree extcommand --help` will be dispatched to that
as `ostree-extcommand extcommand --help`.
Colin Walters [Fri, 10 Dec 2021 18:25:03 +0000 (13:25 -0500)]
Merge pull request #2498 from lucab/ups/test-assert-strings
tests: assert mandatory values are present
Luca BRUNO [Fri, 10 Dec 2021 11:29:29 +0000 (11:29 +0000)]
tests: assert mandatory values are present
This adds a couple of string assertions to make sure that
the test run is sane.
Colin Walters [Wed, 8 Dec 2021 00:58:23 +0000 (19:58 -0500)]
Merge pull request #2496 from lucab/ups/repo-asserts
lib/repo: fix problematic invariant checks
Colin Walters [Tue, 7 Dec 2021 20:51:48 +0000 (15:51 -0500)]
Merge pull request #2494 from jmarrero/fsf-address
Update FSF license notices to use URL instead of address
Luca BRUNO [Tue, 7 Dec 2021 16:20:49 +0000 (16:20 +0000)]
lib/repo: do no return a NULL on failure
This turns an existing check into an assert. The previously returned
NULL may result in confusing callers, as none of them is checking for
that.
Luca BRUNO [Tue, 7 Dec 2021 16:16:39 +0000 (16:16 +0000)]
lib/repo: do no return an arbitrary mode on failure
This turns the existing check into an assert. Otherwise, the previous
code may return an arbitrary repo mode (bare) on failure.
Luca BRUNO [Tue, 7 Dec 2021 16:13:54 +0000 (16:13 +0000)]
lib/repo: assert that writable state and error agree
This adds an assertion to check that writable stable and error
are in sync. The subsequent logic uses them interchangeably.
Joseph Marrero [Tue, 7 Dec 2021 01:20:55 +0000 (20:20 -0500)]
Update FSF license notices to use URL instead of address
Colin Walters [Mon, 6 Dec 2021 13:19:12 +0000 (08:19 -0500)]
Merge pull request #2493 from cgwalters/summary-lock-shared
repo: Change locking for summary regeneration to be shared
Colin Walters [Fri, 3 Dec 2021 19:35:12 +0000 (14:35 -0500)]
repo: Change locking for summary regeneration to be shared
This is trying to address:
https://pagure.io/fedora-iot/issue/48
Basically we changed rpm-ostree to start doing a shared lock during
commit by default, but this broke because pungi is starting a process
doing a commit for each architecture, and then trying to regenerate
the summary after each one.
This patch is deleting a big comment with a rationale for why
summary regeneration should be exclusive. Point by point:
> This makes sure the commits and deltas don't get
> deleted while generating the summary.
But prune operations require an exclusive lock, which means that
data still can't be deleted when the summary grabs a shared lock.
> It also means we can be sure refs
> won't be created/updated/deleted during the operation, without having to
> add exclusive locks to those operations which would prevent concurrent
> commits from working.
First: The status quo *has* prevented concurrent commits from working!
There is no real locking solution to this problem. What we really
need to do here is regenerate the summary after each commit *or*
when the caller decides to do it and e.g. include deltas at the same
time.
It's OK if multiple threads race to regenerate the summary;
last-one-wins behavior here is totally fine.
Jonathan Lebon [Fri, 26 Nov 2021 15:55:15 +0000 (10:55 -0500)]
Merge pull request #2490 from lucab/ups/static-fixes
Luca BRUNO [Thu, 25 Nov 2021 15:04:09 +0000 (15:04 +0000)]
lib: misc static analysis fixes
This fixes a few warnings from coverity, none of which really
interesting.
Colin Walters [Tue, 23 Nov 2021 14:01:57 +0000 (09:01 -0500)]
Merge pull request #2489 from ostreedev/release-2021.6
Release 2021.6
Luca BRUNO [Tue, 23 Nov 2021 10:15:19 +0000 (10:15 +0000)]
configure: post-release version bump
Luca BRUNO [Tue, 23 Nov 2021 10:13:32 +0000 (10:13 +0000)]
Release 2021.6
Colin Walters [Mon, 22 Nov 2021 18:35:28 +0000 (13:35 -0500)]
Merge pull request #2486 from jlebon/pr/remount-ostree
app: Only remount /sysroot if needed
Jonathan Lebon [Fri, 19 Nov 2021 15:44:03 +0000 (10:44 -0500)]
app: Only remount /sysroot if needed
We should only try to remount `/sysroot` if we're actually handling the
sysroot repo and the repo isn't writable. We already have public APIs to
check each of those, so let's use them.
Closes: #2485
Colin Walters [Thu, 18 Nov 2021 19:49:15 +0000 (14:49 -0500)]
Merge pull request #2484 from dbnicholson/prune-serialize
lib/prune: Avoid unnecessary object serialization
Dan Nicholson [Thu, 18 Nov 2021 17:59:46 +0000 (10:59 -0700)]
lib/prune: Avoid unnecessary object serialization
`repo_prune_internal` was deserializing each object and passing the
components to `maybe_prune_loose_object`, which promptly reserialized
it.
Luca Bruno [Fri, 12 Nov 2021 15:19:29 +0000 (15:19 +0000)]
Merge pull request #2481 from refi64/null-error
lib: Avoid dereferencing NULL error values
Ryan Gonzalez [Fri, 12 Nov 2021 00:07:06 +0000 (18:07 -0600)]
lib: Avoid dereferencing NULL error values
Otherwise, this will segfault when callers don't need any exact errors.
Signed-off-by: Ryan Gonzalez <ryan.gonzalez@collabora.com>
Colin Walters [Tue, 9 Nov 2021 15:44:08 +0000 (10:44 -0500)]
Merge pull request #2479 from cgwalters/ci-capsh
ci: Require `libcap2-bin` for `capsh`
Colin Walters [Tue, 9 Nov 2021 14:32:02 +0000 (09:32 -0500)]
Merge pull request #2477 from ratajs/patch-1
Add Fedora Kinoite link
Colin Walters [Tue, 9 Nov 2021 14:27:18 +0000 (09:27 -0500)]
Merge pull request #2476 from valentindavid/valentindavid/glib-fix
lib: Fix a bad call to g_file_get_child
Colin Walters [Tue, 9 Nov 2021 14:21:52 +0000 (09:21 -0500)]
ci: Require `libcap2-bin` for `capsh`
This was previously pulled in indirectly, but it looks like we need
to require it explicitly in newer Ubuntu.
Šimon (Simon) Rataj [Thu, 4 Nov 2021 17:50:34 +0000 (18:50 +0100)]
Merge branch 'ostreedev:main' into patch-1
Colin Walters [Thu, 4 Nov 2021 14:37:18 +0000 (10:37 -0400)]
Merge pull request #2187 from cgwalters/sysroot-ro-initramfs
prepare-root: Set up sysroot readonly in initramfs
Valentin David [Tue, 2 Nov 2021 18:49:04 +0000 (19:49 +0100)]
lib: Fix a bad call to g_file_get_child
In Glib, since commit
3a6e8bc8876e149c36b6b14c6a25a718edb581ed,
`g_file_get_child` does not accept absolute path as paramater anymore.
The broken assertion was encountered during `ostree admin deploy`
command for the checkout of subpath `etc`.
Example of error log:
```
(ostree admin deploy:1640): GLib-GIO-CRITICAL **: 03:42:00.570: g_file_get_child: assertion '!g_path_is_absolute (name)' failed
(ostree admin deploy:1640): GLib-GIO-CRITICAL **: 03:42:00.570: g_file_query_info: assertion 'G_IS_FILE (file)' failed
**
OSTree:ERROR:src/ostree/ot-main.c:232:ostree_run: assertion failed: (success || error)
Bail out! OSTree:ERROR:src/ostree/ot-main.c:232:ostree_run: assertion failed: (success || error)
```
Šimon (Simon) Rataj [Wed, 3 Nov 2021 20:02:53 +0000 (21:02 +0100)]
Added Fedora Kinoite link
Colin Walters [Mon, 25 Oct 2021 07:07:28 +0000 (07:07 +0000)]
prepare-root: Set up sysroot readonly in initramfs
Let's ensure things are right from the start in the initramfs;
this closes off various race conditions. Followup to
https://github.com/ostreedev/ostree/pull/2113/commits/
35642259175973617da937f3cab6ce5f13c95077
Closes: https://github.com/ostreedev/ostree/issues/2115
Colin Walters [Mon, 1 Nov 2021 13:58:06 +0000 (09:58 -0400)]
Merge pull request #2475 from lucab/ups/prepare-root-check-first
prepare-root: check for read-only sysroot status early on
Luca BRUNO [Mon, 1 Nov 2021 09:09:58 +0000 (09:09 +0000)]
prepare-root: check for read-only sysroot status early on
This moves read-only sysroot checks upfront, so that they are not
intermixed with mount operations.
It has no immediate side-effects, but allow these check to be
independent from the rest of the mounting logic (and future changes
to it).
Jonathan Lebon [Tue, 26 Oct 2021 19:14:21 +0000 (15:14 -0400)]
Merge pull request #2472 from lucab/ups/prepare-root-checked-printf
Jonathan Lebon [Tue, 26 Oct 2021 17:25:37 +0000 (13:25 -0400)]
Merge pull request #2473 from lucab/ups/prepare-root-less-global-mutable-state
Luca BRUNO [Tue, 26 Oct 2021 16:27:22 +0000 (16:27 +0000)]
prepare-root: get rid of a global variable
This moves a global mutable variable to a smaller local scope,
as it is not really used outside of that.
Luca BRUNO [Tue, 26 Oct 2021 12:12:48 +0000 (12:12 +0000)]
prepare-root: check return codes for errors when assembling paths
This adds checks around all `snprintf` calls in order to detect
failures and gracefully abort.
Colin Walters [Tue, 26 Oct 2021 14:06:52 +0000 (10:06 -0400)]
Merge pull request #2471 from lucab/ups/prepare-root-silent-mounts
prepare-root: make all mount operations silent
Luca BRUNO [Tue, 26 Oct 2021 10:12:27 +0000 (10:12 +0000)]
prepare-root: make all mount operations silent
This adds a `MS_SILENT` flag to all `mount(2)` calls, reducing the
amount of kernel logs produced on each boot.
Those messages do not contain actionable details, and in the "mount
plus read-only remount" case they can easily become highly redundant.
Luca Bruno [Tue, 19 Oct 2021 09:03:19 +0000 (09:03 +0000)]
Merge pull request #2468 from lucab/ups/tests-var-mount
tests/var-mount: tweak test setup
Luca BRUNO [Tue, 19 Oct 2021 08:03:09 +0000 (08:03 +0000)]
tests/var-mount: tweak test setup
This reworks the var-mount destructive test in order to properly use
the datadir for the current stateroot instead of a duplicated one.
In turn, it ensures that the resulting `var.mount` after reboot is
correctly pointing to the same location which hosted `/var` on the
previous boot.
Luca Bruno [Mon, 18 Oct 2021 16:44:56 +0000 (16:44 +0000)]
Merge pull request #2466 from cgwalters/ci-fanalyzer
ci: Enable -fanalyzer
Colin Walters [Mon, 18 Oct 2021 15:44:44 +0000 (11:44 -0400)]
tests/rollsum: Use `g_malloc` not `malloc`
To pacify gcc's `-fanalyzer`.
Colin Walters [Thu, 14 Oct 2021 14:40:39 +0000 (10:40 -0400)]
ci: Enable -fanalyzer
Followup to https://github.com/ostreedev/ostree/pull/2463
One thing I noticed here is we lost usage of `build-check.sh`
which also invokes `clang`, which doesn't speak `-fanalyzer`
and would be broken by this if we try to enable `build-check.sh`
again. But that can come later.
Luca Bruno [Fri, 15 Oct 2021 07:47:28 +0000 (07:47 +0000)]
Merge pull request #2455 from cgwalters/packit
Attempt to update packit flow to build in COPR
Jonathan Lebon [Thu, 14 Oct 2021 19:33:33 +0000 (15:33 -0400)]
Merge pull request #2467 from cgwalters/bump-libglnx-
20211014
Colin Walters [Thu, 14 Oct 2021 16:40:14 +0000 (12:40 -0400)]
libglnx: Bump to
ef502aabf7d3a0d37f9c4d228f870ac93404447b
Various fixes there, including one for `gcc -fanalyzer`.
Update submodule: libglnx
Colin Walters [Tue, 5 Oct 2021 19:49:23 +0000 (15:49 -0400)]
Attempt to update packit flow to build in COPR
No idea if this will really work, but at least `packit srpm`
does work now.
Luca Bruno [Thu, 14 Oct 2021 08:30:25 +0000 (08:30 +0000)]
Merge pull request #2463 from cgwalters/fix-fanalyzer
Fix various mostly theoretical gcc `-fanalyzer` issues
Colin Walters [Fri, 8 Oct 2021 12:59:52 +0000 (08:59 -0400)]
variantutil: Fix gcc `-fanalyzer` warnin
Add some not-NULL assertions for return values from glib,
and upgrade some `g_return_if_fail` to `g_assert`.
Colin Walters [Fri, 8 Oct 2021 13:10:59 +0000 (09:10 -0400)]
utils: Fix unreachable `NULL` deref by adding assertion
Again this one is just in theory, but let's add an assertion.
Colin Walters [Fri, 8 Oct 2021 13:07:41 +0000 (09:07 -0400)]
static-delta: Fix probably not actually possible NULL deref
Flagged by `gcc -fanalyzer`. I didn't study this really deeply
but I think it's not actually reachable. Anyways, let's catch
it on general principle.
Colin Walters [Fri, 8 Oct 2021 12:59:52 +0000 (08:59 -0400)]
fetcher/soup: Fix gcc `-fanalyzer` warning
In general, we're probably going to need to change most of our
`g_return_if_fail` to `g_assert`. The analyzer flags that
the function can return `NULL`, but the caller isn't prepared for
this.
In practice, let's abort.
Colin Walters [Fri, 8 Oct 2021 12:59:52 +0000 (08:59 -0400)]
sysroot: Fix gcc `-fanalyzer` warning
In general, we're probably going to need to change most of our
`g_return_if_fail` to `g_assert`. The analyzer flags that
the function can return `NULL`, but the caller isn't prepared for
this.
In practice, let's abort.
Colin Walters [Fri, 8 Oct 2021 12:59:52 +0000 (08:59 -0400)]
deployment: Fix gcc `-fanalyzer` warning
In general, we're probably going to need to change most of our
`g_return_if_fail` to `g_assert`. The analyzer flags that
the function can return `NULL`, but the caller isn't prepared for
this.
In practice, let's abort.
Colin Walters [Fri, 8 Oct 2021 12:59:52 +0000 (08:59 -0400)]
remote: Fix gcc `-fanalyzer` warning
In general, we're probably going to need to change most of our
`g_return_if_fail` to `g_assert`. The analyzer flags that
the function can return `NULL`, but the caller isn't prepared for
this.
In practice, let's abort.
Colin Walters [Wed, 13 Oct 2021 21:08:25 +0000 (17:08 -0400)]
Merge pull request #2464 from lucab/ups/box-auto-txn
repo/private: move OstreeRepoAutoTransaction to a boxed type
Luca Bruno [Tue, 12 Oct 2021 09:49:39 +0000 (09:49 +0000)]
Merge pull request #2465 from travier/docfixes
docs: Do not convert -- & --- to en/em-dash
Timothée Ravier [Mon, 11 Oct 2021 10:29:21 +0000 (12:29 +0200)]
docs: Do not convert -- & --- to en/em-dash
'--' is frequently used for command line options and was thus
incorrectly rendered as a special en-dash symbol.
Luca BRUNO [Mon, 11 Oct 2021 06:52:25 +0000 (06:52 +0000)]
repo/private: move OstreeRepoAutoTransaction to a boxed type
This defines `OstreeRepoAutoTransaction` as a boxed type, in order
to support auto-generating bindings for it.
That first requires adding internal reference-counting to it, to
allow freely copying/freeing references to a single transaction guard.
Colin Walters [Thu, 7 Oct 2021 15:56:17 +0000 (11:56 -0400)]
Merge pull request #2461 from lucab/ups/prepare-root-logging
prepare-root: tweak log messages to clarify errors
Luca BRUNO [Thu, 7 Oct 2021 14:40:31 +0000 (14:40 +0000)]
prepare-root: tweak log messages to clarify errors
This rewords errors and log messages in the functions which take care
of preparing sysroot in initramfs.
Depending on the boot flow, it is possible to reach this logic
with a sysroot mounted (unexpectedly) as read-only.
In that case, let's clearly point out the problematic mountpoint.
Jonathan Lebon [Thu, 7 Oct 2021 08:24:07 +0000 (04:24 -0400)]
Merge pull request #2460 from cgwalters/gir-no-tls-interaction
Colin Walters [Wed, 6 Oct 2021 19:26:08 +0000 (15:26 -0400)]
Merge pull request #2459 from smcv/test-commit-sign
test-commit-sign.sh: Skip a unit test when running as an installed-test
Colin Walters [Wed, 6 Oct 2021 16:42:56 +0000 (12:42 -0400)]
Remove OstreeTlsCertInteraction bits from introspection
We filter out everything named `-private.h` from scanning,
which differs from the gtk-doc exclude. Eventually this will
be solved when we switch to the new gir-based docs.
Came up in https://github.com/ostreedev/ostree-rs/pull/34#discussion_r723337772
Colin Walters [Wed, 6 Oct 2021 13:33:29 +0000 (09:33 -0400)]
Merge pull request #2458 from ostreedev/release-2021.5
Release 2021.5
Simon McVittie [Tue, 5 Oct 2021 22:51:37 +0000 (23:51 +0100)]
test-commit-sign.sh: Skip a unit test when running as an installed-test
Signed-off-by: Simon McVittie <smcv@debian.org>
Colin Walters [Tue, 5 Oct 2021 20:00:53 +0000 (16:00 -0400)]
configure: post-release version bump