rubysmith 2.0.2 → 3.0.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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/README.adoc +10 -15
- data/lib/rubysmith/builder.rb +5 -5
- data/lib/rubysmith/cli/actions/config.rb +5 -7
- data/lib/rubysmith/cli/actions/container.rb +22 -0
- data/lib/rubysmith/cli/actions/import.rb +11 -0
- data/lib/rubysmith/cli/actions/publish.rb +2 -3
- data/lib/rubysmith/cli/parser.rb +8 -5
- data/lib/rubysmith/cli/parsers/build.rb +5 -14
- data/lib/rubysmith/cli/parsers/core.rb +5 -5
- data/lib/rubysmith/cli/shell.rb +8 -25
- data/lib/rubysmith/configuration/content.rb +0 -2
- data/lib/rubysmith/configuration/defaults.yml +1 -3
- data/lib/rubysmith/container.rb +3 -23
- data/lib/rubysmith/extensions/milestoner.rb +0 -1
- data/lib/rubysmith/import.rb +7 -0
- data/lib/rubysmith/templates/%project_name%/Gemfile.erb +3 -6
- data/rubysmith.gemspec +8 -6
- data.tar.gz.sig +0 -0
- metadata +54 -23
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 498ee3f9f5f3072d03d5029af0580c17deef5e06ceb870124c9f6c3db4fe199c
|
|
4
|
+
data.tar.gz: 254ab76924f0b080f71fc5f8de68d53f1d4f1f6e714da767ad9c2a5f3de18176
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 646599b1f334d412c8c2b3c3e34e4dda24d33210019be03b057e1136e85549d6a37c501ff3e6d2daacd0338e2c4f00c50db09806b8f0c37e1dfb559397b32476
|
|
7
|
+
data.tar.gz: 7a4b16ed0990449dde1b68bc807c4f4b2690f81cc8f7287753a01124a9dd199c2c0a6952126118bbd6d091f445f8293e4ce186fb813aea49b11d179331c4238a
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
data/README.adoc
CHANGED
|
@@ -9,9 +9,10 @@ Rubysmith is a command line interface for smithing Ruby projects.
|
|
|
9
9
|
This gem is useful in situations in which you need something more sophisticated than a
|
|
10
10
|
link:https://bundler.io/guides/bundler_in_a_single_file_ruby_script.html[Bundler Inline] script but
|
|
11
11
|
less than a link:https://www.alchemists.io/projects/gemsmith[Gemsmith] gem. Rubysmith is the
|
|
12
|
-
foundation of Gemsmith and provides
|
|
13
|
-
for pure Ruby projects. Again, this is a great tool for spiking quick Ruby implementations,
|
|
14
|
-
code snippets with others, or building full blown Ruby projects for collaboration with
|
|
12
|
+
foundation of Gemsmith and provides much of the same functionality as Gemsmith but is solely
|
|
13
|
+
tailored for pure Ruby projects. Again, this is a great tool for spiking quick Ruby implementations,
|
|
14
|
+
sharing code snippets with others, or building full blown Ruby projects for collaboration with
|
|
15
|
+
others.
|
|
15
16
|
|
|
16
17
|
toc::[]
|
|
17
18
|
|
|
@@ -26,7 +27,6 @@ toc::[]
|
|
|
26
27
|
* Supports link:https://circleci.com[Circle CI].
|
|
27
28
|
* Supports link:https://orcid.org[Citations (ORCID)].
|
|
28
29
|
* Supports console script for local development.
|
|
29
|
-
* Supports link:https://rubygems.org/gems/dead_end[DeadEnd].
|
|
30
30
|
* Supports link:https://github.com/ruby/debug[Debug].
|
|
31
31
|
* Supports link:https://git-scm.com[Git].
|
|
32
32
|
* Supports link:https://github.com[GitHub].
|
|
@@ -98,7 +98,6 @@ BUILD OPTIONS:
|
|
|
98
98
|
--[no-]conduct Add code of conduct documentation. Default: true.
|
|
99
99
|
--[no-]console Add console script. Default: true.
|
|
100
100
|
--[no-]contributions Add contributions documentation. Default: true.
|
|
101
|
-
--[no-]dead_end Add Dead End gem. Default: true.
|
|
102
101
|
--[no-]debug Add Debug gem. Default: true.
|
|
103
102
|
--[no-]git Add Git. Default: true.
|
|
104
103
|
--[no-]git_hub Add GitHub templates. Default: false.
|
|
@@ -224,12 +223,6 @@ loaded.
|
|
|
224
223
|
The `--contributions` option allows you to link to contributing documentation so people know to
|
|
225
224
|
contribute back to your work.
|
|
226
225
|
|
|
227
|
-
==== DeadEnd
|
|
228
|
-
|
|
229
|
-
The `--dead_end` option allows you build your project with the
|
|
230
|
-
link:https://github.com/zombocom/dead_end[Dead End] gem for debugging purposes since Dead End will
|
|
231
|
-
show you where you are missing closing `end` statements.
|
|
232
|
-
|
|
233
226
|
==== Debug
|
|
234
227
|
|
|
235
228
|
The `--debug` option allows you add the link:https://github.com/ruby/debug[Debug] gem to your
|
|
@@ -364,11 +357,11 @@ variables. The default configuration is as follows:
|
|
|
364
357
|
:caliber: true
|
|
365
358
|
:circle_ci: false
|
|
366
359
|
:citation: true
|
|
360
|
+
:cli: false
|
|
367
361
|
:community: false
|
|
368
362
|
:conduct: true
|
|
369
363
|
:console: true
|
|
370
364
|
:contributions: true
|
|
371
|
-
:dead_end: true
|
|
372
365
|
:debug: true
|
|
373
366
|
:git: true
|
|
374
367
|
:git_hub: false
|
|
@@ -397,14 +390,13 @@ variables. The default configuration is as follows:
|
|
|
397
390
|
:extensions:
|
|
398
391
|
:milestoner:
|
|
399
392
|
:documentation:
|
|
400
|
-
:format: "
|
|
393
|
+
:format: "adoc"
|
|
401
394
|
:prefixes:
|
|
402
395
|
- Fixed
|
|
403
396
|
- Added
|
|
404
397
|
- Updated
|
|
405
398
|
- Removed
|
|
406
399
|
- Refactored
|
|
407
|
-
:sign: false
|
|
408
400
|
:pragmater:
|
|
409
401
|
:comments:
|
|
410
402
|
- "# frozen_string_literal: true"
|
|
@@ -429,7 +421,7 @@ variables. The default configuration is as follows:
|
|
|
429
421
|
:license:
|
|
430
422
|
:label: Hippocratic
|
|
431
423
|
:name: hippocratic
|
|
432
|
-
:version:
|
|
424
|
+
:version: 2.1
|
|
433
425
|
:project:
|
|
434
426
|
:url:
|
|
435
427
|
:community:
|
|
@@ -474,6 +466,9 @@ All build options accept booleans values only and can be customized as desired.
|
|
|
474
466
|
build options, they will dynamically render when display usage (i.e. `rubysmith --help`). All of
|
|
475
467
|
these options are explained in greater detail above.
|
|
476
468
|
|
|
469
|
+
ℹ️ There is a `cli` configuration option but is only used to support
|
|
470
|
+
link:https://www.alchemists.io/projects/gemsmith[Gemsmith].
|
|
471
|
+
|
|
477
472
|
==== Citations
|
|
478
473
|
|
|
479
474
|
This section allows you to configure your link:https://orcid.org[ORCID]
|
data/lib/rubysmith/builder.rb
CHANGED
|
@@ -7,16 +7,18 @@ require "logger"
|
|
|
7
7
|
module Rubysmith
|
|
8
8
|
# Provides common functionality necessary for all builders.
|
|
9
9
|
class Builder
|
|
10
|
+
include Import[:logger]
|
|
11
|
+
|
|
10
12
|
using Refinements::Pathnames
|
|
11
13
|
|
|
12
14
|
HELPERS = {inserter: Text::Inserter, renderer: Renderers::ERB, kernel: Open3}.freeze
|
|
13
15
|
|
|
14
16
|
def self.call(...) = new(...)
|
|
15
17
|
|
|
16
|
-
def initialize configuration, helpers: HELPERS,
|
|
18
|
+
def initialize configuration, helpers: HELPERS, **dependencies
|
|
19
|
+
super(**dependencies)
|
|
17
20
|
@configuration = configuration
|
|
18
21
|
@helpers = helpers
|
|
19
|
-
@container = container
|
|
20
22
|
end
|
|
21
23
|
|
|
22
24
|
def append content
|
|
@@ -93,7 +95,7 @@ module Rubysmith
|
|
|
93
95
|
|
|
94
96
|
private
|
|
95
97
|
|
|
96
|
-
attr_reader :configuration, :helpers
|
|
98
|
+
attr_reader :configuration, :helpers
|
|
97
99
|
|
|
98
100
|
def execute *command
|
|
99
101
|
kernel.capture2e(*command).then do |result, status|
|
|
@@ -107,8 +109,6 @@ module Rubysmith
|
|
|
107
109
|
|
|
108
110
|
def kernel = helpers.fetch(__method__)
|
|
109
111
|
|
|
110
|
-
def logger = container[__method__]
|
|
111
|
-
|
|
112
112
|
def relative_build_path = build_path.relative_path_from(configuration.target_root)
|
|
113
113
|
|
|
114
114
|
def build_path
|
|
@@ -5,9 +5,11 @@ module Rubysmith
|
|
|
5
5
|
module Actions
|
|
6
6
|
# Handles the config action.
|
|
7
7
|
class Config
|
|
8
|
-
|
|
8
|
+
include Rubysmith::Import[:kernel, :logger]
|
|
9
|
+
|
|
10
|
+
def initialize client: Configuration::Loader::CLIENT, **dependencies
|
|
11
|
+
super(**dependencies)
|
|
9
12
|
@client = client
|
|
10
|
-
@container = container
|
|
11
13
|
end
|
|
12
14
|
|
|
13
15
|
def call selection
|
|
@@ -20,15 +22,11 @@ module Rubysmith
|
|
|
20
22
|
|
|
21
23
|
private
|
|
22
24
|
|
|
23
|
-
attr_reader :client
|
|
25
|
+
attr_reader :client
|
|
24
26
|
|
|
25
27
|
def edit = kernel.system("$EDITOR #{client.current}")
|
|
26
28
|
|
|
27
29
|
def view = kernel.system("cat #{client.current}")
|
|
28
|
-
|
|
29
|
-
def kernel = container[__method__]
|
|
30
|
-
|
|
31
|
-
def logger = container[__method__]
|
|
32
30
|
end
|
|
33
31
|
end
|
|
34
32
|
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "dry/container"
|
|
4
|
+
|
|
5
|
+
module Rubysmith
|
|
6
|
+
module CLI
|
|
7
|
+
module Actions
|
|
8
|
+
# Provides a single container with application and action specific dependencies.
|
|
9
|
+
module Container
|
|
10
|
+
extend Dry::Container::Mixin
|
|
11
|
+
|
|
12
|
+
config.registry = ->(container, key, value, _options) { container[key.to_s] = value }
|
|
13
|
+
|
|
14
|
+
merge Rubysmith::Container
|
|
15
|
+
|
|
16
|
+
register(:build) { Build.new }
|
|
17
|
+
register(:config) { Config.new }
|
|
18
|
+
register(:publish) { Publish.new }
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -5,16 +5,15 @@ module Rubysmith
|
|
|
5
5
|
module Actions
|
|
6
6
|
# Handles parsing of Command Line Interface (CLI) publish options.
|
|
7
7
|
class Publish
|
|
8
|
-
def initialize extension: Extensions::Milestoner
|
|
8
|
+
def initialize extension: Extensions::Milestoner
|
|
9
9
|
@extension = extension
|
|
10
|
-
@container = container
|
|
11
10
|
end
|
|
12
11
|
|
|
13
12
|
def call(configuration) = extension.call(configuration)
|
|
14
13
|
|
|
15
14
|
private
|
|
16
15
|
|
|
17
|
-
attr_reader :extension
|
|
16
|
+
attr_reader :extension
|
|
18
17
|
end
|
|
19
18
|
end
|
|
20
19
|
end
|
data/lib/rubysmith/cli/parser.rb
CHANGED
|
@@ -6,26 +6,29 @@ module Rubysmith
|
|
|
6
6
|
module CLI
|
|
7
7
|
# Assembles and parses all Command Line Interface (CLI) options.
|
|
8
8
|
class Parser
|
|
9
|
+
include Import[:configuration]
|
|
10
|
+
|
|
9
11
|
CLIENT = OptionParser.new nil, 40, " "
|
|
10
12
|
SECTIONS = [Parsers::Core, Parsers::Build].freeze # Order is important.
|
|
11
13
|
|
|
12
|
-
def initialize sections: SECTIONS, client: CLIENT,
|
|
14
|
+
def initialize sections: SECTIONS, client: CLIENT, **dependencies
|
|
15
|
+
super(**dependencies)
|
|
13
16
|
@sections = sections
|
|
14
17
|
@client = client
|
|
15
|
-
@
|
|
18
|
+
@configuration_duplicate = configuration.dup
|
|
16
19
|
end
|
|
17
20
|
|
|
18
21
|
def call arguments = []
|
|
19
|
-
sections.each { |section| section.call
|
|
22
|
+
sections.each { |section| section.call configuration_duplicate, client: }
|
|
20
23
|
client.parse arguments
|
|
21
|
-
|
|
24
|
+
configuration_duplicate.freeze
|
|
22
25
|
end
|
|
23
26
|
|
|
24
27
|
def to_s = client.to_s
|
|
25
28
|
|
|
26
29
|
private
|
|
27
30
|
|
|
28
|
-
attr_reader :sections, :client, :
|
|
31
|
+
attr_reader :sections, :client, :configuration_duplicate
|
|
29
32
|
end
|
|
30
33
|
end
|
|
31
34
|
end
|
|
@@ -7,16 +7,18 @@ module Rubysmith
|
|
|
7
7
|
module Parsers
|
|
8
8
|
# Handles parsing of Command Line Interface (CLI) build options.
|
|
9
9
|
class Build
|
|
10
|
+
include Import[:colorizer]
|
|
11
|
+
|
|
10
12
|
using Refinements::Structs
|
|
11
13
|
|
|
12
14
|
def self.call(...) = new(...).call
|
|
13
15
|
|
|
14
16
|
def initialize configuration = Container[:configuration],
|
|
15
17
|
client: Parser::CLIENT,
|
|
16
|
-
|
|
18
|
+
**dependencies
|
|
19
|
+
super(**dependencies)
|
|
17
20
|
@configuration = configuration
|
|
18
21
|
@client = client
|
|
19
|
-
@container = container
|
|
20
22
|
end
|
|
21
23
|
|
|
22
24
|
def call arguments = []
|
|
@@ -28,7 +30,7 @@ module Rubysmith
|
|
|
28
30
|
|
|
29
31
|
private
|
|
30
32
|
|
|
31
|
-
attr_reader :configuration, :client
|
|
33
|
+
attr_reader :configuration, :client
|
|
32
34
|
|
|
33
35
|
def collate = private_methods.sort.grep(/add_/).each { |method| __send__ method }
|
|
34
36
|
|
|
@@ -113,15 +115,6 @@ module Rubysmith
|
|
|
113
115
|
end
|
|
114
116
|
end
|
|
115
117
|
|
|
116
|
-
def add_dead_end
|
|
117
|
-
client.on(
|
|
118
|
-
"--[no-]dead_end",
|
|
119
|
-
"Add Dead End gem. #{default __method__}."
|
|
120
|
-
) do |value|
|
|
121
|
-
configuration.merge! build_dead_end: value
|
|
122
|
-
end
|
|
123
|
-
end
|
|
124
|
-
|
|
125
118
|
def add_debug
|
|
126
119
|
client.on(
|
|
127
120
|
"--[no-]debug",
|
|
@@ -300,8 +293,6 @@ module Rubysmith
|
|
|
300
293
|
.then { |boolean| boolean ? colorizer.green(boolean) : colorizer.red(boolean) }
|
|
301
294
|
.then { |colored_boolean| "Default: #{colored_boolean}" }
|
|
302
295
|
end
|
|
303
|
-
|
|
304
|
-
def colorizer = container[__method__]
|
|
305
296
|
end
|
|
306
297
|
end
|
|
307
298
|
end
|
|
@@ -7,16 +7,18 @@ module Rubysmith
|
|
|
7
7
|
module Parsers
|
|
8
8
|
# Handles parsing of Command Line Interface (CLI) core options.
|
|
9
9
|
class Core
|
|
10
|
+
include Import[:specification]
|
|
11
|
+
|
|
10
12
|
using Refinements::Structs
|
|
11
13
|
|
|
12
14
|
def self.call(...) = new(...).call
|
|
13
15
|
|
|
14
16
|
def initialize configuration = Container[:configuration],
|
|
15
17
|
client: Parser::CLIENT,
|
|
16
|
-
|
|
18
|
+
**dependencies
|
|
19
|
+
super(**dependencies)
|
|
17
20
|
@configuration = configuration
|
|
18
21
|
@client = client
|
|
19
|
-
@container = container
|
|
20
22
|
end
|
|
21
23
|
|
|
22
24
|
def call arguments = []
|
|
@@ -29,7 +31,7 @@ module Rubysmith
|
|
|
29
31
|
|
|
30
32
|
private
|
|
31
33
|
|
|
32
|
-
attr_reader :configuration, :client
|
|
34
|
+
attr_reader :configuration, :client
|
|
33
35
|
|
|
34
36
|
def collate = private_methods.sort.grep(/add_/).each { |method| __send__ method }
|
|
35
37
|
|
|
@@ -65,8 +67,6 @@ module Rubysmith
|
|
|
65
67
|
configuration.merge! action_help: true
|
|
66
68
|
end
|
|
67
69
|
end
|
|
68
|
-
|
|
69
|
-
def specification = container[__method__]
|
|
70
70
|
end
|
|
71
71
|
end
|
|
72
72
|
end
|
data/lib/rubysmith/cli/shell.rb
CHANGED
|
@@ -6,16 +6,11 @@ module Rubysmith
|
|
|
6
6
|
module CLI
|
|
7
7
|
# The main Command Line Interface (CLI) object.
|
|
8
8
|
class Shell
|
|
9
|
-
|
|
10
|
-
config: Actions::Config.new,
|
|
11
|
-
build: Actions::Build.new,
|
|
12
|
-
publish: Actions::Publish.new
|
|
13
|
-
}.freeze
|
|
9
|
+
include Actions::Import[:config, :build, :publish, :specification, :logger]
|
|
14
10
|
|
|
15
|
-
def initialize parser: Parser.new,
|
|
11
|
+
def initialize parser: Parser.new, **dependencies
|
|
12
|
+
super(**dependencies)
|
|
16
13
|
@parser = parser
|
|
17
|
-
@actions = actions
|
|
18
|
-
@container = container
|
|
19
14
|
end
|
|
20
15
|
|
|
21
16
|
def call arguments = []
|
|
@@ -26,29 +21,17 @@ module Rubysmith
|
|
|
26
21
|
|
|
27
22
|
private
|
|
28
23
|
|
|
29
|
-
attr_reader :parser
|
|
24
|
+
attr_reader :parser
|
|
30
25
|
|
|
31
26
|
def perform configuration
|
|
32
27
|
case configuration
|
|
33
|
-
in action_config: Symbol => action then config action
|
|
34
|
-
in action_build: true then build configuration
|
|
35
|
-
in action_publish: true then publish configuration
|
|
28
|
+
in action_config: Symbol => action then config.call action
|
|
29
|
+
in action_build: true then build.call configuration
|
|
30
|
+
in action_publish: true then publish.call configuration
|
|
36
31
|
in action_version: true then logger.info { specification.labeled_version }
|
|
37
|
-
else
|
|
32
|
+
else logger.any { parser.to_s }
|
|
38
33
|
end
|
|
39
34
|
end
|
|
40
|
-
|
|
41
|
-
def config(action) = actions.fetch(__method__).call(action)
|
|
42
|
-
|
|
43
|
-
def build(configuration) = actions.fetch(__method__).call(configuration)
|
|
44
|
-
|
|
45
|
-
def publish(configuration) = actions.fetch(__method__).call(configuration)
|
|
46
|
-
|
|
47
|
-
def usage = logger.unknown(parser.to_s)
|
|
48
|
-
|
|
49
|
-
def specification = container[__method__]
|
|
50
|
-
|
|
51
|
-
def logger = container[__method__]
|
|
52
35
|
end
|
|
53
36
|
end
|
|
54
37
|
end
|
|
@@ -32,7 +32,6 @@ module Rubysmith
|
|
|
32
32
|
:build_conduct,
|
|
33
33
|
:build_console,
|
|
34
34
|
:build_contributions,
|
|
35
|
-
:build_dead_end,
|
|
36
35
|
:build_debug,
|
|
37
36
|
:build_git,
|
|
38
37
|
:build_git_hub,
|
|
@@ -58,7 +57,6 @@ module Rubysmith
|
|
|
58
57
|
:documentation_format,
|
|
59
58
|
:extensions_milestoner_documentation_format,
|
|
60
59
|
:extensions_milestoner_prefixes,
|
|
61
|
-
:extensions_milestoner_sign,
|
|
62
60
|
:extensions_pragmater_comments,
|
|
63
61
|
:extensions_pragmater_includes,
|
|
64
62
|
:extensions_tocer_includes,
|
|
@@ -14,7 +14,6 @@
|
|
|
14
14
|
:conduct: true
|
|
15
15
|
:console: true
|
|
16
16
|
:contributions: true
|
|
17
|
-
:dead_end: true
|
|
18
17
|
:debug: true
|
|
19
18
|
:git: true
|
|
20
19
|
:git_hub: false
|
|
@@ -43,14 +42,13 @@
|
|
|
43
42
|
:extensions:
|
|
44
43
|
:milestoner:
|
|
45
44
|
:documentation:
|
|
46
|
-
:format: "
|
|
45
|
+
:format: "adoc"
|
|
47
46
|
:prefixes:
|
|
48
47
|
- Fixed
|
|
49
48
|
- Added
|
|
50
49
|
- Updated
|
|
51
50
|
- Removed
|
|
52
51
|
- Refactored
|
|
53
|
-
:sign: false
|
|
54
52
|
:pragmater:
|
|
55
53
|
:comments:
|
|
56
54
|
- "# frozen_string_literal: true"
|
data/lib/rubysmith/container.rb
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
+
require "cogger"
|
|
3
4
|
require "dry-container"
|
|
4
|
-
require "logger"
|
|
5
5
|
require "pastel"
|
|
6
6
|
require "spek"
|
|
7
7
|
|
|
@@ -10,30 +10,10 @@ module Rubysmith
|
|
|
10
10
|
module Container
|
|
11
11
|
extend Dry::Container::Mixin
|
|
12
12
|
|
|
13
|
+
register(:colorizer) { Pastel.new enabled: $stdout.tty? }
|
|
13
14
|
register(:configuration) { Configuration::Loader.call }
|
|
14
15
|
register(:specification) { Spek::Loader.call "#{__dir__}/../../rubysmith.gemspec" }
|
|
15
|
-
register(:colorizer) { Pastel.new enabled: $stdout.tty? }
|
|
16
16
|
register(:kernel) { Kernel }
|
|
17
|
-
|
|
18
|
-
register :log_colors do
|
|
19
|
-
{
|
|
20
|
-
"DEBUG" => self[:colorizer].white.detach,
|
|
21
|
-
"INFO" => self[:colorizer].green.detach,
|
|
22
|
-
"WARN" => self[:colorizer].yellow.detach,
|
|
23
|
-
"ERROR" => self[:colorizer].red.detach,
|
|
24
|
-
"FATAL" => self[:colorizer].white.bold.on_red.detach,
|
|
25
|
-
"ANY" => self[:colorizer].white.bold.detach
|
|
26
|
-
}
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
register :logger do
|
|
30
|
-
Logger.new $stdout,
|
|
31
|
-
level: Logger.const_get(ENV.fetch("LOG_LEVEL", "INFO")),
|
|
32
|
-
formatter: (
|
|
33
|
-
lambda do |severity, _at, _name, message|
|
|
34
|
-
self[:log_colors][severity].call "#{message}\n"
|
|
35
|
-
end
|
|
36
|
-
)
|
|
37
|
-
end
|
|
17
|
+
register(:logger) { Cogger::Client.new }
|
|
38
18
|
end
|
|
39
19
|
end
|
|
@@ -14,13 +14,10 @@ group :code_quality do
|
|
|
14
14
|
gem "bundler-leak", "~> 0.2"
|
|
15
15
|
<% end %>
|
|
16
16
|
<% if configuration.build_caliber %>
|
|
17
|
-
gem "caliber", "~> 0.
|
|
18
|
-
<% end %>
|
|
19
|
-
<% if configuration.build_dead_end %>
|
|
20
|
-
gem "dead_end", "~> 3.1"
|
|
17
|
+
gem "caliber", "~> 0.5"
|
|
21
18
|
<% end %>
|
|
22
19
|
<% if configuration.build_git && configuration.build_git_lint %>
|
|
23
|
-
gem "git-lint", "~>
|
|
20
|
+
gem "git-lint", "~> 4.0"
|
|
24
21
|
<% end %>
|
|
25
22
|
<% if configuration.build_reek %>
|
|
26
23
|
gem "reek", "~> 6.1"
|
|
@@ -59,6 +56,6 @@ group :tools do
|
|
|
59
56
|
gem "amazing_print", "~> 1.4"
|
|
60
57
|
<% end %>
|
|
61
58
|
<% if configuration.build_debug %>
|
|
62
|
-
gem "debug", "~> 1.
|
|
59
|
+
gem "debug", "~> 1.5"
|
|
63
60
|
<% end %>
|
|
64
61
|
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 = "
|
|
5
|
+
spec.version = "3.0.0"
|
|
6
6
|
spec.authors = ["Brooke Kuhlmann"]
|
|
7
7
|
spec.email = ["brooke@alchemists.io"]
|
|
8
8
|
spec.homepage = "https://github.com/bkuhlmann/rubysmith"
|
|
@@ -22,16 +22,18 @@ Gem::Specification.new do |spec|
|
|
|
22
22
|
spec.cert_chain = [Gem.default_cert_path]
|
|
23
23
|
|
|
24
24
|
spec.required_ruby_version = "~> 3.1"
|
|
25
|
+
spec.add_dependency "auto_injector", "~> 0.4"
|
|
26
|
+
spec.add_dependency "cogger", "~> 0.0"
|
|
25
27
|
spec.add_dependency "dry-container", "~> 0.9"
|
|
26
|
-
spec.add_dependency "git_plus", "~> 1.
|
|
27
|
-
spec.add_dependency "milestoner", "~>
|
|
28
|
+
spec.add_dependency "git_plus", "~> 1.3"
|
|
29
|
+
spec.add_dependency "milestoner", "~> 14.0"
|
|
28
30
|
spec.add_dependency "pastel", "~> 0.8"
|
|
29
|
-
spec.add_dependency "pragmater", "~>
|
|
31
|
+
spec.add_dependency "pragmater", "~> 11.0"
|
|
30
32
|
spec.add_dependency "refinements", "~> 9.2"
|
|
31
|
-
spec.add_dependency "rubocop", "~> 1.
|
|
33
|
+
spec.add_dependency "rubocop", "~> 1.27"
|
|
32
34
|
spec.add_dependency "runcom", "~> 8.2"
|
|
33
35
|
spec.add_dependency "spek", "~> 0.2"
|
|
34
|
-
spec.add_dependency "tocer", "~>
|
|
36
|
+
spec.add_dependency "tocer", "~> 14.0"
|
|
35
37
|
spec.add_dependency "zeitwerk", "~> 2.5"
|
|
36
38
|
|
|
37
39
|
spec.bindir = "exe"
|
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:
|
|
4
|
+
version: 3.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Brooke Kuhlmann
|
|
@@ -10,9 +10,9 @@ bindir: exe
|
|
|
10
10
|
cert_chain:
|
|
11
11
|
- |
|
|
12
12
|
-----BEGIN CERTIFICATE-----
|
|
13
|
-
MIIC/
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
MIIC/jCCAeagAwIBAgIBBTANBgkqhkiG9w0BAQsFADAlMSMwIQYDVQQDDBpicm9v
|
|
14
|
+
a2UvREM9YWxjaGVtaXN0cy9EQz1pbzAeFw0yMjAzMTkxNzI0MzJaFw0yMzAzMTkx
|
|
15
|
+
NzI0MzJaMCUxIzAhBgNVBAMMGmJyb29rZS9EQz1hbGNoZW1pc3RzL0RDPWlvMIIB
|
|
16
16
|
IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6l1qpXTiomH1RfMRloyw7MiE
|
|
17
17
|
xyVx/x8Yc3EupdH7uhNaTXQGyORN6aOY//1QXXMHIZ9tW74nZLhesWMSUMYy0XhB
|
|
18
18
|
brs+KkurHnc9FnEJAbG7ebGvl/ncqZt72nQvaxpDxvuCBHgJAz+8i5wl6FhLw+oT
|
|
@@ -20,16 +20,44 @@ cert_chain:
|
|
|
20
20
|
D5vkU0YlAm1r98BymuJlcQ1qdkVEI1d48ph4kcS0S0nv1RiuyVb6TCAR3Nu3VaVq
|
|
21
21
|
3fPzZKJLZBx67UvXdbdicWPiUR75elI4PXpLIic3xytaF52ZJYyKZCNZJhNwfQID
|
|
22
22
|
AQABozkwNzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQU0nzow9vc
|
|
23
|
-
2CdikiiE3fJhP/
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
23
|
+
2CdikiiE3fJhP/gY4ggwDQYJKoZIhvcNAQELBQADggEBAJbbNyWzFjqUNVPPCUCo
|
|
24
|
+
IMrhDa9xf1xkORXNYYbmXgoxRy/KyNbUr+jgEEoWJAm9GXlcqxxWAUI6pK/i4/Qi
|
|
25
|
+
X6rPFEFmeObDOHNvuqy8Hd6AYsu+kP94U/KJhe9wnWGMmGoNKJNU3EkW3jM/osSl
|
|
26
|
+
+JRxiH5t4WtnDiVyoYl5nYC02rYdjJkG6VMxDymXTqn7u6HhYgZkGujq1UPar8x2
|
|
27
|
+
hNIWJblDKKSu7hA2d6+kUthuYo13o1sg1Da/AEDg0hoZSUvhqDEF5Hy232qb3pDt
|
|
28
|
+
CxDe2+VuChj4I1nvIHdu+E6XoEVlanUPKmSg6nddhkKn2gC45Kyzh6FZqnzH/CRp
|
|
29
|
+
RFE=
|
|
30
30
|
-----END CERTIFICATE-----
|
|
31
|
-
date: 2022-
|
|
31
|
+
date: 2022-04-10 00:00:00.000000000 Z
|
|
32
32
|
dependencies:
|
|
33
|
+
- !ruby/object:Gem::Dependency
|
|
34
|
+
name: auto_injector
|
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
|
36
|
+
requirements:
|
|
37
|
+
- - "~>"
|
|
38
|
+
- !ruby/object:Gem::Version
|
|
39
|
+
version: '0.4'
|
|
40
|
+
type: :runtime
|
|
41
|
+
prerelease: false
|
|
42
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
43
|
+
requirements:
|
|
44
|
+
- - "~>"
|
|
45
|
+
- !ruby/object:Gem::Version
|
|
46
|
+
version: '0.4'
|
|
47
|
+
- !ruby/object:Gem::Dependency
|
|
48
|
+
name: cogger
|
|
49
|
+
requirement: !ruby/object:Gem::Requirement
|
|
50
|
+
requirements:
|
|
51
|
+
- - "~>"
|
|
52
|
+
- !ruby/object:Gem::Version
|
|
53
|
+
version: '0.0'
|
|
54
|
+
type: :runtime
|
|
55
|
+
prerelease: false
|
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
57
|
+
requirements:
|
|
58
|
+
- - "~>"
|
|
59
|
+
- !ruby/object:Gem::Version
|
|
60
|
+
version: '0.0'
|
|
33
61
|
- !ruby/object:Gem::Dependency
|
|
34
62
|
name: dry-container
|
|
35
63
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -50,28 +78,28 @@ dependencies:
|
|
|
50
78
|
requirements:
|
|
51
79
|
- - "~>"
|
|
52
80
|
- !ruby/object:Gem::Version
|
|
53
|
-
version: '1.
|
|
81
|
+
version: '1.3'
|
|
54
82
|
type: :runtime
|
|
55
83
|
prerelease: false
|
|
56
84
|
version_requirements: !ruby/object:Gem::Requirement
|
|
57
85
|
requirements:
|
|
58
86
|
- - "~>"
|
|
59
87
|
- !ruby/object:Gem::Version
|
|
60
|
-
version: '1.
|
|
88
|
+
version: '1.3'
|
|
61
89
|
- !ruby/object:Gem::Dependency
|
|
62
90
|
name: milestoner
|
|
63
91
|
requirement: !ruby/object:Gem::Requirement
|
|
64
92
|
requirements:
|
|
65
93
|
- - "~>"
|
|
66
94
|
- !ruby/object:Gem::Version
|
|
67
|
-
version: '
|
|
95
|
+
version: '14.0'
|
|
68
96
|
type: :runtime
|
|
69
97
|
prerelease: false
|
|
70
98
|
version_requirements: !ruby/object:Gem::Requirement
|
|
71
99
|
requirements:
|
|
72
100
|
- - "~>"
|
|
73
101
|
- !ruby/object:Gem::Version
|
|
74
|
-
version: '
|
|
102
|
+
version: '14.0'
|
|
75
103
|
- !ruby/object:Gem::Dependency
|
|
76
104
|
name: pastel
|
|
77
105
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -92,14 +120,14 @@ dependencies:
|
|
|
92
120
|
requirements:
|
|
93
121
|
- - "~>"
|
|
94
122
|
- !ruby/object:Gem::Version
|
|
95
|
-
version: '
|
|
123
|
+
version: '11.0'
|
|
96
124
|
type: :runtime
|
|
97
125
|
prerelease: false
|
|
98
126
|
version_requirements: !ruby/object:Gem::Requirement
|
|
99
127
|
requirements:
|
|
100
128
|
- - "~>"
|
|
101
129
|
- !ruby/object:Gem::Version
|
|
102
|
-
version: '
|
|
130
|
+
version: '11.0'
|
|
103
131
|
- !ruby/object:Gem::Dependency
|
|
104
132
|
name: refinements
|
|
105
133
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -120,14 +148,14 @@ dependencies:
|
|
|
120
148
|
requirements:
|
|
121
149
|
- - "~>"
|
|
122
150
|
- !ruby/object:Gem::Version
|
|
123
|
-
version: '1.
|
|
151
|
+
version: '1.27'
|
|
124
152
|
type: :runtime
|
|
125
153
|
prerelease: false
|
|
126
154
|
version_requirements: !ruby/object:Gem::Requirement
|
|
127
155
|
requirements:
|
|
128
156
|
- - "~>"
|
|
129
157
|
- !ruby/object:Gem::Version
|
|
130
|
-
version: '1.
|
|
158
|
+
version: '1.27'
|
|
131
159
|
- !ruby/object:Gem::Dependency
|
|
132
160
|
name: runcom
|
|
133
161
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -162,14 +190,14 @@ dependencies:
|
|
|
162
190
|
requirements:
|
|
163
191
|
- - "~>"
|
|
164
192
|
- !ruby/object:Gem::Version
|
|
165
|
-
version: '
|
|
193
|
+
version: '14.0'
|
|
166
194
|
type: :runtime
|
|
167
195
|
prerelease: false
|
|
168
196
|
version_requirements: !ruby/object:Gem::Requirement
|
|
169
197
|
requirements:
|
|
170
198
|
- - "~>"
|
|
171
199
|
- !ruby/object:Gem::Version
|
|
172
|
-
version: '
|
|
200
|
+
version: '14.0'
|
|
173
201
|
- !ruby/object:Gem::Dependency
|
|
174
202
|
name: zeitwerk
|
|
175
203
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -221,6 +249,8 @@ files:
|
|
|
221
249
|
- lib/rubysmith/builders/version.rb
|
|
222
250
|
- lib/rubysmith/cli/actions/build.rb
|
|
223
251
|
- lib/rubysmith/cli/actions/config.rb
|
|
252
|
+
- lib/rubysmith/cli/actions/container.rb
|
|
253
|
+
- lib/rubysmith/cli/actions/import.rb
|
|
224
254
|
- lib/rubysmith/cli/actions/publish.rb
|
|
225
255
|
- lib/rubysmith/cli/parser.rb
|
|
226
256
|
- lib/rubysmith/cli/parsers/build.rb
|
|
@@ -239,6 +269,7 @@ files:
|
|
|
239
269
|
- lib/rubysmith/extensions/pragmater.rb
|
|
240
270
|
- lib/rubysmith/extensions/rubocop.rb
|
|
241
271
|
- lib/rubysmith/extensions/tocer.rb
|
|
272
|
+
- lib/rubysmith/import.rb
|
|
242
273
|
- lib/rubysmith/pathway.rb
|
|
243
274
|
- lib/rubysmith/renderers/erb.rb
|
|
244
275
|
- lib/rubysmith/renderers/namespace.rb
|
|
@@ -297,7 +328,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
297
328
|
- !ruby/object:Gem::Version
|
|
298
329
|
version: '0'
|
|
299
330
|
requirements: []
|
|
300
|
-
rubygems_version: 3.3.
|
|
331
|
+
rubygems_version: 3.3.11
|
|
301
332
|
signing_key:
|
|
302
333
|
specification_version: 4
|
|
303
334
|
summary: A command line interface for smithing Ruby projects.
|
metadata.gz.sig
CHANGED
|
Binary file
|