Skip to content

Release 1.4.0

Choose a tag to compare

@github-actions github-actions released this 08 Nov 11:49
· 11 commits to main since this release

[1.4.0] - 2025-11-08

Added

  • Configuration File Support: Define full-scan patterns in YAML config files
    • Auto-detects .diffalyzer.yml, diffalyzer.yml, or config.yml
    • Custom config path via --config flag
    • Complete override behavior: config patterns replace built-in defaults
    • Support for both glob patterns (*.json, config/**) and regex patterns (/\.env$/)
    • Can disable all full scans with full_scan_patterns: []
  • Verbose Mode: Detailed diagnostic output via -v or --verbose flag
    • Shows which config file was loaded and how many patterns
    • Displays when full scan is triggered and which file/pattern matched
    • Outputs to stderr to avoid interfering with tool integration
    • Shows performance metrics and analysis statistics
    • Clear feedback when no changes are detected
  • Added symfony/yaml dependency for config file parsing
  • New ConfigLoader class for loading and parsing configuration files
  • Enhanced FullScanMatcher with glob pattern support and pattern tracking

Changed

  • Full-scan patterns now configurable via YAML instead of being hardcoded
  • CLI --full-scan-pattern now completely overrides config patterns (not additive)
  • FullScanMatcher now accepts optional config patterns in constructor
  • Empty output behavior is now clearer with verbose mode explaining the reason
  • Built-in patterns (composer.json, composer.lock) only used when no config file exists

Improved

  • Better user experience with clear diagnostic messages about what diffalyzer is doing
  • More flexible configuration allowing per-project customization
  • Easier to disable built-in full-scan triggers when not needed