tocer 15.0.0 → 15.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 14b2b29b848b0f22b8f5c6302c8a34a6ac6f34874aa5ae5f66a024194e5d1c6e
4
- data.tar.gz: bed04a46a72eed28fbb0da85b6a8575c10cfe19bc898e9aa88dd0062b0c66c20
3
+ metadata.gz: f5228d1ed73a4027f286102ed63a7b25c800ad0f6ba07425b37260c33fe05684
4
+ data.tar.gz: c3acaadfff0d633dc343203850a4099799bce151a9d26a4b7c1d76f4f1353bf5
5
5
  SHA512:
6
- metadata.gz: 76b7e55cf821c5226a056050c4e206c552398bccb0c4952d4e5d52b92fdafbb0747b28041b12d3f77076878b042951011a46b5a23c071ca4a2563f4ca68f2e8f
7
- data.tar.gz: 74bf6ae370f4bd1592a5afbaba3c611d603d40971ee15a386b5533ecf420ab5246759df5cb752fa37db785766bd2f6c34c6fa618d192358175c82b46259e2ba3
6
+ metadata.gz: dd20f829585b0df51ec615d756d70e439c0d8080300dbf0a8ecadaff460f2067ae74bab5f1eb13ca2e4bccad32a964a69d94ba4315f8c38f1a1769e7eed6c006
7
+ data.tar.gz: ba335c1761f2c54e52d8ede27648d388a9bb7b09b765615d276d8e940fe254e5969a7d6b44b70e98c445320155906d2ef2e4ad2f73236bda3951d8a8a69e180a
checksums.yaml.gz.sig CHANGED
Binary file
data/README.adoc CHANGED
@@ -168,7 +168,7 @@ To test, run:
168
168
 
169
169
  [source,bash]
170
170
  ----
171
- bundle exec rake
171
+ bin/rake
172
172
  ----
173
173
 
174
174
  == link:https://www.alchemists.io/policies/license[License]
@@ -7,8 +7,8 @@ module Tocer
7
7
  class Config
8
8
  include Tocer::Import[:kernel, :logger]
9
9
 
10
- def initialize client: Configuration::Loader::CLIENT, **dependencies
11
- super(**dependencies)
10
+ def initialize(client: Configuration::Loader::CLIENT, **)
11
+ super(**)
12
12
  @client = client
13
13
  end
14
14
 
@@ -7,8 +7,8 @@ module Tocer
7
7
  class Insert
8
8
  include Tocer::Import[:logger]
9
9
 
10
- def initialize runner: Runner.new, **dependencies
11
- super(**dependencies)
10
+ def initialize(runner: Runner.new, **)
11
+ super(**)
12
12
  @runner = runner
13
13
  end
14
14
 
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "core"
3
4
  require "optparse"
4
5
 
5
6
  module Tocer
@@ -11,14 +12,14 @@ module Tocer
11
12
  CLIENT = OptionParser.new nil, 40, " "
12
13
  SECTIONS = [Parsers::Core, Parsers::Flag].freeze # Order matters.
13
14
 
14
- def initialize sections: SECTIONS, client: CLIENT, **dependencies
15
- super(**dependencies)
15
+ def initialize(sections: SECTIONS, client: CLIENT, **)
16
+ super(**)
16
17
  @sections = sections
17
18
  @client = client
18
19
  @configuration_duplicate = configuration.dup
19
20
  end
20
21
 
21
- def call arguments = []
22
+ def call arguments = Core::EMPTY_ARRAY
22
23
  sections.each { |parser| parser.call configuration_duplicate, client: }
23
24
  client.parse arguments
24
25
  configuration_duplicate.freeze
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "core"
3
4
  require "refinements/structs"
4
5
 
5
6
  module Tocer
@@ -13,15 +14,13 @@ module Tocer
13
14
 
14
15
  def self.call(...) = new(...).call
15
16
 
16
- def initialize configuration = Container[:configuration],
17
- client: Parser::CLIENT,
18
- **dependencies
19
- super(**dependencies)
17
+ def initialize(configuration = Container[:configuration], client: Parser::CLIENT, **)
18
+ super(**)
20
19
  @configuration = configuration
21
20
  @client = client
22
21
  end
23
22
 
24
- def call arguments = []
23
+ def call arguments = ::Core::EMPTY_ARRAY
25
24
  client.banner = specification.labeled_summary
26
25
  client.separator "\nUSAGE:\n"
27
26
  collate
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "core"
3
4
  require "refinements/structs"
4
5
 
5
6
  module Tocer
@@ -16,7 +17,7 @@ module Tocer
16
17
  @client = client
17
18
  end
18
19
 
19
- def call arguments = []
20
+ def call arguments = ::Core::EMPTY_ARRAY
20
21
  client.separator "\nOPTIONS:\n"
21
22
  private_methods.sort.grep(/add_/).each { |method| __send__ method }
22
23
  client.parse arguments
@@ -1,18 +1,20 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "core"
4
+
3
5
  module Tocer
4
6
  module CLI
5
7
  # The main Command Line Interface (CLI) object.
6
8
  class Shell
7
9
  include Actions::Import[:config, :insert, :specification, :logger]
8
10
 
9
- def initialize parser: Parser.new, **dependencies
10
- super(**dependencies)
11
+ def initialize(parser: Parser.new, **)
12
+ super(**)
11
13
  @parser = parser
12
14
  end
13
15
 
14
- def call arguments = []
15
- perform parser.call(arguments)
16
+ def call arguments = Core::EMPTY_ARRAY
17
+ act_on parser.call(arguments)
16
18
  rescue OptionParser::ParseError => error
17
19
  puts error.message
18
20
  end
@@ -21,7 +23,7 @@ module Tocer
21
23
 
22
24
  attr_reader :parser
23
25
 
24
- def perform configuration
26
+ def act_on configuration
25
27
  case configuration
26
28
  in action_config: Symbol => action then config.call action
27
29
  in action_insert: true then insert.call configuration
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "core"
3
4
  require "refinements/arrays"
4
5
 
5
6
  module Tocer
@@ -22,7 +23,7 @@ module Tocer
22
23
 
23
24
  attr_reader :parser
24
25
 
25
- def computed_url(suffix = "") = [url, suffix.to_s].compress.join("-")
26
+ def computed_url(suffix = Core::EMPTY_STRING) = [url, suffix.to_s].compress.join("-")
26
27
 
27
28
  def embedded_link = "[#{embedded_link_label}](#{embedded_link_url})"
28
29
 
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "core"
3
4
  require "refinements/arrays"
4
5
 
5
6
  module Tocer
@@ -22,7 +23,7 @@ module Tocer
22
23
 
23
24
  attr_reader :parser
24
25
 
25
- def computed_url(suffix = "") = [url, suffix.to_s].compress.join("-")
26
+ def computed_url(suffix = Core::EMPTY_STRING) = [url, suffix.to_s].compress.join("-")
26
27
 
27
28
  def indented_bullet = prefix_to_spaces.gsub(/\s{2}$/, "- ")
28
29
 
data/tocer.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = "tocer"
5
- spec.version = "15.0.0"
5
+ spec.version = "15.1.1"
6
6
  spec.authors = ["Brooke Kuhlmann"]
7
7
  spec.email = ["brooke@alchemists.io"]
8
8
  spec.homepage = "https://www.alchemists.io/projects/tocer"
@@ -24,6 +24,7 @@ Gem::Specification.new do |spec|
24
24
 
25
25
  spec.required_ruby_version = "~> 3.2"
26
26
  spec.add_dependency "cogger", "~> 0.5"
27
+ spec.add_dependency "core", "~> 0.1"
27
28
  spec.add_dependency "dry-container", "~> 0.11"
28
29
  spec.add_dependency "infusible", "~> 1.0"
29
30
  spec.add_dependency "refinements", "~> 10.0"
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tocer
3
3
  version: !ruby/object:Gem::Version
4
- version: 15.0.0
4
+ version: 15.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brooke Kuhlmann
@@ -28,7 +28,7 @@ cert_chain:
28
28
  CxDe2+VuChj4I1nvIHdu+E6XoEVlanUPKmSg6nddhkKn2gC45Kyzh6FZqnzH/CRp
29
29
  RFE=
30
30
  -----END CERTIFICATE-----
31
- date: 2022-12-26 00:00:00.000000000 Z
31
+ date: 2023-02-05 00:00:00.000000000 Z
32
32
  dependencies:
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: cogger
@@ -44,6 +44,20 @@ dependencies:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
46
  version: '0.5'
47
+ - !ruby/object:Gem::Dependency
48
+ name: core
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '0.1'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '0.1'
47
61
  - !ruby/object:Gem::Dependency
48
62
  name: dry-container
49
63
  requirement: !ruby/object:Gem::Requirement
@@ -191,7 +205,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
191
205
  - !ruby/object:Gem::Version
192
206
  version: '0'
193
207
  requirements: []
194
- rubygems_version: 3.4.1
208
+ rubygems_version: 3.4.6
195
209
  signing_key:
196
210
  specification_version: 4
197
211
  summary: A command line interface for generating table of contents for Markdown files.
metadata.gz.sig CHANGED
Binary file