rapidfuzz/RapidFuzz (rapidfuzz)
### [`v3.9.7`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.7): Release 3.9.7
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.9.6...v3.9.7)
##### Fixed
- fix crash in `cdist` due to Visual Studio upgrade
### [`v3.9.6`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.6): Release 3.9.6
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.9.5...v3.9.6)
#### Changed
- upgrade to `Cython==3.0.11`
- add python 3.13 wheels
### [`v3.9.5`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.5): Release 3.9.5
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.9.4...v3.9.5)
#### Fixed
- include simd binaries in pyinstaller builds
- fix builds with setuptools 72 by upgrading `scikit-build`
### [`v3.9.4`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.4): Release 3.9.4
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.9.3...v3.9.4)
#### Fixed
- fix bug in `Levenshtein.editops` and `Levenshtein.opcodes` which could lead
to incorrect results and crashes for some inputs
### [`v3.9.3`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.3): Release 3.9.3
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.9.2...v3.9.3)
#### Fixed
- fix None handling for queries in `process.cdist` for scorers not supporting SIMD
### [`v3.9.2`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.2): Release 3.9.2
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.9.1...v3.9.2)
#### Fixed
- fix supported versions of taskflow in cmake to be in the range v3.3 - v3.7
### [`v3.9.1`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.1): Release 3.9.1
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.9.0...v3.9.1)
#### Fixed
- disable AVX2 on MacOS since it did lead to illegal instruction errors on some targets
### [`v3.9.0`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.0): Release 3.9.0
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.8.1...v3.9.0)
#### Changed
- significantly improve type hints for the library
#### Fixed
- fix cmake version parsing
### [`v3.8.1`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.8.1): Release 3.8.1
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.8.0...v3.8.1)
#### Fixed
- use the correct version of `rapidfuzz-cpp` when building against a system installed version
### [`v3.8.0`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.8.0): Release 3.8.0
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.7.0...v3.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
### [`v3.7.0`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.7.0): Release 3.7.0
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.6.2...v3.7.0)
#### Changed
- reduce import time
### [`v3.6.2`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.6.2): Release 3.6.2
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.6.1...v3.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
### [`v3.6.1`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.6.1): Release 3.6.1
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.6.0...v3.6.1)
#### Fixed
- fix overflow error on systems with `sizeof(size_t) < 8`
### [`v3.6.0`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.6.0): Release 3.6.0
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.5.2...v3.6.0)
#### Fixed
- fix pure python fallback implementation of `fuzz.token_set_ratio`
- properly link with `-latomic` if `std::atomic` 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`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.5.2): Release 3.5.2
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.5.1...v3.5.2)
#### Fixed
- use \_mm_malloc/\_mm_free on macOS if aligned_alloc is unsupported
### [`v3.5.1`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.5.1): Release 3.5.1
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.4.0...v3.5.1)
#### Fixed
- fix compilation failure on macOS
### [`v3.4.0`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.4.0): Release 3.4.0
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.3.1...v3.4.0)
#### Changed
- upgrade to `Cython==3.0.3`
- add simd implementation for Jaro and Jaro Winkler
### [`v3.3.1`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.3.1): Release 3.3.1
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.3.0...v3.3.1)
#### Added
- add missing tag for python 3.12 support
### [`v3.3.0`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.3.0): Release 3.3.0
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.2.0...v3.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
### [`v3.2.0`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.2.0): Release 3.2.0
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.1.2...v3.2.0)
#### Changed
- build x86 with sse2/avx2 runtime detection
### [`v3.1.2`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.1.2): Release 3.1.2
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.1.1...v3.1.2)
#### Changed
- upgrade to `Cython==3.0.0`
### [`v3.1.1`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.1.1): Release 3.1.1
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.1.0...v3.1.1)
#### Changed
- upgrade to `taskflow==3.6`
#### Fixed
- replace usage of `isnan` with `std::isnan` which fixes the build on NetBSD
### [`v3.1.0`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.1.0): Release 3.1.0
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.0.0...v3.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
### [`v3.0.0`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.0.0): Release 3.0.0
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v2.15.2...v3.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
### [`v2.15.2`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v2.15.2): Release 2.15.2
[Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v2.15.1...v2.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
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
==2.15.1
->==3.9.7
Release Notes
rapidfuzz/RapidFuzz (rapidfuzz)
### [`v3.9.7`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.7): Release 3.9.7 [Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.9.6...v3.9.7) ##### Fixed - fix crash in `cdist` due to Visual Studio upgrade ### [`v3.9.6`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.6): Release 3.9.6 [Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.9.5...v3.9.6) #### Changed - upgrade to `Cython==3.0.11` - add python 3.13 wheels ### [`v3.9.5`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.5): Release 3.9.5 [Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.9.4...v3.9.5) #### Fixed - include simd binaries in pyinstaller builds - fix builds with setuptools 72 by upgrading `scikit-build` ### [`v3.9.4`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.4): Release 3.9.4 [Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.9.3...v3.9.4) #### Fixed - fix bug in `Levenshtein.editops` and `Levenshtein.opcodes` which could lead to incorrect results and crashes for some inputs ### [`v3.9.3`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.3): Release 3.9.3 [Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.9.2...v3.9.3) #### Fixed - fix None handling for queries in `process.cdist` for scorers not supporting SIMD ### [`v3.9.2`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.2): Release 3.9.2 [Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.9.1...v3.9.2) #### Fixed - fix supported versions of taskflow in cmake to be in the range v3.3 - v3.7 ### [`v3.9.1`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.1): Release 3.9.1 [Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.9.0...v3.9.1) #### Fixed - disable AVX2 on MacOS since it did lead to illegal instruction errors on some targets ### [`v3.9.0`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.9.0): Release 3.9.0 [Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.8.1...v3.9.0) #### Changed - significantly improve type hints for the library #### Fixed - fix cmake version parsing ### [`v3.8.1`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.8.1): Release 3.8.1 [Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.8.0...v3.8.1) #### Fixed - use the correct version of `rapidfuzz-cpp` when building against a system installed version ### [`v3.8.0`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.8.0): Release 3.8.0 [Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.7.0...v3.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 ### [`v3.7.0`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.7.0): Release 3.7.0 [Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.6.2...v3.7.0) #### Changed - reduce import time ### [`v3.6.2`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.6.2): Release 3.6.2 [Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.6.1...v3.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 ### [`v3.6.1`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.6.1): Release 3.6.1 [Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.6.0...v3.6.1) #### Fixed - fix overflow error on systems with `sizeof(size_t) < 8` ### [`v3.6.0`](https://redirect.github.com/rapidfuzz/RapidFuzz/releases/tag/v3.6.0): Release 3.6.0 [Compare Source](https://redirect.github.com/rapidfuzz/RapidFuzz/compare/v3.5.2...v3.6.0) #### Fixed - fix pure python fallback implementation of `fuzz.token_set_ratio` - properly link with `-latomic` if `std::atomicConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.