The CmpStr 3.3 quality update focuses on performance improvements and internal refinements. This includes new bundle exports and added validation for options. Internal stress tests show a performance boost of 10%+ thanks to improved filter and normalization pipelines, the redesigned hash table, and faster pooling.
What’s New
- Validator for CmpStr options in class
OptionsValidatorimplemented (#100) - New exports
cmpstr/bundleandcmpstr/bundle/minadded topackage.json ErrorCodeenum added- New
RingPooltypearr[]added
Changes & Fixes
- Overall performance improvements and bug fixes (#101)
DeepMergeutility rewritten to static class methodsCmpStr.matrix()andCmpStrAsync.matrix()computation optimized
Note: Methods now only work with symmetric metrics!- Bug fix in
MetricandPhoneticclasses: cache key handling fixed whenfalseis returned - Bug fix in
Phonetic.applyRules(): rule for string end now evaluated correctly Errorsutility revised: improved error chaining and renamed methods- Improved pipelines for
FilterandNormalizer - Pointer calculation fixed in
Pool.acquire() - Type definition fix in
createFromRegistryfunction - Improved performance in
StructuredDataclass
Announcement
The TextAnalyzer and DiffChecker utilities will be moved to separate packages with the next update in order to streamline the CmpStr code. Stay tuned for the upcoming release of CmpStr 4.0, which will feature a complete redesign of the library.
Full Changelog: v3.2.2...v3.3.0