yake 1.2.0 → 1.2.1

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: 1e99f8e55a287a5e150031cefdb5c4c2d529b47f43aae0221b0aefce9a46fa90
4
- data.tar.gz: 86ea42d48978c8b96788232791b1e73438dfc4969a030f6b9eda575dc046fc8a
3
+ metadata.gz: ca67b728ac7669680177b57f9ec3425073859d9e3fccc8e336e8c1d86ee903d9
4
+ data.tar.gz: 8f02b1e165461fca8af9a36cd2ae1543ba31f49396c868a20af50ee459d394e6
5
5
  SHA512:
6
- metadata.gz: 149e7c2883d39ce168c74c1b2260e1f841dc15f892ff960a90b444e3e2ffaeb9a785a92c2cc78ba1996c12862f9f703658936e725d049383f6f7b03632cbacf2
7
- data.tar.gz: dc85d76c7dfa96f6dfbd80e75ce695caca2c82794ffefd4d68dd6f75644af97af73045babe00d5305fd222fa4f59c4fa420069d096d81fdc392b3c54a71acd59
6
+ metadata.gz: 98cf4e930f7868468509a0e1b0fdca92ddf834c404ef087c11ed70361f358ea1dee9bf7b582f72b39a1b1583c6017a40caf5022b50452fc22608a0615c3513aa
7
+ data.tar.gz: cec7cabf789420d27b88ae5cdfcfba5244422aaccf9a2fdac7e4911de180554543176c05d125123610c672e13cd922d2863e6a8ecc318487f6b5f54558a77c48
data/README.md CHANGED
@@ -179,7 +179,7 @@ end
179
179
 
180
180
  ### (Near) Zero Dependencies
181
181
 
182
- Finally, `yake` does not depend on any 3rd party gems. The only exceptions are the `json` and `logger` gems, which are being removed from the Ruby stdlib in Ruby v3.5. This helps keep your Lambda packages slim & speedy.
182
+ Finally, `yake` does not depend on any 3rd party gems. The only exceptions are the `ostruct` and `logger` gems, which are being removed from the Ruby stdlib in Ruby v3.5. This helps keep your Lambda packages slim & speedy.
183
183
 
184
184
  ## Support Helpers
185
185
 
@@ -247,10 +247,10 @@ hash.deep_transform_keys!(&:to_s)
247
247
  # => '{"a":{"b":"c","d":"e"},"f":"g"}'
248
248
 
249
249
  { f: 'g', a: { d: 'e', b: 'c' } }.to_struct
250
- # => #<OpenStruct f="g", a={:d=>"e", :b=>"c"}>
250
+ # => #<struct f="g", a={:d=>"e", :b=>"c"}>
251
251
 
252
252
  { f: 'g', a: { d: 'e', b: 'c' } }.to_deep_struct
253
- # => #<OpenStruct f="g", a=#<OpenStruct d="e", b="c">>
253
+ # => #<struct f="g", a=#<struct d="e", b="c">>
254
254
 
255
255
  { a: { b: 'c', d: 'e' }, f: 'g' }.to_dynamodb
256
256
  # => { :a => { :M => { :b => { :S => "c" }, :d => { :S => "e" } } }, :f => { :S => "g" } }
data/lib/yake/support.rb CHANGED
@@ -3,6 +3,7 @@
3
3
  require 'digest'
4
4
  require 'json'
5
5
  require 'time'
6
+ require 'uri'
6
7
 
7
8
  class Array
8
9
  def to_dynamodb = { L: map(&:to_dynamodb) }
@@ -22,7 +23,7 @@ class Hash
22
23
  def symbolize_names! = deep_transform_keys!(&:to_sym)
23
24
  def to_form = URI.encode_www_form(self)
24
25
  def to_json_sorted = deep_sort.to_json
25
- def to_struct = OpenStruct.new(self)
26
+ def to_struct = Struct.new(*keys.map(&:to_sym)).new(*values)
26
27
 
27
28
  ##
28
29
  # Adapted from ActiveSupport Hash#deep_merge
data/lib/yake/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Yake
4
- VERSION = '1.2.0'
4
+ VERSION = '1.2.1'
5
5
  end
metadata CHANGED
@@ -1,16 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yake
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Mancevice
8
+ autorequire:
8
9
  bindir: bin
9
10
  cert_chain: []
10
- date: 2025-01-15 00:00:00.000000000 Z
11
+ date: 2025-02-03 00:00:00.000000000 Z
11
12
  dependencies:
12
13
  - !ruby/object:Gem::Dependency
13
- name: json
14
+ name: ostruct
14
15
  requirement: !ruby/object:Gem::Requirement
15
16
  requirements:
16
17
  - - ">="
@@ -37,6 +38,7 @@ dependencies:
37
38
  - - ">="
38
39
  - !ruby/object:Gem::Version
39
40
  version: '0'
41
+ description:
40
42
  email:
41
43
  - alexander.mancevice@hey.com
42
44
  executables: []
@@ -57,6 +59,7 @@ homepage: https://github.com/amancevice/yake
57
59
  licenses:
58
60
  - MIT
59
61
  metadata: {}
62
+ post_install_message:
60
63
  rdoc_options: []
61
64
  require_paths:
62
65
  - lib
@@ -71,7 +74,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
71
74
  - !ruby/object:Gem::Version
72
75
  version: '0'
73
76
  requirements: []
74
- rubygems_version: 3.6.2
77
+ rubygems_version: 3.5.16
78
+ signing_key:
75
79
  specification_version: 4
76
80
  summary: Rake-like DSL for declaring AWS Lambda function handlers
77
81
  test_files: []