repo: Add ostree_repo_write_regfile_inline
authorColin Walters <walters@verbum.org>
Wed, 7 Apr 2021 21:03:15 +0000 (21:03 +0000)
committerColin Walters <walters@verbum.org>
Thu, 8 Apr 2021 14:57:33 +0000 (14:57 +0000)
commit4e2a14eb0c92e38c533c453f6e375953a7208f0e
treee853be42bcbab68c56fda3f1a5b9581064cdcf26
parentb5c21defe9a66d601941a2408fd1aca310588108
repo: Add ostree_repo_write_regfile_inline

When working on ostree-ext and importing from tar, it's
quite inefficient and awkward for small files to end up creating
a whole `GInputStream` and `GFileInfo` and etc. for small files.

Plus the gtk-rs binding API to map from `impl Read` to Gio
https://docs.rs/gio/0.9.1/gio/struct.ReadInputStream.html
requires that the input stream is `Send` but the Rust `tar` API
isn't.

This is only 1/3 of the problem; we also need similar APIs
to directly create a symlink, and to stream large objects via
a push-based API.
Makefile-libostree.am
apidoc/ostree-sections.txt
src/libostree/libostree-devel.sym
src/libostree/ostree-repo-commit.c
src/libostree/ostree-repo.h
tests/test-core.js
tests/test-repo.c