summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2019-11-09 17:26:14 +0100
committerMatthias Beyer <mail@beyermatthias.de>2019-12-01 13:03:22 +0100
commita5d0cd7a745647e6d050799b065fa5016d87108f (patch)
tree84c39a9a2b164199c8e75c0bcc08f1dc264fc246
parentffa6e372e1779033878ad02a1752348d7b289f49 (diff)
Rewrite parts of the Header format section
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
-rw-r--r--doc/src/02000-store.md17
1 files changed, 9 insertions, 8 deletions
diff --git a/doc/src/02000-store.md b/doc/src/02000-store.md
index 07334cea..495ae48a 100644
--- a/doc/src/02000-store.md
+++ b/doc/src/02000-store.md
@@ -42,21 +42,22 @@ The following section describe their purpose.
The header format is where imag stores its data. The header is an area at the
top of every file which is seperated from the content part by three dashes
(`---`). Between these three dashes there is structured data. imag uses `TOML`
-as data format for this structured data, because it fits best and the available
-`TOML` parser for the rust programming language is really good.
+as data format for this structured data.
The header can contain any amount of data, but modules (see @sec:modules) are
-restricted in their way of altering the data.
+restricted (by convention) in their way of altering the data.
-So normally there are several sections in the header. One section (`[imag]`) is
-always present. It contains a `version` field, which tells imag which version
-this file was created with.
+Normally there are several sections in the header. One section (`[imag]`) is
+always present, it is automatically created by the store and contains a
+`version` field, which tells imag which version this file was created with.
+The store automatically verifies that it is compatible (satisfying semver) with
+the version of imag an entry was created with, and if it is not, it fails
+loading the entry.
Other sections are named like the modules which created them. Every module is
allowed to store arbitrary data under its own section and a module may never
-read other sections than its own.
+read or write other sections than its own.
-These conventions are not enforced by imag itself, though.
### Content Format {#sec:thestore:fileformat:content}