summaryrefslogtreecommitdiffstats
path: root/libimagref
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2016-10-13 11:56:40 +0200
committerMatthias Beyer <mail@beyermatthias.de>2016-10-13 12:04:36 +0200
commite30d774670af80d93da4450a2edf2b5deff14e21 (patch)
treed85e6c2903da3a66ef05f2987186afc2287f2189 /libimagref
parentfbd6e790c71c9640faaf2502c51c5a09d6441deb (diff)
Move all libimag*/README.md to doc/src/05100-*
Diffstat (limited to 'libimagref')
-rw-r--r--libimagref/README.md54
1 files changed, 0 insertions, 54 deletions
diff --git a/libimagref/README.md b/libimagref/README.md
deleted file mode 100644
index 146059f1..00000000
--- a/libimagref/README.md
+++ /dev/null
@@ -1,54 +0,0 @@
-# libimagref
-
-This library crate contains functionality to generate _references_ within the
-imag store.
-
-It can be used to create references to other files on the filesystem (reachable
-via a filesystem path). It differs from `libimagentrylink`/external linking as
-it is designed exclusively for filesystem references, not for URLs.
-
-A reference can have several properties, for example can a reference track the
-content of a filesystem path by hashing the content with a hashsum (SHA1) and
-one can check whether a file was changed by that.
-As files can get big (think of `debian.iso`) _partial hashing_ is supported
-(think of "hash the first 2048 bytes of a file).
-
-The library contains functionality to re-find a moved file automatically by
-checking the content hash which was stored before.
-
-Permission changes can be tracked as well.
-
-So this library helps to resemble something like a _symlink_.
-
-## Limits
-
-Please understand that this is _not_ intended to be a version control system or
-something like that.
-We also can not use _real symlinks_ as we need imag-store-objects to be able to
-link stuff.
-
-## Usecase
-
-This library offers functionality to refer to content outside of the store.
-It can be used to refer to _nearly static stuff_ pretty easily - think of a
-Maildir - you add new mails by fetching them, but you mostly do not remove mails
-and if you do you end up with a "null pointer" in the store, which can then be
-handled properly.
-
-As this library supports custom hashes (you don't have to hash the full file,
-you can also parse the file and hash only _some_ content) this is pretty
-flexible.
-For example if you want to implement a imag module which tracks a certain kind
-of files which constantly change... but the first 5 lines do never change
-after the file is created - you can write a custom hasher that only uses the
-first 5 lines for the hash.
-
-## Internals
-
-Internally, in the store, the file gets created under
-`/ref/<hash of the path to the file to refer to>`.
-If the content of the file is hashed, we can still re-find the file via the
-content hash (which is stored in the header of the store entry).
-
-The reference object can, after the path was re-found, be updated.
-