Skip to content

Conversation

@kkovaacs
Copy link
Contributor

@kkovaacs kkovaacs commented Jan 5, 2026

We were using only a small subset of the functionality provided by the bloomfilter crate and were relying on some of the internals (like the layout of the internal bit vector).

To avoid being stuck forever with bloomfilter 1.x this PR removes our dependency on the bloomfilter crate and instead reimplements the functionality we actually use.

We can now also compute the Bloom filter bit indices much more efficiently -- the bloomfilter crate did not have an API for that, so we had to rely on an ugly, inefficient hack to get that piece of information.

And inline the subset of its functionality we use, plus some internals
that have not been made public on the `bloomfilter` API.
@kkovaacs kkovaacs marked this pull request as ready for review January 5, 2026 15:36
@kkovaacs kkovaacs requested a review from a team as a code owner January 5, 2026 15:36
Copy link
Contributor

@t00ts t00ts left a comment

Choose a reason for hiding this comment

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

LGTM

I suppose this new approach is implicitly covered by existing tests (otherwise, should we consider adding a test?)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants