command_kit 0.2.2 → 0.4.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.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby.yml +4 -5
  3. data/.rubocop.yml +14 -1
  4. data/ChangeLog.md +82 -0
  5. data/Gemfile +2 -0
  6. data/LICENSE.txt +1 -1
  7. data/README.md +18 -9
  8. data/command_kit.gemspec +0 -1
  9. data/examples/printing/tables.rb +141 -0
  10. data/gemspec.yml +3 -3
  11. data/lib/command_kit/arguments/argument.rb +2 -2
  12. data/lib/command_kit/arguments.rb +27 -2
  13. data/lib/command_kit/bug_report.rb +105 -0
  14. data/lib/command_kit/colors.rb +488 -15
  15. data/lib/command_kit/command.rb +1 -2
  16. data/lib/command_kit/edit.rb +54 -0
  17. data/lib/command_kit/env.rb +1 -1
  18. data/lib/command_kit/file_utils.rb +46 -0
  19. data/lib/command_kit/options/option.rb +45 -22
  20. data/lib/command_kit/options/option_value.rb +2 -2
  21. data/lib/command_kit/options/parser.rb +1 -4
  22. data/lib/command_kit/options/quiet.rb +1 -1
  23. data/lib/command_kit/options/verbose.rb +2 -2
  24. data/lib/command_kit/options/version.rb +10 -0
  25. data/lib/command_kit/options.rb +89 -14
  26. data/lib/command_kit/os.rb +1 -1
  27. data/lib/command_kit/printing/fields.rb +56 -0
  28. data/lib/command_kit/printing/indent.rb +1 -1
  29. data/lib/command_kit/printing/lists.rb +91 -0
  30. data/lib/command_kit/printing/tables/border_style.rb +169 -0
  31. data/lib/command_kit/printing/tables/cell_builder.rb +93 -0
  32. data/lib/command_kit/printing/tables/row_builder.rb +111 -0
  33. data/lib/command_kit/printing/tables/style.rb +198 -0
  34. data/lib/command_kit/printing/tables/table_builder.rb +145 -0
  35. data/lib/command_kit/printing/tables/table_formatter.rb +254 -0
  36. data/lib/command_kit/printing/tables.rb +208 -0
  37. data/lib/command_kit/program_name.rb +9 -0
  38. data/lib/command_kit/stdio.rb +5 -1
  39. data/lib/command_kit/version.rb +1 -1
  40. data/spec/arguments_spec.rb +33 -0
  41. data/spec/bug_report_spec.rb +266 -0
  42. data/spec/colors_spec.rb +232 -195
  43. data/spec/command_name_spec.rb +1 -1
  44. data/spec/command_spec.rb +2 -2
  45. data/spec/edit_spec.rb +72 -0
  46. data/spec/file_utils_spec.rb +59 -0
  47. data/spec/fixtures/template.erb +5 -0
  48. data/spec/options/option_spec.rb +48 -2
  49. data/spec/options/parser_spec.rb +0 -10
  50. data/spec/options/quiet_spec.rb +51 -0
  51. data/spec/options/verbose_spec.rb +51 -0
  52. data/spec/options/version_spec.rb +146 -0
  53. data/spec/options_spec.rb +46 -0
  54. data/spec/pager_spec.rb +1 -1
  55. data/spec/printing/fields_spec.rb +167 -0
  56. data/spec/printing/lists_spec.rb +99 -0
  57. data/spec/printing/tables/border_style.rb +43 -0
  58. data/spec/printing/tables/cell_builer_spec.rb +135 -0
  59. data/spec/printing/tables/row_builder_spec.rb +165 -0
  60. data/spec/printing/tables/style_spec.rb +377 -0
  61. data/spec/printing/tables/table_builder_spec.rb +252 -0
  62. data/spec/printing/tables/table_formatter_spec.rb +1180 -0
  63. data/spec/printing/tables_spec.rb +1069 -0
  64. data/spec/program_name_spec.rb +8 -0
  65. metadata +36 -7
@@ -56,6 +56,14 @@ describe CommandKit::ProgramName do
56
56
  end
57
57
  end
58
58
 
59
+ describe "#command_name" do
60
+ subject { command_class.new }
61
+
62
+ it "should be the same as #program_name" do
63
+ expect(subject.command_name).to eq(subject.program_name)
64
+ end
65
+ end
66
+
59
67
  after do
60
68
  $PROGRAM_NAME = @original_program_name
61
69
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: command_kit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Postmodern
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-12-27 00:00:00.000000000 Z
11
+ date: 2022-11-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -24,8 +24,8 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '2.0'
27
- description: A Ruby toolkit for building clean, correct, and robust CLI commands as
28
- plain-old Ruby classes.
27
+ description: A modular Ruby toolkit for building clean, correct, and robust CLI commands
28
+ as plain-old Ruby classes.
29
29
  email: postmodern.mod3@gmail.com
30
30
  executables: []
31
31
  extensions: []
@@ -49,11 +49,13 @@ files:
49
49
  - examples/colors.rb
50
50
  - examples/command.rb
51
51
  - examples/pager.rb
52
+ - examples/printing/tables.rb
52
53
  - gemspec.yml
53
54
  - lib/command_kit.rb
54
55
  - lib/command_kit/arguments.rb
55
56
  - lib/command_kit/arguments/argument.rb
56
57
  - lib/command_kit/arguments/argument_value.rb
58
+ - lib/command_kit/bug_report.rb
57
59
  - lib/command_kit/colors.rb
58
60
  - lib/command_kit/command.rb
59
61
  - lib/command_kit/command_name.rb
@@ -66,11 +68,13 @@ files:
66
68
  - lib/command_kit/commands/parent_command.rb
67
69
  - lib/command_kit/commands/subcommand.rb
68
70
  - lib/command_kit/description.rb
71
+ - lib/command_kit/edit.rb
69
72
  - lib/command_kit/env.rb
70
73
  - lib/command_kit/env/home.rb
71
74
  - lib/command_kit/env/path.rb
72
75
  - lib/command_kit/examples.rb
73
76
  - lib/command_kit/exception_handler.rb
77
+ - lib/command_kit/file_utils.rb
74
78
  - lib/command_kit/help.rb
75
79
  - lib/command_kit/help/man.rb
76
80
  - lib/command_kit/inflector.rb
@@ -90,7 +94,16 @@ files:
90
94
  - lib/command_kit/package_manager.rb
91
95
  - lib/command_kit/pager.rb
92
96
  - lib/command_kit/printing.rb
97
+ - lib/command_kit/printing/fields.rb
93
98
  - lib/command_kit/printing/indent.rb
99
+ - lib/command_kit/printing/lists.rb
100
+ - lib/command_kit/printing/tables.rb
101
+ - lib/command_kit/printing/tables/border_style.rb
102
+ - lib/command_kit/printing/tables/cell_builder.rb
103
+ - lib/command_kit/printing/tables/row_builder.rb
104
+ - lib/command_kit/printing/tables/style.rb
105
+ - lib/command_kit/printing/tables/table_builder.rb
106
+ - lib/command_kit/printing/tables/table_formatter.rb
94
107
  - lib/command_kit/program_name.rb
95
108
  - lib/command_kit/stdio.rb
96
109
  - lib/command_kit/sudo.rb
@@ -101,6 +114,7 @@ files:
101
114
  - spec/arguments/argument_spec.rb
102
115
  - spec/arguments/argument_value_spec.rb
103
116
  - spec/arguments_spec.rb
117
+ - spec/bug_report_spec.rb
104
118
  - spec/colors_spec.rb
105
119
  - spec/command_kit_spec.rb
106
120
  - spec/command_name_spec.rb
@@ -116,11 +130,14 @@ files:
116
130
  - spec/commands/subcommand_spec.rb
117
131
  - spec/commands_spec.rb
118
132
  - spec/description_spec.rb
133
+ - spec/edit_spec.rb
119
134
  - spec/env/home_spec.rb
120
135
  - spec/env/path_spec.rb
121
136
  - spec/env_spec.rb
122
137
  - spec/examples_spec.rb
123
138
  - spec/exception_handler_spec.rb
139
+ - spec/file_utils_spec.rb
140
+ - spec/fixtures/template.erb
124
141
  - spec/help/man_spec.rb
125
142
  - spec/help_spec.rb
126
143
  - spec/inflector_spec.rb
@@ -131,12 +148,24 @@ files:
131
148
  - spec/options/option_spec.rb
132
149
  - spec/options/option_value_spec.rb
133
150
  - spec/options/parser_spec.rb
151
+ - spec/options/quiet_spec.rb
152
+ - spec/options/verbose_spec.rb
153
+ - spec/options/version_spec.rb
134
154
  - spec/options_spec.rb
135
155
  - spec/os/linux_spec.rb
136
156
  - spec/os_spec.rb
137
157
  - spec/package_manager_spec.rb
138
158
  - spec/pager_spec.rb
159
+ - spec/printing/fields_spec.rb
139
160
  - spec/printing/indent_spec.rb
161
+ - spec/printing/lists_spec.rb
162
+ - spec/printing/tables/border_style.rb
163
+ - spec/printing/tables/cell_builer_spec.rb
164
+ - spec/printing/tables/row_builder_spec.rb
165
+ - spec/printing/tables/style_spec.rb
166
+ - spec/printing/tables/table_builder_spec.rb
167
+ - spec/printing/tables/table_formatter_spec.rb
168
+ - spec/printing/tables_spec.rb
140
169
  - spec/printing_spec.rb
141
170
  - spec/program_name_spec.rb
142
171
  - spec/spec_helper.rb
@@ -162,15 +191,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
162
191
  requirements:
163
192
  - - ">="
164
193
  - !ruby/object:Gem::Version
165
- version: 2.7.0
194
+ version: 3.0.0
166
195
  required_rubygems_version: !ruby/object:Gem::Requirement
167
196
  requirements:
168
197
  - - ">="
169
198
  - !ruby/object:Gem::Version
170
199
  version: '0'
171
200
  requirements: []
172
- rubygems_version: 3.2.22
201
+ rubygems_version: 3.3.7
173
202
  signing_key:
174
203
  specification_version: 4
175
- summary: A toolkit for building Ruby CLI commands
204
+ summary: An all-in-one modular Ruby CLI toolkit
176
205
  test_files: []