Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix Travis builds using appraisal gem #113

Merged
merged 1 commit into from
Sep 16, 2016
Merged

Fix Travis builds using appraisal gem #113

merged 1 commit into from
Sep 16, 2016

Conversation

md5
Copy link
Contributor

@md5 md5 commented Sep 16, 2016

This PR fixes the Travis builds by using different gemfiles for different versions of Ruby and some gem dependencies (notably rack 1.x and 2.x). These gemfiles are managed by the appraisal gem.

It also switches our build matrix from testing with jruby-head to testing with jruby-9.0.5.0, since jruby-head has some issues with bundler not being installed.

In addition to these changes, I have also enabled Travis's caching feature for Bundler. Hopefully this should speed up our test runs once the caches are primed. In my testing, it appears to have cut the aggregate build time by about a third.

@md5
Copy link
Contributor Author

md5 commented Sep 16, 2016

It's worth noting that Travis is now running tests for three Gemfiles for MRI version 2.2, 2.3, and head as well as JRuby 9.0.5.0. The three gemfiles test the default, latest dependencies as specified by the gemspec, rack 1.x with json 1.x, and rack 1.x with json 2.x.

If we decide to reduce the number of RVM/Gemfile combinations being tested, we can speed up the time needed for Travis to complete.

@coveralls
Copy link

coveralls commented Sep 16, 2016

Coverage Status

Coverage decreased (-2.3%) to 94.505% when pulling def02d5 on appropriate:appraisal into 59eeeb1 on omniauth:master.

1 similar comment
@coveralls
Copy link

Coverage Status

Coverage decreased (-2.3%) to 94.505% when pulling def02d5 on appropriate:appraisal into 59eeeb1 on omniauth:master.

@md5
Copy link
Contributor Author

md5 commented Sep 16, 2016

Looking closer at the Gemfile.lock, it seems that json is only actually used as a dependency of coveralls, so I think we can safely minimize the combinations tested. I think we do need to test against rack 1.x and rack 2.x though.

@md5 md5 mentioned this pull request Sep 16, 2016
@md5
Copy link
Contributor Author

md5 commented Sep 16, 2016

I've amended this branch to only have appraisal gemfiles for rack 1 and 2. I've locked the problematic coveralls dependencies (json and tins) in the base Gemfile. This should reduce the build matrix by a few builds and speed things up (although not on the first run since it will invalidate the caching due to new gemfile names).

This commit fixes the Travis builds by using different gemfiles for different
versions of Ruby and some gem dependencies (notably rack 1.x and 2.x). These
gemfiles are managed by the `appraisal` gem.

It also switches our build matrix from testing with `jruby-head` to testing
with `jruby-9.0.5.0`, since `jruby-head` has some issues with `bundler` not
being installed.

In addition to these changes, I have also enabled Travis's caching feature for
Bundler. Hopefully this should speed up our test runs once the caches are
primed.
@coveralls
Copy link

coveralls commented Sep 16, 2016

Coverage Status

Coverage decreased (-2.3%) to 94.505% when pulling bbc29c0 on appropriate:appraisal into 59eeeb1 on omniauth:master.

@coveralls
Copy link

coveralls commented Sep 16, 2016

Coverage Status

Coverage decreased (-88.8%) to 8.046% when pulling bbc29c0 on appropriate:appraisal into 59eeeb1 on omniauth:master.

@md5
Copy link
Contributor Author

md5 commented Sep 16, 2016

Travis! :rage1: Y u NameError: uninitialized constant Hashie::Extensions::Array?

@md5
Copy link
Contributor Author

md5 commented Sep 16, 2016

Looks like this was broken because the build picked up a breaking change between hashie 3.4.4 and 3.4.5: hashie/hashie#367. The fix is here: hashie/hashie#368

I think I'll wait until the hashie release 3.4.6 is cut and retry this build.

@dblock
Copy link

dblock commented Sep 16, 2016

I released hashie 3.4.6, please check it out.

@md5
Copy link
Contributor Author

md5 commented Sep 16, 2016

Thanks @dblock! I appreciate the proactive heads-up

@md5
Copy link
Contributor Author

md5 commented Sep 16, 2016

I think this is ready to merge. The Coveralls coverage reported here is not what it shows on the site, probably because I restarted the Travis build without pushing any new commits. I you look at the site, it shows a %2 drop to %94 and the differences look like differences between how coverage is reported across Ruby versions.

@suprnova32
Copy link
Member

Thanks @md5!

@suprnova32 suprnova32 merged commit f6f9b97 into omniauth:master Sep 16, 2016
@md5 md5 deleted the appraisal branch September 16, 2016 18:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants