Rules Engine 1.16.0

Release Notes

This release brings the following improvements:

  • Allow CALL <uri> ON ERROR error <statement(s)> END without ON RESULT result <statement(s)>.
  • Allow variables in UPDATE FROM expression.
  • Allow patterns in SUBSCRIBE and REGISTER identifiers.
  • Fixed parsing of enum variable.
  • Fixed UPDATE FROM subscriptionId not handling events.
  • Fixed rules with EXISTS fired too often.
  • Fixed rules with EXISTS fired not at all.
  • Fixed (pattern) variables of INVOCATION were not available.
  • Fixed combination of UPDATE FROM and UPDATE TO.
  • Fixed TOPIC statement overlapping of identifier and topic.
  • Fixed IS EMPTY not working for non-existing property.
  • Fixed rule pattern-based local in combination with condition variables.
  • Log warning when a LOCAL variable results in undefined.
  • Handle rule actions in parallel by default.
  • Performance improved upto 350%.
  • Improved parser error messages.
  • Added statement DEFER ... AS.
  • Added statement FOR ... IN.
  • Added rule attribute PARALLEL.
  • Added possibility to include rules files in other rules files, via INCLUDE <file>.
  • Validation added to check whether the REGISTER, SUBSCRIBE and TIMER ON identifiers do not conflict.
  • Validation added to check whether the UNBIND, UNREGISTER, UNSUBSCRIBE and TIMER OFF identifiers are valid.

Third-Party Software

Third-Party Software used in this release:

Name Version Provider License
co 4.6.0 co MIT
fast-equals 1.6.2 MIT
has-value 2.0.2 Jon Schlinkert ( MIT
is-plain-object 3.0.0 Jon Schlinkert ( MIT
isobject 3.0.1 Jon Schlinkert ( MIT
jju 1.4.0 Alex Kocharin MIT
quick-lru 4.0.0 Sindre Sorhus MIT
rfdc 1.1.2 David Mark Clements <> MIT
set-value 3.0.0 Jon Schlinkert ( MIT
unset-value 1.0.0 Jon Schlinkert ( MIT

The Licensed Software uses freely available and distributable and/or open source software and other copyrighted material by third parties (“Third-Party Software”).
Third-Party Software is not part of the Licensed Software and the Licensor shall have no warranty or indemnification obligations with respect to any Third-Party Software.