Module: GemDigest

Defined in:
lib/gem_digest.rb,
lib/gem_digest/cli.rb,
lib/gem_digest/version.rb,
lib/gem_digest/analyzer.rb,
lib/gem_digest/categorizer.rb,
lib/gem_digest/reporters/base.rb,
lib/gem_digest/changelog_fetcher.rb,
lib/gem_digest/reporters/console.rb,
lib/gem_digest/reporters/markdown.rb

Defined Under Namespace

Modules: Reporters Classes: Analyzer, CLI, Categorizer, ChangelogFetcher, Error

Constant Summary collapse

VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.analyze(gemfile_lock_path = "Gemfile.lock", options = {}) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/gem_digest.rb', line 15

def self.analyze(gemfile_lock_path = "Gemfile.lock", options = {})
  analyzer = Analyzer.new(gemfile_lock_path)
  gems_data = analyzer.analyze
  
  categorizer = Categorizer.new
  categorized_gems = categorizer.categorize(gems_data)
  
  reporter_class = case options[:format]
                  when "markdown"
                    Reporters::Markdown
                  else
                    Reporters::Console
                  end
  
  reporter = reporter_class.new(options)
  reporter.generate_report(categorized_gems)
end