summaryrefslogtreecommitdiff
path: root/lib/options.rb
AgeCommit message (Collapse)Author
2026-03-01refactor: defer Options parsing — add explicit Options.parse! methodPaul Buetow
Parsing ARGV at module eval time (during require) is fragile: it runs before the application is ready, can pick up test-runner flags, and bleeds stale values across repeated configure calls in tests. Move the OptionParser setup and ARGV slicing into Options.parse!. The module body now only sets safe defaults. parse! resets to defaults before each parse so state cannot accumulate across calls. Call Options.parse! once at the top of configure() in dsl.rb so all entry points (scripts, Rake tasks) still receive parsed options without any caller needing to know about the details. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-01make rcm usable as a gem from any directory, fix bugs and testsPaul Buetow
- Add lib/rcm.rb entry point and bin/rcm CLI executable - Update gemspec: v0.1.0, proper files list, executables, runtime deps - Support standalone arg parsing and --hosts filtering in options - Fix inverted logic and typo in FileBackup#different? (== vs !=, cecksum_b) - Fix unqualified File.directory? resolving to RCM::File in Directory - Fix test_chown assertions running before evaluate! creates files - Add setup to file tests to prevent order-dependent failures Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2025-02-19fixPaul Buetow
2025-02-14initial testsPaul Buetow
2024-12-08use of endless methodsPaul Buetow
2024-12-06refactorPaul Buetow