gemsmith 14.0.1 → 14.1.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -5,5 +5,5 @@ require "gemsmith"
5
5
  require "gemsmith/cli"
6
6
  require "gemsmith/identity"
7
7
 
8
- Process.setproctitle Gemsmith::Identity.version_label
8
+ Process.setproctitle Gemsmith::Identity::VERSION_LABEL
9
9
  Gemsmith::CLI.start
@@ -19,7 +19,7 @@ module Gemsmith
19
19
  using Refinements::Strings
20
20
  using Refinements::Hashes
21
21
 
22
- package_name Identity.version_label
22
+ package_name Identity::VERSION_LABEL
23
23
 
24
24
  # Overwrites Thor's template source root.
25
25
  def self.source_root
@@ -28,7 +28,7 @@ module Gemsmith
28
28
 
29
29
  # rubocop:disable Metrics/MethodLength
30
30
  def self.configuration
31
- Runcom::Config.new "#{Identity.name}/configuration.yml",
31
+ Runcom::Config.new "#{Identity::NAME}/configuration.yml",
32
32
  defaults: {
33
33
  year: Time.now.year,
34
34
  github_user: Git.github_user,
@@ -213,7 +213,7 @@ module Gemsmith
213
213
  desc "-v, [--version]", "Show gem version."
214
214
  map %w[-v --version] => :version
215
215
  def version
216
- say Identity.version_label
216
+ say Identity::VERSION_LABEL
217
217
  end
218
218
 
219
219
  desc "-h, [--help=COMMAND]", "Show this message or get help for a command."
@@ -7,8 +7,8 @@ module Gemsmith
7
7
  def run
8
8
  return unless configuration.dig :generate, :bundler_audit
9
9
 
10
- cli.uncomment_lines "#{gem_name}/Rakefile", %r(require.+bundler\/audit.+)
11
- cli.uncomment_lines "#{gem_name}/Rakefile", /Bundler\:\:Audit.+/
10
+ cli.uncomment_lines "#{gem_name}/Rakefile", %r(require.+bundler/audit.+)
11
+ cli.uncomment_lines "#{gem_name}/Rakefile", /Bundler::Audit.+/
12
12
  end
13
13
  end
14
14
  end
@@ -25,8 +25,9 @@ module Gemsmith
25
25
  end
26
26
 
27
27
  def create_repository
28
- create_commit "Added gem skeleton.",
29
- "Built with [#{Identity.label}](#{Identity.url}) #{Identity.version}."
28
+ create_commit "Added gem skeleton",
29
+ "Generated with [#{Identity::LABEL}](#{Identity::URL})\n" \
30
+ "#{Identity::VERSION}."
30
31
  end
31
32
 
32
33
  def create_commit subject, body
@@ -7,7 +7,7 @@ module Gemsmith
7
7
  def run
8
8
  return unless configuration.dig :generate, :git_cop
9
9
 
10
- cli.uncomment_lines "#{gem_name}/Rakefile", %r(require.+git\/cop.+)
10
+ cli.uncomment_lines "#{gem_name}/Rakefile", %r(require.+git/cop.+)
11
11
  end
12
12
  end
13
13
  end
@@ -3,24 +3,10 @@
3
3
  module Gemsmith
4
4
  # Gem identity information.
5
5
  module Identity
6
- def self.name
7
- "gemsmith"
8
- end
9
-
10
- def self.label
11
- "Gemsmith"
12
- end
13
-
14
- def self.version
15
- "14.0.1"
16
- end
17
-
18
- def self.version_label
19
- "#{label} #{version}"
20
- end
21
-
22
- def self.url
23
- "https://github.com/bkuhlmann/gemsmith"
24
- end
6
+ NAME = "gemsmith"
7
+ LABEL = "Gemsmith"
8
+ VERSION = "14.1.3"
9
+ VERSION_LABEL = "#{LABEL} #{VERSION}"
10
+ URL = "https://www.alchemists.io/projects/gemsmith"
25
11
  end
26
12
  end
@@ -1,9 +1,8 @@
1
- $LOAD_PATH.append File.expand_path("lib", __dir__)
2
- require "<%= config.dig(:gem, :path) %>/identity"
1
+ require_relative "lib/<%= config.dig(:gem, :path) %>/identity"
3
2
 
4
3
  Gem::Specification.new do |spec|
5
- spec.name = <%= config.dig(:gem, :class) %>::Identity.name
6
- spec.version = <%= config.dig(:gem, :class) %>::Identity.version
4
+ spec.name = <%= config.dig(:gem, :class) %>::Identity::NAME
5
+ spec.version = <%= config.dig(:gem, :class) %>::Identity::VERSION
7
6
  spec.platform = <%= config.dig(:gem, :platform) %>
8
7
  spec.authors = ["<%= config.dig(:author, :name) %>"]
9
8
  spec.email = ["<%= config.dig(:author, :email) %>"]
@@ -33,7 +32,7 @@ Gem::Specification.new do |spec|
33
32
  <%- if config.dig(:generate, :bundler_audit) -%>
34
33
  spec.add_development_dependency "bundler-audit", "~> 0.6"
35
34
  <%- end -%>
36
- spec.add_development_dependency "gemsmith", "~> <%= Gemsmith::Identity.version[/\d+\.\d+/] %>"
35
+ spec.add_development_dependency "gemsmith", "~> <%= Gemsmith::Identity::VERSION[/\d+\.\d+/] %>"
37
36
  <%- if config.dig(:generate, :git_cop) -%>
38
37
  spec.add_development_dependency "git-cop", "~> 4.0"
39
38
  <%- end -%>
@@ -41,26 +40,26 @@ Gem::Specification.new do |spec|
41
40
  spec.add_development_dependency "guard-rspec", "~> 4.7"
42
41
  <%- end -%>
43
42
  <%- if config.dig(:generate, :pry) -%>
44
- spec.add_development_dependency "pry", "~> 0.12"
45
- spec.add_development_dependency "pry-byebug", "~> 3.7"
43
+ spec.add_development_dependency "pry", "~> 0.13"
44
+ spec.add_development_dependency "pry-byebug", "~> 3.9"
46
45
  <%- end -%>
47
46
  spec.add_development_dependency "rake", "~> 13.0"
48
47
  <%- if config.dig(:generate, :reek) -%>
49
- spec.add_development_dependency "reek", "~> 5.4"
48
+ spec.add_development_dependency "reek", "~> 6.0"
50
49
  <%- end -%>
51
50
  <%- if config.dig(:generate, :rspec) -%>
52
51
  spec.add_development_dependency "<%= config.dig(:generate, :engine) ? "rspec-rails" : "rspec" %>", "~> 3.9"
53
52
  <%- end -%>
54
53
  <%- if config.dig(:generate, :rubocop) -%>
55
- spec.add_development_dependency "rubocop", "~> 0.78"
54
+ spec.add_development_dependency "rubocop", "~> 0.83"
56
55
  spec.add_development_dependency "rubocop-performance", "~> 1.5"
57
56
  spec.add_development_dependency "rubocop-rake", "~> 0.5"
58
57
  <%- end -%>
59
58
  <%- if config.dig(:generate, :rubocop) && config.dig(:generate, :rspec) -%>
60
- spec.add_development_dependency "rubocop-rspec", "~> 1.37"
59
+ spec.add_development_dependency "rubocop-rspec", "~> 1.39"
61
60
  <%- end -%>
62
61
  <%- if config.dig(:generate, :simple_cov) -%>
63
- spec.add_development_dependency "simplecov", "~> 0.17"
62
+ spec.add_development_dependency "simplecov", "~> 0.18"
64
63
  <%- end -%>
65
64
 
66
65
  <%- if config.dig(:generate, :engine) -%>
@@ -1,12 +1,12 @@
1
1
  inherit_from:
2
- - https://raw.githubusercontent.com/bkuhlmann/code_quality/4.3.0/configurations/rubocop/ruby.yml
3
- - https://raw.githubusercontent.com/bkuhlmann/code_quality/4.3.0/configurations/rubocop/rake.yml
4
- - https://raw.githubusercontent.com/bkuhlmann/code_quality/4.3.0/configurations/rubocop/performance.yml
2
+ - https://raw.githubusercontent.com/bkuhlmann/code_quality/4.8.0/configurations/rubocop/ruby.yml
3
+ - https://raw.githubusercontent.com/bkuhlmann/code_quality/4.8.0/configurations/rubocop/rake.yml
4
+ - https://raw.githubusercontent.com/bkuhlmann/code_quality/4.8.0/configurations/rubocop/performance.yml
5
5
  <%- if config.dig(:generate, :rspec) -%>
6
- - https://raw.githubusercontent.com/bkuhlmann/code_quality/4.3.0/configurations/rubocop/rspec.yml
6
+ - https://raw.githubusercontent.com/bkuhlmann/code_quality/4.8.0/configurations/rubocop/rspec.yml
7
7
  <%- end -%>
8
8
  <%- if config.dig(:generate, :engine) -%>
9
- - https://raw.githubusercontent.com/bkuhlmann/code_quality/4.3.0/configurations/rubocop/rails.yml
9
+ - https://raw.githubusercontent.com/bkuhlmann/code_quality/4.8.0/configurations/rubocop/rails.yml
10
10
  <%- end -%>
11
11
 
12
12
  <%- if config.dig(:generate, :cli) -%>
@@ -25,6 +25,8 @@
25
25
 
26
26
  ## Setup
27
27
 
28
+ ### Production
29
+
28
30
  To install, run:
29
31
 
30
32
  gem install <%= config.dig(:gem, :name) %>
@@ -35,6 +37,18 @@ Add the following to your Gemfile:
35
37
  gem "<%= config.dig(:gem, :name) %>"
36
38
  <%- end -%>
37
39
 
40
+ ### Development
41
+
42
+ To contribute, run:
43
+
44
+ git clone https://github.com/<%= config.dig(:github_user) %>/<%= config.dig(:gem, :name) %>.git
45
+ cd <%= config.dig(:gem, :name) %>
46
+ bin/setup
47
+
48
+ You can also use the IRB console for direct access to all objects:
49
+
50
+ bin/console
51
+
38
52
  ## Usage
39
53
 
40
54
  <%- if config.dig(:generate, :rspec) -%>
@@ -4,5 +4,5 @@ require "<%= config.dig(:gem, :path) %>"
4
4
  require "<%= config.dig(:gem, :path) %>/cli"
5
5
  require "<%= config.dig(:gem, :path) %>/identity"
6
6
 
7
- Process.setproctitle <%= config.dig(:gem, :class) %>::Identity.version_label
7
+ Process.setproctitle <%= config.dig(:gem, :class) %>::Identity::VERSION_LABEL
8
8
  <%= config.dig(:gem, :class) %>::CLI.start
@@ -7,10 +7,10 @@ require "runcom"
7
7
  class CLI < Thor
8
8
  include Thor::Actions
9
9
 
10
- package_name Identity.version_label
10
+ package_name Identity::VERSION_LABEL
11
11
 
12
12
  def self.configuration
13
- Runcom::Config.new "#{Identity.name}/configuration.yml"
13
+ Runcom::Config.new "#{Identity::NAME}/configuration.yml"
14
14
  end
15
15
 
16
16
  def initialize args = [], options = {}, config = {}
@@ -45,7 +45,7 @@ require "runcom"
45
45
  desc "-v, [--version]", "Show gem version."
46
46
  map %w[-v --version] => :version
47
47
  def version
48
- say Identity.version_label
48
+ say Identity::VERSION_LABEL
49
49
  end
50
50
 
51
51
  desc "-h, [--help=COMMAND]", "Show this message or get help for a command."
@@ -1,20 +1,9 @@
1
1
  <% render_namespace do %>
2
2
  # Gem identity information.
3
3
  module Identity
4
- def self.name
5
- "<%= config.dig(:gem, :name) %>"
6
- end
7
-
8
- def self.label
9
- "<%= config.dig(:gem, :label) %>"
10
- end
11
-
12
- def self.version
13
- "0.1.0"
14
- end
15
-
16
- def self.version_label
17
- "#{label} #{version}"
18
- end
4
+ NAME = "<%= config.dig(:gem, :name) %>"
5
+ LABEL = "<%= config.dig(:gem, :label) %>"
6
+ VERSION = "0.1.0"
7
+ VERSION_LABEL = "#{LABEL} #{VERSION}"
19
8
  end
20
9
  <% end %>
@@ -19,7 +19,7 @@ RSpec.describe <%= config.dig(:gem, :class) %>::CLI do
19
19
  shared_examples_for "a version command" do
20
20
  it "prints version" do
21
21
  result = -> { cli }
22
- pattern = /#{Regexp.escape <%= config.dig(:gem, :class) %>::Identity.version_label}\n/
22
+ pattern = /#{Regexp.escape <%= config.dig(:gem, :class) %>::Identity::VERSION_LABEL}\n/
23
23
 
24
24
  expect(result).to output(pattern).to_stdout
25
25
  end
@@ -28,7 +28,7 @@ RSpec.describe <%= config.dig(:gem, :class) %>::CLI do
28
28
  shared_examples_for "a help command" do
29
29
  it "prints usage" do
30
30
  result = -> { cli }
31
- pattern = /#{Regexp.escape <%= config.dig(:gem, :class) %>::Identity.version_label}\scommands:\n/
31
+ pattern = /#{Regexp.escape <%= config.dig(:gem, :class) %>::Identity::VERSION_LABEL}\scommands:\n/
32
32
 
33
33
  expect(result).to output(pattern).to_stdout
34
34
  end
@@ -2,7 +2,7 @@ require "bundler/setup"
2
2
 
3
3
  <%- if config.dig(:generate, :simple_cov) -%>
4
4
  require "simplecov"
5
- SimpleCov.start
5
+ SimpleCov.start { enable_coverage :branch }
6
6
  <%- end -%>
7
7
 
8
8
  <%- if config.dig(:generate, :pry) -%>
metadata CHANGED
@@ -1,18 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gemsmith
3
3
  version: !ruby/object:Gem::Version
4
- version: 14.0.1
4
+ version: 14.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brooke Kuhlmann
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIC/jCCAeagAwIBAgIBAjANBgkqhkiG9w0BAQsFADAlMSMwIQYDVQQDDBpicm9v
14
- a2UvREM9YWxjaGVtaXN0cy9EQz1pbzAeFw0xOTAyMTcxNjAxMTFaFw0yMDAyMTcx
15
- NjAxMTFaMCUxIzAhBgNVBAMMGmJyb29rZS9EQz1hbGNoZW1pc3RzL0RDPWlvMIIB
13
+ MIIC/jCCAeagAwIBAgIBAzANBgkqhkiG9w0BAQsFADAlMSMwIQYDVQQDDBpicm9v
14
+ a2UvREM9YWxjaGVtaXN0cy9EQz1pbzAeFw0yMDAzMTUxNDQ1MzJaFw0yMTAzMTUx
15
+ NDQ1MzJaMCUxIzAhBgNVBAMMGmJyb29rZS9EQz1hbGNoZW1pc3RzL0RDPWlvMIIB
16
16
  IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6l1qpXTiomH1RfMRloyw7MiE
17
17
  xyVx/x8Yc3EupdH7uhNaTXQGyORN6aOY//1QXXMHIZ9tW74nZLhesWMSUMYy0XhB
18
18
  brs+KkurHnc9FnEJAbG7ebGvl/ncqZt72nQvaxpDxvuCBHgJAz+8i5wl6FhLw+oT
@@ -20,15 +20,15 @@ cert_chain:
20
20
  D5vkU0YlAm1r98BymuJlcQ1qdkVEI1d48ph4kcS0S0nv1RiuyVb6TCAR3Nu3VaVq
21
21
  3fPzZKJLZBx67UvXdbdicWPiUR75elI4PXpLIic3xytaF52ZJYyKZCNZJhNwfQID
22
22
  AQABozkwNzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQU0nzow9vc
23
- 2CdikiiE3fJhP/gY4ggwDQYJKoZIhvcNAQELBQADggEBANgfX7kPZkJvsbdWMvbe
24
- DUUYxRTqTUzCDpLd2p3sQvgLMKjTNSKt6CFq/kh+98b6RCgO6DqiVfxvOEq02dvf
25
- ebMN/ylQqan2FgiAs1rpP0/D4C0MlBjoDktsT+2IyLol1KmkDB20ExJ4Sf1GRNdA
26
- hpWOtcgqHtmrc7xzgB6BuyoYufrKKUlCO3ewTM4C375D2qO7hIdKuMOO3CdPMtSk
27
- OrWpbzCL+nbbXqeoqiHgZaUvcyyQrGj5sQRxMTzuMXzzQxtHnuTuKrcz16HMTX/O
28
- dKvURM+1PwDCzC5tvRwjhUJIizau6+MtkFCvJHmaAj1aZL3odcPejHj5Hxt/0CUW
29
- y84=
23
+ 2CdikiiE3fJhP/gY4ggwDQYJKoZIhvcNAQELBQADggEBAIHhAlD3po4sTYqacXaQ
24
+ XI9jIhrfMy//2PgbHWcETtlJPBeNUbbSNBABcllUHKqYsVDlSvSmss034KSWNR8F
25
+ bF1GcloicyvcCC4y6IoW4it0COAcdeaaxkxiBSgKdQFpff9REnDlIKK4uQ9lLxIo
26
+ Y2G5xubiziKZkyfWFuSr67PIjW3Bu673D1JVBArhA1qbgQmYQcy1CkGOjo+iO8Nf
27
+ 7u/QSfBHb+r/bXhKscDgPpnKwbUmvgO2+94zJG9KsrmIydlzYfsD09aXKx0t6Xy4
28
+ 2XV8FRa7/JimI07sPLC13eLY3xd/aYTi85Z782KIA4j0G8XEEWAX0ouBhlXPocZv
29
+ QWc=
30
30
  -----END CERTIFICATE-----
31
- date: 2020-01-02 00:00:00.000000000 Z
31
+ date: 2020-06-06 00:00:00.000000000 Z
32
32
  dependencies:
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: milestoner
@@ -64,28 +64,28 @@ dependencies:
64
64
  requirements:
65
65
  - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: '7.0'
67
+ version: '7.4'
68
68
  type: :runtime
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: '7.0'
74
+ version: '7.4'
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: rubocop
77
77
  requirement: !ruby/object:Gem::Requirement
78
78
  requirements:
79
79
  - - "~>"
80
80
  - !ruby/object:Gem::Version
81
- version: '0.78'
81
+ version: '0.83'
82
82
  type: :runtime
83
83
  prerelease: false
84
84
  version_requirements: !ruby/object:Gem::Requirement
85
85
  requirements:
86
86
  - - "~>"
87
87
  - !ruby/object:Gem::Version
88
- version: '0.78'
88
+ version: '0.83'
89
89
  - !ruby/object:Gem::Dependency
90
90
  name: runcom
91
91
  requirement: !ruby/object:Gem::Requirement
@@ -204,28 +204,28 @@ dependencies:
204
204
  requirements:
205
205
  - - "~>"
206
206
  - !ruby/object:Gem::Version
207
- version: '0.12'
207
+ version: '0.13'
208
208
  type: :development
209
209
  prerelease: false
210
210
  version_requirements: !ruby/object:Gem::Requirement
211
211
  requirements:
212
212
  - - "~>"
213
213
  - !ruby/object:Gem::Version
214
- version: '0.12'
214
+ version: '0.13'
215
215
  - !ruby/object:Gem::Dependency
216
216
  name: pry-byebug
217
217
  requirement: !ruby/object:Gem::Requirement
218
218
  requirements:
219
219
  - - "~>"
220
220
  - !ruby/object:Gem::Version
221
- version: '3.7'
221
+ version: '3.9'
222
222
  type: :development
223
223
  prerelease: false
224
224
  version_requirements: !ruby/object:Gem::Requirement
225
225
  requirements:
226
226
  - - "~>"
227
227
  - !ruby/object:Gem::Version
228
- version: '3.7'
228
+ version: '3.9'
229
229
  - !ruby/object:Gem::Dependency
230
230
  name: rake
231
231
  requirement: !ruby/object:Gem::Requirement
@@ -246,14 +246,14 @@ dependencies:
246
246
  requirements:
247
247
  - - "~>"
248
248
  - !ruby/object:Gem::Version
249
- version: '5.4'
249
+ version: '6.0'
250
250
  type: :development
251
251
  prerelease: false
252
252
  version_requirements: !ruby/object:Gem::Requirement
253
253
  requirements:
254
254
  - - "~>"
255
255
  - !ruby/object:Gem::Version
256
- version: '5.4'
256
+ version: '6.0'
257
257
  - !ruby/object:Gem::Dependency
258
258
  name: rspec
259
259
  requirement: !ruby/object:Gem::Requirement
@@ -302,40 +302,40 @@ dependencies:
302
302
  requirements:
303
303
  - - "~>"
304
304
  - !ruby/object:Gem::Version
305
- version: '1.37'
305
+ version: '1.39'
306
306
  type: :development
307
307
  prerelease: false
308
308
  version_requirements: !ruby/object:Gem::Requirement
309
309
  requirements:
310
310
  - - "~>"
311
311
  - !ruby/object:Gem::Version
312
- version: '1.37'
312
+ version: '1.39'
313
313
  - !ruby/object:Gem::Dependency
314
314
  name: simplecov
315
315
  requirement: !ruby/object:Gem::Requirement
316
316
  requirements:
317
317
  - - "~>"
318
318
  - !ruby/object:Gem::Version
319
- version: '0.17'
319
+ version: '0.18'
320
320
  type: :development
321
321
  prerelease: false
322
322
  version_requirements: !ruby/object:Gem::Requirement
323
323
  requirements:
324
324
  - - "~>"
325
325
  - !ruby/object:Gem::Version
326
- version: '0.17'
327
- description:
326
+ version: '0.18'
327
+ description:
328
328
  email:
329
329
  - brooke@alchemists.io
330
330
  executables:
331
331
  - gemsmith
332
332
  extensions: []
333
333
  extra_rdoc_files:
334
- - README.md
335
- - LICENSE.md
334
+ - README.adoc
335
+ - LICENSE.adoc
336
336
  files:
337
- - LICENSE.md
338
- - README.md
337
+ - LICENSE.adoc
338
+ - README.adoc
339
339
  - bin/gemsmith
340
340
  - lib/gemsmith.rb
341
341
  - lib/gemsmith/authenticators/basic.rb
@@ -407,14 +407,15 @@ files:
407
407
  - lib/gemsmith/templates/%gem_name%/spec/rails_helper.rb.tt
408
408
  - lib/gemsmith/templates/%gem_name%/spec/spec_helper.rb.tt
409
409
  - lib/gemsmith/templates/%gem_name%/spec/support/shared_contexts/temp_dir.rb.tt
410
- homepage: https://github.com/bkuhlmann/gemsmith
410
+ homepage: https://www.alchemists.io/projects/gemsmith
411
411
  licenses:
412
412
  - Apache-2.0
413
413
  metadata:
414
- source_code_uri: https://github.com/bkuhlmann/gemsmith
415
- changelog_uri: https://github.com/bkuhlmann/gemsmith/blob/master/CHANGES.md
416
414
  bug_tracker_uri: https://github.com/bkuhlmann/gemsmith/issues
417
- post_install_message:
415
+ changelog_uri: https://www.alchemists.io/projects/gemsmith/changes.html
416
+ documentation_uri: https://www.alchemists.io/projects/gemsmith
417
+ source_code_uri: https://github.com/bkuhlmann/gemsmith
418
+ post_install_message:
418
419
  rdoc_options: []
419
420
  require_paths:
420
421
  - lib
@@ -429,8 +430,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
429
430
  - !ruby/object:Gem::Version
430
431
  version: '0'
431
432
  requirements: []
432
- rubygems_version: 3.1.2
433
- signing_key:
433
+ rubygems_version: 3.1.4
434
+ signing_key:
434
435
  specification_version: 4
435
436
  summary: A command line interface for smithing new Ruby gems.
436
437
  test_files: []