GraphQLite 0.3.8
Bare relationship syntax is here. (a)--(b), -->, and <-- just work now. Undirected matches also got a correctness fix — they now properly query both edge directions instead of silently going forward-only.
Leading-zero strings stay strings. Zip codes like "02134" no longer get silently coerced to 2134 when returned via property access. Fixed at the C layer.
Rust bindings got a lot more ergonomic:
PropertyValueenum — pass typed values (42_i64,0.87_f64,true) directly to upsert, not just stringsValue::get("key")andIndex<&str>— no more pattern matching to read node propertiesget_edges_from(),get_edges_to(),get_edges_by_type()— edge queries without raw CypherGraph::query_params()— one-liner parameterized queriesGraphStatsfields renamed tonode_count/edge_count(breaking)
Python binding bug fixes:
- BFS/DFS and APSP now return actual results (were silently returning
[]) - Same
node_count/edge_countrename for consistency
Algorithm parameters work correctly — integer and double params passed to graph algorithms no longer cause segfaults (#29).
Big shout-out to @kynx for their first contribution to GraphQLite! Welcome aboard.
Full Changelog: v0.3.7...v0.3.8