diffbot 0.1.7 → 0.1.8

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,15 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 553fa008bd8de1a83a602cd369eecd611218e954
4
- data.tar.gz: 7c89924647f0f68c3ba4cfa38bc7a5d3ac40804e
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ ZDNiODQ2NWVjN2QyMWZmZDAwNGUyN2I1ZGMxYzE0NjZjNTgxODM1OQ==
5
+ data.tar.gz: !binary |-
6
+ YzNhMzIyMDVhMzA4OWE1MmVmZjc5MTIzYTY1ZGU1NTY0MGNkYzE3Ng==
5
7
  SHA512:
6
- metadata.gz: 5ba4e18e310455bce8954e811a70bf7c36748f536f9e1ec323ecc8bde345b36b130dadfa64c558ce633ff66e22754e2fb0527ced80854ea8a06f6e9980b5a4ce
7
- data.tar.gz: bc4a684e30962eb9ae2a53f45381133cde7bbdeb56462be66b8880c58456c5d5ac843978f0c6efd6d0dde1ea8f9d577b8123d9fcc42bac7acd037907b4bbd329
8
+ metadata.gz: !binary |-
9
+ NDkxYmE0Mjc2MThiMTU2NmQzNjYyZTI4ZmQzYzQ4NWZiN2JmNDQ4YTI0MTY1
10
+ YjEzZGYxZTVlYjY4ODljNzMwNDM4YmI1ZDQ5Y2UyOWI5NjQ2OThjNDNiMzY3
11
+ OWU3OTY3OTNmMGYwZTBjZjU2Nzc2ZmIzNjg4ZTkzOGJjMTQwODk=
12
+ data.tar.gz: !binary |-
13
+ Y2U5NzUwOTg2ZmM2Mzk1NzhiODYxZDg3NGU3ZTUxMTIyMWFiZjhkZDRlZTFk
14
+ YjY4YjY0NzM5NTZhYWNkZTgzMmI1MzI1ODQwODk0ZTJjOTEwNjI4ZGE5YjVj
15
+ MmMyODE5Y2NjYmRkMDY4ZjVlNDY1YzY3OWQyMzkwODg3NTRhMDg=
data/.gitignore CHANGED
@@ -1,2 +1,3 @@
1
1
  /pkg
2
2
  .rvm*
3
+ coverage
data/Gemfile CHANGED
@@ -3,5 +3,6 @@ source 'https://rubygems.org'
3
3
  gemspec
4
4
 
5
5
  group :test do
6
- gem "rake"
6
+ gem 'rake'
7
+ gem 'codeclimate-test-reporter', require: nil
7
8
  end
@@ -1,27 +1,45 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- diffbot (0.1.7)
4
+ diffbot (0.1.8)
5
5
  excon
6
- hashie
6
+ hashie (= 3.3.2)
7
7
  nokogiri (~> 1.5.0)
8
8
  yajl-ruby
9
9
 
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- excon (0.20.1)
14
- hashie (2.0.3)
13
+ codeclimate-test-reporter (0.4.1)
14
+ simplecov (>= 0.7.1, < 1.0.0)
15
+ coderay (1.1.0)
16
+ docile (1.1.5)
17
+ excon (0.43.0)
18
+ hashie (3.3.2)
19
+ method_source (0.8.2)
15
20
  minitest (4.7.0)
16
- nokogiri (1.5.10)
21
+ multi_json (1.10.1)
22
+ nokogiri (1.5.11)
23
+ pry (0.10.1)
24
+ coderay (~> 1.1.0)
25
+ method_source (~> 0.8.1)
26
+ slop (~> 3.4)
17
27
  rake (10.0.4)
18
- yajl-ruby (1.1.0)
28
+ simplecov (0.9.1)
29
+ docile (~> 1.1.0)
30
+ multi_json (~> 1.0)
31
+ simplecov-html (~> 0.8.0)
32
+ simplecov-html (0.8.0)
33
+ slop (3.6.0)
34
+ yajl-ruby (1.2.1)
19
35
 
20
36
  PLATFORMS
21
37
  ruby
22
38
 
23
39
  DEPENDENCIES
24
40
  bundler (~> 1.3)
41
+ codeclimate-test-reporter
25
42
  diffbot!
26
43
  minitest
44
+ pry
27
45
  rake
data/README.md CHANGED
@@ -1,6 +1,12 @@
1
1
  # Diffbot
2
2
 
3
- This is a ruby client for the [Diffbot](http://diffbot.com) API. [![Build Status](https://travis-ci.org/greshny/diffbot.png?branch=master)](https://travis-ci.org/greshny/diffbot)
3
+ This is a ruby client for the [Diffbot](http://diffbot.com) API.
4
+
5
+ [![Gem Version](https://badge.fury.io/rb/diffbot.svg)](http://badge.fury.io/rb/diffbot)
6
+ [![Dependency Status](https://gemnasium.com/greshny/diffbot.svg)](https://gemnasium.com/greshny/diffbot)
7
+ [![Build Status](https://travis-ci.org/greshny/diffbot.png?branch=master)](https://travis-ci.org/greshny/diffbot)
8
+ [![Code Climate](https://codeclimate.com/github/greshny/diffbot/badges/gpa.svg)](https://codeclimate.com/github/greshny/diffbot)
9
+ [![Test Coverage](https://codeclimate.com/github/greshny/diffbot/badges/coverage.svg)](https://codeclimate.com/github/greshny/diffbot)
4
10
 
5
11
  ## Install
6
12
 
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "diffbot"
3
- s.version = "0.1.7"
3
+ s.version = "0.1.8"
4
4
  s.description = "Diffbot provides a concise API for analyzing and extracting semantic information from web pages using Diffbot (http://www.diffbot.com)."
5
5
  s.summary = "Ruby interface to the Diffbot API "
6
6
  s.authors = ["Nicolas Sanguinetti", "Roman Greshny"]
@@ -13,7 +13,9 @@ Gem::Specification.new do |s|
13
13
  s.add_dependency("excon")
14
14
  s.add_dependency("yajl-ruby")
15
15
  s.add_dependency("nokogiri", "~> 1.5.0")
16
- s.add_dependency("hashie")
16
+ s.add_dependency("hashie", "3.3.2")
17
+
17
18
  s.add_development_dependency("bundler", "~> 1.3")
18
19
  s.add_development_dependency("minitest")
20
+ s.add_development_dependency("pry")
19
21
  end
@@ -1,11 +1,16 @@
1
1
  require "yajl"
2
+ require 'hashie/extensions/dash/indifferent_access'
3
+ require 'hashie/extensions/indifferent_access'
4
+ require 'hashie/trash'
5
+ require 'hashie/extensions/coercion'
2
6
 
3
7
  module Diffbot
4
8
  # Representation of an article (ie a blog post or similar). This class offers
5
9
  # a single entry point: the `.fetch` method, that, given a URL, will return
6
10
  # the article as analyzed by Diffbot.
7
11
  class Article < Hashie::Trash
8
- extend CoercibleHash
12
+ include Hashie::Extensions::Coercion
13
+ include Hashie::Extensions::IndifferentAccess
9
14
 
10
15
  # Public: Fetch an article from a URL.
11
16
  #
@@ -68,6 +73,7 @@ module Diffbot
68
73
  property :human_language, from: :humanLanguage
69
74
 
70
75
  class MediaItem < Hashie::Trash
76
+ include Hashie::Extensions::IndifferentAccess
71
77
  property :type
72
78
  property :link
73
79
  property :primary, default: false
@@ -82,9 +88,10 @@ module Diffbot
82
88
  # primary - Only present in one of the items. This is assumed to be the most
83
89
  # representative media for this article.
84
90
  property :media
85
- coerce_property :media, collection: MediaItem
91
+ coerce_key :media, Array[MediaItem]
86
92
 
87
93
  class ImageItem < Hashie::Trash
94
+ include Hashie::Extensions::IndifferentAccess
88
95
  property :url
89
96
  property :pixel_height, from: :pixelHeight
90
97
  property :pixel_width, from: :pixelWidth
@@ -100,8 +107,7 @@ module Diffbot
100
107
  # pixel_weight - Image width, in pixels.
101
108
  # caption - Diffbot-determined best caption for the image, if detected.
102
109
  # primary - Returns "true" if image is identified as primary.
103
- property :images
104
- coerce_property :images, collection: ImageItem
110
+ coerce_key :images, Array[ImageItem]
105
111
 
106
112
  # Public: The raw text of the article, without formatting.
107
113
  property :text
@@ -135,6 +141,7 @@ module Diffbot
135
141
  property :supertags
136
142
 
137
143
  class VideoItem < Hashie::Trash
144
+ include Hashie::Extensions::IndifferentAccess
138
145
  property :url
139
146
  property :pixel_height, from: :pixelHeight
140
147
  property :pixel_width, from: :pixelWidth
@@ -147,10 +154,10 @@ module Diffbot
147
154
  # pixel_height - Video height, in pixels, if accessible.
148
155
  # pixel_width - Video width, in pixels, if accessible.
149
156
  # primary - Returns "true" if the video is identified as primary.
150
- property :videos
151
- coerce_property :videos, collection: VideoItem
157
+ coerce_key :videos, Array[VideoItem]
152
158
 
153
159
  class Stats < Hashie::Trash
160
+ include Hashie::Extensions::IndifferentAccess
154
161
  property :fetch_time, from: :fetchTime
155
162
  property :confidence
156
163
  end
@@ -162,8 +169,7 @@ module Diffbot
162
169
  # the text of the article. Between 0.0 and 1.0.
163
170
  #
164
171
  # Only present if you set `stats` to true in the request.
165
- property :stats
166
- coerce_property :stats, class: Stats
172
+ coerce_key :stats, Stats
167
173
 
168
174
  # Public: The XPath selector at which the body of the article was found in
169
175
  # the page.
@@ -203,6 +209,7 @@ module Diffbot
203
209
  property :type
204
210
 
205
211
  class RequestParams < Hashie::Trash
212
+ include Hashie::Extensions::IndifferentAccess
206
213
  # Public: Set to true to return HTML instead of plain-text.
207
214
  #
208
215
  # Defaults to nil.
@@ -1,3 +1,6 @@
1
+ require 'codeclimate-test-reporter'
2
+ CodeClimate::TestReporter.start
3
+
1
4
  require "minitest/spec"
2
5
  require "minitest/autorun"
3
6
  require "diffbot"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: diffbot
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nicolas Sanguinetti
@@ -9,90 +9,104 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-10-27 00:00:00.000000000 Z
12
+ date: 2015-03-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: excon
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ">="
18
+ - - ! '>='
19
19
  - !ruby/object:Gem::Version
20
20
  version: '0'
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - ">="
25
+ - - ! '>='
26
26
  - !ruby/object:Gem::Version
27
27
  version: '0'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: yajl-ruby
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ">="
32
+ - - ! '>='
33
33
  - !ruby/object:Gem::Version
34
34
  version: '0'
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ">="
39
+ - - ! '>='
40
40
  - !ruby/object:Gem::Version
41
41
  version: '0'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: nokogiri
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - "~>"
46
+ - - ~>
47
47
  - !ruby/object:Gem::Version
48
48
  version: 1.5.0
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - "~>"
53
+ - - ~>
54
54
  - !ruby/object:Gem::Version
55
55
  version: 1.5.0
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: hashie
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - ">="
60
+ - - '='
61
61
  - !ruby/object:Gem::Version
62
- version: '0'
62
+ version: 3.3.2
63
63
  type: :runtime
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: '0'
69
+ version: 3.3.2
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: bundler
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - "~>"
74
+ - - ~>
75
75
  - !ruby/object:Gem::Version
76
76
  version: '1.3'
77
77
  type: :development
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - "~>"
81
+ - - ~>
82
82
  - !ruby/object:Gem::Version
83
83
  version: '1.3'
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: minitest
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - ">="
88
+ - - ! '>='
89
+ - !ruby/object:Gem::Version
90
+ version: '0'
91
+ type: :development
92
+ prerelease: false
93
+ version_requirements: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ! '>='
96
+ - !ruby/object:Gem::Version
97
+ version: '0'
98
+ - !ruby/object:Gem::Dependency
99
+ name: pry
100
+ requirement: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - ! '>='
89
103
  - !ruby/object:Gem::Version
90
104
  version: '0'
91
105
  type: :development
92
106
  prerelease: false
93
107
  version_requirements: !ruby/object:Gem::Requirement
94
108
  requirements:
95
- - - ">="
109
+ - - ! '>='
96
110
  - !ruby/object:Gem::Version
97
111
  version: '0'
98
112
  description: Diffbot provides a concise API for analyzing and extracting semantic
@@ -104,8 +118,8 @@ executables: []
104
118
  extensions: []
105
119
  extra_rdoc_files: []
106
120
  files:
107
- - ".gitignore"
108
- - ".travis.yml"
121
+ - .gitignore
122
+ - .travis.yml
109
123
  - Gemfile
110
124
  - Gemfile.lock
111
125
  - LICENSE
@@ -134,17 +148,17 @@ require_paths:
134
148
  - lib
135
149
  required_ruby_version: !ruby/object:Gem::Requirement
136
150
  requirements:
137
- - - ">="
151
+ - - ! '>='
138
152
  - !ruby/object:Gem::Version
139
153
  version: '0'
140
154
  required_rubygems_version: !ruby/object:Gem::Requirement
141
155
  requirements:
142
- - - ">="
156
+ - - ! '>='
143
157
  - !ruby/object:Gem::Version
144
158
  version: '0'
145
159
  requirements: []
146
160
  rubyforge_project:
147
- rubygems_version: 2.2.2
161
+ rubygems_version: 2.4.5
148
162
  signing_key:
149
163
  specification_version: 4
150
164
  summary: Ruby interface to the Diffbot API