rubysmith 8.6.0 → 8.7.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.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/lib/rubysmith/builder.rb +1 -1
  4. data/lib/rubysmith/builders/bundler.rb +1 -1
  5. data/lib/rubysmith/builders/caliber.rb +2 -2
  6. data/lib/rubysmith/builders/circle_ci.rb +1 -1
  7. data/lib/rubysmith/builders/console.rb +1 -1
  8. data/lib/rubysmith/builders/core.rb +2 -2
  9. data/lib/rubysmith/builders/dev_container/compose.rb +1 -1
  10. data/lib/rubysmith/builders/dev_container/configuration.rb +1 -1
  11. data/lib/rubysmith/builders/dev_container/dockerfile.rb +1 -1
  12. data/lib/rubysmith/builders/docker/build.rb +1 -1
  13. data/lib/rubysmith/builders/docker/compose.rb +1 -1
  14. data/lib/rubysmith/builders/docker/console.rb +1 -1
  15. data/lib/rubysmith/builders/docker/entrypoint.rb +1 -1
  16. data/lib/rubysmith/builders/docker/file.rb +1 -1
  17. data/lib/rubysmith/builders/docker/ignore.rb +1 -1
  18. data/lib/rubysmith/builders/documentation/citation.rb +1 -1
  19. data/lib/rubysmith/builders/documentation/license.rb +1 -1
  20. data/lib/rubysmith/builders/documentation/readme.rb +1 -1
  21. data/lib/rubysmith/builders/documentation/version.rb +1 -1
  22. data/lib/rubysmith/builders/git/ignore.rb +1 -1
  23. data/lib/rubysmith/builders/git/safe.rb +1 -1
  24. data/lib/rubysmith/builders/git_hub/ci.rb +1 -1
  25. data/lib/rubysmith/builders/git_hub/funding.rb +1 -1
  26. data/lib/rubysmith/builders/git_hub/template.rb +3 -3
  27. data/lib/rubysmith/builders/init.rb +1 -1
  28. data/lib/rubysmith/builders/rake/binstub.rb +1 -1
  29. data/lib/rubysmith/builders/rake/configuration.rb +1 -1
  30. data/lib/rubysmith/builders/reek.rb +1 -1
  31. data/lib/rubysmith/builders/rspec/binstub.rb +1 -1
  32. data/lib/rubysmith/builders/rspec/context.rb +1 -1
  33. data/lib/rubysmith/builders/rspec/helper.rb +1 -1
  34. data/lib/rubysmith/builders/setup.rb +1 -1
  35. data/lib/rubysmith/builders/version.rb +1 -1
  36. data/lib/rubysmith/cli/actions/maximum.rb +1 -1
  37. data/lib/rubysmith/cli/actions/minimum.rb +1 -1
  38. data/lib/rubysmith/configuration/model.rb +1 -1
  39. data/lib/rubysmith/templates/%project_name%/Gemfile.erb +1 -1
  40. data/lib/rubysmith/templates/%project_name%/spec/spec_helper.rb.erb +5 -1
  41. data/rubysmith.gemspec +2 -2
  42. data.tar.gz.sig +0 -0
  43. metadata +3 -3
  44. metadata.gz.sig +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: eefdefe78c920a85bddc7f790c388dddb5232864b1962bc5bd4269033c6e68fd
4
- data.tar.gz: 3cc8227b07aa1a9f265e0f0e82327ff5ce9a60c49e0bbf18dee9820894980a6c
3
+ metadata.gz: f92dfe620a2eb2a160349a45f60da72c468e20ccb11afe236f62cde15a382b38
4
+ data.tar.gz: 647c61828c52e8503cecc65153c89e6e1e8abe29ba06cafa09ce434e1568bebe
5
5
  SHA512:
6
- metadata.gz: dd4d5d22c4cd232e8acc2d6a972e3b659c68c73ed6bcd608c5990ec5cc1cc60590c6a017d21c6e8825e417a0b5cb382dee611670f42a1cba1902ec5ed72eb25a
7
- data.tar.gz: d34e53676df4fe5fff9dea7fec897d03d0a962fce16e0b872e06f3b8216ec94e4e5e9825d991b091596191acacefeee638f69d043bdb101f84d3dd42d1a79830
6
+ metadata.gz: 59cd73122d11759d4511e2d0f181c15096f3f4a60f705410c7cefee787e5ba1fb4aac7c259e1aceb7679b6017e437d9e439ba9c2dda24e38d5978f51fbb49810
7
+ data.tar.gz: 43dedd825b37c8f4d291eb3cf9f5596ae66beb983ab61d3d100b864106ca509ed8f0c4e3039fd439272faed0b31bf0c86e77415ba5944169b77ede795141000e
checksums.yaml.gz.sig CHANGED
Binary file
@@ -99,7 +99,7 @@ module Rubysmith
99
99
 
100
100
  def touch
101
101
  log_info "Touching: #{relative_build_path}"
102
- build_path.deep_touch
102
+ build_path.touch_deep
103
103
  self
104
104
  end
105
105
 
@@ -9,7 +9,7 @@ module Rubysmith
9
9
  using Refinements::Struct
10
10
 
11
11
  def call
12
- builder.call(settings.merge(template_path: "%project_name%/Gemfile.erb"))
12
+ builder.call(settings.with(template_path: "%project_name%/Gemfile.erb"))
13
13
  .render
14
14
  .replace(/\n\s+group/, "\n\ngroup")
15
15
  .replace(/\n\s+gem/, "\n gem")
@@ -11,12 +11,12 @@ module Rubysmith
11
11
  def call
12
12
  return false unless settings.build_caliber
13
13
 
14
- builder.call(settings.merge(template_path: "%project_name%/bin/rubocop.erb"))
14
+ builder.call(settings.with(template_path: "%project_name%/bin/rubocop.erb"))
15
15
  .render
16
16
  .permit 0o755
17
17
 
18
18
  path = "%project_name%/.config/rubocop/config.yml.erb"
19
- builder.call(settings.merge(template_path: path)).render
19
+ builder.call(settings.with(template_path: path)).render
20
20
  true
21
21
  end
22
22
  end
@@ -11,7 +11,7 @@ module Rubysmith
11
11
  def call
12
12
  return false unless settings.build_circle_ci
13
13
 
14
- builder.call(settings.merge(template_path: "%project_name%/.circleci/config.yml.erb"))
14
+ builder.call(settings.with(template_path: "%project_name%/.circleci/config.yml.erb"))
15
15
  .render
16
16
  .replace(/\n\n\Z/, "\n")
17
17
 
@@ -11,7 +11,7 @@ module Rubysmith
11
11
  def call
12
12
  return false unless settings.build_console
13
13
 
14
- builder.call(settings.merge(template_path: "%project_name%/bin/console.erb"))
14
+ builder.call(settings.with(template_path: "%project_name%/bin/console.erb"))
15
15
  .render
16
16
  .permit 0o755
17
17
 
@@ -19,7 +19,7 @@ module Rubysmith
19
19
  private
20
20
 
21
21
  def render_implementation
22
- builder.call(settings.merge(template_path: "%project_name%/lib/%project_path%.rb.erb"))
22
+ builder.call(settings.with(template_path: "%project_name%/lib/%project_path%.rb.erb"))
23
23
  .render
24
24
  .replace(" require", "require")
25
25
  .replace(/ (?=(Zeit|loader|end))/, "")
@@ -31,7 +31,7 @@ module Rubysmith
31
31
  return unless settings.build_zeitwerk
32
32
 
33
33
  path = "%project_name%/spec/lib/%project_path%_spec.rb.erb"
34
- builder.call(settings.merge(template_path: path)).render
34
+ builder.call(settings.with(template_path: path)).render
35
35
  end
36
36
 
37
37
  def indentation = ::Core::EMPTY_STRING.indent settings.project_levels
@@ -13,7 +13,7 @@ module Rubysmith
13
13
  return false unless settings.build_devcontainer
14
14
 
15
15
  path = "%project_name%/.devcontainer/compose.yaml.erb"
16
- builder.call(settings.merge(template_path: path)).render
16
+ builder.call(settings.with(template_path: path)).render
17
17
  true
18
18
  end
19
19
  end
@@ -13,7 +13,7 @@ module Rubysmith
13
13
  return false unless settings.build_devcontainer
14
14
 
15
15
  path = "%project_name%/.devcontainer/devcontainer.json.erb"
16
- builder.call(settings.merge(template_path: path)).render
16
+ builder.call(settings.with(template_path: path)).render
17
17
  true
18
18
  end
19
19
  end
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_devcontainer
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/.devcontainer/Dockerfile.erb"))
15
+ builder.call(settings.with(template_path: "%project_name%/.devcontainer/Dockerfile.erb"))
16
16
  .render
17
17
  true
18
18
  end
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_docker
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/bin/docker/build.erb"))
15
+ builder.call(settings.with(template_path: "%project_name%/bin/docker/build.erb"))
16
16
  .render
17
17
  .permit 0o755
18
18
 
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_docker
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/compose.yml.erb")).render
15
+ builder.call(settings.with(template_path: "%project_name%/compose.yml.erb")).render
16
16
  true
17
17
  end
18
18
  end
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_docker
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/bin/docker/console.erb"))
15
+ builder.call(settings.with(template_path: "%project_name%/bin/docker/console.erb"))
16
16
  .render
17
17
  .permit 0o755
18
18
 
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_docker
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/bin/docker/entrypoint.erb"))
15
+ builder.call(settings.with(template_path: "%project_name%/bin/docker/entrypoint.erb"))
16
16
  .render
17
17
  .permit 0o755
18
18
 
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_docker
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/Dockerfile.erb")).render
15
+ builder.call(settings.with(template_path: "%project_name%/Dockerfile.erb")).render
16
16
  true
17
17
  end
18
18
  end
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_docker
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/.dockerignore.erb")).render
15
+ builder.call(settings.with(template_path: "%project_name%/.dockerignore.erb")).render
16
16
  true
17
17
  end
18
18
  end
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_citation
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/CITATION.cff.erb")).render
15
+ builder.call(settings.with(template_path: "%project_name%/CITATION.cff.erb")).render
16
16
  true
17
17
  end
18
18
  end
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_license
14
14
 
15
- settings.merge(template_path: "%project_name%/LICENSE-#{license}.#{kind}.erb")
15
+ settings.with(template_path: "%project_name%/LICENSE-#{license}.#{kind}.erb")
16
16
  .then do |updated_settings|
17
17
  builder.call(updated_settings).render.rename "LICENSE.#{kind}"
18
18
  end
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_readme
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/README.#{kind}.erb"))
15
+ builder.call(settings.with(template_path: "%project_name%/README.#{kind}.erb"))
16
16
  .render
17
17
  .replace(/\n{2,}/, "\n\n")
18
18
  .replace("\n \n", "\n")
@@ -13,7 +13,7 @@ module Rubysmith
13
13
  def call
14
14
  return false unless settings.build_versions
15
15
 
16
- builder.call(settings.merge(template_path: "%project_name%/VERSIONS.#{kind}.erb")).render
16
+ builder.call(settings.with(template_path: "%project_name%/VERSIONS.#{kind}.erb")).render
17
17
 
18
18
  true
19
19
  end
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_git
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/.gitignore.erb"))
15
+ builder.call(settings.with(template_path: "%project_name%/.gitignore.erb"))
16
16
  .render
17
17
  .replace(" ", "")
18
18
 
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_git
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/.git/safe")).make_path
15
+ builder.call(settings.with(template_path: "%project_name%/.git/safe")).make_path
16
16
  true
17
17
  end
18
18
  end
@@ -19,7 +19,7 @@ module Rubysmith
19
19
  private
20
20
 
21
21
  def with_template
22
- settings.merge template_path: "%project_name%/.github/workflows/ci.yml.erb"
22
+ settings.with template_path: "%project_name%/.github/workflows/ci.yml.erb"
23
23
  end
24
24
  end
25
25
  end
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_git_hub && settings.build_funding
14
14
 
15
- settings.merge(template_path: "%project_name%/.github/FUNDING.yml.erb")
15
+ settings.with(template_path: "%project_name%/.github/FUNDING.yml.erb")
16
16
  .then { |updated_configuration| builder.call(updated_configuration).render }
17
17
 
18
18
  true
@@ -21,15 +21,15 @@ module Rubysmith
21
21
  private
22
22
 
23
23
  def with_issue
24
- settings.merge template_path: "%project_name%/.github/ISSUE_TEMPLATE/issue.md.erb"
24
+ settings.with template_path: "%project_name%/.github/ISSUE_TEMPLATE/issue.md.erb"
25
25
  end
26
26
 
27
27
  def with_pull_request
28
- settings.merge template_path: "%project_name%/.github/PULL_REQUEST_TEMPLATE.md.erb"
28
+ settings.with template_path: "%project_name%/.github/PULL_REQUEST_TEMPLATE.md.erb"
29
29
  end
30
30
 
31
31
  def with_configuration
32
- settings.merge template_path: "%project_name%/.github/ISSUE_TEMPLATE/config.yml.erb"
32
+ settings.with template_path: "%project_name%/.github/ISSUE_TEMPLATE/config.yml.erb"
33
33
  end
34
34
  end
35
35
  end
@@ -10,7 +10,7 @@ module Rubysmith
10
10
  using Refinements::Struct
11
11
 
12
12
  def call
13
- builder.call(settings.merge(template_path: "%project_name%")).check
13
+ builder.call(settings.with(template_path: "%project_name%")).check
14
14
  true
15
15
  end
16
16
  end
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_rake
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/bin/rake.erb"))
15
+ builder.call(settings.with(template_path: "%project_name%/bin/rake.erb"))
16
16
  .render
17
17
  .permit 0o755
18
18
 
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_rake
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/Rakefile.erb"))
15
+ builder.call(settings.with(template_path: "%project_name%/Rakefile.erb"))
16
16
  .render
17
17
  .replace(/\[\s+/, "[")
18
18
  .replace(/\s+\]/, "]")
@@ -11,7 +11,7 @@ module Rubysmith
11
11
  def call
12
12
  return false unless settings.build_reek
13
13
 
14
- builder.call(settings.merge(template_path: "%project_name%/.reek.yml.erb")).render
14
+ builder.call(settings.with(template_path: "%project_name%/.reek.yml.erb")).render
15
15
  true
16
16
  end
17
17
  end
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_rspec
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/bin/rspec.erb"))
15
+ builder.call(settings.with(template_path: "%project_name%/bin/rspec.erb"))
16
16
  .render
17
17
  .permit 0o755
18
18
 
@@ -13,7 +13,7 @@ module Rubysmith
13
13
  return false unless settings.build_rspec
14
14
 
15
15
  template = "%project_name%/spec/support/shared_contexts/temp_dir.rb.erb"
16
- settings.merge(template_path: template)
16
+ settings.with(template_path: template)
17
17
  .then { |updated_configuration| builder.call updated_configuration }
18
18
  .render
19
19
  .replace(/\n\s+\n\s+/, "\n ")
@@ -12,7 +12,7 @@ module Rubysmith
12
12
  def call
13
13
  return false unless settings.build_rspec
14
14
 
15
- builder.call(settings.merge(template_path: "%project_name%/spec/spec_helper.rb.erb"))
15
+ builder.call(settings.with(template_path: "%project_name%/spec/spec_helper.rb.erb"))
16
16
  .render
17
17
  .replace(/\A\n/, "")
18
18
  .replace("\n\n\n", "\n\n")
@@ -11,7 +11,7 @@ module Rubysmith
11
11
  def call
12
12
  return false unless settings.build_setup
13
13
 
14
- builder.call(settings.merge(template_path: "%project_name%/bin/setup.erb"))
14
+ builder.call(settings.with(template_path: "%project_name%/bin/setup.erb"))
15
15
  .render
16
16
  .permit 0o755
17
17
 
@@ -9,7 +9,7 @@ module Rubysmith
9
9
  using Refinements::Struct
10
10
 
11
11
  def call
12
- builder.call(settings.merge(template_path: "%project_name%/.ruby-version.erb"))
12
+ builder.call(settings.with(template_path: "%project_name%/.ruby-version.erb"))
13
13
  .render
14
14
  .append("\n")
15
15
  true
@@ -18,7 +18,7 @@ module Rubysmith
18
18
 
19
19
  default { Container[:settings].build_maximum }
20
20
 
21
- def call(*) = settings.merge! settings.maximize
21
+ def call(*) = settings.with! settings.maximize
22
22
  end
23
23
  end
24
24
  end
@@ -18,7 +18,7 @@ module Rubysmith
18
18
 
19
19
  default { Container[:settings].build_minimum }
20
20
 
21
- def call(*) = settings.merge! settings.minimize
21
+ def call(*) = settings.with! settings.minimize
22
22
  end
23
23
  end
24
24
  end
@@ -153,7 +153,7 @@ module Rubysmith
153
153
  def update_build_options value
154
154
  to_h.select { |key, _value| key.start_with? "build_" }
155
155
  .transform_values { value }
156
- .then { |attributes| dup.merge!(**attributes, build_minimum: !value) }
156
+ .then { |attributes| dup.with!(**attributes, build_minimum: !value) }
157
157
  .freeze
158
158
  end
159
159
  end
@@ -9,7 +9,7 @@ source "https://rubygems.org"
9
9
  gem "dry-monads", "~> 1.9"
10
10
  <% end %>
11
11
  <% if settings.build_refinements %>
12
- gem "refinements", "~> 13.3"
12
+ gem "refinements", "~> 13.5"
13
13
  <% end %>
14
14
  <% if settings.build_zeitwerk %>
15
15
  gem "zeitwerk", "~> 2.7"
@@ -1,7 +1,9 @@
1
1
  <% if settings.build_simple_cov %>
2
2
  require "simplecov"
3
3
 
4
- unless ENV["NO_COVERAGE"]
4
+ if ENV["COVERAGE"] == "no"
5
+ puts "SimpleCov skipped due to being disabled."
6
+ else
5
7
  SimpleCov.start do
6
8
  add_filter %r(^/spec/)
7
9
  enable_coverage :branch
@@ -58,4 +60,6 @@ RSpec.configure do |config|
58
60
  <% if settings.build_monads %>
59
61
  config.before(:suite) { Dry::Monads.load_extensions :rspec }
60
62
  <% end %>
63
+
64
+ Kernel.srand config.seed
61
65
  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 = "8.6.0"
5
+ spec.version = "8.7.0"
6
6
  spec.authors = ["Brooke Kuhlmann"]
7
7
  spec.email = ["brooke@alchemists.io"]
8
8
  spec.homepage = "https://alchemists.io/projects/rubysmith"
@@ -31,7 +31,7 @@ Gem::Specification.new do |spec|
31
31
  spec.add_dependency "gitt", "~> 4.1"
32
32
  spec.add_dependency "infusible", "~> 4.0"
33
33
  spec.add_dependency "pragmater", "~> 16.0"
34
- spec.add_dependency "refinements", "~> 13.3"
34
+ spec.add_dependency "refinements", "~> 13.5"
35
35
  spec.add_dependency "rubocop", "~> 1.77"
36
36
  spec.add_dependency "runcom", "~> 12.0"
37
37
  spec.add_dependency "sod", "~> 1.0"
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: 8.6.0
4
+ version: 8.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brooke Kuhlmann
@@ -153,14 +153,14 @@ dependencies:
153
153
  requirements:
154
154
  - - "~>"
155
155
  - !ruby/object:Gem::Version
156
- version: '13.3'
156
+ version: '13.5'
157
157
  type: :runtime
158
158
  prerelease: false
159
159
  version_requirements: !ruby/object:Gem::Requirement
160
160
  requirements:
161
161
  - - "~>"
162
162
  - !ruby/object:Gem::Version
163
- version: '13.3'
163
+ version: '13.5'
164
164
  - !ruby/object:Gem::Dependency
165
165
  name: rubocop
166
166
  requirement: !ruby/object:Gem::Requirement
metadata.gz.sig CHANGED
Binary file