# Changelog ## 2025-08-05 - 2.0.0 - BREAKING_CHANGE(api) Major API cleanup and comprehensive documentation overhaul ### BREAKING CHANGES - **Removed deprecated methods**: `getChangeScoreForString()` and `getClosestMatchForString()` are no longer available - **Use modern API instead**: `calculateScores()` and `findClosestMatch()` respectively - **Improved type safety**: `findClosestMatch()` now correctly returns `string | null` ### Features - **Comprehensive documentation**: Complete readme overhaul with professional examples - **New sections added**: Quick Start, Performance Guide, Error Handling, Troubleshooting, API Reference - **Real-world examples**: Search-as-you-type, data deduplication, e-commerce search, recommendations - **Browser compatibility info**: Environment requirements and bundle size details - **Advanced configuration**: Fuse.js customization guidance ### Improvements - **Enhanced error handling**: Better graceful degradation patterns - **Performance guidance**: Time complexity analysis and optimization tips - **Modern developer experience**: Updated examples with current best practices - **Type-safe APIs**: Consistent null handling across all methods ## 2025-05-13 - 1.1.10 - fix(documentation) Update documentation and migration guide with standardized method names and deprecation notices. - Replaced deprecated getClosestMatchForString with findClosestMatch in code examples. - Replaced deprecated getChangeScoreForString with calculateScores in documentation. - Updated readme plan to mark method naming standardization as completed. ## 2025-05-12 - 1.1.9 - fix(core) Update build scripts, refine testing assertions, and enhance documentation - Updated .gitignore to exclude local settings files - Modified build script in package.json to use 'tsbuild tsfolders --allowimplicitany' - Revised readme.plan.md with comprehensive Fuse.js optimization and API improvement strategies - Enhanced input validation, error handling, and JSDoc comments across core classes - Standardized test syntax and improved test coverage for fuzzy matching features ## 2025-05-12 - 1.1.8 - fix(tests) Standardize test syntax and update testing dependencies - Added @git.zone/tsrun dependency to package.json for improved test runner support - Refactored test export in test/test.articlesearch.ts to use default export instead of tap.start() - Updated readme.plan.md to describe testing improvements and syntax standardization ## 2025-05-12 - 1.1.7 - fix(build) Fix import paths, update CI workflows and upgrade dependencies for ESM compliance - Updated import statements to include .js extensions for NodeNext compatibility - Upgraded dependencies: @push.rocks/smartpromise (^4.0.2), @tsclass/tsclass (^9.2.0), fuse.js (^7.1.0), leven (^4.0.0), and @push.rocks/tapbundle (^6.0.3) - Added new workflow files for CI (default_tags.yaml and default_nottags.yaml) - Revised test files and documentation to reflect file path and dependency changes - Minor adjustments in package.json (scripts and metadata) and tsconfig for enhanced module resolution ## 2024-05-29 - 1.1.6 - maintenance This release brings a series of configuration and documentation updates as well as an organizational change. - Updated project description. - Revised tsconfig settings. - Updated npmextra.json with new githost details (merged from several commits). - Switched to a new organization scheme. (Note: A prior commit “1.1.6” from 2021 was a version bump and is omitted here.) ## 2021-10-04 - 1.1.5 - core Core components were fixed in this update. - fix(core): update ## 2021-10-03 - 1.1.4 This version was released as a version bump without additional significant changes. ## 2021-10-03 - 1.1.3 - core Minor fixes were applied to core functionality. - fix(core): update ## 2021-10-03 - 1.1.2 - core Additional improvements and fixes to the core components. - fix(core): update ## 2021-10-03 - 1.1.1 - core A further core update fixing underlying issues. - fix(core): update ## 2018-08-19 - 1.1.0 - Smartfuzzy A fix was introduced for Smartfuzzy’s matching functionality. - fix(Smartfuzzy.getClosestMatchForString() now returns the cloesest string directly): update ## 2018-08-19 - 1.0.3 - ObjectSorter A new feature has been added to sort objects by likability. - feat(ObjectSorter): now sorts objects by likability ## 2018-08-19 - 1.0.2 - package An adjustment was made to the package name in the npm configuration. - fix(package): npm name ## 2018-08-19 - 1.0.1 - package Initial package fixes were applied. - fix(package): initial