2000-10-10  Not Zed  <NotZed@HelixCode.com>

	* hash.c (hash_find):
	(hash_remove): 
	(hash_insert):  Truncate key if it is too big to fit in a
	single block to MAX_KEYLEN bytes.

2000-09-28  Not Zed  <NotZed@HelixCode.com>

	* block.c (ibex_block_free): Make sure we map the 'free' block to
	a block number when unlinking a block (fixes a lot of assertion
	failures).
	(ibex_block_cache_open): Initialise sync flag on root block.  If
	it is not set on open then the index could be in an invalid state,
	and should be rescanned.
	(ibex_block_cache_sync): Sync root block last, and set the sync
	flag.
	(ibex_block_cache_open): Mirror root block flags in block_cache
	struct.
	(ibex_block_cache_sync): Likewise.
	(ibex_block_read): If we write a dirty block, then we clear the
	sync flag if its still set; we are no longer synced.

2000-09-19  Not Zed  <NotZed@HelixCode.com>

	** Merged from IBEX_DISK branch to head.
	
	* file.c:
	* find.c:
	* words.c:
	* index.c: Removed unused files.

	* block.h: Changed block to use only 24 bits for next and 8 for
	used, and fixed all relevant code.  Some cleanup.
	
	* disktail.c (tail_get): If we use an empty tail node, then make
	sure we make it dirty.

2000-09-15  Not Zed  <NotZed@HelixCode.com>

	* wordindex.c (word_close): Free hashtable on exit too.

	* disktail.c: Implemented tail-node storage for the end of long
	lists, or for short lists.  Should save significant disk space
	(5x?).
	Implemented special case for 1-item lists, where the tailnode
	pointer is used to store the index entry.

2000-09-14  Not Zed  <NotZed@HelixCode.com>

	* wordindex.c (add_index_key): Keys also handle tails.

	* hash.c (hash_set_data_block): Added new parameter to keys - a
	tail block (a full 32 bit block pointer).
	(hash_get_data_block): And same here.

2000-09-12  Not Zed  <NotZed@HelixCode.com>

	* wordindex.c (word_close): Dont close namestore twice.

2000-09-11  Not Zed  <NotZed@HelixCode.com>

	** Redid almost everything, on-disk hash table to store an index
	to index records, mroe on the way to modularisation (more to go),
	now stores reverse indexes for deleting.

2000-08-31  Not Zed  <NotZed@HelixCode.com>

	* block.c (add_key_mem): Initialise a memory based array for newly
	added index entries.
	(add_record): Changed to cache updates in memory until we hit a
	limit, and then flush them to disk.
	(get_record): Merge in-memory records with disk records.
	(remove_record): Remove from memory first, and if that fails, goto
	disk.
	(find_record): Check memory first, then disk if that fails.
	(add_datum_list): oops, copy size * sizeof(blockid_t)
	(add_indexed): Make sure we link in the head node when we create a
	new one.

2000-08-09  Christopher James Lahey  <clahey@helixcode.com>

	* file.c, find.c: Fixed some warnings.

2000-05-11  NotZed  <NotZed@HelixCode.com>

	* index.c (ibex_unindex): Make sure we mark the ibex as dirty.

2000-05-07  NotZed  <NotZed@HelixCode.com>

	* file.c (ibex_save): New function, only write out the ibex if it
	has changed.

2000-05-07    <notzed@helixcode.com>

	* file.c (ibex_open): Also close the fd after we're done.

	* find.c (ibex_contains_name): New function to find out if a file
	is indexed.

2000-05-02  Matt Loper  <matt@helixcode.com>

	* Makefile.am: set G_LOG_DOMAIN.

2000-04-12  NotZed  <NotZed@HelixCode.com>

	* find.c (ibex_dump_all): Debug function to dump the whole index
	to stdout.

	* words.c (get_ibex_file): Use g_strdup(), not strdup().

2000-04-11  NotZed  <NotZed@HelixCode.com>

	* file.c (write_word): Always write out all words we have (even if
	its 0 ... the file expects it).  No longer check for removed files.	
	(store_word): Check for removed files here, and only add to the
	ordered tree if we have references left to this word.
	(ibex_write): First insert into the tree, to determine the
	wordcount to be saved in the output file, and then write that.
	(ibex_open): Remove some debug.

	* words.c (ibex_index_buffer): Always set 'unread', if it is a
	valid pointer (dont rely on caller to initialise it).

2000-03-26  NotZed  <NotZed@HelixCode.com>

	* lookup.c (main): Fixed call to ibex_open.

	* mkindex.c (main): Fixed call to ibex_open.

	* file.c (ibex_open): Changed to accept flags and mode equivalent
	to open(2).

2000-02-25  Dan Winship  <danw@helixcode.com>

	* *.c: add gtk-doc-style comments

2000-02-21  Matt Loper  <matt@helixcode.com>

	* .cvsignore: Added mkindex.

2000-02-21  NotZed  <NotZed@HelixCode.com>

	* Makefile.am: change noinst_LIBRARIES to noinst_LTLIBRARIES, and
	supply -static to LDFLAGS.  Duh, and changed LDADD back to
	libibex.la.

2000-02-20  Matt Loper  <matt@helixcode.com>

	* Makefile.am: changed mkindex_LDADD to libibex.a instead of
	libibex.la.

2000-02-19  Matt Loper  <matt@helixcode.com>

	* .cvsignore: added lookup.

2000-02-18  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* Makefile.am (lookup_LDADD): For now. make a libibex.a library so
	we can link it with the camel provider.  I hate libtool

2000-02-16  Dan Winship  <danw@helixcode.com>

	* Makefile.am: automakify

2000-02-16  NotZed  <NotZed@HelixCode.com>

	* find.[ch] (ibex_find_name): Finds if a word is indexed under a
	given name.

2000-02-14  NotZed  <notzed@zedzone.helixcode.com>

	* Makefile: Hack together a build using libtool.  This should all
	be auto*'d at some point I guess.

2000-02-13  NotZed  <notzed@zedzone.helixcode.com>

	* Added ChangeLog file.