Release Notes of 2009

2009-12-15

  • Class (fix): call-by-reference errors in shortcut methods (v/v1/m)
  • Reader (add): support for cnonce re-use for more efficient Digest Auth operations
  • RemoteStore (tweak): support for cnonce re-use during Digest Auth
  • AskQueryHandler (tweak): new parameter structure in getFinalQueryResult
  • SelectQueryHandler (add): experimental config option: store_cache_results (intermediate tables are kept)
  • SelectQueryHandler (tweak): major refactoring for improved table JOINing (in the future) and better code readability

2009-12-07

  • ARC2 (fix): improved splitURI method (thanks to Jeff Stuckman)
  • ARC2 (tweak): getComponent accepts caller objects as 3rd parameter now
  • Resource (add): setProp method
  • RDFParser & RDFXMLParser (tweak): set_time_limit is now called automatically (unless keep_time_limit is set to true via the configuration)
  • Store (add): checkTables and repairTables methods
  • LoadQueryHandler (tweak): improved code to auto-repair broken mysql tables, new config option: store_reset_on_table_crash

2009-11-24

  • ARC2 (fix): splitURI bug around slash/hash-free URIs and special namespaces (thx to Jeff Stuckman)
  • RDFXMLSerializer (fix): index structures with flat object values caused an error in getNodeTag method
  • TurtleSerializer (tweak): certain schema terms will be serialized to qnames ( rdfs:domain/range etc)
  • StoreSelectQueryHandler (fix): long table/store names (> 64 chars) caused MySQL errors when TMP tables were created
  • Reader (tweak): increased the length in fgets during header parsing to support long headers

2009-11-16

  • Reader (tweak): multi-value response headers are now turned into arrays
  • TurtleParser (tweak): improved error reporting (thx to Frederick Giasson)

2009-11-09

  • ARC2 (add): Atom ns detection, getRSS10Serializer method
  • Class (add): toRSS10 method
  • Reader (tweak): improved SSL support (thx to Hannes Muehleisen)
  • RDFExtractor (tweak): use of img @alt in getPlainContent is now optional
  • RdfaExtractor (fix): no use of img @alt any more (thx to Toby Inkster)
  • RSSParser (add): support for Atom links (only the href value)
  • RDFXMLSerializer (add): support for default xmlns and typed nodes
  • StoreEndpoint (fix): auto-setup triggered a PHP notice
  • RSS10Serializer (1st version) (thx to Toby Inkster)

2009-10-21

  • SPARQLPlusParser (tweak): Anticipating possible notation for SPARQL 1.1 aggregates and GROUP BY
  • RemoteStore (add): getDomains method
  • StoreEndpoint (add): TSV result format for SELECT queries
  • SelectQueryHandler (fix): better UNION support (Thanks to Periklis Stavrou and Toby Inkster)
  • TurtleParser (fix): <> was no longer working after tweak in rev 2009-10-05
  • LoadQueryHandler (fix): getOComp created PHP warnings

2009-10-16

  • Resource (add): setIndex() method
  • getFormat (fix): improved n-triples detection (Thanks to Stéphane Corlosquet)
  • RemoteStore (tweak): improved error check for empty results

2009-10-05

  • TurtleParser (tweak): more relaxed xIRI_REF method allows WS now
  • RemoteStore: minor tweaks/fixes
  • Store_LoadQueryHandler (tweak): improved support for multibyte characters in the comparison column

2009-09-28

  • StoreEndpoint (fix): don't set empty parameters in p() method (Thanks to Periklis Stavrou)

2009-09-23

  • Class (add): max_errors config option
  • StoreLoadQueryHandler (fix): more UTF8-friendly getOComp method (Thanks to Masahide Kanzaki & Fumihiro Kato)
  • StoreLoadQueryHandler (tweak): getOComp tries to convert datetime values to UTC now

2009-09-08

  • Class: (tweak) getResource method
  • Reader: (add) basic support for Digest Auth
  • Resource: (add) a store can be used as data source
  • Resource: (add) getPropValues method
  • Store: (add) config option store_engine_type (default: MyISAM)
  • Store: (fix) parameter mismatch related to the LoadQueryHandler (Thanks to Will Daniels)

2009-08-21

  • new component: Resource
  • new method: completeQuery (PREFIX-injection)
  • Reader: new method: getResponseHeaders
  • RDFa: fixes, +3 test case PASSes (thx to Toby Inkster & Masahide Kanzaki)
  • Class: auto-populate POST (php5 bug)
  • Class: refactored *PName methods
  • new methods: toIndex, toTriples, checkRegex
  • Parsers: unsetting reader object to fix garbage collection
  • SelectQueryHandler: improved LIKE-check for REGEX-rewriting
  • Class: used prefixes were not logged, leading to serialization gaps
  • Class: fixed root calculation bug in calcURI
  • Class: new methods: toDataURI/fromDataURI
  • ARC2_SPARQLScriptProcessor: improved automatic PREFIX injection
  • ARC2_RemoteStore: added automatic PREFIX injection and getResourceLabel method
  • ARC2_StoreSelectQueryHandler: fixed missing brackets in getExpressionSQL.
  • Reader: Improved timeout handling
  • Reader: support for port in http header (thx to Roan O'Sullivan)
  • Slowly starting to switch to inline PHPDoc documentation
  • Atom_Parser: Addition: support for link types
  • DeleteQueryHandler: Addition: cleanValueTables method (auto-called every 500 DELETE queries)
  • Class: new method: resetErrors
  • Class: switch from getScriptURI to getRequestURI in init()

2009-03-05

  • Tweak in ARC2_TurtleParser: xIRI_REF is less strict now, the SPARQLParser got its own check
  • Addition in ARC2_SPARQLParser: dedicated xIRI_REF method

2009-03-04

Note: The store's MySQL table structures changed. This version might not be fully compatible with previous revisions!
  • Removal: ARC2_StoreInferencer
  • Tweak in ARC2_StoreTableManager: removed cid column
  • Addition in ARC2_StoreTableManager: store_indexes config option
  • Addition in ARC2_StoreTableManager: extendColumns() method, changes mediumint to int
  • Tweak in ARC2_Store: removed Inferencer calls
  • Tweak in ARC2_StoreQueryHandler: removed cid parameter in getTermID() method
  • Tweak in ARC2_StoreSelectQueryHandler: removed "cid" references
  • Tweak in ARC2_StoreLoadQueryHandler: removed "cid" references
  • Addition in ARC2_StoreLoadQueryHandler: column checks
  • Addition in ARC2_StoreLoadQueryHandler: store_write_buffer config option
  • Tweak in ARC2_TurtleSerializer: support for "raw" parameter to skip getHead method
  • Tweak in ARC2_Class: support for "raw" parameter in toTurtle and toRDFXML methods
  • Tweak in ARC2_Reader: Improved error message on empty file:// base
  • Tweak in ARC2_TurtleParser: "{" and "}" are now allowed in xIRI_REF

2009-02-12

  • Fix in ARC2_RDFXMLSerializer: Scheme-detection: scheme must have at least 2 chars, thanks to Eric Schoonover)
  • Fix in ARC2_TurtleParser: improved xString() method (Thanks to Paul A. Houle)
  • Tweak in ARC2_JSONParser: "null" is now supported by extractValue() method

2009-02-09

  • Fix: replacing \xA0 and \xC2 was too greedy in method x(), moved to TurtleParser (Thanks to Fumihiro Kato)
  • Tweak in ARC2_TurtleParser: leading \xA0 and \xC2 are removed in x() method (Thanks to Fumihiro Kato)
  • Tweak: toUTF8 is now config-bound via "adjust_utf8" option (default: no)
  • Addition in ARC2_Store: getCollation() method
  • Tweak in ARC2_Store: DB connection uses UTF-8 only with conforming table collations
  • Tweak in ARC2_RdfaExtractor: getRootNode returns 1st node if html tag is not found
  • Tweak in ARC2_ErdfExtractor: getRootNode returns 1st node if html tag is not found
  • Addition in ARC2_SemHTMLParser: Support for RDFa detection via typeof/property/about
  • Tweak in ARC2_TurtleSerializer: only predicates and type values are turned into pnames
  • Tweak in ARC2_RDFXMLSerializer: pretty-printed RDF containers are now mozilla-happy (Thanks to Peter Dixon-Moses)