| Changes in version 1.0.1: |
| - Fixed comment tags which were outputing as '<?--' instead of |
| the correct '<!--'. |
| - Implemented the Next and Prev methods of the TiXmlAttribute class. |
| - Renamed 'LastAttribtute' to 'LastAttribute' |
| - Fixed bad pointer to 'isspace' that could occur while parsing text. |
| - Errors finding beginning and end of tags no longer throw it into an |
| infinite loop. (Hopefully.) |
| |
| Changes in version 1.0.2 |
| - Minor documentation fixes. |
| |
| Changes in version 1.0.3 |
| - After nodes are added to a document, they return a pointer |
| to the new node instead of a bool for success. |
| - Elements can be constructed with a value, which is the |
| element name. Every element must have a value or it will be |
| invalid, but the code changes to enforce this are not fully |
| in place. |
| |
| Changes in version 1.1.0 |
| - Added the TiXmlAttributeSet class to pull the attributes into |
| a seperate container. |
| - Moved the doubly liked list out of XmlBase. Now XmlBase only |
| requires the Print() function and defines some utility functions. |
| - Moved errors into a seperate file. (With the idea of internationalization |
| to the other latin-1 languages.) |
| - Added the "NodeType" |
| - Fixed white space parsing in text to conform with the standard. |
| Basically, all white space becomes just one space. |
| - Added the TiXmlDeclaration class to read xml declarations. |
| |
| Changes in version 1.2.0 |
| - Removed the factory. The factory was not really in the spirit |
| of small and simple, confused the code, and was of limited value. |
| - Added FirstChildElement and NextSiblingElement, because they |
| are such common functions. |
| - Re-wrote the example to test and demonstrate more functionality. |
| |
| Changes in version 1.2.1 |
| - Fixed a bug where comments couldn't be inside elements. |
| - Loading now clears out existing XML rather than appending. |
| - Added the "Clear" method on a node to delete all its children. |
| |
| Changes in version 1.2.2 |
| - Fixed TiXmlAttribute::Previous actually returning "next." Thanks |
| to Rickard Troedsson for the bug fix. |
| |
| Changes in version 1.2.3 |
| - Added the TIXML prefix to the error strings to resolve conflicts |
| with #defines in OS headers. Thanks to Steve Lhomme. |
| - Fixed a delete buf that should be a delete [] buf. |
| Thanks to Ephi Sinowitz. |
| |
| Changes in version 1.2.4 |
| - ReplaceChild() was almost guarenteed to fail. Should be fixed, |
| thanks to Joe Smith. Joe also pointed out that the Print() functions |
| should take stream references: I agree, and would like to overload |
| the Print() method to take either format, but I don't want to do |
| this in a dot release. |
| - Some compilers seem to need an extra <ctype.h> include. Thanks |
| to Steve Lhomme for that. |
| |
| Changes in version 2.0.0 BETA |
| - Made the ToXXX() casts safe if 'this' is null. |
| When "LoadFile" is called with a filename, the value will correctly get set. |
| Thanks to Brian Yoder. |
| - Fixed bug where isalpha() and isalnum() would get called with a negative value for |
| high ascii numbers. Thanks to Alesky Aksenov. |
| - Fixed some errors codes that were not getting set. |
| - Made methods "const" that were not. |
| - Added a switch to enable or disable the ignoring of white space. ( TiXmlDocument::SetIgnoreWhiteSpace() ) |
| - Greater standardization and code re-use in the parser. |
| - Added a stream out operator. |
| - Added a stream in operator. |
| - Entity support, of predefined entites. &#x entities are untouched by input or output. |
| - Improved text out formatting. |
| - Fixed ReplaceChild bug, thanks to Tao Chen. |
| |
| Changes in version 2.0.1 |
| - Fixed hanging on loading a 0 length file. Thanks to Jeff Scozzafava. |
| - Fixed crashing on InsertBeforeChild and InsertAfterChild. Also possibility of bad links being |
| created by same function. Thanks to Frank De prins. |
| - Added missing licence text. Thanks to Lars Willemsens. |
| - Added <ctype.h> include, at the suggestion of Steve Walters. |
| |
| Changes in version 2.1.0 |
| - Yves Berquin brings us the STL switch. The forum on SourceForge, and various emails to |
| me, have long debated all out STL vs. no STL at all. And now you can have it both ways. |
| TinyXml will compile either way. |
| |
| Changes in version 2.1.1 |
| - Compilation warnings. |
| |
| Changes in version 2.1.2 |
| - Uneeded code is not compiled in the STL case. |
| - Changed headers so that STL can be turned on or off in tinyxml.h |
| |
| Changes in version 2.1.3 |
| - Fixed non-const reference in API; now uses a pointer. |
| - Copy constructor of TiXmlString not checking for assignment to self. |
| - Nimrod Cohen found a truly evil bug in the STL implementation that occurs |
| when a string is converted to a c_str and then assigned to self. Search for |
| STL_STRING_BUG for a full description. I'm asserting this is a Microsoft STL |
| bug, since &string and string.c_str() should never be the same. Nevertheless, |
| the code works around it. |
| - Urivan Saaib pointed out a compiler conflict, where the C headers define |
| the isblank macro, which was wiping out the TiXmlString::isblank() method. |
| The method was unused and has been removed. |
| |
| Changes in version 2.1.4 |
| - Reworked the entity code. Entities were not correctly surving round trip input and output. |
| Will now automatically create entities for high ascii in output. |
| |
| Changes in version 2.1.5 |
| - Bug fix by kylotan : infinite loop on some input (tinyxmlparser.cpp rev 1.27) |
| - Contributed by Ivica Aracic (bytelord) : 1 new VC++ project to compile versions as static libraries (tinyxml_lib.dsp), |
| and an example usage in xmltest.dsp |
| (Patch request ID 678605) |
| - A suggestion by Ronald Fenner Jr (dormlock) to add #include <istream> and <ostream> for Apple's Project Builder |
| (Patch request ID 697642) |
| - A patch from ohommes that allows to parse correctly dots in element names and attribute names |
| (Patch request 602600 and kylotan 701728) |
| - A patch from hermitgeek ( James ) and wasteland for improper error reporting |
| - Reviewed by Lee, with the following changes: |
| - Got sick of fighting the STL/non-STL thing in the windows build. Broke |
| them out as seperate projects. |
| - I have too long not included the dsw. Added. |
| - TinyXmlText had a protected Print. Odd. |
| - Made LinkEndChild public, with docs and appropriate warnings. |
| - Updated the docs. |
| |
| 2.2.0 |
| - Fixed an uninitialized pointer in the TiXmlAttributes |
| - Fixed STL compilation problem in MinGW (and gcc 3?) - thanks Brian Yoder for finding this one |
| - Fixed a syntax error in TiXmlDeclaration - thanks Brian Yoder |
| - Fletcher Dunn proposed and submitted new error handling that tracked the row and column. Lee |
| modified it to not have performance impact. |
| - General cleanup suggestions from Fletcher Dunn. |
| - In error handling, general errors will no longer clear the error state of specific ones. |
| - Fix error in documentation : comments starting with "<?--" instead of "<!--" (thanks ion_pulse) |
| - Added the TiXmlHandle. An easy, safe way to browse XML DOMs with less code. |
| - Added QueryAttribute calls which have better error messaging. (Proposed by Fletcher Dunn) |
| - Nodes and attributes can now print themselves to strings. (Yves suggestion) |
| - Fixed bug where entities with one character would confuse parser. (Thanks Roman) |
| |
| 2.2.1 |
| - Additional testing (no more bugs found to be fixed in this release) |
| - Significant performance improvement to the cursor code. |
| |
| 2.3.0 |
| - User Data are now defined in TiXmlBase instead of TiXmlNode |
| - Character Entities are now UCS-2 |
| - Character Entities can be decimal or hexadecimal |
| - UTF-8 conversion. |
| - Fixed many, many bugs. |
| |
| 2.3.1 |
| - Fixed bug in handling nulls embedded in the input. |
| - Make UTF-8 parser tolerant of bad text encoding. |
| - Added encoding detection. |
| - Many fixes and input from John-Philip Leonard Johansson (JP) and Ellers, |
| including UTF-8 feedback, bug reports, and patches. Thanks! |
| - Added version # constants - a suggestion from JP and Ellers. |
| - [ 979180 ] Missing ; in entity reference, fix from Rob Laveaux. |
| - Copy constructors and assignment have been a long time coming. Thanks to |
| Fokke and JP. |
| |
| 2.3.2 |
| - Made the IsAlpha and IsAlphaNum much more tolerant of non-UTF-8 encodings. Thanks |
| Volker Boerchers for finding the issue. |
| - Ran the program though the magnificent Valgrind - http://valgrind.kde.org - to check |
| for memory errors. Fixed some minor issues. |
| |
| 2.3.3 |
| - Fixed crash when test program was run from incorrect directory. |
| - Fixed bug 1070717 - empty document not returned correctly - thanks Katsuhisa Yuasa. |
| - Bug 1079301 resolved - deprecated stdlib calls. Thanks Adrian Boeing. |
| - Bug 1035218 fixed - documentation errors. Xunji Luo |
| - Other bug fixes have accumulated and been fixed on the way as well; my apologies to |
| authors not credited! |
| - Big fix / addition is to correctly return const values. TinyXml could basically |
| remove const in a method like this: TiXmlElement* Foo() const, where the returned element |
| was a pointer to internal data. That is now: const TiXmlElement* Foo() const and |
| TiXmlElement* Foo(). |
| |
| 2.3.4 |
| - Fixed additional const errors, thanks Kent Gibson. |
| - Correctly re-enable warnings after tinyxml header. Thanks Cory Nelson. |
| - Variety of type cleanup and warning fixes. Thanks Warren Stevens. |
| - Cleaned up unneeded constructor calls in TinyString - thanks to Geoff Carlton and |
| the discussion group on sourceforge. |
| |
| 2.4.0 |
| - Improved string class, thanks Tyge Lovset (whose name gets mangled in English - sorry) |
| - Type cast compiler warning, thanks Rob van den Bogaard |
| - Added GetText() convenience function. Thanks Ilya Parniuk & Andrew Ellers for input. |
| - Many thanks to marlonism for finding an infinite loop in bad xml. |
| - A patch to cleanup warnings from Robert Gebis. |
| - Added ValueStr() to get the value of a node as a string. |
| - TiXmlText can now parse and output as CDATA |
| - Additional string improvement from James (z2895) |
| - Removed extraneous 'const', thanks David Aldrich |
| - First pass at switching to the "safe" stdlib functions. Many people have suggested and |
| pushed on this, but Warren Stevens put together the first proposal. |
| - TinyXml now will do EOL normalization before parsing, consistent with the W3C XML spec. |
| - Documents loaded with the UTF-8 BOM will now save with the UTF-8 BOM. Good suggestion |
| from 'instructor_' |
| - Ellers submitted his very popular tutorials, which have been added to the distribution. |
| |
| 2.4.1 |
| - Fixed CDATA output formatting |
| - Fixed memory allocators in TinyString to work with overloaded new/delete |
| |
| 2.4.2 |
| - solosnake pointed out that TIXML_LOG causes problems on an XBOX. The definition in the header |
| was superflous and was moved inside of DEBUG_PARSING |
| |
| 2.4.3 |
| - Fixed a test bug that caused a crash in 'xmltest'. TinyXML was fine, but it isn't good |
| to ship with a broken test suite. |
| - Started converting some functions to not cast between std::string and const char* |
| quite as often. |
| - Added FILE* versions of the document loads - good suggestion from Wade Brainerd |
| - Empty documents might not always return the errors they should. [1398915] Thanks to igor v. |
| - Added some asserts for multiply adding a node, regardng bug [1391937] suggested by Paco Arjonilla. |
| |
| 2.4.4 |
| - Bug find thanks to andre-gross found a memory leak that occured when a document failed to load. |
| - Bug find (and good analysis) by VirtualJim who found a case where attribute parsing |
| should be throwing an error and wasn't. |
| - Steve Hyatt suggested the QueryValueAttribute method, which is now implemented. |
| - DavidA identified a chunk of dead code. |
| - Andrew Baxter sent in some compiler warnings that were good clean up points. |
| |
| 2.5 |
| - Added the Visit() API. Many thanks to both Andrew Ellerton and John-Philip for all their |
| work, code, suggestion, and just general pushing that it should be done. |
| - Removed existing streaming code and use TiXmlPrinter instead. |
| - [ tinyxml-Bugs-1527079 ] Compile error in tinystr.cpp fixed, thanks to Paul Suggs |
| - [ tinyxml-Bugs-1522890 ] SaveFile has no error checks fixed, thanks to Ivan Dobrokotov |
| - Ivan Dobrokotov also reported redundant memory allocation in the Attribute() method, which |
| upon investigation was a mess. The attribute should now be fixed for both const char* and |
| std::string, and the return types match the input parameters. |
| - Feature [ 1511105 ] Make TiXmlComment constructor accept a string / char*, implemented. |
| Thanks to Karl Itschen for the feedback. |
| - [ 1480108 ] Stream parsing fails when CDATA contains tags was found by Tobias Grimm, who also |
| submitted a test case and patch. A significant bug in CDATA streaming (operator>>) has now |
| been fixed. |
| |
| 2.5.2 |
| - Lieven, and others, pointed out a missing const-cast that upset the Open Watcom compiler. |
| Should now be fixed. |
| - ErrorRow and ErrorCol should have been const, and weren't. Fixed thanks to Dmitry Polutov. |
| |
| 2.5.3 |
| - zloe_zlo identified a missing string specialization for QueryValueAttribute() [ 1695429 ]. Worked |
| on this bug, but not sure how to fix it in a safe, cross-compiler way. |
| - increased warning level to 4 and turned on detect 64 bit portability issues for VC2005. |
| May address [ 1677737 ] VS2005: /Wp64 warnings |
| - grosheck identified several problems with the Document copy. Many thanks for [ 1660367 ] |
| - Nice catch, and suggested fix, be Gilad Novik on the Printer dropping entities. |
| "[ 1600650 ] Bug when printing xml text" is now fixed. |
| - A subtle fix from Nicos Gollan in the tinystring initializer: |
| [ 1581449 ] Fix initialiser of TiXmlString::nullrep_ |
| - Great catch, although there isn't a submitter for the bug. [ 1475201 ] TinyXML parses entities in comments. |
| Comments should not, in fact, parse entities. Fixed the code path and added tests. |
| - We were not catching all the returns from ftell. Thanks to Bernard for catching that. |
| |
| 2.5.4 |
| - A TiXMLDocument can't be a sub-node. Block this from happening in the 'replace'. Thanks Noam. |
| - [ 1714831 ] TiXmlBase::location is not copied by copy-ctors, fix reported and suggested by Nicola Civran. |
| - Fixed possible memory overrun in the comment reading code - thanks gcarlton77 |
| |
| 2.5.5 |
| - Alex van der Wal spotted incorrect types (lf) being used in print and scan. robertnestor pointed out some problems with the simple solution. Types updated. |
| - Johannes Hillert pointed out some bug typos. |
| - Christian Mueller identified inconsistent error handling with Attributes. |
| - olivier barthelemy also reported a problem with double truncation, also related to the %lf issue. |
| - zaelsius came up with a great (and simple) suggestion to fix QueryValueAttribute truncating strings. |
| - added some null pointer checks suggested by hansenk |
| - Sami Väisänen found a (rare) buffer overrun that could occur in parsing. |
| - vi tri filed a bug that led to a refactoring of the attribute setting mess (as well as adding a missing SetDoubleAttribute() ) |
| - removed TIXML_ERROR_OUT_OF_MEMORY. TinyXML does not systematically address OOO, and the notion it does is misleading. |
| - vanneto, keithmarshall, others all reported the warning from IsWhiteSpace() usage. Cleaned this up - many thanks to everyone who reported this one. |
| - tibur found a bug in end tag parsing |
| |
| |
| 2.6.2 |
| - Switched over to VC 2010 |
| - Fixed up all the build issues arising from that. (Lots of latent build problems.) |
| - Removed the old, now unmaintained and likely not working, build files. |
| - Fixed some static analysis issues reported by orbitcowboy from cppcheck. |
| - Bayard 95 sent in analysis from a different analyzer - fixes applied from that as well. |
| - Tim Kosse sent a patch fixing an infinite loop. |
| - Ma Anguo identified a doc issue. |
| - Eddie Cohen identified a missing qualifier resulting in a compilation error on some systems. |
| - Fixed a line ending bug. (What year is this? Can we all agree on a format for text files? Please? ...oh well.) |
| |