Release Notes - Commons JXPath - Version 1.3

Bug

  • [JXPATH-2 ] - Using JXPath in multiple threads
  • [JXPATH-5 ] - asPath() returns a path to the last sibling
  • [JXPATH-10 ] - JXPath 1.1 code using custom functions failing when run in 1.2 onwards
  • [JXPATH-12 ] - Descendant or self axis does not work correctly at root node
  • [JXPATH-17 ] - JXPathContext.iteratePointers("//*") results are incorrect
  • [JXPATH-30 ] - Source instructions on web site are wrong
  • [JXPATH-37 ] - JXPathException cause
  • [JXPATH-38 ] - ClassFunctions throws NPE searching for a function in null ns
  • [JXPATH-40 ] - Problem in namespace handling
  • [JXPATH-46 ] - NullPointerException
  • [JXPATH-50 ] - does not properly handle NodeSet returned by extension function
  • [JXPATH-68 ] - StackOverflow error on a call to 'JXPathContext.createPath()'
  • [JXPATH-70 ] - Javadoc missing from distribution
  • [JXPATH-73 ] - ValueUtils should catch IndexOutOfBoundsException instead of ArrayIndexOutOfBoundsException (for XmlBeans support)
  • [JXPATH-76 ] - CompiledExpression not completely thread-safe
  • [JXPATH-79 ] - Error when accessing JXPathContext methods in Concurrent Scenario
  • [JXPATH-83 ] - JXpath automatically trims string values
  • [JXPATH-84 ] - reserved word enum is used
  • [JXPATH-85 ] - Restore binary compatibility with JXPath 1.2
  • [JXPATH-87 ] - xmlURL field not set in XMLDocumentContainer
  • [JXPATH-89 ] - Cannot compare pointers that do not belong to the same tree
  • [JXPATH-90 ] - Upper boundary check is missing from substring(<string>, <number>)
  • [JXPATH-93 ] - Binary operators behaviour involving node-sets is incorrect
  • [JXPATH-94 ] - equality test for multi-valued variables does not conform to spec
  • [JXPATH-95 ] - Comparing with NaN is incorrect
  • [JXPATH-97 ] - Incomplete handling of undefined namespaces
  • [JXPATH-98 ] - termination problem with empty list
  • [JXPATH-100 ] - Core union operation does not sort result nodes according to document order
  • [JXPATH-101 ] - Original context from VariableContextWrapper is not visible
  • [JXPATH-102 ] - Core rounding functions don't handle NaN or infinite values correctly
  • [JXPATH-104 ] - selectSingleNode() from a map should not select map values keyed by strings with embedded colons using namespaced element syntax
  • [JXPATH-105 ] - BasicNodeSet.getNodes() returns values instead of nodes ?
  • [JXPATH-106 ] - Typo in JXPathException.getMessage()
  • [JXPATH-107 ] - RCN: Nullcheck of NodePointer.parent of value previously dereferenced in PropertyOwnerPointer.setValue(Object)
  • [JXPATH-109 ] - Namespaced attribute not selected with wildcard
  • [JXPATH-111 ] - ClassCastException in PrecedingOrFollowingContext
  • [JXPATH-113 ] - NullPointerException in ChildContext
  • [JXPATH-114 ] - node() implementation in DOM and JDOM model
  • [JXPATH-115 ] - Issue with attribute::
  • [JXPATH-120 ] - ClassCastException in ServletRequestHandler.setProperty()
  • [JXPATH-123 ] - Regression: "fix" made to NamespaceResolver broke existing testcases

Improvement

  • [JXPATH-75 ] - The dependency for xerces in commons-jxpath-1.2.pom is too old
  • [JXPATH-88 ] - Add getPrefix(String namespaceURI) to JXPathContext
  • [JXPATH-91 ] - KeyManager should support nodeset selection
  • [JXPATH-108 ] - problems with NodeSet returned from custom function.
  • [JXPATH-124 ] - Make buildContextChain method of Path class protected

New Feature

  • [JXPATH-96 ] - Extract VariablePointerFactory interface

Acknowledgements

Thanks to everybody who reported problems, helped to trace them, suggested changes or simply provided encouragement. Special thanks to

  • Dmitri Plotnikov (foundation)
  • Niall Pemberton (release guidance)
  • Dennis Lundberg (M2 assistance)
  • Sergey Vladimirov (numerous bug reports)
  • Michele Vivoda (numerous bug reports)
  • Henri Yandell (proposing a new committer)
  • Elliotte Rusty Harold (XPath feature sanity check)