From: Kristian Høgsberg Date: Mon, 3 Sep 2007 18:38:31 +0000 (-0400) Subject: Add TODO and .gitignore. X-Git-Tag: 0.1~359 X-Git-Url: http://project.juiblex.co.uk/git/?a=commitdiff_plain;h=efeed5f811d04c3b106edddace918915d0b84b9f;p=razor.git Add TODO and .gitignore. --- diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..000843c --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +.gitignore +*.o +*~ +*.repo +razor +pkgs +set diff --git a/TODO b/TODO new file mode 100644 index 0000000..ea42561 --- /dev/null +++ b/TODO @@ -0,0 +1,37 @@ +- pkg manifest is list of files + + /usr/bin/bash 1321321372198798 + + plus provides, requires and version? + +- keep history of installed packages/journal of package transaction, + so we can roll back to yesterday, or see what got installed in the + latest yum update. + +- we build a cache of the currently installed set to service + dependency inquiries fast: + + map from property to pkg (as hash) providing it + map from property to pkgs requiring it + map from pkg name to manifest + map from string to string pool index + + no implicit provides? not even pkgname? + +- properties are strings, stored in a string table + +- on disk maps are binary files of (string table index, hash) pairs + +- at run time, we mmap the map, and keep changes in memory in a splay + tree or similar. if searching the splay tree fails we punt to the + mmap. once the transaction is done, we merge the map and the splay + tree and write it back out. + +- the on-disk string pool is sorted and we keep a list of indices into + the string pool in sorted order so we can bsearch the list with a + string to get its string pool index. maybe a hash table is better, + less I/O as we will expect to find the string within the block we + look up with the hash function. + +- signed pkgs +- gzip pkg xml files somehow?