v0.5.6
Bug-fix release. Four PRs since 0.5.5, all from external contributors.
Visualizer
LadybugDB graphs are no longer empty in the live viz server (#1458, #1506). KùzuDB spells its internal dict fields lowercase (_id/_label/_src/_dst); LadybugDB spells the same fields uppercase. v0.5.5 fixed only the offline renderer — the live server's /api/graph still keyed on lowercase alone and silently discarded every row on Ladybug. This covers the second call site, with 90 lines of new parsing tests.
A node name containing </script> no longer corrupts the offline page (#1514, #1562). json.dumps escapes quotes and backslashes but not <, > or &, and the graph is inlined straight into a <script> block — so an identifier or file path containing </script> closed the element early and the rest of the document was parsed as markup. Those three characters are now emitted in \uXXXX form, which keeps the payload valid JSON and valid JavaScript while making it inert as markup. title is HTML-escaped at both interpolation sites.
Tools
advanced_language_query(language="java") no longer crashes (#1534, #1560). JavaToolkit was the only toolkit with a non-zero-arg constructor, but the dispatcher builds them all as TOOLKITS[language]() — so Java raised an uncaught TypeError before reaching the error handling. Construction now also happens inside the try, so a future signature mismatch degrades to a structured error rather than escaping the tool contract.
Tests
Unit coverage for git_utils failure modes — success, empty output, CalledProcessError, FileNotFoundError, OSError (#1571, #1572).
Full changelog: v0.5.5...v0.5.6