friendly_id 4.1.0.beta.1 → 5.0.0.alpha.1

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.
@@ -20,7 +20,6 @@ class ObjectUtilsTest < MiniTest::Unit::TestCase
20
20
 
21
21
  test "ActiveRecord::Base instances should be unfriendly_ids" do
22
22
  model_class = Class.new(ActiveRecord::Base) do
23
- self.abstract_class = true
24
23
  self.table_name = "authors"
25
24
  end
26
25
  assert model_class.new.unfriendly_id?
@@ -1,9 +1,4 @@
1
1
  require "friendly_id/migration"
2
- require "globalize3"
3
-
4
- class TranslatedArticle < ActiveRecord::Base
5
- translates :slug, :title
6
- end
7
2
 
8
3
  module FriendlyId
9
4
  module Test
@@ -14,7 +9,6 @@ module FriendlyId
14
9
  tables.each do |name|
15
10
  drop_table name
16
11
  end
17
- TranslatedArticle.drop_translation_table!
18
12
  end
19
13
 
20
14
  def up
@@ -55,9 +49,6 @@ module FriendlyId
55
49
  add_column :journalists, "slug_es", :string
56
50
  add_column :journalists, "slug_de", :string
57
51
 
58
- # This will be used to test globalize translations
59
- TranslatedArticle.create_translation_table! :slug => :string, :title => :string
60
-
61
52
  # This will be used to test relationships
62
53
  add_column :books, :author_id, :integer
63
54
 
@@ -70,7 +61,7 @@ module FriendlyId
70
61
  private
71
62
 
72
63
  def slugged_tables
73
- %w[journalists articles novelists novels manuals translated_articles]
64
+ %w[journalists articles novelists novels manuals]
74
65
  end
75
66
 
76
67
  def scoped_tables
@@ -7,18 +7,19 @@ module FriendlyId
7
7
  assert !model_class.friendly_id_config.sequence_separator.empty?
8
8
  end
9
9
 
10
- test "should make a new slug if the friendly_id method value has changed" do
10
+ test "should make a new slug if the slug has been set to nil changed" do
11
11
  with_instance_of model_class do |record|
12
12
  record.name = "Changed Value"
13
+ record.slug = nil
13
14
  record.save!
14
15
  assert_equal "changed-value", record.slug
15
16
  end
16
17
  end
17
18
 
18
- test "should increment the slug sequence for duplicate friendly ids" do
19
+ test "should add a UUID for duplicate friendly ids" do
19
20
  with_instance_of model_class do |record|
20
21
  record2 = model_class.create! :name => record.name
21
- assert record2.friendly_id.match(/2\z/)
22
+ assert record2.friendly_id.match(/([0-9a-z]+\-){4}[0-9a-z]+\z/)
22
23
  end
23
24
  end
24
25
 
@@ -32,12 +33,13 @@ module FriendlyId
32
33
  end
33
34
  end
34
35
 
35
- test "should not increment sequence on save" do
36
+ test "should not change the sequence on save" do
36
37
  with_instance_of model_class do |record|
37
38
  record2 = model_class.create! :name => record.name
39
+ friendly_id = record2.friendly_id
38
40
  record2.active = !record2.active
39
41
  record2.save!
40
- assert record2.friendly_id.match(/2\z/)
42
+ assert_equal friendly_id, record2.reload.friendly_id
41
43
  end
42
44
  end
43
45
 
@@ -45,8 +47,6 @@ module FriendlyId
45
47
  with_instance_of model_class do |record|
46
48
  record.slug = nil
47
49
  record.save!
48
- assert_nil record.slug
49
- record.save!
50
50
  refute_nil record.slug
51
51
  end
52
52
  end
@@ -56,7 +56,7 @@ module FriendlyId
56
56
  self.class.const_set("Foo", my_model_class)
57
57
  with_instance_of my_model_class do |record|
58
58
  record.update_attributes my_model_class.friendly_id_config.slug_column => nil
59
- record = my_model_class.find(record.id)
59
+ record = my_model_class.friendly.find(record.id)
60
60
  record.class.validate Proc.new {errors[:name] = "FAIL"}
61
61
  record.save
62
62
  assert_equal record.to_param, record.friendly_id
@@ -69,36 +69,40 @@ module FriendlyId
69
69
  test "finds should respect conditions" do
70
70
  with_instance_of(model_class) do |record|
71
71
  assert_raises(ActiveRecord::RecordNotFound) do
72
- model_class.where("1 = 2").find record.friendly_id
72
+ model_class.where("1 = 2").friendly.find record.friendly_id
73
+ end
74
+ assert_raises(ActiveRecord::RecordNotFound) do
75
+ model_class.where("1 = 2").friendly.find record.id
73
76
  end
74
77
  end
75
78
  end
76
79
 
77
80
  test "should be findable by friendly id" do
78
- with_instance_of(model_class) {|record| assert model_class.find record.friendly_id}
81
+ with_instance_of(model_class) {|record| assert model_class.friendly.find record.friendly_id}
79
82
  end
80
83
 
81
84
  test "should exist? by friendly id" do
82
85
  with_instance_of(model_class) do |record|
83
- assert model_class.exists? record.id
84
- assert model_class.exists? record.friendly_id
85
- assert model_class.exists?({:id => record.id})
86
- assert model_class.exists?(['id = ?', record.id])
87
- assert !model_class.exists?(record.friendly_id + "-hello")
88
- assert !model_class.exists?(0)
86
+ assert model_class.friendly.exists? record.id
87
+ assert model_class.friendly.exists? record.id.to_s
88
+ assert model_class.friendly.exists? record.friendly_id
89
+ assert model_class.friendly.exists?({:id => record.id})
90
+ assert model_class.friendly.exists?(['id = ?', record.id])
91
+ assert !model_class.friendly.exists?(record.friendly_id + "-hello")
92
+ assert !model_class.friendly.exists?(0)
89
93
  end
90
94
  end
91
95
 
92
96
  test "should be findable by id as integer" do
93
- with_instance_of(model_class) {|record| assert model_class.find record.id.to_i}
97
+ with_instance_of(model_class) {|record| assert model_class.friendly.find record.id.to_i}
94
98
  end
95
99
 
96
100
  test "should be findable by id as string" do
97
- with_instance_of(model_class) {|record| assert model_class.find record.id.to_s}
101
+ with_instance_of(model_class) {|record| assert model_class.friendly.find record.id.to_s}
98
102
  end
99
103
 
100
104
  test "should be findable by numeric friendly_id" do
101
- with_instance_of(model_class, :name => "206") {|record| assert model_class.find record.friendly_id}
105
+ with_instance_of(model_class, :name => "206") {|record| assert model_class.friendly.find record.friendly_id}
102
106
  end
103
107
 
104
108
  test "to_param should return the friendly_id" do
@@ -106,23 +110,23 @@ module FriendlyId
106
110
  end
107
111
 
108
112
  test "should be findable by themselves" do
109
- with_instance_of(model_class) {|record| assert_equal record, model_class.find(record)}
113
+ with_instance_of(model_class) {|record| assert_equal record, model_class.friendly.find(record)}
110
114
  end
111
115
 
112
116
  test "updating record's other values should not change the friendly_id" do
113
117
  with_instance_of model_class do |record|
114
118
  old = record.friendly_id
115
119
  record.update_attributes! :active => false
116
- assert model_class.find old
120
+ assert model_class.friendly.find old
117
121
  end
118
122
  end
119
123
 
120
124
  test "instances found by a single id should not be read-only" do
121
- with_instance_of(model_class) {|record| assert !model_class.find(record.friendly_id).readonly?}
125
+ with_instance_of(model_class) {|record| assert !model_class.friendly.find(record.friendly_id).readonly?}
122
126
  end
123
127
 
124
128
  test "failing finds with unfriendly_id should raise errors normally" do
125
- assert_raises(ActiveRecord::RecordNotFound) {model_class.find 0}
129
+ assert_raises(ActiveRecord::RecordNotFound) {model_class.friendly.find 0}
126
130
  end
127
131
 
128
132
  test "should return numeric id if the friendly_id is nil" do
@@ -83,7 +83,7 @@ class SimpleI18nTest < MiniTest::Unit::TestCase
83
83
  journalist.save!
84
84
  assert_equal "john-smith", journalist.to_param
85
85
  I18n.with_locale(:es) do
86
- assert_equal "juan-fulano--2", journalist.to_param
86
+ assert_match(/juan-fulano-.+/, journalist.to_param)
87
87
  end
88
88
  end
89
89
  end
@@ -91,12 +91,13 @@ class SimpleI18nTest < MiniTest::Unit::TestCase
91
91
  class RegressionTest < MiniTest::Unit::TestCase
92
92
  include FriendlyId::Test
93
93
 
94
- test "should not overwrite slugs on update_attributes" do
94
+ test "should not overwrite other locale's slugs on update_attributes" do
95
95
  transaction do
96
96
  journalist = Journalist.create!(:name => "John Smith")
97
97
  journalist.set_friendly_id("Juan Fulano", :es)
98
98
  journalist.save!
99
99
  assert_equal "john-smith", journalist.to_param
100
+ journalist.slug = nil
100
101
  journalist.update_attributes :name => "Johnny Smith"
101
102
  assert_equal "johnny-smith", journalist.to_param
102
103
  I18n.with_locale(:es) do
@@ -88,14 +88,18 @@ class SlugGeneratorTest < MiniTest::Unit::TestCase
88
88
 
89
89
  test "should quote column names" do
90
90
  model_class = Class.new(ActiveRecord::Base) do
91
- self.abstract_class = true
91
+ # This has been added in 635731bb to fix MySQL/Rubinius. It may still
92
+ # be necessary, but causes an exception to be raised on Rails 4, so I'm
93
+ # commenting it out. If it causes MySQL/Rubinius to fail again we'll
94
+ # look for another solution.
95
+ # self.abstract_class = true
92
96
  self.table_name = "journalists"
93
97
  extend FriendlyId
94
98
  friendly_id :name, :use => :slugged, :slug_column => "strange name"
95
99
  end
96
100
 
97
101
  begin
98
- with_instance_of(model_class) {|record| assert model_class.find(record.friendly_id)}
102
+ with_instance_of(model_class) {|record| assert model_class.friendly.find(record.friendly_id)}
99
103
  rescue ActiveRecord::StatementInvalid
100
104
  flunk "column name was not quoted"
101
105
  end
@@ -106,7 +110,7 @@ class SlugGeneratorTest < MiniTest::Unit::TestCase
106
110
  m1 = model_class.create! :name => "a b c d"
107
111
  assert_equal "a-b-c-d", m1.slug
108
112
  model_class.create! :name => "a b c d"
109
- m1 = model_class.find(m1.id)
113
+ m1 = model_class.friendly.find(m1.id)
110
114
  m1.save!
111
115
  assert_equal "a-b-c-d", m1.slug
112
116
  end
@@ -117,13 +121,13 @@ class SlugGeneratorTest < MiniTest::Unit::TestCase
117
121
  record1 = model_class.create! :name => "Peugeuot 206"
118
122
  assert_equal "peugeuot-206", record1.slug
119
123
  record2 = model_class.create! :name => "Peugeuot 206"
120
- assert_equal "peugeuot-206--2", record2.slug
124
+ assert_match(/\Apeugeuot-206-([a-z0-9]+\-){4}[a-z0-9]+\z/, record2.slug)
121
125
  end
122
126
  end
123
127
 
124
128
  test "should correctly sequence slugs with underscores" do
125
129
  transaction do
126
- record1 = Novelist.create! :name => 'wordsfail, buildings tumble'
130
+ Novelist.create! :name => 'wordsfail, buildings tumble'
127
131
  record2 = Novelist.create! :name => 'word fail'
128
132
  assert_equal 'word_fail', record2.slug
129
133
  end
@@ -144,19 +148,17 @@ class SlugSeparatorTest < MiniTest::Unit::TestCase
144
148
  Journalist
145
149
  end
146
150
 
147
- test "should increment sequence with configured sequence separator" do
151
+ test "should sequence with configured sequence separator" do
148
152
  with_instance_of model_class do |record|
149
153
  record2 = model_class.create! :name => record.name
150
- assert record2.friendly_id.match(/:2\z/)
154
+ assert record2.friendly_id.match(/:.*\z/)
151
155
  end
152
156
  end
153
157
 
154
- test "should detect when a sequenced slug has changed" do
158
+ test "should detect when a stored slug has been cleared" do
155
159
  with_instance_of model_class do |record|
156
- record2 = model_class.create! :name => record.name
157
- assert !record2.should_generate_new_friendly_id?
158
- record2.name = "hello world"
159
- assert record2.should_generate_new_friendly_id?
160
+ record.slug = nil
161
+ assert record.should_generate_new_friendly_id?
160
162
  end
161
163
  end
162
164
 
@@ -173,23 +175,7 @@ class SlugSeparatorTest < MiniTest::Unit::TestCase
173
175
  record1 = model_class.create! :name => "Peugeuot 206"
174
176
  assert_equal "peugeuot-206", record1.slug
175
177
  record2 = model_class.create! :name => "Peugeuot 206"
176
- assert_equal "peugeuot-206-2", record2.slug
177
- end
178
- end
179
-
180
- test "should detect when a sequenced slug has changed when name ends in number and using single dash" do
181
- model_class = Class.new(ActiveRecord::Base) do
182
- self.table_name = "journalists"
183
- extend FriendlyId
184
- friendly_id :name, :use => :slugged, :sequence_separator => '-'
185
- end
186
- transaction do
187
- record1 = model_class.create! :name => "Peugeuot 206"
188
- assert !record1.should_generate_new_friendly_id?
189
- record1.save!
190
- assert !record1.should_generate_new_friendly_id?
191
- record1.name = "Peugeot 307"
192
- assert record1.should_generate_new_friendly_id?
178
+ assert_match(/\Apeugeuot-206-([a-z0-9]+\-){4}[a-z0-9]+\z/, record2.slug)
193
179
  end
194
180
  end
195
181
  end
@@ -201,7 +187,7 @@ class DefaultScopeTest < MiniTest::Unit::TestCase
201
187
  class Journalist < ActiveRecord::Base
202
188
  extend FriendlyId
203
189
  friendly_id :name, :use => :slugged
204
- default_scope :order => 'id ASC', :conditions => { :active => true }
190
+ default_scope -> { where(:active => true).order('id ASC') }
205
191
  end
206
192
 
207
193
  test "friendly_id should correctly sequence a default_scoped ordered table" do
@@ -218,23 +204,6 @@ class DefaultScopeTest < MiniTest::Unit::TestCase
218
204
  end
219
205
  end
220
206
 
221
- class SluggedRegressionsTest < MiniTest::Unit::TestCase
222
- include FriendlyId::Test
223
-
224
- def model_class
225
- Journalist
226
- end
227
-
228
- test "should increment the slug sequence for duplicate friendly ids beyond 10" do
229
- with_instance_of model_class do |record|
230
- (2..12).each do |i|
231
- r = model_class.create! :name => record.name
232
- assert r.friendly_id.match(/#{i}\z/)
233
- end
234
- end
235
- end
236
- end
237
-
238
207
  class UnderscoreAsSequenceSeparatorRegressionTest < MiniTest::Unit::TestCase
239
208
  include FriendlyId::Test
240
209
 
@@ -255,7 +224,7 @@ class UnderscoreAsSequenceSeparatorRegressionTest < MiniTest::Unit::TestCase
255
224
 
256
225
  end
257
226
 
258
- # https://github.com/norman/friendly_id/issues/148
227
+ # https://github.com/FriendlyId/friendly_id/issues/148
259
228
  class FailedValidationAfterUpdateRegressionTest < MiniTest::Unit::TestCase
260
229
  include FriendlyId::Test
261
230
 
@@ -50,13 +50,13 @@ class StiTest < MiniTest::Unit::TestCase
50
50
  assert_equal :bar, klass.friendly_id_config.slug_column
51
51
  end
52
52
 
53
- test "friendly_id slugs should not clash with eachother" do
53
+ test "friendly_id slugs should not clash with each other" do
54
54
  transaction do
55
55
  journalist = model_class.base_class.create! :name => 'foo bar'
56
56
  editoralist = model_class.create! :name => 'foo bar'
57
57
 
58
58
  assert_equal 'foo-bar', journalist.slug
59
- assert_equal 'foo-bar--2', editoralist.slug
59
+ assert_match(/foo-bar-.+/, editoralist.slug)
60
60
  end
61
61
  end
62
62
 
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: friendly_id
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.1.0.beta.1
5
- prerelease: 6
4
+ version: 5.0.0.alpha.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - Norman Clarke
@@ -10,179 +9,127 @@ authors:
10
9
  autorequire:
11
10
  bindir: bin
12
11
  cert_chain: []
13
- date: 2013-01-09 00:00:00.000000000 Z
12
+ date: 2013-08-01 00:00:00.000000000 Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: railties
17
16
  requirement: !ruby/object:Gem::Requirement
18
- none: false
19
17
  requirements:
20
18
  - - ~>
21
19
  - !ruby/object:Gem::Version
22
- version: 3.2.0
20
+ version: 4.0.0
23
21
  type: :development
24
22
  prerelease: false
25
23
  version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
24
  requirements:
28
25
  - - ~>
29
26
  - !ruby/object:Gem::Version
30
- version: 3.2.0
27
+ version: 4.0.0
31
28
  - !ruby/object:Gem::Dependency
32
29
  name: activerecord
33
30
  requirement: !ruby/object:Gem::Requirement
34
- none: false
35
31
  requirements:
36
32
  - - ~>
37
33
  - !ruby/object:Gem::Version
38
- version: 3.2.0
34
+ version: 4.0.0
39
35
  type: :development
40
36
  prerelease: false
41
37
  version_requirements: !ruby/object:Gem::Requirement
42
- none: false
43
38
  requirements:
44
39
  - - ~>
45
40
  - !ruby/object:Gem::Version
46
- version: 3.2.0
41
+ version: 4.0.0
47
42
  - !ruby/object:Gem::Dependency
48
43
  name: minitest
49
44
  requirement: !ruby/object:Gem::Requirement
50
- none: false
51
45
  requirements:
52
- - - '='
46
+ - - '>='
53
47
  - !ruby/object:Gem::Version
54
- version: 3.2.0
48
+ version: 4.4.0
55
49
  type: :development
56
50
  prerelease: false
57
51
  version_requirements: !ruby/object:Gem::Requirement
58
- none: false
59
52
  requirements:
60
- - - '='
53
+ - - '>='
61
54
  - !ruby/object:Gem::Version
62
- version: 3.2.0
55
+ version: 4.4.0
63
56
  - !ruby/object:Gem::Dependency
64
57
  name: mocha
65
58
  requirement: !ruby/object:Gem::Requirement
66
- none: false
67
59
  requirements:
68
- - - ! '>='
69
- - !ruby/object:Gem::Version
70
- version: '0'
71
- type: :development
72
- prerelease: false
73
- version_requirements: !ruby/object:Gem::Requirement
74
- none: false
75
- requirements:
76
- - - ! '>='
77
- - !ruby/object:Gem::Version
78
- version: '0'
79
- - !ruby/object:Gem::Dependency
80
- name: maruku
81
- requirement: !ruby/object:Gem::Requirement
82
- none: false
83
- requirements:
84
- - - ! '>='
60
+ - - ~>
85
61
  - !ruby/object:Gem::Version
86
- version: '0'
62
+ version: 0.13.3
87
63
  type: :development
88
64
  prerelease: false
89
65
  version_requirements: !ruby/object:Gem::Requirement
90
- none: false
91
66
  requirements:
92
- - - ! '>='
67
+ - - ~>
93
68
  - !ruby/object:Gem::Version
94
- version: '0'
69
+ version: 0.13.3
95
70
  - !ruby/object:Gem::Dependency
96
71
  name: yard
97
72
  requirement: !ruby/object:Gem::Requirement
98
- none: false
99
73
  requirements:
100
- - - ! '>='
74
+ - - '>='
101
75
  - !ruby/object:Gem::Version
102
76
  version: '0'
103
77
  type: :development
104
78
  prerelease: false
105
79
  version_requirements: !ruby/object:Gem::Requirement
106
- none: false
107
80
  requirements:
108
- - - ! '>='
81
+ - - '>='
109
82
  - !ruby/object:Gem::Version
110
83
  version: '0'
111
84
  - !ruby/object:Gem::Dependency
112
85
  name: i18n
113
86
  requirement: !ruby/object:Gem::Requirement
114
- none: false
115
87
  requirements:
116
- - - ! '>='
88
+ - - '>='
117
89
  - !ruby/object:Gem::Version
118
90
  version: '0'
119
91
  type: :development
120
92
  prerelease: false
121
93
  version_requirements: !ruby/object:Gem::Requirement
122
- none: false
123
94
  requirements:
124
- - - ! '>='
95
+ - - '>='
125
96
  - !ruby/object:Gem::Version
126
97
  version: '0'
127
98
  - !ruby/object:Gem::Dependency
128
99
  name: ffaker
129
100
  requirement: !ruby/object:Gem::Requirement
130
- none: false
131
101
  requirements:
132
- - - ! '>='
102
+ - - '>='
133
103
  - !ruby/object:Gem::Version
134
104
  version: '0'
135
105
  type: :development
136
106
  prerelease: false
137
107
  version_requirements: !ruby/object:Gem::Requirement
138
- none: false
139
108
  requirements:
140
- - - ! '>='
109
+ - - '>='
141
110
  - !ruby/object:Gem::Version
142
111
  version: '0'
143
112
  - !ruby/object:Gem::Dependency
144
113
  name: simplecov
145
114
  requirement: !ruby/object:Gem::Requirement
146
- none: false
147
- requirements:
148
- - - ! '>='
149
- - !ruby/object:Gem::Version
150
- version: '0'
151
- type: :development
152
- prerelease: false
153
- version_requirements: !ruby/object:Gem::Requirement
154
- none: false
155
- requirements:
156
- - - ! '>='
157
- - !ruby/object:Gem::Version
158
- version: '0'
159
- - !ruby/object:Gem::Dependency
160
- name: globalize3
161
- requirement: !ruby/object:Gem::Requirement
162
- none: false
163
115
  requirements:
164
- - - ! '>='
116
+ - - '>='
165
117
  - !ruby/object:Gem::Version
166
118
  version: '0'
167
119
  type: :development
168
120
  prerelease: false
169
121
  version_requirements: !ruby/object:Gem::Requirement
170
- none: false
171
122
  requirements:
172
- - - ! '>='
123
+ - - '>='
173
124
  - !ruby/object:Gem::Version
174
125
  version: '0'
175
- description: ! 'FriendlyId is the "Swiss Army bulldozer" of slugging and permalink
176
- plugins for
177
-
126
+ description: |
127
+ FriendlyId is the "Swiss Army bulldozer" of slugging and permalink plugins for
178
128
  Ruby on Rails. It allows you to create pretty URLs and work with human-friendly
179
-
180
129
  strings as if they were numeric ids for Active Record models.
181
-
182
- '
183
130
  email:
184
131
  - norman@njclarke.com
185
- - parndt@gmail.com
132
+ - p@arndt.io
186
133
  executables: []
187
134
  extensions: []
188
135
  extra_rdoc_files: []
@@ -200,23 +147,23 @@ files:
200
147
  - WhatsNew.md
201
148
  - bench.rb
202
149
  - friendly_id.gemspec
203
- - gemfiles/Gemfile.rails-3.0.rb
204
- - gemfiles/Gemfile.rails-3.1.rb
205
- - gemfiles/Gemfile.rails-3.2.rb
150
+ - gemfiles/Gemfile.rails-4.0.rb
206
151
  - lib/friendly_id.rb
152
+ - lib/friendly_id/.gitattributes
207
153
  - lib/friendly_id/base.rb
154
+ - lib/friendly_id/candidates.rb
208
155
  - lib/friendly_id/configuration.rb
209
- - lib/friendly_id/finder_methods.rb
210
- - lib/friendly_id/globalize.rb
211
156
  - lib/friendly_id/history.rb
212
157
  - lib/friendly_id/migration.rb
213
158
  - lib/friendly_id/object_utils.rb
214
159
  - lib/friendly_id/reserved.rb
215
160
  - lib/friendly_id/scoped.rb
161
+ - lib/friendly_id/scopes.rb
216
162
  - lib/friendly_id/simple_i18n.rb
217
163
  - lib/friendly_id/slug.rb
218
164
  - lib/friendly_id/slug_generator.rb
219
165
  - lib/friendly_id/slugged.rb
166
+ - lib/friendly_id/version.rb
220
167
  - lib/generators/friendly_id_generator.rb
221
168
  - test/base_test.rb
222
169
  - test/compatibility/ancestry/Gemfile
@@ -228,7 +175,6 @@ files:
228
175
  - test/core_test.rb
229
176
  - test/databases.yml
230
177
  - test/generator_test.rb
231
- - test/globalize_test.rb
232
178
  - test/helper.rb
233
179
  - test/history_test.rb
234
180
  - test/object_utils_test.rb
@@ -239,38 +185,29 @@ files:
239
185
  - test/simple_i18n_test.rb
240
186
  - test/slugged_test.rb
241
187
  - test/sti_test.rb
242
- homepage: http://github.com/norman/friendly_id
243
- licenses: []
244
- post_install_message: ! 'NOTE: FriendlyId 4.x breaks compatibility with 3.x. If you''re
245
- upgrading
246
-
247
- from 3.x, please see this document:
248
-
249
-
250
- http://rubydoc.info/github/norman/friendly_id/master/file/WhatsNew.md
251
-
252
-
253
- '
188
+ homepage: http://github.com/FriendlyId/friendly_id
189
+ licenses:
190
+ - MIT
191
+ metadata: {}
192
+ post_install_message:
254
193
  rdoc_options: []
255
194
  require_paths:
256
195
  - lib
257
196
  required_ruby_version: !ruby/object:Gem::Requirement
258
- none: false
259
197
  requirements:
260
- - - ! '>='
198
+ - - '>='
261
199
  - !ruby/object:Gem::Version
262
- version: '0'
200
+ version: 1.9.3
263
201
  required_rubygems_version: !ruby/object:Gem::Requirement
264
- none: false
265
202
  requirements:
266
- - - ! '>'
203
+ - - '>'
267
204
  - !ruby/object:Gem::Version
268
205
  version: 1.3.1
269
206
  requirements: []
270
207
  rubyforge_project: friendly_id
271
- rubygems_version: 1.8.24
208
+ rubygems_version: 2.0.3
272
209
  signing_key:
273
- specification_version: 3
210
+ specification_version: 4
274
211
  summary: A comprehensive slugging and pretty-URL plugin.
275
212
  test_files: []
276
213
  has_rdoc: