2003-11-04 Jason E. Stewart * Xerces.i: moved $VERSION code to Xerces-extra.pm removed all warnings exposed Grammar API * Xerces-extra.pm: added XML::Xerces::XMLCatalogResolver depricated DOMElement::get_text() added AttDefList::to_hash() and AttDefList::to_list() * typemaps.i: added overloading code for grammars and CallbackHandlers * t/actualCast: now tests grammar overloading * t/SAXParse.t: better use of Test::More few new tests * samples/SAX2Count.pl: now uses unicode constants from XMLUni * postModule.pl: can no longer benefit from cached CallbackHandler object, some bug is calling the wrong pointer value for set_callback_obj(), so we must create a new one each time * postSource.pl: due to SWIG improvements, this script does no work 2003-11-04 Jason E. Stewart * Handler/*: multiple inheritance now works with PerlCallbackHandler (fixes 24373) * FAQ: updated (fixes 24361) 2002-12-09 Jason E. Stewart * Makefile.PL (Repository): new version (2.1.0-1) * t (Repository): all tests use Test::More * samples/catalog.xml (Repository): added personal.xsd * hints/linux.pl (Repository): forced _GNU_SOURCE * Handler/PerlContentCallbackHandler.hpp (Repository): added predefine for ContentHandler * README (Repository): updated the build requirements * Xerces.i (Repository): added GCCDefs.hpp and XercesDefs.hpp which enabled removing the EXPORT macros added the DOMNode == and != operators 2002-11-12 Jason E. Stewart * Makefile.PL (Repository): not using DOMParse * Xerces-extra.pm (Repository): somehow lost @XML::Xerces::DOMException::CODES * Xerces.i (Repository): hack to handle SWIG multiple inheritance bug Perl_die ==> croak * postModule.pl (Repository): hack to handle SWIG multiple inheritance bug 2002-10-19 Jason E. Stewart * Xerces.i (Repository): commented out all the overloading support that SWIG now handles on it's own * postModule.pl (Repository): relocated createNodeIterator and createTreeWalker to DOMDocumentTraversal class removed all overload munging * Xerces-extra.pm (Repository): removed INIT for HTML::Mason and mod_perl * typemaps.i (Repository): deal with XMLByte I/O handle auto-overload typeconversion for SV*'s and XMLCh* * samples/DOMPrint.pl (Repository): * samples/DOMCreate.pl (Repository): now uses DOMWriter * t/XMLURL.t (Repository): equality operator stopped working added test to match output of URL * t/DOMWriter.t (Repository): test started working * t/PerlErrorHandler.t (Repository): * t/DOMEntity.t (Repository): test stopped failing * t/DOMCreate.t (Repository): updated output to match the DOMWriter output 2002-08-27 Jason E. Stewart * Makefile.PL (Repository): new version (2.0) removed -package from SWIG line * Xerces-extra.pm (Repository): DOM_ => DOM removed old methods for handling DOM/IDOM diffs * Xerces.i (Repository): DOM_ => DOM DOMParser => XercesDOMParser added AbstractDOMParser base class added some debug variables to help with unicode added sax2/DeclHandler.hpp added classes for DOMWriter ignore the char* versions of Parser ignore const versions of XercesDOMParser added base class Parser made new SAXEXCEPTION macro to avoid copied code Don't need operator== and operator!=?? error handlers needed to go to the end of the file?? added transcoder init code * postModule.pl (Repository): DOM_ => DOM DOMParser => XercesDOMParser * postSource.pl (Repository): transcoder initialization removed removed STRLEN hack * typemaps.i (Repository): fixed comments typemaps are no longer language specific finally fixed STRLEN problem for 64bit OS's IDOM => DOM * Handler/PerlNodeFilterCallbackHandler.i (Repository): * Handler/PerlErrorCallbackHandler.cpp (Repository): * Handler/PerlEntityResolverHandler.i (Repository): * Handler/PerlDocumentCallbackHandler.cpp (Repository): * Handler/PerlContentCallbackHandler.cpp (Repository): moved common code out of base class and into derived classes refcount decrementing bug fixed?? * docs/samples.xml (Repository): fixed UTF encoding * hints/solaris_2.pl (Repository): added info for forte * samples/SAXCount.pl (Repository): * samples/SAX2Count.pl (Repository): use XML::Xerces::error() * samples/DOMPrint.pl (Repository): * samples/DOMCount.pl (Repository): fixed name of parser * t/domTest.t (Repository): * t/actualCast.t (Repository): DOM_ => DOM * t/TestUtils.pm (Repository): * t/Schema.t (Repository): * t/PerlErrorHandler.t (Repository): fixed parser name * t/MemBufInputSource.t (Repository): added tests to check that the returned input source provides the proper information after a parse * t/EntityResolver.t (Repository): Fixed class name for parser Fixed evals * t/SAXParser.t (Repository): * t/DOMCount.t (Repository): * t/Attributes.t (Repository): * t/AttributeList.t (Repository): * t/XMLScanner.t (Repository): fixed UTF-8 encoding added eval's * t/Grammar.t (Repository): * t/DOMCreate.t (Repository): name typo 2002-05-07 Jason E. Stewart * README (Repository): now created from readme.xml by docs/readme.xsl and docs/readme.pl 2002-04-25 Jason E. Stewart * Makefile.PL (Repository): Fixed dependancy on Xerces-extra.pm * Xerces-extra.pm (Repository): needed to keep quote_content() in DOM_Node package * README (Repository): Added info on error() minor re-wording * Xerces.i (Repository): Updated to new version syntax removed obsolete headers minor comment changes * Xerces-extra.pm (Repository): simplified DOM_NamedNodeMap::to_hash() by adding DOM_Node::to_hash() * Makefile.PL (Repository): removed outdated Xerces_header info Updated to new version syntax 2002-04-24 Jason E. Stewart * Xerces.i (Repository): Fixed *InputSource constructors to use XMLCh* versions instead of the char* versions (Unicode compliance) Added support for XMLScanner * t/PerlErrorHandler.t (Repository): Can't get error handler code to return previous code reference. So I mark it as a fail * Xerces-extra.pm (Repository): Added error() Added DOM_Element::get_text() Turned all die() to croak() and warn() to carp() * postModule.pl (Repository): Added reverse lookup table for DOM_Exceptions * typemaps.i (Repository): something odd happened to the SWIGTYPE *DYNAMIC typemap, so I had to add it in manually * t/DOM_Entity.t (Repository): now no entities have values, so both tests fail * t/TestUtils.pm (Repository): removed unnecessary newline * t/XMLURL.t (Repository): Added new query test * t/URLInputSource.t (Repository): Finally understand the difference between the baseId and the systemId arguments, so all constructor tests are modified to work properly (assuming my bugfix is in place) 2002-03-28 Jason E. Stewart * postModule.pl (Repository): removed old IDOM_Node equality operator code added overloaded constructors for the *Handler's fixed the other broken callback code that stored the reference in the wrong places * postSource.pl (Repository): removed old IDOM_Node equality operator code * Makefile.PL (Repository): made Xerces.C dependent on the Handler/*.i files * Xerces.i (Repository): new cleaner method for IDOM_Node equality operators added support for DOM_NodeFilter added overloaded constructors for the *Handler's * Xerces-extra.pm (Repository): added PerlNodeFilter class * t/DOM_Node.t (Repository): new tests for equality operators * t/PerlErrorHandler.t (Repository): added new test for re-defining the error handler fails to return an object * t/DOM_TreeWalker.t (Repository): * t/DOM_NodeIterator.t (Repository): new test for test node filters * Handler/PerlErrorCallbackHandler.hpp (Repository): * Handler/PerlEntityResolverHandler.hpp (Repository): * Handler/PerlDocumentCallbackHandler.hpp (Repository): * Handler/PerlContentCallbackHandler.hpp (Repository): moved code to PerlCallbackHandler * Handler/Makefile.PL (Repository): skip the dynamic make * Handler/PerlNodeFilterCallbackHandler.swig.hpp (Repository): new node filter class for tree walkers and node iterators * Handler/PerlCallbackHandler.swig.hpp (Repository): new unified callback class * Handler/PerlErrorCallbackHandler.swig.hpp (Repository): * Handler/PerlEntityResolverHandler.swig.hpp (Repository): * Handler/PerlDocumentCallbackHandler.swig.hpp (Repository): * Handler/PerlContentCallbackHandler.swig.hpp (Repository): no longer need separate files 2002-03-26 Jason E. Stewart * postModule.pl (Repository): removed special DOM_Node handling code added 'use strict' to module added use vars to each package added my's where needed fixed broken code for storing callbacks moved all verbatim code to Xerces-extra.pm Added fix for keeping a DOM_Document alive after the DOM_Parser has gone out of scope * postSource.pl (Repository): moved all SAXException handling code to Xerces.i * t/DOM_Document.t (Repository): new test to ensure getElementById() doesn't segfault on undef ID * typemaps.i (Repository): Now uses default SWIG typemap for DYNAMIC * Xerces.i (Repository): Added SAXException code to handlers Added %ignore's for unhandled overloaded methods to remove warnings Now imports verbatim Perl code from Xerces-extra.pm adds use vars qw() to module * Makefile.PL (Repository): new version (1.7.0_1) Added code to copy perl module to blib added dependancy to Xerces-extra.pm * Xerces-extra.pm (Repository): split out verbatim perl code into this piece 2002-03-24 Jason E. Stewart * t/DOM_NamedNodeMap.t (Repository): new test for undef bug when getAttributes() called on text node * postModule.pl (Repository): removed actual_cast() and _reinterpret_cast() moved all serialize code into class methods added code to ensure that any methods returning NamedNodeMap's and NodeList's would return an empty list (and not undef) when called in an array context * typemaps.i (Repository): Added support for dynamic casting of DOM_Node*'s * DOMParse/DOMParse.pm (Repository): removed a useless actual_cast() call * t/DOMPrint.t (Repository): Fixed extra newline in sample doc * Xerces.i (Repository): removed old DOM code renamed all IDOM* classes to DOM * postModule.pl (Repository): chanded IDOM => DOM removed old DOM code added DOM_DOMException::getMessage() added DOM_Node::isNull() * postSource.pl (Repository): updated to use IDOM (which meant changing _IDOM to _DOM removed code to rename IDOM => DOM * typemaps.i (Repository): removed DOMString typemaps * DOMParse/DOMParse.pm (Repository): updated for IDOM * Handler/PerlEntityResolverHandler.i (Repository): fixed bug in error output that was using the wrong SWIGTYPE * samples/DOMCreate.pl (Repository): updated for IDOM * samples/DOMCount.pl (Repository): modified ouput somewhat * samples/DOMPrint.pl (Repository): updated for IDOM * samples/personal-no-doctype.xml (Repository): removed XMLDECL * t/TestUtils.pm (Repository): Added new document without XMLDECL Added error() * t/URLInputSource.t (Repository): * t/LocalFileInputSource.t (Repository): removed old DOM test * t/Attributes.t (Repository): blib change * samples/personal-no-xmldecl.xml (Repository): neede a new test with no XMLDECL node because IDOM doesn't do them 2002-03-23 Jason E. Stewart * Xerces.i (Repository): made to generate smaller code footprint by converting the majority of the exception handlers into subroutines * postSource.pl (Repository): removed bogus bugfix (was bad SWIG installation, not SWIG bug) added code for initialization of static stash variables * typemaps.i (Repository): made typemaps generate smaller code footprint by making the majority of the transcoding routines be a subroutine * postSource.pl (Repository): Fixed MemBufInputSource::new to retain STRLEN arg * Makefile.PL (Repository): added 'xercesc' to move to 1.7 new version (1.7) removed all Xerces_headers files * Xerces.i (Repository): added 'xercesc' to move to 1.7 new version (1.7) added const declaration for methods in Attributes and AttributeList * postSource.pl (Repository): workaround for SWIG bug with swig_variable_info * Handler/PerlErrorCallbackHandler.hpp (Repository): * Handler/PerlEntityResolverHandler.i (Repository): * Handler/PerlEntityResolverHandler.hpp (Repository): * Handler/PerlDocumentCallbackHandler.hpp (Repository): * Handler/PerlDefaultCallbackHandler.hpp (Repository): * Handler/PerlContentCallbackHandler.hpp (Repository): added 'xercesc' to move to 1.7 * t/Attributes.t (Repository): namespace declarations no longer show up as attributes 2002-03-05 Jason E. Stewart * hints/hpux.pl (Repository): new information for HP-UX * postSource.pl (Repository): changed file to __FILE__ changed regexp that matched location of where to insert code into SWIG_init * typemaps.i (Repository): Fixed $source and $target to use new terms Fixed DOMString typemap to not use pointers 2002-02-20 Jason E. Stewart * t/Grammar.t (Repository): new test for support of grammars * Makefile.PL (Repository): included basic support for parsing the config.status file Bumped version (1.6.0) * README (Repository): updated version numbers changed author list slightly * Xerces.pm (Repository): * Xerces.i (Repository): * Xerces.C (Repository): included "validators/common/Grammar.hpp" now wraps 1.6.0 * t/Schema.t (Repository): Made a change that was guaranteed to break the schema * t/SAXCount.t (Repository): * t/SAX2Count.t (Repository): * t/IDOMPrint.t (Repository): * t/IDOMCount.t (Repository): * t/DOMPrint.t (Repository): * t/DOMCreate.t (Repository): * t/DOMCount.t (Repository): Fixed the problem of knowing which perl binary to use * Handler/PerlErrorCallbackHandler.cpp (Repository): Added code to decrement the refcount of the callback object when it's been replaced by another * samples/SAX2Count.pl (Repository): made end_element() more verbose to demonstrate what would really be returned * hints/aix.pl (Repository): turned 'macro' into CCFLAGS * Handler/Makefile.PL (Repository): * DOMParse/Makefile.PL (Repository): Added SKIP section to make 'make' faster 2001-11-02 Jason E. Stewart * t/IDOM_DOMException.t (Repository): createDocument() now works * t/EntityResolver.t (Repository): Wrap methods in eval{} * t/IDOM_Attr.t (Repository): * t/DOM_Attr.t (Repository): Test that we can set attributes using IV's and NV's * t/DOMPrint.t (Repository): * t/DOMCreate.t (Repository): * t/DOMCount.t (Repository): * t/LocalFileInputSource.t (Repository): * t/SAX2Count.t (Repository): * t/SAXCount.t (Repository): Uses $SAMPLE_DIR to be directory independent * t/TestUtils.pm (Repository): Added $SAMPLE_DIR * Makefile.PL (Repository): Now requires Perl 5.6 New version numbering XERCES_DEVEL sets -Wall and -g * FAQ (Repository): Added Unicode info * Xerces.i (Repository): removed #includes for iostream stuff Added #include for TransService.hpp Added static UTF-8 transcoder Added debug flag for UTF-8 transcoding Converted all all XMLURL constructors to use XMLCh* and not char* Added forgotten XMLURL ctor ignored duplicate QName methods now properly ignore operators with DOM_NullPtr Added $VERSION to Xerces.pm * postModule.pl (Repository): Added IDOM_Node::operator== and != the variable stubs code is now needed because of the UTF-8 debugging flags removed useless SWIG-1.1 cruft Fixed XMLUri bug where constructor was calling tied() on a string. Added forgotten cases to I?DOM_Node::serialize() * postSource.pl (Repository): Added static UTF-8 transcoder (used by typemaps) Added static ISO-8859-1 transcoder (unsused) Added IDOM_Node::operator== and != -- these don't exist on the C++ side because you only need to compare the pointers. But in perl those concealed in the SV. added (char*) cast to sv_derived_from() call * Handler/Makefile.PL (Repository): Added $CFLAGS from top-level Makefile.PL * hints/solaris_2.pl (Repository): Fixed -HAS_BOOL to -DHAS_BOOL * Xerces_headers/util/XMLUri.hpp (Repository): * Xerces_headers/util/XMLURL.hpp (Repository): * Xerces_headers/util/PlatformUtils.hpp (Repository): Modified with preSWIG.pl * typemaps.i (Repository): Thanks to SWIG-1.3.10 all the redundant typemaps were eliminated XMLCh* in/out transcode from/to UTF-8/UTF-16 DOMString in/out transcode from/to UTF-8/UTF-16 2001-10-11 Jason E. Stewart * postModule.pl (Repository): Fixed bug in Attributes::to_hash() that was causing getURI() to fail Support for the following overloaded methods: XMLURL() -- copy constructor XMLURL::makeRelativeTo(*) XMLURL::setURL(*) XMLUri(*) AttributeList::getType(*) AttributeList::getValue(*) Attributes::getType(*) Attributes::getValue(*) Attributes::getIndex(*) * Xerces.i (Repository): Upgraded to new exception handling mechanism Support for the following overloaded methods: XMLURL() -- copy constructor XMLURL::makeRelativeTo(*) XMLURL::setURL(*) XMLUri(*) AttributeList::getType(*) AttributeList::getValue(*) Attributes::getType(*) Attributes::getValue(*) Attributes::getIndex(*) * Makefile.PL (Repository): new version (1.5.8) * postSource.pl (Repository): removed obsolete @dom_methods and @xml_methods removed obsolete enumeration fixing code removed obsolete DOM_Attr overloaded constructor code removed obsolete overloaded constructuro processing code remove obsolete sv_undef, sv_yes, and na code * typemaps.i (Repository): made all references to 'na' be 'PL_na' 2001-10-10 Jason E. Stewart * postSource.pl (Repository): removed PerlExceptionHandler code Changed SAX*Exception code to new exception handling * typemaps.i (Repository): Added const XMLCh* const localPart for QName * hints/solaris_2.pl (Repository): Added check for gcc Added -DHAS_BOOL for gcc * hints/dec_osf.pl (Repository): Added check for gcc Added -DHAS_BOOL for gcc Set up C++ compiler otherwise * samples/SAXCount.pl (Repository): * samples/SAX2Count.pl (Repository): * samples/IDOMCount.pl (Repository): * samples/DOMPrint.pl (Repository): * samples/DOMCount.pl (Repository): Added USAGE output if no input files are specified new exception handling code * samples/personal.xsd (Repository): updated to new version of schema handling code * t/XMLException.t (Repository): * t/LocalFileInputSource.t (Repository): * t/IDOM_DOMException.t (Repository): * t/IDOMParser.t (Repository): * t/DOMParser.t (Repository): * t/DOMException.t (Repository): New exception handling mechanism * t/URLInputSource.t (Repository): New exception handling mechanism Added more tests for different exceptions * t/Schema.t (Repository): Direct testing of schema with valid and invalid files * t/SAXException.t (Repository): New exception handling mechanism New test for SAXNotSupportedException * t/SAXCount.t (Repository): * t/SAX2Count.t (Repository): Now uses personal.xml 2001-10-07 Jason E. Stewart * Makefile.PL (Repository): Moved architecture specific stuff into hints/ * hints/solaris_2.pl (Repository): * hints/linux.pl (Repository): * hints/dec_osf.pl (Repository): MakeMaker hints * Xerces.pm (Repository): Correctly handle operators that get three parameters * Xerces.C (Repository): * postSource.pl (Repository): added code to remove RCS keyword from perl5.swg * t/DOM_Element.t (Repository): * t/DOM_Attr.t (Repository): commented use blib 2001-10-06 Jason E. Stewart * t/XMLException.t (Repository): Added test for getCode() Added test for XML::Xerces::PerlXMLExceptionHandler::catch() * t/URLInputSource.t (Repository): Added test for XMLURL creation Added test for URLInputSource creation Added test for URLInputSource overloaded constructors Added test for malformed URL exception * t/TestUtils.pm (Repository): Added support for schema files Added is_object() * t/StdInInputSource.t (Repository): Added simple test for creating an input source * t/SAXParser.t (Repository): added test for parse($filename) added test for progressive parse added test for reusing parse after aborted progressive parse * t/PerlErrorHandler.t (Repository): Made the second test a validating parser test. * t/MemBufInputSource.t (Repository): test that fake system id is optional * t/LocalFileInputSource.t (Repository): test for relative paths test for bogus relative paths test for overloaded operator * t/IDOMParser.t (Repository): Test ignorable whitespace handling * t/EntityResolver.t (Repository): Test resolution of schema with xsi:noNamespaceSchemaLocation * t/DOM_Element.t (Repository): Test operator= * t/DOMParser.t (Repository): Test for progressive parsing Attempt to test reuse of a parser after a fatal progressive parse. Test ignorable whitespace handling * t/DOMException.t (Repository): No longer needed fake system id * Makefile.PL (Repository): Added newlines to output Added preSWIG.pl for creating private headers automatically New version (1.5.7) * Xerces.i (Repository): Switched from #include <> to #include "" Removed typemaps Added EXPORT_* #defines Now using %ignore to remove redundant methods Using %rename for overloaded methods and constructors Fully implemented: *Parser XMLPScanToken *InputSource XMLURL *::operator= *::operator== *::operator!= Using %except to handle exceptions Only using private headers for files with parse errors: framework/StdInInputSource.hpp framework/XMLPScanToken.hpp util/PlatformUtils.hpp util/XMLURL.hpp util/XMLUri.hpp Removed all depricate methods for *Parser classes Removed all XMLDocumentHandler, and XMLEntityHandler methods for *Parser classes * postSource.pl (Repository): As of SWIG-1.3.10-pre1, got rid of operator handling remove_method(), fix_method(), and skipt_to_closing_brace() now in SWIG.pm added use strict removed exception handling * postModule.pl (Repository): As of SWIG-1.3.10-pre1, got rid of operator handling Added copy constructor list for DOM methods. added use strict We're only adding DESTROY() to classes we know are safe. Joined I?DOMNodeList methods Joined I?DOMNamedNodeMap methods Joined I?DOMNode methods Fix setAttributes() so that undefined values don't cause segfaults Removed hard-coded DESTROY()'s PerlErrorHandler::* now use warn() or die() PerlXMLExceptionHandler -- bogus hack that needs to die, but at least XMLExceptions are now caught. remove_method(), fix_method(), and skipt_to_closing_brace() now in SWIG.pm * Xerces.pm (Repository): * Xerces.C (Repository): Adding it to CVS even though it's auto-generated, I want people to be able to check out from CVS and build w/o SWIG * preSwig.pl (Repository): No longer handles operator overloading. Now handles multiple classes in one header file * typemaps.i (Repository): removed a SWIG 1.1 #ifdef added const XMLByte* const srcDocBytes * Handler (Repository): removed all uses of cerr, and used croak() instead. * samples/catalog.xml (Repository): Added test for schema file * samples/DOMCount.pl (Repository): Added benchmark output 2001-09-24 Jason E. Stewart * t/InputSource.t (Repository): Added generic tests for InputSource methods 2001-09-16 Jason E. Stewart * samples/personal-no-doctype.xml (Repository): Some test scripts write out XML and don't know from which directory they are being executed, so we need an example example without a DOCTYPE. * samples/IDOMCount.pl (Repository): For testing the IDOM interface * SWIG.pm (Repository): collection of useful subroutines for pre- and post-swig scripts * typemaps.i (Repository): Moved all typemap info from Xerces.i * preSwig.pl (Repository): New process script to strip inline methods off Xerces header files before they are swig'ed. * Xerces_headers/framework/URLInputSource.hpp (Repository): * Xerces_headers/framework/StdInInputSource.hpp (Repository): * Xerces_headers/framework/MemBufInputSource.hpp (Repository): * Xerces_headers/parsers/SAXParser.hpp (Repository): * Xerces_headers/parsers/IDOMParser.hpp (Repository): * Xerces_headers/parsers/DOMParser.hpp (Repository): * Xerces_headers/framework/LocalFileInputSource.hpp (Repository): No longer need private header files 2001-09-10 Jason E. Stewart * postModule.pl (Repository): Added back ALL DESTROY methods except DOM_Node, InputSource, and LocalFileInputSource. The latter caused a 'pure virtual method' abort in EntityResolver.t Made skip_to_closing_brace() a little smarter about nested {}'s * Handler/PerlExceptionHandler.cpp (Repository): This coded needs to handle exception classes with public attributes, therefore, we really do need to wrap the pointers as tied hashes so that the magic SWIG getter/setter methods are invoked. ###FIXME### I need to added the setter/getter methods to the perl class, and then call the swig methods directly. * Makefile.PL (Repository): New Version (1.5.6) * Handler/PerlExceptionHandler.cpp (Repository): * Handler/PerlErrorCallbackHandler.cpp (Repository): * Handler/PerlDocumentCallbackHandler.cpp (Repository): * Handler/PerlContentCallbackHandler.cpp (Repository): Removed all uses of hv_magic to create a tied hash, and replaced it with sv_setref_pv() to create a simple blessed scalar * samples/SAX2Count.pl (Repository): added end_tag() pulling arguments off perl stack reduced memory usage 2001-09-09 Jason E. Stewart * Makefile.PL (Repository): Fixe a second occurrence of the $(MAKE) bug. 2001-09-09 Jason E. Stewart * samples/SAXCount.pl (Repository): added end_tag() pulling arguments off perl stack reduced memory usage * Handler/PerlDocumentCallbackHandler.cpp (Repository): deleted all transcode strings Added a refcount dec to the stash HV (why is this needed??) * Handler/PerlExceptionHandler.cpp (Repository): * Handler/PerlContentCallbackHandler.cpp (Repository): deleted all transcode strings 2001-09-05 Jason E. Stewart * Makefile.PL (Repository): Fixed bad bug when setting $LIBS, had '=' and not '.=' Learned about make -C dir instead of 'cd dir; make ; cd .. Made Xerces.pm only depend on postModule.pl, since the Xerces.C depend remakes Xerces.pm anyway New Version (1.5.4) * postModule.pl (Repository): SWIG tried to be very terse, but in 5.6.0 the following invokes auto-vivification on $args[0]: $args[0] = tied(%{$args[0]}) || $args[0]; made DOM_Element::setAttribute() check for null attributes and values Added IDOMParser overloads on parse(), parseFirst() Added back DESTROY for Parser subclasses changed set*Handler() methods to use a per object cache of the handler objects instead of the ridiculous class variable approach I was using. added Attributes::to_hash() * postSource.pl (Repository): Found out that getURI() can throw an XMLException * DOMParse/DOMParse.pm (Repository): Fixed old warnings with use of \1 in regexps * Handler/PerlExceptionHandler.hpp (Repository): Removed old bad modification of SWIG header so that it will compile on older versions of Perl * Xerces_headers/parsers/IDOMParser.hpp (Repository): Overloaded parse() and parseFirst() * Xerces_headers/parsers/DOMParser.hpp (Repository): Commented out repetive parseFirst() * Xerces_headers/sax2/Attributes.hpp (Repository): uncommented all methods, so that sax2 handler could invoke methods on subclass objects. * t/TestUtils.pm (Repository): Modified the logic of result() looks a lot cleaner * t/IDOMParser.t (Repository): Added new test for overloaded parse() 2001-08-09 Jason E. Stewart * INSTALL (Repository): Rename PORTS 2001-08-01 Jason E. Stewart * t/TestUtils.pm (Repository): New stuff for entity resolver tests * t/EntityResolver.t (Repository): Added new tests for using XML Catalogs to resolve SYSTEM and PUBLIC id's. * t/Schema.t (Repository): test for using schemas * samples/system.xml (Repository): * samples/public.xml (Repository): test files for entity resolver * samples/catalog.xml (Repository): * samples/catalog.dtd (Repository): example catalog file for entity resolver * t/PerlErrorHandler.t (Repository): The output of the fatal error changed. * FAQ (Repository): Added categories new info on documentation new info on building Xerces.pm * postModule.pl (Repository): New XML::Xerces::PerlEntityResolver class Fix to call EntityResolver->set_callback_obj() and not ErrorHandler * Xerces.i (Repository): Fixes for PerlEntityResolverHandler * Makefile.PL (Repository): -lpthread is now back, w/o this caused compile fails on RedHat7 Xerces-C minor version numbers are now supported removed local *STD{OUT,ERR} this caused segfault sometimes, so we just have to deal with Liblist::ext spewage Solaris gets -DHAS_BOOL We no longer assume find is called 'find' (e.g. Cygwin) We now build Handler.a and not Handler.so new version (1.5.4) * DOMParse/DOMParse.pm (Repository): fixed some print calls in which the filehandle was not specified * Xerces_headers/parsers/SAXParser.hpp (Repository): * Xerces_headers/parsers/IDOMParser.hpp (Repository): * Xerces_headers/parsers/DOMParser.hpp (Repository): getScanner() was removed from Parser interface * t/TestUtils.pm (Repository): Added $PERSONAL_DTD_NAME * Handler/PerlEntityResolverHandler.hpp (Repository): Finally implemented the EntityResolver interface * PORTS (Repository): File for documenting on what architectures Xerces.pm compiles, and what you need to do to get it to compile 2001-07-10 Jason E. Stewart * Makefile.PL (Repository): Fix for individuals build without XERCES_DEVEL, otherwise compile of Xerces.C fails * personal.xsd (Repository): * personal-schema.xml (Repository): Files for testing schema support * Handler/PerlExceptionHandler.cpp (Repository): RedHat 6.2 iostream chokes on -Dbool=char, so #undef bool added * Xerces_headers/sax2/SAX2XMLReader.hpp (Repository): removed two methods that appeared in 1.5 nightly build, but were not in the 1.5 release 2001-07-09 Jason E. Stewart * Makefile.PL (Repository): New version (1.5.1) * postModule.pl (Repository): Added support of conversion of DOM_Node, DOM_NamedNodeList, and DOM_NodeList * postSource.pl (Repository): Added IDOM_DOMExcetption catch * Handler/PerlExceptionHandler.cpp (Repository): Now handles IDOM_DOMExceptions SAXException messages now get transcoded when there is no handler * Handler/PerlExceptionHandler.hpp (Repository): Now handles IDOM_DOMExceptions * Xerces_headers/sax2/SAX2XMLReader.hpp (Repository): * Xerces_headers/parsers/SAXParser.hpp (Repository): Updated for schemas * samples/SAXCount.pl (Repository): * samples/SAX2Count.pl (Repository): * samples/DOMPrint.pl (Repository): * samples/DOMCount.pl (Repository): handles Schemas handles validation schemes uses Getopt::Long * t/IDOM_DOMException.t (Repository): Fixed all tests to not use any method that needed a string as an input parameter * README (Repository): Fixed to match readme.xml from the apache WWW site. New info on verifying digital signatures * Xerces.i (Repository): Added IDOM Added the rest of the DOM exception classes * postModule.pl (Repository): Added $CURR_CLASS state variable Added IDOM support remove all the enums inherited through DOM_Node and IDOM_Node Added overload support for DOMParse::parse and DOMParse::parseFirst * postSource.pl (Repository): Added generic exception handling mechanism modified exception handling to support overloaded methods began to modularize with methods substitute_line(), fix_method(), skip_to_closing_brace() * Makefile.PL (Repository): Now calls die() if it cannot locate libxerces No ouptput for SWIG is generate unless $XERCES_DEVEL is set * Handler/PerlExceptionHandler.hpp (Repository): Changed class from being static to being a singleton * Xerces_headers/dom/DOM_Attr.hpp (Repository): Added overloaded copy contstructor * Xerces_headers/parsers/DOMParser.hpp (Repository): Added new schema methods Added overloaded parse(), and parseFirst() methods * t/DOMParser.t (Repository): Added test for reset() Added test for overloaded parse() * Xerces_headers/parsers/SAX2XMLReaderImpl.hpp (Repository): removed * Xerces_headers/parsers/SAXParser.hpp (Repository): Fixed inheritance * samples/DOMCount.pl (Repository): Added -s for schema Uses Getopts::Long now * t/XMLException.t (Repository): Updated to use new non-static PerlExceptionHandler * t/PerlErrorHandler.t (Repository): Updated static error message 2001-06-23 Jason E. Stewart * Makefile.PL (Repository): Fixed the typo that forced rebuilding of Xerces.pm and Xerces.C 2001-06-14 Jason E. Stewart * t/DOM_Entity.t (Repository): Test 3 now flagged as $fail=1 * t/TestUtils.pm (Repository): Added $fail parameter to result() * t/SAXCount.t (Repository): * t/SAX2Count.t (Repository): * t/DOMPrint.t (Repository): * t/DOMParser.t (Repository): * t/DOMCreate.t (Repository): * t/DOMCount.t (Repository): removed 'using blib ...' warning * Makefile.PL (Repository): Fixed broken use of map(). Needed to make a copy of the array, since map operates on the elements of the array, not on a copy of the elements. 2001-06-13 Jason E. Stewart * t/SAXParser.t (Repository): Now uses subclass of PerlDocumentHandler * t/DOMParser.t (Repository): New test to ensure that a fatal error is really fatal * t/SAXCount.t (Repository): * t/DOMPrint.t (Repository): * t/DOMCount.t (Repository): needed to close filehandle to flush buffer before calling external method for Perl prior to 5.6 * samples/SAXCount.pl (Repository): Added blib * samples/SAX2Count.pl (Repository): Now uses creates subclass of PerlContentHandler comment blib out * Xerces_headers/sax/AttributeList.hpp (Repository): Made all methods available to Perl * Handler/PerlErrorCallbackHandler.swig.hpp (Repository): * Handler/PerlDocumentCallbackHandler.swig.hpp (Repository): * Handler/PerlContentCallbackHandler.swig.hpp (Repository): removed destructor removed all methods not-accessible to Perl * Makefile.PL (Repository): New version (1.4.1) * Xerces.i (Repository): Needed iostream.h Added XMLException and PerlExceptionHandler * postModule.pl (Repository): Added to_hash() for AttributeList and DOM_Entity Added code in NamedNodeMap::to_hash() to handle DOM_Entity's * postSource.pl (Repository): Changed the temporary file code to use $$ Added fix for PerlExceptionHandler::setExceptionHandler All new() methods for InputSource's now catch exceptions Need to do two-phase parse to wipe out first occurrence of SWIG_TypeCheck() * t/DOM_Entity.t (Message): test for retrieving entities from DTD * t/SAX2Count.t (Message): test for SAX2Count.pl * t/XMLException.t (Message): Test for exception handler * Handler/PerlExceptionHandler.hpp (Repository): Perl class for handling XMLException's * Xerces_headers/util/XMLException.hpp (Repository): Added XMLException 2001-05-05 Jason E. Stewart * postModule.pl (Repository): shifted the location of the overloaded operators to be in the comment for the proper class, and printed them slightly more legibly Caught problems with some functions that return DOM_Node's and DOM_NamedNodeMaps. They sometimes use XML::Xerces::$class::OWNER and sometimes $class::OWNER Fixed error in regexp for __overload__, that made it too broad. Fixed error in regexp for createXMLReader, that made it too broad. Combined all ErrorHandler and EntityResolver checks into a single check for both SAX and DOM Added Perl{Error,Content,Document}Handler classes * Handler/Makefile.PL (Repository): commented out the OPTIMIZE -g * Makefile.PL (Repository): removed the dependancies on the old handler API, and added the new handler API added OPTIMIZE -g (commented out) for debugging * README (Repository): Added notes about the new handler API Made 1.4 the default Xerces version * Xerces.i (Repository): Added includes for new perl handler interfaces * t/TestUtils.pm (Repository): * t/DOMParser.t (Repository): * samples/DOMPrint.pl (Repository): * samples/DOMCount.pl (Repository): uses new ErrorHandler interface * t/SAXParser.t (Repository): * samples/SAXCount.pl (Repository): uses new ErrorHandler interface uses new DocumentHandler interface * t/PerlErrorHandler.t (Repository): New error handler interface 2001-04-16 Jason E. Stewart * postModule.pl (Repository): preliminary support for overloaded methods Fixed Garbage methods in top level namespace * samples/SAX2Count.pl (Repository): Now uses perlDefaultHandler instance. * New_classes_perl/perlErrorHandler.hpp (Repository): removed code into .cpp file * New_classes_perl/perlErrorHandler.cpp (Repository): Extracted from .hpp * New_classes_perl/perlDocumentHandler.hpp (Repository): Now based on DocumentHandler interface, and not HandlerBase. Added rest of DocumentHandler method stubs * New_classes_perl/perlContentHandler.hpp (Repository): Implementation of ContentHandler interface * Xerces.i (Repository): Added perlContentHandler * Makefile.PL (Repository): Added perlContentHandler.o and perlDocumentHandler.o * README (Repository): Added appology for having promised the full API and not provided it. Added note explaining libxerces-c1_4.so works fine with Xerces.pm Added info about creating perl-specific handlers * Makefile.PL (Repository): Moved over to 1.4 Added perlDefaultHandler * samples/SAX2Count.pl (Repository): sample using SAX2 API * postSource.pl (Repository): Added preliminary support for method overloading * Xerces.i (Repository): Added SAX 2.0 API * Xerces_headers/util/PlatformUtils.hpp (Repository): exposed more API methods: class XMLDeleter getFullPath isRelative weavePaths getCurrentMillis closeMutex lockMutex unlockMutex makeMutex loadMsgSet compareAndSwap atomicIncrement atomicDecrement registerLazyData cleanupLazyData loadAMsgSet * Xerces_headers/sax2/SAX2XMLReader.hpp (Repository): If you don't want SWIG to create new() comment out the constructor!!! * Xerces_headers/sax2/XMLReaderFactory.hpp (Repository): * Xerces_headers/sax2/LexicalHandler.hpp (Repository): * Xerces_headers/sax2/DefaultHandler.hpp (Repository): * Xerces_headers/sax2/ContentHandler.hpp (Repository): * Xerces_headers/sax2/Attributes.hpp (Repository): API to SAX 2.0 * New_classes_perl/perlDefaultHandler.hpp (Repository): Perl interface to DefaultHandler 2001-04-15 Jason E. Stewart * t/SAXCount.t (Repository): bad path to SAXCount.pl 2001-04-13 Jason E. Stewart * Makefile.PL (Repository): Added New_classes_perl/*.hpp to list of depends for Xerces.C Added perlDocumentHandler.o to list of objects for Xerces.so Adding New_classes_perl to 'DIR' somehow messed up installing DOMParse.pm, so I needed to add it to 'PM' * Xerces.i (Repository): Added new header files for support SAX API * postModule.pl (Repository): Added methods for dealing with SAXParser handlers * Xerces_headers/sax2/SAX2XMLReader.hpp (Repository): * Xerces_headers/parsers/SAX2XMLReaderImpl.hpp (Repository): Another SAX API that needs to get supported. * Xerces_headers/dom/DOM_Document.hpp (Repository): Added some 1.4 API entries (comment out) * t (Repository): removed all $SIG{__WARN__} handlers * t/SAXCount.t (Repository): test for SAXCount.pl * t/SAXParser.t (Repository): generic test of SAXParser * t/DOMCount.t (Repository): test for DOMCount.pl * samples/SAXCount.pl (Repository): example program for using SAX * Xerces_headers/parsers/SAXParser.hpp (Repository): Added SAXParser to list of supported API's * New_classes_perl/perlDocumentHandler.cpp (Repository): implements a generic DocumentHandler interface in perl. Based on perlErrorHandler 2001-04-11 Jason E. Stewart * postModule.pl (Repository): Finally fixed the bloody 'Use of uninitialized value at line 303 during global destruction.' warning. Because DOMParser is storing a reference to the errorhandler, it must decrement the refcount to the error handler in it's DESTROY() * samples/DOMPrint.pl (Repository): Set defaults for validate and namespace Needed to set an error handler * samples/DOMCreate.pl (Repository): required to create an XMLDecl node * samples/DOMCount.pl (Repository): Set defaults for validate and namespace * t/perlErrorHandler.t (Repository): * t/domTest.t (Repository): * t/actualCast.t (Repository): * t/URLInputSource.t (Repository): * t/TestUtils.pm (Repository): * t/StdInInputSource.t (Repository): * t/MemBufInputSource.t (Repository): * t/LocalFileInputSource.t (Repository): * t/DOM_NodeList.t (Repository): * t/DOM_NamedNodeMap.t (Repository): * t/DOMParser.t (Repository): * t/DOMCreate.t (Repository): new result() idiom * t/DOMPrint.t (Repository): new test for samples/DOMPrint.pl * DOMParse/DOMParse.pm (Repository): Added printing for XMLDecl nodes. an XMLDecl node is now *required* for printing an entire document. 2001-04-09 Jason E. Stewart * postModule.pl (Repository): Added FILE: line to error handler function output * t/DOMParser.t (Repository): new test for the Parser core 2001-03-26 Jason E. Stewart * postModule.pl (Repository): fixed stupid typo * Makefile.PL (Repository): new version (1.3.3) * t/TestUtils.pm (Repository): back to using a lexical variable for the error handler * postModule.pl (Repository): Fixed the heinous setErrorHandler() scoping bug. Added a future fix for setEntityResolver() for when we get around to implementing the perlEntityResolver Class * README (Repository): Added a DESCRIPTION * t/URLInputSource.t (Repository): minor prettying up of code * t/TestUtils.pm (Repository): Fixed $PERSONAL_FILE_NAME so that it used an absolute path that would work as file: URL 2001-03-24 Jason E. Stewart * t/TestUtils.pm (Repository): when setting the error handler, you cannot use a lexical variable within BEGIN. When it goes out of scope the variable is deleted. You'd think there would be a reference to it floating around, but apparently not 2001-03-22 Jason E. Stewart * samples/DOMPrint.pl (Repository): * samples/DOMCount.pl (Repository): added -n to handle namespaces * t/TestUtils.pm (Repository): Moved error(), warning(), and fatal_error() into XML::Xerces. fixed typo on $PERSONAL_FILE_NAME * postModule.pl (Repository): Moved error(), warning(), and fatal_error() into XML::Xerces. 2001-03-16 Jason E. Stewart * t (Repository): All files now use $PERSONAL_FILE_NAME instead of hard-coding 'personal.xml' * t/TestUtils.pm (Repository): Now tests for the location of personal.xml and exports the $PERSONAL_FILE_NAME variable * t/actualCast.t (Repository): actual_cast() is now automatically called, so it is impossible to get a DOM_Node superclass object. * postModule.pl (Repository): Made here-to docs use single quotes to remove '\' Made all functions returning DOM_Node's call actuall_cast() so that it returns the appropriate subclass. * README (Repository): Added legal comment to look at LICENSE Added URL for retrieving xerces-c Updated information on special perl API functions 2001-03-15 Jason E. Stewart * MANIFEST (Repository): Added Xerces.pm and Xerces.C * Makefile.PL (Repository): new version (1.3.2) * DOMParse/DOMParse.pm (Repository): Added DOCUMENT_TYPE_NODE to print_node() loop fixed print_document_type_node to use node information properly * t/DOMCreate.t (Repository): test the DOMCreate.pl script * samples/DOMPrint.pl (Repository): * samples/DOMCreate.pl (Repository): * samples/DOMCount.pl (Repository): * DOMParse/DOMParse.pm (Repository): fixed copyright date changed namespace to XML::Xerces 2001-03-14 Jason E. Stewart * README (Repository): Added info about Perl API differences * t (Repository): All test cleaned up to use TestUtils.pm * Makefile.PL (Repository): fixed typo * postModule.pl (Repository): fixed typo * Makefile.PL (Repository): Now gets swig executable from environment variable SWIG now works with SWIG 1.1 and namespace XML::Xerces * Xerces.i (Repository): Much cleaner typemaps * postModule.pl (Repository): now works with SWIG 1.1 and namespace XML::Xerces now has filters for DOM_NodeList to return as list and for DOM_NamedNodeMap to return as hash All RTTI.pm functionality moved internal to actual_cast() Better documentation on gnarly regexp's * postSource.pl (Repository): now works with SWIG 1.1 and namespace XML::Xerces * t/TestUtils.pm (Repository): localize all methods common to test scripts * TODO (Repository): Renamed STATUS * DOMParse/DOMParse.pm (Repository): Moved to DOMParse with Namespace change to XML::Xerces::DOMParse * t/DOM_NodeList.t (Repository): * t/DOM_NamedNodeMap.t (Repository): New test for special perl API functionality * Xerces_headers/dom/DOM_Range.hpp (Repository): Removed const from 'const DOM_Node' return type * Xerces (Repository): Moved to DOMParse with Namespace change * RTTI.pm (Repository): Moved completely into postModule.pl 2001-03-13 Jason E. Stewart * Makefile.PL (Repository): removed the need to patch Xerces.C removed Harmon's special input classes from the list of objects * README (Repository): New for xerces.pm 1.3 * Xerces.i (Repository): Removed Harmon's special input classes * t/perlErrorHandler.t (Repository): now uses MemBufInputSource 2001-03-08 Jason E. Stewart * samples/DOMPrint.pl (Repository): * samples/DOMCreate.pl (Repository): * samples/DOMCount.pl (Repository): Tom Watson's old example scripts, -v does not work * Xerces/DOMParse.pm (Repository): Tom Watson's old DOMPARSE.pm slightly re-formatted 2001-03-07 Jason E. Stewart * samples/personal.xml (Repository): * samples/personal.dtd (Repository): These version were obsoleted by Harmon's * personal.xml (Repository): * personal.dtd (Repository): I thought the original files in samples/ were identical, they weren't * Makefile.PL (Repository): Removed hard-code path to SWIG * postSource.pl (Repository): * postModule.pl (Repository): * Xerces.C.diff (Repository): Needed to correct the output of SWIG * Xerces.i (Repository): Needed for SWIG to create Xerces.pm and Xerces.C * RTTI.pm (Repository): Special module added by Harmon for Run Time Type Inference * Makefile.PL (Repository): New Makefile.PL * MemoryInputSource.cpp (Repository): * FileInputSource.cpp (Repository): * BinMemoryInputStream.cpp (Repository): * BinFile2InputStream.cpp (Repository): Special classes added by Harmon for 1.3 * New_classes_perl (Repository): Special class headers added by Harmon for 1.3 * t (Repository): New tests from Harmon's 1.3 port * Xerces_headers (Repository): Added new SWIG compatible header files from Harmon's 1.3 port