open_calais 0.1.1 → 0.2.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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: e83c4943a15fe6e32a9ef29e41c98cc93c8f5027
4
+ data.tar.gz: 74891ffae6746754684263c2ba604686c186af47
5
+ SHA512:
6
+ metadata.gz: f5bf49e97dd891cdd99932a86754e302a9dd68e5dde6b61149fc1095805652e4dc4b5f82d2b61c916f9b2a01346b171198c35245fa2a1ec9daaafb982be4ffa3
7
+ data.tar.gz: b5f6f8cc0ff27feacd86c973f3125eb3d286f936c5fb0eed4c82fc4b9f93cd44e02e7da8bd1b4dfdd0b7e4e2a4b10d4680e5f414d5ab0ab1c62e58fe70f54665
data/.gitignore CHANGED
@@ -3,6 +3,7 @@
3
3
  .bundle
4
4
  .config
5
5
  .key
6
+ .ruby-version
6
7
  .rbenv-version
7
8
  .yardoc
8
9
  Gemfile.lock
data/.travis.yml ADDED
@@ -0,0 +1,4 @@
1
+ language: ruby
2
+ rvm:
3
+ - "2.1.6"
4
+ - "2.2.1"
data/README.md CHANGED
@@ -1,6 +1,18 @@
1
1
  # OpenCalais
2
2
 
3
- Ruby gem to access the [OpenCalais API](http://www.opencalais.com/documentation/calais-web-service-api/api-invocation/rest), using the new-ish REST API, and JSON responses.
3
+ [![License](https://img.shields.io/badge/license-MIT-blue.svg)](http://opensource.org/licenses/MIT)
4
+ [![Build Status](https://travis-ci.org/PRX/open_calais.svg?branch=master)](https://travis-ci.org/PRX/open_calais)
5
+ [![Code Climate](https://codeclimate.com/github/PRX/open_calais/badges/gpa.svg)](https://codeclimate.com/github/PRX/open_calais)
6
+ [![Coverage Status](https://coveralls.io/repos/PRX/open_calais/badge.svg?branch=master)](https://coveralls.io/r/PRX/open_calais?branch=master)
7
+ [![Dependency Status](https://gemnasium.com/PRX/open_calais.svg)](https://gemnasium.com/PRX/open_calais)
8
+
9
+ ### Gem Version 0.1.* supports the original OpenCalais API
10
+ ### Gem Version 0.2.* now uses the upgraded API http://new.opencalais.com/upgrade/
11
+
12
+ If you are upgrading the the new version of the API, you will need a new API key. You should also review the [upgrade guide](http://new.opencalais.com/upgrade/).
13
+
14
+ This is a ruby gem to access the [OpenCalais API](http://www.opencalais.com/documentation/calais-web-service-api/api-invocation/rest), using the REST API, and JSON responses.
15
+
4
16
  It uses [Faraday](https://github.com/lostisland/faraday) to abstract HTTP library (defaults to use excon because it is excellent), and multi_json to abstract JSON parsing.
5
17
 
6
18
  It returns a parsed version of the response, but the response also contains the raw response (converted from json to hashes/arrays/string/etc).
data/lib/open_calais.rb CHANGED
@@ -11,7 +11,7 @@ module OpenCalais
11
11
  extend Configuration
12
12
 
13
13
  HEADERS = {
14
- :license_id => 'x-calais-licenseID',
14
+ :license_id => 'X-AG-Access-Token',
15
15
  :content_type => 'Content-Type',
16
16
  :output_format => 'outputFormat',
17
17
  :reltag_base_url => 'reltagBaseURL',
@@ -30,14 +30,14 @@ module OpenCalais
30
30
  :xml => 'TEXT/XML',
31
31
  :html => 'TEXT/HTML',
32
32
  :htmlraw => 'TEXT/HTMLRAW',
33
- :raw => 'TEXT/RAW'
33
+ :raw => 'text/raw'
34
34
  }
35
35
 
36
36
  OUTPUT_FORMATS = {
37
37
  :rdf => 'XML/RDF',
38
38
  :simple => 'Text/Simple',
39
39
  :microformats => 'Text/Microformats',
40
- :json => 'Application/JSON'
40
+ :json => 'application/json'
41
41
  }
42
42
 
43
43
  METADATA_SOCIAL_TAGS = 'SocialTags'
@@ -38,7 +38,7 @@ module OpenCalais
38
38
 
39
39
  def analyze(text, opts={})
40
40
  raise 'Specify a value for the text' unless (text && text.length > 0)
41
- options = current_options.merge(opts)
41
+ options = {params: current_options}.merge(opts)
42
42
 
43
43
  response = connection(options).post do |request|
44
44
  request.body = text
@@ -17,7 +17,7 @@ module OpenCalais
17
17
  DEFAULT_ADAPTER = :excon
18
18
 
19
19
  # The api endpoint to get REST info from opencalais
20
- DEFAULT_ENDPOINT = 'http://api.opencalais.com/tag/rs/enrich'.freeze
20
+ DEFAULT_ENDPOINT = 'https://api.thomsonreuters.com/permid/calais'.freeze
21
21
 
22
22
  # The value sent in the http header for 'User-Agent' if none is set
23
23
  DEFAULT_USER_AGENT = "OpenCalais Ruby Gem #{OpenCalais::VERSION}".freeze
@@ -47,7 +47,7 @@ module OpenCalais
47
47
 
48
48
  # Reset configuration options to their defaults
49
49
  def reset!
50
- self.api_key = DEFAULT_API_KEY
50
+ self.api_key = DEFAULT_API_KEY
51
51
  self.adapter = DEFAULT_ADAPTER
52
52
  self.endpoint = DEFAULT_ENDPOINT
53
53
  self.user_agent = DEFAULT_USER_AGENT
@@ -55,4 +55,4 @@ module OpenCalais
55
55
  end
56
56
 
57
57
  end
58
- end
58
+ end
@@ -34,7 +34,7 @@ module OpenCalais
34
34
  :url => endpoint
35
35
  }.merge(opts)
36
36
  options[:headers] = options[:headers].merge(headers)
37
- OpenCalais::HEADERS.each{|k,v| options[:headers][v] = options.delete(k) if options.key?(k)}
37
+ OpenCalais::HEADERS.each{|k,v| options[:headers][v] = options.delete(k) if options.key?(k)}
38
38
  options
39
39
  end
40
40
 
@@ -38,7 +38,7 @@ module OpenCalais
38
38
  r.each do |k,v|
39
39
  case v._typeGroup
40
40
  when 'topics'
41
- self.topics << {:name => humanize_topic(v.categoryName), :score => v.score.to_f, :original => v.categoryName}
41
+ self.topics << {:name => humanize_topic(v.name), :score => v.score.to_f, :original => v.name}
42
42
  when 'socialTag'
43
43
  self.tags << {:name => v.name.gsub('_', ' and ').downcase, :score => importance_to_score(v.importance)}
44
44
  when 'entities'
@@ -72,4 +72,4 @@ module OpenCalais
72
72
  self.tags.delete_if{|tag| topic_names.include?(tag[:name]) }
73
73
  end
74
74
  end
75
- end
75
+ end
@@ -1,5 +1,5 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
 
3
3
  module OpenCalais
4
- VERSION = "0.1.1"
4
+ VERSION = "0.2.0"
5
5
  end
data/open_calais.gemspec CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |gem|
18
18
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
19
19
  gem.require_paths = ["lib"]
20
20
 
21
- gem.add_runtime_dependency('faraday', ['>= 0.7.4', '< 0.9'])
21
+ gem.add_runtime_dependency('faraday', '>= 0.7.4')
22
22
  gem.add_runtime_dependency('faraday_middleware', '~> 0.9')
23
23
  gem.add_runtime_dependency('multi_json', '>= 1.0.3', '~> 1.0')
24
24
  gem.add_runtime_dependency('multi_xml')
@@ -29,4 +29,6 @@ Gem::Specification.new do |gem|
29
29
 
30
30
  gem.add_development_dependency('rake')
31
31
  gem.add_development_dependency('minitest')
32
+ gem.add_development_dependency('simplecov')
33
+ gem.add_development_dependency('coveralls')
32
34
  end
data/test/test_helper.rb CHANGED
@@ -1,5 +1,13 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
 
3
+ require 'simplecov'
4
+ SimpleCov.start
5
+
6
+ if ENV['TRAVIS']
7
+ require 'coveralls'
8
+ Coveralls.wear!
9
+ end
10
+
3
11
  require 'minitest/spec'
4
12
  require 'minitest/autorun'
5
13
 
metadata CHANGED
@@ -1,186 +1,187 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: open_calais
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
5
- prerelease:
4
+ version: 0.2.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Andrew Kuklewicz
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-06-24 00:00:00.000000000 Z
11
+ date: 2015-06-03 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: faraday
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
19
  version: 0.7.4
22
- - - <
23
- - !ruby/object:Gem::Version
24
- version: '0.9'
25
20
  type: :runtime
26
21
  prerelease: false
27
22
  version_requirements: !ruby/object:Gem::Requirement
28
- none: false
29
23
  requirements:
30
- - - ! '>='
24
+ - - ">="
31
25
  - !ruby/object:Gem::Version
32
26
  version: 0.7.4
33
- - - <
34
- - !ruby/object:Gem::Version
35
- version: '0.9'
36
27
  - !ruby/object:Gem::Dependency
37
28
  name: faraday_middleware
38
29
  requirement: !ruby/object:Gem::Requirement
39
- none: false
40
30
  requirements:
41
- - - ~>
31
+ - - "~>"
42
32
  - !ruby/object:Gem::Version
43
33
  version: '0.9'
44
34
  type: :runtime
45
35
  prerelease: false
46
36
  version_requirements: !ruby/object:Gem::Requirement
47
- none: false
48
37
  requirements:
49
- - - ~>
38
+ - - "~>"
50
39
  - !ruby/object:Gem::Version
51
40
  version: '0.9'
52
41
  - !ruby/object:Gem::Dependency
53
42
  name: multi_json
54
43
  requirement: !ruby/object:Gem::Requirement
55
- none: false
56
44
  requirements:
57
- - - ! '>='
45
+ - - ">="
58
46
  - !ruby/object:Gem::Version
59
47
  version: 1.0.3
60
- - - ~>
48
+ - - "~>"
61
49
  - !ruby/object:Gem::Version
62
50
  version: '1.0'
63
51
  type: :runtime
64
52
  prerelease: false
65
53
  version_requirements: !ruby/object:Gem::Requirement
66
- none: false
67
54
  requirements:
68
- - - ! '>='
55
+ - - ">="
69
56
  - !ruby/object:Gem::Version
70
57
  version: 1.0.3
71
- - - ~>
58
+ - - "~>"
72
59
  - !ruby/object:Gem::Version
73
60
  version: '1.0'
74
61
  - !ruby/object:Gem::Dependency
75
62
  name: multi_xml
76
63
  requirement: !ruby/object:Gem::Requirement
77
- none: false
78
64
  requirements:
79
- - - ! '>='
65
+ - - ">="
80
66
  - !ruby/object:Gem::Version
81
67
  version: '0'
82
68
  type: :runtime
83
69
  prerelease: false
84
70
  version_requirements: !ruby/object:Gem::Requirement
85
- none: false
86
71
  requirements:
87
- - - ! '>='
72
+ - - ">="
88
73
  - !ruby/object:Gem::Version
89
74
  version: '0'
90
75
  - !ruby/object:Gem::Dependency
91
76
  name: excon
92
77
  requirement: !ruby/object:Gem::Requirement
93
- none: false
94
78
  requirements:
95
- - - ! '>='
79
+ - - ">="
96
80
  - !ruby/object:Gem::Version
97
81
  version: '0'
98
82
  type: :runtime
99
83
  prerelease: false
100
84
  version_requirements: !ruby/object:Gem::Requirement
101
- none: false
102
85
  requirements:
103
- - - ! '>='
86
+ - - ">="
104
87
  - !ruby/object:Gem::Version
105
88
  version: '0'
106
89
  - !ruby/object:Gem::Dependency
107
90
  name: hashie
108
91
  requirement: !ruby/object:Gem::Requirement
109
- none: false
110
92
  requirements:
111
- - - ! '>='
93
+ - - ">="
112
94
  - !ruby/object:Gem::Version
113
95
  version: 0.4.0
114
96
  type: :runtime
115
97
  prerelease: false
116
98
  version_requirements: !ruby/object:Gem::Requirement
117
- none: false
118
99
  requirements:
119
- - - ! '>='
100
+ - - ">="
120
101
  - !ruby/object:Gem::Version
121
102
  version: 0.4.0
122
103
  - !ruby/object:Gem::Dependency
123
104
  name: activesupport
124
105
  requirement: !ruby/object:Gem::Requirement
125
- none: false
126
106
  requirements:
127
- - - ! '>='
107
+ - - ">="
128
108
  - !ruby/object:Gem::Version
129
109
  version: '0'
130
110
  type: :runtime
131
111
  prerelease: false
132
112
  version_requirements: !ruby/object:Gem::Requirement
133
- none: false
134
113
  requirements:
135
- - - ! '>='
114
+ - - ">="
136
115
  - !ruby/object:Gem::Version
137
116
  version: '0'
138
117
  - !ruby/object:Gem::Dependency
139
118
  name: stringex
140
119
  requirement: !ruby/object:Gem::Requirement
141
- none: false
142
120
  requirements:
143
- - - ! '>='
121
+ - - ">="
144
122
  - !ruby/object:Gem::Version
145
123
  version: '0'
146
124
  type: :runtime
147
125
  prerelease: false
148
126
  version_requirements: !ruby/object:Gem::Requirement
149
- none: false
150
127
  requirements:
151
- - - ! '>='
128
+ - - ">="
152
129
  - !ruby/object:Gem::Version
153
130
  version: '0'
154
131
  - !ruby/object:Gem::Dependency
155
132
  name: rake
156
133
  requirement: !ruby/object:Gem::Requirement
157
- none: false
158
134
  requirements:
159
- - - ! '>='
135
+ - - ">="
160
136
  - !ruby/object:Gem::Version
161
137
  version: '0'
162
138
  type: :development
163
139
  prerelease: false
164
140
  version_requirements: !ruby/object:Gem::Requirement
165
- none: false
166
141
  requirements:
167
- - - ! '>='
142
+ - - ">="
168
143
  - !ruby/object:Gem::Version
169
144
  version: '0'
170
145
  - !ruby/object:Gem::Dependency
171
146
  name: minitest
172
147
  requirement: !ruby/object:Gem::Requirement
173
- none: false
174
148
  requirements:
175
- - - ! '>='
149
+ - - ">="
150
+ - !ruby/object:Gem::Version
151
+ version: '0'
152
+ type: :development
153
+ prerelease: false
154
+ version_requirements: !ruby/object:Gem::Requirement
155
+ requirements:
156
+ - - ">="
157
+ - !ruby/object:Gem::Version
158
+ version: '0'
159
+ - !ruby/object:Gem::Dependency
160
+ name: simplecov
161
+ requirement: !ruby/object:Gem::Requirement
162
+ requirements:
163
+ - - ">="
164
+ - !ruby/object:Gem::Version
165
+ version: '0'
166
+ type: :development
167
+ prerelease: false
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ requirements:
170
+ - - ">="
171
+ - !ruby/object:Gem::Version
172
+ version: '0'
173
+ - !ruby/object:Gem::Dependency
174
+ name: coveralls
175
+ requirement: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - ">="
176
178
  - !ruby/object:Gem::Version
177
179
  version: '0'
178
180
  type: :development
179
181
  prerelease: false
180
182
  version_requirements: !ruby/object:Gem::Requirement
181
- none: false
182
183
  requirements:
183
- - - ! '>='
184
+ - - ">="
184
185
  - !ruby/object:Gem::Version
185
186
  version: '0'
186
187
  description: This is a gem to call the OpenCalais improved REST API. http://www.opencalais.com/
@@ -191,7 +192,8 @@ executables: []
191
192
  extensions: []
192
193
  extra_rdoc_files: []
193
194
  files:
194
- - .gitignore
195
+ - ".gitignore"
196
+ - ".travis.yml"
195
197
  - Gemfile
196
198
  - LICENSE.txt
197
199
  - README.md
@@ -209,33 +211,26 @@ files:
209
211
  - test/test_helper.rb
210
212
  homepage: https://github.com/PRX/open_calais
211
213
  licenses: []
214
+ metadata: {}
212
215
  post_install_message:
213
216
  rdoc_options: []
214
217
  require_paths:
215
218
  - lib
216
219
  required_ruby_version: !ruby/object:Gem::Requirement
217
- none: false
218
220
  requirements:
219
- - - ! '>='
221
+ - - ">="
220
222
  - !ruby/object:Gem::Version
221
223
  version: '0'
222
- segments:
223
- - 0
224
- hash: 644485484940200324
225
224
  required_rubygems_version: !ruby/object:Gem::Requirement
226
- none: false
227
225
  requirements:
228
- - - ! '>='
226
+ - - ">="
229
227
  - !ruby/object:Gem::Version
230
228
  version: '0'
231
- segments:
232
- - 0
233
- hash: 644485484940200324
234
229
  requirements: []
235
230
  rubyforge_project:
236
- rubygems_version: 1.8.23
231
+ rubygems_version: 2.4.5
237
232
  signing_key:
238
- specification_version: 3
233
+ specification_version: 4
239
234
  summary: This is a gem to call the OpenCalais improved REST API.
240
235
  test_files:
241
236
  - test/client_test.rb