command_kit 0.5.2 → 0.5.4

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: 77d44bdde55ae89aeda2ce28446ae9916a2da06b4315e650c0d1cd76340df2c1
4
- data.tar.gz: eaebe86478899a3da8574888c29596fc7e5bedd271afc5248fc9784ba424b2c3
3
+ metadata.gz: 83223487d6792cceec7a536b0c081e86c85f14b6eb57007e2dfeade8c61f5d46
4
+ data.tar.gz: f36a7a1867c6d992fccdf06827150f68e3c417c9a314509ddd24f7581acb2a7c
5
5
  SHA512:
6
- metadata.gz: 1eaf5bc70d5c16251e1016738616cccb5b8363763afe2ac9c1dfda4688f5e10792ea574d6d95edbc0793f21ee05ea003e27bb73bd59ae993222182ce6cff4345
7
- data.tar.gz: 30fb59826cdf6c596a5f0f2895be7f1e1a64534d328c55bc985d20a3d29161a2ccb3453bfd65d4c2faec869256d70781b05b727bcb946e3f56ca519391f99a37
6
+ metadata.gz: 4def910755bee46456d5104ffad06fb2b6ba4d048aaed137595c08eea9dfe602603ccc2f7f46771b4ab4de2f27bd2e7e1feb5f0e4b5de3a2e6321f316ed6a28b
7
+ data.tar.gz: 33dc0be92e533bf131edb88570a13677b9841fdd83f7c676b2ba12fe4d3693d974081a922e11e44a747a7854c0604ec4bdaf372ddb7909137c4568caa1a7d9ba
data/ChangeLog.md CHANGED
@@ -1,3 +1,17 @@
1
+ ### 0.5.4 / 2024-03-14
2
+
3
+ #### CommandKit::Options
4
+
5
+ * Fixed a bug where `Array` option values were only setting the option's value
6
+ to the first element of the parsed `Array` value.
7
+
8
+ ### 0.5.3 / 2024-03-12
9
+
10
+ #### CommandKit::Interactive
11
+
12
+ * Fixed {CommandKit::Interactive#ask} to remove the newline from the read user
13
+ input.
14
+
1
15
  ### 0.5.2 / 2024-03-07
2
16
 
3
17
  #### CommandKit::Options
@@ -77,7 +77,7 @@ module CommandKit
77
77
  stdout.print(prompt)
78
78
 
79
79
  loop do
80
- value = stdin.gets
80
+ value = stdin.gets(chomp: true)
81
81
  value ||= '' # convert nil values (ctrl^D) to an empty String
82
82
 
83
83
  if value.empty?
@@ -302,16 +302,19 @@ module CommandKit
302
302
  # @param [Option] option
303
303
  #
304
304
  def define_option(option)
305
- default_value = option.default_value
306
-
307
- @options[option.name] = default_value unless default_value.nil?
305
+ unless (default_value = option.default_value).nil?
306
+ @options[option.name] = default_value
307
+ end
308
308
 
309
- option_parser.on(*option.usage,option.type,*option.desc) do |arg,*captures|
310
- @options[option.name] = arg
309
+ option_parser.on(*option.usage,option.type,*option.desc) do |value|
310
+ @options[option.name] = if option.type.is_a?(Regexp) &&
311
+ value.is_a?(Array)
312
+ value.first
313
+ else
314
+ value
315
+ end
311
316
 
312
- if option.block
313
- instance_exec(*arg,*captures,&option.block)
314
- end
317
+ instance_exec(value,&option.block) if option.block
315
318
  end
316
319
  end
317
320
  end
@@ -2,5 +2,5 @@
2
2
 
3
3
  module CommandKit
4
4
  # command_kit version
5
- VERSION = "0.5.2"
5
+ VERSION = "0.5.4"
6
6
  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.5.2
4
+ version: 0.5.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Postmodern
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-03-08 00:00:00.000000000 Z
11
+ date: 2024-03-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler