Skip to content

Feature: Add vortex-vector#5010

Merged
gatesn merged 13 commits into
developfrom
ct/vector-bootstrap
Oct 21, 2025
Merged

Feature: Add vortex-vector#5010
gatesn merged 13 commits into
developfrom
ct/vector-bootstrap

Conversation

@connortsui20
Copy link
Copy Markdown
Contributor

@connortsui20 connortsui20 commented Oct 20, 2025

Tracking Issue: #5028

Roadmap: #4492

Continuation of #4954

This is mostly boilerplate code with a bit more documentation than normal.

There are still a few bugs in the implementation (documented by TODOs), but I would like this PR to just focus on the structure of the crate rather than the logic.

Also add logic in other crates that was missing before.


The general structure of the crate is as such:

vortex-vector
├── Cargo.toml
└── src
    ├── <type>
    │   ├── mod.rs
    │   ├── vector.rs
    │   └── vector_mut.rs
    ├── lib.rs
    ├── macros.rs
    ├── ops.rs
    ├── private.rs
    ├── vector.rs
    └── vector_mut.rs

The exceptions to this structure will be primitive, which needs a generic type as well (so there will be extra files), a varbin module that holds both binary and string modules, and probably the 2 list types might share a lot of code (we'll see once I get there).

Again, a lot of the logic here is not super clean and some of it is wrong, but I'd like to get this merged first before I fix those.

Comment thread vortex-buffer/src/bit/buf_mut.rs

// Otherwise, we need to copy bits into a new buffer
let mut new_buffer = BitBufferMut::with_capacity(new_len);
for i in 0..new_len {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we slice and build the other one from iter?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure that would be cleaner? To be honest I didn't actually look through any of this code

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's not about cleaner, the performance of this won't be great

Comment thread vortex-vector/src/bool/vector_mut.rs Outdated
Comment thread vortex-vector/src/bool/vector_mut.rs Outdated
Comment thread vortex-vector/src/vector/ops.rs Outdated
Comment thread vortex-vector/src/ops.rs
Comment thread vortex-vector/src/lib.rs Outdated
@codecov
Copy link
Copy Markdown

codecov Bot commented Oct 20, 2025

Codecov Report

❌ Patch coverage is 40.64588% with 533 lines in your changes missing coverage. Please review.
✅ Project coverage is 86.90%. Comparing base (c698a77) to head (912cb78).
⚠️ Report is 1 commits behind head on develop.

Files with missing lines Patch % Lines
vortex-vector/src/primitive/vector_mut.rs 0.00% 81 Missing ⚠️
vortex-vector/src/bool/vector_mut.rs 0.00% 73 Missing ⚠️
vortex-vector/src/primitive/generic_mut.rs 0.00% 70 Missing ⚠️
vortex-vector/src/primitive/vector.rs 0.00% 50 Missing ⚠️
vortex-vector/src/vector_mut.rs 0.00% 39 Missing ⚠️
vortex-mask/src/mask_mut.rs 89.42% 35 Missing ⚠️
vortex-vector/src/null/vector_mut.rs 0.00% 35 Missing ⚠️
vortex-vector/src/bool/vector.rs 0.00% 31 Missing ⚠️
vortex-vector/src/primitive/generic.rs 0.00% 25 Missing ⚠️
vortex-vector/src/null/vector.rs 0.00% 14 Missing ⚠️
... and 10 more

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Comment thread vortex-buffer/src/bit/buf.rs Outdated
Comment thread vortex-vector/src/null/vector_mut.rs Outdated
Comment thread vortex-vector/src/primitive/mod.rs Outdated
Comment thread vortex-vector/src/primitive/mod.rs Outdated
Comment thread vortex-vector/src/primitive/vector.rs Outdated
Comment thread vortex-vector/src/primitive/vector_mut.rs Outdated
Comment thread vortex-vector/src/lib.rs Outdated
Comment thread vortex-vector/src/lib.rs Outdated
Comment thread vortex-vector/src/private.rs Outdated
gatesn and others added 11 commits October 21, 2025 11:08
Signed-off-by: Nicholas Gates <nick@nickgates.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Also addresses comments.

Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
@gatesn gatesn merged commit 6317892 into develop Oct 21, 2025
39 checks passed
@gatesn gatesn deleted the ct/vector-bootstrap branch October 21, 2025 15:53
@connortsui20 connortsui20 mentioned this pull request Oct 21, 2025
39 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog/feature A new feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants