lib/new/version.rb in new-0.0.6 vs lib/new/version.rb in new-0.0.7

- old
+ new

@@ -1,41 +1,49 @@ module New::Version require 'semantic' - def version= string - @version ||= begin - Semantic::Version.new string - rescue - New.say "#{string} is not a semantic version. Use format `1.2.3`", type: :fail - exit + def version; @version; end + + def get_part + New.say " Current Version: #{version}", type: :success + New.say " Specify which part to bump: [#{'Mmp'.green}] (#{'M'.green}ajor / #{'m'.green}inor / #{'p'.green}atch)" + part = STDIN.gets.chomp! + + case part + when 'M' + :major + when 'm' + :minor + when 'p' + :patch end end - def version; @version; end - def bump_version part + def bump_version current_version, part + get_version current_version + case part when :major version.major += 1 + version.minor = 0 + version.patch = 0 when :minor version.minor += 1 + version.patch = 0 when :patch version.patch += 1 end version end - def get_part - New.say " Current Version: #{version}", type: :success - New.say " Specify which part to bump: [#{'Mmp'.green}] (#{'M'.green}ajor / #{'m'.green}inor / #{'p'.green}atch)" - part = STDIN.gets.chomp! +private - case part - when 'M' - :major - when 'm' - :minor - when 'p' - :patch + def get_version string + @version ||= begin + Semantic::Version.new string + rescue + New.say "#{string} is not a semantic version. Use format `1.2.3`", type: :fail + exit end end end