koala 3.3.0 → 3.5.0
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fe8f0af88bb59626abb6b309322ed98a0e5f5faceca7931968f6ce8842451b0d
|
4
|
+
data.tar.gz: f813925e9a5905f34b27c95b45cef4ca282e12cee0e4a09db58160b8f5de2e78
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e6b17b4a746648c7910b6c946178f62b3fc9aadd79439e82c61169ecb98a9f1e0e47c2d54fb4a9918b620431dce46a6340c5fa1317c809ee9c287a8a9f38a14b
|
7
|
+
data.tar.gz: 1ba2fcc4f6bb844c14dba797d49d4042d7e8cab78d53251a0c2e3b88edbfcb31512a27e4f3e62e2cd2da8174f7e381c87571887954121edc3119324464e1014c
|
data/changelog.md
CHANGED
@@ -15,6 +15,20 @@ Testing improvements:
|
|
15
15
|
|
16
16
|
Others:
|
17
17
|
|
18
|
+
v3.5.0 (2023-08-23)
|
19
|
+
======
|
20
|
+
|
21
|
+
Internal improvements:
|
22
|
+
* Raise ClientError instead of NoMethodError when body is 'null' ([#673](https://github.com/arsduo/koala/issues/673))
|
23
|
+
|
24
|
+
v3.4.0 (2023-01-05)
|
25
|
+
======
|
26
|
+
|
27
|
+
Updated features:
|
28
|
+
|
29
|
+
* Force use by default of HTTPS (instead of HTTP) when there is no access token.
|
30
|
+
HTTP can still be used by passing :use_ssl => false in the options hash for an api call ([#678](https://github.com/arsduo/koala/pull/678/files))
|
31
|
+
|
18
32
|
v3.3.0 (2022-09-27)
|
19
33
|
======
|
20
34
|
|
@@ -61,7 +61,8 @@ module Koala
|
|
61
61
|
# Normally, we start with the response body. If it isn't valid JSON, we start with an empty
|
62
62
|
# hash and fill it with error data.
|
63
63
|
@response_hash ||= begin
|
64
|
-
JSON.parse(body)
|
64
|
+
parsed_body = JSON.parse(body)
|
65
|
+
parsed_body.is_a?(Hash) ? parsed_body : {}
|
65
66
|
rescue JSON::ParserError
|
66
67
|
{}
|
67
68
|
end
|
@@ -106,9 +106,7 @@ module Koala
|
|
106
106
|
end
|
107
107
|
|
108
108
|
def add_ssl_options(opts)
|
109
|
-
# require https
|
110
|
-
return opts unless raw_args["access_token"]
|
111
|
-
|
109
|
+
# require https by default (can be overriden by explicitly setting other SSL options)
|
112
110
|
{
|
113
111
|
use_ssl: true,
|
114
112
|
ssl: {verify: true}.merge(opts[:ssl] || {})
|
data/lib/koala/version.rb
CHANGED
@@ -63,6 +63,12 @@ module Koala
|
|
63
63
|
expect(error.response_body).to eq(body)
|
64
64
|
end
|
65
65
|
|
66
|
+
it "returns a ClientError if the body is null" do
|
67
|
+
body.replace("null")
|
68
|
+
expect(error).to be_a(ClientError)
|
69
|
+
expect(error.response_body).to eq(body)
|
70
|
+
end
|
71
|
+
|
66
72
|
it "adds error data from the body" do
|
67
73
|
error_data = {
|
68
74
|
"type" => "FB error type",
|
@@ -176,9 +176,9 @@ module Koala
|
|
176
176
|
end
|
177
177
|
|
178
178
|
describe "ssl options" do
|
179
|
-
it "
|
179
|
+
it "includes the default SSL options even if there's no access token" do
|
180
180
|
request_options = Request.new(path: path, args: args.delete_if {|k, _v| k == "access_token"}, verb: verb, options: options).options
|
181
|
-
expect(request_options).
|
181
|
+
expect(request_options).to include(use_ssl: true, ssl: {verify: true})
|
182
182
|
end
|
183
183
|
|
184
184
|
context "if there is an access_token" do
|
@@ -193,9 +193,9 @@ module Koala
|
|
193
193
|
end
|
194
194
|
|
195
195
|
it "overrides default SSL options with what's provided" do
|
196
|
-
new_ssl_options = {verify: :dunno}
|
197
|
-
request_options = Request.new(path: path, args: args, verb: verb, options: options.merge(
|
198
|
-
expect(request_options
|
196
|
+
new_ssl_options = {use_ssl: false, ssl:{verify: :dunno}}
|
197
|
+
request_options = Request.new(path: path, args: args, verb: verb, options: options.merge(new_ssl_options)).options
|
198
|
+
expect(request_options).to include(new_ssl_options)
|
199
199
|
end
|
200
200
|
end
|
201
201
|
end
|
@@ -211,9 +211,17 @@ module Koala
|
|
211
211
|
expect(request.server).to eq("https://foo")
|
212
212
|
end
|
213
213
|
|
214
|
-
context "if
|
214
|
+
context "if there is no access token" do
|
215
215
|
let(:args) { {"a" => "b"} }
|
216
216
|
|
217
|
+
it "uses https" do
|
218
|
+
expect(request.server).to eq("https://graph.facebook.com")
|
219
|
+
end
|
220
|
+
end
|
221
|
+
|
222
|
+
context "if options[:use_ssl] is false" do
|
223
|
+
let(:options) { {use_ssl: false} }
|
224
|
+
|
217
225
|
it "uses http" do
|
218
226
|
expect(request.server).to eq("http://graph.facebook.com")
|
219
227
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: koala
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Koppel
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-08-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -158,7 +158,7 @@ homepage: http://github.com/arsduo/koala
|
|
158
158
|
licenses:
|
159
159
|
- MIT
|
160
160
|
metadata: {}
|
161
|
-
post_install_message:
|
161
|
+
post_install_message:
|
162
162
|
rdoc_options:
|
163
163
|
- "--line-numbers"
|
164
164
|
- "--inline-source"
|
@@ -178,7 +178,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
178
178
|
version: '0'
|
179
179
|
requirements: []
|
180
180
|
rubygems_version: 3.4.0.dev
|
181
|
-
signing_key:
|
181
|
+
signing_key:
|
182
182
|
specification_version: 4
|
183
183
|
summary: A lightweight, flexible library for Facebook with support for the Graph API,
|
184
184
|
the REST API, realtime updates, and OAuth authentication.
|