lob 1.12.0 → 1.13.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
  SHA1:
3
- metadata.gz: 5693e0fab190aaf395879ca007343a932cfbee1c
4
- data.tar.gz: d5aaa570fb388bce675e1c01c9f7c03b2d90ec99
3
+ metadata.gz: acd5e9c0fe20145d83f62c1c915f0b2ca6893e7e
4
+ data.tar.gz: 2edc15946a536dcac2b9ade028754a5b30db385e
5
5
  SHA512:
6
- metadata.gz: 598edf4d2c1f3164d79a5987807e6bb3f4a5836e7574b8fd56021d5ca263fdffa37251063d99eb93e006888ef74ee8cfe099b4b75b15539bee6407af157223a6
7
- data.tar.gz: 02e8879f217555d2f91b81823b4f6d873432caf8b8df333a255eef63e4c1d7bbbef0b7f0178c3039b79106f5d49bcdbfc8a0ca93e2c4adf09a82cac6d7404f17
6
+ metadata.gz: 296539b5631661d1c11290efb7bc42fea6f2475305aab47f6cd9e1939b4dff1bf286a78e1b5a75b75717590af722ffca702cc2ab09231b6a59736f1106ec8edd
7
+ data.tar.gz: 45a9466effaa2ead82c9bbb0607ee507c957f332d69f203a72367a6068506bfe9499f4ee3a70fd2e07a6b90fa000890155ea2756efd1c3afc43e7f50d14cfde3
@@ -1,3 +1,6 @@
1
+ ## [**1.13.0**](https://github.com/lob/lob-ruby/releases/tag/v1.13.0)
2
+ - [**#112**] (https://github.com/lob/lob-ruby/pull/112) removes Rack dependency
3
+
1
4
  ## [**1.12.0**](https://github.com/lob/lob-ruby/releases/tag/v1.12.0)
2
5
  - [**#110**] (https://github.com/lob/lob-ruby/pull/110) fixes metadata filter
3
6
 
data/lib/lob.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  require "rest-client"
2
- require "rack"
3
2
  require "json"
3
+ require 'uri'
4
4
  require "lob/version"
5
5
  require "lob/errors/lob_error"
6
6
  require "lob/errors/invalid_request_error"
@@ -31,7 +31,7 @@ module Lob
31
31
  begin
32
32
  if method == :get || method == :delete
33
33
  # Hack to URL encode nested objects like metadata.
34
- url = "#{url}?#{Rack::Utils.build_nested_query(parameters)}"
34
+ url = "#{url}?#{build_nested_query(parameters)}"
35
35
  JSON.parse(RestClient.send(method, url, {
36
36
  user_agent: 'Lob/v1 RubyBindings/' + clientVersion,
37
37
  "Lob-Version" => self.api_version
@@ -61,6 +61,24 @@ module Lob
61
61
  raise LobError.new("Invalid response object: #{}", error.http_code, error.http_body)
62
62
  end
63
63
  end
64
+
65
+ def self.build_nested_query(value, prefix = nil)
66
+ case value
67
+ when Array
68
+ value.map { |v|
69
+ build_nested_query(v, "#{prefix}[]")
70
+ }.join("&")
71
+ when Hash
72
+ value.map { |k, v|
73
+ build_nested_query(v, prefix ? "#{prefix}[#{URI.encode_www_form_component(k)}]" : URI.encode_www_form_component(k))
74
+ }.reject(&:empty?).join('&')
75
+ when nil
76
+ prefix
77
+ else
78
+ raise ArgumentError, "value must be a Hash" if prefix.nil?
79
+ "#{prefix}=#{URI.encode_www_form_component(value)}"
80
+ end
81
+ end
64
82
  end
65
83
 
66
84
  def Lob(options={})
@@ -1,3 +1,3 @@
1
1
  module Lob
2
- VERSION = "1.12.0"
2
+ VERSION = "1.13.0"
3
3
  end
@@ -19,7 +19,6 @@ Gem::Specification.new do |spec|
19
19
  spec.require_paths = ["lib"]
20
20
 
21
21
  spec.add_dependency "rest-client", "~> 1.8"
22
- spec.add_dependency "rack", "~> 1.6"
23
22
 
24
23
  spec.add_dependency "prawn"
25
24
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lob
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.12.0
4
+ version: 1.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lob
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-08 00:00:00.000000000 Z
11
+ date: 2015-05-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -24,20 +24,6 @@ dependencies:
24
24
  - - ~>
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.8'
27
- - !ruby/object:Gem::Dependency
28
- name: rack
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ~>
32
- - !ruby/object:Gem::Version
33
- version: '1.6'
34
- type: :runtime
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ~>
39
- - !ruby/object:Gem::Version
40
- version: '1.6'
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: prawn
43
29
  requirement: !ruby/object:Gem::Requirement