Skip to content

HeliosDB Nano v3.16.0 Release Notes

HeliosDB Nano v3.16.0 Release Notes

Release Date: 2026-04-24 Theme: Code-graph phase 2 — TypeScript / JavaScript, CREATE EXTENSION hdb_code, cross-file resolver


Highlights

Phase 2 of the code-graph track lights up TypeScript / JavaScript / TSX support, surfaces CREATE EXTENSION hdb_code as DDL, and adds a corpus-wide cross-file symbol resolver so lsp_references returns precise hits across module boundaries.

Terminal window
cargo build --release --features code-graph

What’s New

CREATE EXTENSION hdb_code DDL

CREATE EXTENSION hdb_code;
-- Or, idempotent
CREATE EXTENSION IF NOT EXISTS hdb_code;

Parses through the standard planner, runs the code-graph bootstrap, and marks the extension installed in the process. IF NOT EXISTS with an unknown extension is a silent no-op (matches PG’s permissive migration behaviour).

New LogicalPlan::{CreateExtension, DropExtension} variants. DropExtension is reserved for forward compatibility (sqlparser 0.53 doesn’t expose DROP EXTENSION).

TypeScript / JavaScript / TSX Grammar

Via tree-sitter-typescript. The Language enum extends to TypeScript / JavaScript / TSX; the symbol extractor handles:

  • function_declaration
  • method_definition
  • class_declaration
  • abstract_class_declaration
  • interface_declaration
  • type_alias_declaration
  • enum_declaration

Cross-File Symbol Resolver

After the per-file pass, code_index rebinds every resolution='unresolved' edge against a corpus-wide name index:

  • Single match → resolution='exact'
  • Multiple matches → first one with resolution='heuristic'

This is the difference between “X is referenced somewhere” and “X is referenced in module/foo.ts:42.”


Regression Coverage

  • tests/code_graph_phase2.rs — 5 integration tests:
    • typescript_extracts_class_and_method
    • create_extension_hdb_code_bootstraps_tables
    • create_extension_unknown_errors
    • create_extension_unknown_if_not_exists_is_noop
    • cross_file_ref_resolves

Migration

Additive. Default builds still compile without code-graph. Existing v3.15 callers of EmbeddedDatabase::code_index continue to work — TypeScript files are now parsed automatically when the language is recognised.


Compatibility Matrix

ComponentVersion
PostgreSQL wire14, 15, 16
MySQL wire5.7, 8.0
MCP protocol1.0
tree-sitter0.23
tree-sitter-rust0.23
tree-sitter-python0.23
tree-sitter-typescript0.23