aws-sdk-dynamodb-attribute-deserializer 1.0.2 → 1.1.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: 85b1d39e60dfe058779e9bfb930f8561b22a799dbc6b9e26c0eeb11fe336010e
4
- data.tar.gz: 6b9cc8102f477e78f9f94f15d6ef29da09f585aca1d202f11cc5ba20b79656af
3
+ metadata.gz: 812c40c0d186739a07a57c862da58e48c56b42ec3f53cb89bf37c2c397cb2dbe
4
+ data.tar.gz: fac93d254c974f1d5d6ae5104ae7584caa9196caa00ac277de1111494d4b9e9d
5
5
  SHA512:
6
- metadata.gz: 74b9f295d6c4083ed6bcd8d54a6595a46f38fa0b80b818fec2bcbae5a1ece8b793421ea3785a56254e6f7f748aec8abb029ea5d04cb694d8b236d7d4a358756b
7
- data.tar.gz: 36f424a3fbec85352934ad101e47dbc336a22630a51c88329eccf8c40cf4dff7e5dfbffc80107f023fc4d9c6d808eee15118599f550cbf136ae897d45f729511
6
+ metadata.gz: e8d2e5c7649ec43d53af9486bd5c0a8c366c8878493c79ff15aa2d3e79d22f52c2959c74e4f3d6dc8222dbf3deab0400ef5d016ea55898dfa1d4c661fccfd484
7
+ data.tar.gz: e7902b90ff735992eec67b233cfa1320a9a5b1ede087fff87da8d00baf3d62ce0c401b832235bdee53e4826841ce38d9e0e78bc5f2928ab113bec8778794882b
data/Gemfile.lock CHANGED
@@ -1,12 +1,14 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- aws-sdk-dynamodb-attribute-deserializer (1.0.2)
4
+ aws-sdk-dynamodb-attribute-deserializer (1.1.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
9
  diff-lcs (1.4.4)
10
+ memory_profiler (1.0.0)
11
+ profile (0.4.0)
10
12
  rake (13.0.3)
11
13
  rspec (3.10.0)
12
14
  rspec-core (~> 3.10.0)
@@ -27,6 +29,8 @@ PLATFORMS
27
29
 
28
30
  DEPENDENCIES
29
31
  aws-sdk-dynamodb-attribute-deserializer!
32
+ memory_profiler
33
+ profile
30
34
  rake (~> 13.0)
31
35
  rspec (~> 3.2)
32
36
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = "aws-sdk-dynamodb-attribute-deserializer"
5
- spec.version = '1.0.2'
5
+ spec.version = '1.1.0'
6
6
  spec.authors = ["Julien D."]
7
7
  spec.email = ["julien@pocketsizesun.com"]
8
8
 
@@ -27,4 +27,6 @@ Gem::Specification.new do |spec|
27
27
  spec.require_paths = ["lib"]
28
28
 
29
29
  spec.add_development_dependency "rspec", "~> 3.2"
30
+ spec.add_development_dependency 'profile'
31
+ spec.add_development_dependency 'memory_profiler'
30
32
  end
@@ -1 +1,2 @@
1
+ require 'bigdecimal'
1
2
  require 'aws/dynamodb/attribute_deserializer'
@@ -14,9 +14,10 @@ module Aws
14
14
  end
15
15
 
16
16
  def translate(arg)
17
- type, value = arg.to_a.first
17
+ type = arg.keys[0]
18
+ value = arg[type]
18
19
  case type
19
- when 'N' then value.to_s
20
+ when 'N' then BigDecimal(value)
20
21
  when 'L'
21
22
  value.map { |item| translate(item) }
22
23
  when 'SS'
data/profile.rb ADDED
@@ -0,0 +1,17 @@
1
+ require 'bundler/setup'
2
+ require "aws-sdk-dynamodb-attribute-deserializer"
3
+ require "memory_profiler"
4
+
5
+ attributes = {
6
+ 'partition_key' => { 'S' => 'test' },
7
+ 'sort_key' => { 'N' => '123456.5444587778511245' }
8
+ }
9
+
10
+ items = []
11
+ report = MemoryProfiler.report do
12
+ 100.times do
13
+ items << Aws::DynamoDB::AttributeDeserializer.call(attributes)
14
+ end
15
+ end
16
+
17
+ report.pretty_print
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-dynamodb-attribute-deserializer
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Julien D.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-01-10 00:00:00.000000000 Z
11
+ date: 2021-02-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -24,6 +24,34 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '3.2'
27
+ - !ruby/object:Gem::Dependency
28
+ name: profile
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: memory_profiler
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
27
55
  description: AWS DynamoDB -Attribute Deserializer
28
56
  email:
29
57
  - julien@pocketsizesun.com
@@ -41,6 +69,7 @@ files:
41
69
  - bin/setup
42
70
  - lib/aws-sdk-dynamodb-attribute-deserializer.rb
43
71
  - lib/aws/dynamodb/attribute_deserializer.rb
72
+ - profile.rb
44
73
  homepage: https://github.com/pocketsizesun/aws-sdk-dynamodb-attribute-deserializer-ruby
45
74
  licenses: []
46
75
  metadata: