agile_utils 0.2.1 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ #### 0.2.2
2
+
3
+ - Support more ruby version start from 1.9.3+
4
+ - Update gem dependencies
5
+ - Add 'active-support-core-ext' gem
6
+
1
7
  #### 0.2.1
2
8
 
3
9
  - Make ruby 2.1.0 explicit requirement
data/agile_utils.gemspec CHANGED
@@ -11,7 +11,7 @@ Gem::Specification.new do |spec|
11
11
  spec.description = %q(My collection of library that I have used that can be shared across multiple projects)
12
12
  spec.homepage = "https://github.com/agilecreativity/agile_utils"
13
13
  spec.license = "MIT"
14
- spec.required_ruby_version = ">= 2.1.0"
14
+ spec.required_ruby_version = ">= 1.9.3"
15
15
  spec.files = Dir.glob("{bin,lib}/**/*") + %w[Gemfile
16
16
  Rakefile
17
17
  agile_utils.gemspec
@@ -23,17 +23,18 @@ Gem::Specification.new do |spec|
23
23
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
24
24
  spec.test_files = Dir.glob("{test}/**/*")
25
25
  spec.require_paths = ["lib"]
26
- spec.add_runtime_dependency "thor", "~> 0.19"
26
+ spec.add_runtime_dependency "thor", "~> 0.19.1"
27
27
  spec.add_runtime_dependency "minitar", "~> 0.5.4"
28
- spec.add_development_dependency "bundler", "~> 1.5"
29
- spec.add_development_dependency "rake", "~> 10.1"
30
- spec.add_development_dependency "awesome_print", "~> 1.2"
28
+ spec.add_runtime_dependency "activesupport-core-ext", "~> 4.0.0.2"
29
+ spec.add_development_dependency "bundler", "~> 1.7.0"
30
+ spec.add_development_dependency "rake", "~> 10.3.2"
31
+ spec.add_development_dependency "awesome_print", "~> 1.2.0"
31
32
  spec.add_development_dependency "minitest-spec-context", "~> 0.0.3"
32
- spec.add_development_dependency "guard-minitest", "~> 2.2"
33
- spec.add_development_dependency "minitest", "~> 5.3"
34
- spec.add_development_dependency "guard", "~> 2.6"
35
- spec.add_development_dependency "pry", "~> 0.9.10"
36
- spec.add_development_dependency "gem-ctags", "~> 1.0"
37
- spec.add_development_dependency "yard", "~> 0.8"
38
- spec.add_development_dependency "rubocop", "~> 0.23"
33
+ spec.add_development_dependency "guard-minitest", "~> 2.3.1"
34
+ spec.add_development_dependency "minitest", "~> 5.4.0"
35
+ spec.add_development_dependency "guard", "~> 2.6.1"
36
+ spec.add_development_dependency "pry", "~> 0.10.0"
37
+ spec.add_development_dependency "gem-ctags", "~> 1.0.6"
38
+ spec.add_development_dependency "yard", "~> 0.8.7"
39
+ spec.add_development_dependency "rubocop", "~> 0.24.1"
39
40
  end
data/lib/agile_utils.rb CHANGED
@@ -1,6 +1,11 @@
1
+ # Make use of core_extension (don't invent the wheel)
2
+ require 'active_support'
3
+ require 'active_support/core_ext/object/blank'
4
+ require 'active_support/core_ext/hash/keys'
5
+ require 'active_support/core_ext/hash/indifferent_access'
6
+ require 'active_support/core_ext/kernel/reporting'
7
+
1
8
  require_relative "./agile_utils/version"
2
- require_relative "./agile_utils/core_ext/blank_ext"
3
- require_relative "./agile_utils/core_ext/hash_ext"
4
9
  require_relative "./agile_utils/cli"
5
10
  require_relative "./agile_utils/helper"
6
11
  require_relative "./agile_utils/file_util"
@@ -1,3 +1,3 @@
1
1
  module AgileUtils
2
- VERSION = "0.2.1"
2
+ VERSION = "0.2.2"
3
3
  end
metadata CHANGED
@@ -1,197 +1,240 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: agile_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Burin Choomnuan
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2014-07-31 00:00:00.000000000 Z
12
+ date: 2014-08-14 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: thor
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
- - - "~>"
19
+ - - ~>
18
20
  - !ruby/object:Gem::Version
19
- version: '0.19'
21
+ version: 0.19.1
20
22
  type: :runtime
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
- - - "~>"
27
+ - - ~>
25
28
  - !ruby/object:Gem::Version
26
- version: '0.19'
29
+ version: 0.19.1
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: minitar
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
- - - "~>"
35
+ - - ~>
32
36
  - !ruby/object:Gem::Version
33
37
  version: 0.5.4
34
38
  type: :runtime
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
- - - "~>"
43
+ - - ~>
39
44
  - !ruby/object:Gem::Version
40
45
  version: 0.5.4
46
+ - !ruby/object:Gem::Dependency
47
+ name: activesupport-core-ext
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ~>
52
+ - !ruby/object:Gem::Version
53
+ version: 4.0.0.2
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 4.0.0.2
41
62
  - !ruby/object:Gem::Dependency
42
63
  name: bundler
43
64
  requirement: !ruby/object:Gem::Requirement
65
+ none: false
44
66
  requirements:
45
- - - "~>"
67
+ - - ~>
46
68
  - !ruby/object:Gem::Version
47
- version: '1.5'
69
+ version: 1.7.0
48
70
  type: :development
49
71
  prerelease: false
50
72
  version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
51
74
  requirements:
52
- - - "~>"
75
+ - - ~>
53
76
  - !ruby/object:Gem::Version
54
- version: '1.5'
77
+ version: 1.7.0
55
78
  - !ruby/object:Gem::Dependency
56
79
  name: rake
57
80
  requirement: !ruby/object:Gem::Requirement
81
+ none: false
58
82
  requirements:
59
- - - "~>"
83
+ - - ~>
60
84
  - !ruby/object:Gem::Version
61
- version: '10.1'
85
+ version: 10.3.2
62
86
  type: :development
63
87
  prerelease: false
64
88
  version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
65
90
  requirements:
66
- - - "~>"
91
+ - - ~>
67
92
  - !ruby/object:Gem::Version
68
- version: '10.1'
93
+ version: 10.3.2
69
94
  - !ruby/object:Gem::Dependency
70
95
  name: awesome_print
71
96
  requirement: !ruby/object:Gem::Requirement
97
+ none: false
72
98
  requirements:
73
- - - "~>"
99
+ - - ~>
74
100
  - !ruby/object:Gem::Version
75
- version: '1.2'
101
+ version: 1.2.0
76
102
  type: :development
77
103
  prerelease: false
78
104
  version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
79
106
  requirements:
80
- - - "~>"
107
+ - - ~>
81
108
  - !ruby/object:Gem::Version
82
- version: '1.2'
109
+ version: 1.2.0
83
110
  - !ruby/object:Gem::Dependency
84
111
  name: minitest-spec-context
85
112
  requirement: !ruby/object:Gem::Requirement
113
+ none: false
86
114
  requirements:
87
- - - "~>"
115
+ - - ~>
88
116
  - !ruby/object:Gem::Version
89
117
  version: 0.0.3
90
118
  type: :development
91
119
  prerelease: false
92
120
  version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
93
122
  requirements:
94
- - - "~>"
123
+ - - ~>
95
124
  - !ruby/object:Gem::Version
96
125
  version: 0.0.3
97
126
  - !ruby/object:Gem::Dependency
98
127
  name: guard-minitest
99
128
  requirement: !ruby/object:Gem::Requirement
129
+ none: false
100
130
  requirements:
101
- - - "~>"
131
+ - - ~>
102
132
  - !ruby/object:Gem::Version
103
- version: '2.2'
133
+ version: 2.3.1
104
134
  type: :development
105
135
  prerelease: false
106
136
  version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
107
138
  requirements:
108
- - - "~>"
139
+ - - ~>
109
140
  - !ruby/object:Gem::Version
110
- version: '2.2'
141
+ version: 2.3.1
111
142
  - !ruby/object:Gem::Dependency
112
143
  name: minitest
113
144
  requirement: !ruby/object:Gem::Requirement
145
+ none: false
114
146
  requirements:
115
- - - "~>"
147
+ - - ~>
116
148
  - !ruby/object:Gem::Version
117
- version: '5.3'
149
+ version: 5.4.0
118
150
  type: :development
119
151
  prerelease: false
120
152
  version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
121
154
  requirements:
122
- - - "~>"
155
+ - - ~>
123
156
  - !ruby/object:Gem::Version
124
- version: '5.3'
157
+ version: 5.4.0
125
158
  - !ruby/object:Gem::Dependency
126
159
  name: guard
127
160
  requirement: !ruby/object:Gem::Requirement
161
+ none: false
128
162
  requirements:
129
- - - "~>"
163
+ - - ~>
130
164
  - !ruby/object:Gem::Version
131
- version: '2.6'
165
+ version: 2.6.1
132
166
  type: :development
133
167
  prerelease: false
134
168
  version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
135
170
  requirements:
136
- - - "~>"
171
+ - - ~>
137
172
  - !ruby/object:Gem::Version
138
- version: '2.6'
173
+ version: 2.6.1
139
174
  - !ruby/object:Gem::Dependency
140
175
  name: pry
141
176
  requirement: !ruby/object:Gem::Requirement
177
+ none: false
142
178
  requirements:
143
- - - "~>"
179
+ - - ~>
144
180
  - !ruby/object:Gem::Version
145
- version: 0.9.10
181
+ version: 0.10.0
146
182
  type: :development
147
183
  prerelease: false
148
184
  version_requirements: !ruby/object:Gem::Requirement
185
+ none: false
149
186
  requirements:
150
- - - "~>"
187
+ - - ~>
151
188
  - !ruby/object:Gem::Version
152
- version: 0.9.10
189
+ version: 0.10.0
153
190
  - !ruby/object:Gem::Dependency
154
191
  name: gem-ctags
155
192
  requirement: !ruby/object:Gem::Requirement
193
+ none: false
156
194
  requirements:
157
- - - "~>"
195
+ - - ~>
158
196
  - !ruby/object:Gem::Version
159
- version: '1.0'
197
+ version: 1.0.6
160
198
  type: :development
161
199
  prerelease: false
162
200
  version_requirements: !ruby/object:Gem::Requirement
201
+ none: false
163
202
  requirements:
164
- - - "~>"
203
+ - - ~>
165
204
  - !ruby/object:Gem::Version
166
- version: '1.0'
205
+ version: 1.0.6
167
206
  - !ruby/object:Gem::Dependency
168
207
  name: yard
169
208
  requirement: !ruby/object:Gem::Requirement
209
+ none: false
170
210
  requirements:
171
- - - "~>"
211
+ - - ~>
172
212
  - !ruby/object:Gem::Version
173
- version: '0.8'
213
+ version: 0.8.7
174
214
  type: :development
175
215
  prerelease: false
176
216
  version_requirements: !ruby/object:Gem::Requirement
217
+ none: false
177
218
  requirements:
178
- - - "~>"
219
+ - - ~>
179
220
  - !ruby/object:Gem::Version
180
- version: '0.8'
221
+ version: 0.8.7
181
222
  - !ruby/object:Gem::Dependency
182
223
  name: rubocop
183
224
  requirement: !ruby/object:Gem::Requirement
225
+ none: false
184
226
  requirements:
185
- - - "~>"
227
+ - - ~>
186
228
  - !ruby/object:Gem::Version
187
- version: '0.23'
229
+ version: 0.24.1
188
230
  type: :development
189
231
  prerelease: false
190
232
  version_requirements: !ruby/object:Gem::Requirement
233
+ none: false
191
234
  requirements:
192
- - - "~>"
235
+ - - ~>
193
236
  - !ruby/object:Gem::Version
194
- version: '0.23'
237
+ version: 0.24.1
195
238
  description: My collection of library that I have used that can be shared across multiple
196
239
  projects
197
240
  email:
@@ -201,24 +244,22 @@ executables:
201
244
  extensions: []
202
245
  extra_rdoc_files: []
203
246
  files:
204
- - ".gitignore"
205
- - ".rubocop.yml"
206
- - CHANGELOG.md
207
- - Gemfile
208
- - LICENSE
209
- - README.md
210
- - Rakefile
211
- - agile_utils.gemspec
212
247
  - bin/agile_utils
213
- - lib/agile_utils.rb
214
248
  - lib/agile_utils/base_option.rb
215
249
  - lib/agile_utils/cli.rb
216
250
  - lib/agile_utils/constant.rb
217
- - lib/agile_utils/core_ext/blank_ext.rb
218
- - lib/agile_utils/core_ext/hash_ext.rb
219
251
  - lib/agile_utils/file_util.rb
220
252
  - lib/agile_utils/helper.rb
221
253
  - lib/agile_utils/version.rb
254
+ - lib/agile_utils.rb
255
+ - Gemfile
256
+ - Rakefile
257
+ - agile_utils.gemspec
258
+ - README.md
259
+ - CHANGELOG.md
260
+ - LICENSE
261
+ - .rubocop.yml
262
+ - .gitignore
222
263
  - test/fixtures/inputs/demo1.xxx.rb
223
264
  - test/fixtures/inputs/demo2.xxx.rb
224
265
  - test/fixtures/outputs/demo1.xhtml
@@ -229,33 +270,34 @@ files:
229
270
  homepage: https://github.com/agilecreativity/agile_utils
230
271
  licenses:
231
272
  - MIT
232
- metadata: {}
233
273
  post_install_message:
234
274
  rdoc_options: []
235
275
  require_paths:
236
276
  - lib
237
277
  required_ruby_version: !ruby/object:Gem::Requirement
278
+ none: false
238
279
  requirements:
239
- - - ">="
280
+ - - ! '>='
240
281
  - !ruby/object:Gem::Version
241
- version: 2.1.0
282
+ version: 1.9.3
242
283
  required_rubygems_version: !ruby/object:Gem::Requirement
284
+ none: false
243
285
  requirements:
244
- - - ">="
286
+ - - ! '>='
245
287
  - !ruby/object:Gem::Version
246
288
  version: '0'
247
289
  requirements: []
248
290
  rubyforge_project:
249
- rubygems_version: 2.2.2
291
+ rubygems_version: 1.8.23.2
250
292
  signing_key:
251
- specification_version: 4
293
+ specification_version: 3
252
294
  summary: Collection of my ruby library that can be re-used across projects
253
295
  test_files:
254
- - test/lib/agile_utils/test_helper.rb
255
- - test/lib/agile_utils/test_file_util.rb
256
- - test/test_helper.rb
296
+ - test/fixtures/inputs/demo1.xxx.rb
297
+ - test/fixtures/inputs/demo2.xxx.rb
257
298
  - test/fixtures/outputs/demo1.xhtml
258
299
  - test/fixtures/outputs/demo2.xhtml
259
- - test/fixtures/inputs/demo2.xxx.rb
260
- - test/fixtures/inputs/demo1.xxx.rb
300
+ - test/lib/agile_utils/test_file_util.rb
301
+ - test/lib/agile_utils/test_helper.rb
302
+ - test/test_helper.rb
261
303
  has_rdoc:
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 1f8c1b541b40fa3be942b14f512ab854ba63db45
4
- data.tar.gz: fc04830898c13606a4bfa0f6f677374268e1990f
5
- SHA512:
6
- metadata.gz: 371f251fc84dfef62e3d066c4977ab68f7f0ac0300ec4066cfdd2877dbb303a485a2cbc4a8d5a237d5f7c978545c4a73796dd4ca0f42fc752fc920f388ca53a6
7
- data.tar.gz: e0b1f935542beecba8a555fffce1b63001f707f7dccef8ba532d1188005c6afb7a4c62b1a09be0f4be31e6e75cc94ce8cc45cc307ef9c875988d582e9698e5e5
@@ -1,109 +0,0 @@
1
- module AgileUtils
2
- module BlankExt
3
- # encoding: utf-8
4
- # from: active_support/core_ext/object/blank.rb
5
- refine Object do
6
- # An object is blank if it's false, empty, or a whitespace string.
7
- # For example, '', ' ', +nil+, [], and {} are all blank.
8
- #
9
- # This simplifies:
10
- #
11
- # if address.nil? || address.empty?
12
- #
13
- # ...to:
14
- #
15
- # if address.blank?
16
- def blank?
17
- respond_to?(:empty?) ? empty? : !self
18
- end
19
-
20
- # An object is present if it's not <tt>blank?</tt>.
21
- def present?
22
- !blank?
23
- end
24
-
25
- # Returns object if it's <tt>present?</tt> otherwise returns +nil+.
26
- # <tt>object.presence</tt> is equivalent to <tt>object.present? ? object : nil</tt>.
27
- #
28
- # This is handy for any representation of objects where blank is the same
29
- # as not present at all. For example, this simplifies a common check for
30
- # HTTP POST/query parameters:
31
- #
32
- # state = params[:state] if params[:state].present?
33
- # country = params[:country] if params[:country].present?
34
- # region = state || country || 'US'
35
- #
36
- # ...becomes:
37
- #
38
- # region = params[:state].presence || params[:country].presence || 'US'
39
- def presence
40
- self if present?
41
- end
42
- end
43
-
44
- refine NilClass do
45
- # +nil+ is blank:
46
- #
47
- # nil.blank? # => true
48
- def blank?
49
- true
50
- end
51
- end
52
-
53
- refine FalseClass do
54
- # +false+ is blank:
55
- #
56
- # false.blank? # => true
57
- def blank?
58
- true
59
- end
60
- end
61
-
62
- refine TrueClass do
63
- # +true+ is not blank:
64
- #
65
- # true.blank? # => false
66
- def blank?
67
- false
68
- end
69
- end
70
-
71
- refine Array do
72
- # An array is blank if it's empty:
73
- #
74
- # [].blank? # => true
75
- # [1,2,3].blank? # => false
76
- alias_method :blank?, :empty?
77
- end
78
-
79
- refine Hash do
80
- # A hash is blank if it's empty:
81
- #
82
- # {}.blank? # => true
83
- # { key: 'value' }.blank? # => false
84
- alias_method :blank?, :empty?
85
- end
86
-
87
- refine String do
88
- # A string is blank if it's empty or contains whitespaces only:
89
- #
90
- # ''.blank? # => true
91
- # ' '.blank? # => true
92
- # ' '.blank? # => true
93
- # ' something here '.blank? # => false
94
- def blank?
95
- self !~ /[^[:space:]]/
96
- end
97
- end
98
-
99
- refine Numeric do #:nodoc:
100
- # No number is blank:
101
- #
102
- # 1.blank? # => false
103
- # 0.blank? # => false
104
- def blank?
105
- false
106
- end
107
- end
108
- end
109
- end
@@ -1,58 +0,0 @@
1
- module AgileUtils
2
- module HashExt
3
- refine Hash do
4
- # File activesupport/lib/active_support/core_ext/hash/keys.rb
5
- #
6
- # hash = { name: 'Rob', age: '28' }
7
- # hash.transform_keys{ |key| key.to_s.upcase }
8
- # => { "NAME" => "Rob", "AGE" => "28" }
9
- def transform_keys
10
- result = {}
11
- each_key do |key|
12
- result[yield(key)] = self[key]
13
- end
14
- result
15
- end
16
-
17
- def transform_keys!(&block)
18
- keys.each do |key|
19
- value = delete(key)
20
- self[yield(key)] = value.is_a?(Hash) ? value.transform_keys!(&block) : value
21
- end
22
- self
23
- end
24
-
25
- # hash = { 'name' => 'Rob', 'age' => '28' }
26
- # hash.symbolize_keys
27
- # => { name: "Rob", age: "28" }
28
- def symbolize_keys
29
- transform_keys { |key| key.to_sym rescue key }
30
- end
31
-
32
- # File activesupport/lib/active_support/core_ext/hash/keys.rb, line 135
33
- def symbolize_keys!
34
- transform_keys! { |key| key.to_sym rescue key }
35
- end
36
-
37
- # Merges the caller into +other_hash+. For example,
38
- #
39
- # options = options.reverse_merge(size: 25, velocity: 10)
40
- #
41
- # is equivalent to
42
- #
43
- # options = { size: 25, velocity: 10 }.merge(options)
44
- #
45
- # This is particularly useful for initializing an options hash
46
- # with default values.
47
- def reverse_merge(other_hash)
48
- other_hash.merge(self)
49
- end
50
-
51
- # Destructive +reverse_merge+.
52
- def reverse_merge!(other_hash)
53
- # right wins if there is no left
54
- merge!(other_hash) { |key, left, right| left }
55
- end
56
- end
57
- end
58
- end