rubysmith 6.2.0 → 6.3.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a53e119bfa0524ad956da17a7cb8388f8f99aa7995c0a987eabe60f18118f43b
4
- data.tar.gz: 0670d8e4c12e2a0a8e2309d4e173a87d515df961b28e5eb2e122f7d20540247b
3
+ metadata.gz: 037d26990645028be641a64298fd25609fb18f26df993a2139c0456afcef354b
4
+ data.tar.gz: 03662ce9577fee0c30cb7f78b2426d84821d952feff22a7b81aca528231da89b
5
5
  SHA512:
6
- metadata.gz: 056f625e83b587a805b5438f79bb7f96f16ba5dec5c22a5f9ef241fa7af9a183e06f512eb452e871b438a6e6702003cb3a2fec839acd5b031ed0168d0d28c855
7
- data.tar.gz: 2ef90713a1fef4755ead99c52ce89675ad75aca20872be5147854d37c7fef37324bcc6bc7fd8cee3f8230e81d3d04316708bbad0d3521324bf4f8ee9a8f0ef7e
6
+ metadata.gz: 1ab598a2020ddda6135f32bbb339268b04ff8542f05884741061c4bf631af7b740d9affff4aacea8b98c7897566638d577d63c54e6bce5c2b65c6af4593e9c56
7
+ data.tar.gz: 7d6be21476cfe2c66c8518ce3fbee44ad994e6b8a8a504556393b0f524787203a16f973b5b15b9d439b13a5f4c042ff6427a13a24776336c9cdfc67dd98d8880
checksums.yaml.gz.sig CHANGED
@@ -1,5 +1 @@
1
- 4��w8��Q
2
- ��3���>��QVw=��^7�"��~ۏ
3
- s�=?��k=��Q�| �P�Ŷf��"���G�w{`��[$� ��N��M� O���� "x9���21ؐ��r���O
4
- ���{�o��p@<�;�"��LQR�{d�Rt�������>���-N��U�Ĕ'٢o�{��C��ҋ
5
- ���2[ž����:�ts�wv��ƴҌ6���W�X��1B�;�]�&m_��5V��B���XgB5<�a#ٌ�Y�w'pĞ��)j�o���-պ�m(h�=�����ҬE����@b��*�����1��������(�!2ߑ�Ueb
1
+ ?�71����mk�f��ީp%Jw�l��9I�kJ�Z���'Q��ȼ��Kfl��>jA�(�}�Q�XK�FV�|15����u|K�j�f��oL* ��WȀ|�������������%���bk&1��
@@ -22,7 +22,8 @@ module Rubysmith
22
22
  .render
23
23
  .permit 0o755
24
24
 
25
- builder.call(configuration.merge(template_path: "%project_name%/.rubocop.yml.erb")).render
25
+ path = "%project_name%/.config/rubocop/config.yml.erb"
26
+ builder.call(configuration.merge(template_path: path)).render
26
27
  configuration
27
28
  end
28
29
 
@@ -1,19 +1,32 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "pragmater"
4
+ require "refinements/pathname"
4
5
 
5
6
  module Rubysmith
6
7
  module Extensions
7
8
  # Ensures project skeleton has pragmas.
8
9
  class Pragmater
10
+ using Refinements::Pathname
11
+
9
12
  def self.call(...) = new(...).call
10
13
 
14
+ def self.custom_configuration
15
+ ::Pragmater::Configuration::Model[
16
+ comments: ["# frozen_string_literal: true"],
17
+ patterns: %w[**/*.rake **/*.rb *.gemspec exe/* bin/* config.ru *file]
18
+ ]
19
+ end
20
+
11
21
  def initialize configuration, client: ::Pragmater::Inserter.new
12
22
  @configuration = configuration
13
23
  @client = client
14
24
  end
15
25
 
16
- def call = client.call && configuration
26
+ def call
27
+ configuration.project_root.change_dir { client.call self.class.custom_configuration }
28
+ configuration
29
+ end
17
30
 
18
31
  private
19
32
 
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "refinements/io"
4
+ require "refinements/pathname"
4
5
  require "rubocop"
5
6
 
6
7
  module Rubysmith
@@ -8,6 +9,7 @@ module Rubysmith
8
9
  # Ensures project skeleton adheres to style guide.
9
10
  class Rubocop
10
11
  using Refinements::IO
12
+ using Refinements::Pathname
11
13
 
12
14
  def self.call(...) = new(...).call
13
15
 
@@ -17,7 +19,12 @@ module Rubysmith
17
19
  end
18
20
 
19
21
  def call
20
- STDOUT.squelch { client.run ["--autocorrect-all", configuration.project_root.to_s] }
22
+ project_root = configuration.project_root
23
+
24
+ project_root.change_dir do
25
+ STDOUT.squelch { client.run ["--autocorrect-all", project_root.to_s] }
26
+ end
27
+
21
28
  configuration
22
29
  end
23
30
 
@@ -1,11 +1,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "refinements/pathname"
3
4
  require "tocer"
4
5
 
5
6
  module Rubysmith
6
7
  module Extensions
7
8
  # Ensures project skeleton documentation has table of content.
8
9
  class Tocer
10
+ using Refinements::Pathname
11
+
9
12
  def self.call(...) = new(...).call
10
13
 
11
14
  def initialize configuration, client: ::Tocer::Runner.new
@@ -14,7 +17,9 @@ module Rubysmith
14
17
  end
15
18
 
16
19
  def call
17
- client.call ::Tocer::Container[:configuration] if configuration.build_readme
20
+ return configuration unless configuration.build_readme
21
+
22
+ configuration.project_root.change_dir { client.call ::Tocer::Container[:configuration] }
18
23
  configuration
19
24
  end
20
25
 
@@ -3,7 +3,7 @@ ruby file: ".ruby-version"
3
3
  source "https://rubygems.org"
4
4
 
5
5
  <% if configuration.build_refinements %>
6
- gem "refinements", "~> 12.0"
6
+ gem "refinements", "~> 12.1"
7
7
  <% end %>
8
8
  <% if configuration.build_zeitwerk %>
9
9
  gem "zeitwerk", "~> 2.6"
@@ -11,10 +11,10 @@ source "https://rubygems.org"
11
11
 
12
12
  group :quality do
13
13
  <% if configuration.build_caliber %>
14
- gem "caliber", "~> 0.50"
14
+ gem "caliber", "~> 0.51"
15
15
  <% end %>
16
16
  <% if configuration.build_git && configuration.build_git_lint %>
17
- gem "git-lint", "~> 7.0"
17
+ gem "git-lint", "~> 7.1"
18
18
  <% end %>
19
19
  <% if configuration.build_reek %>
20
20
  gem "reek", "~> 6.3", require: false
@@ -38,7 +38,7 @@ group :test do
38
38
  gem "guard-rspec", "~> 4.7", require: false
39
39
  <% end %>
40
40
  <% if configuration.build_rspec %>
41
- gem "rspec", "~> 3.12"
41
+ gem "rspec", "~> 3.13"
42
42
  <% end %>
43
43
  end
44
44
 
@@ -47,7 +47,7 @@ group :tools do
47
47
  gem "amazing_print", "~> 1.5"
48
48
  <% end %>
49
49
  <% if configuration.build_debug %>
50
- gem "debug", "~> 1.8"
50
+ gem "debug", "~> 1.9"
51
51
  <% end %>
52
52
  gem "repl_type_completor", "~> 0.1"
53
53
  end
data/rubysmith.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = "rubysmith"
5
- spec.version = "6.2.0"
5
+ spec.version = "6.3.0"
6
6
  spec.authors = ["Brooke Kuhlmann"]
7
7
  spec.email = ["brooke@alchemists.io"]
8
8
  spec.homepage = "https://alchemists.io/projects/rubysmith"
@@ -28,11 +28,11 @@ Gem::Specification.new do |spec|
28
28
  spec.add_dependency "dry-monads", "~> 1.6"
29
29
  spec.add_dependency "dry-schema", "~> 1.13"
30
30
  spec.add_dependency "etcher", "~> 1.0"
31
- spec.add_dependency "gitt", "~> 3.0"
31
+ spec.add_dependency "gitt", "~> 3.2"
32
32
  spec.add_dependency "infusible", "~> 3.0"
33
33
  spec.add_dependency "milestoner", "~> 17.0"
34
34
  spec.add_dependency "pragmater", "~> 14.1"
35
- spec.add_dependency "refinements", "~> 12.0"
35
+ spec.add_dependency "refinements", "~> 12.1"
36
36
  spec.add_dependency "rubocop", "~> 1.59"
37
37
  spec.add_dependency "runcom", "~> 11.0"
38
38
  spec.add_dependency "sod", "~> 0.4"
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubysmith
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.2.0
4
+ version: 6.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brooke Kuhlmann
@@ -35,7 +35,7 @@ cert_chain:
35
35
  3n5C8/6Zh9DYTkpcwPSuIfAga6wf4nXc9m6JAw8AuMLaiWN/r/2s4zJsUHYERJEu
36
36
  gZGm4JqtuSg8pYjPeIJxS960owq+SfuC+jxqmRA54BisFCv/0VOJi7tiJVY=
37
37
  -----END CERTIFICATE-----
38
- date: 2024-01-28 00:00:00.000000000 Z
38
+ date: 2024-03-03 00:00:00.000000000 Z
39
39
  dependencies:
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: cogger
@@ -113,14 +113,14 @@ dependencies:
113
113
  requirements:
114
114
  - - "~>"
115
115
  - !ruby/object:Gem::Version
116
- version: '3.0'
116
+ version: '3.2'
117
117
  type: :runtime
118
118
  prerelease: false
119
119
  version_requirements: !ruby/object:Gem::Requirement
120
120
  requirements:
121
121
  - - "~>"
122
122
  - !ruby/object:Gem::Version
123
- version: '3.0'
123
+ version: '3.2'
124
124
  - !ruby/object:Gem::Dependency
125
125
  name: infusible
126
126
  requirement: !ruby/object:Gem::Requirement
@@ -169,14 +169,14 @@ dependencies:
169
169
  requirements:
170
170
  - - "~>"
171
171
  - !ruby/object:Gem::Version
172
- version: '12.0'
172
+ version: '12.1'
173
173
  type: :runtime
174
174
  prerelease: false
175
175
  version_requirements: !ruby/object:Gem::Requirement
176
176
  requirements:
177
177
  - - "~>"
178
178
  - !ruby/object:Gem::Version
179
- version: '12.0'
179
+ version: '12.1'
180
180
  - !ruby/object:Gem::Dependency
181
181
  name: rubocop
182
182
  requirement: !ruby/object:Gem::Requirement
@@ -366,13 +366,13 @@ files:
366
366
  - lib/rubysmith/renderers/erb.rb
367
367
  - lib/rubysmith/renderers/namespace.rb
368
368
  - lib/rubysmith/templates/%project_name%/.circleci/config.yml.erb
369
+ - lib/rubysmith/templates/%project_name%/.config/rubocop/config.yml.erb
369
370
  - lib/rubysmith/templates/%project_name%/.github/FUNDING.yml.erb
370
371
  - lib/rubysmith/templates/%project_name%/.github/ISSUE_TEMPLATE.md.erb
371
372
  - lib/rubysmith/templates/%project_name%/.github/PULL_REQUEST_TEMPLATE.md.erb
372
373
  - lib/rubysmith/templates/%project_name%/.github/workflows/ci.yml.erb
373
374
  - lib/rubysmith/templates/%project_name%/.gitignore.erb
374
375
  - lib/rubysmith/templates/%project_name%/.reek.yml.erb
375
- - lib/rubysmith/templates/%project_name%/.rubocop.yml.erb
376
376
  - lib/rubysmith/templates/%project_name%/.ruby-version.erb
377
377
  - lib/rubysmith/templates/%project_name%/CITATION.cff.erb
378
378
  - lib/rubysmith/templates/%project_name%/Gemfile.erb
@@ -426,7 +426,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
426
426
  - !ruby/object:Gem::Version
427
427
  version: '0'
428
428
  requirements: []
429
- rubygems_version: 3.5.5
429
+ rubygems_version: 3.5.6
430
430
  signing_key:
431
431
  specification_version: 4
432
432
  summary: A command line interface for smithing Ruby projects.
metadata.gz.sig CHANGED
Binary file