Skip to content

Release v4.0.4

Choose a tag to compare

@shankar-gpio shankar-gpio released this 03 Oct 07:08
· 784 commits to main since this release

Release v4.0.4

This release adds a comprehensive configuration system for customizable evaluation behavior, performance optimizations, and code refactoring improvements.

✨ Features

  • Comprehensive configuration system for evaluation behavior
    • Configurable numeric coercion (empty strings, booleans, null values)
    • Configurable loose equality behavior (strict vs lenient type comparisons)
    • Configurable NaN handling in arithmetic operations
  • New DataLogicConfig struct with builder pattern for easy customization
  • Configuration example added to demonstrate usage

⚡ Performance Improvements

  • Optimized context metadata keys and value access paths
  • Refactored code to use let-chains for cleaner, more efficient pattern matching
  • Improved reference handling to avoid unnecessary cloning

🐛 Bug Fixes

  • Handle numeric indices in val operator with level access
  • Fix reduce operator with nested properties having numeric parent names

📚 Documentation

  • Added comprehensive configuration example
  • Updated README with configuration documentation

🔧 Technical Details

  • 17 files changed, 1203 insertions(+), 163 deletions(-)
  • New modules: src/config.rs
  • New tests: tests/config_test.rs with 406 lines of configuration tests
  • New examples: examples/configuration.rs