oesmith / puffing-billy

A rewriting web proxy for testing interactions between your browser and external sites. Works with ruby + rspec.
MIT License
662 stars 168 forks source link

Adapt to newer versions selenium webdriver #314

Closed AlfonsoUceda closed 2 years ago

AlfonsoUceda commented 2 years ago

This PR introduces two changes, the first one is in the gemspec file where the gem generated included all files, but now it will require only the needed ones. @oesmith could you confirm that this is correct? Do you need the binary to be included? You don't mention it in the README so I guess it is not for the gem. Screenshot 2022-01-04 at 09 20 20

Another change in the gemspec is to bump the minimum required version to 3.150.0 where assume_untrusted_certificate_issuer was removed from the firefox profile class.

The last change is in lib/billy/browsers/capybara.rb, where I removed assume_untrusted_certificate_issuer (I don't know what the alternative is) and also remove deprecation warnings to use capabilities param instead of options and desired_capabilities.

AlfonsoUceda commented 2 years ago

@oesmith I don't see that the CI runs, are you still using travis? Would you like to use github actions instead?

AlfonsoUceda commented 2 years ago

@ronwsmith I forgot to ping you.

AlfonsoUceda commented 2 years ago

Hi @ronwsmith, could you take a look?

ronwsmith commented 2 years ago

@AlfonsoUceda good catch on missing CI. I totally missed the changes with Travis. I just switched it over to Github Actions. Mind updating your PR and ensuring those pass?

AlfonsoUceda commented 2 years ago

@ronwsmith I've updated the PR but I think it needs some approval from your side to run the CI

AlfonsoUceda commented 2 years ago

@ronwsmith seems that watir and selenium-webdriver gems need a higher version of ruby. Are you open to restrict the minimum ruby version to 2.7? I can do it in this PR and also adapt the github actions.

In addition, it could be a major release version. What do you think?

ronwsmith commented 2 years ago

@AlfonsoUceda Yes, I have to approve first time contributors. Looks like your gemspec changes are not backwards compatible to currently supported ruby versions. Please take a look.

ronwsmith commented 2 years ago

@AlfonsoUceda we were reviewing at the same time :). How about we do a separate PR to get everything working with Ruby 2.7, 2.8, 2.9, 3.0, 3.1 without gem changes (if possible). Then once we get updated there, we can do this forced selenium update and compatibility change and make a major version change (removing the older versions).

AlfonsoUceda commented 2 years ago

Perfect @ronwsmith, will do it tomorrow

AlfonsoUceda commented 2 years ago

@ronwsmith I've rebased latest master in the branch and also removed all deprecation warnings.

ronwsmith commented 2 years ago

Released in 3.0.1. Thanks for the contributions!