Class: RakeRoll::Versioning
- Inherits:
-
Object
- Object
- RakeRoll::Versioning
- Defined in:
- lib/rake_roll/versioning.rb
Instance Attribute Summary collapse
-
#current_version ⇒ Object
readonly
Returns the value of attribute current_version.
Instance Method Summary collapse
- #bump ⇒ Object
-
#initialize(current_version) ⇒ Versioning
constructor
A new instance of Versioning.
- #major ⇒ Object
- #minor ⇒ Object
- #pre ⇒ Object
Constructor Details
#initialize(current_version) ⇒ Versioning
Returns a new instance of Versioning.
7 8 9 |
# File 'lib/rake_roll/versioning.rb', line 7 def initialize(current_version) @current_version = validate_current_version(current_version) end |
Instance Attribute Details
#current_version ⇒ Object (readonly)
Returns the value of attribute current_version.
5 6 7 |
# File 'lib/rake_roll/versioning.rb', line 5 def current_version @current_version end |
Instance Method Details
#bump ⇒ Object
11 12 13 14 15 16 17 18 |
# File 'lib/rake_roll/versioning.rb', line 11 def bump if nums = current_version.dup last_number = nums[-1].scan(/\d+/).first.to_i last_number = last_number + 1 nums[-1] = last_number nums.join(".") end end |
#major ⇒ Object
44 45 46 47 48 49 50 51 52 53 |
# File 'lib/rake_roll/versioning.rb', line 44 def major if nums = current_version.dup major_number = nums[0].scan(/\d+/).first.to_i major_number = major_number + 1 nums[0] = major_number nums[-1] = "0" nums[-2] = "0" if nums.length == 3 nums.join(".") end end |
#minor ⇒ Object
33 34 35 36 37 38 39 40 41 42 |
# File 'lib/rake_roll/versioning.rb', line 33 def minor if nums = current_version.dup minor_number = nums[1].scan(/\d+/).first.to_i minor_number = minor_number + 1 nums[1] = minor_number.to_s nums.last.gsub!(/\D/, "") nums[-1] = "0" if nums.length == 3 nums.join(".") end end |
#pre ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/rake_roll/versioning.rb', line 20 def pre if nums = current_version.dup pre_letter = nums[-1].scan(/\D/).first if pre_letter next_letter = pre_letter.next nums[-1].gsub!(pre_letter, next_letter) else nums[-1] = nums[-1] + "a" end nums.join(".") end end |