link_thumbnailer 1.0.9 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
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
@@ -16,3 +16,4 @@ test/tmp
16
16
  test/version_tmp
17
17
  tmp
18
18
  .project
19
+ .coveralls.yml
data/.travis.yml ADDED
@@ -0,0 +1,6 @@
1
+ bundler_args: --without development
2
+ language: ruby
3
+ rvm:
4
+ - 1.9.2
5
+ - 1.9.3
6
+ - 2.0.0
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
  [![Code Climate](https://codeclimate.com/github/gottfrois/link_thumbnailer.png)](https://codeclimate.com/github/gottfrois/link_thumbnailer)
4
+ [![Coverage Status](https://coveralls.io/repos/gottfrois/link_thumbnailer/badge.png?branch=master)](https://coveralls.io/r/gottfrois/link_thumbnailer?branch=master)
5
+ [![Build Status](https://travis-ci.org/gottfrois/link_thumbnailer.png?branch=master)](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
+ [![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/gottfrois/link_thumbnailer/trend.png)](https://bitdeli.com/free "Bitdeli Badge")
184
+
data/Rakefile CHANGED
@@ -1,4 +1,7 @@
1
- #!/usr/bin/env rake
2
- require "bundler/gem_tasks"
3
- require "rspec/core/rake_task"
1
+ require 'bundler/gem_tasks'
2
+ require 'rspec/core/rake_task'
3
+
4
4
  RSpec::Core::RakeTask.new('spec')
5
+
6
+ task default: :spec
7
+ task test: :spec
@@ -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.rmagick_attributes = %w(source_url mime_type colums rows filesize number_colors)
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
- result = ([other.rows, other.columns].min ** 2) <=>
7
- ([rows, columns].min ** 2)
8
-
9
- if result == 0
10
- result = other.number_colors <=> number_colors
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 'RMagick'
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
- img_data = @fetcher.fetch(img_url)
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 self.keys.empty?
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 self.images.none? {|i| i.is_a?(String)}
26
- super.merge('images' => self.images.map(&:to_hash))
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 self.images.none? {|i| i.is_a?(String)}
34
- JSON.generate(self.to_hash.merge('images' => self.images.map(&:to_hash)))
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(self.to_hash)
36
+ JSON.generate(to_hash)
37
37
  end
38
38
  end
39
39
 
@@ -1,3 +1,3 @@
1
1
  module LinkThumbnailer
2
- VERSION = "1.0.9"
2
+ VERSION = "1.1.0"
3
3
  end
@@ -1,17 +1,18 @@
1
1
  module LinkThumbnailer
2
2
  module WebImage
3
3
 
4
- attr_accessor :source_url, :doc
4
+ attr_accessor :doc
5
+
6
+ def source_url
7
+ instance_variable_get(:@uri)
8
+ end
5
9
 
6
10
  def to_hash
7
- result = {}
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
@@ -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
- rmagick_attributes: %w(source_url mime_type colums rows filesize number_colors),
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 = self.doc_parser.parse(self.fetcher.fetch(url), url)
57
+ doc = doc_parser.parse(fetcher.fetch(url), url)
54
58
 
55
- self.object[:url] = self.fetcher.url.to_s
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(self.fetcher, self.img_url_filters)
75
+ self.img_parser = LinkThumbnailer::ImgParser.new(fetcher, img_url_filters)
72
76
  end
73
77
 
74
78
  def opengraph(doc)
75
- return nil unless opengraph?(doc)
76
- self.object = LinkThumbnailer::Opengraph.parse(self.object, doc)
77
- return self.object if self.object.valid?
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] = self.img_parser.parse(doc.img_abs_urls.dup)
85
- self.object[:url] = doc.canonical_url || self.object[:url]
86
- return self.object if self.object.valid?
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
 
@@ -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(%q{nokogiri}, ['~> 1.5.5'])
19
- gem.add_dependency(%q{hashie}, ['>= 1.2.0'])
20
- gem.add_dependency(%q{net-http-persistent}, ['~> 2.7'])
21
- gem.add_dependency(%q{rmagick}, ['~> 2.13.1'])
22
- gem.add_dependency(%q{json}, ['~> 1.7.6'])
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(%q{rspec}, ['~> 2.11.0'])
25
- gem.add_development_dependency(%q{webmock}, ['~> 1.8.10'])
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.rmagick_attributes = []
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.rmagick_attributes.should eq([]) }
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.rmagick_attributes.should eq(%w(source_url mime_type colums rows filesize number_colors)) }
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 rmagick_attributes option" do
113
- expect { LinkThumbnailer.generate('foo', rmagick_attributes: %w(one two)).to change(LinkThumbnailer.configuration.rmagick_attributes).to(%w(one two)) }
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
- require 'link_thumbnailer'
10
+ SimpleCov.formatter = Coveralls::SimpleCov::Formatter
6
11
 
7
12
  RSpec.configure do |config|
8
- config.mock_with :rspec
9
13
  end
@@ -35,7 +35,7 @@ describe LinkThumbnailer::WebImage do
35
35
 
36
36
  context "with all attributes" do
37
37
 
38
- let(:attributes) { LinkThumbnailer.configuration.rmagick_attributes }
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.9
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: 2013-06-23 00:00:00.000000000 Z
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: rmagick
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: 2.13.1
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: 2.13.1
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.11.0
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.11.0
136
+ version: '2.14'
110
137
  - !ruby/object:Gem::Dependency
111
- name: webmock
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: 1.8.10
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: 1.8.10
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.8.25
219
+ rubygems_version: 2.1.11
195
220
  signing_key:
196
- specification_version: 3
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: