Skip to content

vers. 3.3.0

Latest

Choose a tag to compare

@komed3 komed3 released this 18 Mar 08:17
· 56 commits to master since this release
3699f85

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 OptionsValidator implemented (#100)
  • New exports cmpstr/bundle and cmpstr/bundle/min added to package.json
  • ErrorCode enum added
  • New RingPool type arr[] added

Changes & Fixes

  • Overall performance improvements and bug fixes (#101)
  • DeepMerge utility rewritten to static class methods
  • CmpStr.matrix() and CmpStrAsync.matrix() computation optimized
    Note: Methods now only work with symmetric metrics!
  • Bug fix in Metric and Phonetic classes: cache key handling fixed when false is returned
  • Bug fix in Phonetic.applyRules(): rule for string end now evaluated correctly
  • Errors utility revised: improved error chaining and renamed methods
  • Improved pipelines for Filter and Normalizer
  • Pointer calculation fixed in Pool.acquire()
  • Type definition fix in createFromRegistry function
  • Improved performance in StructuredData class

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