Recent Releases of rapidfuzz

rapidfuzz - Release 3.14.0

Changed

  • upgrade to Cython==3.1.3. This enables compilation with free threaded python.
  • upgrade to rapidfuzz-cpp==3.3

Added

  • add support for freethreaded Python
  • add python 3.14 wheels

Removed

  • dropped support for Python3.9
  • drop 32 bit linux wheels

Fixed

  • remove unused hook-dirs from pyinstaller config to fix a warning
  • fixed WRatio for a length ratio of exactly 8.0

- Python
Published by maxbachmann 6 months ago

rapidfuzz - Release 3.13.0

Added

  • add support for arrays of type 'w'
  • add support for any DTypeLike as dtype in cdist and cpdist

Changed

  • upgrade to rapidfuzz-cpp==3.3.2

- Python
Published by maxbachmann 11 months ago

rapidfuzz - Release 3.12.2

Added

  • added wheels for pypy 3.11

- Python
Published by maxbachmann 12 months ago

rapidfuzz - Release 3.12.1

Fixed

  • fix version number

- Python
Published by maxbachmann about 1 year ago

rapidfuzz - Release 3.12.0

Changed

  • generate code for fallback imports to be better parseable for tools bundling Python applications into a single binary (examples are cx-freeze and pyinstaller)

Added

  • added support for taskflow 3.9.0

- Python
Published by maxbachmann about 1 year ago

rapidfuzz - Release 3.11.0

Performance

  • improve calculation of min score inside partial_ratio so it can skip more alignments

Added

  • added build support for emscripten

- Python
Published by maxbachmann about 1 year ago

rapidfuzz - Release 3.10.1

Fixed

  • fix compilation on clang-19
  • fix incorrect results in simd optimized implementation of Levenshtein and OSA on 32bit targets

Added

  • added support for taskflow 3.8.0

- Python
Published by maxbachmann over 1 year ago

rapidfuzz - Release 3.10.0

Fixed

  • drop support for Python 3.8
  • switch build system to scikit-build-core

- Python
Published by maxbachmann over 1 year ago

rapidfuzz - Release 3.9.7

Fixed

  • fix crash in cdist due to Visual Studio upgrade

- Python
Published by maxbachmann over 1 year ago

rapidfuzz - Release 3.9.6

Changed

  • upgrade to Cython==3.0.11
  • add python 3.13 wheels

- Python
Published by maxbachmann over 1 year ago

rapidfuzz - Release 3.9.5

Fixed

  • include simd binaries in pyinstaller builds
  • fix builds with setuptools 72 by upgrading scikit-build

- Python
Published by maxbachmann over 1 year ago

rapidfuzz - Release 3.9.4

Fixed

  • fix bug in Levenshtein.editops and Levenshtein.opcodes which could lead to incorrect results and crashes for some inputs

- Python
Published by maxbachmann over 1 year ago

rapidfuzz - Release 3.9.4

Fixed

  • fix bug in Levenshtein.editops and Levenshtein.opcodes which could lead to incorrect results and crashes for some inputs

- Python
Published by maxbachmann over 1 year ago

rapidfuzz - Release 3.9.3

Fixed

  • fix None handling for queries in process.cdist for scorers not supporting SIMD

- Python
Published by maxbachmann over 1 year ago

rapidfuzz - Release 3.9.2

Fixed

  • fix supported versions of taskflow in cmake to be in the range v3.3 - v3.7

- Python
Published by maxbachmann over 1 year ago

rapidfuzz - Release 3.9.1

Fixed

  • disable AVX2 on MacOS since it did lead to illegal instruction errors on some targets

- Python
Published by maxbachmann almost 2 years ago

rapidfuzz - Release 3.9.0

Changed

  • significantly improve type hints for the library

Fixed

  • fix cmake version parsing

- Python
Published by maxbachmann almost 2 years ago

rapidfuzz - Release 3.8.1

Fixed

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

- Python
Published by maxbachmann almost 2 years ago

rapidfuzz - Release 3.8.0

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

- Python
Published by maxbachmann almost 2 years ago

rapidfuzz - Release 3.7.0

Changed

  • reduce import time

- Python
Published by maxbachmann almost 2 years ago

rapidfuzz - Release 3.6.2

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

- Python
Published by maxbachmann almost 2 years ago

rapidfuzz - Release 3.6.1

Fixed

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

- Python
Published by maxbachmann about 2 years ago

rapidfuzz - Release 3.6.1

Fixed

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

- Python
Published by maxbachmann about 2 years ago

rapidfuzz - Release 3.6.0

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

- Python
Published by maxbachmann about 2 years ago

rapidfuzz - Release 3.5.2

Fixed

  • use mmmalloc/mmfree on macOS if aligned_alloc is unsupported

- Python
Published by maxbachmann over 2 years ago

rapidfuzz - Release 3.5.1

Fixed

  • fix compilation failure on macOS

- Python
Published by maxbachmann over 2 years ago

rapidfuzz - Release 3.5.0

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

- Python
Published by maxbachmann over 2 years ago

rapidfuzz - Release 3.4.0

Changed

  • upgrade to Cython==3.0.3
  • add simd implementation for Jaro and Jaro Winkler

- Python
Published by maxbachmann over 2 years ago

rapidfuzz - Release 2.15.2

Since rapidfuzz v2.x is still widely used, Python 3.12 support is backported to rapidfuzz v2.x.

Added

  • add python 3.12 support

- Python
Published by maxbachmann over 2 years ago

rapidfuzz - Release 3.3.1

Added

  • add missing tag for python 3.12 support

- Python
Published by maxbachmann over 2 years ago

rapidfuzz - Release 3.3.0

Changed

  • upgrade to Cython==3.0.2
  • implement the remaining missing features from the C++ implementation in the pure Python implementation

Added

  • added support for Python 3.12

- Python
Published by maxbachmann over 2 years ago

rapidfuzz - Release 3.2.0

Changed

  • build x86 with sse2/avx2 runtime detection

- Python
Published by maxbachmann over 2 years ago

rapidfuzz - Release 3.1.2

Changed

  • upgrade to Cython==3.0.0

- Python
Published by maxbachmann over 2 years ago

rapidfuzz - Release 3.1.1

Changed

  • upgrade to taskflow==3.6

Fixed

  • replace usage of isnan with std::isnan which fixes the build on NetBSD

- Python
Published by maxbachmann over 2 years ago

rapidfuzz - Release 3.1.0

Changed

  • added keyword argument pad to Hamming distance. This controls whether sequences of different length should be padded or lead to a ValueError
  • improve consistency of exception messages between the C++ and pure Python implementation
  • upgrade required Cython version to Cython==3.0.0b3

Fixed

  • fix missing GIL restore when an exception is thrown inside process.cdist
  • fix incorrect type hints for the process module

- Python
Published by maxbachmann over 2 years ago

rapidfuzz - Release 3.0.0

Changed

  • allow the usage of Hamming for different string lengths. Length differences are handled as insertions / deletions
  • remove support for boolean preprocessor functions in rapidfuzz.fuzz and rapidfuzz.process. The processor argument is now always a callable or None.
  • update defaults of the processor argument to be None everywhere. For affected functions this can change results, since strings are no longer preprocessed. To get back the old behaviour pass processor=utils.default_process to these functions. The following functions are affected by this:

    • process.extract, process.extract_iter, process.extractOne
    • fuzz.token_sort_ratio, fuzz.token_set_ratio, fuzz.token_ratio, fuzz.partial_token_sort_ratio, fuzz.partial_token_set_ratio, fuzz.partial_token_ratio, fuzz.WRatio, fuzz.QRatio
  • rapidfuzz.process no longer calls scorers with processor=None. For this reason user provided scorers no longer require this argument.

  • remove option to pass keyword arguments to scorer via **kwargs in rapidfuzz.process. They can be passed via a scorer_kwargs argument now. This ensures this does not break when extending function parameters and prevents naming clashes.

  • remove rapidfuzz.string_metric module. Replacements for all functions are available in rapidfuzz.distance

Added

  • added support for arbitrary hashable sequence in the pure Python fallback implementation of all functions in rapidfuzz.distance
  • added support for None and float("nan") in process.cdist as long as the underlying scorer supports it. This is the case for all scorers returning normalized results.

Fixed

  • fix division by zero in simd implementation of normalized metrics leading to incorrect results

- Python
Published by maxbachmann almost 3 years ago

rapidfuzz - Release 2.15.1

Fixed

  • fix incorrect tag dispatching implementation leading to AVX2 instructions in the SSE2 code path

Added

  • add wheels for windows arm64

- Python
Published by maxbachmann almost 3 years ago

rapidfuzz - Release 2.15.0

Changed

  • allow the usage of finite generators as choices in process.extract

- Python
Published by maxbachmann almost 3 years ago

rapidfuzz - Release 2.14.0

Changed

  • upgrade required Cython version to Cython==3.0.0b2

Fixed

  • fix handling of non symmetric scorers in pure python version of process.cdist
  • fix default dtype handling when using process.cdist with pure python scorers

- Python
Published by maxbachmann almost 3 years ago

rapidfuzz - Release v2.13.7

Fixed

  • fix function signature of get_requires_for_build_wheel

- Python
Published by maxbachmann about 3 years ago

rapidfuzz - Release 2.13.6

Changed

  • reformat changelog as restructured text to get rig of m2r2 dependency

- Python
Published by maxbachmann about 3 years ago

rapidfuzz - Release 2.13.5

Added

  • added docs to sdist

Fixed

  • fix two cases of undefined behavior in process.cdist

- Python
Published by maxbachmann about 3 years ago

rapidfuzz - Release 2.13.4

Changed

  • handle float("nan") similar to None for query / choice, since this is common for non-existent data in tools like numpy

Fixed

  • fix handling on None/float("nan") in process.distance
  • use absolute imports inside tests

- Python
Published by maxbachmann about 3 years ago

rapidfuzz - Release 2.13.3

Fixed

  • improve handling of functions wrapped using functools.wraps
  • fix broken fallback to Python implementation when the a ImportError occurs on import. This can e.g. occur when the binary has a dependency on libatomic, but it is unavailable on the system
  • define CMAKE_C_COMPILER_AR/CMAKE_CXX_COMPILER_AR/CMAKE_C_COMPILER_RANLIB/CMAKE_CXX_COMPILER_RANLIB if they are not defined yet

- Python
Published by maxbachmann about 3 years ago

rapidfuzz - Release 2.13.2

Fixed

  • fix incorrect results in Hamming.normalized_similarity
  • fix incorrect scorecutoff handling in pure python implementation of `Postfix.normalizeddistanceandPrefix.normalized_distance`
  • fix Levenshtein.normalized_similarity and Levenshtein.normalized_distance when used in combination with the process module
  • fuzz.partial_ratio was not always symmetric when len(s1) == len(s2)

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.13.1

Fixed

  • fix bug in normalized_similarity of most scorers, leading to incorrect results when used in combination with the process module
  • fix sse2 support
  • fix bug in JaroWinkler and Jaro when used in the pure python process module
  • forward kwargs in pure Python implementation of process.extract

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.13.0

Fixed

  • fix bug in Levenshtein.editops leading to crashes when used with score_hint

Changed

  • moved capi from rapidfuzz_capi into rapidfuzz, since it will always succeed the installation now that there is a pure Python mode
  • add score_hint argument to process module
  • add score_hint argument to Levenshtein module

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.12.0

Changed

  • drop support for Python 3.6

Added

  • added Prefix/Suffix similarity

Fixed

  • fixed packaging with pyinstaller

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.11.1

Fixed

  • Fix segmentation fault in process.cdist when used with an empty query sequence

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.11.0

Changes

  • move jarowinkler dependency into rapidfuzz to simplify maintenance

Performance

  • add SIMD implementation for fuzz.ratio/fuzz.QRatio/Levenshtein/Indel/LCSseq/OSA to improve performance for short strings in cdist

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.10.3

Fixed

  • use scikit-build=0.14.1 on Linux, since scikit-build=0.15.0 fails to find the Python Interpreter
  • workaround gcc bug in template type deduction

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.10.2

Fixed

  • fix support for cmake versions below 3.17

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.10.1

Changed

  • modernize cmake build to fix most conda-forge builds

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.10.0

Added

  • add editops to hamming distance

Performance

  • strip common affix in osa distance

Fixed

  • ignore missing pandas in Python3.11 tests

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.9.0

Added

  • add optimal string alignment (OSA)

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.8.0

Fixed

  • fuzz.partial_ratio did not find the optimal alignment in some edge cases (#219)

Performance

  • improve performance of fuzz.partial_ratio

Changed

  • increased minimum C++ version to C++17 (see #255)

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.7.0

Performance

  • improve performance of Levenshtein.distance/Levenshtein.editops for long sequences.

Added

  • add score_hint parameter to Levenshtein.editops which allows the use of a faster implementation

Changed

  • all functions in the string_metric module do now raise a deprecation warning. They are now only wrappers for their replacement functions, which makes them slower when used with the process module

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.6.1

Fixed

  • fix incorrect results of partial_ratio for long needles (#257)

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.6.0

Fixed

  • fix hashing for custom classes

Added

  • add support for slicing in Editops.__getitem__/Editops.__delitem__
  • add DamerauLevenshtein module

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.5.0

Added

  • added support for KeyboardInterrupt in processor module It might still take a bit until the KeyboardInterrupt is registered, but no longer runs all text comparisions after pressing Ctrl + C

Fixed

  • fix default scorer used by cdist to use C++ implementation if possible

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.4.4

Changed

  • Added support for Python3.11

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.4.3

Fixed

  • fix value range of jaro_similarity/jaro_winkler_similarity in the pure Python mode for the string_metric module
  • fix missing atomic symbol on arm 32 bit

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.4.2

Fixed

  • add missing symbol to pure Python version which prevented the usage of the fallback implementation

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.4.1

Fixed

  • fix version number

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.4.0

Fixed

  • fix banded Levenshtein implementation

Performance

  • improve performance and memory usage of Levenshtein.editops
    • memory usage is reduced from O(NM) to O(N)
    • performance is improved for long sequences

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.3.0

Added

  • add as_matching_blocks to Editops/Opcodes
  • add support for deletions from Editops
  • add Editops.apply/Opcodes.apply
  • add Editops.remove_subsequence

Changed

  • merge adjacent similar blocks in Opcodes

Fixed

  • fix usage of eval(repr(Editop)), eval(repr(Editops)), eval(repr(Opcode)) and eval(repr(Opcodes))
  • fix opcode conversion for empty source sequence
  • fix validation for empty Opcode list passed into Opcodes.__init__

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.2.0

Changed

  • added in-tree build backend to install cmake and ninja only when it is not installed yet and only when wheels are available

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.1.4

Changed

  • changed internal implementation of cdist to remove build dependency to numpy

Added

  • added wheels for musllinux and manylinux ppc64le, s390x

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.1.3

Fixed

  • fix missing type stubs

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.1.2

Changed

  • change src layout to make package import from root directory possible

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.1.1

Changed

  • allow installation without the C++ extension if it fails to compile
  • allow selection of implementation via the environment variable RAPIDFUZZ_IMPLEMENTATION which can be set to "cpp" or "python"

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.1.0

Added

  • added pure python fallback for all implementations with the following exceptions:
    • no support for sequences of hashables. Only strings supported so far
    • *.editops / *.opcodes functions not implemented yet
    • process.cdist does not support multithreading

Fixed

  • fuzz.partialratioalignment ignored the score_cutoff
  • fix implementation of Hamming.normalized_similarity
  • fix default score_cutoff of Hamming.similarity
  • fix implementation of LCSseq.distance when used in the process module
  • treat hash for -1 and -2 as different

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.0.15

Fixed

  • fix integer wraparound in partialratio/partialratio_alignment (#231)

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.0.14

Fixed

  • fix unlimited recursion in LCSseq when used in combination with the process module

Changed

  • add fallback implementations of taskflow, rapidfuzz-cpp and jarowinkler-cpp back to wheel, since some package building systems like piwheels can't clone sources

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.0.13

Changed

  • use system version of cmake on arm platforms, since the cmake package fails to compile

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.0.12

Changed

  • add tests to sdist
  • remove cython dependency for sdist

- Python
Published by maxbachmann over 3 years ago

rapidfuzz - Release 2.0.11

Changed

  • relax version requirements of dependencies to simplify packaging

- Python
Published by maxbachmann almost 4 years ago

rapidfuzz - Release 2.0.10

Fixed

  • Do not include installations of jaro_winkler in wheels (regression from 2.0.7)

Changed

  • Allow installation from system installed versions of rapidfuzz-cpp, jarowinkler-cpp and taskflow

Added

  • Added PyPy3.9 wheels on Linux

- Python
Published by maxbachmann almost 4 years ago

rapidfuzz - Release 2.0.9

Fixed

  • Add missing Cython code in sdist
  • consider float imprecision in score_cutoff (see #210)

- Python
Published by maxbachmann almost 4 years ago

rapidfuzz - Release 2.0.8

Fixed

  • fix incorrect scorecutoff handling in tokensetratio and tokenratio

Added

  • add longest common subsequence

- Python
Published by maxbachmann almost 4 years ago

rapidfuzz - Release 2.0.7

Fixed

  • Do not include installations of jaro_winkler and taskflow in wheels

- Python
Published by maxbachmann almost 4 years ago

rapidfuzz - Release 2.0.6

Fixed

  • fix incorrect population of sys.modules which lead to submodules overshadowing other imports ## Changed
  • moved JaroWinkler and Jaro into a separate package

- Python
Published by maxbachmann almost 4 years ago

rapidfuzz - Release 2.0.5

Fixed

  • fix signed integer overflow inside hashmap implementation

- Python
Published by maxbachmann almost 4 years ago

rapidfuzz - Release 2.0.4

Fixed

  • fix binary size increase due to debug symbols
  • fix segmentation fault in Levenshtein.editops

- Python
Published by maxbachmann almost 4 years ago

rapidfuzz - Release 2.0.3

Added

  • Added fuzz.partialratioalignment, which returns the result of fuzz.partial_ratio combined with the alignment this result stems from

Fixed

  • Fix Indel distance returning incorrect result when using score_cutoff=1, when the strings are not equal. This affected other scorers like fuzz.WRatio, which use the Indel distance as well.

- Python
Published by maxbachmann about 4 years ago

rapidfuzz - Release 2.0.2

Fixed

  • fix type hints
  • Add back transpiled cython files to the sdist to simplify builds in package builders like FreeBSD port build or conda-forge

- Python
Published by maxbachmann about 4 years ago

rapidfuzz - Release 2.0.1

Fixed

  • fix type hints
  • Indel.normalizedsimilarity mistakenly used the implementation of Indel.normalizeddistance

- Python
Published by maxbachmann about 4 years ago

rapidfuzz - Release 2.0.0

Added

  • added C-Api which can be used to extend RapidFuzz from different Python modules using any programming language which allows the usage of C-Apis (C/C++/Rust)
  • added new scorers in rapidfuzz.distance.*
    • port existing distances to this new api
    • add Indel distance along with the corresponding editops function

Changed

  • when the result of string_metric.levenshtein or string_metric.hamming is below max they do now return max + 1 instead of -1
  • Build system moved from setuptools to scikit-build
  • Stop including all modules in __init__.py, since they significantly slowed down import time

Removed

  • remove the rapidfuzz.levenshtein module which was deprecated in v1.0.0 and scheduled for removal in v2.0.0
  • dropped support for Python2.7 and Python3.5

Deprecated

  • deprecate support to specify processor in form of a boolean (will be removed in v3.0.0)
    • new functions will not get support for this in the first place
  • deprecate rapidfuzz.string_metric (will be removed in v3.0.0). Similar scorers are available in rapidfuzz.distance.*

Fixed

  • process.cdist did raise an exception when used with a pure python scorer

Performance

  • improve performance and memory usage of rapidfuzz.string_metric.levenshtein_editops
    • memory usage is reduced by 33%
    • performance is improved by around 10%-20%
  • significantly improve performance of rapidfuzz.string_metric.levenshtein for max <= 31 using a banded implementation

- Python
Published by maxbachmann about 4 years ago

rapidfuzz - Release 1.9.1

Fixed

  • fix bug in new editops implementation, causing it to SegFault on some inputs (see https://github.com/qurator-spk/dinglehopper/issues/64)

- Python
Published by maxbachmann about 4 years ago

rapidfuzz - Release 1.9.0

Fixed

  • Fix some issues in the type annotations (see #163)

Performance

  • improve performance and memory usage of rapidfuzz.string_metric.levenshtein_editops
    • memory usage is reduced by 10x
    • performance is improved from O(N * M) to O([N / 64] * M)

- Python
Published by maxbachmann about 4 years ago

rapidfuzz - Release 1.8.3

Added

  • Added missing wheels for Python3.6 on MacOs and Windows (see #159)

- Python
Published by maxbachmann over 4 years ago

rapidfuzz - Release 1.8.2

Added

  • Add wheels for Python 3.10 on MacOs

- Python
Published by maxbachmann over 4 years ago

rapidfuzz - Release 1.8.1

Fixed

  • Fix incorrect editops results (See #148)

- Python
Published by maxbachmann over 4 years ago

rapidfuzz - Release 1.8.0

Changed

  • Add Wheels for Python3.10 on all platforms except MacOs (see #141)
  • Improve performance of string_metric.jaro_similarity and string_metric.jaro_winkler_similarity for strings with a length <= 64

- Python
Published by maxbachmann over 4 years ago

rapidfuzz - Release 1.7.1

Fixed

  • fixed incorrect results of fuzz.partial_ratio for long needles (see #138)

- Python
Published by maxbachmann over 4 years ago

rapidfuzz - Release 1.7.0

Changed

  • Added typing for process.cdist
  • Added multithreading support to cdist using the argument process.cdist
  • Add dtype argument to process.cdist to set the dtype of the result numpy array (see #132)
  • Use a better hash collision strategy in the internal hashmap, which improves the worst case performance

- Python
Published by maxbachmann over 4 years ago

rapidfuzz - Release 1.6.2

Changed

  • improved performance of fuzz.ratio
  • only import process.cdist when numpy is available

- Python
Published by maxbachmann over 4 years ago

rapidfuzz - Release 1.6.1

Changed

  • Add back wheels for Python2.7

- Python
Published by maxbachmann over 4 years ago

rapidfuzz - Release 1.6.0

Changed

  • fuzz.partial_ratio uses a new implementation for short needles (<= 64). This implementation is
    • more accurate than the current implementation (it is guaranteed to find the optimal alignment)
    • it is significantly faster
  • Add process.cdist to compare all elements of two lists (see #51)

- Python
Published by maxbachmann over 4 years ago

rapidfuzz - Release 1.5.1

Fixed

  • Fix out of bounds access in levenshtein_editops

- Python
Published by maxbachmann over 4 years ago