From 2ade037f7785d2b4d2799d2b394075eccba656f5 Mon Sep 17 00:00:00 2001 From: Alex Smith Date: Tue, 11 Feb 2025 14:33:55 +1100 Subject: [PATCH 1/3] Update firefox & geckodriver --- .github/workflows/test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 9af88dd..906bda3 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -15,7 +15,7 @@ jobs: - uses: browser-actions/setup-firefox@latest with: - firefox-version: '112.0' + firefox-version: '135.0' - name: Set up geckodriver run: | @@ -24,7 +24,7 @@ jobs: tar -xzf geckodriver-v${GECKODRIVER_VERSION}-linux64.tar.gz -C geckodriver echo "$PWD/geckodriver" >> $GITHUB_PATH env: - GECKODRIVER_VERSION: 0.33.0 + GECKODRIVER_VERSION: 0.35.0 - name: Set up Ruby ${{ matrix.ruby-version }} uses: ruby/setup-ruby@v1 From d12ccce5df73b5804b32975a8bb0a285821a26b7 Mon Sep 17 00:00:00 2001 From: Alex Smith Date: Tue, 11 Feb 2025 14:36:37 +1100 Subject: [PATCH 2/3] Update capybara and selenium-webdriver --- miniproxy.gemspec | 6 ++---- spec/support/capybara_driver.rb | 12 ++++++------ 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/miniproxy.gemspec b/miniproxy.gemspec index 76130a9..88cb5e9 100644 --- a/miniproxy.gemspec +++ b/miniproxy.gemspec @@ -17,8 +17,6 @@ Gem::Specification.new do |s| s.add_runtime_dependency 'webrick', '~> 1' s.add_development_dependency 'rspec', '~> 3' - s.add_development_dependency 'capybara', '~> 3.36' - s.add_development_dependency 'selenium-webdriver', '~> 3.142' - # no longer bundled with Ruby 3+, but required by selenium-webdriver, v3 of which does not explicitly depend on it - s.add_development_dependency 'rexml', '~> 3' + s.add_development_dependency 'capybara', '~> 3' + s.add_development_dependency 'selenium-webdriver', '~> 4' end diff --git a/spec/support/capybara_driver.rb b/spec/support/capybara_driver.rb index 1d67ac7..bc72d56 100644 --- a/spec/support/capybara_driver.rb +++ b/spec/support/capybara_driver.rb @@ -2,7 +2,7 @@ require "selenium-webdriver" firefox_profile = Selenium::WebDriver::Firefox::Profile.new -firefox_profile.assume_untrusted_certificate_issuer = true +firefox_profile.secure_ssl = false firefox_profile.proxy = Selenium::WebDriver::Proxy.new( http: "#{MiniProxy.host}:#{MiniProxy.port}", ssl: "#{MiniProxy.host}:#{MiniProxy.port}" @@ -17,11 +17,11 @@ firefox_profile["plugins.flashBlock.enabled"] = false firefox_profile["browser.safebrowsing.blockedURIs.enable"] = false -firefox_options = Selenium::WebDriver::Firefox::Options.new(profile: firefox_profile) -firefox_options.headless! - -firefox_caps = Selenium::WebDriver::Remote::Capabilities.firefox(accept_insecure_certs: true) +firefox_options = Selenium::WebDriver::Firefox::Options.new( + profile: firefox_profile, + args: ['-headless'], +) Capybara.register_driver :firefox do |app| - Capybara::Selenium::Driver.new(app, desired_capabilities: firefox_caps, options: firefox_options) + Capybara::Selenium::Driver.new(app, options: firefox_options) end From 37a8ecc4547b28cce56cdb0342266609a49dfacd Mon Sep 17 00:00:00 2001 From: Alex Smith Date: Tue, 11 Feb 2025 14:25:18 +1100 Subject: [PATCH 3/3] Update supported Ruby versions Ruby 3.4 is out, 3.0 is no longer supported, and 3.1 won't be in a couple of months either. https://endoflife.date/ruby --- .github/workflows/test.yml | 2 +- README.md | 2 +- miniproxy.gemspec | 3 +++ 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 906bda3..ce9dfc9 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -8,7 +8,7 @@ jobs: strategy: matrix: - ruby-version: ['3.0', '3.1', '3.2'] + ruby-version: ['3.2', '3.3', '3.4'] steps: - uses: actions/checkout@v3.5.2 diff --git a/README.md b/README.md index cd957dc..85666d3 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ A small stubbable proxy server for testing HTTP(S) interactions. ## Supported Versions -* Ruby 3.0, 3.1, 3.2 +* Ruby 3.2, 3.4, 3.4 ## Getting Started diff --git a/miniproxy.gemspec b/miniproxy.gemspec index 88cb5e9..0b1381d 100644 --- a/miniproxy.gemspec +++ b/miniproxy.gemspec @@ -14,7 +14,10 @@ Gem::Specification.new do |s| s.files = `git ls-files -- lib/* ssl/*`.split("\n") + s.required_ruby_version = Gem::Requirement.new('>= 3.2', '< 4') + s.add_runtime_dependency 'webrick', '~> 1' + s.add_runtime_dependency 'drb', '~> 2' s.add_development_dependency 'rspec', '~> 3' s.add_development_dependency 'capybara', '~> 3'