Skip to content

Latest commit

 

History

History
141 lines (95 loc) · 4.4 KB

CHANGELOG.md

File metadata and controls

141 lines (95 loc) · 4.4 KB

What's New?

  • Release notes are available on GitHub.

0.6.3

  • 2024-10-19: strsim fuzzy matching feature is now enabled on by default.

0.6.2

0.6.1

  • 2024-03-28: Removed eddie as the default string similarity crate, for now, due to a potential panic.

0.6.0

  • 2023-11-18: Fix for contextual fuzzy matching for Live interactive searches. In some cases Live search would return global results without properly observing the maximum_search_results setting. This has been fixed. This will improve performance and user experience.

  • 2023-11-18: New, optional eddie feature which is turned on by default. When this feature is enabled, this library will utilize Ilia Schelokov's eddie crate for faster UTF-8 string distance and string similarity calculations.

  • 2023-11-18: New, optional gxhash feature. ahash is still the default hasher. When this feature is enabled, this library will utilize Olivier Giniaux's bleeding edge gxhash crate for faster HashMap and HashSet operations.

0.5.2

  • 2023-10-09: New, optional ahash feature which is turned on by default. When this feature is enabled, this library will utilize Tom Kaitchuck's ahash crate for faster HashMap and HashSet operations rather than using the standard library's SipHash.

0.5.1

  • 2023-09-01: Fixes compile failure for the experimental select2 feature and when not using fuzzy feature.

0.5.0

  • The simple search index now internally employs Ed Page's kstring crate.

  • The dump_keyword and profile function signatures were changed slightly, otherwise there's no expected impact to callers.

  • Miscellaneous performance improvements.

0.4.2

  • Any type that implements ToString (and consequently any type that implements Display) now gets the Indexable implementation for free.

0.4.1

  • Improved contextual fuzzy matching.

0.4.0

  • Initial support for fuzzy searching. Fuzzy matching is applied to the last (partial) keyword in the search string for autocompletion and live search only.

    Keywords at the start or in the middle of the user's search string will not be substituted. Indicium uses Danny Guo's strsim crate for string similarity calculations.

  • Breaking changes:

    • Builder pattern is now passed owned values.
    • K key type requires Hash trait for fuzzy string search feature.
    • New SearchIndex default settings.
  • Any dependent software should see if (or how) the updated defaults change search behaviour and tweak accordingly before adopting the 0.4.0 update.

0.3.7

  • An experimental feature is now disabled by default to reduce resource consumption.

0.3.6

  • Implemented DerefMut which gives access to the search index's underlying BTreeMap. Implemented the clear() method for the seach index which is a convenience method for clearing the search index.

0.3.5

  • Peformance improvements.

0.3.4

  • Peformance improvements.

0.3.3

  • Fix: cargo test failed. Sorry.

0.3.2

  • Fix: issue with search indexes that do not use keyword splitting.

0.3.1

  • Autocomplete no longer offers previously used keywords as options.

  • Added maximum_keys_per_keyword getter method.

  • Added autocomplete_with and search_with methods which allow ad-hoc overrides of the AutocompleteType/SearchType and maximum results parameters.

0.3.0

  • Added new search type SearchType::Live which is for "search as you type" interfaces. It is sort of a hybrid between autocomplete and SearchType::And. It will search using an (incomplete) string and return keys as the search results. Each resulting key can then be used to retrieve the full record from its collection to be rendered & displayed to the user.