All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Support to fuzzy search custom objects by wrapping then in the
Fzy::Hay(T)
class. Fzy::Match
is nowFzy::Match(T)
, it has a reference toFzy::Hay(T)
- Removed
Fzy::Match#index
. - Match positions are opitional and disabled by default.
- Is now possible to use a custom bonus function, pass it on
Fzy::Hay
constructor. Fzy::PreparedHaystack
is nowFzy::PreparedHaystack(T)
, just a wrapper toArray(Fzy::Hay(T))
.
- Use shards executable to generate the Fzy::VERSION constant contents.
- Fix bad release 😅️
- Removed version_from_shard dependency (hugopl/version_from_shard#1)
- Adjusted the mess I did with shards.yml on 0.5.1 release.
- Adjusted shards.yml for Crystal 1.0.0.
- Added Add
empty?
andany?
to PreparedHaystack.
- Added match.index, to return the index of the match on haystack.
- Fix build with Crystal 0.34.0.
- Fix match positions calculation for long strings.
- Fix Fzy.search not returning sorted results.
- Speed improved speed by ~50%.
- Removed some primitives from API, API now is just:
- Fzy.search
- Match class
- PreparedHaystack class
- Improved speed by 5% by sharing computation between search and postion methods.
- Initial Release