Package: wnpp Severity: wishlist Package name : golang-github-greatroar-blobloom Version : 0.2.1 (for syncthing 1.7.1) URL : https://github.com/greatroar/blobloom License : Apache-2.0 Programming Lang: Go Description : blocked Bloom filter package for Go (golang) with no runtime dependencies
Blobloom is a blocked Bloom filter package for Go (golang) with no runtime dependencies. . Blocked Bloom filters are a cache-efficient variant of Bloom filters, the well-known approximate set data structure. To quote Daniel Lemire, they have unbeatable speed. See the directory benchmarks/ to determine exactly how fast Blobloom is compared to other packages. . Blobloom does not provide hash functions for use with the Bloom filter. Instead, it requires client code to supply hash values. That means you get to pick the hash algorithm that is fastest for your data, use a secure hash such as SipHash or reuse hashes that you've already computed. You only need to supply one 64-bit hash value as Blobloom uses the enhanced double hashing algorithm to synthesize any further hash values it needs. When I investigated what dependencies were missing in Debian for syncthing 1.7.1 I found this one. Best, Nicholas