Skip to content

v0.3.10

Choose a tag to compare

@dylanbstorey dylanbstorey released this 22 Mar 13:05
· 142 commits to main since this release
a205847

What's New

Pattern predicates in WHERE clause (openCypher 9 compliance)

Bare relationship patterns now work as boolean expressions in WHERE clauses:

-- These are now equivalent:
MATCH (n) WHERE NOT (n)-[:BELONGS_TO]->() RETURN n
MATCH (n) WHERE NOT EXISTS((n)-[:BELONGS_TO]->()) RETURN n

Supports all directions (->, <-, -), typed and untyped relationships, and combination with NOT/AND/OR/XOR.

Bug fixes

  • EXISTS direction fix: EXISTS(pattern) now correctly handles incoming (<-) and undirected (-) relationship patterns. Previously always assumed outgoing direction.

Testing

  • Added Clotho bug reproduction tests to Rust integration suite, confirming count(), OPTIONAL MATCH, property-match {key: value}, and undirected match all work correctly through the Rust binding path.

Full Changelog: v0.3.9...v0.3.10