Skip to content

Past ideas (~2020) Ideas for Bundler

Koichi Sasada edited this page Feb 19, 2021 · 1 revision

Bundler is used by almost every Ruby developer, and manages the gem dependencies of almost every Ruby project. With that many users, there are many outstanding problems whose solution would help hundreds or thousands of developers on a daily basis. Many of these problems have planned solutions, but need dedicated time for implementation and handling all the inevitable edge cases. Other problems are well-known as problems, but do not have obvious solutions yet. Each project idea discusses any existing plans or partial work on that project so far.

Bundler has a core team of approximately 6 people at any given time, although it's typical that only 2-3 of those people are actively contributing at any given time. We also maintain an active group chat, shared with the Rubygems and Rubygems.org teams, allowing us to discuss and plan as needed. Every contributor is invited to join the group chat, and it can be an extremely useful resource when newer contributors have questions or need clarification. André Arko, the Bundler team lead, is available for direct mentoring on any of these projects, with supplemental assistance from other members of the core team.

With that out of the way, let's dig in to the available project ideas:

Maintain Bundler: a very popular and widely-used open source project

Once an open source project has taken off and become popular and widely used, writing code and implementing new features has to take a back seat to accepting bug reports, assisting users, and ensuring that contributed changes work together without causing problems for a different set of users. This project idea basically consists of the chance to participate in the ongoing work of maintaining and administrating an extremely popular open source project. It will include triaging bug reports, updating documentation, managing fixes and features across multiple release branches, releasing new versions, and communicating with the public. This project is most suitable for students interested in continuing to work in open source, either as a hobby or a job, as they continue in their career as a software developer.

  • Prerequisites: none
  • Programming areas include: Ruby, but no prior experience required
  • Estimated difficulty level: easy to medium
  • Potential mentors: @indirect

Add support for The Update Framework to Bundler and the new index format

Building on the TUF project for Rubygems and Rubygems.org, add support to Bundler for TUF. This would include both testing integration (since Bundler uses Rubygems to download gems) and adding TUF metadata to the new plaintext index format that has been implemented and is currently being integrated into Bundler, bundler.rubygems.org, and will soon be integrated into Rubygems and Rubygems.org.

  • Prerequisites: Familiarity with Rubygems
  • Programming skills needed: Competence in Ruby
  • Estimated difficulty level: hard
  • Potential mentors: @indirect, @bascule, @JustinCappos, @vladimir-v-diaz, @andremedeiros