semverify 0.3.0 → 0.3.2

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: 9fcbd22e660e49a8687593008433ffbfd859760a9ecb7a2f61c1277786d34a25
4
- data.tar.gz: d4973af279ee22a2ed02874972908c47ddb4c3db604166c577d00c29885114c6
3
+ metadata.gz: 70523fa457e6370bd31c6e0ac31d47c7a145670e3d3c3a521161aa4f931df504
4
+ data.tar.gz: 3f8b105ee8359ecd413ae649f5571d471f7abfcd466fe2a4b4114ca02f76da9a
5
5
  SHA512:
6
- metadata.gz: d92b11f52be46b8d19b434b1a219a603785ad3cd7570bd64c313e37b78b8c066f8e15d0a491e6834db98206de967359e93c8cb08b03863f97dce0c6c5d6a3477
7
- data.tar.gz: 9b88892ebc937cf4f18a64b16d0a0fe5eb1a706a7564ee1a23e5b5d35089d7d9e1fc5f74c4cf42ffcad32413085ca015166a12703432f1701e551c973b51b451
6
+ metadata.gz: c1edf2e300a7b7121cadefcacf8bcc0ec37ff2c8ad91042524c96e28204eaf3f696a5a6b736c3c33cedaf9108e20667d278d5eb55c09278f58cc4181014166f1
7
+ data.tar.gz: cf5ea76b244214a159036db34b0e0f4b1234acb5dcb49d50c52d115bf9867bc325ffaac056debf222e11821df3003366f1e952d8897af9a3efa25110140e6c0d
data/.rubocop.yml CHANGED
@@ -9,6 +9,9 @@ AllCops:
9
9
  # your project supports:
10
10
  TargetRubyVersion: 3.0
11
11
 
12
+ Gemspec/DevelopmentDependencies:
13
+ EnforcedStyle: gemspec
14
+
12
15
  # The default max line length is 80 characters
13
16
  Layout/LineLength:
14
17
  Max: 120
@@ -20,7 +23,14 @@ Metrics/BlockLength:
20
23
  - "spec/**/*_spec.rb"
21
24
  - "*.gemspec"
22
25
 
26
+ Metrics/ModuleLength:
27
+ CountAsOne: ['hash']
28
+
23
29
  # When writing minitest tests, it is very hard to limit test class length:
24
30
  Metrics/ClassLength:
31
+ CountAsOne: ['hash']
25
32
  Exclude:
26
33
  - "test/**/*_test.rb"
34
+
35
+ Style/AsciiComments:
36
+ Enabled: false
data/CHANGELOG.md CHANGED
@@ -1,3 +1,20 @@
1
+ ## v0.3.2 (2024-01-11)
2
+
3
+ [Full Changelog](https://github.com/main-branch/semverify/compare/v0.3.1..v0.3.2)
4
+
5
+ Changes since v0.3.1:
6
+
7
+ * 91c3780 Update README and gemspec introduction text (#19)
8
+
9
+ ## v0.3.1 (2024-01-05)
10
+
11
+ [Full Changelog](https://github.com/main-branch/semverify/compare/v0.3.0..v0.3.1)
12
+
13
+ Changes since v0.3.0:
14
+
15
+ * 51f649f Add Ruby 3.3 to CI build (#17)
16
+ * 3255436 Update rubocop configuration for new Rubocop changes (#15)
17
+
1
18
  ## v0.3.0 (2023-03-19)
2
19
 
3
20
  [Full Changelog](https://github.com/main-branch/semverify/compare/v0.2.0..v0.3.0)
data/README.md CHANGED
@@ -7,30 +7,59 @@
7
7
  [![Maintainability](https://api.codeclimate.com/v1/badges/44a42ed085fe162e5dff/maintainability)](https://codeclimate.com/github/main-branch/semverify/maintainability)
8
8
  [![Test Coverage](https://api.codeclimate.com/v1/badges/44a42ed085fe162e5dff/test_coverage)](https://codeclimate.com/github/main-branch/semverify/test_coverage)
9
9
 
10
- A Gem to parse, compare, and increment versions for RubyGems.
10
+ Parse, compare, and increment RubyGem versions.
11
11
 
12
- Can be used as an alternative to the [bump RubyGem](https://rubygems.org/gems/bump/).
12
+ This gem installs the `semverify` CLI tool to display and increment a gem's version
13
+ based on SemVer rules. This tool can replace the `bump` command from the
14
+ [bump gem](https://rubygems.org/gems/bump/) for incrementing gem version strings.
13
15
 
14
- * [Semverify](#semverify)
15
- * [Installation](#installation)
16
- * [Command Line Usage](#command-line-usage)
17
- * [Library Usage](#library-usage)
18
- * [Development](#development)
19
- * [Contributing](#contributing)
20
- * [License](#license)
16
+ This gem also provides the `Semverify::Semver` class which knows how to parse,
17
+ validate, and compare [SemVer 2.0.0](https://semver.org/spec/v2.0.0.html) version
18
+ strings.
19
+
20
+ Both the CLI tool and the library code support prerelease versions and versions
21
+ with build metadata.
22
+
23
+ Example CLI commands:
24
+
25
+ ```bash
26
+ # Increment the gem version
27
+ semverify {next-major|next-minor|next-patch} [--pre [--pretype=TYPE]] [--build=METADATA] [--dryrun]
28
+ semverify next-pre [--pretype=TYPE] [--build=METADATA] [--dryrun]
29
+ semverify next-release [--build=METADATA] [--dryrun]
30
+
31
+ # Command to display the current gem version
32
+ semverify current
33
+
34
+ # Display the gem version file
35
+ semverify file
36
+
37
+ # Validate that a version conforms to SemVer 2.0.0
38
+ semverify validate VERSION
39
+
40
+ # Get more detailed help for each command listed above
41
+ semverify help [COMMAND]
42
+ ```
43
+
44
+ * [Installation](#installation)
45
+ * [Command Line Usage](#command-line-usage)
46
+ * [Library Usage](#library-usage)
47
+ * [Development](#development)
48
+ * [Contributing](#contributing)
49
+ * [License](#license)
21
50
 
22
51
  ## Installation
23
52
 
24
53
  Install the gem and add to the application's Gemfile by executing:
25
54
 
26
55
  ```shell
27
- bundle add UPDATE_WITH_YOUR_GEM_NAME_PRIOR_TO_RELEASE_TO_RUBYGEMS_ORG
56
+ bundle add semverify
28
57
  ```
29
58
 
30
59
  If bundler is not being used to manage dependencies, install the gem by executing:
31
60
 
32
61
  ```shell
33
- gem install UPDATE_WITH_YOUR_GEM_NAME_PRIOR_TO_RELEASE_TO_RUBYGEMS_ORG
62
+ gem install semverify
34
63
  ```
35
64
 
36
65
  ## Command Line Usage
@@ -85,7 +85,7 @@ module Semverify
85
85
  --pre can be used to specify that the version should be incremented AND
86
86
  given a pre-release part. For instance:
87
87
 
88
- /x5 $ semverify next-major --pre
88
+ $ semverify next-major --pre
89
89
 
90
90
  increments '1.2.3' to '2.0.0-pre.1'.
91
91
 
@@ -93,7 +93,7 @@ module Semverify
93
93
  --pre to specify a different pre-release type such as alpha, beta, rc, etc.
94
94
  For instance:
95
95
 
96
- /x5 $ semverify next-major --pre --pre-type=alpha
96
+ $ semverify next-major --pre --pre-type=alpha
97
97
 
98
98
  increments '1.2.3' to '2.0.0-alpha.1'.
99
99
 
@@ -144,7 +144,7 @@ module Semverify
144
144
  --pre can be used to specify that the version should be incremented AND
145
145
  given a pre-release part. For instance:
146
146
 
147
- /x5 $ semverify next-minor --pre
147
+ $ semverify next-minor --pre
148
148
 
149
149
  increments '1.2.3' to '2.0.0-pre.1'.
150
150
 
@@ -152,7 +152,7 @@ module Semverify
152
152
  --pre to specify a different pre-release type such as alpha, beta, rc, etc.
153
153
  For instance:
154
154
 
155
- /x5 $ semverify next-patch --pre --pre-type=alpha
155
+ $ semverify next-patch --pre --pre-type=alpha
156
156
 
157
157
  increments '1.2.3' to '1.2.4-alpha.1'.
158
158
 
@@ -203,7 +203,7 @@ module Semverify
203
203
  --pre can be used to specify that the version should be incremented AND
204
204
  given a pre-release part. For instance:
205
205
 
206
- /x5 $ semverify next-patch --pre
206
+ $ semverify next-patch --pre
207
207
 
208
208
  increments '1.2.3' to '1.2.4-pre.1'.
209
209
 
@@ -211,7 +211,7 @@ module Semverify
211
211
  --pre to specify a different pre-release type such as alpha, beta, rc, etc.
212
212
  For instance:
213
213
 
214
- /x5 $ semverify next-patch --pre --pre-type=alpha
214
+ $ semverify next-patch --pre --pre-type=alpha
215
215
 
216
216
  increments '1.2.3' to '1.2.4-alpha.1'.
217
217
 
@@ -260,7 +260,7 @@ module Semverify
260
260
 
261
261
  By default, the existing pre-release type is preserved. For instance:
262
262
 
263
- /x5 $ semverify next-pre
263
+ $ semverify next-pre
264
264
 
265
265
  Increments 1.2.3-alpha.1 to 1.2.3-alpha.2.
266
266
 
@@ -270,16 +270,16 @@ module Semverify
270
270
 
271
271
  For example, if the version starts as 1.2.3-alpha.4, then:
272
272
 
273
- /x5 $ semverify current
274
- /x5 1.2.3-alpha.4
275
- /x5 $ semver next-pre --pre-type=beta
276
- /x5 1.2.3-beta.1
277
- /x5 $ semver next-pre --pre-type=beta
278
- /x5 1.2.3-beta.2
279
- /x5 $ semver next-pre --pre-type=rc
280
- /x5 1.2.3-rc.1
281
- /x5 $ semverify next-release
282
- /x5 1.2.3
273
+ $ semverify current
274
+ 1.2.3-alpha.4
275
+ $ semver next-pre --pre-type=beta
276
+ 1.2.3-beta.1
277
+ $ semver next-pre --pre-type=beta
278
+ 1.2.3-beta.2
279
+ $ semver next-pre --pre-type=rc
280
+ 1.2.3-rc.1
281
+ $ semverify next-release
282
+ 1.2.3
283
283
 
284
284
  The command fails if the existing pre-release type is not lexically less than or
285
285
  equal to TYPE. For example, it the current version is '1.2.3-beta.1' and the TYPE
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Semverify
4
4
  # The current version of this gem
5
- VERSION = '0.3.0'
5
+ VERSION = '0.3.2'
6
6
  end
data/semverify.gemspec CHANGED
@@ -8,8 +8,43 @@ Gem::Specification.new do |spec|
8
8
  spec.authors = ['James Couball']
9
9
  spec.email = ['jcouball@yahoo.com']
10
10
 
11
- spec.summary = 'A Gem to parse and compare semver versions AND bump versions for Ruby Gems'
12
- spec.description = spec.summary
11
+ spec.summary = 'A Gem to parse and compare SemVer versions AND increment versions for Ruby Gems'
12
+ spec.description = <<~DESC
13
+ Parse, compare, and increment RubyGem versions.
14
+
15
+ This gem installs the `semverify` CLI tool to display and increment a gem's version
16
+ based on SemVer rules. This tool can replace the `bump` command from the
17
+ [bump gem](https://rubygems.org/gems/bump/) for incrementing gem version strings.
18
+
19
+ This gem also provides the `Semverify::Semver` class which knows how to parse,
20
+ validate, and compare [SemVer 2.0.0](https://semver.org/spec/v2.0.0.html) version
21
+ strings.
22
+
23
+ Both the CLI tool and the library code support prerelease versions and versions
24
+ with build metadata.
25
+
26
+ Example CLI commands:
27
+
28
+ ```bash
29
+ # Increment the gem version
30
+ semverify {next-major|next-minor|next-patch} [--pre [--pretype=TYPE]] [--build=METADATA] [--dryrun]
31
+ semverify next-pre [--pretype=TYPE] [--build=METADATA] [--dryrun]
32
+ semverify next-release [--build=METADATA] [--dryrun]
33
+
34
+ # Command to display the current gem version
35
+ semverify current
36
+
37
+ # Display the gem version file
38
+ semverify file
39
+
40
+ # Validate that a version conforms to SemVer 2.0.0
41
+ semverify validate VERSION
42
+
43
+ # Get more detailed help for each command listed above
44
+ semverify help [COMMAND]
45
+ ```
46
+ DESC
47
+
13
48
  spec.homepage = 'http://github.com/main-branch/semverify'
14
49
  spec.license = 'MIT'
15
50
  spec.required_ruby_version = '>= 3.0.0'
@@ -18,7 +53,8 @@ Gem::Specification.new do |spec|
18
53
 
19
54
  spec.metadata['homepage_uri'] = spec.homepage
20
55
  spec.metadata['source_code_uri'] = spec.homepage
21
- spec.metadata['changelog_uri'] = 'https://rubydoc.info/gems/semverify/file/CHANGELOG.md'
56
+ spec.metadata['changelog_uri'] = "https://rubydoc.info/gems/#{spec.name}/#{spec.version}/file/CHANGELOG.md"
57
+ spec.metadata['documentation_uri'] = "https://rubydoc.info/gems/#{spec.name}/#{spec.version}"
22
58
 
23
59
  # Specify which files should be added to the gem when it is released.
24
60
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
@@ -31,13 +67,13 @@ Gem::Specification.new do |spec|
31
67
  spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
32
68
  spec.require_paths = ['lib']
33
69
 
34
- spec.add_runtime_dependency 'thor', '~> 1.2'
70
+ spec.add_runtime_dependency 'thor', '~> 1.3'
35
71
 
36
72
  spec.add_development_dependency 'bundler-audit', '~> 0.9'
37
- spec.add_development_dependency 'create_github_release', '~> 1.0'
38
- spec.add_development_dependency 'rake', '~> 13.0'
73
+ spec.add_development_dependency 'create_github_release', '~> 1.3'
74
+ spec.add_development_dependency 'rake', '~> 13.1'
39
75
  spec.add_development_dependency 'rspec', '~> 3.12'
40
- spec.add_development_dependency 'rubocop', '~> 1.48'
76
+ spec.add_development_dependency 'rubocop', '~> 1.59'
41
77
  spec.add_development_dependency 'simplecov', '~> 0.22'
42
78
  spec.add_development_dependency 'simplecov-lcov', '~> 0.8'
43
79
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: semverify
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Couball
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-03-19 00:00:00.000000000 Z
11
+ date: 2024-01-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.2'
19
+ version: '1.3'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.2'
26
+ version: '1.3'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler-audit
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -44,28 +44,28 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '1.0'
47
+ version: '1.3'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '1.0'
54
+ version: '1.3'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '13.0'
61
+ version: '13.1'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '13.0'
68
+ version: '13.1'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rspec
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -86,14 +86,14 @@ dependencies:
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '1.48'
89
+ version: '1.59'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '1.48'
96
+ version: '1.59'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: simplecov
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -170,8 +170,40 @@ dependencies:
170
170
  - - "~>"
171
171
  - !ruby/object:Gem::Version
172
172
  version: '0.9'
173
- description: A Gem to parse and compare semver versions AND bump versions for Ruby
174
- Gems
173
+ description: |
174
+ Parse, compare, and increment RubyGem versions.
175
+
176
+ This gem installs the `semverify` CLI tool to display and increment a gem's version
177
+ based on SemVer rules. This tool can replace the `bump` command from the
178
+ [bump gem](https://rubygems.org/gems/bump/) for incrementing gem version strings.
179
+
180
+ This gem also provides the `Semverify::Semver` class which knows how to parse,
181
+ validate, and compare [SemVer 2.0.0](https://semver.org/spec/v2.0.0.html) version
182
+ strings.
183
+
184
+ Both the CLI tool and the library code support prerelease versions and versions
185
+ with build metadata.
186
+
187
+ Example CLI commands:
188
+
189
+ ```bash
190
+ # Increment the gem version
191
+ semverify {next-major|next-minor|next-patch} [--pre [--pretype=TYPE]] [--build=METADATA] [--dryrun]
192
+ semverify next-pre [--pretype=TYPE] [--build=METADATA] [--dryrun]
193
+ semverify next-release [--build=METADATA] [--dryrun]
194
+
195
+ # Command to display the current gem version
196
+ semverify current
197
+
198
+ # Display the gem version file
199
+ semverify file
200
+
201
+ # Validate that a version conforms to SemVer 2.0.0
202
+ semverify validate VERSION
203
+
204
+ # Get more detailed help for each command listed above
205
+ semverify help [COMMAND]
206
+ ```
175
207
  email:
176
208
  - jcouball@yahoo.com
177
209
  executables:
@@ -211,7 +243,8 @@ metadata:
211
243
  allowed_push_host: https://rubygems.org
212
244
  homepage_uri: http://github.com/main-branch/semverify
213
245
  source_code_uri: http://github.com/main-branch/semverify
214
- changelog_uri: https://rubydoc.info/gems/semverify/file/CHANGELOG.md
246
+ changelog_uri: https://rubydoc.info/gems/semverify/0.3.2/file/CHANGELOG.md
247
+ documentation_uri: https://rubydoc.info/gems/semverify/0.3.2
215
248
  rubygems_mfa_required: 'true'
216
249
  post_install_message:
217
250
  rdoc_options: []
@@ -228,8 +261,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
228
261
  - !ruby/object:Gem::Version
229
262
  version: '0'
230
263
  requirements: []
231
- rubygems_version: 3.4.1
264
+ rubygems_version: 3.5.3
232
265
  signing_key:
233
266
  specification_version: 4
234
- summary: A Gem to parse and compare semver versions AND bump versions for Ruby Gems
267
+ summary: A Gem to parse and compare SemVer versions AND increment versions for Ruby
268
+ Gems
235
269
  test_files: []