Skip to content

Releases: seeyebe/fq

fq v0.8.0

01 Dec 14:51

Choose a tag to compare

fq v0.7.1

30 Nov 19:19

Choose a tag to compare

Full Changelog: v0.7.0...v0.7.1

fq v0.7.0

30 Nov 13:03

Choose a tag to compare

Full Changelog: v0.5.0...v0.7.0

v0.6.0

15 Jul 12:32

Choose a tag to compare

This release introduces major new features that significantly enhance the file search capabilities of rq, making it more powerful and user-friendly.

New Features

Regex Pattern Matching

  • Regex support with `--regex` flag using the proven tiny-regex-c library
  • Filename pattern matching with full regex syntax support
  • Case-sensitive and case-insensitive regex options

File Type Filtering

  • File type filtering with `--type` flag
  • Supported types: `text`, `image`, `video`, `audio`, `archive`, `binary`
  • Smart extension-based detection with comprehensive file type arrays

File Preview Mode

  • Preview mode with `--preview` flag shows file contents inline
  • Text files: Display first 10 lines (configurable with `--preview N`)

Streamed Output

  • Real-time result streaming - see results as they're found, not after completion
  • Progress indicators - shows "Processed: X files, Found: Y results..." after 5 seconds if no results

Bug Fixes

  • Fixed error handling to show specific errors instead of full help
  • Improved command-line argument validation
  • Enhanced file access error reporting

v0.5.0

10 Jul 17:11

Choose a tag to compare

New Features

File System Support

  • Hidden file support with --include-hidden (-H) flag - now finds .env, .gitignore, and other hidden files
  • Symlink following with --follow-symlinks (-L) flag - traverse symbolic links safely

Advanced Size Filtering

  • Size operators: --size +1M (larger than), --size -500K (smaller than), --size 1024 (exact size)
  • Supports K, M, G, T suffixes for human-readable sizes

Output

  • JSON output with --json flag - structured data for scripts and tools
  • Cross-platform path normalization (forward slashes)
  • Clean, parseable format

Enhanced Interface

  • Comprehensive short flags: -H, -L, -d, -j, -c, -g
  • Professional help system inspired by modern CLI tools
  • Better examples and documentation

Performance Improvements

  • Optimized --max-results to exit search early once limit is reached, improving performance for partial searches by up to 3×

Bug Fixes

  • Fixed depth limiting logic for proper recursion control
  • Fixed hidden file detection using FILE_ATTRIBUTE_HIDDEN
  • Fixed symlink detection using FILE_ATTRIBUTE_REPARSE_POINT
  • Fixed buffer truncation warning in time formatting

v0.4.0

09 Jul 18:58

Choose a tag to compare

  • Add --stats flag for performance insights
  • See real-time thread pool activity during large searches
  • Monitor search performance and identify bottlenecks

v0.3.0

08 Jul 23:11

Choose a tag to compare

Major Improvements

Thanks to excellent contributions from @skeeto, this release brings significant performance and reliability improvements:

Performance

  • Unity build: Faster compilation by combining all source files
  • Optimized build process: Reduced build times, especially for windows.h parsing

Bug Fixes

  • Initialization fix: Prevents crashes when running without arguments
  • Memory safety: Proper initialization of all data structures

Development

  • UBSan support: Undefined Behavior Sanitizer in debug builds for better error detection
  • Windows compatibility: Explicit shell setting for consistent builds on Windows

Acknowledgments

Special thanks to @skeeto for:

  • Testing on large codebases (llvm-project!)
  • Providing detailed technical feedback
  • Contributing multiple high-quality PRs

What's Changed

  • Unity build implementation by @skeeto in #3
  • UBSan in debug builds by @skeeto in #1
  • Always initialize CLI structures by @skeeto in #2
  • Explicit Windows shell setting by @skeeto in #4

Full Changelog: v0.2.0...v0.3.0

v0.2.0

07 Jul 18:02

Choose a tag to compare

fix: readme typos

v0.1.0

07 Jul 01:34
a085d91

Choose a tag to compare

it compiles. that’s all i know