thefox-ext 1.9.0 → 1.10.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.
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