shellopts 2.1.3 → 2.1.4

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e5a0965923d18a30dfcf2423a94e836ed70175c855c0cfe053ad6bcb4477f86e
4
- data.tar.gz: 577bbd74ae1d865294fe2959234dcf661011a8f4feaa9f267206eff41160dc5a
3
+ metadata.gz: 8e35f8f74b401892334c494a767678b724049a9e77c275884591718d7903bfdf
4
+ data.tar.gz: bec330c7546466bc6e25f74fd2d3e9ae94247db5e048515a5b342cbf9cee31a1
5
5
  SHA512:
6
- metadata.gz: a742f7189ce47ea95f0477f4a450345d95b66a871ac6f123a5c9107f3e06b2d4cbeb573fa75e7d6fc2b1947b4fac7b5f846c1ba39873faa3e5eeb8f54e8834e4
7
- data.tar.gz: bf176d5794767dc0aadd732763da86850b028cc065e5dda72d404b93355f77577ad0c7e9413d753881ca50685a137f4108f35df4c1dce38555d433888ced1f43
6
+ metadata.gz: 49f17500a669a195ba1ccd75b14f9b8417e7640c2ae54dd704a5a0995e01a644fb860a93f0d645829e3d34859955eafd58b96528226b79c57326ff8692976114
7
+ data.tar.gz: b6e29046a96b36c68a088fa43f2ee2f25ad1c0fd9da5b5741035f7cae1be9030c731e1a3491fb47b2a51730e385388e8bc373bfd7986413b954ac3be929ac22c
@@ -26,6 +26,7 @@ module ShellOpts
26
26
  # #extract raise a ShellOpts::Error exception if there's is not enough
27
27
  # elements in the array to satisfy the request
28
28
  #
29
+ # TODO: Better handling of ranges. Allow: 2..-1, -2..-4, etc.
29
30
  def extract(count_or_range, message = nil)
30
31
  case count_or_range
31
32
  when Range
@@ -52,6 +53,7 @@ module ShellOpts
52
53
  # #expect raise a ShellOpts::Error exception if the array is not emptied
53
54
  # by the operation
54
55
  #
56
+ # TODO: Better handling of ranges. Allow: 2..-1, -2..-4, etc.
55
57
  def expect(count_or_range, message = nil)
56
58
  case count_or_range
57
59
  when Range
@@ -1,3 +1,3 @@
1
1
  module ShellOpts
2
- VERSION = "2.1.3"
2
+ VERSION = "2.1.4"
3
3
  end
data/lib/shellopts.rb CHANGED
@@ -212,15 +212,15 @@ module ShellOpts
212
212
  @argv = argv.dup
213
213
  @program, @args = Interpreter.interpret(grammar, argv, float: float, exception: exception)
214
214
 
215
- # Process standard options (that may have been renamed)
216
- if @program.__send__(:"#{@help_option.ident}?")
215
+ # Process standard options that may have been renamed or be deactivated
216
+ if @help && @program.__send__(:"#{@help_option.ident}?")
217
217
  if @program[:help].name =~ /^--/
218
218
  ShellOpts.help
219
219
  else
220
220
  ShellOpts.brief
221
221
  end
222
222
  exit
223
- elsif @program.__send__(:"#{@version_option.ident}?")
223
+ elsif @version && @program.__send__(:"#{@version_option.ident}?")
224
224
  puts version_number
225
225
  exit
226
226
  else
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shellopts
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.3
4
+ version: 2.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Claus Rasmussen
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-12-02 00:00:00.000000000 Z
11
+ date: 2024-01-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: forward_to
@@ -173,7 +173,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
173
173
  - !ruby/object:Gem::Version
174
174
  version: '0'
175
175
  requirements: []
176
- rubygems_version: 3.3.7
176
+ rubygems_version: 3.3.18
177
177
  signing_key:
178
178
  specification_version: 4
179
179
  summary: Parse command line options and arguments