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.
This commit is contained in:
Colin Walters committed 2021-04-08 14:57:33 +00:00
1 parent b5c21defe9
commit 4e2a14eb0c
7 files changed
+125 -6

No files matched your search

+7 -2
View File
@@ -22,12 +22,17 @@
- uncomment the include in Makefile-libostree.am
*/
LIBOSTREE_2021.2 {
global:
ostree_repo_write_regfile_inline;
} LIBOSTREE_2021.1;
/* Stub section for the stable release *after* this development one; don't
* edit this other than to update the year. This is just a copy/paste
* source. Replace $LASTSTABLE with the last stable version, and $NEWVERSION
* with whatever the next version with new symbols will be.
LIBOSTREE_2020.$NEWVERSION {
LIBOSTREE_2021.$NEWVERSION {
global:
someostree_symbol_deleteme;
} LIBOSTREE_2020.$LASTSTABLE;
} LIBOSTREE_2021.$LASTSTABLE;
*/