-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
Support Ruby/Bundler #932
Comments
I'd love to help out with this, but I'm not sure where to start! Which of the existing package manager integrations would be a good place to start looking? |
@aergonaut Thanks for the offer! The Renovate codebase could do with a little refactoring to make it even easier to add new languages, but I can guide you in the meantime. We use lib/manager for storing package manager logic, and lib/datasource for looking up registries. A good reference one to look at is Docker in both those dirs. Until now, it has been possible for us to implement version and lookup logic completely with JS, but for Ruby there may be the need for us to call out to I can start a base branch for Ruby so you don't have to start from absolute scratch. |
Thanks @rarkins. It would be great if you could start a base branch! Yeah, I would think calling out to Bundler would be the easiest way to implement updating. As a first idea, we could run |
@aergonaut please check out https://github.com/renovateapp/renovate/tree/feat/932-ruby and feel free to ping me here or in gitter with any questions |
Any news on this? I was kind of surprised that Renovate does not support a language as widespread as ruby :) |
@yuki24 maybe we can pair on this at some point? It'd be extremely useful. |
I'd be happy to help add support for Ruby. |
For people looking for a solution in the meantime or who want to take a look at some prior art, https://github.com/envato/unwrappr may be of some interest. |
I've committed a "skeleton" for Ruby support into You can find completed examples for buildkite and composer already. Composer is probably the better example to use. At a high level, we'll need to do this:
|
Ruby Bundler in Renovate support is now ready to enter "alpha" stage. If you are interested in helping get it through beta -> GA stages as quickly as possible by testing it out, please let me know! The PR to establish alpha support is here: #3058 It's already capable of parsing the entire Rails |
@rarkins 🖐 We currently use Renovate for Docker+NPM and dependabot for Ruby. I'd happily be an alpha tester and run it instead of or side-by-side with dependabot. |
🎉 This issue has been resolved in version 13.175.0 🎉 The release is available on: Your semantic-release bot 📦🚀 |
Bundler support is now merged to In short, it should detect all Gemfiles, see if any versions or ranges need updating, and submit PRs if so, with updated |
This is awesome 🙏 Thank you all for the hard work! |
This issue is for building up (a) support (please +1 if you would like to see Ruby support) and (b) requirements, e.g. helping suggest what scope is required and what APIs can be used.
The text was updated successfully, but these errors were encountered: