Skip to content

Changelog

All notable changes to HyperMesh DB are documented here.


  • TypeScript/Node.js SDK (@hypermeshdb/client): Full HTTP client with TypeScript types, npm package, identical API surface to the Python Client.
  • 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/ROLLBACK Cypher statements. POST /v1/batch atomic 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).

  • 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.yml with healthcheck, volumes, env vars.
  • Backup / Restore: hmdb backup, hmdb restore CLI; POST /v1/backup REST 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”
  • HypergraphPy in-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.Analytics Python class and hmdb analytics CLI 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_THRESHOLD DDL: auto-compact after N WAL entries.
  • hmdb compact --ttl, hmdb autocompact CLI.
  • POST /v1/hyperedges/compact, POST /v1/autocompact REST 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 MATCH Cypher 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 migrate CLI for upgrading older flat-file databases.
  • Connection refactored to _stores dict for multi-table support.

  • hmdb serve FastAPI REST server (uvicorn).
  • hypermeshdb.Client remote Python client.
  • HTTP/JSON wire protocol with all CRUD operations.

  • INSERT, UPDATE, DELETE Cypher 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 ctypes bindings (HmStore).