Commit Graph

34 Commits

Author SHA1 Message Date
Jasper St. Pierre
91d3b90c9f Move ref writing to be transaction-based
Rather than having separate write_ref calls, make clients start a
transaction, add some refs, and then commit it. While this doesn't
make it 100% atomic, it makes it easier for us to use an atomic
model, and it means we don't do as much I/O updating the summary
file and such.

https://bugzilla.gnome.org/show_bug.cgi?id=707644
2013-09-06 20:31:12 -04:00
Jasper St. Pierre
bd2948e964 repo: Move the scanning hardlinks optimization out of prepare_transaction
This is just a terrible API to have. Make the scanning a separate method,
and document it as an optimization.
2013-09-06 20:31:12 -04:00
Jasper St. Pierre
ef61724269 repo: Move the transaction stats to a separate struct
This is much easier for callers to handle, and simplifies
the API a lot.

https://bugzilla.gnome.org/show_bug.cgi?id=707644
2013-09-06 20:31:12 -04:00
Jasper St. Pierre
5082e1d8e9 repo: Rename "stage" to "write" in the API
An earlier version of this API acted like git in that some objects
would be staged in a temporary directory which would be then committed
in one go by moving files around. The API doesn't match most users
expectations though, as while the stage is nice as a high-level API
it isn't really suited for low-level APIs.

While the stage was removed, the APIs were never renamed. Rename
them now so that they match expectations.

https://bugzilla.gnome.org/show_bug.cgi?id=707644
2013-09-06 20:31:12 -04:00
Jasper St. Pierre
93a611ff6d Update docs 2013-09-05 17:59:02 -04:00
Colin Walters
1ae83002b5 core: Delete unused prototype 2013-09-04 08:22:13 -04:00
Colin Walters
eeb1f9e07b core: Delete unused ostree_create_temp_dir() API
Nothing was using it.  Poof.  Gone!
2013-09-04 08:18:45 -04:00
Colin Walters
36815f52b5 libostree: Move file creation APIs out of core, into checkout.c
Since this was the only user, let's not have generic code to go from
OSTree representation -> filesystem here.  It should live in checkout.
2013-09-04 08:17:42 -04:00
Colin Walters
ee2b66ef00 core: Make a helper function private
Nothing was using this, so make it private.
2013-09-04 07:53:02 -04:00
Colin Walters
2534714501 core: Make ostree_write_variant_with_size() private
More work making the file formats and utilities private.
2013-09-04 07:49:41 -04:00
Colin Walters
0d72168961 libostree: Make the format of file objects private
It's now isolated almost entirely to ostree-core.c, except
ostree-repo.c needs to know how to create archive-z2 file headers.  So
give it a private API for that.
2013-09-03 18:43:42 -04:00
Colin Walters
356de33b49 repo: Drop ostree_repo_load_variant_c API
Originally we had this to avoid forcing callers to malloc() if they
had a csum, but nowadays we have in-place conversion APIs that are
fast enough.
2013-09-03 18:23:11 -04:00
Colin Walters
bd5eb72e10 doc/adapting-existing: Describe /lib/passwd 2013-08-25 16:12:14 -04:00
Colin Walters
3aa8f86b4a doc: Minor tweaks 2013-08-25 10:32:40 -04:00
Colin Walters
b06e10ebf9 doc/adapting-existing: Elaborate a bit more on FS layout and links 2013-08-25 10:23:19 -04:00
Colin Walters
1ab01a6b35 doc/adapting-existing: A bit more elaboration and a typo fix 2013-08-24 19:18:57 -04:00
Colin Walters
84f2cd249a doc: Add some docs about adapting existing package managers 2013-08-24 11:35:42 -04:00
Colin Walters
7751d3d9cd doc/repo: Describe object types 2013-08-23 17:21:31 -04:00
Colin Walters
0e60912155 doc/overview: Add a note about the GPL 2013-08-23 17:21:19 -04:00
Colin Walters
2b6d7d8d93 doc: Add a section about how atomic upgrades work
Migrating some content from
https://live.gnome.org/OSTree/DeploymentModel2
2013-08-23 13:18:07 -04:00
Colin Walters
032f1316ad doc: Split overview into chapters, expand a bit 2013-08-22 09:17:08 -04:00
Colin Walters
d58d6a6ef2 doc: Add a section on deployments 2013-08-22 09:09:05 -04:00
Colin Walters
7e2e072ad4 doc: Add repo docs 2013-08-21 09:29:04 -04:00
Colin Walters
caf6be331b libostree: Check out directories depth-first in serial, switch to sync API
The way we recurse into subdirectories in parallel makes it far too
easy to hit up against the arbitrary Linux fd limit of 1024.

Since the fix here is about dropping parallelism, let's just go all
the way for now and make a plain old synchronous API =(

This does simplify both internal callers which wanted a sync API
anyways.

https://bugzilla.gnome.org/show_bug.cgi?id=706380
2013-08-21 09:22:37 -04:00
Colin Walters
00c352ba67 libostree: Delete some leftover remnant API for archive files 2013-08-17 14:08:04 -04:00
Colin Walters
1fea88e64b libostree: Add gtk-doc section for ostree-repo.c 2013-08-17 13:22:58 -04:00
Colin Walters
0f9d7d2179 libostree: More gtk-doc updates for ostree-core 2013-08-17 10:54:00 -04:00
Colin Walters
75cd17d9d9 docs: Add an overview section, migrate some content from the wiki 2013-08-17 10:16:02 -04:00
Colin Walters
abe2320039 libostree: Fix many gtk-doc warnings 2013-08-17 08:41:31 -04:00
Colin Walters
c3121b52bc libostree: Document more core macros 2013-08-17 08:21:04 -04:00
Colin Walters
17560a57bf Add gtk-doc support
Yes, it's really me.  Colin Walters.  Writing documentation.  You
don't need to do a DNA test.
2013-08-16 22:56:12 -04:00
Jiro Matsuzawa
95e0d767b8 doc: Fix a typo
https://bugzilla.gnome.org/show_bug.cgi?id=704365
2013-07-17 21:49:08 +09:00
Colin Walters
74c1fe1dae doc: A long overdue manpage update
Ok, just a little one, but still.  I actually updated documentation!
2013-07-16 18:40:11 -04:00
Colin Walters
8854ec59be Add an initial man page - ostree(1)
Heavily cribbed from systemd - thanks Lennart!
2011-12-23 18:46:19 -05:00