| 1 |
2006-07-15 Kevin L. Mitchell <klmitch@mit.edu> |
| 2 |
|
| 3 |
* _smat_comp.c: remove deprecated _smat_comp() function (internal |
| 4 |
interface, no one should notice) |
| 5 |
|
| 6 |
* st_init.c (st_init): utilize hash_comp() instead of deprecated |
| 7 |
_smat_comp() function |
| 8 |
|
| 9 |
* rbtree_comp.c (rbtree_comp): memcmp()-based red-black tree |
| 10 |
comparison function |
| 11 |
|
| 12 |
* hash_comp.c (hash_comp): memcmp()-based hash comparison function |
| 13 |
|
| 14 |
* dbprim_int.h: move declaration for _smat_resize() to the |
| 15 |
internal header |
| 16 |
|
| 17 |
* dbprim.h: add hash_comp() (based on memcmp()) to complement |
| 18 |
hash_fnv1() and hash_fnv1a(); remove now-deprecated _smat_comp() |
| 19 |
(in preference for hash_comp()); move _smat_resize() declaration |
| 20 |
to dbprim_int.h; fix a minor documentation typo; add |
| 21 |
rbtree_comp(), similar to hash_comp() but for red-black trees |
| 22 |
|
| 23 |
* Makefile.am: add hash_comp.c and rbtree_comp.c; versioning |
| 24 |
info's 'age' field can be 1 |
| 25 |
|
| 26 |
2006-07-13 Kevin L. Mitchell <klmitch@mit.edu> |
| 27 |
|
| 28 |
* doc/Doxyfile.in (PREDEFINED): correct a missing \ |
| 29 |
|
| 30 |
* dbprim.h: correct a couple of documentation snafus |
| 31 |
|
| 32 |
* doc/Doxyfile.in: turn off man page generation |
| 33 |
|
| 34 |
* st_init.c (st_init): use hash_fnv1a() instead of custom |
| 35 |
_smat_hash() function |
| 36 |
|
| 37 |
* st_find.c (st_find): initialize object pointers with memset() in |
| 38 |
case of padding |
| 39 |
|
| 40 |
* st_add.c (st_add): set key size |
| 41 |
|
| 42 |
* smat_freelist.c (_smat_alloc): use memset() to initialize the |
| 43 |
object pointers |
| 44 |
|
| 45 |
* hash_fnv1a.c: implementation of FNV-1a hash |
| 46 |
|
| 47 |
* hash_fnv1.c: implementation of FNV-1 hash |
| 48 |
|
| 49 |
* dbprim_int.h: bump copyright date; add FNV hash parameters |
| 50 |
|
| 51 |
* dbprim.h: bump copyright date; add FNV-1 and FNV-1a hash |
| 52 |
functions; remove deprecated _smat_hash() function |
| 53 |
|
| 54 |
* configure.ac: bump version number for impending updated |
| 55 |
release... |
| 56 |
|
| 57 |
* _smat_hash.c: remove now-deprecated _smat_hash() function |
| 58 |
|
| 59 |
* Makefile.am: add FNV hash function files; remove old |
| 60 |
_smat_hash.c file; tidy up sources list; update library version |
| 61 |
info; drop man page information |
| 62 |
|
| 63 |
* rn_init.c, rt_add.c, rt_find.c, rt_flush.c, rt_init.c, |
| 64 |
rt_iter.c, rt_move.c, rt_next.c, rt_remove.c, sh_find.c, |
| 65 |
sh_flush.c, sh_init.c, sh_iter.c, sh_move.c, smat_freelist.c, |
| 66 |
st_add.c, st_find.c, st_flush.c, st_free.c, st_init.c, st_iter.c, |
| 67 |
st_remove.c, st_resize.c: pull documentation comments into |
| 68 |
dbprim.h |
| 69 |
|
| 70 |
* dbprim_int.h: document internal entities |
| 71 |
|
| 72 |
* dbprim.h: finish futzing with documentation |
| 73 |
|
| 74 |
* _hash_prime.c, _rb_locate.c, _rb_rotate.c, _smat_comp.c, |
| 75 |
_smat_hash.c, _smat_resize.c: file documentation |
| 76 |
|
| 77 |
2006-07-12 Kevin L. Mitchell <klmitch@mit.edu> |
| 78 |
|
| 79 |
* tests/test-harness.h: update to most recent version |
| 80 |
|
| 81 |
* tests/test-harness.c: update to most recent version |
| 82 |
|
| 83 |
* m4/ac_config_libconfig_in.m4, m4/ac_define_version.m4, |
| 84 |
m4/com_err-lib.m4, m4/com_err-obj.m4, m4/with-com_err.m4: autoconf |
| 85 |
macros used by revised build methodology |
| 86 |
|
| 87 |
* doc/Doxyfile.in: revise for new documentation methodology |
| 88 |
|
| 89 |
* he_init.c, ht_add.c, ht_find.c, ht_flush.c, ht_free.c, |
| 90 |
ht_init.c, ht_iter.c, ht_move.c, ht_remove.c, ht_resize.c, |
| 91 |
le_init.c, ll_add.c, ll_find.c, ll_flush.c, ll_init.c, ll_iter.c, |
| 92 |
ll_move.c, ll_remove.c: pull documentation comments into dbprim.h |
| 93 |
|
| 94 |
* dbprim.spec.in: don't re-run doxygen and related stuff |
| 95 |
|
| 96 |
* dbprim.h: begin revision of documentation; declare |
| 97 |
DBPRIM_BEGIN_C_DECLS and DBPRIM_END_C_DECLS |
| 98 |
|
| 99 |
* configure.ac: revise for more recent build methodology |
| 100 |
|
| 101 |
* autogen.sh: revise for more recent build methodology |
| 102 |
|
| 103 |
* acinclude.m4: remove acinclude.m4; now using macros in directory |
| 104 |
m4 |
| 105 |
|
| 106 |
* Makefile.am: revise for more recent build methodology |
| 107 |
|
| 108 |
* AUTHORS: add an AUTHORS file |
| 109 |
|
| 110 |
2004-10-20 Kevin L Mitchell <klmitch@mit.edu> |
| 111 |
|
| 112 |
* configure.ac: bump version number for initial production release |
| 113 |
|
| 114 |
2004-09-25 Kevin L Mitchell <klmitch@mit.edu> |
| 115 |
|
| 116 |
* acinclude.m4: update checks for com_err |
| 117 |
|
| 118 |
* configure.ac: bump the patch level |
| 119 |
|
| 120 |
* tests/test-harness.dat: add test descriptions for red-black |
| 121 |
trees |
| 122 |
|
| 123 |
* tests/t_redblack.c: finish writing red-black tree test suite |
| 124 |
|
| 125 |
2004-09-23 Kevin L Mitchell <klmitch@mit.edu> |
| 126 |
|
| 127 |
* tests/t_redblack.c: add treecheck() function to verify that a |
| 128 |
tree really is a red-black tree |
| 129 |
|
| 130 |
* rt_remove.c: rewrote rt_remove() to correctly remove nodes and |
| 131 |
properly balance tree |
| 132 |
|
| 133 |
* _rb_locate.c: swap order of arguments to comparison function to |
| 134 |
order tree correctly |
| 135 |
|
| 136 |
2004-09-21 Kevin L Mitchell <klmitch@mit.edu> |
| 137 |
|
| 138 |
* tests/test-harness.dat: add sparse matrices test cases |
| 139 |
|
| 140 |
* tests/t_smat.c: add test program for sparse matrices |
| 141 |
|
| 142 |
* tests/t_redblack.c: add the first part of the red-black tree |
| 143 |
test suite...which has, unfortunately, discovered a bug in |
| 144 |
rt_remove() that I haven't been able to squash yet |
| 145 |
|
| 146 |
* tests/t_hashtab.c (main): flip order of FAIL() message to be |
| 147 |
more consistent |
| 148 |
|
| 149 |
* tests/Makefile.am (check_PROGRAMS): add t_smat and t_redblack |
| 150 |
|
| 151 |
* dbprim.h: fix a grammatical error in a doc comment |
| 152 |
|
| 153 |
* tests/test-harness.h: update test-harness.h header to set output |
| 154 |
buffering |
| 155 |
|
| 156 |
* tests/test-harness.dat: change some whitespace and add the |
| 157 |
necessary information for t_hashtab.c |
| 158 |
|
| 159 |
* tests/t_hashtab.c: test program for hash tables |
| 160 |
|
| 161 |
* tests/Makefile.am (check_PROGRAMS): add t_hashtab |
| 162 |
|
| 163 |
* ht_remove.c (ht_remove): move the table shrinkage to before the |
| 164 |
ll_remove(), so that if ht_resize() fails, we can bail out before |
| 165 |
removing the element |
| 166 |
|
| 167 |
* ht_free.c (ht_free): must zero rollover and rollunder |
| 168 |
|
| 169 |
* ht_add.c (ht_add): make the element count increment the last |
| 170 |
thing done after the ll_add() |
| 171 |
|
| 172 |
2004-09-20 Kevin L Mitchell <klmitch@mit.edu> |
| 173 |
|
| 174 |
* _smat_hash.c (_smat_hash): uh, oops--type mismatch |
| 175 |
|
| 176 |
* tests/t_linklists.c: put ChkOrder macro in a more reasonable |
| 177 |
location |
| 178 |
(ChkOrder): don't let a test fail twice... |
| 179 |
|
| 180 |
* tests/test-harness.h: new test-harness header file defining some |
| 181 |
macros which are useful for unit tests |
| 182 |
|
| 183 |
* tests/test-harness.dat: update for new test suite |
| 184 |
|
| 185 |
* tests/t_linklists.c: test program for linked lists |
| 186 |
|
| 187 |
* tests/Makefile.am: update for new test suite |
| 188 |
|
| 189 |
* tests/*.c: remove old tests to replace with a new, hopefully |
| 190 |
simpler test suite |
| 191 |
|
| 192 |
* le_init.c (le_init): allow object to be NULL |
| 193 |
|
| 194 |
2004-03-03 Kevin L Mitchell <klmitch@mit.edu> |
| 195 |
|
| 196 |
* tests/t_st_init.c: include dbprim_err.h and dbprim_version.h |
| 197 |
|
| 198 |
* tests/t_ll_remove.c: include dbprim_err.h and dbprim_version.h |
| 199 |
|
| 200 |
* tests/t_ll_move.c: include dbprim_err.h and dbprim_version.h |
| 201 |
|
| 202 |
* tests/t_ll_iter.c: include dbprim_err.h and dbprim_version.h |
| 203 |
|
| 204 |
* tests/t_ll_init.c: include dbprim_err.h and dbprim_version.h |
| 205 |
|
| 206 |
* tests/t_ll_flush.c: include dbprim_err.h and dbprim_version.h |
| 207 |
|
| 208 |
* tests/t_ll_find.c: include dbprim_err.h and dbprim_version.h |
| 209 |
|
| 210 |
* tests/t_ll_add.c: include dbprim_err.h and dbprim_version.h |
| 211 |
|
| 212 |
* tests/t_le_init.c: include dbprim_err.h and dbprim_version.h |
| 213 |
|
| 214 |
* tests/t_ht_init.c: include dbprim_err.h and dbprim_version.h |
| 215 |
|
| 216 |
* tests/t_he_init.c: include dbprim_err.h and dbprim_version.h |
| 217 |
|
| 218 |
* tests/Makefile.in: regenerate Makefile.in |
| 219 |
|
| 220 |
* tests/Makefile.am (AM_CPPFLAGS): define __DBPRIM_LIBRARY__ |
| 221 |
during build |
| 222 |
|
| 223 |
* mkinstalldirs: regenerate mkinstalldirs |
| 224 |
|
| 225 |
* missing: regenerate missing |
| 226 |
|
| 227 |
* ltmain.sh: regenerate ltmain.sh |
| 228 |
|
| 229 |
* install-sh: regenerate install-sh |
| 230 |
|
| 231 |
* depcomp: regenerate depcomp |
| 232 |
|
| 233 |
* dbprim_int.h: include dbprim_err.h and dbprim_version.h |
| 234 |
|
| 235 |
* dbprim.h: use dbprim/* for inclusions; only include if |
| 236 |
__DBPRIM_LIBRARY__ is not defined |
| 237 |
|
| 238 |
* configure.ac: bump version |
| 239 |
|
| 240 |
* configure: regenerate configure |
| 241 |
|
| 242 |
* config.sub: regenerate config.sub |
| 243 |
|
| 244 |
* config.guess: regenerate config.guess |
| 245 |
|
| 246 |
* aclocal.m4: regenerate aclocal.m4 |
| 247 |
|
| 248 |
* Makefile.in: regenerate Makefile.in |
| 249 |
|
| 250 |
* Makefile.am (AM_CPPFLAGS): define __DBPRIM_LIBRARY__ during |
| 251 |
build |
| 252 |
|
| 253 |
2004-01-21 Kevin L Mitchell <klmitch@mit.edu> |
| 254 |
|
| 255 |
* dbprim.h: add 'extern "C"' support so that hopefully this thing |
| 256 |
can be used with C++... |
| 257 |
|
| 258 |
* ht_remove.c (ht_remove): apply a fix to (hopefully) prevent a |
| 259 |
CPU-sucker condition for autoshrinking hash tables... |
| 260 |
|
| 261 |
2003-12-11 Kevin L Mitchell <klmitch@mit.edu> |
| 262 |
|
| 263 |
* configure.ac: update version number |
| 264 |
|
| 265 |
* smat_freelist.c (_smat_alloc): force entry to point to smat |
| 266 |
entry |
| 267 |
|
| 268 |
2003-11-22 Kevin L Mitchell <klmitch@mit.edu> |
| 269 |
|
| 270 |
* tests/test-harness.dat (t_st_init): remove static initializer |
| 271 |
tests |
| 272 |
|
| 273 |
* tests/t_st_init.c (main): remove static initializer check |
| 274 |
|
| 275 |
* dbprim.h: SMAT_TABLE_INIT() won't work, because the hash table |
| 276 |
must point up to the smat_table, which can't be done in a static |
| 277 |
initializer |
| 278 |
|
| 279 |
* tests/t_st_init.c (check_init): fix test--test st_extra instead |
| 280 |
of ht_extra |
| 281 |
|
| 282 |
* st_init.c (st_init): bah, make the table extra be the table |
| 283 |
pointer |
| 284 |
|
| 285 |
* _smat_hash.c (_smat_hash): change "<" to "<=" (reported by |
| 286 |
mbuna); coerce object pointer into an unsigned string |
| 287 |
|
| 288 |
* _smat_comp.c (_smat_comp): change "<" to "<=" (reported by |
| 289 |
mbuna) |
| 290 |
|
| 291 |
* dbprim.h: add st_extra element to smat_table_t and use it |
| 292 |
|
| 293 |
* st_init.c (st_init): use an "extra" pointer in a smat_table_t |
| 294 |
instead of the hash_table_t |
| 295 |
|
| 296 |
* st_add.c (st_add): only set *entry_p if it's *not* NULL--bah |
| 297 |
(reported by mbuna) |
| 298 |
|
| 299 |
2003-08-31 Kevin L Mitchell <klmitch@mit.edu> |
| 300 |
|
| 301 |
* configure.ac: update version to beta release number 0.9.0 |
| 302 |
|
| 303 |
2003-08-23 Kevin L Mitchell <klmitch@mit.edu> |
| 304 |
|
| 305 |
* Makefile.am: distribute autogen.sh; remove CVS directories in |
| 306 |
dist-hook |
| 307 |
|
| 308 |
* doc/Doxyfile.in: rename Doxyfile to Doxyfile.in and use @ |
| 309 |
substitution for project name and project number |
| 310 |
|
| 311 |
* dbprim.spec.in: BuildRequires for doxygen and tetex-latex |
| 312 |
|
| 313 |
* configure.ac: substitute doc/Doxyfile for package and versioning |
| 314 |
information |
| 315 |
|
| 316 |
* Makefile.am: remove dbprim.h from CLEANFILES and |
| 317 |
DISTHOOKCLEANFILES |
| 318 |
|
| 319 |
* dbprim.spec.in: remove Serial tag--we don't need it |
| 320 |
|
| 321 |
* tests/Makefile.am: use check_PROGRAMS to get programs built for |
| 322 |
us by automake; make sure test-harness.log gets cleaned up by make |
| 323 |
distclean target |
| 324 |
|
| 325 |
* doc/Doxyfile: regenerated by doxywizard--add Id tag to |
| 326 |
PROJECT_NUMBER tag; various updates, including activating PDF |
| 327 |
hyperlinks option for latex output |
| 328 |
|
| 329 |
* dbprim.spec.in: RPM spec file for libdbprim |
| 330 |
|
| 331 |
* dbprim.h: rename dbprim_key group to dbprim and update |
| 332 |
documentation accordingly; include dbprim_version.h for versioning |
| 333 |
information |
| 334 |
|
| 335 |
* configure.ac: update library version to 0.2.0; remove |
| 336 |
AC_CONFIG_PKGCONFIG_IN; call new AC_DEFINE_VERSION macro; add |
| 337 |
dbprim.spec to output files |
| 338 |
|
| 339 |
* Makefile.am: add dbprim_version.c to the list of sources; put |
| 340 |
include files into pkgincludedir; install dbprim-config; mark |
| 341 |
dbprim_err.h as built source; install man pages; add spec files to |
| 342 |
EXTRA_DIST; make sure certain files get cleaned up at appropriate |
| 343 |
times |
| 344 |
|
| 345 |
2003-08-16 Kevin L Mitchell <klmitch@mit.edu> |
| 346 |
|
| 347 |
* doc/Doxyfile (INPUT): rename dbprim.h.top to dbprim.h |
| 348 |
|
| 349 |
* ll_move.c: correct documentation of ll_move.c to use the correct |
| 350 |
argument names |
| 351 |
|
| 352 |
* dbprim.h: consolidate dbprim.h.top and dbprim.h.bot into a |
| 353 |
single dbprim.h to be distributed and make it include dbprim_err.h |
| 354 |
directly |
| 355 |
|
| 356 |
* configure.ac: rename configure.in to configure.ac; update for |
| 357 |
new autoconf/automake syntax; include AC_CONFIG_LIBCONFIG_IN and |
| 358 |
AC_CONFIG_PKGCONFIG_IN |
| 359 |
|
| 360 |
* Makefile.am: add dbprim.h and dbprim_err.h to sources list; add |
| 361 |
dbprim_err.h to include_HEADERS; remove dbprim.h.{top,bot} from |
| 362 |
EXTRA_DIST; remove dbprim.h from CLEANFILES; make dbprim_err.h a |
| 363 |
dependancy of libdbprim_la_OBJECTS; remove creation of dbprim.h; |
| 364 |
don't remove dbprim.h in dist-hook, but do remove dbprim_err.c and |
| 365 |
dbprim_err.h using $(distdir) substitution |
| 366 |
|
| 367 |
2003-06-28 Kevin L Mitchell <klmitch@mit.edu> |
| 368 |
|
| 369 |
* Makefile.am (libdbprim_la_LDFLAGS): update library version |
| 370 |
numbers |
| 371 |
|
| 372 |
* configure.in: update dbprim version |
| 373 |
|
| 374 |
* tests/t_ll_iter.c (main): update calls to ll_iter() to include |
| 375 |
new flags |
| 376 |
|
| 377 |
* doc/Doxyfile (INPUT): include red-black tree sources |
| 378 |
|
| 379 |
* sh_iter.c (sh_iter): accept a flags argument that will be passed |
| 380 |
to ll_iter() |
| 381 |
|
| 382 |
* rt_remove.c: function to remove a node from a red-black tree |
| 383 |
|
| 384 |
* rt_next.c: function to find the next or previous node in a |
| 385 |
red-black tree traversal |
| 386 |
|
| 387 |
* rt_move.c: function to re-key a red-black tree node |
| 388 |
|
| 389 |
* rt_iter.c: function to iterate through a red-black tree |
| 390 |
|
| 391 |
* rt_init.c: function to initialize a red-black tree |
| 392 |
|
| 393 |
* rt_flush.c: function to flush a red-black tree |
| 394 |
|
| 395 |
* rt_find.c: function to look up a node in a red-black tree |
| 396 |
|
| 397 |
* rt_add.c: function to add a node to a red-black tree |
| 398 |
|
| 399 |
* rn_init.c: function to initialize a red-black tree node |
| 400 |
|
| 401 |
* ll_iter.c (ll_iter): add flags argument; traverse list backwards |
| 402 |
if DB_FLAG_REVERSE is passed in |
| 403 |
|
| 404 |
* dbprim_int.h: declare _rb_locate() and _rb_rotate() |
| 405 |
|
| 406 |
* dbprim.h.top: add documentation for red-black trees; add |
| 407 |
structure definitions and function declarations for red-black |
| 408 |
trees; add DB_FLAG_REVERSE flag for reversing ordering; fixed |
| 409 |
ht_frozen() macro; added \warning tags for all macros that |
| 410 |
evaluate their arguments multiple times; added flags argument to |
| 411 |
ll_iter() and sh_iter() |
| 412 |
|
| 413 |
* _rb_rotate.c: function to rotate a child up a level |
| 414 |
|
| 415 |
* _rb_locate.c: function to locate a node in a tree, adding a new |
| 416 |
one and initializing it if necessary |
| 417 |
|
| 418 |
* Makefile.am (libdbprim_la_SOURCES): add red-black tree sources |
| 419 |
|
| 420 |
2003-06-25 Kevin L Mitchell <klmitch@mit.edu> |
| 421 |
|
| 422 |
* tests/t_ll_iter.c (main): call ll_iter() with its new argument |
| 423 |
|
| 424 |
* tests/Makefile.am: may need to link the tests with -lcom_err |
| 425 |
|
| 426 |
* sh_iter.c (sh_iter): provide a start argument to indicate where |
| 427 |
in the row or column to begin iterating |
| 428 |
|
| 429 |
* ll_iter.c (ll_iter): provide a start argument to indicate where |
| 430 |
in the linked list to begin iterating |
| 431 |
|
| 432 |
* dbprim.h.top: add start arguments to ll_iter() and sh_iter() |
| 433 |
|
| 434 |
* configure.in: may need to link the tests with -lcom_err |
| 435 |
|
| 436 |
2003-06-13 Kevin L Mitchell <klmitch@mit.edu> |
| 437 |
|
| 438 |
* ll_iter.c (ll_iter): allow iter_func to ll_remove() the current |
| 439 |
item |
| 440 |
|