Skip to content

Releases: srimon12/qql-rs

QQL 0.2.0

Choose a tag to compare

@github-actions github-actions released this 31 Jul 20:39
c1c2bf2

[0.2.0]

📦 Packaging (VS Code only)

  • VS Code extension 0.2.1 — Marketplace packaging bump (immutable 0.2.0 slot). Ships the same QQL 0.2.0 WASM parser; crate / SDK versions stay at 0.2.0. Fixes analysis feedback loops (CodeLens / host thrash), UTF-8 statement slicing for explain, shared analysis cache, Output channel for plans/routes, and Biome + typecheck scripts. VSIX binaries are no longer committed; build via npm run package (@vscode/vsce).

🚀 Added

  • QQL documentation website — a new docs site at qql.veristamp.in (Astro + Starlight) replaces the legacy playground. 40+ pages across Start, Language, Guides, Edge, SDKs, Tools, Reference, and Contributing, including a dedicated Edge runtime section (9 pages), a Filter injection security guide, an Error codes reference, and editors documentation for the VS Code extension. All language, CLI, SDK, and reference pages were rewritten and deepened.
  • Interactive playground — integrated into the site and backed by a freshly built qql-wasm bundle. Every documented example is extracted and parsed at build time, so the docs cannot drift from the parser.
  • Grammar as the single source of truthqql-grammar-gen now derives five artifacts from language/v1/grammar.pest: the generated pest grammar, the VS Code TextMate grammar, the VS Code and playground keyword tables, and the Rust KEYWORDS map (keywords.generated.rs) used by the qql-core lexer.
  • Language & conformance — new conformance fixtures for CROSS RERANK and formula division defaults, grammar support for USING MULTI/MULTIVECTOR/IMAGE embedding specs, and a documented contract map in language/v1/README.md. The conformance suite now stands at 35 valid files (249 statements) / 53 invalid cases / 35 AST snapshots.
  • Python typing.pyi stubs and py.typed markers for pyqql and pyqql-edge.
  • Executable grammar contractqql-conformance now compiles language/v1/grammar.pest in test-only code and checks the canonical grammar against the fixture corpus without adding Pest to the qql-core runtime parser.
  • VS Code 0.2.0 — live diagnostics, hover plans, CTE go-to-definition, document symbols, folding, CodeLens, commands, status bar state, contextual completions, QQL snippets, and Markdown fenced-block support.
  • Updated examples — WASM examples now use the checked-in generated package, and the edge example documents the required opt-in CLI feature.

🏗️ Architecture

  • Lexer/grammar lockstep — the TokenKind enum stays hand-written, but its keyword map is generated and guarded by bi-directional drift tests (grammar → keywords, and parser keyword vocabulary → grammar), and qql-grammar-gen check rejects grammar rules unreachable from the entry productions. A dead sharding_method_val rule and its unused TokenKind variants were removed.
  • Parser-generation roadmapdocs/parser_generation_design.md evaluates pest/LALRPOP/custom generators against the no_std, zero-dependency core and lays out a phased migration.
  • Shared editor analysis — the extension now performs one debounced WASM analysis per document and shares the result across diagnostics, hover, symbols, CodeLens, and completion providers.

🔒 Changed & Scoped

  • Edge fail-loud hardeningPARAMS (timeout) and PARAMS (consistency) are now rejected on the edge backend with QQL-EDGE-UNSUPPORTED-TIMEOUT / QQL-EDGE-UNSUPPORTED-CONSISTENCY instead of being silently ignored.
  • Fail-closed set_shard_key in the Python, Node, and WASM bindings — assigning a shard key to a statement type that does not support routing now raises an error.
  • Installer & release tooling — install scripts validate released platform targets (with a build-from-source hint otherwise) and RELEASING.md was aligned to 0.1.5 (edge verification notes the --features edge requirement).
  • Versioninglanguage/v1/spec/versioning.md documents the post-0.1.5 contract corrections and hardening.
  • Language version 1.3 — the specification now documents multivector and image embedding directives, strict COUNT and shard-key configuration, and the current 35 valid / 249 statement / 53 invalid / 35 snapshot conformance corpus.
  • Fallible planning surface — removed the panicking qql_plan::routing::route() helper and the shard-key-dropping top_level_filter_with_shard() helper; use try_route() or compile_statement().

🐛 Fixed

  • Parser/grammar alignment — fixed triple-quoted string preservation, four-quote SQL strings, malformed numeric literals, non-finite floats, COUNT clause ordering, index-type validation, rerank inputs, feedback strategy validation, raw-string prefix handling, and identifier segment validation.
  • Planner and execution safety — replaced unsupported PREFETCH panics, integer overflow, and silent prefetch degradation with structured errors; preserved CTE-backed RERANK prefetches.
  • Backend correctness — fixed DELETE PAYLOAD batching, edge reads that created missing collections, gRPC/edge point-lookup envelopes, gRPC RRF parameters, and lossy gRPC filter conversion.
  • SDK and CLI correctness — aligned Python and Node declarations with native APIs, fixed Node edge HTTP embedding and model forwarding, corrected CLI REPL ANSI output, and rebuilt the bundled editor WASM as a release artifact.

📚 Documentation

  • Edge timeout/consistency behavior, error codes, backend compatibility, and API surfaces updated to match the hardened runtime.
  • Documentation validation now rejects unwrapped QQL/SQL fences, parse-and-plan checks examples and fixtures, and verifies same-site documentation anchors.

🔗 Major release work

  • Core language and execution hardening — PR #25 — grammar/runtime conformance, parser and AST fixes, planner safety, backend correctness, binding alignment, and structured error handling.
  • VS Code packaging cleanup — PR #26 — removed the obsolete packaging path, corrected completion output, and added editor source checks.
  • Website validation and documentation — PR #27 — executable documentation checks, raw-fence validation, anchor checking, and updated reference content.
  • VS Code language intelligence — PR #28 — full editor-host analysis, providers, commands, snippets, release WASM, and the 0.2.0 VSIX.

QQL 0.1.5

Choose a tag to compare

@github-actions github-actions released this 30 Jul 15:55
8151281

QQL 0.1.5

Changes since v0.1.4

3e5d7a0 chore: bump version to 0.1.5
bf92af5 feat: fmt+clippy pass
5b0e130 docs(crates): rewrite crate READMEs; note inject_shard_key removal
031fd3c docs(skills): align product docs on isolation vs SHARD routing
9d6b1c9 examples: refresh demos for SHARD model, turbo quant, all-minilm
7b8da07 refactor(sdk): drop inject_shard_key from all language bindings
80f3026 refactor(core): remove inject_shard_key; route via SHARD or set_shard_key
ea5840a fix(plan): keep shard routing off Filter; add turbo quant IR
7dfc27b fix(ci): remove push trigger from CI workflow
d2cf0be fmt cleanup
a3414dc fix(ci): raise MSRV to 1.95 and gate CLI REST-only paths
cf18c33 feat: enhance CI workflow and documentation, improve code comments and links
c5ae2f1 Refactor SEC 10-K QQL examples for improved configuration and metadata handling
3a23392 feat: add injectShardKey functionality in sdk , remove duplicates from sdk and brough to qql-core and update related documentation and tests
141fda3 feat(vscode): extension updated. readme too

QQL 0.1.4

Choose a tag to compare

@github-actions github-actions released this 30 Jul 00:33

QQL 0.1.4

Changes since v0.1.3

c047757 chore: bump version to 0.1.4
bf148c9 chore: bump version to 0.1.4 and update dependencies across all crates
cd55d58 feat: QQL 1.2 — schema-first vectors, multivector, CLIP, cross-encoder, multi-tenancy, edge SDKs, docs, benchmarks (#17)
0eccf7b feat(cleanup): removed wasm-demo to a seperate github project

QQL 0.1.3

Choose a tag to compare

@github-actions github-actions released this 29 Jul 01:21

QQL 0.1.3

Changes since v0.1.2

1ac19f7 fix: update release workflow for npm Trusted Publishing and improve documentation
db858eb fix: update npm publish commands to specify registry and clean up npmrc files
7404d79 fix: update npm package configuration for public access and improve publish error handling
95c2d12 fix: update package.json for qql-wasm with repository info and public access
ffad03c fix: extract npm package to temporary directory before publishing
3cff10b docs(changelog): add 0.1.3 release notes
27282f4 chore: update Cargo.lock for version 0.1.3 bump
167816c fix: restore correct platform names in npm optionalDependencies
c252bcd chore: bump version to 0.1.3 and add centralized VERSION file
eb6e0c3 test(pyqql): skip live Qdrant tests in CI when Qdrant unavailable
dbb839b test(nqql): skip live Qdrant tests in CI when Qdrant unavailable
e9873d8 ci: switch npm publishing from token to OIDC Trusted Publishers
c95cf31 chore: fix formatting and regenerate conformance snapshots
6ecaaca docs: fix agent config, inject_filter examples, and skill reference placeholders
ab73e7b fix(sdk): fix binary loading, API aliases, version exports, and add comprehensive tests
0b3f443 fix(rust): unify AST serialization and fix HYBRID UPSERT named-vector mapping
5de0202 docs(bench): update benchmark results and add WASM performance metrics
a57ccae refactor(parser): simplify parse methods by removing unnecessary validation calls
f823467 feat(vscode): add VS Code extension installation instructions and icon
625864e feature(vs-code-ext): new vs-code extention for language support
7939d72 fix(docs): update package names to remove organization scope for qql-wasm
f72e12e Update package installation commands in README
c48861d feat(assets): add QQL banner HTML, SVG logo, and PNG image
aaa0855 fix(docs): update PowerShell install command & added skill command.
67ae9bd feat(install): add installation scripts for Windows PowerShell and Linux/macOS

QQL 0.1.2

Choose a tag to compare

@github-actions github-actions released this 27 Jul 22:32
8bdbacc

[0.1.2] - 2026-07-28

🚀 Added

371d6d2 — feat(language): Add support for QQL 1.1 ON FIELD and INTO spec modifiers, multi-spec embedding options, and new string delimiters across language spec and conformance suite.
f36922f — feat(embed): Enhance embedding specifications to support multi-target fields and explicit field resolution.
b07d2c3 — feat(lexer): Add support for raw strings (r'...'), triple-quoted multiline strings ('''...'''), and backtick strings (...) in lexer and grammar.

🔒 Changed & Scoped

a07f1fc — fix(scope): Update package names to use @veristamp organization scope (@veristamp/nqql, @veristamp/nqql-edge) across documentation, packages, and CI
workflows.
140c401 — chore(release): Bump version to 0.1.2 for all 13 workspace crates, Python packages, and Node package manifests.

🐛 Fixed & Hardened

1fe4055 — fix(review): Address CodeRabbit PR review feedback for v0.1.2 release (fast O(N) string scanning, duplicate target vector validation, empty target checks, and with_url error
propagation).
6920bb6 — fix(release): Improve meta package publishing logic, rate-limit sleep delays, and error handling in release workflow.
ed3fe20 — style: Format codebase with cargo fmt.
3dbac0a — style: Codebase linting, cargo fmt, and clippy fixes.

🛠️ Refactored

def53ab — refactor(error): Refactor error handling across qql-edge and qql-runtime modules with structured metadata fields.
b04e3ca — refactor(tests): Update explain() assertions in pyqql and pyqql-edge to verify structured { ok, query, plan } response dictionaries.