rubyhexagon 1.2.1 → 1.2.2
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 +4 -4
- data/lib/rubyhexagon.rb +1 -1
- data/lib/rubyhexagon/helper/api.rb +15 -7
- data/lib/rubyhexagon/search/posts.rb +2 -2
- data/lib/rubyhexagon/search/tags.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c8a91cedb9b96a07c97813b28733d59051c3d607474a849060636b73a568d94c
|
4
|
+
data.tar.gz: 09aa61e926d1212638d9e196c6e303c47784f17ef9861b75187ca8b5fdec30ea
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9c3703e449a7f3b7a24bfacd98888d9aea0bbef0ec0fe118b3c271c80910e435bf1e0a94beceb14dd34ddcdb8ea14a1c298a5d54610a2e42db40357dce358cb0
|
7
|
+
data.tar.gz: f216be35a182ae536fccfe8f54d45e8d9b884a6b3e5f5fadd321ecb0a5fa3103468b3332328c209b58e61cd545bff26cdc8ae07b52be6b8030380e1a96b0920a
|
data/lib/rubyhexagon.rb
CHANGED
@@ -62,17 +62,25 @@ module E621
|
|
62
62
|
query = query.to_a.map { |q| "#{q.first}=#{q.last}" }.join('&')
|
63
63
|
query = "?#{query}" unless query == ''
|
64
64
|
uri = "#{@base}/#{noun}/#{action}.json#{query}"
|
65
|
-
|
66
|
-
if @rspec || !defined? RSpec
|
67
|
-
JSON.parse(open(uri, @user_agent).read, symbolize_names: true)
|
68
|
-
else # In RSpec environment?
|
69
|
-
JSON.parse(open(uri).read, symbolize_names: true)
|
70
|
-
end
|
71
|
-
end
|
65
|
+
fetch_data(uri)
|
72
66
|
end
|
73
67
|
|
74
68
|
private
|
75
69
|
|
70
|
+
# @author Maxine Michalski
|
71
|
+
#
|
72
|
+
def fetch_data(uri)
|
73
|
+
lock do
|
74
|
+
data = if @rspec || !defined? RSpec then open(uri, @user_agent).read
|
75
|
+
else File.open(uri).read
|
76
|
+
end
|
77
|
+
JSON.parse(data, symbolize_names: true)
|
78
|
+
end
|
79
|
+
rescue SocketError
|
80
|
+
sleep 5
|
81
|
+
retry
|
82
|
+
end
|
83
|
+
|
76
84
|
# @author Maxine Michalski
|
77
85
|
#
|
78
86
|
# (see #fetch)
|
@@ -38,8 +38,8 @@ module E621
|
|
38
38
|
d = fetch_deleted(page)
|
39
39
|
while block_given? && d != []
|
40
40
|
d.each { |del| yield del }
|
41
|
-
d = fetch_deleted(page)
|
42
41
|
page += 1
|
42
|
+
d = fetch_deleted(page)
|
43
43
|
end
|
44
44
|
d
|
45
45
|
end
|
@@ -63,8 +63,8 @@ module E621
|
|
63
63
|
posts = fetch_posts(parameters)
|
64
64
|
while block_given? && posts != []
|
65
65
|
posts.each { |post| yield post }
|
66
|
-
posts = fetch_posts(parameters)
|
67
66
|
parameters[:before_id] = posts.last.nil? ? 0 : posts.last.id
|
67
|
+
posts = fetch_posts(parameters)
|
68
68
|
end
|
69
69
|
posts
|
70
70
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubyhexagon
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Maxine Michalski
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-04-
|
11
|
+
date: 2018-04-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: json
|