| ## Old Expat News
Current news 20 October 2003, Expat 1.95.7 released. Fixed `enum XML_Status` issue (reported on SourceForge many times), so compilers that are properly picky will be happy. Introduced an `XMLCALL` macro to control the calling convention used by the Expat API; this macro should be used to annotate prototypes and definitions of callback implementations in code compiled with a calling convention other than the default convention for the host platform. Improved ability to build without the configure-generated expat_config.h header. This is useful for applications which embed Expat rather than linking in the library. Fixed a variety of bugs: see SF issues 458907, 609603, 676844, 679754, 692878, 692964, 695401, 699323, 699487, 820946. Improved hash table lookups. Added more regression tests and improved documentation. Our plan is to wait for a short while and re-release this version as the long-awaited Expat 2.0 if no major problems are identified. If significant problems are found, additional iterative releases will be made as fixes are made. 15 October 2003, Upcoming release. We're working on getting the long-delayed Expat 1.95.7 out the door. A snapshot of the current source code is available as expat-2003-10-15.tar.gz (no longer available); please give this a try on your platform and report how it works for you to the expat-discuss mailing list. Our goals for this release are portability and stability. 28 January 2003, Expat 1.95.6 released. Added `XML_FreeContentModel()`. Added `XML_MemMalloc()`, `XML_MemRealloc()`, `XML_MemFree()`. Fixed a variety of bugs: see SF issues 615606, 616863, 618199, 653180, 673791. Enhanced the regression test suite. Man page improvements: includes SF issue 632146. 6 September 2002, Expat 1.95.5 released. Added `XML_UseForeignDTD()` for improved SAX2 support. Added `XML_GetFeatureList()`. Defined `XML_Bool` type and the values `XML_TRUE` and `XML_FALSE`. Use an incomplete struct instead of a `void*` for the parser. Fixed UTF-8 decoding bug that caused legal UTF-8 to be rejected. Finally fixed bug where default handler would report DTD events that were already handled by another handler. Initial patch contributed by Darryl Miles. Removed unnecessary `DllMain()` function that caused static linking into a DLL to be difficult. Added VC++ projects for building static libraries. Reduced line-length for all source code and headers to be no longer than 80 characters, to help with AS/400 support. Reduced memory copying during parsing (SF patch #600964). Fixed a variety of bugs: see SF issues 580793, 434664, 483514, 580503, 581069, 584041, 584183, 584832, 585537, 596555, 596678, 598352, 598944, 599715, 600479, 600971. 4 September 2002, Development roadmap published. The initial version of the development roadmap was released for comment. 12 July 2002, Expat 1.95.4 released. Added support for VMS, contributed by Craig Berry. See vms/README.vms in the distrubution for more information. Added Mac OS (classic) support, with a makefile for MPW, contributed by Thomas Wegner and Daryle Walker. Added Borland C++ Builder 5 / BCC 5.5 support, contributed by Patrick McConnell (SF patch #538032). Fixed a variety of bugs: see SF issues 441449, 563184, 564342, 566334, 566901, 569461, 570263, 575168, 579196. Made skippedEntityHandler conform to SAX2 (see source comment). Re-implemented WFC: Entity Declared from XML 1.0 spec and added a new error "entity declared in parameter entity": see SF bug report 569461 and SF patch 578161. Re-implemented section 5.1 from XML 1.0 spec: see SF bug report 570263 and SF patch 578161. Expat 1.95.3 is being withdrawn due to bug #566334. If you are currently using Expat 1.95.3, please update to 1.95.4. 3 June 2002, Expat 1.95.3 released. Changed the name of the Windows DLLs from expat.dll to libexpat.dll; this fixes SF bug #432456. This is a problem only known to affect the Perl XML::Parser::Expat extension, but is very important for that extension. Added a project to the MSVC workspace to create a wchar_t version of the library; the DLLs are named libexpatw.dll. (Note the addition of the "w" character in the file name.) Added the XML_ParserReset() API function. This allows a parser to be re-used, reducing the number of memory allocations needed to set up a parser. This can be a substantial benefit when parsing a large number of small documents. Fixed XML_SetReturnNSTriplet() to work for element names. This is now a usable feature. Made the XML_UNICODE builds usable (thanks, Karl!). Allow xmlwf to read from standard input. Install a man page for xmlwf on Unix systems. Fixed many bugs; see SF bug reports 231864, 461380, 464837, 466885, 469226, 477667, 484419, 487840, 494749, 496505, 547350. Other bugs which we can't test as easily may also have been fixed, especially in the area of build support.