Project

General

Profile

Actions

Patch #37558

closed

Update webdrivers to 5.0

Added by Takashi Kato about 2 years ago. Updated about 1 year ago.

Status:
Closed
Priority:
Normal
Category:
Gems support
Target version:
Start date:
Due date:
% Done:

0%

Estimated time:

Description

Upgrade webdrivers, etc. To enable system tests can be run on ruby3 or later.

In addition, we do not load the driver for localhost when we set `SELENIUM_REMOTE_URL` to support a host without a browser (Docker environment, etc.).


Files

0001-Upgrade-webdrivers.patch (4.9 KB) 0001-Upgrade-webdrivers.patch Takashi Kato, 2022-08-07 01:09
0001-Upgrade-webdriver.patch (3.83 KB) 0001-Upgrade-webdriver.patch patch for r22317 Takashi Kato, 2023-09-24 17:33
0001r2-Upgrade-webdriver.patch (3.88 KB) 0001r2-Upgrade-webdriver.patch patch for r22382 Takashi Kato, 2023-10-26 13:34
Actions #1

Updated by Go MAEDA about 2 years ago

Currently, the version of Webdrivers gem is fixed at 4.6.1 (see r21257). This is probably for compatibility with Ruby 2.5. Webdrivers 2.6.1 is the last version that supports Ruby 2.5.

However, Redmine no longer supports Ruby 2.5 after r21610, so now we can use the latest version of Webdrivers gem.

Actions #2

Updated by Go MAEDA about 2 years ago

  • Target version set to Candidate for next major release
Actions #3

Updated by Go MAEDA about 2 years ago

  • Target version changed from Candidate for next major release to 5.1.0

Setting the target version to 5.1.0.

Actions #4

Updated by Ko Nagase about 2 years ago

I encountered webdriver issue on my M1 Mac environment recently. (At least, there was no problem at 2022-10-10(Mon).)

% bundle exec rails test:system
rails aborted!
Webdrivers::NetworkError: Net::HTTPServerException: 404 "Not Found" with https://chromedriver.storage.googleapis.com/106.0.5249.61/chromedriver_mac64_m1.zip

From the following Japanese article, updating webdrivers >= 5.2.0 seems to be necessary,

so, I hope that this update will be merged before 5.1.0 for system test.

Actions #5

Updated by Takashi Kato about 1 year ago

As per the following pull request, selenium-webdriver 4.11 or later does not require the webdriver description in the Gemfile.
The fixed patch is available here.

https://github.com/rails/rails/pull/48847

Actions #6

Updated by Marius BĂLTEANU about 1 year ago

Applying this patch on Ruby 3.1, I receive the following error:

rake aborted!
LoadError: cannot load such file -- webdrivers/chromedriver
/builds/redmine-org/redmine/vendor/ruby/3.1.0/gems/zeitwerk-2.6.12/lib/zeitwerk/kernel.rb:38:in `require'
/builds/redmine-org/redmine/vendor/ruby/3.1.0/gems/zeitwerk-2.6.12/lib/zeitwerk/kernel.rb:38:in `require'

On Ruby 3.0, the system tests are running. Do you have any ideea?

Actions #7

Updated by Takashi Kato about 1 year ago

This is my mistake.
I did not notice this because I was testing with SELENIUM_REMOTE_URL set at hand.
I fixed the part of application_system_test_case.rb that calls webdriver.

Actions #8

Updated by Marius BĂLTEANU about 1 year ago

  • Status changed from New to Closed
  • Assignee set to Marius BĂLTEANU

Committed, thanks!

Actions

Also available in: Atom PDF