makenew-rbgem 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
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: []