Today I Learned

A Hashrocket project

5 posts by mattpolito @mattpolito

Install `capybara-webkit`

Turns out capybara-webkit’s has a dependency on qtwebkit which has been removed from the qt library package. You’ll have the pleasure of finding this out when you run into this grand error:

Project ERROR: Unknown module(s) in QT: webkitwidgets

To get around this, you can install a previous version of qt using brew via:

brew install qt@5.5

Now reload your terminal and ensure that you can run qmake. Once that is all good, go ahead and reinstall/bundle capybara-webkit.

Don’t let this stump you for longer than it did me!

Using pessimistic gem version to catch betas

The trouble with pessimistic (~>) versioning is that it still won’t catch pre-release library versions… or will it.

It actually can allow ‘beta’ versions by adding an ‘x’ to the version you’d like to catch.

gem "rails", "~> 5.x"

Since ‘beta’ versions (5.0.0.beta3) actually register as higher than 5.0.0, the pessimistic operator will not catch the beta version. Gem versioning shows any version with a letter as ‘pre-release’ which is how beta3, rc1, alpha versions work.

Using the ‘x’ as a wildcard will allow pre-release gem versions to be caught.