Skip to content

News

Release milestones, compatibility progress and project updates.

PeachQ 0.89: q tables in DuckDB, SQL beside qSQL, and Kafka

PeachQ 0.89 keeps q tables in DuckDB, where qSQL and SQL both query them. Kafka topics now stream straight into q tables, and q publishes back.

What's new

  • External tables in DuckDB: qSQL on a DuckDB table runs inside DuckDB, and the same table answers SQL.
  • SQL with q values as parameters, from a handle, an s) line or a function.
  • Kafka: subscribe topics into q tables, keep bad messages, publish JSON or q IPC bytes.
  • DuckDB 2.0, up from 1.5.5. On x86-64 it needs a CPU with AVX2; without one, PeachQ reports 'duckdb with the reason rather than crashing.
  • .hash adds xxHash, rapidhash and MurmurHash3, agreeing with DuckDB's hash functions; .crypto adds digests, HMAC and random bytes over the system's OpenSSL.
  • The API reference now covers every q library, including .kafka, .sql and .s.
  • From the 0.88 updates since our last post: sum, avg, min, max and reverse of small vectors are about 100x faster per call (select sum w by k on 7.8M rows drops from 21 s to 1.8 s), and HTTPS works on Windows with no setup, verifying against the system's root store.
  • q conformance reaches 89.0%, up from 88.0% at 0.88, and Windows matches Linux on all 1242 measured suites.

Five more languages talk to PeachQ

A q database is only as useful as the languages that can reach it. This week we took the client libraries people already use with kdb+, pointed each at PeachQ, recorded what happened, and wrote it up. Five more languages now have a complete, recorded article: C#, Node.js, Go, Rust, and R through embedR.

TorQ loads on PeachQ 0.88

The best test of q compatibility is other people's code: frameworks, client libraries and extensions written for kdb+. Since 0.77, a lot of that code now loads on PeachQ.

peachq v0.84 released

  • q conformance rises from 83.9% to 84.5%.
  • Loading fixes cover TorQ, kdb-common, qutil/reQ, funq, qtips and qspec; full workload compatibility remains work in progress.

peachq v0.81 released

PeachQ 0.81 is out. Two features carry this release: enumerations are now a real datatype rather than something the engine resolves away, and there is a CSV reader that will tell you what it found instead of guessing.

peachq v0.77 released

PeachQ 0.77 is out. This release is about what happens in front of you: a help system you reach with a single ?, a REPL that starts in modern mode with autosuggest, and clearer failure when a script goes wrong.

Underneath, qSQL gains real select[n] and select distinct, files can be appended to without a rewrite, and function values (projections, compositions and derived functions) now travel over the kdb+ wire in both directions.

peachq v0.74 released

PeachQ 0.74 is out. This release adds live views, makes namespaces real q values, deepens functional qSQL support and improves compatibility across functions, arithmetic, IPC and the parser.

The milestone that matters most, though, is what those pieces make possible: PeachQ can now load and run qunit, the q unit-testing framework.

peachq v0.66

peachq v0.43 shipped eleven days ago. Three releases later we're at v0.66, and since the version number tracks our q conformance headline, that's the short version of the changelog: 43% → 66%.