10 KB


All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

6.6.2 (2022-05-11)

Bug Fixes

  • value fetched at the end must be a string (1de1dff), closes #661

6.6.1 (2022-05-06)

Bug Fixes

  • getFn to FuseOptionKeyObject (80b87a9), closes #655
  • typescript: type definition for `FuseOptionKeyObject, fixes #655 (4acabb6)
  • typescript: type definition for FuseOptionKeyObject (0a790b5), closes #655 #656

6.6.0 (2022-05-03)


  • allow passing getFn for a specific key (1d445b9), closes #627

Bug Fixes

  • excessive splitting in parseQuery (2c78022)
  • type mismatch on toJSON (f5425ea)

6.5.3 (2021-12-23)

Bug Fixes

  • logical: scoring for logical OR (6f6af51), closes #593

6.5.2 (2021-12-23)

6.5.1 (2021-12-23)

Bug Fixes

  • rollback min node version (9918f67)

6.5.0 (2021-12-22)


  • scoring: field length norm weight (a9e0080)

Bug Fixes

  • typescript: add config declaration to types (2f4de0c)

6.4.6 (2021-01-05)

Bug Fixes

  • typescript: fix search typings (94766b2), closes #527

6.4.5 (2021-01-01)

Bug Fixes

6.4.4 (2020-12-29)

Bug Fixes

  • extended: correctly score include-match results (443c863), closes #522

6.4.3 (2020-10-30)

Bug Fixes

  • extended: ignoreLocation when useExtendedSearch is true (8f67ac9), closes #465

6.4.2 (2020-10-20)

Bug Fixes

6.4.1 (2020-07-26)

Bug Fixes

6.4.0 (2020-06-28)


  • extended: add ability to search actual exact string (350283f)

6.3.1 (2020-06-24)

Bug Fixes

  • logical: scores in logical query operators are ignored (e357229), closes #449

6.3.0 (2020-06-23)


  • provide alternative array notation for nested paths (7077fbe), closes #432

Bug Fixes

  • typescript: add types for string and object together for the key property (85fb211)
  • typescript: add typing for nested paths with array notation (dfa4823)

Version 6.0.0

Version 5.2.0

  • Addresses #390, #376, #382, #385
  • Removed ngram search and extended bitap to search long patterns

Version 5.0.9-beta

  • Fixed Fuse global name. Erroenously set as 'Fuse.js'

Version 5.0.8-beta

  • Changed bundler to Rollup.
  • Added ES6 modules for bundlers and browsers (fuse.esm.js) (fixed #262)
  • Added CommonJS builds (fuse.common.js)

Breaking Changes

  • The minimified version is finally actually called fuse.min.js

Version 5.0.7-beta

Version 5.0.6-beta

Version 5.0.3-beta

Version 5.0.2-beta

  • Added indexing for increased performance over large lists
    • Added Fuse.createIndex, which created and returns an index. This function can be used to pre-generate the index, which you can then save, and ultimately pass to the Fuse instance.

Breaking Changes

  • Removed id option
  • Changed format of the search results
  • Updated TypeScript definitions

Version 5.0.1-beta

  • Removed matchAllTokens option.

Version 5.0.0-beta

  • Added ability to search patterns longer > 32 characters
  • Removed maxPatternLength option

Version 4.1.0-beta

  • Perf optimization on nested array search

Version 4.0.4-beta

  • Re-added license information

Version 4.0.3-beta

  • Increased Node version

Version 4.0.2-beta

  • Added missing tests

Version 4.0.1-beta

  • Removed unused codepath
  • Fixed case sensititivity check
  • Upgraded dev dependencies

Version 4.0.0-beta

Version 3.6.0

  • Improved error handling for keys

Version 3.5.0

  • Fixed #341, adjusting weights into the calculation
  • Improved performance by ~10% (really can only be seen when you have 10k+ items)

Version 3.4.3

  • Fixed #261
  • Rewrote tests to Jest framework
  • Wrote tests for TypeScript typings
  • Cleanup build

Version 3.4.2

Version 3.4.1

  • Ensured dist/ content is production ready (both full and min versions) #283

Version 3.4.0

  • Upgraded build tool to Webpack 4. New dist/ output.

Version 3.3.1

Version 3.2.1

  • Fixed issue in which more fuzzy matches would weaken a score instead of strengthening it (#233)

Version 3.2.0

  • Give better result for exact match when using weighted keys (#192)

Version 3.1.0

  • Added match index location for array key (#183)
  • Allow searching deep nested numbers (#189)

Version 3.0.5

  • Escape special characters in search pattern (#168)

Version 3.0.4

  • Random bug fixes (#162)

Version 3.0.0

  • Removed Bower support
  • Modified library into a more more palatable architecture, where the Bitap portion is now its own separate module.


  • Removed include option in favor of more explicit booleans: includeScore and includeMatches. Both are false by default.
  • Removed searchFn option, as this (for now) will remain a Bitap based solution

Version 2.7.4

  • Reverted to previous version, thus fixing breaking changes (a little bit of a version match here)

Version 2.6.2

  • Revert back to previous version

Version 2.6.2

  • Fix typings based on TypeScript guidelines (#129)

Version 2.6.0

  • Added Typescript definition
  • Added ability to set min/max matched character lengths when returning the matched indices (#122)

Version 2.5.0

  • Added option to search by matching all tokens (in every record) when matchAllTokens:true (#95)

Version 2.3.0

  • Added token separator to options, when tokenize:true (#93)
  • General code clean up (#88)
  • Bunch of other bug fixes

Version 2.2.0

  • Added option to include matched indices (#6)
  • Added ability to search with weighted keys (#62)

Version 2.1.0-beta

  • Added ability to search with weighted keys (#62)

Version 2.0.0

  • Modified search algorithm to search individual words AND the full string, computing the final score as a function of both. This yields better scoring accuracy (#41)
  • Changed exact substrings to not have a score of zero. That is searching for "hell" in "hello" will not yield a score of zero, while searching for "hello" will (#63)
  • Added verbose option, which will print to the console useful information, mostly for debugging
  • Improved code structure.
  • Added version information within Fuse itself
  • Added this Changelog (#64)
  • Added fallback when pattern length is greater than machine word length (i.e, > 32 characters) (#38)
  • Allowed results with a value of 0 to be returned (#73)