pennyworth 11.2.0 → 12.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/LICENSE.adoc +207 -155
  4. data/README.adoc +38 -39
  5. data/{bin → exe}/pennyworth +0 -0
  6. data/lib/pennyworth/cli/actions/config.rb +1 -1
  7. data/lib/pennyworth/cli/actions/encodings.rb +1 -1
  8. data/lib/pennyworth/cli/actions/git_hub.rb +1 -1
  9. data/lib/pennyworth/cli/actions/http_statuses.rb +1 -1
  10. data/lib/pennyworth/cli/actions/ruby_gems.rb +1 -1
  11. data/lib/pennyworth/cli/actions/system/errors.rb +1 -1
  12. data/lib/pennyworth/cli/actions/system/signals.rb +1 -1
  13. data/lib/pennyworth/cli/actions/text.rb +1 -1
  14. data/lib/pennyworth/cli/parser.rb +33 -0
  15. data/lib/pennyworth/cli/parsers/core.rb +4 -3
  16. data/lib/pennyworth/cli/parsers/git_hub.rb +3 -2
  17. data/lib/pennyworth/cli/parsers/ruby_gems.rb +3 -2
  18. data/lib/pennyworth/cli/shell.rb +3 -3
  19. data/lib/pennyworth/configuration/content.rb +33 -0
  20. data/lib/pennyworth/{cli/configuration → configuration}/defaults.yml +0 -0
  21. data/lib/pennyworth/configuration/loader.rb +35 -0
  22. data/lib/pennyworth/container.rb +1 -1
  23. data/lib/pennyworth/identity.rb +1 -1
  24. data/lib/pennyworth/inflector.rb +1 -1
  25. data/lib/pennyworth/integrations/git_hub/client.rb +1 -1
  26. data/lib/pennyworth/loaders/http_statuses.rb +2 -2
  27. data/lib/pennyworth/loaders/system/signals.rb +1 -1
  28. data.tar.gz.sig +0 -0
  29. metadata +19 -19
  30. metadata.gz.sig +0 -0
  31. data/lib/pennyworth/cli/configuration/content.rb +0 -28
  32. data/lib/pennyworth/cli/configuration/loader.rb +0 -37
  33. data/lib/pennyworth/cli/parsers/assembler.rb +0 -32
  34. data/lib/pennyworth/cli/parsers.rb +0 -11
metadata CHANGED
@@ -1,12 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pennyworth
3
3
  version: !ruby/object:Gem::Version
4
- version: 11.2.0
4
+ version: 12.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brooke Kuhlmann
8
8
  autorequire:
9
- bindir: bin
9
+ bindir: exe
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
@@ -28,7 +28,7 @@ cert_chain:
28
28
  lkHilIrX69jq8wMPpBhlaw2mRmeSL50Wv5u6xVBvOHhXFSP1crXM95vfLhLyRYod
29
29
  W2A=
30
30
  -----END CERTIFICATE-----
31
- date: 2021-10-02 00:00:00.000000000 Z
31
+ date: 2022-01-01 00:00:00.000000000 Z
32
32
  dependencies:
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: dry-container
@@ -92,42 +92,42 @@ dependencies:
92
92
  requirements:
93
93
  - - "~>"
94
94
  - !ruby/object:Gem::Version
95
- version: '8.0'
95
+ version: '9.0'
96
96
  type: :runtime
97
97
  prerelease: false
98
98
  version_requirements: !ruby/object:Gem::Requirement
99
99
  requirements:
100
100
  - - "~>"
101
101
  - !ruby/object:Gem::Version
102
- version: '8.0'
102
+ version: '9.0'
103
103
  - !ruby/object:Gem::Dependency
104
104
  name: runcom
105
105
  requirement: !ruby/object:Gem::Requirement
106
106
  requirements:
107
107
  - - "~>"
108
108
  - !ruby/object:Gem::Version
109
- version: '7.0'
109
+ version: '8.0'
110
110
  type: :runtime
111
111
  prerelease: false
112
112
  version_requirements: !ruby/object:Gem::Requirement
113
113
  requirements:
114
114
  - - "~>"
115
115
  - !ruby/object:Gem::Version
116
- version: '7.0'
116
+ version: '8.0'
117
117
  - !ruby/object:Gem::Dependency
118
118
  name: zeitwerk
119
119
  requirement: !ruby/object:Gem::Requirement
120
120
  requirements:
121
121
  - - "~>"
122
122
  - !ruby/object:Gem::Version
123
- version: '2.4'
123
+ version: '2.5'
124
124
  type: :runtime
125
125
  prerelease: false
126
126
  version_requirements: !ruby/object:Gem::Requirement
127
127
  requirements:
128
128
  - - "~>"
129
129
  - !ruby/object:Gem::Version
130
- version: '2.4'
130
+ version: '2.5'
131
131
  description:
132
132
  email:
133
133
  - brooke@alchemists.io
@@ -140,7 +140,7 @@ extra_rdoc_files:
140
140
  files:
141
141
  - LICENSE.adoc
142
142
  - README.adoc
143
- - bin/pennyworth
143
+ - exe/pennyworth
144
144
  - lib/pennyworth.rb
145
145
  - lib/pennyworth/cli/actions/config.rb
146
146
  - lib/pennyworth/cli/actions/encodings.rb
@@ -150,15 +150,14 @@ files:
150
150
  - lib/pennyworth/cli/actions/system/errors.rb
151
151
  - lib/pennyworth/cli/actions/system/signals.rb
152
152
  - lib/pennyworth/cli/actions/text.rb
153
- - lib/pennyworth/cli/configuration/content.rb
154
- - lib/pennyworth/cli/configuration/defaults.yml
155
- - lib/pennyworth/cli/configuration/loader.rb
156
- - lib/pennyworth/cli/parsers.rb
157
- - lib/pennyworth/cli/parsers/assembler.rb
153
+ - lib/pennyworth/cli/parser.rb
158
154
  - lib/pennyworth/cli/parsers/core.rb
159
155
  - lib/pennyworth/cli/parsers/git_hub.rb
160
156
  - lib/pennyworth/cli/parsers/ruby_gems.rb
161
157
  - lib/pennyworth/cli/shell.rb
158
+ - lib/pennyworth/configuration/content.rb
159
+ - lib/pennyworth/configuration/defaults.yml
160
+ - lib/pennyworth/configuration/loader.rb
162
161
  - lib/pennyworth/container.rb
163
162
  - lib/pennyworth/identity.rb
164
163
  - lib/pennyworth/inflector.rb
@@ -192,11 +191,12 @@ files:
192
191
  - lib/pennyworth/serializers/text.rb
193
192
  homepage: https://www.alchemists.io/projects/pennyworth
194
193
  licenses:
195
- - Apache-2.0
194
+ - Hippocratic-3.0
196
195
  metadata:
197
196
  bug_tracker_uri: https://github.com/bkuhlmann/pennyworth/issues
198
- changelog_uri: https://www.alchemists.io/projects/pennyworth/changes.html
197
+ changelog_uri: https://www.alchemists.io/projects/pennyworth/versions
199
198
  documentation_uri: https://www.alchemists.io/projects/pennyworth
199
+ rubygems_mfa_required: 'true'
200
200
  source_code_uri: https://github.com/bkuhlmann/pennyworth
201
201
  post_install_message:
202
202
  rdoc_options: []
@@ -206,14 +206,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
206
206
  requirements:
207
207
  - - "~>"
208
208
  - !ruby/object:Gem::Version
209
- version: '3.0'
209
+ version: '3.1'
210
210
  required_rubygems_version: !ruby/object:Gem::Requirement
211
211
  requirements:
212
212
  - - ">="
213
213
  - !ruby/object:Gem::Version
214
214
  version: '0'
215
215
  requirements: []
216
- rubygems_version: 3.2.28
216
+ rubygems_version: 3.3.4
217
217
  signing_key:
218
218
  specification_version: 4
219
219
  summary: A command line interface that augments Alfred workflows.
metadata.gz.sig CHANGED
Binary file
@@ -1,28 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Pennyworth
4
- module CLI
5
- module Configuration
6
- # Defines configuration content as the primary source of truth for use throughout the gem.
7
- Content = Struct.new :action_encodings,
8
- :action_git_hub,
9
- :action_http_statuses,
10
- :action_ruby_gems,
11
- :action_system_errors,
12
- :action_system_signals,
13
- :action_text,
14
- :action_config,
15
- :action_version,
16
- :action_help,
17
- :alfred_preferences,
18
- :inflections,
19
- :git_hub_api_url,
20
- :git_hub_organization,
21
- :git_hub_user,
22
- :http_statuses_url,
23
- :ruby_gems_api_url,
24
- :ruby_gems_owner,
25
- keyword_init: true
26
- end
27
- end
28
- end
@@ -1,37 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "pathname"
4
- require "refinements/hashes"
5
- require "refinements/structs"
6
- require "runcom"
7
- require "yaml"
8
-
9
- module Pennyworth
10
- module CLI
11
- module Configuration
12
- # Represents the fully assembled Command Line Interface (CLI) configuration.
13
- class Loader
14
- using Refinements::Hashes
15
- using Refinements::Structs
16
-
17
- DEFAULTS = YAML.load_file(Pathname(__dir__).join("defaults.yml")).freeze
18
- HANDLER = Runcom::Config.new "#{Identity::NAME}/configuration.yml", defaults: DEFAULTS
19
-
20
- def self.call = new.call
21
-
22
- def self.with_defaults = new(handler: DEFAULTS)
23
-
24
- def initialize content: Content.new, handler: HANDLER
25
- @content = content
26
- @handler = handler
27
- end
28
-
29
- def call = content.merge(**handler.to_h.flatten_keys)
30
-
31
- private
32
-
33
- attr_reader :content, :handler
34
- end
35
- end
36
- end
37
- end
@@ -1,32 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Pennyworth
4
- module CLI
5
- module Parsers
6
- SECTIONS = [Core, GitHub, RubyGems].freeze # Order is important.
7
-
8
- # Assembles and parses all Command Line Interface (CLI) options.
9
- class Assembler
10
- def initialize configuration = CLI::Configuration::Loader.call,
11
- sections: SECTIONS,
12
- client: CLIENT
13
- @configuration = configuration
14
- @sections = sections
15
- @client = client
16
- end
17
-
18
- def call arguments = []
19
- sections.each { |parser| parser.call configuration, client: client }
20
- client.parse! arguments
21
- configuration
22
- end
23
-
24
- def to_s = client.to_s
25
-
26
- private
27
-
28
- attr_reader :configuration, :client, :sections
29
- end
30
- end
31
- end
32
- end
@@ -1,11 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "optparse"
4
-
5
- module Pennyworth
6
- module CLI
7
- module Parsers
8
- CLIENT = OptionParser.new nil, 40, " "
9
- end
10
- end
11
- end