Skip to content

v0.8.4

Choose a tag to compare

@jmt-lab jmt-lab released this 16 Jun 17:47
· 27 commits to main since this release

New Features

  • comprehensive improvements to load module
    • Enhanced StandardLoader with builder pattern and configuration management
  • Added LoaderConfig for centralized configuration options
  • Implemented LoadStats for performance monitoring and statistics collection
  • Added comprehensive utility functions for file handling and validation
  • Enhanced Walk API with path navigation and dot notation support
  • Improved error handling with detailed context and validation
  • Added file caching system to avoid re-parsing identical files
  • Enhanced merge logic with better conflict resolution
  • Added security-focused path validation and sanitization
  • Implemented comprehensive field inspection and navigation capabilities
  • Builder pattern for fluent loader configuration
  • Statistics collection with processing time and memory usage tracking
  • Path-based navigation (e.g., walker.get('config.database.host'))
  • Enhanced debugging and introspection tools
  • Validation framework with early error detection
  • Module management with advanced manipulation capabilities
  • Intelligent file caching system
  • Better memory allocation strategies
  • Optimized data structures for common operations
  • Lazy loading where possible
  • Some method signatures enhanced for better error handling
  • Configuration now handled through LoaderConfig objects
  • Enhanced error types with additional context
  • Enhanced type system with TypeCategory enum and better compatibility checking
  • Added memory tracking and performance monitoring capabilities
  • Improved tree navigation with path-based lookup and recursive search
  • Enhanced macro resolution with recursion protection and better error handling
  • Added comprehensive validation methods for statement structure
  • Improved error messages with source code context and location information
  • Added utility functions for AST analysis, memory profiling, and pretty printing
  • Enhanced Display formatting with proper indentation across all types
  • Added const methods for compile-time evaluation where possible
  • Comprehensive test coverage for all new functionality
  • Some method signatures changed for better type safety
  • Enhanced error types with additional context fields
  • Reorganized internal data structures for better performance
  • Add MAX_RECURSION_DEPTH constant (64 levels) to limit parser nesting
  • Add recursion_depth field to Parser struct for depth tracking
  • Add enter_recursion() and exit_recursion() guard methods
  • Wrap recursive methods (value, value_type, statement, module) with guards
  • Add RecursionLimit error type with location tracking
  • Add comprehensive tests for recursion limit enforcement
  • Maintain backward compatibility for legitimate use cases

Bug Fixes

  • boolean values having lower priority than identifiers

Style

  • Apply cargo fmt formatting

Commit Statistics

  • 6 commits contributed to the release over the course of 3 calendar days.
  • 5 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Release barkml v0.8.4 (1bb7e83)
    • Apply cargo fmt formatting (d2122c4)
    • Comprehensive improvements to load module (8a170ce)
    • Comprehensive improvements to AST module (a244107)
    • Add recursion guard to prevent stack overflow attacks (ea30b3d)
    • Boolean values having lower priority than identifiers (2ae8fb8)