gemsmith 19.8.0 → 20.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/README.adoc +28 -52
- data/gemsmith.gemspec +12 -9
- data/lib/gemsmith/builders/cli.rb +6 -25
- data/lib/gemsmith/builders/rspec/helper.rb +3 -16
- data/lib/gemsmith/cli/actions/cli.rb +22 -0
- data/lib/gemsmith/cli/actions/edit.rb +9 -4
- data/lib/gemsmith/cli/actions/install.rb +17 -6
- data/lib/gemsmith/cli/actions/publish.rb +17 -6
- data/lib/gemsmith/cli/actions/view.rb +9 -4
- data/lib/gemsmith/cli/commands/build.rb +106 -0
- data/lib/gemsmith/cli/shell.rb +28 -32
- data/lib/gemsmith/container.rb +29 -5
- data/lib/gemsmith/templates/%project_name%/%project_name%.gemspec.erb +13 -7
- data/lib/gemsmith/templates/%project_name%/lib/%project_path%/cli/shell.rb.erb +18 -15
- data/lib/gemsmith/templates/%project_name%/lib/%project_path%/configuration/contract.rb.erb +9 -0
- data/lib/gemsmith/templates/%project_name%/lib/%project_path%/configuration/model.rb.erb +6 -0
- data/lib/gemsmith/templates/%project_name%/lib/%project_path%/container.rb.erb +14 -1
- data/lib/gemsmith/templates/%project_name%/spec/lib/%project_path%/cli/shell_spec.rb.erb +8 -23
- data/lib/gemsmith/templates/%project_name%/spec/support/shared_contexts/application_dependencies.rb.erb +5 -7
- data/lib/gemsmith/tools/versioner.rb +8 -8
- data.tar.gz.sig +0 -0
- metadata +65 -40
- metadata.gz.sig +0 -0
- data/lib/gemsmith/cli/actions/build.rb +0 -68
- data/lib/gemsmith/cli/actions/config.rb +0 -33
- data/lib/gemsmith/cli/actions/container.rb +0 -23
- data/lib/gemsmith/cli/actions/import.rb +0 -11
- data/lib/gemsmith/cli/parser.rb +0 -37
- data/lib/gemsmith/cli/parsers/build.rb +0 -53
- data/lib/gemsmith/cli/parsers/core.rb +0 -93
- data/lib/gemsmith/configuration/loader.rb +0 -27
- data/lib/gemsmith/templates/%project_name%/lib/%project_path%/cli/actions/config.rb.erb +0 -31
- data/lib/gemsmith/templates/%project_name%/lib/%project_path%/cli/actions/container.rb.erb +0 -16
- data/lib/gemsmith/templates/%project_name%/lib/%project_path%/cli/actions/import.rb.erb +0 -9
- data/lib/gemsmith/templates/%project_name%/lib/%project_path%/cli/parser.rb.erb +0 -35
- data/lib/gemsmith/templates/%project_name%/lib/%project_path%/cli/parsers/core.rb.erb +0 -58
- data/lib/gemsmith/templates/%project_name%/lib/%project_path%/configuration/content.rb.erb +0 -18
- data/lib/gemsmith/templates/%project_name%/lib/%project_path%/configuration/loader.rb.erb +0 -33
- data/lib/gemsmith/templates/%project_name%/spec/lib/%project_path%/cli/actions/config_spec.rb.erb +0 -24
- data/lib/gemsmith/templates/%project_name%/spec/lib/%project_path%/cli/parser_spec.rb.erb +0 -25
- data/lib/gemsmith/templates/%project_name%/spec/lib/%project_path%/cli/parsers/core_spec.rb.erb +0 -53
- data/lib/gemsmith/templates/%project_name%/spec/lib/%project_path%/configuration/content_spec.rb.erb +0 -15
- data/lib/gemsmith/templates/%project_name%/spec/lib/%project_path%/configuration/loader_spec.rb.erb +0 -29
- data/lib/gemsmith/templates/%project_name%/spec/support/shared_examples/a_parser.rb.erb +0 -7
data/lib/gemsmith/cli/shell.rb
CHANGED
@@ -1,50 +1,46 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require "
|
3
|
+
require "sod"
|
4
4
|
|
5
5
|
module Gemsmith
|
6
6
|
module CLI
|
7
7
|
# The main Command Line Interface (CLI) object.
|
8
8
|
class Shell
|
9
|
-
include
|
10
|
-
|
11
|
-
|
12
|
-
:edit,
|
13
|
-
:install,
|
14
|
-
:kernel,
|
15
|
-
:logger,
|
16
|
-
:publish,
|
17
|
-
:specification,
|
18
|
-
:view
|
19
|
-
]
|
20
|
-
|
21
|
-
def initialize(parser: Parser.new, **)
|
9
|
+
include Import[:defaults_path, :xdg_config, :specification]
|
10
|
+
|
11
|
+
def initialize(context: Sod::Context, dsl: Sod, **)
|
22
12
|
super(**)
|
23
|
-
@
|
13
|
+
@context = context
|
14
|
+
@dsl = dsl
|
24
15
|
end
|
25
16
|
|
26
|
-
def call
|
27
|
-
act_on parser.call(arguments)
|
28
|
-
rescue OptionParser::ParseError => error
|
29
|
-
logger.error { error.message }
|
30
|
-
end
|
17
|
+
def call(...) = cli.call(...)
|
31
18
|
|
32
19
|
private
|
33
20
|
|
34
|
-
attr_reader :
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
21
|
+
attr_reader :context, :dsl
|
22
|
+
|
23
|
+
# :reek:TooManyStatements
|
24
|
+
# rubocop:todo Metrics/MethodLength
|
25
|
+
def cli
|
26
|
+
context = build_context
|
27
|
+
|
28
|
+
dsl.new :gemsmith, banner: specification.banner do
|
29
|
+
on(Sod::Prefabs::Commands::Config, context:)
|
30
|
+
on Commands::Build
|
31
|
+
on Actions::Install
|
32
|
+
on Actions::Publish
|
33
|
+
on Actions::Edit
|
34
|
+
on Actions::View
|
35
|
+
on(Sod::Prefabs::Actions::Version, context:)
|
36
|
+
on Sod::Prefabs::Actions::Help, self
|
46
37
|
end
|
47
38
|
end
|
39
|
+
# rubocop:enable Metrics/MethodLength
|
40
|
+
|
41
|
+
def build_context
|
42
|
+
context[defaults_path:, xdg_config:, version_label: specification.labeled_version]
|
43
|
+
end
|
48
44
|
end
|
49
45
|
end
|
50
46
|
end
|
data/lib/gemsmith/container.rb
CHANGED
@@ -1,7 +1,10 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require "
|
3
|
+
require "cogger"
|
4
|
+
require "dry-container"
|
5
|
+
require "etcher"
|
4
6
|
require "open3"
|
7
|
+
require "runcom"
|
5
8
|
require "spek"
|
6
9
|
|
7
10
|
module Gemsmith
|
@@ -9,15 +12,36 @@ module Gemsmith
|
|
9
12
|
module Container
|
10
13
|
extend Dry::Container::Mixin
|
11
14
|
|
12
|
-
|
13
|
-
|
15
|
+
register :configuration do
|
16
|
+
self[:defaults].add_loader(Etcher::Loaders::YAML.new(self[:xdg_config].active))
|
17
|
+
.then { |registry| Etcher.call registry }
|
18
|
+
end
|
14
19
|
|
15
|
-
|
20
|
+
register :defaults do
|
21
|
+
registry = Etcher::Registry.new contract: Rubysmith::Configuration::Contract,
|
22
|
+
model: Rubysmith::Configuration::Model
|
16
23
|
|
17
|
-
|
24
|
+
registry.add_loader(Etcher::Loaders::YAML.new(self[:defaults_path]))
|
25
|
+
.add_transformer(Rubysmith::Configuration::Transformers::CurrentTime)
|
26
|
+
.add_transformer(Rubysmith::Configuration::Transformers::GitHubUser.new)
|
27
|
+
.add_transformer(Rubysmith::Configuration::Transformers::GitEmail.new)
|
28
|
+
.add_transformer(Rubysmith::Configuration::Transformers::GitUser.new)
|
29
|
+
.add_transformer(Rubysmith::Configuration::Transformers::TemplateRoot.new)
|
30
|
+
.add_transformer(
|
31
|
+
Rubysmith::Configuration::Transformers::TemplateRoot.new(
|
32
|
+
Pathname(__dir__).join("templates")
|
33
|
+
)
|
34
|
+
)
|
35
|
+
.add_transformer(Rubysmith::Configuration::Transformers::TargetRoot)
|
36
|
+
end
|
37
|
+
|
38
|
+
register(:input, memoize: true) { self[:configuration].dup }
|
39
|
+
register(:defaults_path) { Rubysmith::Container[:defaults_path] }
|
40
|
+
register(:xdg_config) { Runcom::Config.new "gemsmith/configuration.yml" }
|
18
41
|
register(:specification) { Spek::Loader.call "#{__dir__}/../../gemsmith.gemspec" }
|
19
42
|
register(:environment) { ENV }
|
20
43
|
register(:executor) { Open3 }
|
21
44
|
register(:kernel) { Kernel }
|
45
|
+
register(:logger) { Cogger.new formatter: :emoji }
|
22
46
|
end
|
23
47
|
end
|
@@ -36,25 +36,31 @@ Gem::Specification.new do |spec|
|
|
36
36
|
|
37
37
|
spec.required_ruby_version = "~> <%= RUBY_VERSION[/\d+\.\d+/] %>"
|
38
38
|
<% if configuration.build_cli %>
|
39
|
-
spec.add_dependency "cogger", "~> 0.
|
39
|
+
spec.add_dependency "cogger", "~> 0.10"
|
40
40
|
<% end %>
|
41
41
|
<% if configuration.build_cli %>
|
42
|
-
spec.add_dependency "
|
42
|
+
spec.add_dependency "dry-container", "~> 0.11"
|
43
43
|
<% end %>
|
44
44
|
<% if configuration.build_cli %>
|
45
|
-
spec.add_dependency "dry-
|
45
|
+
spec.add_dependency "dry-monads", "~> 1.6"
|
46
|
+
<% end %>
|
47
|
+
<% if configuration.build_cli %>
|
48
|
+
spec.add_dependency "etcher", "~> 0.2"
|
46
49
|
<% end %>
|
47
50
|
<% if configuration.build_cli %>
|
48
|
-
spec.add_dependency "infusible", "~>
|
51
|
+
spec.add_dependency "infusible", "~> 2.0"
|
49
52
|
<% end %>
|
50
53
|
<% if configuration.build_refinements %>
|
51
|
-
spec.add_dependency "refinements", "~>
|
54
|
+
spec.add_dependency "refinements", "~> 11.0"
|
55
|
+
<% end %>
|
56
|
+
<% if configuration.build_cli %>
|
57
|
+
spec.add_dependency "runcom", "~> 10.0"
|
52
58
|
<% end %>
|
53
59
|
<% if configuration.build_cli %>
|
54
|
-
spec.add_dependency "
|
60
|
+
spec.add_dependency "sod", "~> 0.0"
|
55
61
|
<% end %>
|
56
62
|
<% if configuration.build_cli %>
|
57
|
-
spec.add_dependency "spek", "~>
|
63
|
+
spec.add_dependency "spek", "~> 2.0"
|
58
64
|
<% end %>
|
59
65
|
<% if configuration.build_zeitwerk %>
|
60
66
|
spec.add_dependency "zeitwerk", "~> 2.6"
|
@@ -1,33 +1,36 @@
|
|
1
|
-
require "
|
1
|
+
require "sod"
|
2
2
|
|
3
3
|
<% namespace do %>
|
4
4
|
module CLI
|
5
5
|
# The main Command Line Interface (CLI) object.
|
6
6
|
class Shell
|
7
|
-
include
|
7
|
+
include Import[:defaults_path, :xdg_config, :specification]
|
8
8
|
|
9
|
-
def initialize(
|
9
|
+
def initialize(context: Sod::Context, dsl: Sod, **)
|
10
10
|
super(**)
|
11
|
-
@
|
11
|
+
@context = context
|
12
|
+
@dsl = dsl
|
12
13
|
end
|
13
14
|
|
14
|
-
def call
|
15
|
-
act_on parser.call(arguments)
|
16
|
-
rescue OptionParser::ParseError => error
|
17
|
-
logger.error { error.message }
|
18
|
-
end
|
15
|
+
def call(...) = cli.call(...)
|
19
16
|
|
20
17
|
private
|
21
18
|
|
22
|
-
attr_reader :
|
19
|
+
attr_reader :context, :dsl
|
20
|
+
|
21
|
+
def cli
|
22
|
+
context = build_context
|
23
23
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
else kernel.puts parser.to_s
|
24
|
+
dsl.new <%= configuration.project_levels.positive? ? configuration.project_name.inspect : configuration.project_name.to_sym.inspect %>, banner: specification.banner do
|
25
|
+
on(Sod::Prefabs::Commands::Config, context:)
|
26
|
+
on(Sod::Prefabs::Actions::Version, context:)
|
27
|
+
on Sod::Prefabs::Actions::Help, self
|
29
28
|
end
|
30
29
|
end
|
30
|
+
|
31
|
+
def build_context
|
32
|
+
context[defaults_path:, xdg_config:, version_label: specification.labeled_version]
|
33
|
+
end
|
31
34
|
end
|
32
35
|
end
|
33
36
|
<% end %>
|
@@ -1,5 +1,7 @@
|
|
1
1
|
require "cogger"
|
2
2
|
require "dry/container"
|
3
|
+
require "etcher"
|
4
|
+
require "runcom"
|
3
5
|
require "spek"
|
4
6
|
|
5
7
|
<% namespace do %>
|
@@ -7,7 +9,18 @@ require "spek"
|
|
7
9
|
module Container
|
8
10
|
extend Dry::Container::Mixin
|
9
11
|
|
10
|
-
register
|
12
|
+
register :configuration do
|
13
|
+
self[:defaults].add_loader(Etcher::Loaders::YAML.new(self[:xdg_config].active))
|
14
|
+
.then { |registry| Etcher.call registry }
|
15
|
+
end
|
16
|
+
|
17
|
+
register :defaults do
|
18
|
+
Etcher::Registry.new(contract: Configuration::Contract, model: Configuration::Model)
|
19
|
+
.add_loader(Etcher::Loaders::YAML.new(self[:defaults_path]))
|
20
|
+
end
|
21
|
+
|
22
|
+
register(:defaults_path) { Pathname(__dir__).join("configuration/defaults.yml") }
|
23
|
+
register(:xdg_config) { Runcom::Config.new "<%= configuration.project_path %>/configuration.yml" }
|
11
24
|
register(:specification) { Spek::Loader.call "#{__dir__}/<%= Array.new(2 + configuration.project_levels, "../").join %><%= configuration.project_name %>.gemspec" }
|
12
25
|
register(:kernel) { Kernel }
|
13
26
|
register(:logger) { Cogger.new formatter: :emoji }
|
@@ -8,39 +8,24 @@ RSpec.describe <%= configuration.project_namespaced_class %>::CLI::Shell do
|
|
8
8
|
|
9
9
|
include_context "with application dependencies"
|
10
10
|
|
11
|
-
before {
|
11
|
+
before { Sod::Import.stub kernel:, logger: }
|
12
12
|
|
13
|
-
after {
|
13
|
+
after { Sod::Import.unstub :kernel, :logger }
|
14
14
|
|
15
15
|
describe "#call" do
|
16
|
-
it "
|
17
|
-
shell.call %w[
|
18
|
-
expect(kernel).to have_received(:
|
19
|
-
end
|
20
|
-
|
21
|
-
it "views configuration" do
|
22
|
-
shell.call %w[--config view]
|
23
|
-
expect(kernel).to have_received(:system).with("cat ")
|
16
|
+
it "prints configuration usage" do
|
17
|
+
shell.call %w[config]
|
18
|
+
expect(kernel).to have_received(:puts).with(/Manage configuration.+/m)
|
24
19
|
end
|
25
20
|
|
26
21
|
it "prints version" do
|
27
22
|
shell.call %w[--version]
|
28
|
-
expect(kernel).to have_received(:puts).with(/<%= configuration.project_label %>\s\d+\.\d+\.\d+/)
|
23
|
+
expect(kernel).to have_received(:puts).with(/<%= configuration.project_label.gsub(" ", "\\s") %>\s\d+\.\d+\.\d+/)
|
29
24
|
end
|
30
25
|
|
31
|
-
it "prints help
|
26
|
+
it "prints help" do
|
32
27
|
shell.call %w[--help]
|
33
|
-
expect(kernel).to have_received(:puts).with(/<%= configuration.project_label %>.+USAGE.+/m)
|
34
|
-
end
|
35
|
-
|
36
|
-
it "prints usage when no options are given" do
|
37
|
-
shell.call
|
38
|
-
expect(kernel).to have_received(:puts).with(/<%= configuration.project_label %>.+USAGE.+/m)
|
39
|
-
end
|
40
|
-
|
41
|
-
it "prints error with invalid option" do
|
42
|
-
shell.call %w[--bogus]
|
43
|
-
expect(logger.reread).to match(/🛑.+invalid option.+bogus/)
|
28
|
+
expect(kernel).to have_received(:puts).with(/<%= configuration.project_label.gsub(" ", "\\s") %>.+USAGE.+/m)
|
44
29
|
end
|
45
30
|
end
|
46
31
|
end
|
@@ -2,16 +2,14 @@ require "dry/container/stub"
|
|
2
2
|
require "infusible/stub"
|
3
3
|
|
4
4
|
RSpec.shared_context "with application dependencies" do
|
5
|
-
using Refinements::Structs
|
6
5
|
using Infusible::Stub
|
7
6
|
|
8
|
-
|
9
|
-
|
10
|
-
let(:configuration) { <%= configuration.project_namespaced_class %>::Configuration::Loader.with_defaults.call }
|
7
|
+
let(:configuration) { Etcher.new(<%= configuration.project_namespaced_class %>::Container[:defaults]).call.bind(&:dup) }
|
8
|
+
let(:xdg_config) { Runcom::Config.new <%= configuration.project_namespaced_class %>::Container[:defaults_path] }
|
11
9
|
let(:kernel) { class_spy Kernel }
|
12
|
-
let(:logger) { Cogger.new io: StringIO.new, formatter: :emoji }
|
10
|
+
let(:logger) { Cogger.new io: StringIO.new, level: :debug, formatter: :emoji }
|
13
11
|
|
14
|
-
before { <%= configuration.project_namespaced_class %>::Import.stub configuration:, kernel:, logger: }
|
12
|
+
before { <%= configuration.project_namespaced_class %>::Import.stub configuration:, xdg_config:, kernel:, logger: }
|
15
13
|
|
16
|
-
after { <%= configuration.project_namespaced_class %>::Import.unstub :configuration, :kernel, :logger }
|
14
|
+
after { <%= configuration.project_namespaced_class %>::Import.unstub :configuration, :xdg_config, :kernel, :logger }
|
17
15
|
end
|
@@ -5,23 +5,23 @@ require "milestoner"
|
|
5
5
|
|
6
6
|
module Gemsmith
|
7
7
|
module Tools
|
8
|
-
# Versions (tags
|
8
|
+
# Versions (tags: local and remote) current project.
|
9
9
|
class Versioner
|
10
10
|
include Import[:configuration]
|
11
11
|
include Dry::Monads[:result]
|
12
12
|
|
13
13
|
def initialize(
|
14
|
-
|
15
|
-
|
14
|
+
publisher: Milestoner::Tags::Publisher.new,
|
15
|
+
model: Milestoner::Configuration::Model,
|
16
16
|
**
|
17
17
|
)
|
18
18
|
super(**)
|
19
|
-
@
|
20
|
-
@
|
19
|
+
@publisher = publisher
|
20
|
+
@model = model
|
21
21
|
end
|
22
22
|
|
23
23
|
def call specification
|
24
|
-
|
24
|
+
publisher.call settings(specification)
|
25
25
|
Success specification
|
26
26
|
rescue Milestoner::Error => error
|
27
27
|
Failure error.message
|
@@ -29,10 +29,10 @@ module Gemsmith
|
|
29
29
|
|
30
30
|
private
|
31
31
|
|
32
|
-
attr_reader :
|
32
|
+
attr_reader :publisher, :model
|
33
33
|
|
34
34
|
def settings specification
|
35
|
-
|
35
|
+
model[
|
36
36
|
documentation_format: configuration.extensions_milestoner_documentation_format,
|
37
37
|
prefixes: configuration.extensions_milestoner_prefixes,
|
38
38
|
version: specification.version
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gemsmith
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 20.0.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: 2023-
|
38
|
+
date: 2023-06-18 00:00:00.000000000 Z
|
39
39
|
dependencies:
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: cogger
|
@@ -43,14 +43,14 @@ dependencies:
|
|
43
43
|
requirements:
|
44
44
|
- - "~>"
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: '0.
|
46
|
+
version: '0.10'
|
47
47
|
type: :runtime
|
48
48
|
prerelease: false
|
49
49
|
version_requirements: !ruby/object:Gem::Requirement
|
50
50
|
requirements:
|
51
51
|
- - "~>"
|
52
52
|
- !ruby/object:Gem::Version
|
53
|
-
version: '0.
|
53
|
+
version: '0.10'
|
54
54
|
- !ruby/object:Gem::Dependency
|
55
55
|
name: core
|
56
56
|
requirement: !ruby/object:Gem::Requirement
|
@@ -93,104 +93,146 @@ dependencies:
|
|
93
93
|
- - "~>"
|
94
94
|
- !ruby/object:Gem::Version
|
95
95
|
version: '1.6'
|
96
|
+
- !ruby/object:Gem::Dependency
|
97
|
+
name: dry-schema
|
98
|
+
requirement: !ruby/object:Gem::Requirement
|
99
|
+
requirements:
|
100
|
+
- - "~>"
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
version: '1.13'
|
103
|
+
type: :runtime
|
104
|
+
prerelease: false
|
105
|
+
version_requirements: !ruby/object:Gem::Requirement
|
106
|
+
requirements:
|
107
|
+
- - "~>"
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '1.13'
|
110
|
+
- !ruby/object:Gem::Dependency
|
111
|
+
name: etcher
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
113
|
+
requirements:
|
114
|
+
- - "~>"
|
115
|
+
- !ruby/object:Gem::Version
|
116
|
+
version: '0.2'
|
117
|
+
type: :runtime
|
118
|
+
prerelease: false
|
119
|
+
version_requirements: !ruby/object:Gem::Requirement
|
120
|
+
requirements:
|
121
|
+
- - "~>"
|
122
|
+
- !ruby/object:Gem::Version
|
123
|
+
version: '0.2'
|
96
124
|
- !ruby/object:Gem::Dependency
|
97
125
|
name: infusible
|
98
126
|
requirement: !ruby/object:Gem::Requirement
|
99
127
|
requirements:
|
100
128
|
- - "~>"
|
101
129
|
- !ruby/object:Gem::Version
|
102
|
-
version: '
|
130
|
+
version: '2.0'
|
103
131
|
type: :runtime
|
104
132
|
prerelease: false
|
105
133
|
version_requirements: !ruby/object:Gem::Requirement
|
106
134
|
requirements:
|
107
135
|
- - "~>"
|
108
136
|
- !ruby/object:Gem::Version
|
109
|
-
version: '
|
137
|
+
version: '2.0'
|
110
138
|
- !ruby/object:Gem::Dependency
|
111
139
|
name: milestoner
|
112
140
|
requirement: !ruby/object:Gem::Requirement
|
113
141
|
requirements:
|
114
142
|
- - "~>"
|
115
143
|
- !ruby/object:Gem::Version
|
116
|
-
version: '
|
144
|
+
version: '16.0'
|
117
145
|
type: :runtime
|
118
146
|
prerelease: false
|
119
147
|
version_requirements: !ruby/object:Gem::Requirement
|
120
148
|
requirements:
|
121
149
|
- - "~>"
|
122
150
|
- !ruby/object:Gem::Version
|
123
|
-
version: '
|
151
|
+
version: '16.0'
|
124
152
|
- !ruby/object:Gem::Dependency
|
125
153
|
name: refinements
|
126
154
|
requirement: !ruby/object:Gem::Requirement
|
127
155
|
requirements:
|
128
156
|
- - "~>"
|
129
157
|
- !ruby/object:Gem::Version
|
130
|
-
version: '
|
158
|
+
version: '11.0'
|
131
159
|
type: :runtime
|
132
160
|
prerelease: false
|
133
161
|
version_requirements: !ruby/object:Gem::Requirement
|
134
162
|
requirements:
|
135
163
|
- - "~>"
|
136
164
|
- !ruby/object:Gem::Version
|
137
|
-
version: '
|
165
|
+
version: '11.0'
|
138
166
|
- !ruby/object:Gem::Dependency
|
139
167
|
name: rubysmith
|
140
168
|
requirement: !ruby/object:Gem::Requirement
|
141
169
|
requirements:
|
142
170
|
- - "~>"
|
143
171
|
- !ruby/object:Gem::Version
|
144
|
-
version: '
|
172
|
+
version: '5.1'
|
145
173
|
type: :runtime
|
146
174
|
prerelease: false
|
147
175
|
version_requirements: !ruby/object:Gem::Requirement
|
148
176
|
requirements:
|
149
177
|
- - "~>"
|
150
178
|
- !ruby/object:Gem::Version
|
151
|
-
version: '
|
179
|
+
version: '5.1'
|
152
180
|
- !ruby/object:Gem::Dependency
|
153
181
|
name: runcom
|
154
182
|
requirement: !ruby/object:Gem::Requirement
|
155
183
|
requirements:
|
156
184
|
- - "~>"
|
157
185
|
- !ruby/object:Gem::Version
|
158
|
-
version: '
|
186
|
+
version: '10.0'
|
187
|
+
type: :runtime
|
188
|
+
prerelease: false
|
189
|
+
version_requirements: !ruby/object:Gem::Requirement
|
190
|
+
requirements:
|
191
|
+
- - "~>"
|
192
|
+
- !ruby/object:Gem::Version
|
193
|
+
version: '10.0'
|
194
|
+
- !ruby/object:Gem::Dependency
|
195
|
+
name: sod
|
196
|
+
requirement: !ruby/object:Gem::Requirement
|
197
|
+
requirements:
|
198
|
+
- - "~>"
|
199
|
+
- !ruby/object:Gem::Version
|
200
|
+
version: '0.0'
|
159
201
|
type: :runtime
|
160
202
|
prerelease: false
|
161
203
|
version_requirements: !ruby/object:Gem::Requirement
|
162
204
|
requirements:
|
163
205
|
- - "~>"
|
164
206
|
- !ruby/object:Gem::Version
|
165
|
-
version: '
|
207
|
+
version: '0.0'
|
166
208
|
- !ruby/object:Gem::Dependency
|
167
209
|
name: spek
|
168
210
|
requirement: !ruby/object:Gem::Requirement
|
169
211
|
requirements:
|
170
212
|
- - "~>"
|
171
213
|
- !ruby/object:Gem::Version
|
172
|
-
version: '
|
214
|
+
version: '2.0'
|
173
215
|
type: :runtime
|
174
216
|
prerelease: false
|
175
217
|
version_requirements: !ruby/object:Gem::Requirement
|
176
218
|
requirements:
|
177
219
|
- - "~>"
|
178
220
|
- !ruby/object:Gem::Version
|
179
|
-
version: '
|
221
|
+
version: '2.0'
|
180
222
|
- !ruby/object:Gem::Dependency
|
181
223
|
name: versionaire
|
182
224
|
requirement: !ruby/object:Gem::Requirement
|
183
225
|
requirements:
|
184
226
|
- - "~>"
|
185
227
|
- !ruby/object:Gem::Version
|
186
|
-
version: '
|
228
|
+
version: '12.0'
|
187
229
|
type: :runtime
|
188
230
|
prerelease: false
|
189
231
|
version_requirements: !ruby/object:Gem::Requirement
|
190
232
|
requirements:
|
191
233
|
- - "~>"
|
192
234
|
- !ruby/object:Gem::Version
|
193
|
-
version: '
|
235
|
+
version: '12.0'
|
194
236
|
- !ruby/object:Gem::Dependency
|
195
237
|
name: zeitwerk
|
196
238
|
requirement: !ruby/object:Gem::Requirement
|
@@ -228,43 +270,26 @@ files:
|
|
228
270
|
- lib/gemsmith/builders/git/ignore.rb
|
229
271
|
- lib/gemsmith/builders/rspec/helper.rb
|
230
272
|
- lib/gemsmith/builders/specification.rb
|
231
|
-
- lib/gemsmith/cli/actions/
|
232
|
-
- lib/gemsmith/cli/actions/config.rb
|
233
|
-
- lib/gemsmith/cli/actions/container.rb
|
273
|
+
- lib/gemsmith/cli/actions/cli.rb
|
234
274
|
- lib/gemsmith/cli/actions/edit.rb
|
235
|
-
- lib/gemsmith/cli/actions/import.rb
|
236
275
|
- lib/gemsmith/cli/actions/install.rb
|
237
276
|
- lib/gemsmith/cli/actions/publish.rb
|
238
277
|
- lib/gemsmith/cli/actions/view.rb
|
239
|
-
- lib/gemsmith/cli/
|
240
|
-
- lib/gemsmith/cli/parsers/build.rb
|
241
|
-
- lib/gemsmith/cli/parsers/core.rb
|
278
|
+
- lib/gemsmith/cli/commands/build.rb
|
242
279
|
- lib/gemsmith/cli/shell.rb
|
243
|
-
- lib/gemsmith/configuration/loader.rb
|
244
280
|
- lib/gemsmith/container.rb
|
245
281
|
- lib/gemsmith/import.rb
|
246
282
|
- lib/gemsmith/templates/%project_name%/%project_name%.gemspec.erb
|
247
283
|
- lib/gemsmith/templates/%project_name%/exe/%project_name%.erb
|
248
|
-
- lib/gemsmith/templates/%project_name%/lib/%project_path%/cli/actions/config.rb.erb
|
249
|
-
- lib/gemsmith/templates/%project_name%/lib/%project_path%/cli/actions/container.rb.erb
|
250
|
-
- lib/gemsmith/templates/%project_name%/lib/%project_path%/cli/actions/import.rb.erb
|
251
|
-
- lib/gemsmith/templates/%project_name%/lib/%project_path%/cli/parser.rb.erb
|
252
|
-
- lib/gemsmith/templates/%project_name%/lib/%project_path%/cli/parsers/core.rb.erb
|
253
284
|
- lib/gemsmith/templates/%project_name%/lib/%project_path%/cli/shell.rb.erb
|
254
|
-
- lib/gemsmith/templates/%project_name%/lib/%project_path%/configuration/
|
285
|
+
- lib/gemsmith/templates/%project_name%/lib/%project_path%/configuration/contract.rb.erb
|
255
286
|
- lib/gemsmith/templates/%project_name%/lib/%project_path%/configuration/defaults.yml.erb
|
256
|
-
- lib/gemsmith/templates/%project_name%/lib/%project_path%/configuration/
|
287
|
+
- lib/gemsmith/templates/%project_name%/lib/%project_path%/configuration/model.rb.erb
|
257
288
|
- lib/gemsmith/templates/%project_name%/lib/%project_path%/container.rb.erb
|
258
289
|
- lib/gemsmith/templates/%project_name%/lib/%project_path%/identity.rb.erb
|
259
290
|
- lib/gemsmith/templates/%project_name%/lib/%project_path%/import.rb.erb
|
260
|
-
- lib/gemsmith/templates/%project_name%/spec/lib/%project_path%/cli/actions/config_spec.rb.erb
|
261
|
-
- lib/gemsmith/templates/%project_name%/spec/lib/%project_path%/cli/parser_spec.rb.erb
|
262
|
-
- lib/gemsmith/templates/%project_name%/spec/lib/%project_path%/cli/parsers/core_spec.rb.erb
|
263
291
|
- lib/gemsmith/templates/%project_name%/spec/lib/%project_path%/cli/shell_spec.rb.erb
|
264
|
-
- lib/gemsmith/templates/%project_name%/spec/lib/%project_path%/configuration/content_spec.rb.erb
|
265
|
-
- lib/gemsmith/templates/%project_name%/spec/lib/%project_path%/configuration/loader_spec.rb.erb
|
266
292
|
- lib/gemsmith/templates/%project_name%/spec/support/shared_contexts/application_dependencies.rb.erb
|
267
|
-
- lib/gemsmith/templates/%project_name%/spec/support/shared_examples/a_parser.rb.erb
|
268
293
|
- lib/gemsmith/tools/cleaner.rb
|
269
294
|
- lib/gemsmith/tools/editor.rb
|
270
295
|
- lib/gemsmith/tools/installer.rb
|
@@ -300,7 +325,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
300
325
|
- !ruby/object:Gem::Version
|
301
326
|
version: '0'
|
302
327
|
requirements: []
|
303
|
-
rubygems_version: 3.4.
|
328
|
+
rubygems_version: 3.4.14
|
304
329
|
signing_key:
|
305
330
|
specification_version: 4
|
306
331
|
summary: A command line interface for smithing Ruby gems.
|
metadata.gz.sig
CHANGED
Binary file
|