Changelog
Release history and notable changes
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.0.0 - 2026-03-21
Added
- Three-tier prepared statement cache metrics: request hits, connection hits, and true PG misses
- Process memory (RSS/VSZ) and Tokio runtime gauges (alive tasks, workers, global queue depth)
- DataLoader for batching forward relation lookups
- Per-request DB client (
RequestClient) sharing a single pooled connection across all resolvers - Grafana dashboard with dynamic pool utilization gauge
- Prometheus scrape config and
hey_blast.shparallel load testing - Full documentation site (fumadocs)
--metricsnow defaults totrue
Fixed
- Statement cache metrics: previously all deadpool lookups were counted as misses (96% false miss rate), now correctly shows 99.99% hit rate
graphql_errors_totalcounter initialized at startup to prevent NaN in Prometheus rate() expressions- DB pool
max_sizegauge seeded at startup
Removed
- Schema reload metrics (
schema_reloads_total,schema_reload_duration_seconds,schema_reload_failures_total)
0.9.0 - 2026-03-19
Fixed
- Comprehensive PostgreSQL type serialization -- PostGraphile-compatible GraphQL types for UUID, Time, Interval, Point, BitString, and InternetAddress; wire list filter types for array columns (#9)
0.8.0 - 2026-03-19
Fixed
- NUMERIC columns returning null -- switched to
rust_decimalfor NUMERIC column deserialization; fixed BigFloat filter params (#8)
0.7.0 - 2026-03-19
Fixed
- Synthetic foreign keys for historical tables -- create synthetic FKs from table comments so relations resolve correctly on
_block_rangetables (#7)
0.6.1 - 2026-03-19
No user-facing changes (tag co-located with v0.6.0).
0.6.0 - 2026-03-19
Added
- Fulltext search support via
@fullTextdirective --sanitize_tsqueryinput sanitization,ts_rankordering (#6)
Fixed
- Create synthetic FKs from table comments for historical tables
- Read smart tags from table comments (historical mode)
0.5.0 - 2026-03-19
Added
- PostGraphile
@derivedFromsmart tag support -- backward relation field names resolved via column and table comment smart tags (#5)
0.4.0 - 2026-03-19
Fixed
- GraphiQL playground and route conflict on
/-- playground now serves correctly alongside the GraphQL endpoint (#4)
0.3.0 - 2026-03-19
Changed
- Serve GraphQL on
/instead of/graphqlto match PostGraphile routing (#3)
Fixed
- Use git tag for GitHub Release name instead of Cargo.toml version
0.2.0 - 2026-03-19
Added
- Order by related entity scalar fields --
pg-order-by-relatedparity with correlated subquery ORDER BY enum values (#2)
0.1.0 - 2026-03-19
Added
- Initial Rust implementation of omnihedron (#1)
- Full dynamic GraphQL schema generation from PostgreSQL introspection
- Connection queries with cursor-based and offset pagination
- Filter input types with per-column operators (
equalTo,in,like,isNull, logicaland/or/not) - Forward and backward relation fields (FK resolution)
- Relation filters (
some/none/every,Existsboolean) - Aggregation queries (
sum,count,min,max,average,stddev,variance) - Historical table support (
_block_rangedetection,blockHeightargument) _metadataand_metadatasmulti-chain queriesnode(nodeId)and{entity}ByNodeIdroot queries (Node interface)- Batch query support (POST with JSON array)
- GraphQL subscriptions via WebSocket
- Schema hot reload (LISTEN/NOTIFY with atomic
Arc<RwLock<Schema>>swap) - Selective
SELECT-- only columns referenced in the query are fetched - Count-only fast-path -- queries without
nodes/edgesskip row fetch - Window function
COUNT(*) OVER()for single-roundtrip total count - Selective aggregate computation (only requested aggregates in SQL)
- Query validation: complexity, depth, alias, and batch limits
- Cache-Control headers (
public, max-age=5) - HTTP request tracing with UUID request IDs
DB_HOST_READread replica support--indexermetadata HTTP fallback/healthendpoint- Docker image published to
polytopelabs/omnihedron - 62 integration tests across 8 test files
- CI workflows for formatting, integration tests, and Docker publishing