pg_search 2.3.0 → 2.3.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/.codeclimate.yml +1 -0
  3. data/.github/dependabot.yml +11 -0
  4. data/.jrubyrc +1 -0
  5. data/.rubocop.yml +85 -7
  6. data/.travis.yml +14 -22
  7. data/CHANGELOG.md +41 -16
  8. data/CODE_OF_CONDUCT.md +76 -0
  9. data/Gemfile +1 -1
  10. data/LICENSE +1 -1
  11. data/README.md +60 -18
  12. data/lib/pg_search.rb +4 -6
  13. data/lib/pg_search/document.rb +1 -1
  14. data/lib/pg_search/features/dmetaphone.rb +4 -6
  15. data/lib/pg_search/features/tsearch.rb +13 -12
  16. data/lib/pg_search/migration/templates/add_pg_search_dmetaphone_support_functions.rb.erb +6 -6
  17. data/lib/pg_search/migration/templates/create_pg_search_documents.rb.erb +2 -2
  18. data/lib/pg_search/multisearch.rb +10 -1
  19. data/lib/pg_search/multisearch/rebuilder.rb +7 -3
  20. data/lib/pg_search/scope_options.rb +3 -3
  21. data/lib/pg_search/tasks.rb +2 -1
  22. data/lib/pg_search/version.rb +1 -1
  23. data/pg_search.gemspec +11 -7
  24. data/spec/.rubocop.yml +2 -2
  25. data/spec/integration/.rubocop.yml +11 -0
  26. data/spec/integration/associations_spec.rb +17 -56
  27. data/spec/integration/deprecation_spec.rb +1 -1
  28. data/spec/integration/pg_search_spec.rb +62 -51
  29. data/spec/lib/pg_search/configuration/association_spec.rb +8 -6
  30. data/spec/lib/pg_search/features/dmetaphone_spec.rb +2 -2
  31. data/spec/lib/pg_search/features/trigram_spec.rb +15 -11
  32. data/spec/lib/pg_search/features/tsearch_spec.rb +16 -10
  33. data/spec/lib/pg_search/multisearch/rebuilder_spec.rb +116 -71
  34. data/spec/lib/pg_search/multisearch_spec.rb +48 -29
  35. data/spec/lib/pg_search/multisearchable_spec.rb +150 -97
  36. data/spec/lib/pg_search/normalizer_spec.rb +12 -10
  37. data/spec/lib/pg_search_spec.rb +66 -55
  38. data/spec/spec_helper.rb +13 -4
  39. data/spec/support/database.rb +1 -1
  40. metadata +78 -17
@@ -2,15 +2,16 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
+ # rubocop:disable RSpec/NestedGroups
5
6
  describe PgSearch::Normalizer do
6
7
  describe "#add_normalization" do
7
8
  context "when config[:ignore] includes :accents" do
8
9
  context "when passed an Arel node" do
9
10
  it "wraps the expression in unaccent()" do
10
- config = double("config", ignore: [:accents])
11
+ config = instance_double("PgSearch::Configuration", "config", ignore: [:accents])
11
12
  node = Arel::Nodes::NamedFunction.new("foo", [Arel::Nodes.build_quoted("bar")])
12
13
 
13
- normalizer = PgSearch::Normalizer.new(config)
14
+ normalizer = described_class.new(config)
14
15
  expect(normalizer.add_normalization(node)).to eq("unaccent(foo('bar'))")
15
16
  end
16
17
 
@@ -19,9 +20,9 @@ describe PgSearch::Normalizer do
19
20
  allow(PgSearch).to receive(:unaccent_function).and_return("my_unaccent")
20
21
  node = Arel::Nodes::NamedFunction.new("foo", [Arel::Nodes.build_quoted("bar")])
21
22
 
22
- config = double("config", ignore: [:accents])
23
+ config = instance_double("PgSearch::Configuration", "config", ignore: [:accents])
23
24
 
24
- normalizer = PgSearch::Normalizer.new(config)
25
+ normalizer = described_class.new(config)
25
26
  expect(normalizer.add_normalization(node)).to eq("my_unaccent(foo('bar'))")
26
27
  end
27
28
  end
@@ -29,9 +30,9 @@ describe PgSearch::Normalizer do
29
30
 
30
31
  context "when passed a String" do
31
32
  it "wraps the expression in unaccent()" do
32
- config = double("config", ignore: [:accents])
33
+ config = instance_double("PgSearch::Configuration", "config", ignore: [:accents])
33
34
 
34
- normalizer = PgSearch::Normalizer.new(config)
35
+ normalizer = described_class.new(config)
35
36
  expect(normalizer.add_normalization("foo")).to eq("unaccent(foo)")
36
37
  end
37
38
 
@@ -39,9 +40,9 @@ describe PgSearch::Normalizer do
39
40
  it "wraps the expression in that function" do
40
41
  allow(PgSearch).to receive(:unaccent_function).and_return("my_unaccent")
41
42
 
42
- config = double("config", ignore: [:accents])
43
+ config = instance_double("PgSearch::Configuration", "config", ignore: [:accents])
43
44
 
44
- normalizer = PgSearch::Normalizer.new(config)
45
+ normalizer = described_class.new(config)
45
46
  expect(normalizer.add_normalization("foo")).to eq("my_unaccent(foo)")
46
47
  end
47
48
  end
@@ -50,11 +51,12 @@ describe PgSearch::Normalizer do
50
51
 
51
52
  context "when config[:ignore] does not include :accents" do
52
53
  it "passes the expression through" do
53
- config = double("config", ignore: [])
54
+ config = instance_double("PgSearch::Configuration", "config", ignore: [])
54
55
 
55
- normalizer = PgSearch::Normalizer.new(config)
56
+ normalizer = described_class.new(config)
56
57
  expect(normalizer.add_normalization("foo")).to eq("foo")
57
58
  end
58
59
  end
59
60
  end
60
61
  end
62
+ # rubocop:enable RSpec/NestedGroups
@@ -2,42 +2,43 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- # For AR 5 and greater, the association reflection's cache needs be cleared
5
+ # For Active Record 5.x and 6.0, the association reflection's cache needs be cleared
6
6
  # because we're stubbing the related constants.
7
- class << PgSearch::Document
8
- if ActiveRecord::VERSION::MAJOR >= 5
9
- def clear_searchable_cache
10
- reflect_on_association(:searchable).clear_association_scope_cache
11
- end
12
- else
13
- def clear_searchable_cache
14
- end
7
+ if ActiveRecord::VERSION::MAJOR == 5 || (ActiveRecord::VERSION::MAJOR == 6 && ActiveRecord::VERSION::MINOR == 0)
8
+ def clear_searchable_cache
9
+ PgSearch::Document.reflect_on_association(:searchable).clear_association_scope_cache
10
+ end
11
+ else
12
+ def clear_searchable_cache
15
13
  end
16
14
  end
17
15
 
16
+ # rubocop:disable RSpec/NestedGroups
18
17
  describe PgSearch do
19
18
  describe ".multisearch" do
20
- with_table "pg_search_documents", {}, &DOCUMENTS_SCHEMA
19
+ with_table "pg_search_documents", &DOCUMENTS_SCHEMA
21
20
 
22
21
  describe "delegation to PgSearch::Document.search" do
23
- subject { PgSearch.multisearch(query) }
22
+ subject { described_class.multisearch(query) }
23
+
24
+ let(:query) { instance_double("String", "query") }
25
+ let(:relation) { instance_double("ActiveRecord::Relation", "relation") }
24
26
 
25
- let(:query) { double(:query) }
26
- let(:relation) { double(:relation) }
27
27
  before do
28
- expect(PgSearch::Document).to receive(:search).with(query).and_return(relation)
28
+ allow(PgSearch::Document).to receive(:search).with(query).and_return(relation)
29
29
  end
30
30
 
31
31
  it { is_expected.to eq(relation) }
32
32
  end
33
33
 
34
34
  context "with PgSearch.multisearch_options set to a Hash" do
35
- before { allow(PgSearch).to receive(:multisearch_options).and_return(using: :dmetaphone) }
36
35
  subject do
37
- PgSearch::Document.clear_searchable_cache
38
- PgSearch.multisearch(query).map(&:searchable)
36
+ clear_searchable_cache
37
+ described_class.multisearch(query).map(&:searchable)
39
38
  end
40
39
 
40
+ before { allow(described_class).to receive(:multisearch_options).and_return(using: :dmetaphone) }
41
+
41
42
  with_model :MultisearchableModel do
42
43
  table do |t|
43
44
  t.string :title
@@ -50,17 +51,18 @@ describe PgSearch do
50
51
 
51
52
  let!(:soundalike_record) { MultisearchableModel.create!(title: 'foning') }
52
53
  let(:query) { "Phoning" }
54
+
53
55
  it { is_expected.to include(soundalike_record) }
54
56
  end
55
57
 
56
58
  context "with PgSearch.multisearch_options set to a Proc" do
57
59
  subject do
58
- PgSearch::Document.clear_searchable_cache
59
- PgSearch.multisearch(query, soundalike).map(&:searchable)
60
+ clear_searchable_cache
61
+ described_class.multisearch(query, soundalike).map(&:searchable)
60
62
  end
61
63
 
62
64
  before do
63
- allow(PgSearch).to receive(:multisearch_options) do
65
+ allow(described_class).to receive(:multisearch_options) do
64
66
  lambda do |query, soundalike|
65
67
  if soundalike
66
68
  { using: :dmetaphone, query: query }
@@ -86,16 +88,18 @@ describe PgSearch do
86
88
 
87
89
  context "with soundalike true" do
88
90
  let(:soundalike) { true }
91
+
89
92
  it { is_expected.to include(soundalike_record) }
90
93
  end
91
94
 
92
95
  context "with soundalike false" do
93
96
  let(:soundalike) { false }
97
+
94
98
  it { is_expected.not_to include(soundalike_record) }
95
99
  end
96
100
  end
97
101
 
98
- context "on an STI subclass" do
102
+ context "when on an STI subclass" do
99
103
  context "with standard type column" do
100
104
  with_model :SuperclassModel do
101
105
  table do |t|
@@ -128,7 +132,7 @@ describe PgSearch do
128
132
 
129
133
  expect(PgSearch::Document.count).to be 2
130
134
 
131
- results = PgSearch.multisearch("foo bar")
135
+ results = described_class.multisearch("foo bar")
132
136
 
133
137
  expect(results).to eq [included.pg_search_document]
134
138
  end
@@ -141,11 +145,12 @@ describe PgSearch do
141
145
  model = SearchableSubclassModel.find(model.id)
142
146
  model.content = "foo"
143
147
  model.save!
144
- results = PgSearch.multisearch("foo")
148
+ results = described_class.multisearch("foo")
145
149
  expect(results.size).to eq(SearchableSubclassModel.count)
146
150
  end
147
151
 
148
- it "reindexing works" do
152
+ # rubocop:disable RSpec/MultipleExpectations
153
+ specify "reindexing works" do
149
154
  NonSearchableSubclassModel.create!(content: "foo bar")
150
155
  NonSearchableSubclassModel.create!(content: "baz")
151
156
  expected = SearchableSubclassModel.create!(content: "baz")
@@ -161,11 +166,12 @@ describe PgSearch do
161
166
 
162
167
  PgSearch::Multisearch.rebuild(SearchableSubclassModel)
163
168
 
164
- PgSearch::Document.clear_searchable_cache
169
+ clear_searchable_cache
165
170
  expect(PgSearch::Document.count).to be 1
166
171
  expect(PgSearch::Document.first.searchable.class).to be SearchableSubclassModel
167
172
  expect(PgSearch::Document.first.searchable).to eq expected
168
173
  end
174
+ # rubocop:enable RSpec/MultipleExpectations
169
175
 
170
176
  it "reindexing searchable STI doesn't clobber other related STI models" do
171
177
  SearchableSubclassModel.create!(content: "baz")
@@ -175,7 +181,7 @@ describe PgSearch do
175
181
  PgSearch::Multisearch.rebuild(SearchableSubclassModel)
176
182
  expect(PgSearch::Document.count).to be 2
177
183
 
178
- PgSearch::Document.clear_searchable_cache
184
+ clear_searchable_cache
179
185
  classes = PgSearch::Document.all.collect { |d| d.searchable.class }
180
186
  expect(classes).to include SearchableSubclassModel
181
187
  expect(classes).to include AnotherSearchableSubclassModel
@@ -218,7 +224,7 @@ describe PgSearch do
218
224
 
219
225
  expect(PgSearch::Document.count).to be 2
220
226
 
221
- results = PgSearch.multisearch("foo bar")
227
+ results = described_class.multisearch("foo bar")
222
228
 
223
229
  expect(results).to eq [included.pg_search_document]
224
230
  end
@@ -227,57 +233,62 @@ describe PgSearch do
227
233
  end
228
234
 
229
235
  describe ".disable_multisearch" do
230
- it "should temporarily disable multisearch" do
231
- @multisearch_enabled_before = PgSearch.multisearch_enabled?
232
- PgSearch.disable_multisearch do
233
- @multisearch_enabled_inside = PgSearch.multisearch_enabled?
236
+ it "disables multisearch temporarily" do
237
+ multisearch_enabled_before = described_class.multisearch_enabled?
238
+ multisearch_enabled_inside = nil
239
+ described_class.disable_multisearch do
240
+ multisearch_enabled_inside = described_class.multisearch_enabled?
234
241
  end
235
- @multisearch_enabled_after = PgSearch.multisearch_enabled?
242
+ multisearch_enabled_after = described_class.multisearch_enabled?
236
243
 
237
- expect(@multisearch_enabled_before).to be(true)
238
- expect(@multisearch_enabled_inside).to be(false)
239
- expect(@multisearch_enabled_after).to be(true)
244
+ expect(multisearch_enabled_before).to be(true)
245
+ expect(multisearch_enabled_inside).to be(false)
246
+ expect(multisearch_enabled_after).to be(true)
240
247
  end
241
248
 
242
- it "should reenable multisearch after an error" do
243
- @multisearch_enabled_before = PgSearch.multisearch_enabled?
249
+ it "reenables multisearch after an error" do
250
+ multisearch_enabled_before = described_class.multisearch_enabled?
251
+ multisearch_enabled_inside = nil
244
252
  begin
245
- PgSearch.disable_multisearch do
246
- @multisearch_enabled_inside = PgSearch.multisearch_enabled?
253
+ described_class.disable_multisearch do
254
+ multisearch_enabled_inside = described_class.multisearch_enabled?
247
255
  raise
248
256
  end
249
257
  rescue StandardError
250
258
  end
259
+ multisearch_enabled_after = described_class.multisearch_enabled?
251
260
 
252
- @multisearch_enabled_after = PgSearch.multisearch_enabled?
253
-
254
- expect(@multisearch_enabled_before).to be(true)
255
- expect(@multisearch_enabled_inside).to be(false)
256
- expect(@multisearch_enabled_after).to be(true)
261
+ expect(multisearch_enabled_before).to be(true)
262
+ expect(multisearch_enabled_inside).to be(false)
263
+ expect(multisearch_enabled_after).to be(true)
257
264
  end
258
265
 
259
- it "should not disable multisearch on other threads" do
266
+ # rubocop:disable RSpec/ExampleLength
267
+ it "does not disable multisearch on other threads" do
260
268
  values = Queue.new
261
269
  sync = Queue.new
262
270
  Thread.new do
263
- values.push PgSearch.multisearch_enabled?
271
+ values.push described_class.multisearch_enabled?
264
272
  sync.pop # wait
265
- values.push PgSearch.multisearch_enabled?
273
+ values.push described_class.multisearch_enabled?
266
274
  sync.pop # wait
267
- values.push PgSearch.multisearch_enabled?
275
+ values.push described_class.multisearch_enabled?
268
276
  end
269
277
 
270
- @multisearch_enabled_before = values.pop
271
- PgSearch.disable_multisearch do
278
+ multisearch_enabled_before = values.pop
279
+ multisearch_enabled_inside = nil
280
+ described_class.disable_multisearch do
272
281
  sync.push :go
273
- @multisearch_enabled_inside = values.pop
282
+ multisearch_enabled_inside = values.pop
274
283
  end
275
284
  sync.push :go
276
- @multisearch_enabled_after = values.pop
285
+ multisearch_enabled_after = values.pop
277
286
 
278
- expect(@multisearch_enabled_before).to be(true)
279
- expect(@multisearch_enabled_inside).to be(true)
280
- expect(@multisearch_enabled_after).to be(true)
287
+ expect(multisearch_enabled_before).to be(true)
288
+ expect(multisearch_enabled_inside).to be(true)
289
+ expect(multisearch_enabled_after).to be(true)
281
290
  end
291
+ # rubocop:enable RSpec/ExampleLength
282
292
  end
283
293
  end
294
+ # rubocop:enable RSpec/NestedGroups
@@ -1,5 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'warning'
4
+ # Ignore Ruby 2.7 warnings from Active Record
5
+ Warning.ignore :keyword_separation
6
+
3
7
  require 'simplecov'
4
8
  SimpleCov.start
5
9
 
@@ -7,12 +11,14 @@ require "bundler/setup"
7
11
  require "pg_search"
8
12
 
9
13
  RSpec.configure do |config|
10
- config.expect_with :rspec do |c|
11
- c.syntax = :expect
14
+ config.expect_with :rspec do |expects|
15
+ expects.syntax = :expect
12
16
  end
13
17
 
14
- config.mock_with :rspec do |c|
15
- c.syntax = :expect
18
+ config.mock_with :rspec do |mocks|
19
+ mocks.syntax = :expect
20
+ mocks.verify_doubled_constant_names = true
21
+ mocks.verify_partial_doubles = true
16
22
  end
17
23
 
18
24
  config.example_status_persistence_file_path = 'tmp/examples.txt'
@@ -25,4 +31,7 @@ DOCUMENTS_SCHEMA = lambda do |t|
25
31
  t.belongs_to :searchable, polymorphic: true, index: true
26
32
  t.text :content
27
33
  t.timestamps null: false
34
+
35
+ # Used to test additional_attributes setup
36
+ t.text :additional_attribute_column
28
37
  end
@@ -29,7 +29,7 @@ end
29
29
 
30
30
  if ENV["LOGGER"]
31
31
  require "logger"
32
- ActiveRecord::Base.logger = Logger.new(STDOUT)
32
+ ActiveRecord::Base.logger = Logger.new($stdout)
33
33
  end
34
34
 
35
35
  def install_extension(name)
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pg_search
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.0
4
+ version: 2.3.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Grant Hutchins
8
8
  - Case Commons, LLC
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-07-13 00:00:00.000000000 Z
12
+ date: 2020-11-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activerecord
@@ -17,28 +17,28 @@ dependencies:
17
17
  requirements:
18
18
  - - ">="
19
19
  - !ruby/object:Gem::Version
20
- version: '4.2'
20
+ version: '5.2'
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
- version: '4.2'
27
+ version: '5.2'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: activesupport
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
32
  - - ">="
33
33
  - !ruby/object:Gem::Version
34
- version: '4.2'
34
+ version: '5.2'
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
- version: '4.2'
41
+ version: '5.2'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: pry
44
44
  requirement: !ruby/object:Gem::Requirement
@@ -73,28 +73,28 @@ dependencies:
73
73
  requirements:
74
74
  - - ">="
75
75
  - !ruby/object:Gem::Version
76
- version: '3.3'
76
+ version: '0'
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
- version: '3.3'
83
+ version: '0'
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: rubocop
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
88
  - - ">="
89
89
  - !ruby/object:Gem::Version
90
- version: 0.68.1
90
+ version: '0'
91
91
  type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
95
  - - ">="
96
96
  - !ruby/object:Gem::Version
97
- version: 0.68.1
97
+ version: '0'
98
98
  - !ruby/object:Gem::Dependency
99
99
  name: rubocop-performance
100
100
  requirement: !ruby/object:Gem::Requirement
@@ -109,6 +109,48 @@ dependencies:
109
109
  - - ">="
110
110
  - !ruby/object:Gem::Version
111
111
  version: '0'
112
+ - !ruby/object:Gem::Dependency
113
+ name: rubocop-rails
114
+ requirement: !ruby/object:Gem::Requirement
115
+ requirements:
116
+ - - ">="
117
+ - !ruby/object:Gem::Version
118
+ version: '0'
119
+ type: :development
120
+ prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ">="
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: rubocop-rake
128
+ requirement: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: '0'
133
+ type: :development
134
+ prerelease: false
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ version: '0'
140
+ - !ruby/object:Gem::Dependency
141
+ name: rubocop-rspec
142
+ requirement: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
146
+ version: '0'
147
+ type: :development
148
+ prerelease: false
149
+ version_requirements: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - ">="
152
+ - !ruby/object:Gem::Version
153
+ version: '0'
112
154
  - !ruby/object:Gem::Dependency
113
155
  name: simplecov
114
156
  requirement: !ruby/object:Gem::Requirement
@@ -123,20 +165,34 @@ dependencies:
123
165
  - - ">="
124
166
  - !ruby/object:Gem::Version
125
167
  version: '0'
168
+ - !ruby/object:Gem::Dependency
169
+ name: warning
170
+ requirement: !ruby/object:Gem::Requirement
171
+ requirements:
172
+ - - ">="
173
+ - !ruby/object:Gem::Version
174
+ version: '0'
175
+ type: :development
176
+ prerelease: false
177
+ version_requirements: !ruby/object:Gem::Requirement
178
+ requirements:
179
+ - - ">="
180
+ - !ruby/object:Gem::Version
181
+ version: '0'
126
182
  - !ruby/object:Gem::Dependency
127
183
  name: with_model
128
184
  requirement: !ruby/object:Gem::Requirement
129
185
  requirements:
130
186
  - - ">="
131
187
  - !ruby/object:Gem::Version
132
- version: '1.2'
188
+ version: '0'
133
189
  type: :development
134
190
  prerelease: false
135
191
  version_requirements: !ruby/object:Gem::Requirement
136
192
  requirements:
137
193
  - - ">="
138
194
  - !ruby/object:Gem::Version
139
- version: '1.2'
195
+ version: '0'
140
196
  description: PgSearch builds Active Record named scopes that take advantage of PostgreSQL's
141
197
  full text search
142
198
  email:
@@ -150,11 +206,14 @@ files:
150
206
  - ".bundle/config"
151
207
  - ".codeclimate.yml"
152
208
  - ".editorconfig"
209
+ - ".github/dependabot.yml"
153
210
  - ".gitignore"
211
+ - ".jrubyrc"
154
212
  - ".rspec"
155
213
  - ".rubocop.yml"
156
214
  - ".travis.yml"
157
215
  - CHANGELOG.md
216
+ - CODE_OF_CONDUCT.md
158
217
  - CONTRIBUTING.md
159
218
  - Gemfile
160
219
  - LICENSE
@@ -187,6 +246,7 @@ files:
187
246
  - lib/pg_search/version.rb
188
247
  - pg_search.gemspec
189
248
  - spec/.rubocop.yml
249
+ - spec/integration/.rubocop.yml
190
250
  - spec/integration/associations_spec.rb
191
251
  - spec/integration/deprecation_spec.rb
192
252
  - spec/integration/pagination_spec.rb
@@ -212,7 +272,7 @@ homepage: https://github.com/Casecommons/pg_search
212
272
  licenses:
213
273
  - MIT
214
274
  metadata: {}
215
- post_install_message:
275
+ post_install_message:
216
276
  rdoc_options: []
217
277
  require_paths:
218
278
  - lib
@@ -220,19 +280,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
220
280
  requirements:
221
281
  - - ">="
222
282
  - !ruby/object:Gem::Version
223
- version: '2.4'
283
+ version: '2.5'
224
284
  required_rubygems_version: !ruby/object:Gem::Requirement
225
285
  requirements:
226
286
  - - ">="
227
287
  - !ruby/object:Gem::Version
228
288
  version: '0'
229
289
  requirements: []
230
- rubygems_version: 3.0.3
231
- signing_key:
290
+ rubygems_version: 3.1.4
291
+ signing_key:
232
292
  specification_version: 4
233
293
  summary: PgSearch builds Active Record named scopes that take advantage of PostgreSQL's
234
294
  full text search
235
295
  test_files:
296
+ - spec/integration/.rubocop.yml
236
297
  - spec/integration/associations_spec.rb
237
298
  - spec/integration/deprecation_spec.rb
238
299
  - spec/integration/pagination_spec.rb