Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Add Unused Dependency Check for Ruby Gems

オープン
#63 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
42/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
ruby
領域
ci-cd, tooling

調査の方向性

Start by reviewing the main CI workflow and the current Gemfile, then investigate whether degem works reliably and compare the suggested alternatives bundle-checker and gem-unused. Done means a stable dependency check is integrated, reports current unused gems, handles documented false positives, and fails CI when unused dependencies are detected.

索引モデルが issue の本文から書いたものです。

説明

feat: Add Unused Dependency Check for Ruby Gems

Description:
To maintain a clean and efficient codebase, we need to add an automated process to the zitadel/client-ruby CI pipeline. The goal of this process is to detect and report any gems listed in the Gemfile that are no longer used in the project. The initial tool considered for this task was degem.

Problem:
The proposed tool, degem, does not appear to be functional in our current environment. Further investigation suggests the tool may be unmaintained, with its last commit several years ago. This makes it an unreliable choice for our CI pipeline, as it may have compatibility issues with modern Ruby versions and bundler.

Impact:

  • Without an automated check, the project is at risk of accumulating unused dependencies over time.
  • Unused gems lead to project bloat, slower bundle install times, and an increased potential security surface.
  • The dependency tree is less clear, making maintenance more difficult for developers.

Tasks:

  1. Attempt a final investigation to determine if degem can be made to work reliably.
  2. If degem is not viable, research and evaluate alternative tools for detecting unused Ruby gems (e.g., bundle-checker, gem-unused).
  3. Select a reliable tool and integrate it into the CI pipeline as a new check.
  4. Run the tool on the codebase and generate an initial report of unused dependencies.
  5. Configure the tool to ignore any known false positives (e.g., gems used by frameworks or other tools but not directly required in the code).
  6. Create a follow-up pull request to remove the confirmed unused gems from the Gemfile.

Expected Outcomes:

  • The CI pipeline includes a job that automatically fails if it detects unused gems in the Gemfile.
  • The project's dependencies are kept clean and minimal, improving maintainability and reducing bloat.
  • Developers are immediately notified of unused dependencies when contributing code.

Additional Notes:

  • The primary goal is to establish a reliable dependency check, not necessarily to use degem. The chosen solution should be stable and actively maintained.
  • This task will likely require updating the main CI workflow file to add a new step for the dependency analysis.
主要言語
Ruby
スター
6
フォーク
2
平均マージ
11分
マージ済み PR(30日)
2

環境構築

  • Dockerfile または Docker Compose ファイルあり
  • プルリクエストのテンプレートあり
  • コントリビューションガイドなし

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

zitadel/client-ruby のほかの issue

zitadel/client-ruby の issue をすべて見る

似ている issue

Ruby の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。