class Lapidarist::LevelConstraint

Attributes

gem[R]

Public Class Methods

new(gem) click to toggle source
# File lib/lapidarist/level_constraint.rb, line 3
def initialize(gem)
  @gem = gem
end

Public Instance Methods

maximum() click to toggle source
# File lib/lapidarist/level_constraint.rb, line 7
def maximum
  available_semver_levels.compact.min
end

Private Instance Methods

available_semver_levels() click to toggle source
# File lib/lapidarist/level_constraint.rb, line 15
def available_semver_levels
  available_semver_levels = [default_constraint]
  available_semver_levels << gem.next_semver_level if Lapidarist.config.recursive
  available_semver_levels
end
default_constraint() click to toggle source
# File lib/lapidarist/level_constraint.rb, line 21
def default_constraint
  if Lapidarist.config.groups.any?
    Lapidarist.config.groups.select { |g| gem.groups.include?(g.name) }.min_by(&:level).level
  else
    Lapidarist.config.version
  end
end