papercall 0.11.0 → 0.12.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 +4 -4
- data/lib/papercall/analysis.rb +15 -13
- data/lib/papercall/rest_fetcher.rb +10 -4
- data/lib/papercall/version.rb +1 -1
- data/papercall.gemspec +2 -0
- metadata +30 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5f26c16e050d54577249551aed1a2f49730f3e5e
|
|
4
|
+
data.tar.gz: ee2e887df4e006967f3e83483c58cec12d217e26
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 59a12802cd6f7562f98f8017af415601547bf74a456b85aec1824d34ebd51857201dcc07ce8c7eb331c499b36ee9ea89148f6e0b3bddca59ab284523eed9fc62
|
|
7
|
+
data.tar.gz: 819b0049819e300ca868e15a208929a0be9507a3004e4390d23d9e7c79f445399d26a903666df5889e3d1f8103403b5562e40036ab723f0d8333c73a7047ba78
|
data/lib/papercall/analysis.rb
CHANGED
|
@@ -18,28 +18,30 @@ module Papercall
|
|
|
18
18
|
end
|
|
19
19
|
|
|
20
20
|
def analyze
|
|
21
|
-
|
|
21
|
+
startTime = Time.now
|
|
22
|
+
print "Performing analysis..."
|
|
22
23
|
@analysis['submissions'].each do |submission|
|
|
23
24
|
submission["ratings"].each do |rating|
|
|
24
25
|
unless(@analysis['reviewers'].include?(rating["user"]["name"]))
|
|
25
26
|
@analysis['reviewers'][rating["user"]["name"]] = [{:id => rating["submission_id"]}]
|
|
26
27
|
else
|
|
27
|
-
@analysis['reviewers'][rating['user']['name']]
|
|
28
|
+
@analysis['reviewers'][rating['user']['name']] << {:id => rating["submission_id"]}
|
|
28
29
|
end
|
|
29
30
|
end
|
|
30
|
-
@analysis['talksWithoutReviews']
|
|
31
|
-
@analysis['talksWithFourOrMoreReviews']
|
|
32
|
-
@analysis['talksWithLessThanThreeReviews']
|
|
33
|
-
@analysis['talksWithoutFeedback']
|
|
34
|
-
@analysis['highlyRated']
|
|
35
|
-
@analysis['lowRated']
|
|
36
|
-
@analysis['maybe']
|
|
37
|
-
@analysis['accepted']
|
|
38
|
-
@analysis['waitlist']
|
|
39
|
-
@analysis['rejected']
|
|
40
|
-
@analysis['confirmed']
|
|
31
|
+
@analysis['talksWithoutReviews'] << {:id => submission["id"]} if submission["ratings"].empty?
|
|
32
|
+
@analysis['talksWithFourOrMoreReviews'] << {:id => submission["id"]} if submission["ratings"].size >= 4
|
|
33
|
+
@analysis['talksWithLessThanThreeReviews'] << {:id => submission["id"]} if submission["ratings"].size < 3
|
|
34
|
+
@analysis['talksWithoutFeedback'] << {:id => submission["id"]} if submission["feedback"].empty?
|
|
35
|
+
@analysis['highlyRated'] << {:id => submission["id"], :submission => submission} if highlyRated? submission
|
|
36
|
+
@analysis['lowRated'] << {:id => submission["id"], :submission => submission} if lowRated? submission
|
|
37
|
+
@analysis['maybe'] << {:id => submission["id"], :submission => submission} if maybe? submission
|
|
38
|
+
@analysis['accepted'] << {:id => submission["id"], :submission => submission} if accepted? submission
|
|
39
|
+
@analysis['waitlist'] << {:id => submission["id"], :submission => submission} if waitlisted? submission
|
|
40
|
+
@analysis['rejected'] << {:id => submission["id"], :submission => submission} if rejected? submission
|
|
41
|
+
@analysis['confirmed'] << {:id => submission["id"], :submission => submission} if confirmed? submission
|
|
41
42
|
end
|
|
42
43
|
@analysis['summary'] = summary
|
|
44
|
+
puts "finished in #{Time.now - startTime} seconds."
|
|
43
45
|
@analysis
|
|
44
46
|
end
|
|
45
47
|
|
|
@@ -16,7 +16,7 @@ module Papercall
|
|
|
16
16
|
@declined = []
|
|
17
17
|
end
|
|
18
18
|
|
|
19
|
-
def submission_url(state, per_page:
|
|
19
|
+
def submission_url(state, per_page: 150)
|
|
20
20
|
"#{SUBMISSIONS_URL}?state=#{state}&per_page=#{per_page}"
|
|
21
21
|
end
|
|
22
22
|
|
|
@@ -32,8 +32,10 @@ module Papercall
|
|
|
32
32
|
states = [[:submitted, :accepted, :rejected, :waitlist, :declined]] if states == [[:all]]
|
|
33
33
|
states.flatten.each do |state|
|
|
34
34
|
if state
|
|
35
|
-
|
|
35
|
+
startTime = Time.now
|
|
36
|
+
print "Fetching #{state} submissions from PaperCall API..."
|
|
36
37
|
instance_variable_set("@#{state}", papercall(submission_url(state.to_s)))
|
|
38
|
+
puts "finished in #{Time.now - startTime} seconds."
|
|
37
39
|
end
|
|
38
40
|
end
|
|
39
41
|
fetch_ratings
|
|
@@ -41,23 +43,27 @@ module Papercall
|
|
|
41
43
|
end
|
|
42
44
|
|
|
43
45
|
def fetch_ratings
|
|
44
|
-
|
|
46
|
+
startTime = Time.now
|
|
47
|
+
print "Fetching ratings for all submissions from Papercall API..."
|
|
45
48
|
analysis.each do |submission|
|
|
46
49
|
unless submission['ratings']
|
|
47
50
|
ratings_url = "#{SUBMISSIONS_URL}/#{submission['id']}/ratings"
|
|
48
51
|
submission['ratings'] = papercall(ratings_url)
|
|
49
52
|
end
|
|
50
53
|
end
|
|
54
|
+
puts "finished in #{Time.now - startTime} seconds."
|
|
51
55
|
end
|
|
52
56
|
|
|
53
57
|
def fetch_feedback
|
|
54
|
-
|
|
58
|
+
startTime = Time.now
|
|
59
|
+
print "Fetching feedback for all submissions from Papercall API..."
|
|
55
60
|
analysis.each do |submission|
|
|
56
61
|
unless submission['feedback']
|
|
57
62
|
feedback_url = "#{SUBMISSIONS_URL}/#{submission['id']}/feedback"
|
|
58
63
|
submission['feedback'] = papercall(feedback_url)
|
|
59
64
|
end
|
|
60
65
|
end
|
|
66
|
+
puts "finished in #{Time.now - startTime} seconds."
|
|
61
67
|
end
|
|
62
68
|
end
|
|
63
69
|
end
|
data/lib/papercall/version.rb
CHANGED
data/papercall.gemspec
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: papercall
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.12.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jørn Ølmheim
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2018-01-14 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -148,6 +148,34 @@ dependencies:
|
|
|
148
148
|
- - ">="
|
|
149
149
|
- !ruby/object:Gem::Version
|
|
150
150
|
version: 2.0.2
|
|
151
|
+
- !ruby/object:Gem::Dependency
|
|
152
|
+
name: activesupport
|
|
153
|
+
requirement: !ruby/object:Gem::Requirement
|
|
154
|
+
requirements:
|
|
155
|
+
- - "~>"
|
|
156
|
+
- !ruby/object:Gem::Version
|
|
157
|
+
version: '5.0'
|
|
158
|
+
type: :runtime
|
|
159
|
+
prerelease: false
|
|
160
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
161
|
+
requirements:
|
|
162
|
+
- - "~>"
|
|
163
|
+
- !ruby/object:Gem::Version
|
|
164
|
+
version: '5.0'
|
|
165
|
+
- !ruby/object:Gem::Dependency
|
|
166
|
+
name: i18n
|
|
167
|
+
requirement: !ruby/object:Gem::Requirement
|
|
168
|
+
requirements:
|
|
169
|
+
- - "~>"
|
|
170
|
+
- !ruby/object:Gem::Version
|
|
171
|
+
version: 0.9.1
|
|
172
|
+
type: :runtime
|
|
173
|
+
prerelease: false
|
|
174
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
175
|
+
requirements:
|
|
176
|
+
- - "~>"
|
|
177
|
+
- !ruby/object:Gem::Version
|
|
178
|
+
version: 0.9.1
|
|
151
179
|
description: Small client library for the PaperCall API. With some analytics for the
|
|
152
180
|
submissions.
|
|
153
181
|
email:
|