Download Latest Version 0.86.1 source code.zip (7.2 MB) Google Add to Preferred Sources
Home / 0.86.0
Name Modified Size InfoDownloads / Week
Parent folder
vx-x86_64-apple-darwin.tar.gz 2026-09-11 38.8 MB
vx-aarch64-apple-darwin.tar.gz 2026-09-11 36.6 MB
vx-x86_64-unknown-linux-gnu.tar.gz 2026-09-11 37.0 MB
vx-aarch64-unknown-linux-gnu.tar.gz 2026-09-11 34.7 MB
0.86.0 source code.tar.gz 2026-09-11 5.0 MB
0.86.0 source code.zip 2026-09-11 7.2 MB
README.md 2026-09-11 9.0 kB
Totals: 7 Items   159.3 MB 0

Changes

⚠️ Breaks

  • Use VortexError in editions (#9833) @robert3005
  • Remove the unstable encodings feature (#9710) @robert3005
  • Replace normalized encoding with explicit normalization (#9767) @connortsui20
  • vortex-file: open_cached uses an explicit cache key (#9733) @myrrc
  • feat: require Send on VortexWrite and its futures (#9648) @claude[bot]
  • Add physical parameters to OutputSink (#9585) @connortsui20
  • Let a row dispatch declare a runtime output dtype (#9581) @connortsui20

✨ Features

  • Add tensor row inputs for RowFn (#9776) @connortsui20
  • duckdb: vortex_version() macro (#9787) @myrrc
  • feat(btrblocks): compress binary arrays with VarBin offsets and FSST (#9576) @joseph-isaacs
  • refactor(array): propagate allocators through builders (#9670) @gatesn
  • feat: CMake integration for vortex-ffi & vortex-cpp (#9774) @0ax1
  • Split SplitBy::Layout into Layout and LayoutSubSplitting variants (#9043) @robert3005
  • Assert logical and physical plans for TPC-H SLT tests (#9789) @AdamGS
  • feat(ci): build and bundle Windows artifacts for the Java and Python bindings (#9739) @robert3005
  • cache DTypes parsed from flatbuffers (#9765) @myrrc
  • Support runend canonicalization for lists (#9708) @danking
  • Bloom filter implementation (#9398) @joacoc
  • refactor(array): use buffer allocator in execution context (#9669) @gatesn
  • feat(buffer): add allocator-backed storage (#9668) @gatesn
  • Add Utf8 types for RowFn (#9715) @connortsui20
  • Add mechamism to lock edition definition and how to evolve objects in editions (#9660) @robert3005
  • duckdb: propagate per-file "partition" stats (#9639) @myrrc
  • feat(duckdb): report per-file column statistics from the vortex COPY writer (#9471) @moshap-firebolt
  • feat(ffi): add vx_scalar_new_extension for extension-typed literals (#9691) @balicat
  • Support run-end canonicalize for decimals (#9707) @danking
  • Support canonicalising decimal RunEnd arrays (#9665) @onursatici
  • Add filter-and-scatter RowFn execution (#9521) @connortsui20
  • feat(cuda): add a FastLanes delta decode kernel (#9535) @joseph-isaacs
  • duckdb: support hive partitioning and 'filename' column (#9540) @myrrc

🚀 Performance

  • Pushdown filter through scalar function regardless of number of children (#9830) @robert3005
  • FileSystem for local reads (#9773) @myrrc
  • perf(onpair): speed up compression with onpair 0.2.1 and row training (#9806) @gargiulofrancesco
  • Change DateTimeParts to i32 (#9796) @myrrc
  • perf(datafusion): Only wrap stream in prunable stream when predicate can still change (#9788) @AdamGS
  • Push get_item through wrapper arrays (#9719) @danking
  • Avoid materializing constant structs for select (#9718) @danking
  • Avoid row index canonicalization for trivial masks (#9717) @danking
  • perf(fastlanes): borrow unpack inputs (#9731) @gatesn
  • perf(buffer): store alignment exponents (#9730) @gatesn
  • Avoid materializing constant structs for get_item (#9716) @danking
  • Trim constant-operand cases from scalar function benchmarks (#9696) @connortsui20
  • Decode RowFn constants directly (#9680) @connortsui20
  • Pack Boolean RowFn output directly (#9626) @connortsui20
  • Conditionally slice elements to selected index bounds before filtering wide list arrays (#9679) @mhk197
  • Avoid iterative drop for shallow expression trees (#9657) @robert3005
  • Better fixed-width buffer filtering (#8723) @robert3005
  • Use indexed sources for fallible constant rows (#9629) @connortsui20
  • Map constant RowFn inputs directly (#9628) @connortsui20
  • Build packed boolean output (#9620) @connortsui20
  • Avoid single-chunk grouped accumulator states (#9597) @mhk197
  • refactor(vortex-spatial): execute distance with RowFn (#9616) @HarukiMoriarty
  • Measure numeric arithmetic and comparison benchmarks per CPU feature (#9599) @connortsui20
  • Benchmark primitive comparison across CPU features (#9598) @connortsui20
  • duckdb: MultiFileReader interface (#9383) @myrrc
  • Use dense retry for nullable row functions (#9517) @connortsui20

🐛 Bug Fixes

17 changes * Fix DuckDB scans over Vortex being merged or stalling (#9803) @joseph-isaacs * fix(cloud): parse OpenDAL boolean properties the way object_store does (#9782) @jackylee-ch * Fix: Use arrow's casting logic to cast file stats when reporting them to DF (#9818) @AdamGS * fix(bench): clamp producer values to signed database bounds (#9800) @connortsui20 * fix(buffer): reject ZSTs and address allocator review comments (#9807) @gatesn * fix(vx): stop advertising --json on 'vx tree array' (#9780) @jackylee-ch * Support unsigned sequence in the DuckDB exporter (#9720) @danking * fix(dict): cap max_dict_bytes at the u32 range BinaryView addresses (#9690) @mnshdw * fix(dict): clear encoder state in DictEncoder::reset (#9693) @mnshdw * bench: run the full compress suite under `--gpu-decompress` (#9399) @joseph-isaacs * duckdb: forbid aggregations and filter pushdowns over virtual columns (#9238) @myrrc * fix: update the delta snapshot (#9608) @rapour * feat: sequence cast compute (#8403) @siddarth2810 * fix: price delta's bases and tail padding in its compression estimate (#9602) @rapour * fix: pad delta remainder with last value (#9557) @rapour * fix: stabilize conjunct selectivity (#9543) @joseph-isaacs * Carry partial RowFn validity with MaskValues (#9534) @connortsui20

📖 Documentation

8 changes * Comprehensive security policy and vulnerability reporting process (#9747) @joseph-isaacs * docs(vortex-layout): mark the bloom filter aggregate as unstable (#9753) @connortsui20 * Clarify Boolean collection code generation (#9676) @connortsui20 * docs(vortex-spatial): add crate overview (#9683) @HarukiMoriarty * Clarify `RowFn` infallibility documentation (#9618) @connortsui20 * docs(java): replace the Java API example that no longer compiles (#9635) @jackylee-ch * docs: filter pushdown is connected, not future work (#9637) @jackylee-ch * duckdb: add release docs (#9575) @myrrc

🧰 Maintenance

38 changes * Align AGENTS.md instructions with rest of guidance in the repo (#9826) @robert3005 * Fix onpair btrblocks golden snapshot (#9835) @robert3005 * Fix python formatting after typechecker change (#9828) @robert3005 * duckdb: don't optimize_recursive() before exporting chunks (#9795) @myrrc * Replace basedpyright with ty for Python type checking (#9546) @robert3005 * Fix deprecation warning in btrblocks varbin scheme (#9819) @robert3005 * bench: track small u8 dictionary take (#9566) @joseph-isaacs * Replace filter-and-scatter RowFn fallback with filtered valid-row execution (#9645) @robert3005 * Adds clickbench logical & physical plans (#9794) @joseph-isaacs * Update alp to 0.0.4 (#9793) @robert3005 * Switch wasmer setup to setup-wasmer and pin version to 7.4.0 (#9786) @robert3005 * Fix path WORK_DIR path normalization in SLT tests (#9790) @AdamGS * Lock file maintenance (#9563) @[renovate[bot]](https://github.com/apps/renovate) * Update rui314/setup-mold digest to 7e4f20a (#9560) @[renovate[bot]](https://github.com/apps/renovate) * Update taiki-e/install-action digest to d438492 (#9561) @[renovate[bot]](https://github.com/apps/renovate) * Lock file maintenance (#9139) @[renovate[bot]](https://github.com/apps/renovate) * Reuse compression/decompression results in compression benchmarks (#9744) @robert3005 * ci: configure RunsOn volume sizes (#9772) @robert3005 * Move benchmark machines to c8gd.metal-24xl (#9761) @robert3005 * Return the lazy filtered row index array directly (#9760) @robert3005 * refactor(decimal): dispatch numeric kernels on one storage width (#9756) @mhk197 * chore: deny clippy::inline_always at the workspace level (#9726) @joseph-isaacs * nit: go directly from alignment to usize (#9666) @danking * docs(spark): refresh the user guide against the shipped connector (#9607) @jackylee-ch * docs(vx): state which inspection commands support --json (#9638) @jackylee-ch * Add list filter benchmark (#9686) @mhk197 * Use `SumV2` in `list_sum` (#9621) @mhk197 * fix(policy): update policy to match the new claude and codex bot ids (#9650) @robert3005 * refactor(vortex-spatial): execute geo kernels with RowFn (#9623) @HarukiMoriarty * Upgrade fastlanes to 0.7.0 (#9641) @robert3005 * Bump Datafusion to 55 (#9334) @AdamGS * refactor(runend): clarify filter implementation (#9633) @connortsui20 * refactor(dict): clarify compute invariants (#9632) @connortsui20 * refactor: simplify array optimizer (#9634) @connortsui20 * Add `sum_v2` with SQL empty-input semantics (#9590) @mhk197 * Update anthropics/claude-code-action digest to 16b3b31 (#9559) @[renovate[bot]](https://github.com/apps/renovate) * Extend MaskValuesRef to filter execution (#9542) @connortsui20 * Upgrade toolchain to 1.98.0 (#9539) @robert3005
Source: README.md, updated 2026-09-11