Rapidfuzz Versions Save

Rapid fuzzy string matching in Python using various string metrics

v3.9.0

1 week ago

Changed

  • significantly improve type hints for the library

Fixed

  • fix cmake version parsing

v3.8.1

1 month ago

Fixed

  • use the correct version of rapidfuzz-cpp when building against a system installed version

v3.8.0

1 month ago

Added

  • added process.cpdist which allows pairwise comparison of two collection of inputs

Fixed

  • fix some minor errors in the type hints
  • fix potentially incorrect results of JaroWinkler when using high prefix weights

v3.7.0

1 month ago

Changed

  • reduce import time

v3.6.2

2 months ago

Changed

  • upgrade to Cython==3.0.9

Fixed

  • upgrade rapidfuzz-cpp which includes a fix for build issues on some compilers
  • fix some issues with the sphinx config

v3.6.1

4 months ago

Fixed

  • fix overflow error on systems with sizeof(size_t) < 8

v3.6.0

4 months ago

Fixed

  • fix pure python fallback implementation of fuzz.token_set_ratio
  • properly link with -latomic if std::atomic<uint64_t> is not natively supported

Performance

  • add banded implementation of LCS / Indel. This improves the runtime from O((|s1|/64) * |s2|) to O((score_cutoff/64) * |s2|)

Changed

  • upgrade to Cython==3.0.7
  • cdist for many metrics now returns a matrix of uint32 instead of int32 by default

v3.5.2

6 months ago

Fixed

  • use _mm_malloc/_mm_free on macOS if aligned_alloc is unsupported

v3.5.1

6 months ago

Fixed

  • fix compilation failure on macOS

v3.5.0

6 months ago

Changed

  • skip pandas pd.NA similar to None
  • add score_multiplier argument to process.cdist which allows multiplying the end result scores with a constant factor.
  • drop support for Python 3.7

Performance

  • improve performance of simd implementation for LCS / Indel / Jaro / JaroWinkler
  • improve performance of Jaro and Jaro Winkler for long sequences
  • implement process.extract with limit=1 using process.extractOne which can be faster

Fixed

  • the preprocessing function was always called through Python due to a broken C-API version check
  • fix wraparound issue in simd implementation of Jaro and Jaro Winkler