Changelog
All notable changes to HyperMesh DB are documented here.
[Unreleased] — Phase C
Section titled “[Unreleased] — Phase C”- TypeScript/Node.js SDK (
@hypermeshdb/client): Full HTTP client with TypeScript types, npm package, identical API surface to the PythonClient. - Reproducible Benchmarks: PostgreSQL comparison harness, Docker Compose benchmark runner, publishable methodology document (
benchmarks/METHODOLOGY.md). - MkDocs documentation site: Material theme, full API reference, getting started guides, architecture documentation.
0.9.0 — Phase B: Transactionality & Advanced Querying
Section titled “0.9.0 — Phase B: Transactionality & Advanced Querying”- Transactions:
begin(),commit(),rollback(),transaction()context manager.BEGIN/COMMIT/ROLLBACKCypher statements.POST /v1/batchatomic multi-operation endpoint. - EXPLAIN / ANALYZE: Query plan introspection with
index_type,buckets_scanned,speedup_factor. - Rate limiting: Sliding window rate limiter (per API key),
X-RateLimit-*headers, 429 responses. - ALTER TABLE:
ADD COLUMN,DROP COLUMN,RENAME TO— schema evolution without downtime. - Test suite: 929 tests total (45 new in Phase B).
0.8.0 — Phase A: Enterprise Foundations
Section titled “0.8.0 — Phase A: Enterprise Foundations”- Authentication: API keys (SHA-256, three roles: readonly / readwrite / admin), JWT-ready architecture.
- Structured logging: JSON log lines, audit log for DDL/DML/auth events.
- Monitoring:
GET /health/live,GET /health/ready,GET /metrics(Prometheus text format). - Docker: Two-stage
Dockerfile,docker-compose.ymlwith healthcheck, volumes, env vars. - Backup / Restore:
hmdb backup,hmdb restoreCLI;POST /v1/backupREST endpoint. - Test suite: 884 tests total (42 new in Phase A).
0.7.0 — Phase 10: Hypergraph Analytics Engine
Section titled “0.7.0 — Phase 10: Hypergraph Analytics Engine”HypergraphPyin-process analytics bridge (SciPy sparse incidence matrix).- 25 hypergraph measures: structural, centrality, spectral, clustering, modularity, s-walk, temporal.
POST /v1/analytics/{table}/{measure}REST endpoint.hypermeshdb.AnalyticsPython class andhmdb analyticsCLI subcommand.- Test suite: 842 tests total (84 new in Phase 10).
0.6.0 — Phase 8: TTL Compaction & Auto-Compact Engine
Section titled “0.6.0 — Phase 8: TTL Compaction & Auto-Compact Engine”hm_compact_with_ttl()C function for TTL-aware bucket-level skip.COMPACT_THRESHOLDDDL: auto-compact after N WAL entries.hmdb compact --ttl,hmdb autocompactCLI.POST /v1/hyperedges/compact,POST /v1/autocompactREST endpoints.
0.5.0 — Phase 7: Multi-table MATCH (Cross-table Joins)
Section titled “0.5.0 — Phase 7: Multi-table MATCH (Cross-table Joins)”- Multi-pattern
MATCHCypher syntax for cross-table joins. - Join strategies: temporal overlap, member intersection, causal chain, general property join.
- Alias-prefixed column output for unambiguous multi-table results.
0.4.0 — Phase 6: Physical Table Isolation
Section titled “0.4.0 — Phase 6: Physical Table Isolation”- Per-table subdirectory layout for independent WAL, TPI, FMI, PSI files.
hmdb migrateCLI for upgrading older flat-file databases.Connectionrefactored to_storesdict for multi-table support.
0.3.0 — Phase 5: Network Protocol
Section titled “0.3.0 — Phase 5: Network Protocol”hmdb serveFastAPI REST server (uvicorn).hypermeshdb.Clientremote Python client.- HTTP/JSON wire protocol with all CRUD operations.
0.2.0 — Phases 3 & 4: DML + PSI
Section titled “0.2.0 — Phases 3 & 4: DML + PSI”INSERT,UPDATE,DELETECypher DML.- PSI (Property Secondary Index) for numeric property predicates.
CREATE INDEX,DROP INDEX,SHOW INDEXES.
0.1.0 — Phases 1 & 2: Core Engine + Query Language
Section titled “0.1.0 — Phases 1 & 2: Core Engine + Query Language”- Variable-length hyperedge schema (
HmHyperedgeHeaderV2). - TPI Bucket Pushdown and FMI membership index.
- Cypher-compatible query language:
MATCH HYPEREDGE,WHERE,RETURN. - WAL crash-safe write path with order-independent tombstone matching.
- Python
ctypesbindings (HmStore).