thefox-ext 1.9.0 → 1.10.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: 569a588809c70468e59dc2d762bf261d94108cc4d9c535c664c518c99b820914
4
- data.tar.gz: 9307e0cf0b76da29e09537bc93e7e77f70137dcb69621d94089ad24f08a080d2
3
+ metadata.gz: 6b68b006a1bf2b6cdc73ca86ef2291c7fe8561e622cdf9f4b6434df6ced40a48
4
+ data.tar.gz: 9e05dc8bedd4a625040d4899ed3f19315fa58c9a998e8cfc5749e929e15d7451
5
5
  SHA512:
6
- metadata.gz: 4e8c14d434bd57584ae5f72d2c99923af6da39c0e88b1e2cee8afb5f03776d1997be3a994e54f97632c9b96e7f280a4e2249717cdb1d4ee1163f9be7c8c98e20
7
- data.tar.gz: 5f4527fb0be38f6e1c4018a8896374475405565907484d894e5294bdb43f989050f1af2217b25c12095d454a64f162fd148355a0685218560d6ad1e085e6c735
6
+ metadata.gz: 91b5ff18299878084605508f46a5559b8339d52006e32b1908c5a44ee8c04bfa420cddd6fabdf8c7f0996b4d093dae9c916d9affd4efc0c22df3aca2d4ff181d
7
+ data.tar.gz: d7629b1cff75db5e14ea30a5cd5d08f12227146e61491ca41368d696d7f5b3c5ee020161389fa6d7af113bbe8b7ac0fb9038ec95f32260fff4b552b6a48e7603
data/CHANGELOG-v1.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Release Notes for Extended Ruby Classes v1.x
2
2
 
3
+ ## v1.10.0
4
+
5
+ - [DEPRECATION] `Array.resolve_range_str` is deprecated.
6
+ - [DEPRECATION] `String.resolve_range` is deprecated.
7
+
3
8
  ## v1.9.0
4
9
 
5
10
  - Tests
data/README.md CHANGED
@@ -21,7 +21,7 @@ gem install thefox-ext
21
21
  or via `Gemfile`:
22
22
 
23
23
  ```ruby
24
- gem 'thefox-ext', '~>1.9'
24
+ gem 'thefox-ext', '~>1.10'
25
25
  ```
26
26
 
27
27
  Use it in your sources:
data/bin/dev CHANGED
@@ -4,10 +4,3 @@
4
4
  require 'thefox-ext'
5
5
  require 'pp'
6
6
 
7
- # pp '5{1,2}'.resolve_range()
8
- # pp '1,2{1-3,5,6,7},4,5{1,2}'.resolve_range()
9
- # pp [1, 2].resolve_range_str('3, 4')
10
- # pp Array.resolve_range_str('3,4')
11
- # pp '3, 4'.resolve_range()
12
- # pp '3, 4'.resolve_range()
13
- # pp '3, 4'.resolve_range2()
@@ -1,9 +1,9 @@
1
1
 
2
2
  class Array
3
3
 
4
- # DEPRECATED: will be removed in v1.10.0.
4
+ # DEPRECATED: will be removed in v2.0.0.
5
5
  def self.resolve_range_str(original_str, prefix = '')
6
- warn "[DEPRECATION] `Array.resolve_range_str` is deprecated. Please use `String.resolve_range` instead."
6
+ warn "[DEPRECATION] `Array.resolve_range_str` is deprecated."
7
7
 
8
8
  rv = Array.new
9
9
  if !original_str.is_a?(String)
@@ -64,39 +64,33 @@ class String
64
64
  end
65
65
  end
66
66
 
67
- # Resolve a range string to an array.
68
- # A range string can be like '1, 3..5, 9-11, 12+, 14++, 17+++'.
69
- # Which will be resolved to [1, 3, 4, 5, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20].
67
+ # DEPRECATED: will be removed in v2.0.0.
70
68
  def resolve_range(prefix = '')
71
69
  # puts '-> resolve_range: %s {%s}' % [self, prefix]
70
+ warn "[DEPRECATION] `String.resolve_range` is deprecated. Please use `TheFox::Range::Resolver` instead."
72
71
 
73
72
  rv = Array.new
74
73
 
75
- items1 = self.split(',')
76
- # pp items1
77
-
78
- items2 = []
74
+ items = []
79
75
  is_sub_range = false
80
76
  sub_item = []
81
- items1.each do |item|
77
+ self.split(',').each do |item|
82
78
  if item.count('{') > 0
83
79
  is_sub_range = true
84
80
  end
85
81
  if is_sub_range
86
82
  sub_item.push(item)
87
83
  else
88
- items2.push(item)
84
+ items.push(item)
89
85
  end
90
86
  if item.count('}') > 0
91
87
  is_sub_range = false
92
- items2.push(sub_item.join(','))
88
+ items.push(sub_item.join(','))
93
89
  sub_item = []
94
90
  end
95
91
  end
96
92
 
97
- # pp items2
98
-
99
- items2.map{ |item|
93
+ items.map{ |item|
100
94
  item_striped = item.strip
101
95
  if range_match = item_striped.match(/(\d+)\{([\d\-\+,]+)\}/)
102
96
  range_match[2].resolve_range(range_match[1])
@@ -105,8 +99,7 @@ class String
105
99
  elsif /-/.match(item_striped)
106
100
  Range.new(*item_striped.split('-', 2).map{ |range| range.to_i })
107
101
  elsif /\+/.match(item_striped)
108
- items = item_striped.split('+')
109
- range_begin = items[0].to_i
102
+ range_begin = item_striped.split('+').first.to_i
110
103
  range_end = range_begin + item_striped.count('+')
111
104
  Range.new(range_begin, range_end)
112
105
  else
@@ -1,8 +1,8 @@
1
1
 
2
2
  module TheFox
3
3
  module Ext
4
- VERSION = '1.9.0'
5
- DATE = '2021-04-05'
4
+ VERSION = '1.10.0'
5
+ DATE = '2021-04-08'
6
6
  HOMEPAGE = 'https://github.com/TheFox/ext.rb'
7
7
  end
8
8
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: thefox-ext
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.0
4
+ version: 1.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christian Mayer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-05 00:00:00.000000000 Z
11
+ date: 2021-04-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -105,7 +105,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
105
105
  - !ruby/object:Gem::Version
106
106
  version: '0'
107
107
  requirements: []
108
- rubygems_version: 3.2.3
108
+ rubygems_version: 3.2.15
109
109
  signing_key:
110
110
  specification_version: 4
111
111
  summary: Extended Ruby Classes