CHANGES:
0.10.1 - 0.10.2
- Require C++11 for build.
- Fix various crashes, leaks and hangs when reading damaged files found
  by oss-fuzz.

0.10.0 - 0.10.1
- Fix crash when NULL is passed as input stream.
- Use symbol visibility on Linux. The library only exports public functions
  now.
- Avoid infinite loop. (libwpd#3)
- Remove bashism. (libwpd#5)
- Fix various crashes and hangs when reading broken files found with the
  help of american-fuzzy-lop.
- Make --help output of all command line tools more help2man-friendly.
- Miscellaneous fixes and cleanups.

0.9.9 - 0.10.0
- Switch to librevenge
- Miscellaneous fixes and cleanups

0.9.8 - 0.9.9
- Miscellaneous coverity fixes (David Tardon)
- WPX_SEEK_END for WPXMemoryInputStream (Laurent Alonso)
- Metadata for wpd2html (David Hislop)
- Cleanup and build fixes (Fridrich Strba)

0.9.7 - 0.9.8
- Fix buffer allocation in WPXString::sprintf that can lead to crash
- Fix crash reading invalid OLE stream
- Change source code layout so that public headers be in inc/ and its
  subdirectories
- libwpd.h and libwpd-stream.h are not generated headers anymore
- Change the way we get version from libwpd build

0.9.6 - 0.9.7
- Improvements to WPXOLEStream class
- Added MPL2+ to the licenses libwpd is released under
- Fix build of ZIP based stream reader
- Miscellaneous fixes

0.9.5 - 0.9.6
- Revert an accidental ABI change in WPXPropertyList
- Fix Windows build inside LibreOffice
- Link the Windows static libraries with DLL runtimes

0.9.4 - 0.9.5
- libwpd-stream: Add experimental support for ZIP storages
- libwpd-stream: Add WPX_SEEK_END to the WPXSeekType enum
  (Be sure that you are at offset 0 using it and check return value
  in order to be compatible with lower versions of libwpd)
- New Visual Studio 2008 and Visual Studio 2010 build files
- Fix autogeneration with newer autotools
- Removal of warnings, coverity and cppcheck errors and warnings

0.9.3 - 0.9.4
- Remove autopackage packaging that nobody uses (Fridrich)
- Don't output points as integer. This solves some rounding issues along
  with possibility of writing 10.5 point font size (Fridrich)
- General improvement of code quality by buiding with -Weffc++ option (Fridrich)
- Improvement of textbox code (Laurent Alonso)
- Fixes of autotools Windows build (Fridrich)

0.9.2 - 0.9.3
- Improvement of arabic charset mapping (Smokey Ardisson)
- Build system rewrite and improvement (Tomas Chvatal)
- Cleanup of return values (Thomas Klausner)
- Fix crashes with WP 2.1 for Mac documents (Fridrich)
- Fix bug in WPXPropertyList::operator= (Fridrich)
- Fix memory issues in some WPXProperty's derived classes (Fridrich)
- Conversion of extended characters in WP 42 parser (Fridrich)
- Various fixes for building inside LibreOffice (Tor Lillqvist, Jan Holesovky)

0.9.1 - 0.9.2
- Fix build with gcc 4.6.x (Caolan McNamara)
- Handle graciously corrupted WP6 prefix data (Fridrich)
- Initial conversion of Mac double byte script characters (Fridrich)
- Internally use UCS4 instead of UCS2 (Fridrich)
- Add Arabic character conversion for WP5 parser (Fridrich)
- Allow conversion of one WP character to a sequence of unicode
  characters (Fridrich)
- Miscellaneous conversion fixes (Edward Mendelson, Fridrich)

0.9.0 - 0.9.1
- Parse correctly WP 2 for Mac documents without resource fork (Fridrich)
- Improvements in parsing of pictures in WP1 parser (Fridrich)
- Fix wrong sizes of some functions in WP1 and WP42 parsers (Fridrich)
- Fix handling of character attributes (Fridrich)

0.8.x - 0.9.0
- Conversion of page-numbering (William)
- Conversion of embedded images and text boxes in WP1, WP3, WP5 and WP6 documents
  (Fridrich)
- Conversion of password protected WP1, WP3, WP42 and WP5 documents (Fridrich)
- Conversion of annotations/comments in WP6 parser (Fridrich)
- Fix some greek characters so that Text written in WP5.1 with Printer Polyglott
  convert correct.
- Fix unicode mappings of some older Symbol and Dingbats fonts (Fridrich)
- Drop the libgsf dependency in favour of pure C++ implementation of the WPXInputStream
  interface (Fridrich, Ariya)
- Fix the footnote/endnote/comment/annotation/textbox writing in wpd2html converter
- Improve metadata parsing (David Hislop)

0.8.13 - 0.8.14
- Fix some warnings due to unused variables
- Fix a warning due to a name hiding.
- Fix two loops with corrupted documents (Thank you, sum1!)

0.8.12 - 0.8.13
- Implement readahead in the WPXStreamImplementation class (Jan Holesovsky, Fridrich)

0.8.11 - 0.8.12
- Enable building of statically linked tools even when a shared library is built,
  useful for scripting the creation of win32 release packages (Robert Staudinger,
  Fridrich Strba)
- Package also the tools automatically for win32 (Fridrich) 
- Do not build doxygen documentation on win32 unless explicitely asked for it (Fridrich)
- Convert Tab Set function for WP5 parser (Fridrich)
- Basic conversion of tabulators and indents in WP3 parser (Smokey Ardisson, Fridrich)
- Basic conversion of tabulators and indents in WP5 parser (Fridrich)
- Convert the most usual Macintosh fonts from fontId to font name in WP1 parser
  (Hubert Figuiere, Fridrich)
- Fix compilation with the upcoming gcc 4.3 (Rene Engelhard, Fridrich)

0.8.10 - 0.8.11
- Fix incorrect conversion of tables with cells spanning more then 127 rows due to
  incorrect information in the file-format (Fridrich)
- Fix incorrect reading of font name information in prefix packets (Fridrich)
- Fixing http://bugzilla.abisource.com bug #10957: Bad -L flags in Makefile.am break
  compiling if different libwpd version is already installed (Daniel Mack)
- Fixing http://bugzilla.abisource.com bug #10958: Risky -I ordering (Daniel Mack)
- Making a proper release win32 (MinGW) binaries crosscompilation on Linux possible and
  smooth (Fridrich)

0.8.9 - 0.8.10
- Fix a locale dependency in our float to string conversion (Fridrich)
- Enhance our reading of document meta data for WP6 (David Hislop)
- Fix some sillies and be gracious with documents with corrupted prefix packets (Fridrich)
- Prevent the heuristic typedetection from throwing (Fridrich)
- Add a new stream implementation based on C++ streams, rendering libgsf dependency
  very optional; deprecate GSFInputStream (Fridrich)
- Allow building of wpd2foo tools by Micro$oft Visual studio (David Hislop, Fridrich)

0.8.8 - 0.8.9
- Fix http://qa.openoffice.org/issues/show_bug.cgi?id=74134, a bug in WP1 document
  type detection where we could try to seek to a negative place in document (Fridrich)
- Fix a regression wrt. 0.8.7 preventing the conversion of tab table in
  WP1 and WP3 file-format (Fridrich)
- Fixed several overflow bugs reported by iDefense. An attacker could create a
  carefully crafted Word Perfect file that could cause an application linked with
  libwpd, such as OpenOffice, to crash or possibly execute arbitrary code if the
  file was opened by a victim. (CVE-2007-0002) (iDefense's Sean Larsson, Fridrich)

0.8.7 - 0.8.8
- Add unit tests for the stream class (Fridrich & Andrew Ziem)
- Ignore foot/endnotes that are referenced inside other foot/endnotes (Fridrich);
  fixes http://www.openoffice.org/issues/show_bug.cgi?id=71487
- Handle graciously unsupported password-protected documents; (Fridrich)
  fixes http://www.openoffice.org/issues/show_bug.cgi?id=72307
- Remove warnings on main OpenOffice.org platforms (Fridrich)
- Remove some potential memory leaks in the WPXPropertyList class and optimize
  the WPXPropertyList subscription operator (Fridrich)
- When possible, pass WPXStrings by reference instead of passing them by copy
  (Fridrich)
- Refactor WPXString to not cast from and to void*; refactor WPXPropertyList and
  WPXPropertyListVector classes as to save a bunch of virtual calls (Fridrich)

0.8.6 - 0.8.7
- Revert the alignment fix, in order to mimick the way WP for Mac renders
  the documents (Fridrich)
- Support for WP Mac 1.x documents (Fridrich)
- Fix memory leak in standalone converters (Andrew Ziem)
- Miscellaneous code cleanups (Fridrich)

0.8.5 -> 0.8.6
- Initial support of WP Mac 2.x documents (Fridrich)
- Fix an alignment bug where alignment was propagated from multicolumn
  sections into following single column sections (Fridrich)
- Initial conversion of headers/footers in WP42 parser (Fridrich)
- Fix some parser errors in WP42 parser; now we seek to the right place
  and parse correctly all functions (Fridrich)
- Fixed crash in wpd2foo if invoked with non-existing filename (Jody Goldberg)
- Assure that the table we send to the listener implementation is a valid
  table independent of how messy the table is in the WP document (Fridrich)
- Fix situations where there is no tab position information in WPUs inside
  the tabulator function; the fallback works now even if the position is 0
  like in WP6 for DOS documents.
- Try not to crash under any circumstance by sanitizing the code and throwing
  exception in illogical, but in WP documents very real, situations (sum1,
  Fridrich)
- Make every implementation of WPXInputStream that we use return !0 if a seek
  fails; be more paranoiac with the result of read functions (sum1, Fridrich)
- Ignore corrupted prefix packets in WP5 documents (Fridrich)
- Try to convert as much information as possible even in corrupted WP3, WP5 and
  WP6 documents (Fridrich) - Libwpd now converts many documents that make crash
  WordPerfect itself.
- Fine-tune the WP42 document detection. Detect as many WP42 files as possible
  while still discarding plain text documents (Fridrich, Marc)
- Let the WP6 parser not die if the prefix packet it refers to is corrupted or
  absent (Fridrich)
- Fix hangs while parsing a corrupted WP6ExtendedDocumentSummaryPacket (sum1,
  Fridrich)
- General improvement of libwpd's conversion-success-rate and extensive QA with
  more than 46'000 real life documents (Mr. SUM1)

0.8.4 -> 0.8.5
- Conversion of font face, size and colour in WP5 parser, including the
  default font information (Fridrich)
- Conversion of foot/endnotes in WP5.x format (Fridrich)
- Conversion of headers/footers in WP3 and WP5 parsers (Fridrich)
- Prevent negative paragraph margins due to page margin change.
  Removes the ugly text-border lines running across the text in
  OpenOffice.org (Fridrich)
- Make page margins constant between two hard page breaks (Fridrich)
- Convert page margin changes into section margins in multi-column sections
- Move absolute position values in multicolumn sections from whatever column
  they are in into  the first one. Fixes the off-page position of the second
  table in 05mechanicalservice.wpd (Fridrich)
- Defer page span change to the end of the current paragraph if it is
  opened in order to prevent a paragraph break where it is not there in the
  original document (Fridrich)
- Fix http://bugzilla.abisource.com/show_bug.cgi?id=10105, an incorrect
  conversion of table alignment in WP3.x file format (Fridrich)
- Fix small issue with incorrect number of pages in page-spans (Fridrich)
- Fix an issue with "==" operator for WPXPageSpan classes. The result is now
  the same independent on the order of the operands (Fridrich)
- Fix http://bugzilla.abisource.com/show_bug.cgi?id=10279, a crash if a table
  from the middle of the tableList is in footnote and/or endnote (Marc, Fridrich)
- Add an option "--info" to wpd2text; called with this option, wpd2text dumps the
  information of the document instead of converting it. This could be useful for 
  beagle (Fridrich)
- Refactoring of the listener structure and split of WPXListener into WPXContentListener
  and WPXStylesListener (Fridrich, Marc and Cyrille Moureaux as a guest star)

0.8.3 -> 0.8.4
- Fix compilation with gcc >=  4.1.0 (Stephan Kulow)
- Initial support for tables in WP5.x format (Fridrich Strba)
- Fix compilation on MacOSX (Francis J. Franklin)
- Conversion of font name, size and colour for WP3.x format (Fridrich)
- Collapse the LL and HL Listeners into one classe each (Fridrich)
- Initial support of tables in WP3.x format including the cell background
  colour (Fridrich Strba)
- Conversion of sections with multiple columns in WP3.x format (Fridrich)
- Conversion of foot/endnotes in WP3.x format (Fridrich)
- Adding an assignment operator to WPXString class as well as trying
  to make it much more a std::string wrapper (Fridrich)

0.8.2 -> 0.8.3
- Make parser follow closer the document stream, simplify the _flushText()
  function; eliminate empty spans and sections (Fridrich Strba) 
- Improvement of list conversion: position of the list reference, distance
  of the text from the reference (Fridrich Strba).
- Get correctly the used undocumented information from the tab group (Fridrich
  Strba)
- Autopackage support (Robert Staudinger)

0.8.1 -> 0.8.2
- Add unicode mappings for WP5/WP3 charsets, different from WP6
  (Ariya Hidayat, Fridrich Strba, Susan Isiko Strba)
- Add unicode mappings for WP6 Arabic charsets 13 & 14 (Smokey
  Ardisson)
- Fix http://bugzilla.abisource.com/show_bug.cgi?id=8807 : Improving
  our extended characters to unicode mappings (Ariya Hidayat, Smokey
  Ardisson, Fridrich Strba)
- Fix conversion of page attributes in documents with headers/footers
  (Fridrich Strba)
- Fix http://bugzilla.abisource.com/show_bug.cgi?id=8830 : Ignore a
  font size change if the resulting size would be of "Opt"
  (Fridrich Strba)
- Fix http://bugzilla.abisource.com/show_bug.cgi?id=9190 : Do NEVER
  open/close sections inside a table (Fridrich Strba)

0.8.0 -> 0.8.1
- Prevent endless loops while parsing sub-documents (Fridrich Strba)
- Fix conversion of certain belarussian characters (Yury Tarasievich)
- Fix incorrect conversion of text attributes in spans with tabs and
  incorrect conversion of page characteristics in documents with
  headers/footers (Fridrich Strba)
- Build a libwpd-docs rpm package (All)

0.7.x -> 0.8.0
- Initial WordPerfect 3.0-3.5(e) for Mac support (Marc Maurer, Fridrich Strba)
- WP3 and WP5: Conversion of the extended character set, of page 
  margins, page form and orientation, line spacing, paragraph
  justification (Fridrich Strba, Smokey Ardisson)
- WP3: Conversion of text attributes (Fridrich Strba)
- WP6: Respect paragraph and span properties defined in a Table Cell;
  conversion of header row; conversion of table-related single-byte
  functions (Fridrich Strba)
- WP6: Conversion of Tab Set function and of table row height, as well
  as conversion of "font size change" text attributes (bits 0-4)
  (Fridrich Strba)
- WP6: Added conversion of spacing after paragraph and of first
  line indentation done by functions of the paragraph Group
  (Fridrich Strba)
- WP6: Table cell vertical alignment conversion and colour of the
  cell border (Fridrich Strba)
- WP6: Conversion of text columns size (width and gutters) (Fridrich Strba)
- WP6: Improvements in conversion of tabulators (Fridrich Strba)
- WP6: Text highlight conversion (Fridrich Strba)
- WP6: Page form and orientation conversion (Fridrich Strba)
- WP6: Font colour conversion (Fridrich Strba)
- WP6: List handling improvements (Fridrich Strba, William Lachance)
- Remove span parameters from calls to openParagraph and openListElement
  (William Lachance)
- Additional doxygen comments (William Lachance, Fridrich Strba)
- Remove mandatory dependancy on glib/libgsf for external applications
  (William Lachance, Michael Meeks)
- Internal changes to reduce API/ABI breakage between versions (William Lachance)
- Fix many memory leaks (William Lachance)
- Can now build libwpd dynamically against OOo (William Lachance,
  Fridrich Strba, Caolan McNamara)

0.7.1 -> 0.7.2
- Added conversion of paragraph margins done by functions of the
  paragraph group
- Conversion of Hard-Line-Breaks (Fridrich Strba)
- Fixed bug in WP6FixedLengthGroup handling (Fridrich Strba)
- Added --callgraph to wpd2raw, and added all parameters to the 
  output (Marc Maurer)
- Fixed a bug that prevented the conversion of full justification
  (Fridrich Strba)
- wpd2foo tools properly detect if a file format is suported
  or not (Marc Maurer)
- Handle unsupported file types other than WordPerfect documents
  (like Macintosh WP2.0 documents) more gracefully (Marc Maurer)
- Added Box Drawing character set mapping (Fridrich Strba)
- Handling of hard spaces and soft hyphens (Fridrich Strba)
- Change in conversion of Deletable Hard/Soft EOL/EOC/EOP
  and handling of some single byte functions that have their
  equivalent in the EOL group (Fridrich Strba)
- Import font names properly on big endian systems (Ted Lemon)
- MSVC compiler switch (Fridrich Strba)
- Some more refactoring, sharing more code between parsers (Marc Maurer)
- Windows versioning: add a BUILDNUMBER (Fridrich Strba)
- Be more carefull to open plain text files (Marc Maurer)
- Improved error reporting when a document can not be opened (Marc Maurer)
- Fix crash when tables occurred in embedded sub-documents (William 
Lachance)
- Insert span properties immediately after opening paragraph, preventing
entire paragraphs from inheriting the properties when you (e.g.) only wanted
to bold a word (Fridrich Strba)

0.7.0 -> 0.7.1
- Fixes to the multinational character map (Fridrich Strba)
- Fix handling of sub documents, broken by me (William Lachance, Marc Maurer)
- Fix class structure of the WP5 function groups (Marc Maurer)
- Basic page break support for WP4.2 and WP5.x (Marc Maurer)
- README update, to avoid confusing licensing issues (Marc Maurer)

0.6.6 -> 0.7.0
- Basic WP4.2 file format support (Marc Maurer)
- Basic WP5 file format support (Marc Maurer)
- Fix errors in the international character mappings (Fridrich Strba)
- Cleanup file header handling mess (Marc Maurer)
- Removal of stale files (Marc Maurer)
- Several fixes to make libwpd compile on Win32/MSVC (Marc Maurer)
- Make the wpd2text converter use the high level parsing framework
  to support WP4 and WP5 documents as well (Marc Maurer)
- Rework the wpd2raw tool to use the high level parsing framework
  to support WP4 and WP5 documents as well (Marc Maurer)
- Restructure the class hierarchy to allow for code sharing
  between the different high level listeners (Marc Maurer)
- Close open page spans at the end of the document (Marc Maurer)
- Updated MSVC6 project files, we have a win32 lib again, yay! (Marc Maurer)
- Reduce the number of installed header files (Marc Maurer)
- Add mingw build system (Fridrich Strba)
- Fix rpm build system with respect to "make dist" (Rui Miguel Seabra)

0.6.5 -> 0.6.6
- Add an encryption exception thrown for encrypted documents to allow
  for more verbose error detection (Marc Maurer)

0.6.4 -> 0.6.5
- Fix parsing error that caused libwpd to hang on various documents (Marc Maurer)

0.6.3 -> 0.6.4
- Fix illegal memory access (Marc Maurer)

0.6.2 -> 0.6.3
- More robust importing of numbered lists (William Lachance)
- Support more types of table cell colouring/shading (William)

0.6.1 -> 0.6.2
- Export the following WP6 Attributes: redlining, double underlining, 
small caps, outlining, and blink (William Lachance)
- Build system fix (Rui Miguel Seabra)

0.6.0 -> 0.6.1
- Change format of lists output to to not embed list levels inside 
list elements (William Lachance)

0.5.0 -> 0.6.0
- Tibetan extended character support (Ted Lemon)
- Border-less table cell support (William Lachance)
- Support for some odd types of tables (William)
- Top/bottom margin change support (William)
- Header/footer support (William)
- Built-in filetype detection (William)
- Handle corrupt token (0x00) correctly (William)
- Code refactoring and bugfixes (William)
- Fix bug with long documents and tables (William)

0.4.0 -> 0.5.0
- rpm spec (Rui Miguel Silva Seabra)
- document metadata (William Lachance)
- line spacing (William)
- better font handling (William)
- footnotes/endnotes (William)
- improved table handling - column sizing, offset, and alignment (Marc Maurer)
- build libwpd as a shared library (Francis J Franklin)
- add support for tab-based justification (William)
- byteswap on file reads to support big-endian architectures (William)
- many, many bugfixes (William, Marc)

0.3.2 -> 0.4.0
- support for WordPerfect 6.0 files (Marc Maurer, William Lachance)
- lists/outlines (William)
- hyphens (a bit of a hack; but it'll do for now) (William)
- make libwpd use the STL (William)
- add an internal Unicode string class (William)
- many bugfixes (William, Marc)

0.3.1 -> 0.3.2
- small typo fix to wpd2html (Marc Maurer)
- huge bug in the build system: we require libgsf-1 (Marc)

0.3.0 -> 0.3.1
?

0.2.0 -> 0.3.0:
- font face/size changes (William Lachance)
- convert library to use libgsf (William) 
- handle WordPerfect documents with an OLE header (side effect of
conversion to libgsf) (William)
- many bugfixes (memory leaks, general problems) (William, Marc Maurer)
