Module: Semmy::VersionString
Defined Under Namespace
Classes: NoPreviousMinor, SuffixNotFound, UnexpectedSuffix
Instance Method Summary
collapse
Instance Method Details
#bump_major(version, suffix) ⇒ Object
21
22
23
|
# File 'lib/semmy/version_string.rb', line 21
def bump_major(version, suffix)
[bump(0, version), suffix].join('.')
end
|
#bump_minor(version, suffix) ⇒ Object
25
26
27
|
# File 'lib/semmy/version_string.rb', line 25
def bump_minor(version, suffix)
[bump(1, version), suffix].join('.')
end
|
#bump_patch_level(version) ⇒ Object
29
30
31
|
# File 'lib/semmy/version_string.rb', line 29
def bump_patch_level(version)
bump(2, version)
end
|
#components(version) ⇒ Object
41
42
43
44
45
46
47
48
49
|
# File 'lib/semmy/version_string.rb', line 41
def components(version)
components = version.split('.')
{
major: components[0],
minor: components[1],
patch: components[2]
}
end
|
#minor_only(version) ⇒ Object
33
34
35
|
# File 'lib/semmy/version_string.rb', line 33
def minor_only(version)
version.split('.')[0..1].join('.')
end
|
#patch_level?(version) ⇒ Boolean
37
38
39
|
# File 'lib/semmy/version_string.rb', line 37
def patch_level?(version)
components(version)[:patch].to_i > 0
end
|
#previous_stable_branch_name(version, stable_branch_name_pattern) ⇒ Object
65
66
67
|
# File 'lib/semmy/version_string.rb', line 65
def previous_stable_branch_name(version, stable_branch_name_pattern)
stable_branch_name_pattern % previous_minor_version_components(version)
end
|
#previous_version(version) ⇒ Object
51
52
53
54
55
56
57
58
59
60
61
62
63
|
# File 'lib/semmy/version_string.rb', line 51
def previous_version(version)
components = version.split('.').map(&:to_i)
if components[2] > 0
components[2] -= 1
elsif components[1] > 0
components[1] -= 1
else
fail(NoPreviousMinor, "Cannot get previous version of #{version}.")
end
components.join('.')
end
|
#remove_suffix(version, suffix) ⇒ Object
11
12
13
14
15
16
17
18
19
|
# File 'lib/semmy/version_string.rb', line 11
def remove_suffix(version, suffix)
new_version = version.dup
unless new_version.gsub!(/.#{suffix}$/, '')
fail(SuffixNotFound, "Suffix #{suffix} not found in #{version}")
end
new_version
end
|