2001-03-28  Roozbeh Pournader <roozbeh@sharif.edu>
	* bootstrap: swapped 'aclocal' and 'autoheader'. do not warn for
	missing COPYING.
	* COPYING: removed.
	* COPYING.LIB: added.
	* README, *.h, *.c, unidata/CreateGetType.pl: changes to reflect LGPL.
	* Makefile.am: added 'bootstrap' to distribution.

2001-03-28  Behdad Esfahbod <behdad@bamdad.org>
	* Makefile.am: New target "fribidi_tables.i" defined to download
	"unidata/BidiMirroring.txt" and "unidata/PropList.txt" if not
	available, and call "unidata/CreateGetType.pl" if needed to update
	"fribidi_tables.i".

	* fribidi_types.h, fribidi_types.c, fribidi_get_type.c,
	unidata/CreateGetType.pl: Define symbol MEM_OPTIMIZED added to
	make Dov happy :-), if MEM_OPTIMIZED defined, fribidi_tables.i
	entries will be guint8 instead of gint to free 27KB extra memory
	that was used to make fribidi use bitmasks, the overhead will be
	three array lookups instead of two, in fribidi_get_type().	

	* fribidi_main.c: Options --verbose and --basedir added.
	Options --test and --caprtl updated.

	* conformance/test_gen.c: File name changed to
	conformance/test_gen_explicit.c
	
	* run.tests: Make to work with "make test" and "make check" when
	making from other directories.

	* fribidi.c: Rule L1 ("Reset the embedding levels") moved from
	fribidi_log2vis() to fribidi_analyse_string(), to affect
	fribidi_log2vis_get_embedding_levels() too. New functions
	fribidi_mirroring_status() and fribidi_set_mirroring() added to
	turn on or off mirroring (Rule L3).  Changed to warn about too long
	strings only if at least one of	position_L_to_V_list or
	position_V_to_L_list is asked.
	
	* fribidi.h: Updated to reflect new functions in fribidi.c,
	#include "config.h" removed, and added to each .c file that use it,
	because config.h should not be included by other apps/libs.
	
	* fribidi.c, fribidi_main.c, fribidi_benchmark.c: #included "config.h",
	Now, --version options shows the options that library is compiled
	with (DEBUG, MEM_OPTIMIZED, USE_SIMPLE_MALLOC, FRIBIDI_USE_MINI_GLIB).

	* fribidi_types.h, fribidi.c, fribidi.h, fribidi_utils.c: TypeDefined
	FriBidiStrIndex as guint16 and used for the type of
	position_L_to_V_list and postition_V_to_L_list arrays.
	
2001-03-27  Roozbeh Pournader <roozbeh@sharif.edu>
	* fribidi.h: Removed definition of PACKAGE and VERSION. #included
	"config.h"

	* Makefile.am: Make "make dist" work.

2001-03-27  Behdad Esfahbod <behdad@bamdad.org>
	* fribidi.c, fribidi_types.h: Some bugs introduced in the last
	changes removed, "Resolving weak types" rewritten, no known
	conformance bugs.  Defined macros for external use, changed their
	name to have a prefix of FRIBIDI_.
	
	* fribidi.c, fribidi.h: Function fribidi_remove_explicits() added
	to remove the explicit marks from a fribidi string.

	* fribidi.c: Fixed a bug that caused position_l_to_v and
	position_v_to_l	not to calculated correctly.
	
	* fribidi.h: Defined symbols PACKAGE and VERSION manually, autoconf
	should set them, but I don't know how to.
	
	* fribidi_char_sets.c, fribidi_char_sets.h, fribidi_char_sets_*:
	Each charset moved to a pair of .c/.h file.  CapRTL defined as a
	character set for testing with the reference implementation, with
	explicit marks escape strings, beware that it differs from the old
	capital rtl, it is a character set, only for test, with the property
	that contains all character types in ascii characters.  Some
	functions defined to make charset conversion easy.  An interface
	designed for adding new charsets.

	* fribidi_main.c: API revised, many new options added,	
	Default charset changed to UTF-8
	Option --caprtl simulates the old style (same as --charset CapRTL)
	Option --test simulates the old test_fribidi (same as --fill
	--showinput --clean)
	Option --clean now works for all charsets.
	Option --fill implementated.
	Options --version, --showinput, --ltov, --vtol, --levels, --changes,
	--novisual, --charsetdesc added.
	Now use the charset conventions, lots of code removed.
	
	* test_fribidi.c: Got removed!	`fribidi --test' should	be used 
	instead.

	* fribidi_benchmark: Explicit support added, now benchmarks with
	two strings, one without explicit marks and one with them.
	
	* run.tests, tests/test-CapRTL, tests/test-CapRTL.reference,
	tests/test-explicit, tests/test-explicit.reference,
	tests/test-hebrew, tests/test-hebrew.reference: New test datas
	added, for better testing of weak types and explicit support.  Test
	outputs updated for the new CapRTL character set.  Test output for
	test-hebrew added.
	
	* Makefile.in, Makefile.am: Updated to use fribidi instead of
	test_fribidi for test targets.  New files added.
	
	* TODO: Some done tasks removed, some new tasks added!

2001-03-09  Dov Grobgeld  <dov@orbotech.orbotech.co.il>

	* fribidi_mini_glib.c, fribidi_mini_glib.h: Applied patch
	received from Dan Kenigsberg <danken@cs.technion.ac.il> that
	allows compiling fribidi without glib if the flag
	FRIBIDI_USE_MINI_GLIB is turned on.  This option is currently
	turned on when compiling through Makefile.noglib .

	* TODO: Added the task of making autoconf automatically turn
	on FRIBIDI_USE_MINI_GLIB if glib isn't found.

2001-03-07  Behdad Esfahbod <behdad@bamdad.org>

	* fribidi.c: Removed dead codes, many parts rewritten more efficient,
	including Resolving Neutrals, Resolving Implicit Levels and ....
	
	* fribidi_types.h: Almost redefined, to use bitfields for char types,
	and many macros defined for efficient querying about char types.
	Some unused char types removed, also char types L, R, N converted
	to LTR, RTL and ON everywhere.
	
	* CreateGetType.pl: Changed to define tables as arrays of 
	FriBidiCharType instead of guchar.
	
	* conformance/: Updated some scripts for automatic testing with
	reference implementation.

2001-02-19  Behdad Esfahbod <behdad@bamdad.org>

	* fribidi.c: Added support for all explicit marks (embeddings and
	overrides), it means rules X1 .. X10 of specification.
	
	* fribidi.c: Added support for L1 rule of specification, it's
	resetting the char type of some characters, just before reordering.

	* fribidi.c: Added 'AL' to types that change the paragraph embedding
	level, it previously only checked for 'R'.

	* fribidi.c: Define symbol NO_STDIO changed to DEBUG, to turn on or
	off all debug codes compile time, also a function fribidi_set_debug,
	turns on and off the debug output generations in run time.

	* fribidi.c: Added some more debug information, all debug informations
	revised and go to stderr now.

	* fribidi.c: Fixed a bug in rule W5, that is when some european
	terminators are between some arabic letters and some european
	numbers.

	* fribidi_main.c: Added support for inputting explicit marks, in
	CapRTL charset mode.

	* fribidi_main.c: Added command line option for debug mode.

	* fribidi_main.c: Fixed a small bug that would annoy when the size
	of original string may be different to the derived one.

	* fribidi_main.c: Fixed a small bug in padding when the size of the
	out string was more than the page width.

	* fribidi_types.h: Added some types needed for debug info.

2001-02-19  Roozbeh Pournader <roozbeh@sharif.edu>

	* CreateGetType.pl: changed to use BidiMirroring.txt instead
	of UnicodeData.txt.

2000-11-12  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Released fribidi-0.1.15.

	* fribidi.c: [OZ] Applied Owen Taylor's patch from 2000-07-19 to
	fribidi.c.  The patch affects pp->prev rules for the last element
	in cases W3 and W7.
	
	* fribidi.c: [OZ] fribidi_log2vis() and
	fribidi_log2vis_get_embedding_levels() now check for len==0 and if
	so, they return immediately (instead of getting stuck).

	* fribidi.c: [OZ] new_type_link() is now declared as
	new_type_link(void) to prevent a compiler error message.

	* fribidi.c: [OZ] The positions of the is_v2l_map and len
	arguments in fribidi_map_range() prototype were switched around,
	to conform to actual use in the source code file. 
	
	* fribidi.c: [OZ] The first argument to fribidi_is_char_rtl() was
	changed from gint8 to guint8, to conform to data type returned by
	fribidi_log2vis().  
	
	* fribidi.c: [OZ] bidi_string_strlen() now uses gint rather than int.

	* fribidi.c: [OZ] bidi_string_reverse() now uses gint rather than int.
	
	* fribidi.c: [OZ] int16_array_reverse() is now guint16_array_reverse().

	* fribidi.c: Added define symbols NO_STDIO, FRIBIDI_MAX_STRING_LENGTH,
	USE_SIMPLE_MALLOC that may be used to effect what code is being 
	generated.

	* fribidi_char_sets.h, fribidi_char_sets.c: Added Omer Zaks more 
	general ut8 to unicode and unicode to ut8 functions.
	
	* fribidi.c: [OZ] Replaced int to gint to better support embedded
	libraries.

	* Applied lots of code contributed by Omer Zak <omerz@actcom.co.il>
	detailed above.
	

2000-10-14  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Released fribidi-0.1.14.

	* CreateGetType.pl, fribidi_tables.i: Applied a patch received
 	from Roozbeh Pournader <roozbeh@sina.sharif.ac.ir> (who has got
 	quite some courage sending an email from Iran to Israel) which
	updates the character tables according to UnicodeData-3.0.1.txt .

	* fribidi_char_sets.c: Cleaned up the mess and made it compile!

2000-10-09  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Released fribidi-0.1.13 .

	* acinclude.m4: Added file including a m4 macro for glib-2.0
	as suggested by Owen Taylor.

	* Makefile.am: Added acinclude.m4 to extra sources.

	* configure.in: Changed it to use new macro.

2000-05-19  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* fribidi_char_sets.c: Added support for the LRM and RLM 
	characters for the iso-8859-8 converts at unused positions 
	0xFE and 0xFF . 

	* CreateGetType.pl, fribidi.c, fribidi_tables.i, fribidi_types.h:
 	Updated the algorithms to be consistance with the latest Unicode
 	Technical Report #9 release. Still no explicit overrides, but
 	hopefully the implicit algorithm now works according to the
 	specification.

	* CreateGetType.pl, fribidi_tables.i: Overwrote the character
 	bidi-assignment of all non-assigned characters within blocks with
 	the property of the previous character in order to create a few
 	more reused secondary lookup character tables.

	* CreateGetType.pl, fribidi.c, fribidi_tables.i: Added Owen
 	Taylor's speed patch that speeds up fribidi by a factor of 4!
  	Owen's patch consists of two parts. The first part is a double
 	table lookup scheme for accessing the character properties,
 	replacing the old binary search. The second part is a reuse of the
 	links in the character properties linked list in order to minimize
 	mallocs.

2000-05-02  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Released fribidi-0.1.11 .

	* Fixed one remaining bug in Makefile.am.

2000-04-27  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Released fribidi-0.1.10 .

	* Added libtool configuration added by Manish Singh.

	* Added sevaral arabic charset converts contributed by Pablo
 	Saratxaga.

2000-03-20  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Released fribidi-0.1.9 .

2000-02-22  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* fribidi_types.h: Changed basic type FriBidiChar to guint32
	  which corresponds to UCS4, which is more reasonable to use.

2000-02-21  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* tests/test-capital-rtl: Added new tests to check percentage
	  signs and updated tests.reference to reflect this.

	* fribidi.c(fribidi_analyse_string): Added the rule 
	  EN,ET=>EN,EN which takes care of the problem of percentage
	  signs were put in the wrong place.

2000-02-20  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* fribidi.c: Fixed several memory leaks found by Owen Taylor.

2000-01-01  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Added documentation of the utility functions to fribidi.h .

1999-12-24  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Added new function fribidi_is_char_rtl() that uses the 
	embedding levels or the base dir to determine the resolved
	direction of a character.

	* Added new function fribidi_xpos_resolve() to fribidi_utils 
	that is needed in an gui interaction to resolve a mouse event 
	to the proper logical and visual positions.
	

1999-12-21  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Added patches for UTF8 support contributed by raphael@cs.uky.edu.

1999-12-05  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Added two new types FRIBIDI_TYPE_WL and FRIBIDI_TYPE_WR that
	indicate weak directions. These directions are used if no strong
	direction is found in the string.

	* Changed analyse_string() to return base_type FRIBIDI_TYPE_N if
	the base direction cannot be determined. It is then up to a higher
	level protocol to determine the base direction.

1999-11-22  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Released version 0.1.7.

	* Added arabic support contributed by Pablo Saratxaga.

1999-06-20  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Created file fribidi_utils.c which will be used for common 
	  patterns that are common in Bidi supported programs.

1999-04-28  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Fixed bug in fribidi_log2vis which occured if only the v2l
	  array was requested and not the l2v array.

	* Fixed bug in test_fribidi when using option test_vtol .

	* Changed types in call to fribidi_log2vis to be more memory 
	  conservative. 

	* Added single character translation functions to fribidi_char_sets.

1999-04-10  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Changed building to use glib-config as glib-1.2 is now released.

	* Added some short cut optimizations.

	* Cleaned up the TYPE_RULE_C macro and used in in lots of places.

1999-02-09  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Added ./ to the execution of test_fribidi in run.tests.

1999-02-08  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Released 0.1.3 to match the perl module FriBidi.

	* Added length paramater to fribidi_unicode_to_iso8859_8().

	* Fixed bug in fribidi.c related to zero length strings.

	* Released 0.1.2.

	* Added options -ltr and -rtl to fribidi to force LTR and RTL 
	  directions.

	* Added function fribidi_log2vis_get_embedding_levels() which
	  just returns an array of embedding levels.

	* Added benchmark program.

	* Added new check in test_fribidi that checks the changes 
	  calculation.

	* Changed interface to fribidi_log2vis() to include length of
	  string on input and the embedding level of output.
	
	* Added function fribidi_find_string_changes() which finds the
	  bounding box of the changes between two FriBidiStrings.

1999-01-19  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Added the option -bol to fribidi_main.c to print out stuff
	  in the beginning of a line.

1999-01-14  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Released version 0.1.1
	* Added program fribidi as a command line interface to the library.

1999-01-13  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* Added flag -nopad to test_fribidi to make it not insert spaces.
	
	* Make P1 rules (ES and CS) work only if the span of the ES or
	  the CS is 1. This is the same as in Hebrew Windoze.
	
	* Replaced all the ET rules with the simpler ET,EN=>EN,EN
	
        * Added `gtk-config --cflags` and `gtk-config -ldflags` to Makefile.am.
	
        * Made test_fribidi read from stdin if no file given.
	
        * Added options -outputonly to test_fribidi .

1999-01-11  Dov Grobgeld  <dov@imagic.weizmann.ac.il>

	* First Release!
