Skip to content

v1.0.0

Compare
Choose a tag to compare
@yamadashy yamadashy released this 29 Jun 13:57
· 56 commits to main since this release

We're excited to announce the v1.0 release! 🎉

While v1.0 may seem like a major milestone, this release is actually no different from our regular version updates.
We've reached a point where core functionality is complete, performance is stable, and we have no plans for breaking changes—making this the right time for a major version.

Version 1.0 doesn't mean Repomix is perfect or complete.
We've received many feature requests and still have significant features planned for future releases.
None of this would have been possible without our contributors, users, and sponsors.
Thank you, and we look forward to continuing this journey together!

New Features 🚀

Enhanced stdin Support (#648, #650, #653, #680)

A new --stdin flag allows you to process file lists directly from the command line.
This enables more flexible integration with shell pipelines and scripts.

# Select files with find command
find src -name "*.ts" -type f | repomix --stdin

# Get tracked files with git
git ls-files "*.ts" | repomix --stdin

# Search files with specific content using ripgrep
rg -l "TODO|FIXME" --type ts | repomix --stdin

# Interactive file selection with fzf
find . -name "*.ts" -type f | fzf -m | repomix --stdin
  • Read file lists from stdin with the --stdin flag
  • Apply include/ignore pattern filtering to stdin file lists

For more details, see the documentation: https://repomix.com/guide/usage#file-list-input-stdin

Remote Repository Processing (--remote) Improvements (#658)

GitHub repository processing is now more reliable.

  • Introduced archive download priority with git clone fallback mechanism
  • Archive downloads work in environments without git commands and make --remote processing faster

Improvements ⚡

Conditional Summary Display (#682)

  • Summary purpose display can now be conditionally controlled based on file selection

Special thanks to @eriknygren for this contribution!

Performance Optimizations (#645, #654)

  • Optimized token counting for top files display by calculating only the necessary files based on file size instead of processing all files

Security Enhancements (#678)

  • Stopped outputting secretlint results to the terminal. This prevents key leakage when coding agents and similar tools use repomix

Bug Fixes 🐛

Remote Repository Processing (#673, #684)

  • Prevented unnecessary file copying in stdout mode and improved processing efficiency

Breaking Changes ⚠️

Node.js Requirements Update (#698)

  • Ended support for Node.js 18, now requires Node.js 20 or higher
    • This enables more stable operation and the use and addition of modern features

Internal Changes 🔧

Security and Maintenance Improvements (#651)

  • Enhanced security by pinning GitHub Actions to commit SHAs
    • Mitigated supply chain attack vectors and improved workflow reliability

Special thanks to @LordMelkor for this contribution!

Dependency and Build Improvements (#649)

  • Added git-up and @secretlint/types to fix pnpm build errors

Special thanks to @sztu-wtr for this contribution!

Performance Optimizations (#677)

  • Reduced overhead by using node --run instead of npm run

Special thanks to @yoshi-taka for this contribution!

How to Update

npm update -g repomix

Or use the latest version directly:

npx repomix@latest

If you have any questions or suggestions, please let us know on GitHub issues or our Discord community.