Tue Sep 22 20:47:38 EDT 1998

	* tree.c, tree.h: added saving with compression and added interfaces
	  to control the compression level (xmlGetCompressMode,
	  xmlSetCompressMode) and a new save to filename function (xmlSaveFile).

Mon Sep 21 20:11:13 EDT 1998 Daniel Veillard <Daniel.Veillard@w3.org>

	* parser.c: corrected a loop for files of size 0

1998-08-20  Raja R Harinath  <harinath@cs.umn.edu>

	* error.h: New file.  Contains prototyes from `error.c'.

Thu Aug 13 19:02:34 1998  Tom Tromey  <tromey@cygnus.com>

	* Makefile.am (xmlincdir): New macro.
	(xmlinc_HEADERS): Renamed from include_HEADERS.

Thu Aug 13 00:40:14 EDT 1998  Daniel Veillard <Daniel.Veillard@w3.org>

	* applied small patch on numeric entities from
	  Christopher Blizzard <blizzard@appliedtheory.com>

Wed Aug 12 23:12:58 EDT 1998  Daniel Veillard <Daniel.Veillard@w3.org>

	* New release 0.2, removed the old xml_* files so that it's
	    coherent with the other CVS base (W3C), far better conformance
	    to standard, new namespaces, decent entities support, beginning
	    of a SAX-like interface. Nearly nothing left intact, even the
	    test examples ...

1998-07-30  Christopher Blizzard  <blizzard@appliedtheory.com>

	* .cvsignore: Add .deps dir

Sun Jul 26 17:29:52 EDT 1998  Daniel Veillard <Daniel.Veillard@w3.org>

	* xml_tree: changed the memory allocation scheme for name in xmlNewNode

Sun Jul 26 00:17:51 EDT 1998  Daniel Veillard <Daniel.Veillard@w3.org>

        * configure.in: added test for CPP
	* AUTHORS, Changelog: the original ones didn't get commited but the
	    glib ones instead, fixed.
	* Makefile.am: corrected an error in library naming

Fri Jul 24 16:47:14 1998  Daniel Veillard <Daniel.Veillard@w3.org>

	* integrated code developped at W3C
	* changed the original Copyright
	* migrated to automake
	* prefixed the filenames by xml_ to avoid filename clashes

