CHANGELOG dbf - dBASE Reader and Converter Author: Bjoern Berg, clergyman@gmx.de Please send suggestions, code pieces and comments directly to the authors email address [anubisnet group] File sorted in order of date of release 0.8.1 STABLE 2003-20-10 (Release-Date) - fixed CSV converting, data sets are now converted properly - using '-' as a filename means stdout - fixed csv output. separator char within a field value are now treated propperly (Uwe) - Do not put the separator char after the last field in csv output (Uwe) - Add field type, size and decimals to field name in first line of csv output (Uwe) 0.8 STABLE 2003-11-09 (Release-Date) - Changed the options parsing system and the options id, so that options with a single hyphen can also be used and displayed in the help. - Inserted a fail safe routine which checks that the original file will never be overwritten if the options filename is missing - Tab-separated files without quoted text-passages can be created by using 't' as separator. - Fix for date strings in SQL: According the PostgreSQL manual, SQL (ANSI) requires date strings to be quoted, ie. '20031029' send in by Tommi Rintala, t2r@wasalab.com - Can differentiate between dBASE, FoxPro, FoxBase and Clipper - --view-info reports the database type and version number - supports datatypes int, float, double and logical in SQL and CSV - introduced cast operations for CSV and SQL export - differentiates between deleted and existent data sets 0.7 STABLE 2003-09-14 (Release-Date) Changelog send in by Mikhail Teterin: - Totally reworked options parsing. - Using the new options-parsing scheme, I added the way to specify the desired CSV separator, debug level, and string-trimming option (below). - When outputing the SQL file, strings, probably, should not be trimmed, and that is now a default. The trimming can now be specified as: --trim {r|l|b} - The two codepage-conversion functions combined into one, which is also made table-driven. - Record-conversion can now be turned off with the --noconv option. - While input is still opened and read directly with open/read (perhaps, it should stay that way), the output file is operated on using the stdio functions fopen() and fprintf(), fputs, putc(). - Some reorganization in the variable-declaration and other cleanups... 0.6 STABLE (Release-Date) - dbf can export dBASE files to SQL instruction sets - new Makefiles - works on AIX 4.3.3 - new file system structure -> src contains all header and source files - fixes in macro definitions - increased macro MAX_FIELDS from 50 to 500 to solve bug #003 reported in the document BUGS - fixes in endian.c, reported by Uwe Steinmann 0.5 STABLE 2003-02-17 (Release-Date) - Support for Big Endian systems (PPC): stable - improvements in endian.h * dbf.c: - Removed free() calls on static buffers. char buffer[565656]; - Caught return from csv_open in csvhandle. - initialised export_filename to NULL to ensure later calls like if(export_filename) succeed correctly. * iodbf.h: - Made csv_open return the handle that it generates instead of 1. - minor/major bugfixes - and all changes made in the beta versions 0.5beta02 DEVELOPMENT 07.02.2003 (Release-Date) - Override flag for Big Endian systems implemented. Use --ppc to disable the system check - Fixes in the help - minor feature enhancements and improved error detection 0.5beta01 DEVELOPMENT 01.02.2003 (Release-Date) - Support for Big Endian systems implemented - Fixes in codepages - Fixes for displaying the date (showing it now in normal english syntax) - Fixed output for table structure - Wall-flag for gcc added in Makefile - major code clean-up 0.4.0 STABLE 24.01.2003 (Release-Date) - Support for Alpha-RISC based systems added - New debug and output features (--view-info flag updated) - added endian.h for PPC developers (see FAQ) - new documents: BUGS, FAQ - changes in Makefile for binary package builds 0.3.2 STABLE 06.12.2002 (Release-Date) - added Makefile for Linux - new documents (INSTALL, MANIFEST, CREDITS) 0.3.1.1 DEVELOPMENT 30.11.2002 (Release-Date) - code cleanup for MSVC 0.3.1 DEVELOPMENT 23.11.2002 (Release-Date) - Fix implementation send in by Andy Jeffries, Email: opensource@andyjeffries.co.uk Description: I had a problem trying to convert a DBF file that was about 280Mb in size. Basically you had a memory leak with your dynamically allocated buffers. [...] The 280Mb file I was converting was using memory like it was going out of fashion (getting up to 900Mb+ before being process-killed). It now seems to use a constant 424Kb of memory (according to top). 0.2.7 STABLE 11.10.2002 (Release-Date) - code cleanup to avoid warning messages in MSVC - codepages.h: warning C4305 in MSVC -> fixed warning C4018 in MSVC -> fixed - an_string.h: warning C4018 in MSVC -> fixed - changes will be added also to version 0.3.1 (coming soon) 0.3.0 DEVELOPMENT 05.10.2002 (Date of last fixes) - table structure enhanced for dBASE IV and 5 - declared as BETA resp. development version - automated codepage selection for western european languages - CSV Export improved (faster now) - field information and statistical output now reachable with a new flag (no longer automated output) - short help with description of new flags 0.2.6 20.09.2002 (Release-Date) - short help / command overview is now officially implemented - output improved (looks better now) - dbf.c splitted to iodbf.h, an_string.h, statistic.h, tables.h - code cleanup 0.2.5 15.09.2002 (Release-/Modification-Date) - Implementation of Code Pages to view umlauts and special chars correctly (this is a development feature which has to be tested by the people using dbf, because I did not find any documentation about the reserved header bits in dbf III. At the moment dbf controls the behaviour by Bit 31) - Supported languages with special chars at the moment: german, french; more to come - for more details acc. to the new features check out the README and the anubisnet Support Center 0.2 28.07.2002 (Release-Date) - Converter for csv implemented (use -c Flag, see README for handling) - function trim_spaces implemented, skips backslashes in the CSV file 0.1 June 2002 - First implementation - Output for dBase3 databases, based on a version by Joachim Astel, 1989