Skip to content

v0.2.0

Latest

Choose a tag to compare

@TFMV TFMV released this 08 Mar 10:51
· 8 commits to main since this release
279568e

Stride v0.2.0 Release Notes

We're excited to announce the release of Stride v0.2.0, which brings significant improvements to our high-performance filesystem traversal and search library.


πŸš€ New Features

πŸ” Enhanced Find API

  • Advanced File Searching: New Find API for powerful file searching with pattern matching, filtering, and actions.
  • Pattern Matching: Support for:
    • Name patterns
    • Path patterns
    • Ignore patterns
    • Regular expressions
  • Time-Based Filtering: Find files based on modification time (newer than, older than).
  • Size-Based Filtering: Filter files by size (larger than, smaller than).
  • Command Execution: Execute commands on matched files with FindWithExec.
  • Custom Formatting: Format output with templates using FindWithFormat.
  • Watch Mode: Watch for file changes with configurable events.

πŸ”— Improved Symlink Handling

  • Configurable Behavior: Three modes for handling symlinks (ignore, follow, report).
  • Cycle Detection: Prevent infinite loops when following symlinks.
  • Proper Error Propagation: Better handling of symlink-related errors.

πŸ”’ Permission Handling

  • Graceful Error Handling: Improved handling of permission errors during traversal.
  • Skip Strategy: Option to skip directories with permission issues.
  • Detailed Error Reporting: Better context for permission-related errors.

πŸ–₯️ CLI Enhancements

  • Find Command: New command for searching files with various criteria.
  • Template Placeholders: Support for placeholders in output formatting and command execution.
  • Watch Mode: CLI support for watching filesystem changes.

⚑ Improvements

  • Performance Optimizations: Improved string handling with strings.Builder for better performance.
  • Concurrent Processing: Enhanced worker pool management for better resource utilization.
  • Error Handling Modes: More flexible error handling strategies (continue, stop, skip).
  • Documentation: Comprehensive CLI reference and examples.
  • Test Coverage: Expanded test suite with better coverage of edge cases.

πŸ› Bug Fixes

  • Path Matching: Fixed issues with wildcard pattern matching for file paths.
  • Depth Calculation: Corrected calculation of directory depth for max depth filtering.
  • Permission Errors: Better handling of permission denied errors during traversal.
  • Symlink Cycles: Fixed potential infinite loops when following symbolic links.

πŸ“‚ Examples

The library now includes comprehensive examples demonstrating various features:

  • Basic usage
  • Advanced filtering
  • Permission handling
  • Enhanced API with middleware
  • Find API with pattern matching
  • File hashing with concurrent processing

πŸ“– Documentation

  • Updated README with clearer installation and usage instructions.
  • New CLI command reference.
  • Expanded API documentation with examples.
  • Improved code comments for better developer experience.

⚠️ Breaking Changes

  • SymlinkHandling now has three distinct modes instead of a boolean flag.
  • Error handling has been standardized across the library with the new ErrorHandlingMode.