CHANGELOG dbf - dBASE Reader and Converter
Author: Bjoern Berg <clergyman@gmx.de>, Uwe Steinmann <uwe@steinmann.cx>
Please send suggestions, code pieces and comments directly to the authors
email address
File sorted in order of date of release

0.9.0		DEVELOPMENT
- (Release-Date)
- data in csv output is only surrounded by enclosure char if data
  contains the separator char
- fixed output of numbers in sql output (sometimes a 'NULL' preceeded
  the number)
- fixed wasting of memory in sql.c
- exporting dbase is possible
- new options --quiet, --start-record and --num-records
- new option --usecopy allows to use COPY instead of INSERT statement
  in sql output.
- use libdbf for dBASE file access
- added option --nocreate, --tablename, --empty-str-is-null
- various speed improvements
- nicer formating of sql output, partial rewrite of code
- major update of man page
- endian swapping is now centralized for a better performance
- table dropping and Creation can be now deactivated
- fixed bug in sql export option when a column value is NULL.
- fixed column statistic if backlink is detected
- fixed handling of deleted datasets
- fixed --trim b|r which ate up 1 char strings
- checks if filesize equals calculated file size (could be disabled in dbf.h
  by setting DBF_FILE_CHECK to 0)
- Paths to a backlink database are taken into account for header_length
  calculation but not for processing

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		
