coaster 1.4.13 → 1.4.15

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: d279a04cfebf399525a91a6c5a420edb97b1e88e2e546cd731cca891a331f3dd
4
- data.tar.gz: a631c80a70d26b6def26707657a4a5936011f2b937de0b0389f1245d5c9ff7b5
3
+ metadata.gz: '05148ce7220929cde94487a2b368436630b00d84acd3f3d7dbecd8615834f5ce'
4
+ data.tar.gz: bb01490b06fd771896beca2e0f3db3c9cf44286e60b733b29598ed3186660cc2
5
5
  SHA512:
6
- metadata.gz: e4172c445dd990e6ed2950f60a688abc87b6824d935a8a1a52e2dbd1267245f5d22bfc056fd76f7328de74ca776ee2b3e6531993952384e91ecb90d2dc247229
7
- data.tar.gz: ec9afaecd622f124d418a8b00aff82783ec92fef04096c07a1b0ee58dc569f13ecc0bf923dab961768d0dde134fb24a107d83f3481aa956be944edd4ec583ffe
6
+ metadata.gz: 14739671089cd45b658bc3268e88b73135199b0ba08e2f0d411bc059d2686c0539a13ec4891894fac65edaa7bef3baa9aac902d6119587dc0e128e5b70037777
7
+ data.tar.gz: 80dad5a88e45bc18f83b50baf856d47260b75d2aa1efe1cde0f40d289c49d9df53649030053b0a753ccd10a75eae19fab3640ef5d7bdb93728e5f12341bd8c3a
data/lib/coaster/util.rb CHANGED
@@ -52,7 +52,8 @@ module Coaster
52
52
  end
53
53
 
54
54
  array_keys = (array_start...(step2.keys.size+array_start)).to_a
55
- if array_keys == step2.keys.map(&:to_i).sort
55
+ step2_keys = step2.keys.map {|k| Integer(k)} rescue nil
56
+ if array_keys == step2_keys
56
57
  step3 = []
57
58
  array_keys.map(&:to_s).each do |k|
58
59
  step3 << step2[k]
@@ -1,3 +1,3 @@
1
1
  module Coaster
2
- VERSION = '1.4.13'
2
+ VERSION = '1.4.15'
3
3
  end
data/lib/coaster.rb CHANGED
@@ -1,6 +1,9 @@
1
1
  require 'oj'
2
- require 'active_support/deprecation'
3
- require 'active_support/deprecator'
2
+ spec = Gem.loaded_specs.find{|name, spec| name == 'activesupport'}[1]
3
+ if spec.version >= Gem::Version.new('7.1')
4
+ require 'active_support/deprecation'
5
+ require 'active_support/deprecator'
6
+ end
4
7
  require 'active_support/core_ext/hash/indifferent_access'
5
8
  require 'active_support/core_ext/module/attribute_accessors'
6
9
  require 'active_support/core_ext/class/attribute_accessors'
data/test/test_util.rb CHANGED
@@ -38,5 +38,12 @@ module Coaster
38
38
  b = Util.roughen_hashify(res, array_start: 1, delimiter: '/')
39
39
  assert_equal(a, b)
40
40
  end
41
+
42
+ def test_roughen_hashify
43
+ assert_equal({'a'=> [2, 3]}, Util.roughen_hashify({'a.0' => 2, 'a.1' => 3}))
44
+ assert_equal({'a'=> [2, 3]}, Util.roughen_hashify({'a.1' => 2, 'a.2' => 3}, array_start: 1))
45
+ res = Util.roughen_hashify({"1.a"=>1, "2"=>22, "3.1"=>33, "3.2"=>44, "4.b.c.1"=>33, "4.b.c.2.d"=>4}, array_start: 1)
46
+ assert_equal([{"a"=>1}, 22, [33, 44], {"b"=>{"c"=>[33, {"d"=>4}]}}], res)
47
+ end
41
48
  end
42
49
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: coaster
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.13
4
+ version: 1.4.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - buzz jung
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-06-12 00:00:00.000000000 Z
11
+ date: 2024-07-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: oj
@@ -246,7 +246,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
246
246
  - !ruby/object:Gem::Version
247
247
  version: '0'
248
248
  requirements: []
249
- rubygems_version: 3.3.27
249
+ rubygems_version: 3.4.19
250
250
  signing_key:
251
251
  specification_version: 4
252
252
  summary: A little convenient feature for standard library