Skip to content

v1.0.0 - Production Release

Latest

Choose a tag to compare

@vnykmshr vnykmshr released this 20 Nov 06:18
· 16 commits to main since this release

🎉 Production Release

bloom-sift v1.0.0 is production-ready with proper serialization and state preservation.

🔧 Breaking Changes

  • Serialization format now includes capacity field
    • Ensures fillRatio is properly preserved through serialization
    • Old serialized data (v0.1.0) will need to be regenerated

✨ Added

  • capacity field to SerializedBloomSift interface
  • Validation for capacity in deserialize() method
  • Test coverage for invalid capacity validation

🔄 Changed

  • deserialize() now properly restores original capacity and fillRatio
  • Version bumped from 0.1.0 to 1.0.0

📊 Performance

  • add(): ~220K ops/sec
  • has(): ~250K ops/sec
  • Memory: 1.2 MB for 1M items @ 1% false positive rate

📦 Package Details

  • Dual ESM/CJS builds
  • Full TypeScript support with bundled types
  • Works in Node.js 20+ and browsers
  • Zero dependencies (except murmur-hash)
  • 34 comprehensive tests, all passing

📚 Documentation

🚀 Installation

```bash
npm install bloom-sift
```

🔍 Quick Example

```typescript
import { BloomSift } from 'bloom-sift';

const filter = new BloomSift({ capacity: 1000, errorRate: 0.01 });

filter.add('user:123');
filter.has('user:123'); // true
filter.has('user:456'); // false (probably)
```


Full Changelog: https://github.com/vnykmshr/bloom-sift/blob/main/CHANGELOG.md