
Security News
OWASP 2025 Top 10 Adds Software Supply Chain Failures, Ranked Top Community Concern
OWASP’s 2025 Top 10 introduces Software Supply Chain Failures as a new category, reflecting rising concern over dependency and build system risks.
ancestors_visualization
Advanced tools
Gem のクラス継承・モジュール利用を可視化する Gem です
作ったきっかけとしては、Gem の実装を読む時に全体感を把握したいなと思うことがあったので
例えば、以下のクラス・モジュール(Gem 名は GemName を想定)があったとして
# sample_gem_dir/lib/gem_name/c1.rb
module GemName
class C1 < C2
include Modules::M1_1
extend Modules::M1_2
end
end
# sample_gem_dir/lib/gem_name/modules/m1_1.rb
module GemName
module Modules
module M1_1
include M1_1_1
extend M1_1_2
def m1_1
end
end
end
end
# sample_gem_dir/lib/gem_name/modules/m1_2.rb
module GemName
module Modules
module M1_2
def self.m1_2
end
end
end
end
# sample_gem_dir/lib/gem_name/modules/m1_1_1.rb
module GemName
module Modules
module M1_1_1
def m1_1_1
end
end
end
end
# sample_gem_dir/lib/gem_name/modules/m1_1_2.rb
module GemName
module Modules
module M1_1_2
def self.m1_1_2
end
end
end
end
# sample_gem_dir/lib/gem_name/c2.rb
module GemName
class C2
include Modules::M2_1
extend Modules::M2_2
end
end
# sample_gem_dir/lib/gem_name/modules/m2_1.rb
module GemName
module Modules
module M2_1
def m2_1
end
end
end
end
# sample_gem_dir/lib/gem_name/modules/m2_2.rb
module GemName
module Modules
module M2_2
def self.m2_2
end
end
end
end
本 Gem を使うと、↓ の画像を生成します

以下を Gemfile に追記して $ bundle install
gem 'ancestors_visualization'
Budler を使わない場合は
$ gem install ancestors_visualization
実行フォーマットは以下
$ bundle exec ancestors_visualization --gem [Gem 名] --output_path [描画ファイルの出力先]
[Gem 名]_ancestors_[年月日時分秒].png例えば、Twitter Gem に対して実行する場合
$ bundle exec ancestors_visualization --gem twitter

例えば、Rspec に対して実行する場合
該当 Gem の lib 配下のクラス・モジュールを描画対象にしているので、依存先の Gem が本体みたいなケースは、意図しない描画結果になります
↓ で描画結果を表示しているのですが、何も表示されていないのはそういうことです

FAQs
Unknown package
We found that ancestors_visualization demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
OWASP’s 2025 Top 10 introduces Software Supply Chain Failures as a new category, reflecting rising concern over dependency and build system risks.

Research
/Security News
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.

Security News
Socket CTO Ahmad Nassri discusses why supply chain attacks now target developer machines and what AI means for the future of enterprise security.