makenew-rbgem 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: a0fb3e36ade9a0b62e908ae40b56af6d731b3bce813f575db9e3c8f950ee73db
4
+ data.tar.gz: aee644785e9d36f95b88a2decd106c582f0c6e74c1cb0a47f60923e98741c511
5
+ SHA512:
6
+ metadata.gz: 0cb64d4c3b62dd563eafda26be9ed5a132b4c3317453f36c1140a34eae363eafb35e892a6dc8c3b7063c33086085080172a4d8d9f72523748714bfa982dc18b0
7
+ data.tar.gz: 9b603083d2787498c41715d82667099f9d8e34e1f934671db829e2777048481b551b0d7f630ed133d594ece498138efabf06f0dcb3412dda06dca06caf67c74c
data/CHANGELOG.md ADDED
@@ -0,0 +1,8 @@
1
+ # Change Log
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/)
6
+ and this project adheres to [Semantic Versioning](https://semver.org/).
7
+
8
+ ## Unreleased
data/Gemfile ADDED
@@ -0,0 +1,6 @@
1
+ # frozen_string_literal: true
2
+
3
+ source "https://rubygems.org"
4
+
5
+ # Specify your gem's dependencies in makenew-rbgem.gemspec.
6
+ gemspec
data/Gemfile.lock ADDED
@@ -0,0 +1,90 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ makenew-rbgem (0.0.2)
5
+
6
+ GEM
7
+ remote: https://rubygems.org/
8
+ specs:
9
+ ansi (1.5.0)
10
+ ast (2.4.2)
11
+ diff-lcs (1.5.0)
12
+ docile (1.4.0)
13
+ gem-release (2.2.2)
14
+ json (2.6.2)
15
+ multi_json (1.15.0)
16
+ parallel (1.22.1)
17
+ parse_gemspec (1.0.0)
18
+ parse_gemspec-cli (1.0.0)
19
+ multi_json
20
+ parse_gemspec
21
+ thor
22
+ parser (3.1.2.1)
23
+ ast (~> 2.4.1)
24
+ rainbow (3.1.1)
25
+ rake (13.0.6)
26
+ regexp_parser (2.6.0)
27
+ rexml (3.2.5)
28
+ rspec (3.11.0)
29
+ rspec-core (~> 3.11.0)
30
+ rspec-expectations (~> 3.11.0)
31
+ rspec-mocks (~> 3.11.0)
32
+ rspec-core (3.11.0)
33
+ rspec-support (~> 3.11.0)
34
+ rspec-expectations (3.11.1)
35
+ diff-lcs (>= 1.2.0, < 2.0)
36
+ rspec-support (~> 3.11.0)
37
+ rspec-mocks (3.11.1)
38
+ diff-lcs (>= 1.2.0, < 2.0)
39
+ rspec-support (~> 3.11.0)
40
+ rspec-support (3.11.1)
41
+ rubocop (1.35.1)
42
+ json (~> 2.3)
43
+ parallel (~> 1.10)
44
+ parser (>= 3.1.2.1)
45
+ rainbow (>= 2.2.2, < 4.0)
46
+ regexp_parser (>= 1.8, < 3.0)
47
+ rexml (>= 3.2.5, < 4.0)
48
+ rubocop-ast (>= 1.20.1, < 2.0)
49
+ ruby-progressbar (~> 1.7)
50
+ unicode-display_width (>= 1.4.0, < 3.0)
51
+ rubocop-ast (1.21.0)
52
+ parser (>= 3.1.1.0)
53
+ rubocop-performance (1.14.3)
54
+ rubocop (>= 1.7.0, < 2.0)
55
+ rubocop-ast (>= 0.4.0)
56
+ ruby-progressbar (1.11.0)
57
+ simplecov (0.21.2)
58
+ docile (~> 1.1)
59
+ simplecov-html (~> 0.11)
60
+ simplecov_json_formatter (~> 0.1)
61
+ simplecov-console (0.9.1)
62
+ ansi
63
+ simplecov
64
+ terminal-table
65
+ simplecov-html (0.12.3)
66
+ simplecov_json_formatter (0.1.4)
67
+ standard (1.16.1)
68
+ rubocop (= 1.35.1)
69
+ rubocop-performance (= 1.14.3)
70
+ terminal-table (3.0.2)
71
+ unicode-display_width (>= 1.1.1, < 3)
72
+ thor (1.2.1)
73
+ unicode-display_width (2.3.0)
74
+
75
+ PLATFORMS
76
+ x86_64-linux
77
+
78
+ DEPENDENCIES
79
+ bundler (~> 2.0)
80
+ gem-release (~> 2.2)
81
+ makenew-rbgem!
82
+ parse_gemspec-cli (~> 1.0)
83
+ rake (~> 13.0)
84
+ rspec (~> 3.0)
85
+ simplecov (~> 0.21)
86
+ simplecov-console (~> 0.9)
87
+ standard (~> 1.3)
88
+
89
+ BUNDLED WITH
90
+ 2.3.23
data/LICENSE.txt ADDED
@@ -0,0 +1,20 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2022 Evan Sosenko
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
6
+ this software and associated documentation files (the "Software"), to deal in
7
+ the Software without restriction, including without limitation the rights to
8
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
9
+ the Software, and to permit persons to whom the Software is furnished to do so,
10
+ subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
17
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
18
+ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
19
+ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
20
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,230 @@
1
+ # Ruby Gem Package Skeleton
2
+
3
+ [![RubyGems.org](https://img.shields.io/gem/v/makenew-rbgem)](https://rubygems.org/gems/makenew-rbgem)
4
+ [![GitHub Actions](https://github.com/makenew/rbgem/workflows/main/badge.svg)](https://github.com/makenew/rbgem/actions)
5
+
6
+ Package skeleton for a Ruby gem.
7
+
8
+ ## Description
9
+
10
+ Bootstrap a new Ruby gem in five minutes or less.
11
+
12
+ ### Features
13
+
14
+ - [Ruby]'s [gem][RubyGems.org] package structure.
15
+ - Consistent dependency management with [Bundler].
16
+ - Release your ruby gems with ease using [gem release].
17
+ - [Standard] Ruby style guide, linter, and formatter.
18
+ - Productive and fun testing with [RSpec].
19
+ - Code coverage reporting with [SimpleCov].
20
+ - Continuous testing and gem publishing with [GitHub Actions].
21
+ - [Keep a CHANGELOG].
22
+ - Consistent coding with [EditorConfig].
23
+ - Badges from [Shields.io].
24
+
25
+ [Bundler]: https://bundler.io/
26
+ [EditorConfig]: https://editorconfig.org/
27
+ [GitHub Actions]: https://github.com/features/actions
28
+ [Keep a CHANGELOG]: https://keepachangelog.com/
29
+ [RSpec]: https://rspec.info/
30
+ [RubyGems.org]: https://rubygems.org/
31
+ [Ruby]: https://www.ruby-lang.org/
32
+ [Shields.io]: https://shields.io/
33
+ [SimpleCov]: https://github.com/simplecov-ruby/simplecov
34
+ [Standard]: https://github.com/testdouble/standard
35
+ [gem release]: https://github.com/svenfuchs/gem-release
36
+
37
+ ### Bootstrapping a new project
38
+
39
+ 1. Create an empty (**non-initialized**) repository on GitHub.
40
+ 2. Clone the master branch of this repository with
41
+ ```
42
+ $ git clone --single-branch git@github.com:makenew/rbgem.git <new-ruby-gem>
43
+ $ cd <new-ruby-gem>
44
+ ```
45
+ Optionally, reset to the latest version with
46
+ ```
47
+ $ git reset --hard <version-tag>
48
+ ```
49
+ 3. Run
50
+ ```
51
+ $ ./makenew.sh
52
+ ```
53
+ This will replace the boilerplate, delete itself,
54
+ remove the git remote, remove upstream tags,
55
+ and stage changes for commit.
56
+ 4. Create the required GitHub repository secrets.
57
+ 5. Review, commit, and push the changes to GitHub with
58
+ ```
59
+ $ git diff --cached
60
+ $ git commit -m "Replace makenew boilerplate"
61
+ $ git remote add origin git@github.com:<user>/<new-ruby-gem>.git
62
+ $ git push -u origin master
63
+ ```
64
+ 6. Ensure the GitHub action passes,
65
+ then publish the initial version of the package with
66
+ ```
67
+ $ bundle install
68
+ $ bundle exec gem bump --sign --push --version patch
69
+ $ bundle exec gem tag --sign --push
70
+ ```
71
+
72
+ ### Updating from this skeleton
73
+
74
+ If you want to pull in future updates from this skeleton,
75
+ you can fetch and merge in changes from this repository.
76
+
77
+ Add this as a new remote with
78
+
79
+ ```
80
+ $ git remote add upstream git@github.com:makenew/rbgem.git
81
+ ```
82
+
83
+ You can then fetch and merge changes with
84
+
85
+ ```
86
+ $ git fetch --no-tags upstream
87
+ $ git merge upstream/master
88
+ ```
89
+
90
+ #### Changelog for this skeleton
91
+
92
+ Note that `CHANGELOG.md` is just a template for this skeleton.
93
+ The actual changes for this project are documented in the commit history
94
+ and summarized under [Releases].
95
+
96
+ [Releases]: https://github.com/makenew/rbgem/releases
97
+
98
+ ## Installation
99
+
100
+ Add this as a dependency to your project using [Bundler] with
101
+
102
+ ```
103
+ $ bundle add makenew-rbgem
104
+ ```
105
+
106
+ [Bundler]: https://bundler.io/
107
+
108
+ ## Development and Testing
109
+
110
+ ### Quickstart
111
+
112
+ ```
113
+ $ git clone https://github.com/makenew/rbgem.git
114
+ $ cd rbgem
115
+ $ bundle install
116
+ ```
117
+
118
+ Run the command below in a separate terminal window:
119
+
120
+ ```
121
+ $ bundle exec rake
122
+ ```
123
+
124
+ Primary development tasks are defined as [rake] tasks in the `Rakefile`
125
+ and available via `rake`.
126
+ View them with
127
+
128
+ ```
129
+ $ bundle exec rake -T
130
+ ```
131
+
132
+ [rake]: https://ruby.github.io/rake/
133
+
134
+ ### Source code
135
+
136
+ The [source code] is hosted on GitHub.
137
+ Clone the project with
138
+
139
+ ```
140
+ $ git clone git@github.com:makenew/rbgem.git
141
+ ```
142
+
143
+ [source code]: https://github.com/makenew/rbgem
144
+
145
+ ### Requirements
146
+
147
+ You will need [Ruby] with [Bundler].
148
+
149
+ Be sure that all commands run under the correct Ruby version, e.g.,
150
+ if using [rbenv], install the correct version with
151
+
152
+ ```
153
+ $ rbenv install
154
+ ```
155
+
156
+ Install the development dependencies with
157
+
158
+ ```
159
+ $ bundle install
160
+ ```
161
+
162
+ [Bundler]: https://bundler.io/
163
+ [Ruby]: https://www.ruby-lang.org/
164
+ [rbenv]: https://github.com/rbenv/rbenv
165
+
166
+ ### Publishing
167
+
168
+ Use [gem release] to release a new version.
169
+
170
+ Publishing may be triggered using on the web
171
+ using a [workflow_dispatch on GitHub Actions].
172
+
173
+ [gem release]: https://github.com/svenfuchs/gem-release
174
+ [workflow_dispatch on GitHub Actions]: https://github.com/makenew/rbgem/actions?query=workflow%3Aversion
175
+
176
+ ## GitHub Actions
177
+
178
+ _GitHub Actions should already be configured: this section is for reference only._
179
+
180
+ The following repository secrets must be set on [GitHub Actions]:
181
+
182
+ - `RUBYGEMS_API_KEY`: RubyGems.org token for publishing packages.
183
+
184
+ These must be set manually.
185
+
186
+ ### Secrets for Optional GitHub Actions
187
+
188
+ The version and format GitHub actions
189
+ require a user with write access to the repository.
190
+ Set these additional secrets to enable the action:
191
+
192
+ - `GH_USER`: The GitHub user's username.
193
+ - `GH_TOKEN`: A personal access token for the user.
194
+ - `GIT_USER_NAME`: The GitHub user's real name.
195
+ - `GIT_USER_EMAIL`: The GitHub user's email.
196
+ - `GPG_PRIVATE_KEY`: The GitHub user's [GPG private key].
197
+ - `GPG_PASSPHRASE`: The GitHub user's GPG passphrase.
198
+
199
+ [GitHub Actions]: https://github.com/features/actions
200
+ [GPG private key]: https://github.com/marketplace/actions/import-gpg#prerequisites
201
+
202
+ ## Contributing
203
+
204
+ Please submit and comment on bug reports and feature requests.
205
+
206
+ To submit a patch:
207
+
208
+ 1. Fork it (https://github.com/makenew/rbgem/fork).
209
+ 2. Create your feature branch (`git checkout -b my-new-feature`).
210
+ 3. Make changes.
211
+ 4. Commit your changes (`git commit -am 'Add some feature'`).
212
+ 5. Push to the branch (`git push origin my-new-feature`).
213
+ 6. Create a new Pull Request.
214
+
215
+ ## License
216
+
217
+ This Ruby gem is licensed under the MIT license.
218
+
219
+ ## Warranty
220
+
221
+ This software is provided by the copyright holders and contributors "as is" and
222
+ any express or implied warranties, including, but not limited to, the implied
223
+ warranties of merchantability and fitness for a particular purpose are
224
+ disclaimed. In no event shall the copyright holder or contributors be liable for
225
+ any direct, indirect, incidental, special, exemplary, or consequential damages
226
+ (including, but not limited to, procurement of substitute goods or services;
227
+ loss of use, data, or profits; or business interruption) however caused and on
228
+ any theory of liability, whether in contract, strict liability, or tort
229
+ (including negligence or otherwise) arising in any way out of the use of this
230
+ software, even if advised of the possibility of such damage.
data/Rakefile ADDED
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "bundler/gem_tasks"
4
+ require "rspec/core/rake_task"
5
+ require "standard/rake"
6
+
7
+ RSpec::Core::RakeTask.new(:spec) do |t|
8
+ t.rspec_opts = "--pattern {spec,lib}/**/*_spec.rb"
9
+ end
10
+
11
+ task default: %i[lint test]
12
+
13
+ task test: "spec"
14
+ task lint: "standard"
15
+ task format: "standard:fix"
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MakenewRbgem
4
+ class Todo
5
+ def todo
6
+ "TODO"
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MakenewRbgem
4
+ VERSION = "0.0.2"
5
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "makenew-rbgem/version"
4
+ require_relative "makenew-rbgem/todo"
5
+
6
+ module MakenewRbgem
7
+ # TODO
8
+ end
metadata ADDED
@@ -0,0 +1,167 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: makenew-rbgem
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - Evan Sosenko
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2022-10-13 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '2.0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '2.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: gem-release
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '2.2'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '2.2'
41
+ - !ruby/object:Gem::Dependency
42
+ name: parse_gemspec-cli
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '1.0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '1.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rake
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '13.0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '13.0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rspec
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '3.0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '3.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: simplecov
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '0.21'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '0.21'
97
+ - !ruby/object:Gem::Dependency
98
+ name: simplecov-console
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '0.9'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '0.9'
111
+ - !ruby/object:Gem::Dependency
112
+ name: standard
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '1.3'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '1.3'
125
+ description: Project skeleton for a Ruby gem.
126
+ email: razorx@evansosenko.com
127
+ executables: []
128
+ extensions: []
129
+ extra_rdoc_files: []
130
+ files:
131
+ - CHANGELOG.md
132
+ - Gemfile
133
+ - Gemfile.lock
134
+ - LICENSE.txt
135
+ - README.md
136
+ - Rakefile
137
+ - lib/makenew-rbgem.rb
138
+ - lib/makenew-rbgem/todo.rb
139
+ - lib/makenew-rbgem/version.rb
140
+ homepage: https://github.com/makenew/rbgem
141
+ licenses:
142
+ - MIT
143
+ metadata:
144
+ homepage_uri: https://github.com/makenew/rbgem
145
+ source_code_uri: https://github.com/makenew/rbgem
146
+ bug_tracker_uri: https://github.com/makenew/rbgem/issues
147
+ changelog_uri: https://github.com/makenew/rbgem/blob/master/CHANGELOG.md
148
+ post_install_message:
149
+ rdoc_options: []
150
+ require_paths:
151
+ - lib
152
+ required_ruby_version: !ruby/object:Gem::Requirement
153
+ requirements:
154
+ - - ">="
155
+ - !ruby/object:Gem::Version
156
+ version: 3.0.0
157
+ required_rubygems_version: !ruby/object:Gem::Requirement
158
+ requirements:
159
+ - - ">="
160
+ - !ruby/object:Gem::Version
161
+ version: '0'
162
+ requirements: []
163
+ rubygems_version: 3.3.7
164
+ signing_key:
165
+ specification_version: 4
166
+ summary: Ruby Gem Project Skeleton
167
+ test_files: []