1#====================================================================# 2# The release file for Sablotron # 3#====================================================================# 4 5Version 1.0.3 6June 26, 2006 7------------- 8 - added dyn:evaluate() EXSLT function to evaluate strings 9 as XPath expressions 10 - fixed segfault when stylesheet import fails 11 [patch by Adam Dickmeiss] 12 - user-defined scheme URIs no more encoded 13 [patch by Adam Dickmeiss] 14 - fixed a bug in sabcmd.cpp for Sun One Studio 8 Compiler 15 [patch by Martin Adolfsson] 16 17Version 1.0.2 18December 29, 2004 19----------------- 20 - fixed a bug in declarations of namespaces 21 during serialization 22 - minor fixes for gcc 3.4.x 23 - fixed mistakes in error messages 24 25Version 1.0.1 26November 24, 2003 27----------------- 28 - minor changes to configure (snprintf tested) 29 - fixed a bug of wrong error line numbers in imported or 30 included template 31 - fixed a bug of count() function argument casting 32 - misplaced xsl:import no more processed 33 [reported by Bob Kline] 34 - fixed a bug of crashing current() [reported by Alex Greg] 35 - fixed a bug in DOM (inserting child nodes) 36 - fixed a bug of pointers sized differently from boolean on 37 64-bit platforms 38 39Version 1.0 40August 8, 2003 41--------------- 42 - two flags SAB_DUMP_SHEET_STRUCTURE (0x40) and 43 SAB_NO_EXTERNAL_ENTITIES (0x80) added 44 - nested xsl:attribute reported as error 45 - > is always escaped to prevent problems with CDATA end 46 - new configurable set of makefiles for Windows MSVC++ has been 47 created to replace existing Makefile.nt file 48 [by Rosimildo daSilva, patch by Bob Kline] 49 - fixed a type comparison failing on arm, powerpc and s390 50 [reported by Debian maintainers] 51 - fixed a bug of default NS in imported/included templates 52 - fixed a segfault in keys defined on empty nodes 53 [reported by Simon Spanihel] 54 - minor changes to compile under QNX 6.2 55 [patch by Adrian Weiler] 56 - fixed a bug of nested imports [reported by Dave Brooks] 57 - fixed a bug of UTF-16 encoded files on Win 58 [reported by Andrey Sokolov] 59 - fixed a bug of defenition check in shandler.h for Borland 60 compilers [reported by Vladimir Lukianov] 61 - fixed a bug of crashing sorting on Windows 62 - fixed a bug of crashing key() on RTF 63 [reported by Valeriy Ovechkin] 64 - solved the issue of too many files open with exsl:document 65 - fixed a bug of casting of 64-bit pointers to (int) 66 [patch by Steve Crockett] 67 - fixed a bug absolute paths starting with a drive letter on 68 Windows (unsupported scheme is reported) 69 - fixed a bug of SDOM_DestroyDocument 70 71Version 0.98 72April 7, 2003 73------------- 74 - added stylesheet chaining to sabcmd [by Stefan Behnel] 75 - changes in XML::Sablotron (new layout, added DOMHandler SXP 76 interface) [by Nicolas Trebst and Anselm Kruis] 77 - fixed a bug of variables bound for SXP queries 78 - fixed a bug of the self axis (principal node type) 79 - fix for Metrowerks C/C++ compiler [suggested by Tim Crook] 80 - fixed a bug of forbidden XPath (child::xxx@yyy) 81 - configuration fixes (APIDOC docs are built only when 82 Perl/XML::Parser found) 83 - fixed defaults for xsl:number 84 - fixed a bug of required order of top-level variables 85 - fixes in the outputting of NS declarations 86 - fixes in the import precedence [report by Roy Huggins] 87 - added a new config switch for sabcmd to abort on XSLT error 88 (--enable-abort-on-error) 89 - fixed a bug in namespace-alias 90 - fixed segfault occurring when formating big numbers (>1e127) 91 - fixed comparison of char to 0 for unsigned-char platforms 92 93Version 0.97 94December 30, 2002 95----------------- 96 - fixed the problem with Expat 1.95.5 97 - fixed a bug in xsl:message [report by Bob Kline] 98 - fixed an infinite loop bug in recursive imports 99 [report by Michael Vladimirov] 100 - added SablotGetOptions() function 101 - added a new option (SAB_FILES_TO_HANDLER) to pass the 'file' 102 URIs to the scheme handler 103 - fixed collisions with PHP/Java extension, Arena* renamed to 104 SabArena [suggested by Christian Stocker] 105 - mapping of namespaces added to xql() function (DOM) 106 - chars illegal in output encoding displayed as references 107 (for xml, html, xhtml output methods) 108 - fixed resolution of relative URIs in document() 109 - fixed a bug of not overridden imported parameters 110 - documentation sources (APIDOC XML) added to distribution 111 112Version 0.96 113September 5, 2002 114----------------- 115 - XSLT debugger implemented (sabcmd --debugger) 116 - API fixes for PHP extension 117 - log() function added to write to Sablot's log from JS scripts 118 - conflicts of top-level elements (variable, key, script) 119 initializations resolved 120 - fixed xslt_process buffer overflow 121 - fixed a bug of duplicate NS qualified attributes 122 - minor SXP bug fixes [using patches by Tim Crook] 123 - fixed a bug of the 'mod' operator [report by Jork Behrends] 124 - fixed a bug of sorting with multiple keys [report by Jork Behrends] 125 - fixed a bug of comparison [report by Jork Behrends] 126 - DOM: fixed a bug of the default XML namespace 127 [report by Albert Micheev] 128 - DOM: fixed a bug of PIs [report by Albert Micheev] 129 - improved configuration [by Melvyn Sopacua] 130 - fragment identifiers allowed in document() for custom 131 schemes [report by Bob Kline] 132 133Version 0.95 134June 24, 2002 135------------- 136 - DOM support upgraded to DOM Level2 137 - xsl:strip-space and xsl:preserve-space implemented 138 - XSLT on external documents (accessed via callbacks) 139 - esxlt:document instruction implemented 140 - unparsed-entity-uri() function implemented 141 - added a manual page for sabcmd 142 - added a batch mode (multiple sources/stylesheets) 143 for sabcmd [by Stefan Behnel] 144 - added a system property to display version 145 - added a flag for document() to return an empty node-set when 146 it refers to non-existing document 147 - fixed a bug in relative paths to ext. entities 148 - fixed a sorting bug on Solaris 149 - fixed matching precedence for processing-instruction('lit') 150 - fixed a bug in xsl:decimal-format/format-number() 151 - fixed a bug in string() - comments excluded 152 - fixed a bug of RTFs in xsl:attribute (comment, pi) 153 - fixed a bug of generate-id for multiple documents 154 - various minor fixes 155 156Version 0.90 157March 8, 2002 158------------- 159 - xsl:import implemented 160 - fixed a bug in boolean expressions with nodesets 161 [reported by John Holland] 162 - current() implementation redesigned 163 - variables not allowed in 'match' attributes of templates 164 - fixed a bug in attribute value escaping [Christian Lefebvre] 165 - fixed a bug in ext. entities base URI [Christian Lefebvre] 166 - fixed a bug in sabcmd --base option [Christian Lefebvre] 167 - span not indented with html method 168 - processing-instruction() node test allows literal arguments 169 - only top-level variables and params visible in xsl:attribute-set 170 - fixed a bug in xsl:number 171 - fixed a bug in master situation cleanup 172 [patch proposed by Bill Hofmann and Bob Kline] 173 - fixed a bug in error reports from included files 174 - correct name of element, attribute and pi is checked 175 176Version 0.82 177January 30, 2002 178---------------- 179 - fixed the text output method 180 (nothing but text nodes are outputted) 181 - SCRIPT and STYLE escaped for xhtml 182 - fixed a bug in escaping attributtes (src, href) 183 - fixed a bug in aliasing doctype declaration 184 - fixed bugs related to Sun CC compiler [Tim Crook, Greg Cope] 185 - fixed a memory management bug [Tim Crook] 186 187Version 0.81 188January 16, 2002 189---------------- 190 - PUBLIC URLs in doctypes and ext. entities not parsed 191 by default (SAB_PARSE_PUBLIC_ENTITIES situation option) 192 - non-xsl elements allowed inside xsl:stylesheet 193 - xsl attributes not outputted anymore 194 - xsl:namespace-alias translates attributes as well 195 - content of SCRIPT and STYLE not escaped for html/xhtml 196 - Boolean attributes are abbreviated for html output method 197 198Version 0.80 199January 8, 2002 200--------------- 201 - implemented extensions (JavaScript functions + DOM, 202 extension-element-prefixes, xsl:fallback, function-available(), 203 element-available()) 204 - fixed a bux in the 'following' axis 205 - fixed current() assertion fault 206 - fixed "META tag placed outside HEAD" bug 207 - fixed a bug in abbreviated [position] expression in 208 template 'match' attribute 209 - implemented lang () function 210 - added 'namespace' attribute of xsl:element 211 - implemented 'exclude-result-prefixes' 212 - implemented xsl:attribute-set and 'use-attribute-sets' 213 - added 'namespace' attribute of xsl:attribute 214 - fixed translate() bug 215 - key() now works with document() 216 - fixed short stylesheet notation output bugs 217 - added use-attribute-sets attribute to xsl:copy 218 - minor bugs fixed 219 220Version 0.71 221November 5, 2001 222---------------- 223 - sum() bug fixed 224 - fixed a Solaris problem with key() [report by Archie Russell] 225 - SXP minor bugs fixed 226 - implemented axes 'following' and 'preceding' 227 - added an SXP callback for id() and a 'user data' pointer for 228 some callbacks 229 - fixed a namespace bug in SXP 230 - improved error messages 231 - fixed a bug in parsing external files [reported by Tim Crook] 232 - fixed a bug of current() in inner context() 233 [reported by Ian Davis] 234 - fixed a bug of calling XSLT instructions inside xsl:text 235 - fixed a SablorRunProcessorGen assertion bug 236 - fixed a scheme handler bug [reported by Tim Crook] 237 238Version 0.70 239September 17, 2001 240------------------ 241 - added Sablotron XPath processor 242 - implemented xsl:key and key() 243 - implemented format-number() and xsl:decimal-format 244 - implemented xsl:number 245 - fixed namespace treatment in the DOM part 246 - the string functions now work correctly with non-ASCII text 247 [fix partly by Christian Lefebvre] 248 - fixed a bug in the DOM interface 249 - fixes for BeOS [Gabe Bauman] 250 251Version 0.65 252August 15, 2001 253--------------- 254 - improved HTML indentation 255 - fixed bug causing output of XML declaration when method='text' 256 [reported by Jason Dumler] 257 - parameter entities are always parsed 258 - xml declaration ends with ?> using HTML method 259 - > is escaped in HTML 260 - fixed the RTF serialization [report by Christian Lefebvre] 261 - fixed the non-ASCII character escaping in URIs 262 - changed SDOM_xql so it uses namespace declarations on the 263 document element 264 - a few more minor bug fixes 265 266Version 0.60 267June 13, 2001 268------------- 269 - implemented a subset of DOM level 1 (see sdom.h) 270 - added sdom.cpp and sdom.h to the project 271 - new interface methods for Sablotron (preferred use) 272 SablotRunProcessorGen, SablotAddArgTree, SablotAddArgBuffer 273 SablotAddParam 274 - added a simple support of <xsl:output indent> 275 - fixed a namespace node name bug [report by A. Nuzhdov] 276 - added support for parametr entities [suggested by Peter Blum] 277 - fixed a bug related to evaluation of arithmetic 278 expressions [reported by Sam Brauer] 279 - fixed a minor bug related to the xhtml output method 280 281Version 0.52 282March 29, 2001 283-------------- 284 285 - added support for encoding conversions using iconv 286 - all memory leaks occuring on processing errors are fixed 287 [thanks for project support to Mitel Networks Corporation] 288 - fixed the "duplicit attribute error" bug [Marc Lehmann] 289 - fixed a bug in context evaluation [reported by Marco Guazzone] 290 - fixed several bugs related to the hash table [Tom Moog] 291 292Version 0.51 293------------ 294 - a maintenance release 295 - fixed the quoting of quotes in HTML output [patch by Mark Bartel]. 296 - fixes by Tim Crook for AIX 297 - Sablot runs even without wcsxfrm() or wchar.h (although 298 it doesn't sort) 299 - the problem with the type of an iconv() call argument is fixed 300 - added support for the xhtml output method [Marc Lehmann] 301 - fixed bug causing elements being output as <:x> [Andreas Buschmann] 302 - xsl:sort works if wcsxfrm() is not present (sorts naively though) 303 304Version 0.50 305------------ 306 - added match predicate optimization 307 - added proper character class handling [patch by Marc Lehmann] 308 - fixed a bug in last() [reported by Dirk Siebnich] 309 - fixed a problem with empty NS decls [reported by S. Tryggvason] 310 - added SablotSetEncoding(). 311 - fixed an error with xml:lang [reported by Nicolas Sauret] 312 - fixed the 'divide by zero' MSVC warning [suggestion by Dirk Siebnich] 313 - added support for xsl:sort 314 - fixed an expression parsing error [report by Clayton Cottingham] 315 - fixed a bug in current() [report by Daniel Hammond] 316 - minor fix for RedHat 7 [David Hedbor] 317 - fixed another bug in translate() 318 - fixed a bug related to starts-with() [reported by Myoungki Kim] 319 - fixed top-level elements check 320 321Version 0.44 322------------ 323 - Fixed an elusive bug in HashTable causing occassional crashes 324 - Added the namespace-alias() and message() functions 325 [patch by Major] 326 - More fixes related to: XML namespace declarations, nested 327 stylesheet inclusion, Byte Order Mark in UTF-8 doc, 328 "SYSTEM" in DOCTYPE declaration, the preceding-sibling and 329 following-sibling axes, iconv. 330 - Patch for OpenBSD [Anil Madhavapeddy]. 331 332Version 0.43 333------------ 334 - Fundamental changes to improve performance. 335 - Added Latin2 input support [thanks to Matt Sergeant] 336 - Added Japanese encodings support [patch by Rui Hirokawa] 337 - Fixed treatment of NaNs etc. [based on patch by Robin Houston] 338 - Minor bug fixes. 339 - Added platform.cpp for platform-dependent code. 340 - Added code to generate the <META> tag when using the 341 html output method. 342 343Version 0.42 344------------ 345 - Sablotron is now thread-safe [thanks to Leo Yu]. 346 - Output recoding can be done if iconv is present [Sven Neumann]. 347 - Match predicates work. 348 - Several bug fixes [Robin Houston]. 349 - Added: 350 MiscHandler with documentInfo() 351 SablotSetBaseForScheme() 352 the current() function [Robin] 353 -The actual error code is returned from SablotProcess etc. 354 355Version 0.41 356------------ 357 - Sablotron now uses autoconf and works with an unmodified 358 copy of expat. Its layout is a bit different. 359 - Bug fix (reported by Kay Sievers). 360 361Version 0.4 362----------- 363 - The license was changed to MPL+GPL. 364 - Output conformance improved considerably (proper escaping 365 etc.). 366 - A SAX interface to the result document is available so one 367 can bypass the construction to the result tree. 368 - Some changes to the Sablotron interface. 369 - Implemented <xsl:output>, <xsl:comment>, 370 <xsl:processing-instruction>. 371 - External general entities work now. 372 - Bug fixes (thanks for reports and/or patches to Hans Raaf, 373 Florian Hars, <robin@kitsite.com>, Mark W. Eichin and 374 Robin Berjon). 375 - Performance improvements. 376 377Version 0.36 378------------ 379 - optimized string handling, resulting in a significant 380 performance improvement 381 - implemented <xsl:copy> 382 383Version 0.35 384------------ 385 - fixed a bug concerning the descendant axis, reported by Les 386 Woolsey 387 - included the Solaris port (patch contributed by Steven Rowe) 388 - added SablotSetLog() for setting the log file. Turned 389 logging off by default. 390 - added SablotRegMessageHandler() for setting a message 391 handler. Using this, you can handle all error/warning/log 392 messages the way you like. 393 - if the xsl prefix is bound to an obsolete URI, a warning is 394 issued 395 - added SablotProcessStringsWithBase() which makes it possible 396 to override the stylesheet's physical URI with a 'hard base 397 URI' 398 - added some command-line switches to sabcmd, e.g. --log-file 399 and --measure 400 401Version 0.34 402------------ 403 - bug fixes 404 - major memory leak fixes 405 406Version 0.33 407------------ 408CVS: tag SABLOT_0_33 (tom, main trunk) 409 - this release log started 410 - first major release following Sablotron 0.3 411 - added URI processing with relative URI resolution 412 - added support for the arg: scheme (named buffers) 413 - added support for passing global parameters 414 - introduced the SablotProcess() function as a general interface 415 - sabcmd can pass named buffers as well as the global params 416 - added a lot of core library functions 417