QOF 0.6.0 released!
Neil Williams
linux at codehelp.co.uk
Sun Oct 23 10:45:57 EDT 2005
QOF - Query Object Framework - library to add a query engine to C applications
with generic XML backend. A SQL database is not needed; any collection of
C/C++ objects can act as tables. Used by GnuCash, GnoTime, pilot-QOF,
cashutil and qof-gen (The upcoming GnuCash Gnome2 port will use QOF
externally for the first time.)
QOF v0.6.0 (libqof1) is finally on full release.
QOF v0.6.0 adds a lot of new code, including a new, dedicated, XML backend,
book merge support, new data types and improved methods for loading other
suitable backends.
The logging subsystem has been overhauled to make it more generic and easier
to use with other applications.
The backends are now loaded using GModule which requires each backend to use
QofBackendProvider and install the .la file alongside the backend library in
the *main* package, not the -dev or -devel package.
v0.6.0 introduces libqof1 which will remain API compatible until all the
changes below can be folded into libqof2:
1. All gnucash-specific code to be removed. Most of this has been done in
v0.6.0
2. Filename and function name conventions to be made to conform to a single
method:
filenames: qof<module>.c|h
functions: qof_<module>_<function>_ ...
e.g. gnc_date.h becomes qofdate.h
qof_book_mergeInit becomes qof_book_merge_init
gnc_numeric_zero becomes qof_numeric_zero
gnc_set_logfile becomes qof_log_setfile.
gnc-trace.c|h becomes qoflog.c|h
3. These changes will be made by deprecating old names and making old files
into placeholders. When libqof2 is ready for pre-release, all deprecated
elements will include compiler flags that will highlight the code that needs
to be changed and placeholder files may be removed at this stage. All flags
and deprecated code will then be removed in the final libqof2 release.
4. To make this change easier, the qof.h header has been fixed in v0.6.0 and
is now the only header file required to be included to use QOF. Using
individual header files in applications linked against QOF is now
*deprecated*. All code that uses QOF should only use:
#include <qof.h>
// or
#include "qof.h"
This is the only file guaranteed to maintain access to the full QOF API during
the entire life of libqof1 and libqof2.
The QOF documentation is entirely embedded in the source code. You can build
an html version of the documentation by installing the 'doxygen' package, and
then 'cd doc; make doc'.
This and all later versions of QOF use the 'pkg' system of managing include
files and libraries. Full advice on building against and packaging QOF is
available in the HACKING file in CVS, also reproduced on the SourceForge
project site:
https://sourceforge.net/docman/display_doc.php?docid=30421&group_id=83302
All queries on QOF 0.6.0 should be directed to the QOF-devel mailing list (not
any of the gnucashlists ):
qof-devel at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/qof-devel
--
Neil Williams
=============
http://www.data-freedom.org/
http://www.nosoftwarepatents.com/
http://www.linux.codehelp.co.uk/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.gnucash.org/pipermail/gnucash-devel/attachments/20051023/3db1122f/attachment.bin
More information about the gnucash-devel
mailing list