1Revision history for Perl extension XML::Parser. 2 32.33 4 - Fixed Tree style (grantm) 5 - Fixed some non-utf8 stuff in DTDs (patch in XML::DOM tarball) 6 72.32 8 - Memory leak fix (Juerd Waalboer). 9 - Added windows-1252 encoding 10 - Styles moved to separate .pm files to make loading faster and 11 ease maintainence 12 - Don't load IO::Handle unless we really need to 13 142.31 Tue Apr 2 13:39:51 EST 2002 15 - Ilya Zakharevich <ilya@math.ohio-state.edu> and 16 Dave Mitchell <davem@fdgroup.com> both provided patches to 17 fix problems module had with 5.8.0 18 - Dave Mitchell also made some UTF-8 related fixes to the test suite. 192.30 Thu Oct 5 12:47:36 EDT 2000 20 - Get rid of ContentStash global. Not that big a deal looking it up 21 everytime and gets rid of a potential threading problem. 22 - Switch to shareable library version of expat from sourceforge 23 (i.e. no longer include expat source and require that libexpat 24 be installed) 25 - Bob Tribit <btribit@traffic.com> demonstrated a fix for problems 26 in compiling under perl 5.6.0 with 5.005 threading. 27 - Matt Sergeant <matt@sergeant.org> discovered a typo ('IO::Handler' 28 instead of 'IO::Handle') in Expat.pm that caused IO::Handle objects 29 to be treated as strings instead of handles. 30 - Matt Sergeant also provided a patch to allow tied handles to work 31 properly in calls to parse. 32 - Eric Bohlman <ebohlman@netcom.com> reported a failure when 33 incremental parsing and external parsing were used together. 34 Need to give explicit package when calling Do_External_Parse 35 from externalEntityRef otherwise fails when called through ExpatNB. 362.29 Sun May 21 21:19:45 EDT 2000 37 - In expat, notation declaration handler registration wasn't 38 surviving through external entity references. 39 - Chase Tingley <tingley@sundell.net> discovered that text 40 accumulation in the Stream style wasn't working across processing 41 instructions and recommended the appropriate fix. 42 - Jochen Wiedmann <jochen.wiedmann@softwareag.com>, noted that 43 you couldn't use ExpatNB directly because it wasn't setting 44 the protective _State_ variable. Now doing this in the 45 parse_more method of ExpatNB. 46 - At the suggestion of Grant Hopwood <hopwoodg@valero.com>, now 47 calling the env_proxy method on the LWP::UserAgent in the LWP 48 external entity handler when it's created to set any proxies 49 from environment variables. 50 - Grant McLean, Matt Sergeant (& others I may have missed) noted that 51 loading the LWP & URI modules slowed startup of the module, even 52 if the application didn't need it. The default LWP handler is now 53 dynamicly loaded (along with LWP & URI modules) the first time an 54 external entity is referenced. Also provided a NoLWP option to 55 XML::Parser that forces the file based external entity handler. 56 - Fixed allocation errors in element declaration patches in expat 57 - The Expat base method now works, even before expat starts parsing. 58 - Changed the canonical script to take an optional file argument. 59 - Enno Derksen <enno@att.com> reported that the attlist handler 60 was not returning NOTATION type attlist information. 61 - Michel Rodriguez <mrodrigu@ieee.org>, noted that the constructor 62 for XML::Parser objects no longer checked for the existence of 63 applications installed external entity handlers before installing 64 the default ones. 65 - Burkhard Meier <burkhard.meier@ixos.de> sent in a fix for 66 compiler directives in Expat/Makefile.PL for Win32 machines. 67 A change in 5.6.0 caused the old conditional to fail. 68 - Forgot to document changes to the Entity declaration handler: 69 there is an additional "IsParam" argument that indicates whether 70 or not the entity is a parameter entity. This information is 71 no longer passed on in the name. 72 - Ben Low <ben@snrc.uow.edu.au> reported an undefined macro with 73 version 5.004_04. 742.28 Mon Mar 27 21:21:50 EST 2000 75 - Junked local (Expat.xs) declaration parsing and patched expat to 76 handle XML declarations, element declarations, attlist declarations, 77 and all entity declarations. By eliminating both shadow buffers and 78 local declaration parsing in Expat.xs, I've eliminated the two most 79 common sources of serious bugs in the expat interface. 80 o thus fixed the segfault and parse position bugs reported by 81 Ivan Kurmanov <iku@fnmail.com> 82 o and the doctype bug reported by Kevin Lund 83 <Kevin.Lund@westgroup.com> 84 o The element declaration handler no longer receives a string, 85 but an XML::Parser::ContentModel object that represents the 86 parsed model, but still looks like a string if referred to as 87 a string. This class is documented in the XML::Parser::Expat 88 pod under "XML::Parser::ContentModel Methods". 89 o The doctype declaration handler no longer receives the internal 90 subset as a string, but in its place a true or undef value 91 indicating whether or not there is an internal subset. Also, 92 it's called prior to processing either the internal or external 93 DTD subset (as suggested by Enno Derksen <enno@att.com>.) 94 o There is a new DoctypeFin handler that's called after finishing 95 parsing all of the DOCTYPE declaration, including any internal 96 or external DTD declarations. 97 o One bit of lossage is that recognized_string, original_string, 98 and default_current no longer work inside declaration handlers. 99 - Added a handler that gets called after parsing external entities: 100 ExternEntFin. Suggested by Jeff Horner <jhorner@netcentral.net>. 101 - parsefile, file_ext_ent_handler, & lwp_ext_ent_handler now all 102 set the base path. This problem has been raised more than once 103 and I'm not sure to whom credit should be given. 104 - The file_ext_ent_handler now opens a file handle instead of 105 reading the entire entity at once. 106 - Merged patches supplied by Larry Wall to (for perl 5.6 and beyond) 107 tag generated strings as UTF-8, where appropriate. 108 - Fixed a bug in xml_escape reported by Jerry Geiger <jgeiger@rios.de>. 109 It failed when requesting escaping of perl regex meta-characters. 110 - Laurent Caprani <caprani@pop.multimania.com> reported a bug in the 111 Proc handler for the Debug style. 112 - <chocolateboy@usa.net> sent in a patch for the element index 113 mechanism. I was popping the stack too soon in the endElement fcn. 114 - Jim Miner <jfm@winternet.com> sent in a patch to fix a warning in 115 Expat.pm. 116 - Kurt Starsinic pointed out that the eval used to check for string 117 versus IO handle was leaving $@ dirty, thereby foiling higher 118 level exception handlers 119 - An expat question by Paul Prescod <paul@prescod.net> helped me 120 see that exeptions in the parse call bypass the Expat release method, 121 causing memory leaks. 122 - Mark D. Anderson <mda@discerning.com> noted that calling 123 recognized_string from the Final method caused a dump. There are 124 a bunch of methods that should not be called after parsing has 125 finished. These now have protective if statements around them. 126 - Updated canonical utility to conform to newer version of Canonical 127 XML working draft. 1282.27 Sat Sep 25 18:26:44 EDT 1999 129 - Corrected documentation in Parser.pm 130 - Deal with XML_NS and XML_BYTE_ORDER macros in Expat/Makefile.PL 131 - Chris Thorman <chris@thorman.com> noted that "require 'URI::URL.pm'" 132 in Parser.pm was in error (should be "require 'URI/URL.pm'") 133 - Andrew McNaughton <andrew@scoop.co.nz> noted "use English" and 134 use of '$&' slowed down regex handling for whole application, so 135 they were excised from XML::Parser::Expat. 136 - Work around "modification of read-only value" bug in perl 5.004 137 - Enno Derksen <enno@att.com> reported that the Doctype handler 138 wasn't being called when ParseParamEnt was set. 139 - Now using Version 19990728 of expat, with local patches. 140 - Got rid of shadow buffer 141 o thus fixed the error reported by Ashley Sanders 142 <a.sanders@mcc.ac.uk> 143 o and removed ExpatNB limitations that Peter Billam 144 <music@pjb.com.au> noted. 145 - Vadim Konovalov <vkonovalov@lucent.com> had a problem compiling 146 for multi-threading that was fixed by changing Perl_sv_setsv to 147 sv_setsv. 148 - Added new Expat method: skip_until(index) 149 - Backward incompatible change to method xml_escape: to get former 150 behavior use $xp->xml_escape($string, '>', ...) 151 - Added utility, canonical, to samples 1522.26 Sun Jul 25 19:06:41 EDT 1999 153 - Ken Beesley <ken.beesley@xrce.xerox.com> discovered that 154 declarations in the external subset are not sent to registered 155 handlers when there is no internal subset. 156 - Fixed parse_dtd to work when entity values or attribute defaults 157 are so large that they might be broken across multiple calls to 158 the default handler. 159 - For lwp_ext_ent_handler, use URI::URL instead of URI so that old 160 5.004 installations will work with it. 1612.25 Fri Jul 23 06:23:43 EDT 1999 162 - Now using Version 1990709 of expat. No local patches. 163 - Numerous people reported a SEGV problem when running t/cdata 164 on various platforms and versions of perl. The problem was 165 introduced with the setHandlers change. In some cases an 166 un-initialized value was being returned. 167 - Added an additional external entity handler, lwp_ext_ent_handler, 168 that deals with general URIs. It is installed instead of the 169 "file only" handler if the LWP package is installed. 1702.24 Thu Jul 8 23:05:50 EDT 1999 171 - KangChan Lee <dolphin@comeng.chungnam.ac.kr> supplied the 172 EUC-KR encoding map. 173 - Enno Derksen <enno@att.com> forwarded reports by Jon Eisenzopf 174 <eisen@pobox.com> and Stefaan Onderbeke <onderbes@bec.bel.alcatel.be> 175 about a core dump using XML::DOM. This was due to a bug in the 176 prolog parsing part of XML::Parser. 177 - Loic Dachary <loic@ceic.com> discovered that changing G_DISCARD to 178 G_VOID introduced a small memory leak. Changed G_VOID back to 179 G_DISCARD. 180 - As suggested by Ben Holzman <bholzman@earthlink.net>, the 181 setHandlers methods of both Parser and Expat now return lists that 182 consist of type, handler pairs that correspond to the input, but 183 the handlers returned are the ones that were in effect prior to 184 the call. 185 - Now using Version 19990626 of expat with a local patch (provided 186 by James Clark.) 187 - Added option ParseParamEnt. When set to a true value, parameter 188 entities are parsed and the external DTD is read (unless standalone 189 set to "Yes" in document). 1902.23 Mon Apr 26 21:30:28 EDT 1999 191 - Fixed a bug in the ExpatNB class reported by Gabe Beged-Dov 192 <begeddov@jfinity.com>. The ErrorMessage attribute wasn't 193 being initialized for ExpatNB. This should have been done in 194 the Expat constructor. 195 - Applied patch provided by Nathan Kurz <nate@valleytel.net> to 196 fix more perl stack manipulation errors in Expat.xs. 197 - Applied another patch by Nathan to change perl_call_sv flag 198 from G_DISCARD to G_VOID for callbacks, which helps performance. 199 - Murata Makoto <murata@apsdc.ksp.fujixerox.co.jp> reported a 200 problem on Win32 platforms that only showed up when UTF-16 was 201 being used. The needed call to binmode was added to the parsefile 202 methods. 203 - Added documentation for release method that was added in release 204 2.20 to Expat pod. (Point raised by <mookie@undef.com>) 205 - Now using Version 19990425 of expat. No local patches. 206 - Added specified_attr method and made ineffective the is_defaulted 207 method. 2082.22 Sun Apr 4 11:47:25 EDT 1999 209 - Loic Dachary <loic@ceic.com> reported a core dump with a small 210 file with a comment that wasn't properly closed. Fixed in expat 211 by updating positionPtr properly in final call of XML_Parse. 212 (Reported to & acknowledged by James Clark.) 213 - Made more fixes to Expat.xs position calculation. 214 - Loic Dachary <loic@ceic.com> provided patches for fixing a 215 memory growth problem with large documents. (Garbage collection 216 wasn't happening frequently enough.) 217 - As suggested by Gabe Beged-Dov <begeddov@jfinity.com>, added 218 a non-blocking parse mechanism: 219 - Added parse_start method to XML::Parser, which returns a 220 XML::Parser::ExpatNB object. 221 - Added XML::Parser::ExpatNB class, which is a subclass of 222 Expat and has the additional methods parse_more & parse_done 223 - Made some performance tweaks as suggested by performance thread 224 on perl-xml discussion list. [With negligible results] 225 - Tried to clarify Tree style structure in Parser pod 2262.21 Sun Mar 21 17:42:04 EST 1999 227 - Warren Vik <wvik@whitebarn.com> provided patches for a bug 228 introduced with the is_defaulted method. It manifested itself 229 by bogusly reporting duplicate attributes. 230 - Now using latest expat from ftp://ftp.jclark.com/pub/test/expat.zip, 231 Version 19990307. (Plus any patches in Expat/expat.patches.) 232 - As suggested by Tim Bray, added an xml_escape method to 233 Expat. 234 - Murray Nesbitt <murray@activestate.com> had build problems 235 on Win32 that were solved by swapping 2 include files in 236 Expat.xs 237 - Added following Expat namespace methods: 238 new_ns_prefixes 239 expand_ns_prefix 240 current_ns_prefixes 241 - Fixed memory handling in recognized_string method to get rid 242 of "Attempt to free unreferenced scalar" bug. 2432.20 Sun Feb 28 15:35:52 EST 1999 244 - Fixed miscellaneous bugs in xmlfilter. 245 - In the default external entity handler, prepend the base only 246 for relative URLs. 247 - Chris Nandor <pudge@pobox.com> provided patches for building 248 on Macintosh. 249 - As suggested by Matt Sergeant <Matthew.Sergeant@eml.ericsson.se>, 250 added the finish method to Expat. 251 - Matt also provided a fix to a bug he discovered in the Streams 252 style. 253 - Fixed a parse position bug reported by Enno Derksen <enno@att.com> 254 that was affecting both original_string and position_in_context. 255 - Fixed a gross memory leak reported by David Megginson, 256 <david@megginson.com>: there was a circular reference to the Expat 257 object and the internal end handler for context was not freeing 258 element names after they were removed from the context stack. 259 - Now using expat Version 19990109 260 (Plus any patches in Expat/expat.patches) 261 - Added is_defaulted method to Expat to tell if an attribute 262 was defaulted. (Requested by Enno Derksen for XML::DOM.) 263 - Matt Sergeant <Matthew.Sergeant@eml.ericcson.se> reported that 264 the XML::Parser parse methods weren't propagating array context 265 to the Final handler. Now they are. 266 - Fixed more memory leaks (again reported by David Megginson). 267 The SVs pointing to the handlers weren't being reclaimed when 268 the callback vector was freed. 269 - Added the element_index method to Expat. 2702.19 Sun Jan 3 11:23:45 EST 1999 271 - When the recognized string is long enough, expat uses multiple 272 calls to reportDefault. Fixed recString handler in Expat.xs to 273 deal with this properly. 274 - Added original_string method to Expat. This returns the untranslated 275 string (i.e. original encoding) that caused current event. 276 - Alberto Accomazzi <alberto@cfa0.harvard.edu> sent in more patches 277 for perl5.005_54 incompatibilities. 278 - Alberto also fingered a nasty memory bug in Expat.xs that arose 279 sometimes when you registered a declaration handler but no 280 default handler. It would give you a "Not a CODE reference" 281 error in a place that wasn't using any CODE references. 282 - <schinder@pobox.com> reported a problem with compiling expat 283 on a Sun 4 due to non-exsitance of memmove on that OS. Provided 284 a workaround in Makefile.PL 285 - Now using expat Version 19981231 from James Clark's test directory. 286 - Made patch to this version in order to support original_string 287 (see Expat/expat.patches.) 288 - Added CdataStart and CdataEnd handlers to expat. 2892.18 Sun Dec 27 07:39:23 EST 1998 290 - Alberto Accomazzi <alberto@cfa0.harvard.edu> pointed out that 291 the DESTROY sub in the new XML::Parser::Encinfo package was 292 pointing to the wrong package for calling FreeEncoding. 293 - Tarang Kumar Patel <mombasa@ptolemy.arc.nasa.gov> reported 294 the mis-declaration of an integer as unsigned in the 295 convert_to_unicode function in Expat.xs. 296 - Glenn R. Kronschnabl <grk@arlut.utexas.edu> reported a problem 297 with ExternEnt handlers when using parsefile. Turned out to be 298 an unmatched ENTER; SAVETMPS pair that screwed up the Perl stack. 299 - Tom Hughes <tom@compton.demon.co.uk> reported that the fix I put 300 in for the swith to PL_sv.. names failed with 5.0005_54, since 301 these became real variables instead of macros. Switched to just 302 checking the PATCHLEVEL macro. 303 - Yoshida Masato <yoshidam@inse.co.jp> provided the EUC-JP encodings 304 (the corresponding XML files are in XML::Encoding 1.01 or later.) 305 - With the advice of MURATA Makoto <murata@apsdc.ksp.fujixerox.co.jp>, 306 removed the Shift_JIS encoding and replaced it with 4 variations 307 he provided. He also provided an explanatory message. 308 - Added the recognized_string method to Expat, deprecating 309 default_current. 310 - Now using expat Version 19981122 from James Clark's test directory 311 (this fixes another bug with external entity reference handlers) 312 - Added a default external entity handler that only accesses file: 313 based URLs. 3142.17 Sun Dec 13 17:39:58 EST 1998 315 - Replaced uses of malloc, realloc, and free with New, Renew, 316 and Safefree respectively 317 - In Expat.pm, fixed methods in_element and within_element to 318 work correctly with namespaces. 319 - xmlfilter - Substitute quoted equivalents for special characters 320 in attribute values. 321 - position_in_context was off by one line when position was at 322 the end of line. 323 - For the context methods in Expat.pm, do the right thing when 324 the context list is empty. 325 - Added methods xpcroak and xpcarp to Expat. 326 - Alberto Accomazzi <alberto@cfa0.harvard.edu> noted that perl 327 releases 5.005_5* (the pre 5.006 development versions) won't 328 accept sv_undef (and related constants) anymore and we have 329 to switch to PL_sv_... 330 - Alberto also reported a warning in the newer versions of 331 IO::Handle about input_record_separator not being treated on 332 a per-handle basis. 333 - Fixed bug that Jon Udell <udell@top.monad.net> reported in 334 Stream style: Text handler most of the time didn't see proper 335 context. 336 - Added XML::Parser::Expat::load_encoding function and support 337 for external encodings. 3382.16 Tue Oct 27 22:27:33 EST 1998 339 - Fixed bug reported by Enno Derksen <enno@att.com>: 340 Now treats parameter entity declarations correctly. The entity 341 handler sees the name beginning with '%' if it's a parameter 342 entity declaration. 343 - Nigel Hutchison <nwoh@software-ag.de> pointed out that stream.t 344 wasn't portable off Unix systems. Replaced with portable version. 345 - Fixed bug reported by Enno Derksen <enno@att.com>: 346 XML Declaration was firing off both XMLDecl handler *and* Default 347 handler. 348 - Added option NoExpand to Expat to turn off expansion of entity 349 references when a default handler is set. 3502.15 Tue Oct 20 14:50:11 EDT 1998 351 - In Expat's parse method, account for undefined previous 352 record separators. 353 - Simplify a couple of Expat methods. 354 - Re-ordered Changes entries to put latest changes first. 355 - In XML::Parser::new, set Handlers if not already set 356 - New Handler (XMLDecl) for handling XML declarations 357 - New Handler (Doctype) for handling DOCTYPE declarations 358 - New Handler (Entity) for handling ENTITY declarations in 359 the internal subset. 360 - New Handler (Element) for handling ELEMENT declarations in 361 the internal subset. 362 - New Handler (Attlist) for handling ATTLIST declarations in 363 the internal subset. 364 - Documented new handlers 365 - Added t/decl.t to test new handlers 3662.14 Sun Oct 11 22:17:15 EDT 1998 367 - Always use method calls for streams. 368 - Use perl's input_record_separator to find delimiter (i.e. each 369 "line" is an entire XML doc with delimiter appended) 370 - Deal with line being longer than buffer. 3712.13 Thu Oct 8 16:58:39 EDT 1998 372 - Fixed a major oops in Expat.xs where I was trying to decrement 373 a refcnt on an unallocated SV, leading to a segment violation. 374 (Why did this show up on HPUX but not Linux?) 3752.12 Thu Oct 8 00:05:10 EDT 1998 376 - Incorporated fix to t/astress.t from <fletch@phydeaux.org> (Mike 377 Fletcher). 378 - Change to xmlstats from <dblack@candle.superlink.net> (David 379 Alan Black) 380 - Access Handlers_Setters in Expat and Handler_Types in Parser 381 through object reference (following admonition in perltoot 382 about class data.) 383 - Added Stream_Delimiter option to Expat. 384 - In the parse_stream function in Expat.xs, if we either have a 385 Stream_Delimiter or if there's no file descriptor, use method 386 calls instead. For Stream_Delimiter in particular, the function 387 now uses the getline method so it can check for the delimiter 388 without consuming stuff past the delimiter from the stream. 3892.11 Sun Oct 4 22:15:53 EDT 1998 390 - Swapped out local patch for expat and swapped in James Clark's 391 patch. 392 - Pass on all Parser attributes (other than those excluded by 393 Non_Expat_Options) to the instance of Expat created at parse time. 394 - New method for Expat: generate_ns_name 395 - Split test.pl into t/*.t and change Makefile.PL so we don't do a 396 useless descent into Expat subdir for testing. 397 - Stop the numeric warning for eq_name and namespace method. 3982.10 Fri Sep 25 18:36:46 EDT 1998 399 - Uses expat Version 19980924 400 (with local patch - see Expat/expat/xmlparse/xmlparse.c.diff) 401 - Use newSVpvn when PERL_VERSION >= 5.005 402 - Completed xmlfilter 403 - Added support for namespace processing: 404 o Namespaces option to XML::Parser and XML::Parser::Expat 405 o Two new methods in Expat: 406 namespace - to return namespace associated with name 407 eq_name - compare 2 names for equality across namespaces. 408 - Use expat's new SetDefaultHandlerExpand instead of SetDefaultHandler 409 so that entity expansion may continue even if the default handler 410 is set. 411 - Moved test.pl back up main level and changed to work with XML::Parser 412 - Added tests for namespaces 4132.09 Fri Sep 18 10:33:38 EDT 1998 414 - Fixed errors that caused -w to fret in XML::Parser. 415 - Fixed depth method in XML::Parser::Expat 416 - There were a few places in Expat.xs where garbage strings may 417 have been returned due to the expat library giving us zero-length 418 strings. Fixed by using a local version of newSVpv where length 419 means length, even when zero. 420 - The default handler setter in Expat.xs, was inappropriately setting 421 cbv->dflt_sv when there was a null handler. 4222.08 Thu Sep 17 11:47:13 EDT 1998 423 - Make XML::Parser higher-level re-usable parser objects. Old object 424 now becomes XML::Parser::Expat. 425 - The XML::Parser object now supports the style mechanism very close 426 to that in the 1.0 version. 4272.07 Wed Sep 9 11:03:43 EDT 1998 428 - Added some samples (xmlcomments & xmlstats) 429 - Now requires 5.004 (due to sv_catpvf) 430 - Changed Makefile.PL to allow automatic manification 431 - Added a test that reads xml spec (to check buffer boundary errors) 4322.06 Tue Sep 1 10:40:41 EDT 1998 433 - Fixed the methods current_line, current_byte, and current_column 434 - Added some tests 4352.05 Mon Aug 31 15:29:42 EDT 1998 436 - Made Makefile.PL changes suggested by Murray Nesbitt 437 <murray@ActiveState.com> to support building on Win32 438 and for making PPM binaries. 439 - Added method parse 440 - Changed parsestring and parsefile to use new parse method 441 - Deprecated parsestring method 442 - Improved error handling in the ExternEnt handler 4432.04 Wed Aug 26 13:25:01 EDT 1998 444 - Uses expat Version 1.0 of August 14, 1998 445 - Some document changes 446 - Changed dist section in Makefile.PL 447 - Added ExternEnt handler 448 - Added tests for ExternEnt 4492.03 Fri Aug 21 17:19:26 EDT 1998 450 - Changed InitEncoding to ProtocolEncoding. Default to none. 451 Pass null string to expat's ParserCreate when there is no 452 ProtocolEncoding. 453 - Fixed bug in parsefile & parsestring where they were referring 454 to an ErrorContext *method* instead of a field. 455 - Fixed position_in_context bugs: 456 -- 'last' in do {} while (); 457 -- insert newline before pointer when no following newline 458 in buffer. 459 - Added some additional tests 4602.02 Thu Aug 20 14:05:08 EDT 1998 461 - Fixed parsefile problem reported by 462 "Robert Hanson" <robertha@zenweb.com>, using a modification of 463 his suggested fix. 464 - Responded to problem reported by 465 Bart Schuller <schuller+perl-xml@lunatech.com> 466 by pre-expanding parts of the XML_UPD macro to avoid confusing 467 some versions of gcc. 468 - Changed the constructor to take the option InitEncoding, which 469 gets passed to the ParserCreate call. When not given, defaults 470 to UTF-8. 471 - Added method position_in_context 472 - Added Constructor option ErrorContext and added reporting of 473 errors in context. 4742.01 Wed Aug 19 11:42:42 EDT 1998 475 - Added methods: 476 default_current, base, current_line, current_column, 477 current_byte, context 478 - Added some tests 479 - parsestring and parsefile now croak if they're re-used 480 - Filled in some documentation 4812.00 Mon Aug 17 12:01:33 EDT 1998 482 - repackaged with James Clark's most recent expat 483 - changed to an API closer to expat 4841.00 March 1998 485 - Larry Wall's original version 486