Skip to content

Commit

Permalink
Merge 5f44ae7 into 80b4a05
Browse files Browse the repository at this point in the history
  • Loading branch information
jarl-dk committed Mar 18, 2018
2 parents 80b4a05 + 5f44ae7 commit 4e614a1
Show file tree
Hide file tree
Showing 4 changed files with 23 additions and 22 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,7 @@ major # Bump to the next major level (e.g. 0.0.1 to 1.0.0)
minor # Bump to the next minor level (e.g. 0.0.1 to 0.1.0)
patch # Bump to the next patch level (e.g. 0.0.1 to 0.0.2)
pre|rc|etc # Bump to the next pre-release level (e.g. 0.0.1 to
# 0.1.0.pre.1, 1.0.0.pre.1 to 1.0.0.pre.2)
# 0.1.0-pre.1, 1.0.0-pre.1 to 1.0.0-pre.2)
```

When searching for the version file for a gem named `gem-name`: the
Expand Down
5 changes: 3 additions & 2 deletions lib/gem/release/version/number.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,15 @@ module Gem
module Release
module Version
class Number < Struct.new(:number, :target)
NUMBER = /^(\d+)\.?(\d+)?\.?(\d+)?\.?(\w+)?\.?(\d+)?$/
NUMBER = /^(\d+)\.?(\d+)?\.?(\d+)?\-?(\w+)?\.?(\d+)?$/

STAGES = %i(alpha beta pre rc)

def bump
return target if specific?
validate_stage
[major, minor, patch, stage, num].compact.join('.')
[major, minor, patch].compact.join('.') +
(stage ? '-' + [stage, num].join('.') : '')
end

private
Expand Down
2 changes: 1 addition & 1 deletion spec/gem/release/cmds/bump_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@

describe 'pre' do
let(:opts) { { version: :pre } }
it { should have_version 'foo/bar', '1.1.0.pre.1' }
it { should have_version 'foo/bar', '1.1.0-pre.1' }
end
end

Expand Down
36 changes: 18 additions & 18 deletions spec/gem/release/version/number_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,12 @@

describe 'given target: :pre' do
let(:target) { :pre }
it { should eq '1.1.0.pre.1' }
it { should eq '1.1.0-pre.1' }
end

describe 'given target: :rc' do
let(:target) { :rc }
it { should eq '1.1.0.rc.1' }
it { should eq '1.1.0-rc.1' }
end
end

Expand Down Expand Up @@ -65,12 +65,12 @@

describe 'given target: :pre' do
let(:target) { :pre }
it { should eq '1.2.0.pre.1' }
it { should eq '1.2.0-pre.1' }
end

describe 'given target: :rc' do
let(:target) { :rc }
it { should eq '1.2.0.rc.1' }
it { should eq '1.2.0-rc.1' }
end
end

Expand Down Expand Up @@ -99,12 +99,12 @@

describe 'given target: :pre' do
let(:target) { :pre }
it { should eq '1.2.0.pre.1' }
it { should eq '1.2.0-pre.1' }
end

describe 'given target: :rc' do
let(:target) { :rc }
it { should eq '1.2.0.rc.1' }
it { should eq '1.2.0-rc.1' }
end
end

Expand Down Expand Up @@ -143,7 +143,7 @@
end

describe 'given 1.1.1.pre.1' do
let(:number) { '1.1.1.pre.1' }
let(:number) { '1.1.1-pre.1' }

describe 'given target: :major' do
let(:target) { :major }
Expand All @@ -162,22 +162,22 @@

describe 'given target: :pre' do
let(:target) { :pre }
it { should eq '1.1.1.pre.2' }
it { should eq '1.1.1-pre.2' }
end

describe 'given target: nil (defaults to :pre)' do
let(:target) { nil }
it { should eq '1.1.1.pre.2' }
it { should eq '1.1.1-pre.2' }
end

describe 'given target: :rc' do
let(:target) { :rc }
it { should eq '1.1.1.rc.1' }
it { should eq '1.1.1-rc.1' }
end
end

describe 'given 1.1.1.rc.1' do
let(:number) { '1.1.1.rc.1' }
let(:number) { '1.1.1-rc.1' }

describe 'given target: :major' do
let(:target) { :major }
Expand All @@ -201,36 +201,36 @@

describe 'given target: nil (defaults to :rc)' do
let(:target) { nil }
it { should eq '1.1.1.rc.2' }
it { should eq '1.1.1-rc.2' }
end

describe 'given target: :rc' do
let(:target) { :rc }
it { should eq '1.1.1.rc.2' }
it { should eq '1.1.1-rc.2' }
end
end

describe 'given 1.0.0.alpha.1' do
let(:number) { '1.0.0.alpha.1' }
let(:number) { '1.0.0-alpha.1' }

describe 'given target: :alpha' do
let(:target) { :alpha }
it { should eq '1.0.0.alpha.2' }
it { should eq '1.0.0-alpha.2' }
end

describe 'given target: :beta' do
let(:target) { :beta }
it { should eq '1.0.0.beta.1' }
it { should eq '1.0.0-beta.1' }
end

describe 'given target: :pre' do
let(:target) { :pre }
it { should eq '1.0.0.pre.1' }
it { should eq '1.0.0-pre.1' }
end

describe 'given target: :rc' do
let(:target) { :rc }
it { should eq '1.0.0.rc.1' }
it { should eq '1.0.0-rc.1' }
end
end

Expand Down

0 comments on commit 4e614a1

Please sign in to comment.