What's new in
CIUF

Tracked publicly as we build toward v0.1.0.

Coming soon
Upcoming
v0.1.0
Public release
New
First public release on GitHub and PyPI. The repository will go public once all M1–M4 milestones pass production-grade verification.
  • Public GitHub repository
  • PyPI package: pip install ciuf[postgres]
  • Full benchmark suite and verified latency numbers
  • Docs live at ciuf.io/docs
2026-05
M4 — Internal
Thread safety
New
RLock guards on all DAG nodes enable safe concurrent access from multiple threads without data races or stale reads.
  • RLock per DAG node for read/write isolation
  • Stress-tested with concurrent reader + writer threads
  • Compatible with gevent and asyncio thread executors
2026-04
M3 — Internal
LRU/TTL eviction
New
Memory-bounded cache with configurable LRU eviction and per-query TTL.
  • LRU eviction: least-recently-used queries freed first under memory pressure
  • Per-query TTL: optional time-based expiry for volatile datasets
  • Configurable max memory ceiling at engine level
2026-03
M2 — Internal
Incremental engine
New
Core DAG propagation for insert, update, and delete deltas. Only affected nodes are recomputed on each write — no full re-query.
  • engine.on_insert(table, row)
  • engine.on_update(table, new_row)
  • engine.on_delete(table, row)
  • SQLAlchemy session hook integration
2026-02
M1 — Internal
SQL parser → DAG
New
SQL queries are parsed with sqlglot and compiled into an in-process DAG that mirrors the query's logical structure. Supports SELECT, JOIN, WHERE, and GROUP BY.
  • sqlglot-based SQL parser
  • DAG node types: Scan, Filter, Join, Aggregate, Project
  • First-call hits the database; all subsequent calls served from the DAG