extcite 0.1.0 → 0.2.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
- SHA1:
3
- metadata.gz: 59c11ddc6a3c2055e6d32941cf1e5227d759d8bb
4
- data.tar.gz: 8bb4d062337f6caf5a272cca33900476ff29049c
2
+ SHA256:
3
+ metadata.gz: 4476221f8ea867ee95b16e0db79a2455ad570c2a6a40b759706f6773546bf5c6
4
+ data.tar.gz: 3d35a8f41c64d5034d1f709602b73aa2b07f9d1ec7f96646f5bcd8ae1658643b
5
5
  SHA512:
6
- metadata.gz: 8319b4a0eaacadc82b97d3780df98ae6669b3d62bb017f348dd32c30b09d433ae5b610afeae9d4566f2714b2681dd57526b826819872182c108dafe6a1b780b5
7
- data.tar.gz: e26c399bf22cd9e498bf302ae2b484238aed579b6994a8f4e9d81c0da949b60b6b694681459c02af611d0c5664b5d37d2c1f89e071eea86e43c15f13487413f6
6
+ metadata.gz: 3885216ab00c5bbcd3e6e0cad4c694cf0b65b9dd92619eb9d75df7310fef0ad79f6d931ff6ae28def61002a3b413b91f1f38daf6f7d442d7343b55e668af7608
7
+ data.tar.gz: 29120657030ab7df5164fbbbd8f0a177dbc49aa5f410344b68626c3e32f9248858dbc7ccce4fd27801eae21ab667c5760a26a64a25547c3dc94a9542c1be3e33
data/.gitignore CHANGED
@@ -33,4 +33,7 @@ build/
33
33
  # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
34
34
  .rvmrc
35
35
 
36
- cache/
36
+ cache/
37
+
38
+ scratch.rb
39
+
data/.travis.yml CHANGED
@@ -1,9 +1,11 @@
1
1
  language: ruby
2
2
  cache: bundler
3
3
  rvm:
4
- - 2.1.7
5
- - 2.2.3
6
- - 2.2.4
7
- - 2.3.1
4
+ - 2.5.0
5
+ - 2.6.0
6
+ before_install:
7
+ - gem update --system
8
+ - gem install bundler
9
+ - gem --version
8
10
  script:
9
11
  bundle exec rake test TESTOPTS="-v"
data/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## 0.2.0 (2019-08-07)
2
+
3
+ * new method `extract_from_metadata` to try to extract DOIs from one or more PDF metadat sections
4
+ * add `dois` method to cli tool, which uses the `extract_from_metadata` method
5
+ * `extract` cli method now accepts one or more file paths
6
+ * bump dependency versions
7
+
1
8
  ## 0.1.0 (2017-04-06)
2
9
 
3
10
  * First version to Rubygems
data/Gemfile.lock CHANGED
@@ -1,81 +1,81 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- extcite (0.1.0)
5
- bibtex-ruby (~> 4.4)
6
- faraday (~> 0.12.0.1)
7
- faraday_middleware (~> 0.11.0.1)
8
- oga (~> 2.2)
9
- pdf-reader (~> 2.0)
10
- serrano (~> 0.3.6)
11
- thor (~> 0.19.4)
4
+ extcite (0.2.0)
5
+ bibtex-ruby (~> 5.0)
6
+ faraday (~> 0.14.0)
7
+ faraday_middleware (~> 0.12.2)
8
+ oga (~> 2.15)
9
+ parallel (~> 1.17)
10
+ pdf-reader (~> 2.2, >= 2.2.1)
11
+ serrano (~> 0.5.0)
12
+ thor (~> 0.20.3)
12
13
 
13
14
  GEM
14
15
  remote: https://rubygems.org/
15
16
  specs:
16
- Ascii85 (1.0.2)
17
+ Ascii85 (1.0.3)
17
18
  afm (0.2.2)
18
19
  ansi (1.5.0)
19
- ast (2.3.0)
20
- bibtex-ruby (4.4.3)
20
+ ast (2.4.0)
21
+ bibtex-ruby (5.0.0)
21
22
  latex-decode (~> 0.0)
22
- codecov (0.1.10)
23
+ codecov (0.1.14)
23
24
  json
24
25
  simplecov
25
26
  url
26
- docile (1.1.5)
27
- faraday (0.12.0.1)
27
+ docile (1.3.2)
28
+ faraday (0.14.0)
28
29
  multipart-post (>= 1.2, < 3)
29
- faraday_middleware (0.11.0.1)
30
+ faraday_middleware (0.12.2)
30
31
  faraday (>= 0.7.4, < 1.0)
31
32
  hashery (2.1.2)
32
- json (2.0.3)
33
- latex-decode (0.2.2)
34
- unicode (~> 0.4)
35
- multi_json (1.12.1)
36
- multipart-post (2.0.0)
37
- oga (2.9)
33
+ json (2.2.0)
34
+ latex-decode (0.3.1)
35
+ multi_json (1.13.1)
36
+ multipart-post (2.1.1)
37
+ oga (2.15)
38
38
  ast
39
39
  ruby-ll (~> 2.1)
40
- pdf-reader (2.0.0)
40
+ parallel (1.17.0)
41
+ pdf-reader (2.2.1)
41
42
  Ascii85 (~> 1.0.0)
42
43
  afm (~> 0.2.1)
43
44
  hashery (~> 2.0)
44
45
  ruby-rc4
45
46
  ttfunk
46
- power_assert (1.0.1)
47
- rake (12.0.0)
47
+ power_assert (1.1.4)
48
+ rake (12.3.3)
48
49
  ruby-ll (2.1.2)
49
50
  ansi
50
51
  ast
51
52
  ruby-rc4 (0.1.5)
52
- serrano (0.3.6)
53
- faraday (~> 0.12.0.1)
54
- faraday_middleware (~> 0.11.0.1)
55
- multi_json (~> 1.12, >= 1.12.1)
56
- thor (~> 0.19.4)
57
- simplecov (0.14.1)
58
- docile (~> 1.1.0)
53
+ serrano (0.5.0)
54
+ faraday (~> 0.14.0)
55
+ faraday_middleware (~> 0.12.2)
56
+ multi_json (~> 1.13, >= 1.13.1)
57
+ thor (~> 0.20.0)
58
+ simplecov (0.17.0)
59
+ docile (~> 1.1)
59
60
  json (>= 1.8, < 3)
60
61
  simplecov-html (~> 0.10.0)
61
- simplecov-html (0.10.0)
62
- test-unit (3.2.3)
62
+ simplecov-html (0.10.2)
63
+ test-unit (3.3.3)
63
64
  power_assert
64
- thor (0.19.4)
65
- ttfunk (1.5.0)
66
- unicode (0.4.4.2)
65
+ thor (0.20.3)
66
+ ttfunk (1.5.1)
67
67
  url (0.3.2)
68
68
 
69
69
  PLATFORMS
70
70
  ruby
71
71
 
72
72
  DEPENDENCIES
73
- bundler (~> 1.14, >= 1.14.6)
74
- codecov (~> 0.1.10)
73
+ bundler (~> 2.0, >= 2.0.2)
74
+ codecov (~> 0.1.14)
75
75
  extcite!
76
- rake (~> 12.0, >= 12.0.0)
77
- simplecov (~> 0.14.1)
78
- test-unit (~> 3.2, >= 3.2.1)
76
+ rake (~> 12.3, >= 12.3.3)
77
+ simplecov (~> 0.17.0)
78
+ test-unit (~> 3.3, >= 3.3.3)
79
79
 
80
80
  BUNDLED WITH
81
- 1.14.6
81
+ 2.0.2
data/LICENSE ADDED
@@ -0,0 +1,7 @@
1
+ Copyright (C) 2019 Scott Chamberlain
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
4
+
5
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
6
+
7
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md CHANGED
@@ -33,8 +33,6 @@ rake install
33
33
  require 'extcite'
34
34
  ```
35
35
 
36
- #### Search
37
-
38
36
  A single paper
39
37
 
40
38
  ```ruby
data/Rakefile CHANGED
@@ -5,6 +5,7 @@ Rake::TestTask.new do |t|
5
5
  t.libs << "test"
6
6
  t.test_files = FileList['test/test-*.rb']
7
7
  t.verbose = true
8
+ t.warning = false
8
9
  end
9
10
 
10
11
  desc "Run tests"
data/bin/extcite CHANGED
@@ -1,16 +1,68 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  require "thor"
4
+ require "parallel"
4
5
 
5
6
  class Dz < Thor
6
7
  include Thor::Actions
7
8
  require 'extcite'
8
9
 
9
10
  desc "extract STRING", "Get bib data from PDFs"
11
+ long_desc <<-LONGDESC
12
+ `extcite extract` accepts one or more file paths to PDFs
13
+
14
+ # get a pdf, then extract citation
15
+ \x5$ wget https://peerj.com/articles/2068.pdf
16
+ \x5$ extcite extract peerj-2068.pdf
17
+
18
+ writing 10.7717/peerj.2068 to out.bib
19
+
20
+ \x5$ cat out.bib
21
+
22
+ @article{Daar_2016,
23
+ \x5 doi = {10.7717/peerj.2068},
24
+ \x5 url = {https://doi.org/10.7717%2Fpeerj.2068},
25
+ \x5 year = 2016,
26
+ \x5 month = {jun},
27
+ \x5 publisher = {{PeerJ}},
28
+ \x5 volume = {4},
29
+ \x5 pages = {e2068},
30
+ \x5 author = {Marwan Daar and Hugh R. Wilson},
31
+ \x5 title = {A closer look at four-dot masking of a foveated target},
32
+ \x5 journal = {{PeerJ}}
33
+ \x5}
34
+ LONGDESC
35
+ def extract(*tt)
36
+ if tt.length == 1
37
+ Extcite.extract(path: tt)
38
+ else
39
+ tt.map{ |z| Extcite.extract(path: z ) }
40
+ end
41
+ end
42
+
43
+
44
+ desc "dois STRING", "Get dois from PDFs"
45
+ long_desc <<-LONGDESC
46
+ `extcite dois` accepts one or more file paths to PDFs
47
+
48
+ # get a pdf, then extract citation
49
+ \x5$ wget https://peerj.com/articles/2068.pdf
50
+ \x5$ extcite dois peerj-2068.pdf
51
+
52
+ 10.7717/peerj.2068
53
+ LONGDESC
10
54
  # method_option :path => :string
11
- def extract(tt)
12
- tt = "#{tt}"
13
- Extcite.extract(path: tt)
55
+ option :parallel, :type => :boolean, :default => false
56
+ def dois(*tt)
57
+ if tt.length == 1
58
+ puts Extcite.extract_from_metadata(path: tt) || tt % " not found"
59
+ else
60
+ if options[:parallel]
61
+ Parallel.map(tt, in_processes: 4) { |e| puts Extcite.extract_from_metadata(path: e) || e % " not found" };
62
+ else
63
+ tt.map{ |z| puts Extcite.extract_from_metadata(path: z ) || z % " not found" }
64
+ end
65
+ end
14
66
  end
15
67
  end
16
68
 
data/extcite.gemspec CHANGED
@@ -6,7 +6,7 @@ require 'extcite/version'
6
6
  Gem::Specification.new do |s|
7
7
  s.name = 'extcite'
8
8
  s.version = Extcite::VERSION
9
- s.date = '2017-04-06'
9
+ s.date = '2019-08-07'
10
10
  s.summary = "Citations from PDFs"
11
11
  s.description = "Gets DOIS and generates citations for your papers"
12
12
  s.authors = "Scott Chamberlain"
@@ -20,17 +20,18 @@ Gem::Specification.new do |s|
20
20
  s.bindir = 'bin'
21
21
  s.executables = ['extcite']
22
22
 
23
- s.add_development_dependency 'bundler', '~> 1.14', '>= 1.14.6'
24
- s.add_development_dependency 'rake', '~> 12.0', '>= 12.0.0'
25
- s.add_development_dependency 'test-unit', '~> 3.2', '>= 3.2.1'
26
- s.add_development_dependency 'simplecov', '~> 0.14.1'
27
- s.add_development_dependency 'codecov', '~> 0.1.10'
23
+ s.add_development_dependency 'bundler', '~> 2.0', '>= 2.0.2'
24
+ s.add_development_dependency 'rake', '~> 12.3', '>= 12.3.3'
25
+ s.add_development_dependency 'test-unit', '~> 3.3', '>= 3.3.3'
26
+ s.add_development_dependency 'simplecov', '~> 0.17.0'
27
+ s.add_development_dependency 'codecov', '~> 0.1.14'
28
28
 
29
- s.add_runtime_dependency 'faraday', '~> 0.12.0.1'
30
- s.add_runtime_dependency 'faraday_middleware', '~> 0.11.0.1'
31
- s.add_runtime_dependency 'thor', '~> 0.19.4'
32
- s.add_runtime_dependency 'oga', '~> 2.2'
33
- s.add_runtime_dependency 'serrano', '~> 0.3.6'
34
- s.add_runtime_dependency 'bibtex-ruby', '~> 4.4'
35
- s.add_runtime_dependency 'pdf-reader', '~> 2.0'
29
+ s.add_runtime_dependency 'faraday', '~> 0.14.0'
30
+ s.add_runtime_dependency 'faraday_middleware', '~> 0.12.2'
31
+ s.add_runtime_dependency 'thor', '~> 0.20.3'
32
+ s.add_runtime_dependency 'parallel', '~> 1.17'
33
+ s.add_runtime_dependency 'oga', '~> 2.15'
34
+ s.add_runtime_dependency 'serrano', '~> 0.5.0'
35
+ s.add_runtime_dependency 'bibtex-ruby', '~> 5.0'
36
+ s.add_runtime_dependency 'pdf-reader', '~> 2.2', '>= 2.2.1'
36
37
  end
data/lib/extcite.rb CHANGED
@@ -28,9 +28,9 @@ module Extcite
28
28
  # require 'faraday'
29
29
  # # get a paper in pdf format
30
30
  # path = '2068.pdf'
31
- # res = Faraday.new(:url => "https://peerj.com/articles/2068.pdf").get
32
- # f = File.new(path, "wb")
33
- # f.write(res.body)
31
+ # res = Faraday.new(:url => "https://peerj.com/articles/2068.pdf").get;
32
+ # f = File.new(path, "wb");
33
+ # f.write(res.body);
34
34
  # f.close()
35
35
  # # extract doi from the pdf
36
36
  # Extcite.extract(path: path)
@@ -40,10 +40,10 @@ module Extcite
40
40
  path.each do |x|
41
41
  # try PDF metadata first
42
42
  ids = nil
43
- rr = PDF::Reader.new(x)
43
+ rr = PDF::Reader.new(x);
44
44
  pdfmeta = rr.metadata
45
45
  if !pdfmeta.nil?
46
- xml = Oga.parse_xml(pdfmeta)
46
+ xml = Oga.parse_xml(pdfmeta);
47
47
  begin
48
48
  tt = xml.xpath('//rdf:Description')
49
49
  # try dc:identifier attribute
@@ -95,6 +95,8 @@ module Extcite
95
95
  bibstest = nil
96
96
  if bibs.class == Array
97
97
  bibstest = bibs[0]
98
+ else
99
+ bibstest = bibs
98
100
  end
99
101
 
100
102
  if !bibstest.nil?
@@ -103,7 +105,7 @@ module Extcite
103
105
  # do something else?
104
106
  else
105
107
  if file.nil?
106
- return bibs
108
+ return bibstest
107
109
  else
108
110
  puts "writing " + ids + " to " + file
109
111
  bibs.write_bib(file)
@@ -114,6 +116,74 @@ module Extcite
114
116
  end
115
117
  end
116
118
 
119
+ ##
120
+ # Try to extract DOIs from one or more PDF metadata sections
121
+ #
122
+ # @param path [String] Path to a pdf file, or a folder of PDF files
123
+ #
124
+ # Return: DOI string
125
+ #
126
+ # @example
127
+ # require 'extcite'
128
+ # require 'faraday'
129
+ # # get a paper in pdf format
130
+ # path = '2068.pdf'
131
+ # res = Faraday.new(:url => "https://peerj.com/articles/2068.pdf").get;
132
+ # f = File.new(path, "wb");
133
+ # f.write(res.body)
134
+ # f.close()
135
+ # # extract doi from the pdf
136
+ # Extcite.extract_from_metadata(path: path)
137
+ def self.extract_from_metadata(path:)
138
+ path = make_paths(path)
139
+ path.each do |x|
140
+ # try PDF metadata first
141
+ ids = nil
142
+ rr = PDF::Reader.new(x)
143
+ pdfmeta = rr.metadata
144
+ if !pdfmeta.nil?
145
+ xml = Oga.parse_xml(pdfmeta);
146
+ begin
147
+ tt = xml.xpath('//rdf:Description')
148
+ # try dc:identifier attribute
149
+ ss = tt.attr('dc:identifier')[0]
150
+ if !ss.nil?
151
+ ids = ss.text.sub(/doi:/, '')
152
+ else
153
+ # try prism:doi node
154
+ pdoi = xml.xpath('//rdf:Description//prism:doi')
155
+ if pdoi.length == 1
156
+ ids = pdoi.text
157
+ else
158
+ # try pdf:WPS-ARTICLEDOI node
159
+ wpsdoi = xml.xpath('//rdf:Description//pdf:WPS-ARTICLEDOI')
160
+ if wpsdoi.length == 1
161
+ ids = wpsdoi.text
162
+ else
163
+ # try pdfx:WPS-ARTICLEDOI node
164
+ pdfxwpsdoi = xml.xpath('//rdf:Description//pdfx:WPS-ARTICLEDOI')
165
+ if pdfxwpsdoi.length == 1
166
+ ids = pdfxwpsdoi.text
167
+ else
168
+ ids = nil
169
+ end
170
+ end
171
+ end
172
+ end
173
+ rescue
174
+ ids = nil
175
+ end
176
+ end
177
+
178
+ # if not found, try regexing for DOI
179
+ if ids.nil?
180
+ ids = Extcite.get_ids(txt: Extcite.extract_text_one(x))
181
+ end
182
+
183
+ return ids
184
+ end
185
+ end
186
+
117
187
  ##
118
188
  # Extract DOIs from one or more PDFs after extracting text
119
189
  #
@@ -132,7 +202,8 @@ module Extcite
132
202
  # Extcite.extract_dois(path: path)
133
203
  def self.extract_dois(path:)
134
204
  txt = Extcite.extract_text(path: path)
135
- return txt.map { |z| z.match("[0-9]+\\.[0-9]+/.+").to_s.gsub(/\s.+/, '') }
205
+ # return txt.map { |z| z.match("[0-9]+\\.[0-9]+/.+").to_s.gsub(/\s.+/, '') }
206
+ return Extcite.get_ids(txt: txt)
136
207
  end
137
208
 
138
209
  ##
@@ -193,8 +264,14 @@ module Extcite
193
264
 
194
265
  out = []
195
266
  path.each do |x|
196
- rr = PDF::Reader.new(x)
197
- out << rr.pages.map { |page| page.text }.join("\n")
267
+ begin
268
+ rr = PDF::Reader.new(x)
269
+ txt = rr.pages.map { |page| page.text }.join("\n")
270
+ rescue Exception => e
271
+ warn e
272
+ txt = ""
273
+ end
274
+ out << txt
198
275
  end
199
276
  return out
200
277
  end
@@ -204,7 +281,7 @@ module Extcite
204
281
  #
205
282
  # @param ids [Array[String]] One or more DOIs in an array
206
283
  #
207
- # Return: an array of bib data
284
+ # Return: an string of bib data
208
285
  #
209
286
  # @example
210
287
  # require 'extcite'
@@ -1,3 +1,3 @@
1
1
  module Extcite
2
- VERSION = "0.1.0"
2
+ VERSION = "0.2.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: extcite
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Scott Chamberlain
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-04-06 00:00:00.000000000 Z
11
+ date: 2019-08-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,186 +16,206 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.14'
19
+ version: '2.0'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 1.14.6
22
+ version: 2.0.2
23
23
  type: :development
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - "~>"
28
28
  - !ruby/object:Gem::Version
29
- version: '1.14'
29
+ version: '2.0'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 1.14.6
32
+ version: 2.0.2
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: rake
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '12.0'
39
+ version: '12.3'
40
40
  - - ">="
41
41
  - !ruby/object:Gem::Version
42
- version: 12.0.0
42
+ version: 12.3.3
43
43
  type: :development
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
46
46
  requirements:
47
47
  - - "~>"
48
48
  - !ruby/object:Gem::Version
49
- version: '12.0'
49
+ version: '12.3'
50
50
  - - ">="
51
51
  - !ruby/object:Gem::Version
52
- version: 12.0.0
52
+ version: 12.3.3
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: test-unit
55
55
  requirement: !ruby/object:Gem::Requirement
56
56
  requirements:
57
57
  - - "~>"
58
58
  - !ruby/object:Gem::Version
59
- version: '3.2'
59
+ version: '3.3'
60
60
  - - ">="
61
61
  - !ruby/object:Gem::Version
62
- version: 3.2.1
62
+ version: 3.3.3
63
63
  type: :development
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
67
  - - "~>"
68
68
  - !ruby/object:Gem::Version
69
- version: '3.2'
69
+ version: '3.3'
70
70
  - - ">="
71
71
  - !ruby/object:Gem::Version
72
- version: 3.2.1
72
+ version: 3.3.3
73
73
  - !ruby/object:Gem::Dependency
74
74
  name: simplecov
75
75
  requirement: !ruby/object:Gem::Requirement
76
76
  requirements:
77
77
  - - "~>"
78
78
  - !ruby/object:Gem::Version
79
- version: 0.14.1
79
+ version: 0.17.0
80
80
  type: :development
81
81
  prerelease: false
82
82
  version_requirements: !ruby/object:Gem::Requirement
83
83
  requirements:
84
84
  - - "~>"
85
85
  - !ruby/object:Gem::Version
86
- version: 0.14.1
86
+ version: 0.17.0
87
87
  - !ruby/object:Gem::Dependency
88
88
  name: codecov
89
89
  requirement: !ruby/object:Gem::Requirement
90
90
  requirements:
91
91
  - - "~>"
92
92
  - !ruby/object:Gem::Version
93
- version: 0.1.10
93
+ version: 0.1.14
94
94
  type: :development
95
95
  prerelease: false
96
96
  version_requirements: !ruby/object:Gem::Requirement
97
97
  requirements:
98
98
  - - "~>"
99
99
  - !ruby/object:Gem::Version
100
- version: 0.1.10
100
+ version: 0.1.14
101
101
  - !ruby/object:Gem::Dependency
102
102
  name: faraday
103
103
  requirement: !ruby/object:Gem::Requirement
104
104
  requirements:
105
105
  - - "~>"
106
106
  - !ruby/object:Gem::Version
107
- version: 0.12.0.1
107
+ version: 0.14.0
108
108
  type: :runtime
109
109
  prerelease: false
110
110
  version_requirements: !ruby/object:Gem::Requirement
111
111
  requirements:
112
112
  - - "~>"
113
113
  - !ruby/object:Gem::Version
114
- version: 0.12.0.1
114
+ version: 0.14.0
115
115
  - !ruby/object:Gem::Dependency
116
116
  name: faraday_middleware
117
117
  requirement: !ruby/object:Gem::Requirement
118
118
  requirements:
119
119
  - - "~>"
120
120
  - !ruby/object:Gem::Version
121
- version: 0.11.0.1
121
+ version: 0.12.2
122
122
  type: :runtime
123
123
  prerelease: false
124
124
  version_requirements: !ruby/object:Gem::Requirement
125
125
  requirements:
126
126
  - - "~>"
127
127
  - !ruby/object:Gem::Version
128
- version: 0.11.0.1
128
+ version: 0.12.2
129
129
  - !ruby/object:Gem::Dependency
130
130
  name: thor
131
131
  requirement: !ruby/object:Gem::Requirement
132
132
  requirements:
133
133
  - - "~>"
134
134
  - !ruby/object:Gem::Version
135
- version: 0.19.4
135
+ version: 0.20.3
136
136
  type: :runtime
137
137
  prerelease: false
138
138
  version_requirements: !ruby/object:Gem::Requirement
139
139
  requirements:
140
140
  - - "~>"
141
141
  - !ruby/object:Gem::Version
142
- version: 0.19.4
142
+ version: 0.20.3
143
+ - !ruby/object:Gem::Dependency
144
+ name: parallel
145
+ requirement: !ruby/object:Gem::Requirement
146
+ requirements:
147
+ - - "~>"
148
+ - !ruby/object:Gem::Version
149
+ version: '1.17'
150
+ type: :runtime
151
+ prerelease: false
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ requirements:
154
+ - - "~>"
155
+ - !ruby/object:Gem::Version
156
+ version: '1.17'
143
157
  - !ruby/object:Gem::Dependency
144
158
  name: oga
145
159
  requirement: !ruby/object:Gem::Requirement
146
160
  requirements:
147
161
  - - "~>"
148
162
  - !ruby/object:Gem::Version
149
- version: '2.2'
163
+ version: '2.15'
150
164
  type: :runtime
151
165
  prerelease: false
152
166
  version_requirements: !ruby/object:Gem::Requirement
153
167
  requirements:
154
168
  - - "~>"
155
169
  - !ruby/object:Gem::Version
156
- version: '2.2'
170
+ version: '2.15'
157
171
  - !ruby/object:Gem::Dependency
158
172
  name: serrano
159
173
  requirement: !ruby/object:Gem::Requirement
160
174
  requirements:
161
175
  - - "~>"
162
176
  - !ruby/object:Gem::Version
163
- version: 0.3.6
177
+ version: 0.5.0
164
178
  type: :runtime
165
179
  prerelease: false
166
180
  version_requirements: !ruby/object:Gem::Requirement
167
181
  requirements:
168
182
  - - "~>"
169
183
  - !ruby/object:Gem::Version
170
- version: 0.3.6
184
+ version: 0.5.0
171
185
  - !ruby/object:Gem::Dependency
172
186
  name: bibtex-ruby
173
187
  requirement: !ruby/object:Gem::Requirement
174
188
  requirements:
175
189
  - - "~>"
176
190
  - !ruby/object:Gem::Version
177
- version: '4.4'
191
+ version: '5.0'
178
192
  type: :runtime
179
193
  prerelease: false
180
194
  version_requirements: !ruby/object:Gem::Requirement
181
195
  requirements:
182
196
  - - "~>"
183
197
  - !ruby/object:Gem::Version
184
- version: '4.4'
198
+ version: '5.0'
185
199
  - !ruby/object:Gem::Dependency
186
200
  name: pdf-reader
187
201
  requirement: !ruby/object:Gem::Requirement
188
202
  requirements:
189
203
  - - "~>"
190
204
  - !ruby/object:Gem::Version
191
- version: '2.0'
205
+ version: '2.2'
206
+ - - ">="
207
+ - !ruby/object:Gem::Version
208
+ version: 2.2.1
192
209
  type: :runtime
193
210
  prerelease: false
194
211
  version_requirements: !ruby/object:Gem::Requirement
195
212
  requirements:
196
213
  - - "~>"
197
214
  - !ruby/object:Gem::Version
198
- version: '2.0'
215
+ version: '2.2'
216
+ - - ">="
217
+ - !ruby/object:Gem::Version
218
+ version: 2.2.1
199
219
  description: Gets DOIS and generates citations for your papers
200
220
  email: myrmecocystus@gmail.com
201
221
  executables:
@@ -208,6 +228,7 @@ files:
208
228
  - CHANGELOG.md
209
229
  - Gemfile
210
230
  - Gemfile.lock
231
+ - LICENSE
211
232
  - README.md
212
233
  - Rakefile
213
234
  - bin/extcite
@@ -238,8 +259,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
238
259
  - !ruby/object:Gem::Version
239
260
  version: '0'
240
261
  requirements: []
241
- rubyforge_project:
242
- rubygems_version: 2.6.8
262
+ rubygems_version: 3.0.4
243
263
  signing_key:
244
264
  specification_version: 4
245
265
  summary: Citations from PDFs