version_gem 1.1.1 → 1.1.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: 617f64c21f615e873f17b3774d4cc1e156d10f276c670f7f84308b2fd0853d75
4
- data.tar.gz: '082c40a241be990945f0f4c9939419b5aa49c632bc1ff77e2ab9459736855519'
3
+ metadata.gz: f2a6a1430cecd3c606bb156d42509955cc88b81afc05c33709bd1c482d35a352
4
+ data.tar.gz: f831c27f2fac9f8265dbe62dd8a223baafb1272e5ebe5e55bde7cb133e4196b0
5
5
  SHA512:
6
- metadata.gz: 396d61f301aac49502dcef070dcbca71343b9e1532062e8b5c90b2dfbb1d2bd63d714ea8261c76bcbb2048c49de2810742cfba8235b048b7c958dc567f57da66
7
- data.tar.gz: 2f8a9fabf0e1388528fc25ee8e6372c9347413acb3ad31726a831b768c49df2da5f493de4f290039d4afb4248855e1a963967abd835151271db11f3193124df0
6
+ metadata.gz: '07860ba32ebcbaa03662bcdfbef3cb11e77b46d7d9b9bc6fc295bc24b304edcc9ec635de631fd4d7e018cd6d4dc9ddc7b56af9316453a4e0968f4473dec1be5f'
7
+ data.tar.gz: f4956055f1366e0e882610fe1e1abbc841ed0fee4c5b62e262330073256bba627f6634a542aa4d55c5e7dd74b2803693e2590f3ff1e156bb880cafdc8f7b82cc
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -10,6 +10,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
10
10
  ### Fixed
11
11
  ### Removed
12
12
 
13
+ ## [1.1.2] - 2023-03-17 ([tag][1.1.2t])
14
+ ### Added
15
+ - `VersionGem::Ruby` to help library CI integration against many different versions of Ruby (@pboling)
16
+ - Experimental, optional, require (not loaded by default, which is why this can be in a patch)
17
+ - Spec coverage is now 100%, lines and branches, including the fabled `version.rb` (@pboling)
18
+ - Full RBS Signatures (@pboling)
19
+
13
20
  ## [1.1.1] - 2022-09-19 ([tag][1.1.1t])
14
21
  ### Added
15
22
  - Alternatives section to README.md (@pboling)
@@ -42,7 +49,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
42
49
  ### Added
43
50
  - Initial release, with basic version parsing API (@pboling)
44
51
 
45
- [Unreleased]: https://gitlab.com/oauth-xx/version_gem/-/compare/v1.1.1...HEAD
52
+ [Unreleased]: https://gitlab.com/oauth-xx/version_gem/-/compare/v1.1.2...HEAD
53
+ [1.1.2]: https://gitlab.com/oauth-xx/version_gem/-/compare/v1.1.1...v1.1.2
54
+ [1.1.2t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.1.2
46
55
  [1.1.1]: https://gitlab.com/oauth-xx/version_gem/-/compare/v1.1.0...v1.1.1
47
56
  [1.1.1t]: https://gitlab.com/oauth-xx/oauth2/-/tags/v1.1.1
48
57
  [1.1.0]: https://gitlab.com/oauth-xx/version_gem/-/compare/v1.0.2...v1.1.0
data/CONTRIBUTING.md CHANGED
@@ -1,25 +1,40 @@
1
1
  ## Contributing
2
2
 
3
- Bug reports and pull requests are welcome on GitHub at [https://github.com/pboling/version_gem][source]
3
+ Bug reports and pull requests are welcome on GitLab at [https://gitlab.com/oauth-xx/version_gem][🚎src-main]
4
4
  . This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to
5
5
  the [code of conduct][conduct].
6
6
 
7
- To submit a patch, please fork the project and create a patch with tests. Once you're happy with it send a pull request!
7
+ To submit a patch, please fork the project and create a patch with
8
+ tests. Once you're happy with it send a pull request and post a message to the
9
+ [google group][⛳mail-list] or on the [gitter chat][🏘chat].
8
10
 
9
- ## Contributors
10
-
11
- [![Contributors](https://contrib.rocks/image?repo=pboling/version_gem)][contributors]
11
+ ## Release
12
12
 
13
- Made with [contributors-img][contrib-rocks].
13
+ To release a new version:
14
14
 
15
- [comment]: <> (Following links are used by README, CONTRIBUTING)
15
+ 1. Run `bin/setup && bin/rake` as a tests, coverage, & linting sanity check.
16
+ 2. update the version number in `version.rb`
17
+ 3. run `bundle exec rake build:checksum`
18
+ 4. move the built gem to project root
19
+ 5. run `bin/checksum` to create the missing SHA256 checksum
20
+ 6. move the built gem back to `pkg/`
21
+ 7. commit the changes
22
+ 8. run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org][rubygems].
16
23
 
17
- [conduct]: https://github.com/pboling/version_gem/blob/main/CODE_OF_CONDUCT.md
24
+ NOTE: You will need to have a public key in `certs/`, and list your cert in the
25
+ `gemspec`, in order to sign the new release.
26
+ See: [RubyGems Security Guide][rubygems-security-guide]
18
27
 
19
- [contrib-rocks]: https://contrib.rocks
28
+ ## Contributors
20
29
 
21
- [contributors]: https://github.com/pboling/version_gem/graphs/contributors
30
+ See: [https://gitlab.com/oauth-xx/version_gem/-/graphs/main][🚎contributors]
22
31
 
23
- [comment]: <> (Following links are used by README, CONTRIBUTING, Homepage)
32
+ [comment]: <> (Following links are used by README, CONTRIBUTING)
24
33
 
25
- [source]: https://github.com/pboling/version_gem
34
+ [conduct]: https://gitlab.com/oauth-xx/version_gem/-/blob/main/CODE_OF_CONDUCT.md
35
+ [🚎contributors]: https://gitlab.com/oauth-xx/version_gem/-/graphs/main
36
+ [⛳mail-list]: http://groups.google.com/group/oauth-ruby
37
+ [🚎src-main]: https://gitlab.com/oauth-xx/version_gem
38
+ [🏘chat]: https://gitter.im/oauth-xx/version_gem
39
+ [rubygems-security-guide]: https://guides.rubygems.org/security/#building-gems
40
+ [rubygems]: https://rubygems.org
data/LICENSE.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2022 Peter Boling
3
+ Copyright (c) 2022 - 2023 Peter Boling
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -8,10 +8,10 @@ This gem has a very niche purpose, which is:
8
8
  2. while not interfering with `gemspec` parsing where the `VERSION` string is traditionally used.
9
9
 
10
10
  If this isn't **precisely** your use case you may be better off looking at
11
- [`Versionaire`](https://www.alchemists.io/projects/versionaire), a wonderful, performant, well-maintained,
12
- gem from the Alchemists.
11
+ [`versionaire`](https://www.alchemists.io/projects/versionaire), a wonderful, performant, well-maintained,
12
+ gem from the Alchemists, or [`version_sorter`](https://rubygems.org/gems/version_sorter) from GitHub.
13
13
 
14
- For more discussion about this [see issue #2](https://github.com/pboling/version_gem/issues/2)
14
+ For more discussion about this [see issue #2](https://gitlab.com/oauth-xx/version_gem/-/issues/2)
15
15
 
16
16
  ## Still here?
17
17
 
@@ -27,7 +27,7 @@ MyLib::Version.to_a # => [1, 2, 3, "rc3"]
27
27
  MyLib::Version.to_h # => { major: 1, minor: 2, patch: 3, pre: "rc3" }
28
28
  ```
29
29
 
30
- This library was extracted from the gem [`oauth2`](https://github.com/oauth-xx/oauth2).
30
+ This library was extracted from the gem [`oauth2`](https://gitlab.com/oauth-xx/oauth2).
31
31
 
32
32
  This gem has no runtime dependencies.
33
33
 
@@ -58,14 +58,14 @@ appended indicators:
58
58
  ♻️ - URL needs to be updated from SAAS integration. Find / Replace is insufficient.
59
59
  -->
60
60
 
61
- | | Project | bundle add version_gem |
61
+ | | Project | bundle add version_gem |
62
62
  |:----|--------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
63
- | 1️⃣ | name, license, docs, standards | [![RubyGems.org][⛳️name-img]][⛳️gem] [![License: MIT][🖇src-license-img]][🖇src-license] [![RubyDoc.info][🚎yard-img]][🚎yard] [![SemVer 2.0.0][🧮semver-img]][semver] [![Keep-A-Changelog 1.0.0][📗keep-changelog-img]][📗keep-changelog] |
64
- | 2️⃣ | version & activity | [![Gem Version][⛳️version-img]][⛳️gem] [![Total Downloads][🖇DL-total-img]][⛳️gem] [![Download Rank][🏘DL-rank-img]][⛳️gem] [![Source Code][🚎src-home-img]][🚎src-home] [![Open PRs][🖐prs-o-img]][🖐prs-o] [![Closed PRs][🧮prs-c-img]][🧮prs-c] <!--[![Next Version][📗next-img]][📗next]--> |
63
+ | 1️⃣ | name, license, docs, standards | [![RubyGems.org][⛳️name-img]][⛳️gem] [![License: MIT][🖇src-license-img]][🖇src-license] [![RubyDoc.info][🚎yard-img]][🚎yard] [![SemVer 2.0.0][🧮semver-img]][🧮semver] [![Keep-A-Changelog 1.0.0][📗keep-changelog-img]][📗keep-changelog] |
64
+ | 2️⃣ | version & activity | [![Gem Version][⛳️version-img]][⛳️gem] [![Total Downloads][🖇DL-total-img]][⛳️gem] [![Download Rank][🏘DL-rank-img]][⛳️gem] [![Source Code][🚎src-main-img]][🚎src-main] [![Open PRs][🖐prs-o-img]][🖐prs-o] [![Closed PRs][🧮prs-c-img]][🧮prs-c] <!--[![Next Version][📗next-img]][📗next]--> |
65
65
  | 3️⃣ | maintanence & linting | [![Maintainability][⛳cclim-maint-img♻️]][⛳cclim-maint] [![Helpers][🖇triage-help-img]][🖇triage-help] [![Depfu][🏘depfu-img♻️]][🏘depfu♻️] [![Contributors][🚎contributors-img]][🚎contributors] [![Style][🖐style-wf-img]][🖐style-wf] [![Kloc Roll][🧮kloc-img]][🧮kloc] |
66
- | 4️⃣ | testing | [![Open Issues][⛳iss-o-img]][⛳iss-o] [![Closed Issues][🖇iss-c-img]][🖇iss-c] [![Supported][🏘sup-wf-img]][🏘sup-wf] [![Heads][🚎heads-wf-img]][🚎heads-wf] [![Unofficial Support][🖐uns-wf-img]][🖐uns-wf] <!--[![MacOS][🧮mac-wf-img]][🧮mac-wf] [![Windows][📗win-wf-img]][📗win-wf]--> |
66
+ | 4️⃣ | testing | [![Supported][🏘sup-wf-img]][🏘sup-wf] [![Heads][🚎heads-wf-img]][🚎heads-wf] [![Unofficial Support][🖐uns-wf-img]][🖐uns-wf] <!--[![MacOS][🧮mac-wf-img]][🧮mac-wf] [![Windows][📗win-wf-img]][📗win-wf]--> |
67
67
  | 5️⃣ | coverage & security | [![CodeClimate][⛳cclim-cov-img♻️]][⛳cclim-cov] [![CodeCov][🖇codecov-img♻️]][🖇codecov] [![Coveralls][🏘coveralls-img]][🏘coveralls] [![Security Policy][🚎sec-pol-img]][🚎sec-pol] [![CodeQL][🖐codeQL-img]][🖐codeQL] [![Code Coverage][🧮cov-wf-img]][🧮cov-wf] |
68
- | 6️⃣ | resources | [![Discussion][⛳gh-discussions-img]][⛳gh-discussions] [![Get help on Codementor][🖇codementor-img]][🖇codementor] [![Chat][🏘chat-img]][🏘chat] [![Blog][🚎blog-img]][🚎blog] [![Wiki][🖐wiki-img]][🖐wiki] |
68
+ | 6️⃣ | resources | [![Get help on Codementor][🖇codementor-img]][🖇codementor] [![Chat][🏘chat-img]][🏘chat] [![Blog][🚎blog-img]][🚎blog] [![Wiki][🖐wiki-img]][🖐wiki] |
69
69
  | 7️⃣ | spread 💖 | [![Liberapay Patrons][⛳liberapay-img]][⛳liberapay] [![Sponsor Me][🖇sponsor-img]][🖇sponsor] [![Tweet @ Peter][🏘tweet-img]][🏘tweet] [🌏][aboutme] [👼][angelme] [💻][coderme] |
70
70
 
71
71
  <!--
@@ -77,8 +77,9 @@ The link tokens in the following sections should be kept ordered by the row and
77
77
  [⛳️name-img]: https://img.shields.io/badge/name-version_gem-brightgreen.svg?style=flat
78
78
  [🖇src-license]: https://opensource.org/licenses/MIT
79
79
  [🖇src-license-img]: https://img.shields.io/badge/License-MIT-green.svg
80
- [🚎yard]: https://www.rubydoc.info/github/pboling/version_gem
80
+ [🚎yard]: https://www.rubydoc.info/gems/version_gem
81
81
  [🚎yard-img]: https://img.shields.io/badge/documentation-rubydoc-brightgreen.svg?style=flat
82
+ [🧮semver]: http://semver.org/
82
83
  [🧮semver-img]: https://img.shields.io/badge/semver-2.0.0-FFDD67.svg?style=flat
83
84
  [📗keep-changelog]: https://keepachangelog.com/en/1.0.0/
84
85
  [📗keep-changelog-img]: https://img.shields.io/badge/keep--a--changelog-1.0.0-FFDD67.svg?style=flat
@@ -87,14 +88,12 @@ The link tokens in the following sections should be kept ordered by the row and
87
88
  [⛳️version-img]: http://img.shields.io/gem/v/version_gem.svg
88
89
  [🖇DL-total-img]: https://img.shields.io/gem/dt/version_gem.svg
89
90
  [🏘DL-rank-img]: https://img.shields.io/gem/rt/version_gem.svg
90
- [🚎src-home]: https://github.com/pboling/version_gem
91
- [🚎src-home-img]: https://img.shields.io/badge/source-github-brightgreen.svg?style=flat
92
- [🖐prs-o]: https://github.com/pboling/version_gem/pulls
91
+ [🚎src-main]: https://gitlab.com/oauth-xx/version_gem
92
+ [🚎src-main-img]: https://img.shields.io/badge/source-gitlab-brightgreen.svg?style=flat
93
+ [🖐prs-o]: https://gitlab.com/oauth-xx/version_gem/-/merge_requests
93
94
  [🖐prs-o-img]: https://img.shields.io/github/issues-pr/pboling/version_gem
94
95
  [🧮prs-c]: https://github.com/pboling/version_gem/pulls?q=is%3Apr+is%3Aclosed
95
96
  [🧮prs-c-img]: https://img.shields.io/github/issues-pr-closed/pboling/version_gem
96
- [📗next]: https://github.com/pboling/version_gem/milestone/1
97
- [📗next-img]: https://img.shields.io/github/milestones/progress/pboling/version_gem/1?label=Next%20Version
98
97
 
99
98
  <!-- 3️⃣ maintanence & linting -->
100
99
  [⛳cclim-maint]: https://codeclimate.com/github/pboling/version_gem/maintainability
@@ -103,28 +102,24 @@ The link tokens in the following sections should be kept ordered by the row and
103
102
  [🖇triage-help-img]: https://www.codetriage.com/pboling/version_gem/badges/users.svg
104
103
  [🏘depfu♻️]: https://depfu.com/github/pboling/version_gem?project_id=35803
105
104
  [🏘depfu-img♻️]: https://badges.depfu.com/badges/5d8943de6cfdf1ee048ad6d907f3e35b/count.svg
106
- [🚎contributors]: https://github.com/pboling/version_gem/graphs/contributors
105
+ [🚎contributors]: https://gitlab.com/oauth-xx/version_gem/-/graphs/main
107
106
  [🚎contributors-img]: https://img.shields.io/github/contributors-anon/pboling/version_gem
108
- [🖐style-wf]: https://github.com/pboling/version_gem/actions/workflows/style.yml
109
- [🖐style-wf-img]: https://github.com/pboling/version_gem/actions/workflows/style.yml/badge.svg
107
+ [🖐style-wf]: https://github.com/oauth-xx/version_gem/actions/workflows/style.yml
108
+ [🖐style-wf-img]: https://github.com/oauth-xx/version_gem/actions/workflows/style.yml/badge.svg
110
109
  [🧮kloc]: https://www.youtube.com/watch?v=dQw4w9WgXcQ
111
110
  [🧮kloc-img]: https://img.shields.io/tokei/lines/github.com/pboling/version_gem
112
111
 
113
112
  <!-- 4️⃣ testing -->
114
- [⛳iss-o]: https://github.com/pboling/version_gem/issues
115
- [⛳iss-o-img]: https://img.shields.io/github/issues-raw/pboling/version_gem
116
- [🖇iss-c]: https://github.com/pboling/version_gem/issues?q=is%3Aissue+is%3Aclosed
117
- [🖇iss-c-img]: https://img.shields.io/github/issues-closed-raw/pboling/version_gem
118
- [🏘sup-wf]: https://github.com/pboling/version_gem/actions/workflows/supported.yml
119
- [🏘sup-wf-img]: https://github.com/pboling/version_gem/actions/workflows/supported.yml/badge.svg
120
- [🚎heads-wf]: https://github.com/pboling/version_gem/actions/workflows/heads.yml
121
- [🚎heads-wf-img]: https://github.com/pboling/version_gem/actions/workflows/heads.yml/badge.svg
122
- [🖐uns-wf]: https://github.com/pboling/version_gem/actions/workflows/unsupported.yml
123
- [🖐uns-wf-img]: https://github.com/pboling/version_gem/actions/workflows/unsupported.yml/badge.svg
124
- [🧮mac-wf]: https://github.com/pboling/version_gem/actions/workflows/macos.yml
125
- [🧮mac-wf-img]: https://github.com/pboling/version_gem/actions/workflows/macos.yml/badge.svg
126
- [📗win-wf]: https://github.com/pboling/version_gem/actions/workflows/windows.yml
127
- [📗win-wf-img]: https://github.com/pboling/version_gem/actions/workflows/windows.yml/badge.svg
113
+ [🏘sup-wf]: https://github.com/oauth-xx/version_gem/actions/workflows/supported.yml
114
+ [🏘sup-wf-img]: https://github.com/oauth-xx/version_gem/actions/workflows/supported.yml/badge.svg
115
+ [🚎heads-wf]: https://github.com/oauth-xx/version_gem/actions/workflows/heads.yml
116
+ [🚎heads-wf-img]: https://github.com/oauth-xx/version_gem/actions/workflows/heads.yml/badge.svg
117
+ [🖐uns-wf]: https://github.com/oauth-xx/version_gem/actions/workflows/unsupported.yml
118
+ [🖐uns-wf-img]: https://github.com/oauth-xx/version_gem/actions/workflows/unsupported.yml/badge.svg
119
+ [🧮mac-wf]: https://github.com/oauth-xx/version_gem/actions/workflows/macos.yml
120
+ [🧮mac-wf-img]: https://github.com/oauth-xx/version_gem/actions/workflows/macos.yml/badge.svg
121
+ [📗win-wf]: https://github.com/oauth-xx/version_gem/actions/workflows/windows.yml
122
+ [📗win-wf-img]: https://github.com/oauth-xx/version_gem/actions/workflows/windows.yml/badge.svg
128
123
 
129
124
  <!-- 5️⃣ coverage & security -->
130
125
  [⛳cclim-cov]: https://codeclimate.com/github/pboling/version_gem/test_coverage
@@ -133,23 +128,21 @@ The link tokens in the following sections should be kept ordered by the row and
133
128
  [🖇codecov]: https://codecov.io/gh/pboling/version_gem
134
129
  [🏘coveralls]: https://coveralls.io/github/pboling/version_gem?branch=main
135
130
  [🏘coveralls-img]: https://coveralls.io/repos/github/pboling/version_gem/badge.svg?branch=main
136
- [🚎sec-pol]: https://github.com/pboling/version_gem/blob/main/SECURITY.md
131
+ [🚎sec-pol]: https://gitlab.com/oauth-xx/version_gem/-/blob/main/SECURITY.md
137
132
  [🚎sec-pol-img]: https://img.shields.io/badge/security-policy-brightgreen.svg?style=flat
138
133
  [🖐codeQL]: https://github.com/pboling/version_gem/security/code-scanning
139
- [🖐codeQL-img]: https://github.com/pboling/version_gem/actions/workflows/codeql-analysis.yml/badge.svg
140
- [🧮cov-wf]: https://github.com/pboling/version_gem/actions/workflows/coverage.yml
141
- [🧮cov-wf-img]: https://github.com/pboling/version_gem/actions/workflows/coverage.yml/badge.svg
134
+ [🖐codeQL-img]: https://github.com/oauth-xx/version_gem/actions/workflows/codeql-analysis.yml/badge.svg
135
+ [🧮cov-wf]: https://github.com/oauth-xx/version_gem/actions/workflows/coverage.yml
136
+ [🧮cov-wf-img]: https://github.com/oauth-xx/version_gem/actions/workflows/coverage.yml/badge.svg
142
137
 
143
138
  <!-- 6️⃣ resources -->
144
- [⛳gh-discussions]: https://github.com/pboling/version_gem/discussions
145
- [⛳gh-discussions-img]: https://img.shields.io/github/discussions/pboling/version_gem
146
139
  [🖇codementor]: https://www.codementor.io/peterboling?utm_source=github&utm_medium=button&utm_term=peterboling&utm_campaign=github
147
140
  [🖇codementor-img]: https://cdn.codementor.io/badges/get_help_github.svg
148
- [🏘chat]: https://gitter.im/pboling/version_gem
149
- [🏘chat-img]: https://img.shields.io/gitter/room/pboling/version_gem.svg
141
+ [🏘chat]: https://gitter.im/oauth-xx/version_gem
142
+ [🏘chat-img]: https://img.shields.io/gitter/room/oauth-xx/version_gem.svg
150
143
  [🚎blog]: http://www.railsbling.com/tags/version_gem/
151
144
  [🚎blog-img]: https://img.shields.io/badge/blog-railsbling-brightgreen.svg?style=flat
152
- [🖐wiki]: https://github.com/pboling/version_gem/wiki
145
+ [🖐wiki]: https://gitlab.com/oauth-xx/version_gem/-/wikis/home
153
146
  [🖐wiki-img]: https://img.shields.io/badge/wiki-examples-brightgreen.svg?style=flat
154
147
 
155
148
  <!-- 7️⃣ spread 💖 -->
@@ -228,6 +221,32 @@ MyLib::Version.to_h # => { major: 0, minor: 1, patch: 0, pre: "" }
228
221
 
229
222
  Your `version.rb` file now abides the Ruby convention of directory / path matching the namespace / class!
230
223
 
224
+ #### Query Ruby Version (as of version 1.2.0)
225
+
226
+ In Continuous Integration environments for libraries that run against many versions of Ruby,
227
+ I often need to configure things discretely per Ruby version, and doing so forced me to repeat
228
+ a significant amount of boilerplate code across each project.
229
+
230
+ Thus `VersionGem::Ruby` was born. It has the two optimized methods I always need:
231
+
232
+ ```ruby
233
+ engine = 'ruby'
234
+ version = "2.7.7"
235
+ gte_minimum_version?(version, engine) # Is the current version of Ruby greater than or equal to some minimum?
236
+
237
+ major = 3
238
+ minor = 2
239
+ actual_minor_version?(major, minor, engine) # Is the current version of Ruby precisely a specific minor version of Ruby?
240
+ ```
241
+
242
+ `Version::Ruby` is *not loaded* by default. If you want to use it, you must require it as:
243
+ ```ruby
244
+ require "version_gem/ruby"
245
+ ```
246
+
247
+ Normally I do this in my `spec/spec_helper.rb`, and/or `.simplecov` files.
248
+ Occasionally in my `Rakefile`.
249
+
231
250
  ### Caveat
232
251
 
233
252
  This design keeps your `version.rb` file compatible with the way `gemspec` files use them.
@@ -277,7 +296,7 @@ See [CONTRIBUTING.md][contributing]
277
296
 
278
297
  ## Contributors
279
298
 
280
- [![Contributors](https://contrib.rocks/image?repo=pboling/version_gem)]("https://github.com/pboling/version_gem/graphs/contributors")
299
+ [![Contributors](https://contrib.rocks/image?repo=pboling/version_gem)]("https://gitlab.com/oauth-xx/version_gem/-/graphs/main")
281
300
 
282
301
  Made with [contributors-img](https://contrib.rocks).
283
302
 
@@ -287,15 +306,15 @@ The gem is available as open source under the terms of
287
306
  the [MIT License][license] [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)][license-ref].
288
307
  See [LICENSE][license] for the official [Copyright Notice][copyright-notice-explainer].
289
308
 
290
- * Copyright (c) 2022 [Peter H. Boling][peterboling] of [Rails Bling][railsbling]
309
+ * Copyright (c) 2022 - 2023 [Peter H. Boling][peterboling] of [Rails Bling][railsbling]
291
310
 
292
311
  ## Code of Conduct
293
312
 
294
- Everyone interacting in the VersionGem project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/pboling/version_gem/blob/main/CODE_OF_CONDUCT.md).
313
+ Everyone interacting in the VersionGem project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://gitlab.com/oauth-xx/version_gem/-/blob/main/CODE_OF_CONDUCT.md).
295
314
 
296
315
  ## Versioning
297
316
 
298
- This library aims to adhere to [Semantic Versioning 2.0.0][semver]. Violations of this scheme should be reported as
317
+ This library aims to adhere to [Semantic Versioning 2.0.0][🧮semver]. Violations of this scheme should be reported as
299
318
  bugs. Specifically, if a minor or patch version is released that breaks backward compatibility, a new version should be
300
319
  immediately released that restores compatibility. Breaking changes to the public API will only be introduced with new
301
320
  major versions.
@@ -311,24 +330,20 @@ spec.add_dependency "version_gem", "~> 1.1"
311
330
 
312
331
  ## Security
313
332
 
314
- See [SECURITY.md](https://github.com/pboling/version_gem/blob/main/SECURITY.md).
333
+ See [SECURITY.md](https://gitlab.com/oauth-xx/version_gem/-/blob/main/SECURITY.md).
315
334
 
316
335
  [copyright-notice-explainer]: https://opensource.stackexchange.com/questions/5778/why-do-licenses-such-as-the-mit-license-specify-a-single-year
317
336
 
318
- [gh_discussions]: https://github.com/pboling/version_gem/discussions
319
-
320
- [conduct]: https://github.com/pboling/version_gem/blob/main/CODE_OF_CONDUCT.md
337
+ [conduct]: https://gitlab.com/oauth-xx/version_gem/-/blob/main/CODE_OF_CONDUCT.md
321
338
 
322
- [contributing]: https://github.com/pboling/version_gem/blob/main/CONTRIBUTING.md
339
+ [contributing]: https://gitlab.com/oauth-xx/version_gem/-/blob/main/CONTRIBUTING.md
323
340
 
324
- [security]: https://github.com/pboling/version_gem/blob/main/SECURITY.md
341
+ [security]: https://gitlab.com/oauth-xx/version_gem/-/blob/main/SECURITY.md
325
342
 
326
- [license]: https://github.com/pboling/version_gem/blob/main/LICENSE.txt
343
+ [license]: https://gitlab.com/oauth-xx/version_gem/-/blob/main/LICENSE.txt
327
344
 
328
345
  [license-ref]: https://opensource.org/licenses/MIT
329
346
 
330
- [semver]: http://semver.org/
331
-
332
347
  [pvc]: http://guides.rubygems.org/patterns/#pessimistic-version-constraint
333
348
 
334
349
  [aboutme]: https://about.me/peter.boling
@@ -341,15 +356,11 @@ See [SECURITY.md](https://github.com/pboling/version_gem/blob/main/SECURITY.md).
341
356
 
342
357
  [tweetme]: http://twitter.com/galtzo
343
358
 
344
- [politicme]: https://nationalprogressiveparty.org
345
-
346
- [documentation]: https://rubydoc.info/github/pboling/version_gem/main
359
+ [source]: https://gitlab.com/oauth-xx/version_gem/
347
360
 
348
- [source]: https://github.com/pboling/version_gem/
361
+ [actions]: https://github.com/oauth-xx/version_gem/actions
349
362
 
350
- [actions]: https://github.com/pboling/version_gem/actions
351
-
352
- [issues]: https://github.com/pboling/version_gem/issues
363
+ [issues]: https://gitlab.com/oauth-xx/version_gem/-/issues
353
364
 
354
365
  [climate_maintainability]: https://codeclimate.com/github/pboling/version_gem/maintainability
355
366
 
@@ -363,8 +374,6 @@ See [SECURITY.md](https://github.com/pboling/version_gem/blob/main/SECURITY.md).
363
374
 
364
375
  [rubygems]: https://rubygems.org/gems/version_gem
365
376
 
366
- [chat]: https://gitter.im/pboling/version_gem?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
367
-
368
377
  [maintenancee_policy]: https://guides.rubyonrails.org/maintenance_policy.html#security-issues
369
378
 
370
379
  [liberapay_donate]: https://liberapay.com/pboling/donate
@@ -0,0 +1,18 @@
1
+ module VersionGem
2
+ # Helpers for library CI integration against many different versions of Ruby
3
+ module Ruby
4
+ RUBY_VER = ::Gem::Version.new(RUBY_VERSION)
5
+
6
+ def gte_minimum_version?(version, engine = 'ruby')
7
+ RUBY_VER >= ::Gem::Version.new(version) && ::RUBY_ENGINE == engine
8
+ end
9
+ module_function :gte_minimum_version?
10
+
11
+ def actual_minor_version?(major, minor, engine = 'ruby')
12
+ major.to_i == RUBY_VER.segments[0] &&
13
+ minor.to_i == RUBY_VER.segments[1] &&
14
+ ::RUBY_ENGINE == engine
15
+ end
16
+ module_function :actual_minor_version?
17
+ end
18
+ end
@@ -2,7 +2,7 @@
2
2
 
3
3
  module VersionGem
4
4
  module Version
5
- VERSION = '1.1.1'.freeze
5
+ VERSION = '1.1.2'.freeze
6
6
  # This would work in this gem, but not in external libraries,
7
7
  # because version files are loaded in Gemspecs before bundler
8
8
  # has a chance to load dependencies.
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: version_gem
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Peter Boling
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain:
11
11
  - |
@@ -36,7 +36,7 @@ cert_chain:
36
36
  gwGrEXGQGDZ0NIgBcmvMOqlXjkGQwQvugKycJ024z89+fz2332vdZIKTrSxJrXGk
37
37
  4/bR9A==
38
38
  -----END CERTIFICATE-----
39
- date: 2022-09-19 00:00:00.000000000 Z
39
+ date: 2023-03-17 00:00:00.000000000 Z
40
40
  dependencies:
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rspec-block_is_expected
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: rake
57
71
  requirement: !ruby/object:Gem::Requirement
@@ -147,21 +161,22 @@ files:
147
161
  - lib/version_gem/basic.rb
148
162
  - lib/version_gem/error.rb
149
163
  - lib/version_gem/rspec.rb
164
+ - lib/version_gem/ruby.rb
150
165
  - lib/version_gem/version.rb
151
166
  homepage: https://gitlab.com/oauth-xx/version_gem
152
167
  licenses:
153
168
  - MIT
154
169
  metadata:
155
170
  homepage_uri: https://gitlab.com/oauth-xx/version_gem
156
- source_code_uri: https://gitlab.com/oauth-xx/version_gem/-/tree/v1.1.1
157
- changelog_uri: https://gitlab.com/oauth-xx/version_gem/-/blob/v1.1.1/CHANGELOG.md
171
+ source_code_uri: https://gitlab.com/oauth-xx/version_gem/-/tree/v1.1.2
172
+ changelog_uri: https://gitlab.com/oauth-xx/version_gem/-/blob/v1.1.2/CHANGELOG.md
158
173
  bug_tracker_uri: https://gitlab.com/oauth-xx/version_gem/-/issues
159
- documentation_uri: https://www.rubydoc.info/gems/version_gem/1.1.1
174
+ documentation_uri: https://www.rubydoc.info/gems/version_gem/1.1.2
160
175
  wiki_uri: https://gitlab.com/oauth-xx/version_gem/-/wiki
161
176
  mailing_list_uri: https://groups.google.com/g/oauth-ruby
162
177
  funding_uri: https://liberapay.com/pboling
163
178
  rubygems_mfa_required: 'true'
164
- post_install_message:
179
+ post_install_message:
165
180
  rdoc_options: []
166
181
  require_paths:
167
182
  - lib
@@ -176,8 +191,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
176
191
  - !ruby/object:Gem::Version
177
192
  version: '0'
178
193
  requirements: []
179
- rubygems_version: 3.3.20
180
- signing_key:
194
+ rubygems_version: 3.4.8
195
+ signing_key:
181
196
  specification_version: 4
182
197
  summary: Enhance your VERSION! Sugar for Version modules.
183
198
  test_files: []
metadata.gz.sig CHANGED
Binary file