From fcd76e05572e095e3639aad0fe94a2864d09d2ad Mon Sep 17 00:00:00 2001 From: Danny Ben Shitrit Date: Sat, 11 Jul 2026 09:45:01 +0300 Subject: [PATCH] - Drop support for Ruby 3.2 --- .github/workflows/test.yml | 6 +++--- .rubocop.yml | 2 +- spec/fixtures/ruby_source/required.rb | 2 ++ spec/victor-cli/commands/render_spec.rb | 10 ++++------ victor-cli.gemspec | 3 +-- 5 files changed, 11 insertions(+), 12 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 2945ba4..86b5715 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -10,17 +10,17 @@ jobs: runs-on: ubuntu-latest strategy: - matrix: { ruby: ['3.2', '3.3', '3.4', '4.0'] } + matrix: { ruby: ['3.3', '3.4', '4.0'] } steps: - name: Check out code - uses: actions/checkout@v4 + uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 - name: Install OS dependencies run: sudo apt-get -y install libyaml-dev - name: Setup Ruby - uses: ruby/setup-ruby@v1 + uses: ruby/setup-ruby@d45b1a4e94b71acab930e56e79c6aa188764e7f9 # v1.316.0 with: ruby-version: '${{ matrix.ruby }}' bundler-cache: true diff --git a/.rubocop.yml b/.rubocop.yml index ce44a99..8220647 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -9,7 +9,7 @@ inherit_gem: AllCops: SuggestExtensions: false - TargetRubyVersion: 3.2 + TargetRubyVersion: 3.3 Exclude: - debug.rb - 'dev/**/*' diff --git a/spec/fixtures/ruby_source/required.rb b/spec/fixtures/ruby_source/required.rb index 0a5b608..7b91d65 100644 --- a/spec/fixtures/ruby_source/required.rb +++ b/spec/fixtures/ruby_source/required.rb @@ -1 +1,3 @@ +# rubocop:disable RSpec/Output puts 'hello from required' +# rubocop:enable RSpec/Output diff --git a/spec/victor-cli/commands/render_spec.rb b/spec/victor-cli/commands/render_spec.rb index aa78ab2..5c4fa28 100644 --- a/spec/victor-cli/commands/render_spec.rb +++ b/spec/victor-cli/commands/render_spec.rb @@ -29,10 +29,11 @@ end context 'with RUBY_FILE --watch' do + before { allow(subject).to receive(:sleep) } + it 'generates immediately and watches for changes' do - expect(Listen).to receive(:to).and_return(listener) + allow(Listen).to receive(:to).and_return(listener) expect(listener).to receive(:start) - allow(subject).to receive(:sleep) expect { subject.execute %W[render #{ruby_file} --watch] } .to output_approval('cli/render/watch') @@ -44,7 +45,6 @@ .and_yield(['changed'], [], []) .and_return(listener) expect(listener).to receive(:start) - allow(subject).to receive(:sleep) count = 0 subject.send(:watch) { count += 1 } @@ -58,9 +58,7 @@ call_count += 1 raise 'Intentional error' if call_count == 2 end - expect(subject).to receive(:watch) do |&block| - block.call - end + expect(subject).to receive(:watch).and_yield expect { subject.execute %W[render #{ruby_file} --watch] } .to output_approval('cli/render/watch-error').to_stderr diff --git a/victor-cli.gemspec b/victor-cli.gemspec index fdb570a..04ef212 100644 --- a/victor-cli.gemspec +++ b/victor-cli.gemspec @@ -13,12 +13,11 @@ Gem::Specification.new do |s| s.executables = ['victor'] s.homepage = 'https://github.com/dannyben/victor-cli' s.license = 'MIT' - s.required_ruby_version = '>= 3.2' + s.required_ruby_version = '>= 3.3' s.add_dependency 'colsole', '~> 1.0' s.add_dependency 'css_parser', '~> 3.0' s.add_dependency 'listen', '~> 3.9' - s.add_dependency 'logger', '~> 1.7' # required by lietsn s.add_dependency 'mister_bin', '~> 0.7' s.add_dependency 'nokogiri', '~> 1.10' s.add_dependency 'pretty_trace', '~> 0.3'