sod 0.1.1 → 0.2.0

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: 23b08587b0e2a98f391369e82409ccbfd1186efb54741a76b48c1b011d12a3bc
4
- data.tar.gz: eb8792a76509485900d2dac190766214fa109d5aff8e0c582229fd8dbcdc92cd
3
+ metadata.gz: e90b6915e4af0716328d6246159d1b28f0042958a7f9a85b0fc94d474039e702
4
+ data.tar.gz: 5599889f4ded725bc8e5f78822d15613697edbd45d6d7e9360ff2a7871089712
5
5
  SHA512:
6
- metadata.gz: 264edeb65dd9a578a7dbdf6cfbbb4d26fd3e39100c461ffde67ab20e61c4df5eb7c5cfd1b0eb088c9de7c45bf8b72939257a07e92c7ec4166c7749709648be0b
7
- data.tar.gz: 883472c9fdb8b3392736e413e53a462be049d29bbce034195e9b6614fa9e018ace1690c685d976a30a2366a210d5cba12cc0eb2943476d5ba739fce2f3e348eb
6
+ metadata.gz: 55e4577b2a8b1a9bbb0784eee4a721b82298201349e0b048fe54e887feeff92a30d82f75e931ed7c34fc45d2f798c77bf2e79e710851eead12329a89ed2d5241
7
+ data.tar.gz: 88b2e19e1737ea92c580ff2fb22f0463a7d37911336d29d6e657dfa82d349a7baeb5559de4ee0de034cde38ec89b807975fcc379d98bb4b7167799d4ae69820f
checksums.yaml.gz.sig CHANGED
Binary file
data/README.adoc CHANGED
@@ -9,7 +9,7 @@
9
9
  :hanamismith_link: link:https://alchemists.io/projects/hanamismith[Hanamismith]
10
10
  :infusible_link: link:https://alchemists.io/projects/infusible[Infusible]
11
11
  :milestoner_link: link:https://alchemists.io/projects/milestoner[Milestoner]
12
- :option_parser_link: link:https://rubyapi.org/o/s?q=OptionParser[Option Parser]
12
+ :option_parser_link: link:https://alchemists.io/articles/ruby_option_parser[Option Parser]
13
13
  :pennyworth_link: link:https://alchemists.io/projects/pennyworth[Pennyworth]
14
14
  :pragmater_link: link:https://alchemists.io/projects/pragmater[Pragmater]
15
15
  :rubysmith_link: link:https://alchemists.io/projects/rubysmith[Rubysmith]
@@ -41,11 +41,11 @@ toc::[]
41
41
 
42
42
  *DSL*
43
43
 
44
- image::https://alchemists.io/images/projects/sod/screenshots/dsl.png[A screenshot of the DSL syntax,width=539,height=479,role=focal_point]
44
+ image::https://alchemists.io/images/projects/sod/screenshots/dsl.png[A screenshot of the DSL syntax,width=667,height=607,role=focal_point]
45
45
 
46
46
  *Output*
47
47
 
48
- image::https://alchemists.io/images/projects/sod/screenshots/output.png[A screenshot of the generated help documentation,width=472,height=498,role=focal_point]
48
+ image::https://alchemists.io/images/projects/sod/screenshots/output.png[A screenshot of the generated help documentation,width=596,height=662,role=focal_point]
49
49
 
50
50
  == Requirements
51
51
 
@@ -312,7 +312,7 @@ Because a value is always provided when using a boolean flag, you can make it a
312
312
 
313
313
  ===== Arguments
314
314
 
315
- Arguments inform {option_parser_link} how to parse values as either _optional_ or _required_. Here's minimal implementation of an optional argument:
315
+ Arguments inform {option_parser_link} how to parse values as either _optional_ or _required_. Here's a minimal implementation of an optional argument:
316
316
 
317
317
  [source,ruby]
318
318
  ----
data/lib/sod/action.rb CHANGED
@@ -8,9 +8,9 @@ module Sod
8
8
  class Action
9
9
  extend Forwardable
10
10
 
11
- def self.inherited subclass
11
+ def self.inherited descendant
12
12
  super
13
- subclass.class_eval { @attributes = {} }
13
+ descendant.class_eval { @attributes = {} }
14
14
  end
15
15
 
16
16
  def self.description text
data/lib/sod/command.rb CHANGED
@@ -10,9 +10,9 @@ module Sod
10
10
 
11
11
  include Import[:logger]
12
12
 
13
- def self.inherited subclass
13
+ def self.inherited descendant
14
14
  super
15
- subclass.class_eval { @actions = Set.new }
15
+ descendant.class_eval { @actions = Set.new }
16
16
  end
17
17
 
18
18
  def self.handle text
data/lib/sod.rb CHANGED
@@ -2,12 +2,16 @@
2
2
 
3
3
  require "zeitwerk"
4
4
 
5
- Zeitwerk::Loader.for_gem.then do |loader|
5
+ Zeitwerk::Loader.new.then do |loader|
6
6
  loader.ignore "#{__dir__}/sod/types"
7
+ loader.tag = File.basename __FILE__, ".rb"
8
+ loader.push_dir __dir__
7
9
  loader.setup
8
10
  end
9
11
 
10
12
  # Main namespace.
11
13
  module Sod
14
+ def self.loader(registry = Zeitwerk::Registry) = registry.loader_for __FILE__
15
+
12
16
  def self.new(...) = Shell.new(...)
13
17
  end
data/sod.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = "sod"
5
- spec.version = "0.1.1"
5
+ spec.version = "0.2.0"
6
6
  spec.authors = ["Brooke Kuhlmann"]
7
7
  spec.email = ["brooke@alchemists.io"]
8
8
  spec.homepage = "https://alchemists.io/projects/sod"
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sod
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.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-06-23 00:00:00.000000000 Z
38
+ date: 2023-10-01 00:00:00.000000000 Z
39
39
  dependencies:
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: cogger
@@ -183,7 +183,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
183
183
  - !ruby/object:Gem::Version
184
184
  version: '0'
185
185
  requirements: []
186
- rubygems_version: 3.4.14
186
+ rubygems_version: 3.4.20
187
187
  signing_key:
188
188
  specification_version: 4
189
189
  summary: A domain specific language for creating composable command line interfaces.
metadata.gz.sig CHANGED
Binary file