Class: Dean::SemverHelper

Inherits:
Object
  • Object
show all
Defined in:
lib/dean/semver_helper.rb

Instance Method Summary collapse

Instance Method Details

#bump_major(version) ⇒ Object



6
7
8
9
10
11
12
13
# File 'lib/dean/semver_helper.rb', line 6

def bump_major version
  semver = no_pre_semver version
  semver.major += 1
  semver.minor = 0
  semver.patch = 0
  semver.pre = nil
  semver.to_s
end

#bump_minor(version) ⇒ Object



15
16
17
18
19
20
21
# File 'lib/dean/semver_helper.rb', line 15

def bump_minor version
  semver = no_pre_semver version
  semver.minor += 1
  semver.patch = 0
  semver.pre = nil
  semver.to_s
end

#bump_patch(version) ⇒ Object



23
24
25
26
27
# File 'lib/dean/semver_helper.rb', line 23

def bump_patch version
  semver = no_pre_semver version
  semver.patch += 1
  semver.to_s
end

#bump_pre(version, name = nil) ⇒ Object



29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# File 'lib/dean/semver_helper.rb', line 29

def bump_pre version, name=nil
  semver = semver version 
  pre = semver.pre

  if not pre
    pre_name = name ? name : "pre"
    semver.pre = pre_name + ".1"
    return semver.to_s
  end

  split = pre.split('.')
  if split.length == 1
    if name
      semver.pre = name
    end
    semver.pre += '.1'
  else
    if name
      split[0] = name
    end
    value = split[-1]
    split[-1] = (value.to_i + 1).to_s
    semver.pre = split.join '.'
  end

  semver.to_s
end