| <html> |
| <body> |
| |
| <h1 align='right'><a name='RELNOTES'><img src="B.gif" align="right" |
| hspace="10" width="100" height="100" alt="B"></a>Release Notes</h1> |
| |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 2.8</h2> |
| |
| <ul> |
| |
| <li>Now call docsetutil using xcrun on OS X (Bug #458)</li> |
| |
| <li>mxmldoc did not escape special HTML characters inside @code foo@ |
| comments.</li> |
| |
| <li>Fixed a memory leak in mxmlElementDeleteAttr (Bug #452)</li> |
| |
| <li>Added MXML_MAJOR/MINOR_VERSION definitions to mxml.h (Bug $461)</li> |
| |
| <li>Fixed a bug reading UTF-16 characters from a file (Bug #454)</li> |
| |
| <li>Fixed a memory leak when loading invalid XML (Bug #496)</li> |
| |
| <li>Fixed an XML fragment loading problem (Bug #494)</li> |
| |
| </ul> |
| |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 2.7</h2> |
| |
| <ul> |
| |
| <li>Added 64-bit configurations to the VC++ project files (STR #129)</li> |
| |
| <li>Fixed conformance of mxmldoc's HTML and CSS output.</li> |
| |
| <li>Added data accessor ("get") functions and made the mxml_node_t and |
| mxml_index_t structures private but still available in the Mini-XML |
| header to preserve source compatibility (STR #118)</li> |
| |
| <li>Updated the source headers to reference the Mini-XML license and its |
| exceptions to the LGPL2 (STR #108)</li> |
| |
| <li>Added a new mxmlFindPath() function to find the value node of a |
| named element (STR #110)</li> |
| |
| <li>Building a static version of the library did not work on Windows |
| (STR #112)</li> |
| |
| <li>The shared library did not include a destructor for the thread- |
| specific data key on UNIX-based operating systems (STR #103)</li> |
| |
| <li>mxmlLoad* did not error out on XML with multiple root nodes (STR |
| #101)</li> |
| |
| <li>Fixed an issue with the _mxml_vstrdupf function (STR #107)</li> |
| |
| <li>mxmlSave* no longer write all siblings of the passed node, just that |
| node and its children (STR #109)</li> |
| |
| </ul> |
| |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 2.6</h2> |
| |
| <ul> |
| |
| <li>Documentation fixes (STR #91, STR #92)</li> |
| |
| <li>The mxmldoc program did not handle typedef comments properly (STR |
| #72)</li> |
| |
| <li>Added support for "long long" printf formats.</li> |
| |
| <li>The XML parser now ignores BOMs in UTF-8 XML files (STR #89)</li> |
| |
| <li>The mxmldoc program now supports generating Xcode documentation |
| sets.</li> |
| |
| <li>mxmlSave*() did not output UTF-8 correctly on some platforms.</li> |
| |
| <li>mxmlNewXML() now adds encoding="utf-8" in the ?xml |
| directive to avoid problems with non-conformant XML parsers that assume |
| something other than UTF-8 as the default encoding.</li> |
| |
| <li>Wrapping was not disabled when mxmlSetWrapMargin(0) was called, and |
| "<?xml ... ?>" was always followed by a newline |
| (STR #76)</li> |
| |
| <li>The mxml.pc.in file was broken (STR #79)</li> |
| |
| <li>The mxmldoc program now handles "typedef enum name {} |
| name" correctly (STR #72)</li> |
| |
| </ul> |
| |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 2.5</h2> |
| |
| <ul> |
| |
| <li>The mxmldoc program now makes greater use of CSS and |
| supports a --css option to embed an alternate stylesheet.</li> |
| |
| <li>The mxmldoc program now supports --header and --footer |
| options to insert documentation content before and |
| after the generated content.</li> |
| |
| <li>The mxmldoc program now supports a --framed option to |
| generate framed HTML output.</li> |
| |
| <li>The mxmldoc program now creates a table of contents |
| including any headings in the --intro file when |
| generating HTML output.</li> |
| |
| <li>The man pages and man page output from mxmldoc did |
| not use "\-" for dashes (STR #68)</li> |
| |
| <li>The debug version of the Mini-XML DLL could not be |
| built (STR #65)</li> |
| |
| <li>Processing instructions and directives did not work |
| when not at the top level of a document (STR #67)</li> |
| |
| <li>Spaces around the "=" in attributes were not supported |
| (STR #67)</li> |
| |
| </ul> |
| |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 2.4</h2> |
| |
| <ul> |
| |
| <li>Fixed shared library build problems on HP-UX and Mac OS X.</li> |
| |
| <li>The mxmldoc program did not output argument descriptions |
| for functions properly.</li> |
| |
| <li>All global settings (custom, error, and entity callbacks |
| and the wrap margin) are now managed separately for each |
| thread.</li> |
| |
| <li>Added mxmlElementDeleteAttr() function (STR #59)</li> |
| |
| <li>mxmlElementSetAttrf() did not work (STR #57)</li> |
| |
| <li>mxmlLoad*() incorrectly treated declarations as parent |
| elements (STR #56)</li> |
| |
| <li>mxmlLoad*() incorrectly allowed attributes without |
| values (STR #47)</li> |
| |
| <li>Fixed Visual C++ build problems (STR #49)</li> |
| |
| <li>mxmlLoad*() did not return NULL when an element |
| contained an error (STR #46)</li> |
| |
| <li>Added support for the apos character entity (STR |
| #54)</li> <li>Fixed whitespace detection with Unicode |
| characters (STR #48)</li> |
| |
| <li>mxmlWalkNext() and mxmlWalkPrev() did not work correctly |
| when called with a node with no children as the top node |
| (STR #53)</li> |
| |
| </ul> |
| |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 2.3</h2> |
| |
| <ul> |
| |
| <li>Added two exceptions to the LGPL to support static |
| linking of applications against Mini-XML</li> |
| |
| <li>The mxmldoc utility can now generate man pages, |
| too.</li> |
| |
| <li>Added a mxmlNewXML() function</li> |
| |
| <li>Added a mxmlElementSetAttrf() function (STR #43)</li> |
| |
| <li>Added a snprintf() emulation function for the test |
| program (STR #32)</li> |
| |
| <li>Added the _CRT_SECURE_NO_DEPRECATE definition when |
| building on VC++ 2005 (STR #36)</li> |
| |
| <li>mxmlLoad*() did not detect missing > characters in |
| elements (STR #41)</li> |
| |
| <li>mxmlLoad*() did not detect missing close tags at the |
| end of an XML document (STR #45)</li> |
| |
| <li>Added user_data and ref_count members to mxml_node_t |
| structure</li> |
| |
| <li>Added mxmlReleaseNode() and mxmlRetainNode() APIs for |
| reference-counted nodes</li> |
| |
| <li>Added mxmlSetWrapMargin() to control the wrapping of |
| XML output</li> |
| |
| <li>Added conditional check for EINTR error code for |
| certain Windows compilers that do not define it (STR |
| #33)</li> |
| |
| <li>The mxmldoc program now generates correct HTML 4.0 |
| output - previously it generated invalid XHTML</li> |
| |
| <li>The mxmldoc program now supports "@deprecated@, |
| "@private@", and "@since version@" comments</li> |
| |
| <li>Fixed function and enumeration type bugs in |
| mxmldoc</li> |
| |
| <li>Fixed the XML schema for mxmldoc</li> |
| |
| <li>The mxmldoc program now supports --intro, --section, |
| and --title options</li> |
| |
| <li>The mxmlLoad*() functions could leak a node on an |
| error (STR #27)</li> |
| |
| <li>The mxml_vsnprintf() function could get in an |
| infinite loop on a buffer overflow (STR #25)</li> |
| |
| <li>Added new mxmlNewCDATA() and mxmlSetCDATA() functions |
| to create and set CDATA nodes, which are really just |
| special element nodes</li> |
| |
| <li>Added new MXML_IGNORE type and MXML_IGNORE_CB |
| callback to ignore non-element nodes, e.g. |
| whitespace</li> |
| |
| <li>mxmlLoad*() did not treat custom data as opaque, so |
| whitespace characters would be lost</li> |
| |
| </ul> |
| |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 2.2.2</h2> |
| |
| <ul> |
| |
| <li>mxmlLoad*() did not treat custom data as opaque, so |
| whitespace characters would be lost.</li> |
| |
| </ul> |
| |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 2.2.1</h2> |
| |
| <ul> |
| |
| <li>mxmlLoadFd(), mxmlLoadFile(), and mxmlLoadString() |
| now correctly return NULL on error (STR #21)</li> |
| |
| <li>mxmlNewInteger(), mxmlNewOpaque(), mxmlNewReal(), |
| mxmlNewText(), and mxmlNewTextf() incorrectly required a |
| parent node (STR #22)</li> |
| |
| <li>Fixed an XML output bug in mxmldoc.</li> |
| |
| <li>The "make install" target now uses the install |
| command to set the proper permissions on |
| UNIX/Linux/OSX.</li> |
| |
| <li>Fixed a MingW/Cygwin compilation problem (STR |
| #18)</li> |
| |
| </ul> |
| |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 2.2</h2> |
| |
| <ul> |
| |
| <li>Added shared library support (STR #17)</li> |
| |
| <li>mxmlLoad*() now returns an error when an XML stream |
| contains illegal control characters (STR #10)</li> |
| |
| <li>mxmlLoad*() now returns an error when an element |
| contains two attributes with the same name in |
| conformance with the XML spec (STR #16)</li> |
| |
| <li>Added support for CDATA (STR #14, STR #15)</li> |
| |
| <li>Updated comment and processing instruction handling - |
| no entity support per XML specification.</li> |
| |
| <li>Added checking for invalid comment termination ("--->" |
| is not allowed)</li> |
| |
| </ul> |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 2.1</h2> |
| |
| <ul> |
| |
| <li>Added support for custom data nodes (STR #6)</li> |
| |
| <li>Now treat UTF-8 sequences which are longer than |
| necessary as an error (STR #4)</li> |
| |
| <li>Fixed entity number support (STR #8)</li> |
| |
| <li>Fixed mxmlLoadString() bug with UTF-8 (STR #7)</li> |
| |
| <li>Fixed entity lookup bug (STR #5)</li> |
| |
| <li>Added mxmlLoadFd() and mxmlSaveFd() functions.</li> |
| |
| <li>Fixed multi-word UTF-16 handling.</li> |
| |
| </ul> |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 2.0</h2> |
| |
| <ul> |
| |
| <li>New programmers manual.</li> |
| |
| <li>Added Visual C++ project files for Microsoft Windows |
| users.</li> |
| |
| <li>Added optimizations to mxmldoc, mxmlSaveFile(), and |
| mxmlIndexNew() (STR #2)</li> |
| |
| <li>mxmlEntityAddCallback() now returns an integer |
| status (STR #2)</li> |
| |
| <li>Added UTF-16 support (input only; all output is |
| UTF-8)</li> |
| |
| <li>Added index functions to build a searchable index of |
| XML nodes.</li> |
| |
| <li>Added character entity callback interface to support |
| additional character entities beyond those defined in |
| the XHTML specification.</li> |
| |
| <li>Added support for XHTML character entities.</li> |
| |
| <li>The mxmldoc utility now produces XML output which |
| conforms to an updated XML schema, described in the file |
| "doc/mxmldoc.xsd".</li> |
| |
| <li>Changed the whitespace callback interface to return |
| strings instead of a single character, allowing for |
| greater control over the formatting of XML files written |
| using Mini-XML. THIS CHANGE WILL REQUIRE CHANGES TO |
| YOUR 1.x CODE IF YOU USE WHITESPACE CALLBACKS.</li> |
| |
| <li>The mxmldoc utility now produces XML output which |
| conforms to an updated XML schema, described in the file |
| "doc/mxmldoc.xsd".</li> |
| |
| <li>Changed the whitespace callback interface to return |
| strings instead of a single character, allowing for |
| greater control over the formatting of XML files written |
| using Mini-XML. THIS CHANGE WILL REQUIRE CHANGES TO |
| YOUR 1.x CODE IF YOU USE WHITESPACE CALLBACKS.</li> |
| |
| <li>The mxmldoc utility is now capable of documenting C++ |
| classes, functions, and structures, and correctly |
| handles C++ comments.</li> |
| |
| <li>Added new modular tests for mxmldoc.</li> |
| |
| <li>Updated the mxmldoc output to be more compatible with |
| embedding in manuals produced with HTMLDOC.</li> |
| |
| <li>The makefile incorrectly included a "/" separator |
| between the destination path and install path. This |
| caused problems when building and installing with |
| MingW.</li> |
| |
| </ul> |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 1.3</h2> |
| |
| <ul> |
| |
| <li>Fixes for mxmldoc.</li> |
| |
| <li>Added support for reading standard HTML entity names.</li> |
| |
| <li>mxmlLoadString/File() did not decode character |
| entities in element names, attribute names, or |
| attribute values.</li> |
| |
| <li>mxmlLoadString/File() would crash when loading non- |
| conformant XML data under an existing parent (top) |
| node.</li> |
| |
| <li>Fixed several bugs in the mxmldoc utility.</li> |
| |
| <li>Added new error callback function to catch a variety |
| of errors and log them to someplace other than stderr.</li> |
| |
| <li>The mxmlElementSetAttr() function now allows for NULL |
| attribute values.</li> |
| |
| <li>The load and save functions now properly handle quoted |
| element and attribute name strings properly, e.g. for |
| !DOCTYPE declarations.</li> |
| |
| </ul> |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 1.2</h2> |
| |
| <ul> |
| |
| <li>Added new "set" methods to set the value of a node.</li> |
| |
| <li>Added new formatted text methods mxmlNewTextf() and |
| mxmlSetTextf() to create/set a text node value using |
| printf-style formats.</li> |
| |
| <li>Added new standard callbacks for use with the mxmlLoad |
| functions.</li> |
| |
| <li>Updated the HTML documentation to include examples of |
| the walk and load function output.</li> |
| |
| <li>Added --with/without-ansi configure option to control |
| the strdup() function check.</li> |
| |
| <li>Added --with/without-snprintf configure option to |
| control the snprintf() and vsnprintf() function |
| checks.</li> |
| |
| </ul> |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 1.1.2</h2> |
| |
| <ul> |
| |
| <li>The mxml(3) man page wasn't updated for the string |
| functions.</li> |
| |
| <li>mxmlSaveString() returned the wrong number of |
| characters.</li> |
| |
| <li>mxml_add_char() updated the buffer pointer in the |
| wrong place.</li> |
| |
| </ul> |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 1.1.1</h2> |
| |
| <ul> |
| |
| <li>The private mxml_add_ch() function did not update the |
| start-of-buffer pointer which could cause a crash when |
| using mxmlSaveString().</li> |
| |
| <li>The private mxml_write_ws() function called putc() |
| instead of using the proper callback which could cause |
| a crash when using mxmlSaveString().</li> |
| |
| <li>Added a mxmlSaveAllocString() convenience function for |
| saving an XML node tree to an allocated string.</li> |
| |
| </ul> |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 1.1</h2> |
| |
| <ul> |
| |
| <li>The mxmlLoadFile() function now uses dynamically |
| allocated string buffers for element names, attribute |
| names, and attribute values. Previously they were |
| capped at 16383, 255, and 255 bytes, respectively.</li> |
| |
| <li>Added a new mxmlLoadString() function for loading an |
| XML node tree from a string.</li> |
| |
| <li>Added a new mxmlSaveString() function for saving an |
| XML node tree to a string.</li> |
| |
| <li>Add emulation of strdup() if the local platform does |
| not provide the function.</li> |
| |
| </ul> |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 1.0</h2> |
| |
| <ul> |
| |
| <li>The mxmldoc program now handles function arguments, |
| structures, unions, enumerations, classes, and |
| typedefs properly.</li> |
| |
| <li>Documentation provided via mxmldoc and more in-line |
| comments in the code.</li> |
| |
| <li>Added man pages and packaging files.</li> |
| |
| </ul> |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 0.93</h2> |
| |
| <ul> |
| |
| <li>New mxmldoc example program that is also used to |
| create and update code documentation using XML and |
| produce HTML reference pages.</li> |
| |
| <li>Added mxmlAdd() and mxmlRemove() functions to add and |
| remove nodes from a tree. This provides more |
| flexibility over where the nodes are inserted and |
| allows nodes to be moved within the tree as needed.</li> |
| |
| <li>mxmlLoadFile() now correctly handles comments.</li> |
| |
| <li>mxmlLoadFile() now supports the required "gt", "quot", |
| and "nbsp" character entities.</li> |
| |
| <li>mxmlSaveFile() now uses newlines as whitespace |
| when valid to do so.</li> |
| |
| <li>mxmlFindElement() now also takes attribute name and |
| attribute value string arguments to limit the search |
| to specific elements with attributes and/or values.</li> |
| NULL pointers can be used as "wildcards".</li> |
| |
| <li>Added uninstall target to makefile, and auto-reconfig |
| if Makefile.in or configure.in are changed.</li> |
| |
| <li>mxmlFindElement(), mxmlWalkNext(), and mxmlWalkPrev() |
| now all provide "descend" arguments to control whether |
| they descend into child nodes in the tree.</li> |
| |
| <li>Fixed some whitespace issues in mxmlLoadFile().</li> |
| |
| <li>Fixed Unicode output and whitespace issues in |
| mxmlSaveFile().</li> |
| |
| <li>mxmlSaveFile() now supports a whitespace callback to |
| provide more human-readable XML output under program |
| control.</li> |
| |
| </ul> |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 0.92</h2> |
| |
| <ul> |
| |
| <li>mxmlSaveFile() didn't return a value on success.</li> |
| |
| </ul> |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 0.91</h2> |
| |
| <ul> |
| |
| <li>mxmlWalkNext() would go into an infinite loop.</li> |
| |
| </ul> |
| |
| <h2 _hd_omit_toc>Changes in Mini-XML 0.9</h2> |
| |
| <ul> |
| |
| <li>Initial public release.</li> |
| |
| </ul> |
| |
| </body> |
| </html> |