thoughtbot / appraisal

A Ruby library for testing your library against different versions of dependencies.
https://thoughtbot.com
MIT License
1.25k stars 107 forks source link

Properly auto-install the right bundler version #168

Closed deivid-rodriguez closed 4 years ago

deivid-rodriguez commented 4 years ago

And fix failures.

@nickcharlton This is equivalent to #166, but I included a small fix in the test code, so we can use the latest version of bundler.

nickcharlton commented 4 years ago

Interestingly, this command.rb fixes another problem I was trying to solve: #146 and I think is valuable on it's own.

I merged my Ruby update PR (#166) to split this from this PR and just rebased yours (hopefully to save you the bother and not just be annoying…).

It'd be a good to see a test here too. Do you think there's something we could do to ensure this is working?

deivid-rodriguez commented 4 years ago

I was thinking that since this patch allows appraisals tests to pass against the latest version of bundler, actually testing against the latest version bundler would be enough to cover the fix (or maybe testing against both 1.17 and 2.1?).

If this needs a more specific test, then I'll try to find out some time to think about it.

nickcharlton commented 4 years ago

Right yeah, I agree with that. I'm curious that whilst we're not currently testing this, it's different behaviour and whether or not we should or not.

Incidentally, I tried this branch on Ruby 2.7 on Administrate and we get some fun errors there: https://circleci.com/gh/thoughtbot/administrate/5904 any thoughts?

deivid-rodriguez commented 4 years ago

I'm having a look now :+1:

deivid-rodriguez commented 4 years ago

Ok, so this PR does fix the issue of auto installing the correct bundler version your CI wants to use (in the case of administrate, 1.17.3).

However, that reveals a potential incompatibility between bundler 1.17 and ruby 2.7 as the errors you reference show.

Upgrading bundler gets past that issue, but reveals yet another incompatibility, in this case between ruby 2.7 and rails 4.2.

You might be able to fix that last issue by pinning administrate to bigdecimal 1.x, but honestly I think the best way to "fix" it is by dropping Rails 4.2 support.

deivid-rodriguez commented 4 years ago

Any news @nickcharlton? :)

nickcharlton commented 4 years ago

I think on further thought that this is the right approach to take, so I'm going to merge it and see what goes wrong!

deivid-rodriguez commented 4 years ago

Thanks @nickcharlton!

odlp commented 4 years ago

@nickcharlton 👋 hello! Any chance of cutting a release with this?

nickcharlton commented 4 years ago

👋 hello friend!

Yeah — I hadn't revisited since so I must've forgotten about it. I'll do this on Friday (2020-06-05).