link_thumbnailer 1.0.9 → 1.1.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 +15 -0
- data/.gitignore +1 -0
- data/.travis.yml +6 -0
- data/CHANGELOG.md +10 -0
- data/Gemfile +8 -0
- data/README.md +6 -0
- data/Rakefile +6 -3
- data/lib/generators/templates/initializer.rb +5 -5
- data/lib/link_thumbnailer/configuration.rb +11 -0
- data/lib/link_thumbnailer/img_comparator.rb +6 -7
- data/lib/link_thumbnailer/img_parser.rb +3 -8
- data/lib/link_thumbnailer/object.rb +7 -7
- data/lib/link_thumbnailer/version.rb +1 -1
- data/lib/link_thumbnailer/web_image.rb +7 -6
- data/lib/link_thumbnailer.rb +15 -11
- data/link_thumbnailer.gemspec +9 -7
- data/spec/link_thumbnailer_spec.rb +5 -5
- data/spec/spec_helper.rb +6 -2
- data/spec/web_image_spec.rb +1 -1
- metadata +58 -33
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
NTA1YjA5YWExNGFlMWQwYTdlOWRjZGNiYTJkZTE2ZGU5YzdhZGM5MQ==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
MjFjYmQ5NDFkMDQ2YTFlY2IxZmEwZmM3OTZhOTdiOTFkZjU1MzMyNw==
|
7
|
+
SHA512:
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
MjY0NTUzZDE0ZDkyYjhjMjY0MzBhYThlYmNlZGIwMGY3MDIxMGIxOTg1ZGQ0
|
10
|
+
MTVhNzlkZDJmYTlkMjhkZmE5NjgxOGZmZWRhMzk4N2E4Y2E3MzBmMWRlMGI3
|
11
|
+
N2U5MGQ1NjFjYjM4M2EzZDM5ZGI5MjFhYzZlNjM4NDBlYzZhOWY=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
YjcxOWQ5OWEzOWMzNjE0N2VkN2JiOTE1YjRmZjA5ZGI5YTliYzA5NDczNmQx
|
14
|
+
MWY0YjkyODFlZDU3OWQ2M2ZiZTEzOTYxOWZhYmI1MGZlM2JhMzY4NTIxYWNj
|
15
|
+
ZWIxMDI2ZjQwNzQzYjQ5ZDU3NWVlMGJmOTc4MDI0OGZmYWNiMmQ=
|
data/.gitignore
CHANGED
data/.travis.yml
ADDED
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,13 @@
|
|
1
|
+
# 1.1.0
|
2
|
+
|
3
|
+
- Replace RMagick by [FastImage](https://github.com/sdsykes/fastimage)
|
4
|
+
- Rename `rmagick_attributes` config into `image_attributes`
|
5
|
+
|
6
|
+
# 1.0.9
|
7
|
+
|
8
|
+
- Fix issue when Location header used a relative path instead of an absolute path
|
9
|
+
- Update gemfile to be more flexible when using Hashie gem
|
10
|
+
|
1
11
|
# 1.0.8
|
2
12
|
|
3
13
|
- Thanks to [juriglx](https://github.com/juriglx), support for canonical urls
|
data/Gemfile
CHANGED
@@ -2,3 +2,11 @@ source 'https://rubygems.org'
|
|
2
2
|
|
3
3
|
# Specify your gem's dependencies in link_thumbnailer.gemspec
|
4
4
|
gemspec
|
5
|
+
|
6
|
+
group :test do
|
7
|
+
gem 'coveralls', require: false
|
8
|
+
gem 'simplecov', require: false
|
9
|
+
gem 'rspec', '~> 2.14'
|
10
|
+
gem 'webmock', '~> 1.14'
|
11
|
+
gem 'pry', '~> 0.9'
|
12
|
+
end
|
data/README.md
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
# LinkThumbnailer
|
2
2
|
|
3
3
|
[](https://codeclimate.com/github/gottfrois/link_thumbnailer)
|
4
|
+
[](https://coveralls.io/r/gottfrois/link_thumbnailer?branch=master)
|
5
|
+
[](https://travis-ci.org/gottfrois/link_thumbnailer)
|
4
6
|
|
5
7
|
Ruby gem generating image thumbnails from a given URL. Rank them and give you back an object containing images and website informations. Works like Facebook link previewer.
|
6
8
|
|
@@ -176,3 +178,7 @@ Coming soon:
|
|
176
178
|
|
177
179
|
- [phlegx](https://github.com/phlegx)
|
178
180
|
- [juriglx](https://github.com/juriglx)
|
181
|
+
|
182
|
+
|
183
|
+
[](https://bitdeli.com/free "Bitdeli Badge")
|
184
|
+
|
data/Rakefile
CHANGED
@@ -22,20 +22,20 @@ LinkThumbnailer.configure do |config|
|
|
22
22
|
# for more details.
|
23
23
|
# 'source_url' is a custom attribute and should always be included since this
|
24
24
|
# is where you'll find the image url.
|
25
|
-
# config.
|
25
|
+
# config.image_attributes = %w(source_url size type)
|
26
26
|
|
27
27
|
# Fetch 10 images maximum.
|
28
28
|
# config.limit = 10
|
29
29
|
|
30
30
|
# Return top 5 images only.
|
31
31
|
# config.top = 5
|
32
|
-
|
32
|
+
|
33
33
|
# Set user agent
|
34
34
|
# config.user_agent = 'linkthumbnailer'
|
35
|
-
|
36
|
-
# Enable or disable SSL verification
|
35
|
+
|
36
|
+
# Enable or disable SSL verification
|
37
37
|
# config.verify_ssl = true
|
38
|
-
|
38
|
+
|
39
39
|
# HTTP open_timeout: The amount of time in seconds to wait for a connection to be opened.
|
40
40
|
# config.http_timeout = 5
|
41
41
|
end
|
@@ -2,5 +2,16 @@ require 'hashie'
|
|
2
2
|
|
3
3
|
module LinkThumbnailer
|
4
4
|
class Configuration < Hashie::Mash
|
5
|
+
|
6
|
+
def rmagick_attributes
|
7
|
+
LinkThumbnailer.logger.info "[DEPRECATION] rmagick_attributes is deprecated. Use image_attributes instead."
|
8
|
+
image_attributes
|
9
|
+
end
|
10
|
+
|
11
|
+
def rmagick_attributes=(value)
|
12
|
+
LinkThumbnailer.logger.info "[DEPRECATION] rmagick_attributes is deprecated. Use image_attributes instead."
|
13
|
+
self.image_attributes = value
|
14
|
+
end
|
15
|
+
|
5
16
|
end
|
6
17
|
end
|
@@ -3,14 +3,13 @@ module LinkThumbnailer
|
|
3
3
|
module ImgComparator
|
4
4
|
|
5
5
|
def <=> other
|
6
|
-
|
7
|
-
(
|
8
|
-
|
9
|
-
|
10
|
-
|
6
|
+
if other.size != nil && size != nil
|
7
|
+
return (other.size.min ** 2) <=> (size.min ** 2)
|
8
|
+
elsif other.size != nil
|
9
|
+
return 1
|
10
|
+
else
|
11
|
+
return -1
|
11
12
|
end
|
12
|
-
|
13
|
-
result
|
14
13
|
end
|
15
14
|
|
16
15
|
end
|
@@ -1,4 +1,4 @@
|
|
1
|
-
require '
|
1
|
+
require 'fastimage'
|
2
2
|
|
3
3
|
module LinkThumbnailer
|
4
4
|
|
@@ -20,23 +20,18 @@ module LinkThumbnailer
|
|
20
20
|
break if count >= LinkThumbnailer.configuration.limit
|
21
21
|
img = parse_one(i)
|
22
22
|
next unless img
|
23
|
+
img.extend LinkThumbnailer::WebImage
|
23
24
|
img.extend LinkThumbnailer::ImgComparator
|
24
25
|
imgs << img
|
25
26
|
count += 1
|
26
27
|
}
|
27
28
|
|
28
29
|
imgs.sort! unless imgs.count <= 1
|
29
|
-
|
30
30
|
imgs.first(LinkThumbnailer.configuration.top)
|
31
31
|
end
|
32
32
|
|
33
33
|
def parse_one(img_url)
|
34
|
-
|
35
|
-
img = Magick::ImageList.new.from_blob(img_data).extend(
|
36
|
-
LinkThumbnailer::WebImage
|
37
|
-
)
|
38
|
-
img.source_url = img_url
|
39
|
-
img
|
34
|
+
FastImage.new(img_url, raise_on_failure: false)
|
40
35
|
rescue StandardError
|
41
36
|
nil
|
42
37
|
end
|
@@ -16,24 +16,24 @@ module LinkThumbnailer
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def valid?
|
19
|
-
return false if
|
20
|
-
LinkThumbnailer.configuration.mandatory_attributes.each {|a| return false if self[a].nil? || self[a].empty? } if LinkThumbnailer.configuration.strict
|
19
|
+
return false if keys.empty?
|
20
|
+
LinkThumbnailer.configuration.mandatory_attributes.each { |a| return false if self[a].nil? || self[a].empty? } if LinkThumbnailer.configuration.strict
|
21
21
|
true
|
22
22
|
end
|
23
23
|
|
24
24
|
def to_hash
|
25
|
-
if
|
26
|
-
super.merge('images' =>
|
25
|
+
if images.none? { |i| i.is_a?(String) }
|
26
|
+
super.merge('images' => images.map(&:to_hash))
|
27
27
|
else
|
28
28
|
super
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
32
32
|
def to_json
|
33
|
-
if
|
34
|
-
JSON.generate(
|
33
|
+
if images.none? { |i| i.is_a?(String) }
|
34
|
+
JSON.generate(to_hash.merge('images' => images.map(&:to_hash)))
|
35
35
|
else
|
36
|
-
JSON.generate(
|
36
|
+
JSON.generate(to_hash)
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
@@ -1,17 +1,18 @@
|
|
1
1
|
module LinkThumbnailer
|
2
2
|
module WebImage
|
3
3
|
|
4
|
-
attr_accessor :
|
4
|
+
attr_accessor :doc
|
5
|
+
|
6
|
+
def source_url
|
7
|
+
instance_variable_get(:@uri)
|
8
|
+
end
|
5
9
|
|
6
10
|
def to_hash
|
7
|
-
|
8
|
-
LinkThumbnailer.configuration.rmagick_attributes.each {|m|
|
11
|
+
LinkThumbnailer.configuration.image_attributes.each_with_object({}) { |m, result|
|
9
12
|
k = m.to_sym
|
10
13
|
result[k] = self.send(m) if self.respond_to?(m)
|
11
|
-
result[k] = result[k].to_s if result[k].is_a?(URI)
|
14
|
+
result[k] = result[k].to_s if result[k].is_a?(URI) || result[k].respond_to?(:to_str)
|
12
15
|
}
|
13
|
-
|
14
|
-
result
|
15
16
|
end
|
16
17
|
|
17
18
|
end
|
data/lib/link_thumbnailer.rb
CHANGED
@@ -20,7 +20,11 @@ module LinkThumbnailer
|
|
20
20
|
class << self
|
21
21
|
|
22
22
|
attr_accessor :configuration, :object, :fetcher, :doc_parser,
|
23
|
-
:img_url_filters, :img_parser
|
23
|
+
:img_url_filters, :img_parser, :logger
|
24
|
+
|
25
|
+
def logger
|
26
|
+
@logger ||= ::Rails.logger
|
27
|
+
end
|
24
28
|
|
25
29
|
def config
|
26
30
|
self.configuration ||= Configuration.new(
|
@@ -33,7 +37,7 @@ module LinkThumbnailer
|
|
33
37
|
%r{^http://pixel\.quantserve\.com/},
|
34
38
|
%r{^http://s7\.addthis\.com/}
|
35
39
|
],
|
36
|
-
|
40
|
+
image_attributes: %w(source_url size type),
|
37
41
|
limit: 10,
|
38
42
|
top: 5,
|
39
43
|
user_agent: 'linkthumbnailer',
|
@@ -50,9 +54,9 @@ module LinkThumbnailer
|
|
50
54
|
set_options(options)
|
51
55
|
instantiate_classes
|
52
56
|
|
53
|
-
doc =
|
57
|
+
doc = doc_parser.parse(fetcher.fetch(url), url)
|
54
58
|
|
55
|
-
self.object[:url] =
|
59
|
+
self.object[:url] = fetcher.url.to_s
|
56
60
|
opengraph(doc) || custom(doc)
|
57
61
|
end
|
58
62
|
|
@@ -68,22 +72,22 @@ module LinkThumbnailer
|
|
68
72
|
self.fetcher = LinkThumbnailer::Fetcher.new
|
69
73
|
self.doc_parser = LinkThumbnailer::DocParser.new
|
70
74
|
self.img_url_filters = [LinkThumbnailer::ImgUrlFilter.new]
|
71
|
-
self.img_parser = LinkThumbnailer::ImgParser.new(
|
75
|
+
self.img_parser = LinkThumbnailer::ImgParser.new(fetcher, img_url_filters)
|
72
76
|
end
|
73
77
|
|
74
78
|
def opengraph(doc)
|
75
|
-
return
|
76
|
-
self.object = LinkThumbnailer::Opengraph.parse(
|
77
|
-
return
|
79
|
+
return unless opengraph?(doc)
|
80
|
+
self.object = LinkThumbnailer::Opengraph.parse(object, doc)
|
81
|
+
return object if object.valid?
|
78
82
|
nil
|
79
83
|
end
|
80
84
|
|
81
85
|
def custom(doc)
|
82
86
|
self.object[:title] = doc.title
|
83
87
|
self.object[:description] = doc.description
|
84
|
-
self.object[:images] =
|
85
|
-
self.object[:url] = doc.canonical_url ||
|
86
|
-
return
|
88
|
+
self.object[:images] = img_parser.parse(doc.img_abs_urls.dup)
|
89
|
+
self.object[:url] = doc.canonical_url || object[:url]
|
90
|
+
return object if object.valid?
|
87
91
|
nil
|
88
92
|
end
|
89
93
|
|
data/link_thumbnailer.gemspec
CHANGED
@@ -15,12 +15,14 @@ Gem::Specification.new do |gem|
|
|
15
15
|
gem.require_paths = ["lib"]
|
16
16
|
gem.version = LinkThumbnailer::VERSION
|
17
17
|
|
18
|
-
gem.add_dependency
|
19
|
-
gem.add_dependency
|
20
|
-
gem.add_dependency
|
21
|
-
gem.add_dependency
|
22
|
-
gem.add_dependency
|
18
|
+
gem.add_dependency 'rake', '>= 0.9'
|
19
|
+
gem.add_dependency 'nokogiri', '>= 1.5.5', '< 1.7'
|
20
|
+
gem.add_dependency 'hashie', '>= 1.2.0'
|
21
|
+
gem.add_dependency 'net-http-persistent', '~> 2.7'
|
22
|
+
gem.add_dependency 'fastimage', '~> 1.5.5'
|
23
|
+
gem.add_dependency 'json', '>= 1.7.6', '< 1.9'
|
23
24
|
|
24
|
-
gem.add_development_dependency
|
25
|
-
gem.add_development_dependency
|
25
|
+
gem.add_development_dependency 'bundler', '~> 1.3'
|
26
|
+
gem.add_development_dependency 'rspec', '~> 2.14'
|
27
|
+
gem.add_development_dependency 'pry', '~> 0.9'
|
26
28
|
end
|
@@ -24,7 +24,7 @@ describe LinkThumbnailer do
|
|
24
24
|
config.strict = false
|
25
25
|
config.redirect_limit = 5
|
26
26
|
config.blacklist_urls = []
|
27
|
-
config.
|
27
|
+
config.image_attributes = []
|
28
28
|
config.limit = 5
|
29
29
|
config.top = 10
|
30
30
|
config.user_agent = 'linkthumbnailer'
|
@@ -41,7 +41,7 @@ describe LinkThumbnailer do
|
|
41
41
|
specify { LinkThumbnailer.configuration.strict.should be_false }
|
42
42
|
specify { LinkThumbnailer.configuration.redirect_limit.should eq(5) }
|
43
43
|
specify { LinkThumbnailer.configuration.blacklist_urls.should eq([]) }
|
44
|
-
specify { LinkThumbnailer.configuration.
|
44
|
+
specify { LinkThumbnailer.configuration.image_attributes.should eq([]) }
|
45
45
|
specify { LinkThumbnailer.configuration.limit.should eq(5) }
|
46
46
|
specify { LinkThumbnailer.configuration.top.should eq(10) }
|
47
47
|
specify { LinkThumbnailer.configuration.user_agent.should eq('linkthumbnailer') }
|
@@ -65,7 +65,7 @@ describe LinkThumbnailer do
|
|
65
65
|
%r{^http://pixel\.quantserve\.com/},
|
66
66
|
%r{^http://s7\.addthis\.com/}
|
67
67
|
]) }
|
68
|
-
specify { LinkThumbnailer.configuration.
|
68
|
+
specify { LinkThumbnailer.configuration.image_attributes.should eq(%w(source_url size type)) }
|
69
69
|
specify { LinkThumbnailer.configuration.limit.should eq(10) }
|
70
70
|
specify { LinkThumbnailer.configuration.top.should eq(5) }
|
71
71
|
specify { LinkThumbnailer.configuration.user_agent.should eq('linkthumbnailer') }
|
@@ -109,8 +109,8 @@ describe LinkThumbnailer do
|
|
109
109
|
expect { LinkThumbnailer.generate('foo', blacklist_urls: [%r{^http://foo\.bar\.com/}]).to change(LinkThumbnailer.configuration.blacklist_urls).to([%r{^http://foo\.bar\.com/}]) }
|
110
110
|
end
|
111
111
|
|
112
|
-
it "should set
|
113
|
-
expect { LinkThumbnailer.generate('foo',
|
112
|
+
it "should set image_attributes option" do
|
113
|
+
expect { LinkThumbnailer.generate('foo', image_attributes: %w(one two)).to change(LinkThumbnailer.configuration.image_attributes).to(%w(one two)) }
|
114
114
|
end
|
115
115
|
|
116
116
|
it "should set user_agent option" do
|
data/spec/spec_helper.rb
CHANGED
@@ -1,9 +1,13 @@
|
|
1
|
+
require 'simplecov'
|
2
|
+
require 'coveralls'
|
3
|
+
Coveralls.wear!
|
4
|
+
|
5
|
+
require 'link_thumbnailer'
|
1
6
|
require 'rspec'
|
2
7
|
require 'webmock/rspec'
|
3
8
|
require 'json'
|
4
9
|
|
5
|
-
|
10
|
+
SimpleCov.formatter = Coveralls::SimpleCov::Formatter
|
6
11
|
|
7
12
|
RSpec.configure do |config|
|
8
|
-
config.mock_with :rspec
|
9
13
|
end
|
data/spec/web_image_spec.rb
CHANGED
@@ -35,7 +35,7 @@ describe LinkThumbnailer::WebImage do
|
|
35
35
|
|
36
36
|
context "with all attributes" do
|
37
37
|
|
38
|
-
let(:attributes) { LinkThumbnailer.configuration.
|
38
|
+
let(:attributes) { LinkThumbnailer.configuration.image_attributes }
|
39
39
|
|
40
40
|
before do
|
41
41
|
attributes.each {|a| foo.class.send(:define_method, a.to_sym) { 'foo' } }
|
metadata
CHANGED
@@ -1,36 +1,52 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: link_thumbnailer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
5
|
-
prerelease:
|
4
|
+
version: 1.1.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Pierre-Louis Gottfrois
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2014-02-25 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rake
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ! '>='
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0.9'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ! '>='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0.9'
|
14
27
|
- !ruby/object:Gem::Dependency
|
15
28
|
name: nokogiri
|
16
29
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
30
|
requirements:
|
19
|
-
- -
|
31
|
+
- - ! '>='
|
20
32
|
- !ruby/object:Gem::Version
|
21
33
|
version: 1.5.5
|
34
|
+
- - <
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: '1.7'
|
22
37
|
type: :runtime
|
23
38
|
prerelease: false
|
24
39
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
40
|
requirements:
|
27
|
-
- -
|
41
|
+
- - ! '>='
|
28
42
|
- !ruby/object:Gem::Version
|
29
43
|
version: 1.5.5
|
44
|
+
- - <
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: '1.7'
|
30
47
|
- !ruby/object:Gem::Dependency
|
31
48
|
name: hashie
|
32
49
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
50
|
requirements:
|
35
51
|
- - ! '>='
|
36
52
|
- !ruby/object:Gem::Version
|
@@ -38,7 +54,6 @@ dependencies:
|
|
38
54
|
type: :runtime
|
39
55
|
prerelease: false
|
40
56
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
57
|
requirements:
|
43
58
|
- - ! '>='
|
44
59
|
- !ruby/object:Gem::Version
|
@@ -46,7 +61,6 @@ dependencies:
|
|
46
61
|
- !ruby/object:Gem::Dependency
|
47
62
|
name: net-http-persistent
|
48
63
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
64
|
requirements:
|
51
65
|
- - ~>
|
52
66
|
- !ruby/object:Gem::Version
|
@@ -54,75 +68,86 @@ dependencies:
|
|
54
68
|
type: :runtime
|
55
69
|
prerelease: false
|
56
70
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
71
|
requirements:
|
59
72
|
- - ~>
|
60
73
|
- !ruby/object:Gem::Version
|
61
74
|
version: '2.7'
|
62
75
|
- !ruby/object:Gem::Dependency
|
63
|
-
name:
|
76
|
+
name: fastimage
|
64
77
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
78
|
requirements:
|
67
79
|
- - ~>
|
68
80
|
- !ruby/object:Gem::Version
|
69
|
-
version:
|
81
|
+
version: 1.5.5
|
70
82
|
type: :runtime
|
71
83
|
prerelease: false
|
72
84
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
85
|
requirements:
|
75
86
|
- - ~>
|
76
87
|
- !ruby/object:Gem::Version
|
77
|
-
version:
|
88
|
+
version: 1.5.5
|
78
89
|
- !ruby/object:Gem::Dependency
|
79
90
|
name: json
|
80
91
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
92
|
requirements:
|
83
|
-
- -
|
93
|
+
- - ! '>='
|
84
94
|
- !ruby/object:Gem::Version
|
85
95
|
version: 1.7.6
|
96
|
+
- - <
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: '1.9'
|
86
99
|
type: :runtime
|
87
100
|
prerelease: false
|
88
101
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
102
|
requirements:
|
91
|
-
- -
|
103
|
+
- - ! '>='
|
92
104
|
- !ruby/object:Gem::Version
|
93
105
|
version: 1.7.6
|
106
|
+
- - <
|
107
|
+
- !ruby/object:Gem::Version
|
108
|
+
version: '1.9'
|
109
|
+
- !ruby/object:Gem::Dependency
|
110
|
+
name: bundler
|
111
|
+
requirement: !ruby/object:Gem::Requirement
|
112
|
+
requirements:
|
113
|
+
- - ~>
|
114
|
+
- !ruby/object:Gem::Version
|
115
|
+
version: '1.3'
|
116
|
+
type: :development
|
117
|
+
prerelease: false
|
118
|
+
version_requirements: !ruby/object:Gem::Requirement
|
119
|
+
requirements:
|
120
|
+
- - ~>
|
121
|
+
- !ruby/object:Gem::Version
|
122
|
+
version: '1.3'
|
94
123
|
- !ruby/object:Gem::Dependency
|
95
124
|
name: rspec
|
96
125
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
126
|
requirements:
|
99
127
|
- - ~>
|
100
128
|
- !ruby/object:Gem::Version
|
101
|
-
version: 2.
|
129
|
+
version: '2.14'
|
102
130
|
type: :development
|
103
131
|
prerelease: false
|
104
132
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
133
|
requirements:
|
107
134
|
- - ~>
|
108
135
|
- !ruby/object:Gem::Version
|
109
|
-
version: 2.
|
136
|
+
version: '2.14'
|
110
137
|
- !ruby/object:Gem::Dependency
|
111
|
-
name:
|
138
|
+
name: pry
|
112
139
|
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
140
|
requirements:
|
115
141
|
- - ~>
|
116
142
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
143
|
+
version: '0.9'
|
118
144
|
type: :development
|
119
145
|
prerelease: false
|
120
146
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
147
|
requirements:
|
123
148
|
- - ~>
|
124
149
|
- !ruby/object:Gem::Version
|
125
|
-
version:
|
150
|
+
version: '0.9'
|
126
151
|
description: Ruby gem generating thumbnail images from a given URL.
|
127
152
|
email:
|
128
153
|
- pierrelouis.gottfrois@gmail.com
|
@@ -132,6 +157,7 @@ extra_rdoc_files: []
|
|
132
157
|
files:
|
133
158
|
- .gitignore
|
134
159
|
- .rspec
|
160
|
+
- .travis.yml
|
135
161
|
- CHANGELOG.md
|
136
162
|
- Gemfile
|
137
163
|
- LICENSE
|
@@ -173,27 +199,26 @@ files:
|
|
173
199
|
- spec/web_image_spec.rb
|
174
200
|
homepage: https://github.com/gottfrois/link_thumbnailer
|
175
201
|
licenses: []
|
202
|
+
metadata: {}
|
176
203
|
post_install_message:
|
177
204
|
rdoc_options: []
|
178
205
|
require_paths:
|
179
206
|
- lib
|
180
207
|
required_ruby_version: !ruby/object:Gem::Requirement
|
181
|
-
none: false
|
182
208
|
requirements:
|
183
209
|
- - ! '>='
|
184
210
|
- !ruby/object:Gem::Version
|
185
211
|
version: '0'
|
186
212
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
187
|
-
none: false
|
188
213
|
requirements:
|
189
214
|
- - ! '>='
|
190
215
|
- !ruby/object:Gem::Version
|
191
216
|
version: '0'
|
192
217
|
requirements: []
|
193
218
|
rubyforge_project:
|
194
|
-
rubygems_version: 1.
|
219
|
+
rubygems_version: 2.1.11
|
195
220
|
signing_key:
|
196
|
-
specification_version:
|
221
|
+
specification_version: 4
|
197
222
|
summary: Ruby gem ranking images from a given URL returning an object containing images
|
198
223
|
and website informations.
|
199
224
|
test_files:
|