Skip to content

Releases: bkarak/sdriver-xpath

SDriver/XPath 2.0.1

Choose a tag to compare

@bkarak bkarak released this 03 Oct 22:44

Fixed

  • A negative number in a trained value slot was refused. The normaliser replaced 5
    with a placeholder but kept the - of -5 as an operator, so //a[@x=-5] and
    //a[@x=5] had different identifiers. A - that can only be a sign (at the start, or
    after an operator, (, [ or ,) is now folded into the number. Subtraction
    (@x - 5, the first - of 3 - -5) is still kept as an operator.
  • A refused query could forge log lines. The refused query was written verbatim to the
    log and to the exception message, so a newline in user input started what looked like a new
    log record. Control characters, line and paragraph separators and backslashes are now
    escaped (\n, \r, \t, \\, \uXXXX) in both places.
  • FlatFileRegistry could lose an identifier. It added the identifier to memory before
    writing it to the file. When the write failed, the identifier passed as trained for the rest
    of the run, was missing from the file the next time, and a retry never wrote it, because
    the registry thought it already had it. It is now written first and recorded only once the
    write has succeeded.