vseries 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e8cfced10322c68ddfac5992311f049865f88eea95532275cda0628656d37e90
4
- data.tar.gz: 21b33fef686c1208e36ce5be71cf201ba8627dcce93861f7604f63120f4bb329
3
+ metadata.gz: c0c2745bcbfeed99065f77a6e37a5f3cea9350ab63276d0c26c959a20e2d7ee4
4
+ data.tar.gz: 6bf00a16ff74612d5cb272350e9a27be10feff8388507e3e41787e792a229370
5
5
  SHA512:
6
- metadata.gz: b612bbc6c810f51542b3280e67ad1c4397c93b1c9c59265d3e8f6087d22c3957265888f0bfceed8df741928df77ad078b33d6705ab2e242923e45f7a97c63a69
7
- data.tar.gz: 4d51e1dd1449b50d7b629043c6e6b02331b0e5ea71ed56ccc7618495e13daba06c2c7e2336036ce829775931ef6edfffbf10a2e785308bc2279320da6aee63dc
6
+ metadata.gz: 589a3f87971310f85c844671fb28dc354657899d74e578cafb8540f3ee9f43c79579fecd5851a78ab32b4ddd2c5f0696f61e490af7da603be012c7d02e234fd4
7
+ data.tar.gz: 33e3f2ce0a817065bc76ed06f3f8ba1ee7c4a7a3a437c0c88c5fb4f438e747a2e78117e83b1c0a117796e0b8b794dd9a521d10dc14c44fca4834c5306c601446
@@ -1,6 +1,6 @@
1
1
  name: Ruby
2
2
 
3
- on: [push, pull_request]
3
+ on: [push]
4
4
 
5
5
  jobs:
6
6
  build:
@@ -8,7 +8,7 @@ jobs:
8
8
  strategy:
9
9
  matrix:
10
10
  ruby: [ '2.4', '2.5', '2.6' ]
11
- name: Ruby ${{ matrix.ruby }} sample
11
+ name: Ruby ${{ matrix.ruby }}
12
12
  steps:
13
13
  - uses: actions/checkout@v2
14
14
  - uses: actions/setup-ruby@v1
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- vseries (0.1.0)
4
+ vseries (0.1.1)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -34,4 +34,4 @@ DEPENDENCIES
34
34
  vseries!
35
35
 
36
36
  BUNDLED WITH
37
- 2.0.2
37
+ 2.1.4
data/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # Vseries
2
2
 
3
+ ![](https://github.com/catks/vseries/workflows/Ruby/badge.svg?branch=master)
4
+
3
5
  Vseries is a micro library to work with semantic version tags.
4
6
 
5
7
  ## Installation
@@ -38,10 +40,12 @@ version_1 >= version_2 # => true
38
40
  version_1.up(:patch).to_s # => '1.1.3'
39
41
  version_1.up(:minor).to_s # => '1.2.0'
40
42
  version_1.up(:major).to_s # => '2.0.0'
43
+ version_1.up(:pre_release) # Raises Vseries::SemanticVersion::PreRelease:BlankPreReleaseError
41
44
 
42
45
  version_2.up(:patch).to_s # => '1.1.3-rc.1'
43
46
  version_2.up(:minor).to_s # => '1.2.0-rc.1'
44
47
  version_2.up(:major).to_s # => '2.0.0-rc.1'
48
+ version_2.up(:pre_release).to_s # => '1.1.2-rc.3'
45
49
 
46
50
  ```
47
51
 
@@ -9,7 +9,7 @@ module Vseries
9
9
  include Comparable
10
10
 
11
11
  REGEXP = /-?(.+)\.(\d+)/
12
- BlankPreRelease = Class.new(StandardError)
12
+ BlankPreReleaseError = Class.new(StandardError)
13
13
 
14
14
  attr_accessor :name, :number
15
15
 
@@ -31,7 +31,7 @@ module Vseries
31
31
  end
32
32
 
33
33
  def up
34
- raise BlankPreRelease if blank?
34
+ raise BlankPreReleaseError if blank?
35
35
 
36
36
  new_pre_release = self.dup
37
37
  new_pre_release.number = number ? number + 1 : @initial_number
@@ -39,9 +39,12 @@ module Vseries
39
39
  end
40
40
 
41
41
  def <=>(other)
42
+ return 0 if blank? && other.blank?
42
43
  return -1 if present? && other.blank?
43
44
  return 1 if blank? && other.present?
44
- to_s <=> other.to_s
45
+ return 1 if @name > other.name
46
+
47
+ @number <=> other.number
45
48
  end
46
49
 
47
50
  def blank?
@@ -1,3 +1,3 @@
1
1
  module Vseries
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vseries
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carlos Atkinson
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-03-26 00:00:00.000000000 Z
11
+ date: 2020-04-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler