diff options
| -rw-r--r-- | docs/manual.qbk | 71 | 
1 files changed, 71 insertions, 0 deletions
| diff --git a/docs/manual.qbk b/docs/manual.qbk index a17a6f5..6e704c8 100644 --- a/docs/manual.qbk +++ b/docs/manual.qbk @@ -7,6 +7,24 @@      [license Distributed under the MIT License]  ] +[/ documentation todo +cpp file merge (look for pugixpath.cpp, update screenshots) +PUGIXML_NO_EXCEPTIONS support (+ xpath_parse_result, + xpath_query bool cast, + xpath_parse_result in xpath_exception for better error handling, + std::bad_alloc throwing in evaluate + xpath exception throwing in evaluate_node_set (always throw xpath_exception?)) +PUGIXML_NO_STL support +variables support (+ select_nodes/select_single_node additional arg) +Introduced new xpath_query::evaluate_string, which works without STL +Introduced new xpath_node_set constructor (from an iterator range) +Evaluation function now accept attribute context nodes +All internal allocations use custom allocation functions +Improved error reporting; now a last parsed offset is returned together with the parsing error +Fixed custom deallocation function calling with null pointer in one case (state explicitly that custom dealloc is never called with NULL) +CDATA nodes containing ]]> are printed as several nodes; while this changes the internal structure, this is the only way to escape CDATA contents +Added xml_parse_result default constructor +Added xml_document::load_file and xml_document::save_file with wide character paths +Added as_utf8 and as_wide overloads for std::wstring/std::string arguments +xml_node::root() and xml_node::offset_debug() are now O(1) instead of O(logN) +] +  [template sbr[]'''<sbr/>''']  [template lbr[]'''<sbr/><sbr/>'''] [/ for empty lines in lists]  [template file[name]'''<filename>'''[name]'''</filename>'''] @@ -1447,6 +1465,59 @@ Some of these incompatibilities will be fixed in version 1.0.  [section:changes Changelog] +[h5 1.11.2010 - version 1.0] + +Major release, featuring many XPath enhancements, wide character filename support, miscellaneous performance improvements, bug fixes and more. + +* XPath: +    # XPath implementation is moved to pugixml.cpp (which is the only source file now); use PUGIXML_NO_XPATH if you want to disable XPath to reduce code size +    # XPath is now supported without exceptions (PUGIXML_NO_EXCEPTIONS); the error handling mechanism depends on the presence of exception support +    # XPath is now supported without STL (PUGIXML_NO_STL) +    # Introduced variable support +    # Introduced new xpath_query::evaluate_string, which works without STL +    # Introduced new xpath_node_set constructor (from an iterator range) +    # Evaluation function now accept attribute context nodes +    # All internal allocations use custom allocation functions +    # Improved error reporting; now a last parsed offset is returned together with the parsing error + +* Bug fixes: +    # Fixed memory leak for loading from streams with stream exceptions turned on +    # Fixed custom deallocation function calling with null pointer in one case +    # Fixed missing attributes for iterator category functions; all functions/classes can now be DLL-exported +    # Worked around Digital Mars compiler bug, which lead to minor read overfetches in several functions +    # load_file now works with 2+ Gb files in MSVC/MinGW +    # XPath: fixed memory leaks for incorrect queries +    # XPath: fixed xpath_node() attribute constructor with empty attribute argument +    # XPath: fixed lang() function for non-ASCII arguments + +* Specification changes: +    # CDATA nodes containing ]]> are printed as several nodes; while this changes the internal structure, this is the only way to escape CDATA contents +    # Memory allocation errors during parsing now preserve last parsed offset (to give an idea about parsing progress) +    # Added xml_parse_result default constructor +    # Added xml_document::load_file and xml_document::save_file with wide character paths +    # Added as_utf8 and as_wide overloads for std::wstring/std::string arguments + +* Performance improvements: +    # xml_node::root() and xml_node::offset_debug() are now O(1) instead of O(logN) +    # Minor parsing optimizations +    # Minor memory optimization for strings in DOM tree (set_name/set_value) +    # Memory optimization for string memory reclaiming in DOM tree (set_name/set_value now reallocate the buffer if memory waste is too big) +    # XPath: optimized document order sorting +    # XPath: optimized child/attribute axis step +    # XPath: optimized number-to-string conversions in MSVC +    # XPath: optimized concat for many arguments +    # XPath: optimized evaluation allocation mechanism: constant and document strings are not heap-allocated +    # XPath: optimized evaluation allocation mechanism: all temporaries' allocations use fast stack-like allocator + +* Compatibility: +    # Removed wildcard functions (xml_node::child_w, xml_node::attribute_w, etc.) +    # Removed xml_node::all_elements_by_name +    # Removed xpath_type_t enumeration; use xpath_value_type instead +    # Removed format_write_bom_utf8 enumeration; use format_write_bom instead +    # Removed xml_document::precompute_document_order, xml_attribute::document_order and xml_node::document_order functions; document order sort optimization is now automatic +    # Removed xml_document::parse functions and transfer_ownership struct; use xml_document::load_buffer_inplace and xml_document::load_buffer_inplace_own instead +    # Removed as_utf16 function; use as_wide instead +  [h5 1.07.2010 - version 0.9]  Major release, featuring extended and improved Unicode support, miscellaneous performance improvements, bug fixes and more. | 
