Sha256: 24a0053627ace6e387b28267f7f4d05915b96a3911b1b67f4005ea34016697b5
Contents?: true
Size: 1.63 KB
Versions: 2
Compression:
Stored size: 1.63 KB
Contents
require "uri" require "net/http" require "net/https" module GemVersionCheck class Project def initialize(project, spec_names = []) @project = project @spec_names = spec_names end def name @project end def report @report ||= generate_report end def generate_report @check_failed = false result = [] with_progress_bar(spec_names) do |spec_name| dependency = Dependency.new(spec_name, nil, allow_prerelease_dependencies: allow_prerelease_dependencies?, ignore_major_version_change: ignore_major_version_change?) dependency.check(lock_file) result << dependency @check_failed = true unless dependency.valid? end result end def check_failed? @check_failed end def lock_file @lock_file ||= begin content = LockfileFetcher.new(@project).content Lockfile.new(content) end end private def with_progress_bar(elements) pb = ProgressBar.new("Fetch specs", lock_file.total) if display_status? elements.each do |el| yield el pb.inc if display_status? end pb.clear if display_status? end def allow_prerelease_dependencies? GemVersionCheck.configuration.allow_prerelease_dependencies end def display_status? GemVersionCheck.configuration.show_progress_bar end def ignore_major_version_change? GemVersionCheck.configuration.ignore_major_version_change end def spec_names @spec_names.any? ? @spec_names : all_spec_names end def all_spec_names lock_file.spec_names end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
gem_version_check-0.2.1 | lib/gem_version_check/project.rb |
gem_version_check-0.2.0 | lib/gem_version_check/project.rb |