Skip to content

Rumble 1.11.0 "Banyan Tree" beta

Pre-release
Pre-release

Choose a tag to compare

@ghislainfourny ghislainfourny released this 03 Mar 12:32
· 4740 commits to master since this release
  • experimental support for static typing (--static-typing yes) following the W3C standard.
  • performance improvements in arithmetics, logics, comparison
  • spaces are now supported in paths to json-file()
  • HTTP URLs are now supported by unparsed-text() and unparsed-text-lines()
  • yearMonthDuration, dayTimeDurations, hexBinary, base64Binary can now be compared for inequality in addition to equality
  • performance improvements for comparison
  • the effective boolean value is now correctly taken in quantified expressions
  • quantified expressions now work in parallel as well (they leverage the FLWOR iterators)
  • support for floats
  • sum(), avg() are now pushed down and work on large homogeneous as well as heterogeneous sequences
  • stability improvements and improved conformance for comparison, arithmetics and casts
  • dayTimeDuration and yearMonthDuration can now be compared
  • all constructors are now available (semantics identical to cast as)
  • switch and index-of no longer throw an error for incompatible types, which now follows the standard
  • empty function bodies are now allowed (in which case it is considered to return the empty sequence)
  • variable names $null, $array, $object are now allowed
  • annotate() can now automatically cast whenever it makes sense, and is thus more flexible
  • the Item hierarchy is now flat, with a public Item interface available in the Rumble Java API, and individual classes providing the implementation, which should lead to a small performance boost with lighter method calls.
  • fixed an issue (null pointer exception) when an ordering key is always the empty sequence
  • constant predicate lookups with small numbers (<= materialization cap) are pushed down, e.g., json-file("...")[1]
  • general support at the parser level of any type QName. prefixes like xs: and js: are now accepted but remain optional (e.g., xs:integer, js:null).
  • an error is appropriately thrown if an order by expression evaluates to more than an item or a non-atomic item
  • builtin functions can now be called with fn:, jn: and math: prefixes as well (depending on their namespace). It is still, however, possible to refer to them without prefix, i.e., this is backward compatible.

The main jar is for Spark 3, but there is another jar for Spark 2.