Skip to content

Conversation

@AlextheYounga
Copy link

@AlextheYounga AlextheYounga commented Nov 13, 2025

Ruby 2.6 is well past end-of-life and trying to support it means untangling a lot of brittle shims. Ruby 3.0 also reached EOL in April 2024, so requiring it would still leave you relying on an unsupported interpreter almost immediately.

Changes:

  • Raised the minimum Ruby to 3.1 across wordmove.gemspec, CI config, and .ruby-version, resolving Psych 4 keyword‑arg issues (lib/wordmove/movefile.rb:25). Updated RuboCop config and formatting accordingly so lint/test suites still pass on the new baseline.
  • Hardened wordmove doctor: rsync checks now detect GNU rsync and macOS/Homebrew openrsync (lib/wordmove/doctor/rsync.rb:10-23), plus accompanying specs (spec/doctor/rsync_spec.rb:1-60). Doctor CLI now rescues missing/invalid Movefiles and prints user-friendly errors instead of stack traces (lib/wordmove/cli.rb:15-24, spec/cli_spec.rb:19-55).
  • Added regression coverage for the new behaviors and ensured the full test/lint suite stays green under Ruby 3.1.
  • Fixes errors found in Error with Wordmove: uninitialized constant Logger (NameError) after updating macOS to 15.2 #675 and Crash Ruby 3.1.1 #673

Potentially effects (or corrects) #679

All tests pass and some new tests were added.
I keep clean commits. Please see each commit to see each individual change.

This change corrects an error due to bumping the Ruby version higher
as newer Ruby versions load logger in a different order. You get
uninitialized constant ActiveSupport::LoggerThreadSafeLevel::Logger (NameError)
errors in 3.1
This change corrects an error in wordmove doctor
'Wordmove::Doctor::Rsync#check!': undefined method '[]'
for nil (NoMethodError).
This change corrects an ArgumentError that arises from passing in
now obsolete arguments into YAML safeload.
This change just adds minor string concatenation changes and regex
formatting changes in order to please the pig.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant