ransack 2.3.2 → 2.5.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.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/.github/FUNDING.yml +3 -0
  3. data/.github/SECURITY.md +12 -0
  4. data/.github/workflows/cronjob.yml +102 -0
  5. data/.github/workflows/rubocop.yml +20 -0
  6. data/.github/workflows/test.yml +163 -0
  7. data/.rubocop.yml +44 -0
  8. data/CHANGELOG.md +28 -1
  9. data/CONTRIBUTING.md +16 -11
  10. data/Gemfile +5 -3
  11. data/README.md +167 -30
  12. data/bug_report_templates/test-ransack-scope-and-column-same-name.rb +78 -0
  13. data/bug_report_templates/test-ransacker-arel-present-predicate.rb +71 -0
  14. data/docs/img/create_release.png +0 -0
  15. data/docs/release_process.md +17 -0
  16. data/{polyamorous/lib → lib}/polyamorous/activerecord_5.2_ruby_2/join_association.rb +4 -0
  17. data/{polyamorous/lib → lib}/polyamorous/activerecord_5.2_ruby_2/join_dependency.rb +0 -0
  18. data/lib/polyamorous/activerecord_5.2_ruby_2/reflection.rb +11 -0
  19. data/{polyamorous/lib → lib}/polyamorous/activerecord_6.0_ruby_2/join_association.rb +0 -1
  20. data/{polyamorous/lib → lib}/polyamorous/activerecord_6.0_ruby_2/join_dependency.rb +0 -1
  21. data/{polyamorous/lib → lib}/polyamorous/activerecord_6.0_ruby_2/reflection.rb +0 -1
  22. data/lib/polyamorous/activerecord_6.1_ruby_2/join_association.rb +74 -0
  23. data/lib/polyamorous/activerecord_6.1_ruby_2/join_dependency.rb +93 -0
  24. data/{polyamorous/lib → lib}/polyamorous/activerecord_6.1_ruby_2/reflection.rb +0 -1
  25. data/lib/polyamorous/activerecord_7.0_ruby_2/join_association.rb +1 -0
  26. data/lib/polyamorous/activerecord_7.0_ruby_2/join_dependency.rb +1 -0
  27. data/lib/polyamorous/activerecord_7.0_ruby_2/reflection.rb +1 -0
  28. data/{polyamorous/lib → lib}/polyamorous/join.rb +0 -0
  29. data/{polyamorous/lib → lib/polyamorous}/polyamorous.rb +1 -1
  30. data/{polyamorous/lib → lib}/polyamorous/swapping_reflection_class.rb +0 -0
  31. data/{polyamorous/lib → lib}/polyamorous/tree_node.rb +0 -0
  32. data/lib/polyamorous.rb +1 -0
  33. data/lib/ransack/adapters/active_record/base.rb +5 -1
  34. data/lib/ransack/adapters/active_record/context.rb +55 -13
  35. data/lib/ransack/adapters/active_record/ransack/constants.rb +1 -1
  36. data/lib/ransack/adapters/active_record/ransack/context.rb +1 -0
  37. data/lib/ransack/adapters/active_record/ransack/nodes/condition.rb +11 -3
  38. data/lib/ransack/configuration.rb +31 -1
  39. data/lib/ransack/constants.rb +2 -2
  40. data/lib/ransack/helpers/form_builder.rb +3 -3
  41. data/lib/ransack/helpers.rb +1 -1
  42. data/lib/ransack/locale/sv.yml +70 -0
  43. data/lib/ransack/nodes/attribute.rb +1 -1
  44. data/lib/ransack/nodes/condition.rb +0 -2
  45. data/lib/ransack/nodes/grouping.rb +1 -1
  46. data/lib/ransack/nodes/sort.rb +3 -3
  47. data/lib/ransack/nodes/value.rb +1 -1
  48. data/lib/ransack/search.rb +4 -1
  49. data/lib/ransack/translate.rb +4 -4
  50. data/lib/ransack/version.rb +1 -1
  51. data/lib/ransack.rb +2 -2
  52. data/ransack.gemspec +8 -14
  53. data/spec/blueprints/articles.rb +1 -1
  54. data/spec/blueprints/comments.rb +1 -1
  55. data/spec/blueprints/notes.rb +1 -1
  56. data/spec/blueprints/tags.rb +1 -1
  57. data/spec/console.rb +5 -5
  58. data/spec/helpers/ransack_helper.rb +1 -1
  59. data/spec/{ransack → polyamorous}/join_association_spec.rb +8 -1
  60. data/spec/{ransack → polyamorous}/join_dependency_spec.rb +0 -0
  61. data/spec/{ransack → polyamorous}/join_spec.rb +0 -0
  62. data/spec/ransack/adapters/active_record/base_spec.rb +26 -15
  63. data/spec/ransack/adapters/active_record/context_spec.rb +19 -18
  64. data/spec/ransack/configuration_spec.rb +24 -0
  65. data/spec/ransack/helpers/form_helper_spec.rb +16 -16
  66. data/spec/ransack/nodes/condition_spec.rb +13 -0
  67. data/spec/ransack/nodes/grouping_spec.rb +2 -2
  68. data/spec/ransack/predicate_spec.rb +1 -1
  69. data/spec/ransack/search_spec.rb +215 -30
  70. data/spec/spec_helper.rb +7 -5
  71. data/spec/support/schema.rb +28 -2
  72. metadata +45 -47
  73. data/.travis.yml +0 -47
  74. data/polyamorous/lib/polyamorous/activerecord_5.2_ruby_2/reflection.rb +0 -12
  75. data/polyamorous/lib/polyamorous/activerecord_6.1_ruby_2/join_association.rb +0 -2
  76. data/polyamorous/lib/polyamorous/activerecord_6.1_ruby_2/join_dependency.rb +0 -2
  77. data/polyamorous/lib/polyamorous/version.rb +0 -3
  78. data/polyamorous/polyamorous.gemspec +0 -27
metadata CHANGED
@@ -1,17 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ransack
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.2
4
+ version: 2.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ernie Miller
8
8
  - Ryan Bigg
9
9
  - Jon Atack
10
10
  - Sean Carroll
11
- autorequire:
11
+ autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2020-01-11 00:00:00.000000000 Z
14
+ date: 2021-12-25 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: activerecord
@@ -19,28 +19,28 @@ dependencies:
19
19
  requirements:
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 5.2.1
22
+ version: 5.2.4
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: 5.2.1
29
+ version: 5.2.4
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: activesupport
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  requirements:
34
34
  - - ">="
35
35
  - !ruby/object:Gem::Version
36
- version: 5.2.1
36
+ version: 5.2.4
37
37
  type: :runtime
38
38
  prerelease: false
39
39
  version_requirements: !ruby/object:Gem::Requirement
40
40
  requirements:
41
41
  - - ">="
42
42
  - !ruby/object:Gem::Version
43
- version: 5.2.1
43
+ version: 5.2.4
44
44
  - !ruby/object:Gem::Dependency
45
45
  name: i18n
46
46
  requirement: !ruby/object:Gem::Requirement
@@ -55,20 +55,6 @@ dependencies:
55
55
  - - ">="
56
56
  - !ruby/object:Gem::Version
57
57
  version: '0'
58
- - !ruby/object:Gem::Dependency
59
- name: polyamorous
60
- requirement: !ruby/object:Gem::Requirement
61
- requirements:
62
- - - '='
63
- - !ruby/object:Gem::Version
64
- version: 2.3.2
65
- type: :runtime
66
- prerelease: false
67
- version_requirements: !ruby/object:Gem::Requirement
68
- requirements:
69
- - - '='
70
- - !ruby/object:Gem::Version
71
- version: 2.3.2
72
58
  description: Ransack is the successor to the MetaSearch gem. It improves and expands
73
59
  upon MetaSearch's functionality, but does not have a 100%-compatible API.
74
60
  email:
@@ -80,14 +66,40 @@ executables: []
80
66
  extensions: []
81
67
  extra_rdoc_files: []
82
68
  files:
69
+ - ".github/FUNDING.yml"
70
+ - ".github/SECURITY.md"
71
+ - ".github/workflows/cronjob.yml"
72
+ - ".github/workflows/rubocop.yml"
73
+ - ".github/workflows/test.yml"
83
74
  - ".gitignore"
84
- - ".travis.yml"
75
+ - ".rubocop.yml"
85
76
  - CHANGELOG.md
86
77
  - CONTRIBUTING.md
87
78
  - Gemfile
88
79
  - LICENSE
89
80
  - README.md
90
81
  - Rakefile
82
+ - bug_report_templates/test-ransack-scope-and-column-same-name.rb
83
+ - bug_report_templates/test-ransacker-arel-present-predicate.rb
84
+ - docs/img/create_release.png
85
+ - docs/release_process.md
86
+ - lib/polyamorous.rb
87
+ - lib/polyamorous/activerecord_5.2_ruby_2/join_association.rb
88
+ - lib/polyamorous/activerecord_5.2_ruby_2/join_dependency.rb
89
+ - lib/polyamorous/activerecord_5.2_ruby_2/reflection.rb
90
+ - lib/polyamorous/activerecord_6.0_ruby_2/join_association.rb
91
+ - lib/polyamorous/activerecord_6.0_ruby_2/join_dependency.rb
92
+ - lib/polyamorous/activerecord_6.0_ruby_2/reflection.rb
93
+ - lib/polyamorous/activerecord_6.1_ruby_2/join_association.rb
94
+ - lib/polyamorous/activerecord_6.1_ruby_2/join_dependency.rb
95
+ - lib/polyamorous/activerecord_6.1_ruby_2/reflection.rb
96
+ - lib/polyamorous/activerecord_7.0_ruby_2/join_association.rb
97
+ - lib/polyamorous/activerecord_7.0_ruby_2/join_dependency.rb
98
+ - lib/polyamorous/activerecord_7.0_ruby_2/reflection.rb
99
+ - lib/polyamorous/join.rb
100
+ - lib/polyamorous/polyamorous.rb
101
+ - lib/polyamorous/swapping_reflection_class.rb
102
+ - lib/polyamorous/tree_node.rb
91
103
  - lib/ransack.rb
92
104
  - lib/ransack/adapters.rb
93
105
  - lib/ransack/adapters/active_record.rb
@@ -126,6 +138,7 @@ files:
126
138
  - lib/ransack/locale/ro.yml
127
139
  - lib/ransack/locale/ru.yml
128
140
  - lib/ransack/locale/sk.yml
141
+ - lib/ransack/locale/sv.yml
129
142
  - lib/ransack/locale/tr.yml
130
143
  - lib/ransack/locale/zh-CN.yml
131
144
  - lib/ransack/locale/zh-TW.yml
@@ -150,21 +163,6 @@ files:
150
163
  - logo/ransack-v.svg
151
164
  - logo/ransack.png
152
165
  - logo/ransack.svg
153
- - polyamorous/lib/polyamorous.rb
154
- - polyamorous/lib/polyamorous/activerecord_5.2_ruby_2/join_association.rb
155
- - polyamorous/lib/polyamorous/activerecord_5.2_ruby_2/join_dependency.rb
156
- - polyamorous/lib/polyamorous/activerecord_5.2_ruby_2/reflection.rb
157
- - polyamorous/lib/polyamorous/activerecord_6.0_ruby_2/join_association.rb
158
- - polyamorous/lib/polyamorous/activerecord_6.0_ruby_2/join_dependency.rb
159
- - polyamorous/lib/polyamorous/activerecord_6.0_ruby_2/reflection.rb
160
- - polyamorous/lib/polyamorous/activerecord_6.1_ruby_2/join_association.rb
161
- - polyamorous/lib/polyamorous/activerecord_6.1_ruby_2/join_dependency.rb
162
- - polyamorous/lib/polyamorous/activerecord_6.1_ruby_2/reflection.rb
163
- - polyamorous/lib/polyamorous/join.rb
164
- - polyamorous/lib/polyamorous/swapping_reflection_class.rb
165
- - polyamorous/lib/polyamorous/tree_node.rb
166
- - polyamorous/lib/polyamorous/version.rb
167
- - polyamorous/polyamorous.gemspec
168
166
  - ransack.gemspec
169
167
  - spec/blueprints/articles.rb
170
168
  - spec/blueprints/comments.rb
@@ -174,14 +172,14 @@ files:
174
172
  - spec/console.rb
175
173
  - spec/helpers/polyamorous_helper.rb
176
174
  - spec/helpers/ransack_helper.rb
175
+ - spec/polyamorous/join_association_spec.rb
176
+ - spec/polyamorous/join_dependency_spec.rb
177
+ - spec/polyamorous/join_spec.rb
177
178
  - spec/ransack/adapters/active_record/base_spec.rb
178
179
  - spec/ransack/adapters/active_record/context_spec.rb
179
180
  - spec/ransack/configuration_spec.rb
180
181
  - spec/ransack/helpers/form_builder_spec.rb
181
182
  - spec/ransack/helpers/form_helper_spec.rb
182
- - spec/ransack/join_association_spec.rb
183
- - spec/ransack/join_dependency_spec.rb
184
- - spec/ransack/join_spec.rb
185
183
  - spec/ransack/nodes/condition_spec.rb
186
184
  - spec/ransack/nodes/grouping_spec.rb
187
185
  - spec/ransack/predicate_spec.rb
@@ -194,7 +192,7 @@ homepage: https://github.com/activerecord-hackery/ransack
194
192
  licenses:
195
193
  - MIT
196
194
  metadata: {}
197
- post_install_message:
195
+ post_install_message:
198
196
  rdoc_options: []
199
197
  require_paths:
200
198
  - lib
@@ -202,15 +200,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
202
200
  requirements:
203
201
  - - ">="
204
202
  - !ruby/object:Gem::Version
205
- version: '2.3'
203
+ version: '2.6'
206
204
  required_rubygems_version: !ruby/object:Gem::Requirement
207
205
  requirements:
208
206
  - - ">="
209
207
  - !ruby/object:Gem::Version
210
208
  version: '0'
211
209
  requirements: []
212
- rubygems_version: 3.0.3
213
- signing_key:
210
+ rubygems_version: 3.1.4
211
+ signing_key:
214
212
  specification_version: 4
215
213
  summary: Object-based searching for Active Record and Mongoid (currently).
216
214
  test_files:
@@ -222,14 +220,14 @@ test_files:
222
220
  - spec/console.rb
223
221
  - spec/helpers/polyamorous_helper.rb
224
222
  - spec/helpers/ransack_helper.rb
223
+ - spec/polyamorous/join_association_spec.rb
224
+ - spec/polyamorous/join_dependency_spec.rb
225
+ - spec/polyamorous/join_spec.rb
225
226
  - spec/ransack/adapters/active_record/base_spec.rb
226
227
  - spec/ransack/adapters/active_record/context_spec.rb
227
228
  - spec/ransack/configuration_spec.rb
228
229
  - spec/ransack/helpers/form_builder_spec.rb
229
230
  - spec/ransack/helpers/form_helper_spec.rb
230
- - spec/ransack/join_association_spec.rb
231
- - spec/ransack/join_dependency_spec.rb
232
- - spec/ransack/join_spec.rb
233
231
  - spec/ransack/nodes/condition_spec.rb
234
232
  - spec/ransack/nodes/grouping_spec.rb
235
233
  - spec/ransack/predicate_spec.rb
data/.travis.yml DELETED
@@ -1,47 +0,0 @@
1
- language: ruby
2
-
3
- rvm:
4
- - 2.6.5
5
-
6
- services:
7
- - mysql
8
-
9
- env:
10
- - RAILS=6-0-stable DB=sqlite3
11
- - RAILS=6-0-stable DB=mysql
12
- - RAILS=6-0-stable DB=postgres
13
-
14
- - RAILS=v6.0.0 DB=sqlite3
15
- - RAILS=v6.0.0 DB=mysql
16
- - RAILS=v6.0.0 DB=postgres
17
-
18
- - RAILS=5-2-stable DB=sqlite3
19
- - RAILS=5-2-stable DB=mysql
20
- - RAILS=5-2-stable DB=postgres
21
-
22
- - RAILS=v5.2.3 DB=sqlite3
23
- - RAILS=v5.2.3 DB=mysql
24
- - RAILS=v5.2.3 DB=postgres
25
-
26
- matrix:
27
- allow_failures:
28
- - env: RAILS=6-0-stable DB=sqlite3
29
- - env: RAILS=6-0-stable DB=mysql
30
- - env: RAILS=6-0-stable DB=postgres
31
-
32
- before_script:
33
- - if [ "$DB" = "mysql" ];
34
- then
35
- mysql -e 'create database ransack collate utf8_general_ci;';
36
- mysql -e 'use ransack;show variables like "%character%";show variables like "%collation%";';
37
- fi
38
-
39
- - if [ "$DB" = "postgres" ];
40
- then
41
- psql -c 'create database ransack;' -U postgres;
42
- fi
43
-
44
- addons:
45
- code_climate:
46
- repo_token: 8b701c4364d51a0217105e08c06922d600cec3d9e60d546a89e3ddfe46e0664e
47
- postgresql: "9.6"
@@ -1,12 +0,0 @@
1
- module Polyamorous
2
- module ReflectionExtensions
3
- def build_join_constraint(table, foreign_table)
4
- if polymorphic?
5
- super(table, foreign_table)
6
- .and(foreign_table[foreign_type].eq(klass.name))
7
- else
8
- super(table, foreign_table)
9
- end
10
- end
11
- end
12
- end
@@ -1,2 +0,0 @@
1
- # active_record_6.1_ruby_2/join_association
2
- require 'polyamorous/activerecord_6.0_ruby_2/join_association'
@@ -1,2 +0,0 @@
1
- # active_record_6.1_ruby_2/join_dependency.rb
2
- require 'polyamorous/activerecord_6.0_ruby_2/join_dependency'
@@ -1,3 +0,0 @@
1
- module Polyamorous
2
- VERSION = '2.3.2'
3
- end
@@ -1,27 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
- $:.push File.expand_path("../lib", __FILE__)
3
- require "polyamorous/version"
4
-
5
- Gem::Specification.new do |s|
6
- s.name = "polyamorous"
7
- s.version = Polyamorous::VERSION
8
- s.authors = ["Ernie Miller", "Ryan Bigg", "Jon Atack", "Xiang Li"]
9
- s.email = ["ernie@erniemiller.org", "radarlistener@gmail.com", "jonnyatack@gmail.com", "bigxiang@gmail.com"]
10
- s.homepage = "https://github.com/activerecord-hackery/ransack/tree/master/polyamorous"
11
- s.license = "MIT"
12
- s.summary = %q{
13
- Loves/is loved by polymorphic belongs_to associations, Ransack, Squeel, MetaSearch...
14
- }
15
- s.description = %q{
16
- This is just an extraction from Ransack/Squeel. You probably don't want to use this
17
- directly. It extends ActiveRecord's associations to support polymorphic belongs_to
18
- associations.
19
- }
20
-
21
- s.add_dependency 'activerecord', '>= 5.2.1'
22
-
23
- s.files = `git ls-files`.split("\n")
24
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
25
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
26
- s.require_paths = ["lib"]
27
- end