meta-tags 1.5.0 → 1.6.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.
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ MTVhZmJkYjIxODQ5MTRjZjkxOGY0ODQwYmYwYmVjM2E0ZmYyNWI2NQ==
5
+ data.tar.gz: !binary |-
6
+ MjQyMDNhYWNmOGNhMjBkN2RmZWZiODY5NGEzYTQ0NzdmMmFkNjhmMw==
7
+ SHA512:
8
+ metadata.gz: !binary |-
9
+ YzAzNDRlZGEwMDIxYWVjOTZhODY2NWZkYWJhMjMyMjNlNjZmYzkzMzc0NmQw
10
+ MjAzOTNlYjQ3MjE1ZjY0ZGU0NDA0MDlhZTQ2YTBiZjEzZDdjZjQ0M2Q5YTVk
11
+ OTI0NjMwM2MxMjU4Mjc0ZGRiNjI3MmUzMGRmYTdlODY2YmY0YWE=
12
+ data.tar.gz: !binary |-
13
+ YzA3YzcyN2NjMTg3MWE3YzYzZWVlNTQ5ZDk0M2ZkM2FjNjU5NDc1MTJkNmYy
14
+ MzUwNzA0NjUzMTM4YWUzZDJkN2UxNzM3ZDA2MTVlZWMwZmVkY2QxODMxM2I0
15
+ NWZmNWM3ZTcwOGVmNDY4NDQ2YzVlNTc3MzA1ZjA3NTU4NGY0M2I=
data/.gitignore CHANGED
@@ -1,7 +1,6 @@
1
1
  .yardoc
2
2
  .DS_Store
3
3
  .bundle
4
- .rvmrc
5
4
  Gemfile.lock
6
5
  doc
7
6
  pkg
@@ -0,0 +1 @@
1
+ meta-tags
@@ -0,0 +1 @@
1
+ ruby-2.1.1
@@ -3,6 +3,24 @@ rvm:
3
3
  - 1.8.7
4
4
  - 1.9.3
5
5
  - 2.0.0
6
+ - 2.1.0
7
+
8
+ env:
9
+ - "RAILS_VERSION=3.1.0"
10
+ - "RAILS_VERSION=3.2.0"
11
+ - "RAILS_VERSION=4.0.0"
12
+ - "RAILS_VERSION=4.1.0"
13
+
14
+ matrix:
15
+ exclude:
16
+ - rvm: ree
17
+ env: "RAILS_VERSION=4.0.0"
18
+ - rvm: ree
19
+ env: "RAILS_VERSION=4.1.0"
20
+ - rvm: 1.8.7
21
+ env: "RAILS_VERSION=4.0.0"
22
+ - rvm: 1.8.7
23
+ env: "RAILS_VERSION=4.1.0"
6
24
 
7
25
  notifications:
8
26
  recipients:
@@ -1,3 +1,15 @@
1
+ ## 1.6.0 (April 14, 2014)
2
+
3
+ Features:
4
+
5
+ - Added "alternate" links support
6
+ - Added Google "author" and "publisher" links
7
+ - Implemented mirrored values inside namespaces declared as hashes
8
+
9
+ Breaking changes:
10
+
11
+ - Removed support of Rails older than 3.0.0 due to the bug in `Hash#deep_merge` (does not support `HashWithIndifferentAccess`)
12
+
1
13
  ## 1.5.0 (May 7, 2013)
2
14
 
3
15
  Features:
data/Gemfile CHANGED
@@ -2,3 +2,7 @@ source 'http://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in meta-tags.gemspec
4
4
  gemspec
5
+
6
+ if ENV['RAILS_VERSION']
7
+ gem 'actionpack', "~> #{ENV['RAILS_VERSION']}"
8
+ end
data/README.md CHANGED
@@ -4,16 +4,16 @@
4
4
 
5
5
  Search Engine Optimization (SEO) plugin for Ruby on Rails applications.
6
6
 
7
- ## Rails 3
7
+ ## Ruby on Rails
8
8
 
9
- MetaTags master branch now fully supports Rails 3 and is backward
10
- compatible.
9
+ MetaTags master branch now fully supports Rails 3.0+ and is not backward
10
+ compatible. Latest version fully compatible with 2.x is 1.2.3.
11
11
 
12
12
  ## Installation
13
13
 
14
14
  Add the "meta-tags" gem to your `Gemfile`.
15
15
 
16
- gem 'meta-tags', :require => 'meta_tags'
16
+ gem 'meta-tags'
17
17
 
18
18
  And run `bundle install` command.
19
19
 
@@ -105,6 +105,45 @@ Further reading:
105
105
  * [About rel="canonical"](http://www.google.com/support/webmasters/bin/answer.py?hl=en&answer=139394)
106
106
  * [Canonicalization](http://www.google.com/support/webmasters/bin/answer.py?hl=en&answer=139066)
107
107
 
108
+ ### Author links
109
+
110
+ Link to your Google+ profile using rel="author"
111
+
112
+ set_meta_tags :author => "http://yourgplusprofile.com/profile/url"
113
+ # <link rel="author" href="http://yourgplusprofile.com/profile/url" />
114
+
115
+ Further reading:
116
+
117
+ * [About rel="author"](https://support.google.com/webmasters/answer/2539557?hl=en)
118
+
119
+ ### Publisher links
120
+
121
+ Link to your Google+ profile using rel="publisher"
122
+
123
+ set_meta_tags :publisher => "http://yourgplusprofile.com/profile/url"
124
+ # <link rel="publisher" href="http://yourgplusprofile.com/profile/url" />
125
+
126
+ * [Link to your website](https://support.google.com/plus/answer/1713826?hl=en)
127
+ * [The Difference Between rel=author & rel=publisher](http://www.websitemagazine.com/content/blogs/posts/archive/2013/02/05/the-difference-between-rel-author-amp-rel-publisher.aspx)
128
+
129
+ ### Multi-regional and multilingual URLs
130
+
131
+ Alternate link elements tell a search engine when there is content that's translated or targeted to
132
+ users in a certain region.
133
+
134
+ set_meta_tags :alternate => { "fr" => "http://yoursite.fr/alternate/url" }
135
+ # <link rel="alternate" href="http://yoursite.fr/alternate/url" hreflang="fr" />
136
+
137
+ set_meta_tags :alternate => { "fr" => "http://yoursite.fr/alternate/url",
138
+ "de" => "http://yoursite.de/alternate/url" }
139
+ # <link rel="alternate" href="http://yoursite.fr/alternate/url" hreflang="en" />
140
+ # <link rel="alternate" href="http://yoursite.de/alternate/url" hreflang="de" />
141
+
142
+ Further reading:
143
+
144
+ * [Multi-regional and multilingual sites](https://support.google.com/webmasters/answer/182192)
145
+ * [About rel="alternate" hreflang="x"](http://www.google.com/support/webmasters/bin/answer.py?hl=en&answer=189077)
146
+
108
147
  ### Pagination links
109
148
 
110
149
  Previous and next links indicate indicate the relationship between individual
@@ -308,8 +347,10 @@ Use these options to customize the title format:
308
347
  * `:noindex` — add noindex meta tag; when true, 'robots' will be used, otherwise the string will be used;
309
348
  * `:nofollow` — add nofollow meta tag; when true, 'robots' will be used, otherwise the string will be used;
310
349
  * `:canonical` — add canonical link tag;
350
+ * `:author` — add author link tag;
351
+ * `:publisher` — add publisher link tag;
311
352
  * `:prev` — add prev link tag;
312
- * `:prev` — add next link tag;
353
+ * `:next` — add next link tag;
313
354
  * `:og` — add Open Graph tags (Hash);
314
355
  * `:twitter` — add Twitter tags (Hash);
315
356
  * `:refresh` — refresh interval and optionally url to redirect to.
@@ -321,6 +362,7 @@ And here are a few examples to give you ideas.
321
362
  <%= display_meta_tags :lowercase => true %>
322
363
  <%= display_meta_tags :reverse => true, :prefix => false %>
323
364
  <%= display_meta_tags :og => { :title => 'The Rock', :type => 'video.movie' } %>
365
+ <%= display_meta_tags :alternate => { 'zh-Hant' => 'http://example.com.tw/base/url' } %>
324
366
 
325
367
  ### Allowed values
326
368
 
@@ -338,6 +380,27 @@ Keywords can be passed as string of comma-separated values, or as an array:
338
380
 
339
381
  Description is a string (HTML will be stripped from output string).
340
382
 
383
+ ### Mirrored values
384
+
385
+ Sometimes, it is desirable to mirror meta tag values down into namespaces. A
386
+ common use case is when you want open graph's `og:title` to be identical to
387
+ the `title`.
388
+
389
+ Say, you have the following in your application layout:
390
+
391
+ display_meta_tags :og => {
392
+ :title => :title
393
+ }
394
+
395
+ The value of `og[:title]` is a symbol and therefore references the value of the
396
+ top level `title` meta tag. With the following in any view:
397
+
398
+ title 'my great view'
399
+
400
+ You get this open graph meta tag for free:
401
+
402
+ <meta property="og:title" content="my great view"></meta>
403
+
341
404
  ### Using with pjax
342
405
 
343
406
  [jQuery.pjax](https://github.com/defunkt/jquery-pjax) is a nice solution for navigation
@@ -0,0 +1 @@
1
+ require 'meta_tags'
@@ -1,3 +1,3 @@
1
1
  module MetaTags
2
- VERSION = '1.5.0'
2
+ VERSION = '1.6.0'
3
3
  end
@@ -158,6 +158,7 @@ module MetaTags
158
158
  # @option default [Boolean, String] :noindex (false) add noindex meta tag; when true, 'robots' will be used, otherwise the string will be used;
159
159
  # @option default [Boolean, String] :nofollow (false) add nofollow meta tag; when true, 'robots' will be used, otherwise the string will be used;
160
160
  # @option default [String] :canonical (nil) add canonical link tag.
161
+ # @option default [Hash] :alternate ({}) add alternate link tag.
161
162
  # @option default [String] :prev (nil) add prev link tag;
162
163
  # @option default [String] :next (nil) add next link tag.
163
164
  # @option default [String, Integer] :refresh (nil) meta refresh tag;
@@ -203,7 +204,14 @@ module MetaTags
203
204
 
204
205
  # refresh
205
206
  if refresh = meta_tags.delete(:refresh)
206
- result << tag(:meta, 'http-equiv' => 'refresh', :content => refresh.to_s) unless refresh.blank?
207
+ result << tag(:meta, 'http-equiv' => 'refresh', :content => refresh.to_s) if refresh.present?
208
+ end
209
+
210
+ # alternate
211
+ if alternate = meta_tags.delete(:alternate)
212
+ alternate.each do |hreflang, href|
213
+ result << tag(:link, :rel => 'alternate', :href => href, :hreflang => hreflang) if href.present?
214
+ end
207
215
  end
208
216
 
209
217
  # hashes
@@ -214,8 +222,8 @@ module MetaTags
214
222
  end
215
223
  end
216
224
 
217
- # canonical, prev and next
218
- [ :canonical, :prev, :next ].each do |tag_name|
225
+ # canonical, prev, next and author, :publisher
226
+ [ :canonical, :prev, :next, :author, :publisher ].each do |tag_name|
219
227
  next unless href = meta_tags.delete(tag_name)
220
228
  result << tag(:link, :rel => tag_name, :href => href)
221
229
  end
@@ -229,13 +237,13 @@ module MetaTags
229
237
  end
230
238
 
231
239
  result = result.join("\n")
232
- result.respond_to?(:html_safe) ? result.html_safe : result
240
+ result.html_safe
233
241
  end
234
242
 
235
243
  # Returns full page title as a string without surrounding <title> tag.
236
244
  #
237
245
  # The only case when you may need this helper is when you use pjax. This means
238
- # that your layour file (with display_meta_tags helper) will not be rendered,
246
+ # that your layout file (with display_meta_tags helper) will not be rendered,
239
247
  # so you have to pass default arguments like site title in here. You probably
240
248
  # want to define helper with default options to minimize code duplication.
241
249
  #
@@ -267,7 +275,7 @@ module MetaTags
267
275
  result = []
268
276
  if content.is_a?(Hash)
269
277
  content.each do |key, value|
270
- result.concat process_tree("#{property}:#{key}", value)
278
+ result.concat process_tree("#{property}:#{key}", value.is_a?(Symbol) ? meta_tags[value] : value)
271
279
  end
272
280
  else
273
281
  Array(content).each do |c|
@@ -293,7 +301,7 @@ module MetaTags
293
301
  def normalize_keywords(keywords)
294
302
  return '' if keywords.blank?
295
303
  keywords = keywords.flatten.join(', ') if Array === keywords
296
- strip_tags(keywords).mb_chars.downcase
304
+ strip_tags(keywords).downcase
297
305
  end
298
306
 
299
307
  def normalize_open_graph(meta_tags)
@@ -336,10 +344,9 @@ module MetaTags
336
344
  title.reverse! if meta_tags.delete(:reverse) === true
337
345
  sep = h(prefix) + h(separator) + h(suffix)
338
346
  title = title.join(sep)
339
- # We escaped every chunk of the title, so the whole title should be HTML safe
340
- title = title.html_safe if title.respond_to?(:html_safe)
341
347
  meta_tags.delete(:site)
342
- title
348
+ # We escaped every chunk of the title, so the whole title should be HTML safe
349
+ title.html_safe
343
350
  end
344
351
  end
345
352
  end
@@ -12,7 +12,7 @@ Gem::Specification.new do |s|
12
12
  s.summary = %q{Collection of SEO helpers for Ruby on Rails.}
13
13
  s.description = %q{Search Engine Optimization (SEO) plugin for Ruby on Rails applications.}
14
14
 
15
- s.add_dependency 'actionpack'
15
+ s.add_dependency 'actionpack', '>= 3.0.0'
16
16
 
17
17
  s.add_development_dependency 'rake'
18
18
  s.add_development_dependency 'rspec'
@@ -151,15 +151,15 @@ describe MetaTags::ViewHelper do
151
151
  :reverse => true).should eq('<title>sometitle -:+ someSite</title>')
152
152
  end
153
153
 
154
- it 'shold allow Arrays in title' do
154
+ it 'should allow Arrays in title' do
155
155
  subject.display_meta_tags(:site => 'someSite', :title => ['someTitle', 'anotherTitle']).should eq('<title>someSite | someTitle | anotherTitle</title>')
156
156
  end
157
157
 
158
- it 'shold allow Arrays in title with :lowercase' do
158
+ it 'should allow Arrays in title with :lowercase' do
159
159
  subject.display_meta_tags(:site => 'someSite', :title => ['someTitle', 'anotherTitle'], :lowercase => true).should eq('<title>someSite | sometitle | anothertitle</title>')
160
160
  end
161
161
 
162
- it 'shold build title in reverse order if :reverse' do
162
+ it 'should build title in reverse order if :reverse' do
163
163
  subject.display_meta_tags(:site => 'someSite',
164
164
  :title => ['someTitle', 'anotherTitle'],
165
165
  :prefix => ' -',
@@ -360,6 +360,39 @@ describe MetaTags::ViewHelper do
360
360
  end
361
361
  end
362
362
 
363
+ context 'displaying alternate url' do
364
+ it 'should not display alternate url by default' do
365
+ subject.display_meta_tags(:site => 'someSite').should_not include('<link href="http://example.fr/base/url" hreflang="fr" rel="alternate" />')
366
+ end
367
+
368
+ it 'should display alternate url when "set_meta_tags" used' do
369
+ subject.set_meta_tags(:alternate => { 'fr' => 'http://example.fr/base/url' })
370
+ subject.display_meta_tags(:site => 'someSite').should include('<link href="http://example.fr/base/url" hreflang="fr" rel="alternate" />')
371
+ end
372
+
373
+ it 'should display default alternate url' do
374
+ subject.display_meta_tags(:site => 'someSite', :alternate => { 'fr' => 'http://example.fr/base/url' }).should include('<link href="http://example.fr/base/url" hreflang="fr" rel="alternate" />')
375
+ end
376
+
377
+ it "should not display alternate without content" do
378
+ subject.display_meta_tags(:site => 'someSite', :alternate => {'zh-Hant' => ''}).should_not include('<link href="" hreflang="zh-Hant" rel="alternate" />')
379
+ end
380
+ end
381
+
382
+ context 'displaying author link' do
383
+ it 'should display author link when "set_meta_tags" used' do
384
+ subject.set_meta_tags(:author => 'http://plus.google.com/profile/url')
385
+ subject.display_meta_tags(:site => 'someSite').should include('<link href="http://plus.google.com/profile/url" rel="author" />')
386
+ end
387
+ end
388
+
389
+ context 'displaying publisher link' do
390
+ it 'should display publisher link when "set_meta_tags" used' do
391
+ subject.set_meta_tags(:publisher => 'http://plus.google.com/myprofile_url')
392
+ subject.display_meta_tags(:site => 'someSite').should include('<link href="http://plus.google.com/myprofile_url" rel="publisher" />')
393
+ end
394
+ end
395
+
363
396
  context 'displaying prev url' do
364
397
  it 'should not display prev url by default' do
365
398
  subject.display_meta_tags(:site => 'someSite').should_not include('<link href="http://example.com/base/url" rel="prev" />')
@@ -458,6 +491,13 @@ describe MetaTags::ViewHelper do
458
491
  content.should_not include('<meta content="" property="og:description" />')
459
492
  end
460
493
  end
494
+
495
+ it "should display mirrored content" do
496
+ subject.set_meta_tags(:title => 'someTitle')
497
+ subject.display_meta_tags(:open_graph => { :title => :title }).tap do |content|
498
+ content.should include('<meta content="someTitle" property="og:title" />')
499
+ end
500
+ end
461
501
  end
462
502
 
463
503
  context 'while handling string meta tag names' do
metadata CHANGED
@@ -1,111 +1,104 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: meta-tags
3
- version: !ruby/object:Gem::Version
4
- hash: 3
5
- prerelease:
6
- segments:
7
- - 1
8
- - 5
9
- - 0
10
- version: 1.5.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.6.0
11
5
  platform: ruby
12
- authors:
6
+ authors:
13
7
  - Dmytro Shteflyuk
14
8
  autorequire:
15
9
  bindir: bin
16
10
  cert_chain: []
17
-
18
- date: 2013-05-07 00:00:00 -04:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
22
- type: :runtime
23
- prerelease: false
24
- version_requirements: &id001 !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 3
30
- segments:
31
- - 0
32
- version: "0"
11
+ date: 2014-04-14 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
33
14
  name: actionpack
34
- requirement: *id001
35
- - !ruby/object:Gem::Dependency
36
- type: :development
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ! '>='
18
+ - !ruby/object:Gem::Version
19
+ version: 3.0.0
20
+ type: :runtime
37
21
  prerelease: false
38
- version_requirements: &id002 !ruby/object:Gem::Requirement
39
- none: false
40
- requirements:
41
- - - ">="
42
- - !ruby/object:Gem::Version
43
- hash: 3
44
- segments:
45
- - 0
46
- version: "0"
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ! '>='
25
+ - !ruby/object:Gem::Version
26
+ version: 3.0.0
27
+ - !ruby/object:Gem::Dependency
47
28
  name: rake
48
- requirement: *id002
49
- - !ruby/object:Gem::Dependency
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
50
34
  type: :development
51
35
  prerelease: false
52
- version_requirements: &id003 !ruby/object:Gem::Requirement
53
- none: false
54
- requirements:
55
- - - ">="
56
- - !ruby/object:Gem::Version
57
- hash: 3
58
- segments:
59
- - 0
60
- version: "0"
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ! '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
61
42
  name: rspec
62
- requirement: *id003
63
- - !ruby/object:Gem::Dependency
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ! '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
64
48
  type: :development
65
49
  prerelease: false
66
- version_requirements: &id004 !ruby/object:Gem::Requirement
67
- none: false
68
- requirements:
69
- - - ">="
70
- - !ruby/object:Gem::Version
71
- hash: 3
72
- segments:
73
- - 0
74
- version: "0"
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
75
56
  name: yard
76
- requirement: *id004
77
- - !ruby/object:Gem::Dependency
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
78
62
  type: :development
79
63
  prerelease: false
80
- version_requirements: &id005 !ruby/object:Gem::Requirement
81
- none: false
82
- requirements:
83
- - - ">="
84
- - !ruby/object:Gem::Version
85
- hash: 3
86
- segments:
87
- - 0
88
- version: "0"
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ! '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
89
70
  name: bluecloth
90
- requirement: *id005
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ! '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ! '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
91
83
  description: Search Engine Optimization (SEO) plugin for Ruby on Rails applications.
92
- email:
84
+ email:
93
85
  - kpumuk@kpumuk.info
94
86
  executables: []
95
-
96
87
  extensions: []
97
-
98
- extra_rdoc_files:
88
+ extra_rdoc_files:
99
89
  - README.md
100
90
  - CHANGELOG.md
101
- files:
91
+ files:
102
92
  - .gitignore
93
+ - .ruby-gemset
94
+ - .ruby-version
103
95
  - .travis.yml
104
96
  - CHANGELOG.md
105
97
  - Gemfile
106
98
  - MIT-LICENSE
107
99
  - README.md
108
100
  - Rakefile
101
+ - lib/meta-tags.rb
109
102
  - lib/meta_tags.rb
110
103
  - lib/meta_tags/controller_helper.rb
111
104
  - lib/meta_tags/version.rb
@@ -114,39 +107,29 @@ files:
114
107
  - spec/controller_helper_spec.rb
115
108
  - spec/meta_tags_spec.rb
116
109
  - spec/spec_helper.rb
117
- has_rdoc: true
118
110
  homepage: http://github.com/kpumuk/meta-tags
119
111
  licenses: []
120
-
112
+ metadata: {}
121
113
  post_install_message:
122
- rdoc_options:
114
+ rdoc_options:
123
115
  - --charset=UTF-8
124
- require_paths:
116
+ require_paths:
125
117
  - lib
126
- required_ruby_version: !ruby/object:Gem::Requirement
127
- none: false
128
- requirements:
129
- - - ">="
130
- - !ruby/object:Gem::Version
131
- hash: 3
132
- segments:
133
- - 0
134
- version: "0"
135
- required_rubygems_version: !ruby/object:Gem::Requirement
136
- none: false
137
- requirements:
138
- - - ">="
139
- - !ruby/object:Gem::Version
140
- hash: 3
141
- segments:
142
- - 0
143
- version: "0"
118
+ required_ruby_version: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - ! '>='
121
+ - !ruby/object:Gem::Version
122
+ version: '0'
123
+ required_rubygems_version: !ruby/object:Gem::Requirement
124
+ requirements:
125
+ - - ! '>='
126
+ - !ruby/object:Gem::Version
127
+ version: '0'
144
128
  requirements: []
145
-
146
129
  rubyforge_project:
147
- rubygems_version: 1.5.2
130
+ rubygems_version: 2.2.2
148
131
  signing_key:
149
- specification_version: 3
132
+ specification_version: 4
150
133
  summary: Collection of SEO helpers for Ruby on Rails.
151
134
  test_files: []
152
-
135
+ has_rdoc: