2008-05-07: Renamed Data.to_string to Data.to_string_debug for converting fields to strings with their data constructor. Replaced the previous function with one that behaves more like users would expect. Thanks to Stefano Zacchiroli for the suggestion. 2008-04-18: Improved backwards compatibility to older versions of SQLite. 2008-04-04: Fixed a build problem on Mac OS X. 2008-03-27: Fixed a build problem on FreeBSD. Thanks to Jaap Boender for the patch! 2008-03-14: Synced with Jane Street tree. 2008-03-05: Added a patch to improve Windows support. Thanks to Alain Frisch for the patch! 2007-09-04: Fixed a minor bug converting status codes. 2007-08-20: Fixed a GC-bug related to user-defined SQL-functions. Thanks to Enrico Tassi for the test case to replicate this problem! 2007-06-17: Added support for user-defined scalar functions. Thanks to Enrico Tassi for the patch! Switched to sqlite3_prepare_v2 internally to avoid the older, deprecated sqlite3_prepare-function. Thanks to Gabriel Kerneis for the hint! Removed exec_sql-function, which was buggy in the last release anyway (thanks to Paul Stodghill for pointing this out!). Its interface hides too much important information from the user (e.g. BUSY-steps, etc.). It did not seem possible to design a function that made it as simple as exec_sql to run an SQL-statement without inviting the user to write buggy/incomplete code, or that wouldn't make the interface almost as complicated as just writing the correct code that handles all cases by oneself. 2007-05-07: Further GC-bug fixes. There was a design bug in the library that was causing all these GC issues (C-structs allocated in the OCaml-heap). This obviously seemed safe (and more efficient) to the initial author, but after extensive checking it became apparent that this just does not work if C-structs reference each other, because the GC might move these memory regions. It seems safer to allocate C-structs with "malloc", and use an indirection to access them. 2007-05-04: Fixed several GC-bugs, and improved thread interaction. 2007-04-23: callback_exn -> caml_callback_exn. 2007-03-30: Fixed a GC-bug. 2007-03-19: Fixed an installation problem on Cygwin. Thanks to James Cheney for the hint! 2007-02-27: Small API-change: the callback for exec is now an optional argument. Added three more "exec"-functions, which do or do not take headers or handle NULL-values. Improved quality of C-code (removed warnings). 2007-02-23: Fixed a bug in the "db_close"-function. Improved documentation. 2007-02-19: Added check for out of memory after malloc. 2007-01-31: Fixed build problem on x86_64: added -fPIC flag to compilation of C-stubs. 2007-01-17: Complete rewrite by Markus Mottl . 2005-04-??: Initial coding (0.1) by Christian Szegedy .