ransack 2.4.2 → 3.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (107) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/cronjob.yml +6 -9
  3. data/.github/workflows/deploy.yml +35 -0
  4. data/.github/workflows/rubocop.yml +1 -1
  5. data/.github/workflows/test-deploy.yml +29 -0
  6. data/.github/workflows/test.yml +16 -40
  7. data/.nojekyll +0 -0
  8. data/CHANGELOG.md +157 -11
  9. data/CONTRIBUTING.md +8 -7
  10. data/Gemfile +2 -2
  11. data/README.md +44 -972
  12. data/docs/.gitignore +19 -0
  13. data/docs/.nojekyll +0 -0
  14. data/docs/babel.config.js +3 -0
  15. data/docs/blog/2022-03-27-ransack-3.0.0.md +20 -0
  16. data/docs/docs/getting-started/_category_.json +4 -0
  17. data/docs/docs/getting-started/advanced-mode.md +46 -0
  18. data/docs/docs/getting-started/configuration.md +47 -0
  19. data/docs/docs/getting-started/search-matches.md +67 -0
  20. data/docs/docs/getting-started/simple-mode.md +284 -0
  21. data/docs/docs/getting-started/sorting.md +79 -0
  22. data/docs/docs/getting-started/using-predicates.md +282 -0
  23. data/docs/docs/going-further/_category_.json +4 -0
  24. data/docs/docs/going-further/acts-as-taggable-on.md +114 -0
  25. data/docs/docs/going-further/associations.md +70 -0
  26. data/docs/docs/going-further/custom-predicates.md +52 -0
  27. data/docs/docs/going-further/documentation.md +43 -0
  28. data/docs/docs/going-further/exporting-to-csv.md +49 -0
  29. data/docs/docs/going-further/external-guides.md +57 -0
  30. data/docs/docs/going-further/form-customisation.md +63 -0
  31. data/docs/docs/going-further/i18n.md +53 -0
  32. data/docs/docs/going-further/merging-searches.md +41 -0
  33. data/docs/docs/going-further/other-notes.md +428 -0
  34. data/docs/docs/going-further/polymorphic-search.md +40 -0
  35. data/docs/docs/going-further/ransackers.md +331 -0
  36. data/docs/docs/going-further/release_process.md +36 -0
  37. data/docs/docs/going-further/saving-queries.md +82 -0
  38. data/docs/docs/going-further/searching-postgres.md +57 -0
  39. data/docs/docs/going-further/wiki-contributors.md +82 -0
  40. data/docs/docs/intro.md +99 -0
  41. data/docs/docusaurus.config.js +120 -0
  42. data/docs/package.json +38 -0
  43. data/docs/sidebars.js +31 -0
  44. data/docs/src/components/HomepageFeatures/index.js +64 -0
  45. data/docs/src/components/HomepageFeatures/styles.module.css +11 -0
  46. data/docs/src/css/custom.css +39 -0
  47. data/docs/src/pages/index.module.css +23 -0
  48. data/docs/src/pages/markdown-page.md +7 -0
  49. data/docs/static/.nojekyll +0 -0
  50. data/docs/static/img/docusaurus.png +0 -0
  51. data/docs/static/img/favicon.ico +0 -0
  52. data/docs/static/img/logo.svg +1 -0
  53. data/docs/static/img/tutorial/docsVersionDropdown.png +0 -0
  54. data/docs/static/img/tutorial/localeDropdown.png +0 -0
  55. data/docs/static/img/undraw_docusaurus_mountain.svg +171 -0
  56. data/docs/static/img/undraw_docusaurus_react.svg +170 -0
  57. data/docs/static/img/undraw_docusaurus_tree.svg +40 -0
  58. data/docs/yarn.lock +8436 -0
  59. data/lib/polyamorous/activerecord_6.1_ruby_2/join_association.rb +0 -4
  60. data/lib/polyamorous/activerecord_6.1_ruby_2/join_dependency.rb +0 -1
  61. data/lib/polyamorous/activerecord_6.1_ruby_2/reflection.rb +11 -1
  62. data/lib/polyamorous/activerecord_7.1_ruby_2/join_association.rb +1 -0
  63. data/lib/polyamorous/activerecord_7.1_ruby_2/join_dependency.rb +1 -0
  64. data/lib/polyamorous/activerecord_7.1_ruby_2/reflection.rb +1 -0
  65. data/lib/polyamorous.rb +1 -0
  66. data/lib/ransack/adapters/active_record/base.rb +1 -3
  67. data/lib/ransack/adapters/active_record/context.rb +24 -51
  68. data/lib/ransack/adapters/active_record/ransack/nodes/condition.rb +2 -9
  69. data/lib/ransack/configuration.rb +16 -2
  70. data/lib/ransack/constants.rb +0 -3
  71. data/lib/ransack/helpers/form_helper.rb +11 -3
  72. data/lib/ransack/locale/sv.yml +70 -0
  73. data/lib/ransack/nodes/sort.rb +2 -2
  74. data/lib/ransack/nodes/value.rb +1 -1
  75. data/lib/ransack/search.rb +4 -3
  76. data/lib/ransack/translate.rb +1 -1
  77. data/lib/ransack/version.rb +1 -1
  78. data/ransack.gemspec +5 -5
  79. data/spec/helpers/polyamorous_helper.rb +2 -8
  80. data/spec/polyamorous/activerecord_compatibility_spec.rb +15 -0
  81. data/spec/polyamorous/join_association_spec.rb +1 -6
  82. data/spec/polyamorous/join_dependency_spec.rb +0 -16
  83. data/spec/ransack/adapters/active_record/base_spec.rb +28 -11
  84. data/spec/ransack/configuration_spec.rb +14 -0
  85. data/spec/ransack/helpers/form_helper_spec.rb +57 -2
  86. data/spec/ransack/nodes/condition_spec.rb +13 -0
  87. data/spec/ransack/nodes/value_spec.rb +115 -0
  88. data/spec/ransack/search_spec.rb +140 -27
  89. data/spec/support/schema.rb +49 -0
  90. metadata +82 -29
  91. data/docs/release_process.md +0 -20
  92. data/lib/polyamorous/activerecord_5.2_ruby_2/join_association.rb +0 -24
  93. data/lib/polyamorous/activerecord_5.2_ruby_2/join_dependency.rb +0 -79
  94. data/lib/polyamorous/activerecord_5.2_ruby_2/reflection.rb +0 -11
  95. data/lib/polyamorous/activerecord_6.0_ruby_2/join_association.rb +0 -1
  96. data/lib/polyamorous/activerecord_6.0_ruby_2/join_dependency.rb +0 -80
  97. data/lib/polyamorous/activerecord_6.0_ruby_2/reflection.rb +0 -1
  98. /data/docs/{img → docs/going-further/img}/create_release.png +0 -0
  99. /data/{logo → docs/static/logo}/ransack-h.png +0 -0
  100. /data/{logo → docs/static/logo}/ransack-h.svg +0 -0
  101. /data/{logo → docs/static/logo}/ransack-v.png +0 -0
  102. /data/{logo → docs/static/logo}/ransack-v.svg +0 -0
  103. /data/{logo → docs/static/logo}/ransack.png +0 -0
  104. /data/{logo → docs/static/logo}/ransack.svg +0 -0
  105. /data/lib/polyamorous/{activerecord_6.2_ruby_2 → activerecord_7.0_ruby_2}/join_association.rb +0 -0
  106. /data/lib/polyamorous/{activerecord_6.2_ruby_2 → activerecord_7.0_ruby_2}/join_dependency.rb +0 -0
  107. /data/lib/polyamorous/{activerecord_6.2_ruby_2 → activerecord_7.0_ruby_2}/reflection.rb +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a7e53f2a86ba264e751c3311254c7cb4b25efdb0c876310835b6f6221ab24928
4
- data.tar.gz: 161ca5255a24fa42c63d6afbbf38e518581189db773e7e43940b31b1b8d86850
3
+ metadata.gz: f4ce966153aee54a3e24eb4ec775569926813ed7273839e5d042dbbc6b3addf8
4
+ data.tar.gz: 4d96b0ecae077f0096494a99f90e8cfb3555140fe194c79ed691b2760319e51c
5
5
  SHA512:
6
- metadata.gz: 17c4701dbf3523dfa16feae0dd0dddc8bd077237d7e695eb69664f1b9c5ab5e2fea4a59b5878fe8e607b135ea834f12284f03c42a9ce2971f2f9c9b65d347205
7
- data.tar.gz: 4c9d09980609ffc43bc505a947781b9fcdc97efb7897c3bbc3278d8391ab219e4fdffd8a813272a3af7403eefc162fddb6f9f379b713894d3951ff2fc7a141f3
6
+ metadata.gz: 5d23fb2ddc8ef40489c40e02202b3d051305252c21b5f6c2823478442ce326990b22a26ee46861212b690ada0632328ce6c5065cba238bd185eecc46fd5555c5
7
+ data.tar.gz: 5dffd2910eefdfe2633d13a4b7d36838340f45fb484f025fed264e5df5b69c730df16257f11e7425a0852f99255b1f22e970c6407a9f5f4c59c2ca027f6e8804
@@ -11,9 +11,8 @@ jobs:
11
11
  fail-fast: false
12
12
  matrix:
13
13
  ruby:
14
- - 3.0.0
15
- - 2.7.2
16
- - 2.6.6
14
+ - 3.0.2
15
+ - 2.7.4
17
16
  env:
18
17
  DB: sqlite3
19
18
  RAILS: main
@@ -34,9 +33,8 @@ jobs:
34
33
  fail-fast: false
35
34
  matrix:
36
35
  ruby:
37
- - 3.0.0
38
- - 2.7.2
39
- - 2.6.6
36
+ - 3.0.2
37
+ - 2.7.4
40
38
  env:
41
39
  DB: mysql
42
40
  RAILS: main
@@ -66,9 +64,8 @@ jobs:
66
64
  fail-fast: false
67
65
  matrix:
68
66
  ruby:
69
- - 3.0.0
70
- - 2.7.2
71
- - 2.6.6
67
+ - 3.0.2
68
+ - 2.7.4
72
69
  env:
73
70
  DB: postgres
74
71
  RAILS: main
@@ -0,0 +1,35 @@
1
+ name: Deploy to GitHub Pages
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+
8
+ jobs:
9
+ deploy:
10
+ name: Deploy to GitHub Pages
11
+
12
+ runs-on: ubuntu-20.04
13
+
14
+ steps:
15
+ - uses: actions/checkout@v3
16
+
17
+ - uses: actions/setup-node@v3
18
+ with:
19
+ node-version: 16
20
+ cache: yarn
21
+ cache-dependency-path: docs/yarn.lock
22
+
23
+ - name: Install dependencies
24
+ run: yarn install --frozen-lockfile
25
+ working-directory: docs
26
+
27
+ - name: Build website
28
+ run: yarn build
29
+ working-directory: docs
30
+
31
+ - name: Deploy to GitHub Pages
32
+ uses: peaceiris/actions-gh-pages@v3
33
+ with:
34
+ github_token: ${{ secrets.GITHUB_TOKEN }}
35
+ publish_dir: docs/build
@@ -13,7 +13,7 @@ jobs:
13
13
  - name: Set up Ruby
14
14
  uses: ruby/setup-ruby@v1
15
15
  with:
16
- ruby-version: 3.0.0
16
+ ruby-version: 3.0.1
17
17
  - name: Install gems
18
18
  run: bundle install --jobs 4 --retry 3
19
19
  - name: Run RuboCop
@@ -0,0 +1,29 @@
1
+ name: Test deploy to GitHub Pages
2
+
3
+ on:
4
+ pull_request:
5
+ branches:
6
+ - main
7
+
8
+ jobs:
9
+ test-deploy:
10
+ name: Test deploy to GitHub Pages
11
+
12
+ runs-on: ubuntu-20.04
13
+
14
+ steps:
15
+ - uses: actions/checkout@v3
16
+
17
+ - uses: actions/setup-node@v3
18
+ with:
19
+ node-version: 16
20
+ cache: yarn
21
+ cache-dependency-path: docs/yarn.lock
22
+
23
+ - name: Install dependencies
24
+ run: yarn install --frozen-lockfile
25
+ working-directory: docs
26
+
27
+ - name: Test build website
28
+ run: yarn build
29
+ working-directory: docs
@@ -11,20 +11,12 @@ jobs:
11
11
  fail-fast: false
12
12
  matrix:
13
13
  rails:
14
- - v6.1.1
15
- - v6.0.3
16
- - 6-0-stable
17
- - 5-2-stable
18
- - v5.2.4
14
+ - v7.0.3
15
+ - v6.1.6
19
16
  ruby:
20
- - 3.0.0
21
- - 2.7.2
22
- - 2.6.6
23
- exclude:
24
- - rails: v5.2.4
25
- ruby: 3.0.0
26
- - rails: 5-2-stable
27
- ruby: 3.0.0
17
+ - 3.1.2
18
+ - 3.0.4
19
+ - 2.7.6
28
20
  env:
29
21
  DB: sqlite3
30
22
  RAILS: ${{ matrix.rails }}
@@ -45,20 +37,12 @@ jobs:
45
37
  fail-fast: false
46
38
  matrix:
47
39
  rails:
48
- - v6.1.1
49
- - v6.0.3
50
- - 6-0-stable
51
- - 5-2-stable
52
- - v5.2.4
40
+ - v7.0.3
41
+ - v6.1.6
53
42
  ruby:
54
- - 3.0.0
55
- - 2.7.2
56
- - 2.6.6
57
- exclude:
58
- - rails: v5.2.4
59
- ruby: 3.0.0
60
- - rails: 5-2-stable
61
- ruby: 3.0.0
43
+ - 3.1.2
44
+ - 3.0.4
45
+ - 2.7.6
62
46
  env:
63
47
  DB: mysql
64
48
  RAILS: ${{ matrix.rails }}
@@ -88,20 +72,12 @@ jobs:
88
72
  fail-fast: false
89
73
  matrix:
90
74
  rails:
91
- - v6.1.1
92
- - v6.0.3
93
- - 6-0-stable
94
- - 5-2-stable
95
- - v5.2.4
75
+ - v7.0.3
76
+ - v6.1.6
96
77
  ruby:
97
- - 3.0.0
98
- - 2.7.2
99
- - 2.6.6
100
- exclude:
101
- - rails: v5.2.4
102
- ruby: 3.0.0
103
- - rails: 5-2-stable
104
- ruby: 3.0.0
78
+ - 3.1.2
79
+ - 3.0.4
80
+ - 2.7.6
105
81
  env:
106
82
  DB: postgres
107
83
  RAILS: ${{ matrix.rails }}
@@ -144,7 +120,7 @@ jobs:
144
120
  - name: Set up Ruby
145
121
  uses: ruby/setup-ruby@v1
146
122
  with:
147
- ruby-version: 3.0.0
123
+ ruby-version: 3.1.2
148
124
  - name: Install dependencies
149
125
  run: bundle install
150
126
  - name: Run bug report templates
data/.nojekyll ADDED
File without changes
data/CHANGELOG.md CHANGED
@@ -1,22 +1,168 @@
1
1
  # Change Log
2
2
 
3
- * Drop support for rubies under 2.5. PR #1189
3
+ ## Unreleased
4
4
 
5
- ## 2.4.1 - 2020-12-21
5
+ ## 3.2.1 - 2022-05-24
6
6
 
7
- * Add `ActiveRecord::Base.ransack!` which raises error if passed unknown condition
7
+ * Add search functionality to documentation site.
8
+ PR [1329](https://github.com/activerecord-hackery/ransack/pull/1329)
8
9
 
9
- *Aaron Lipman*
10
+ * Fix contributing URLs and syntax highlight in `README.md`.
11
+ PR [1326](https://github.com/activerecord-hackery/ransack/pull/1326)
10
12
 
11
- ## 2.4.0 - 2020-11-27
13
+ * Cast PostgreSQL's `timestamptz` columns to time.
14
+ PR [1325](https://github.com/activerecord-hackery/ransack/pull/1325)
15
+
16
+ * Add Ruby and ERB syntax highlighting support to documentation site.
17
+ PR [1324](https://github.com/activerecord-hackery/ransack/pull/1324)
18
+
19
+ * Fix a wrong link in `CHANGELOG.md`.
20
+ PR [1323](https://github.com/activerecord-hackery/ransack/pull/1323)
21
+
22
+ * Fix links to bug report templates in `CONTRIBUTING.md`.
23
+ PR [1321](https://github.com/activerecord-hackery/ransack/pull/1321)
24
+
25
+ ## 3.2.0 - 2022-05-08
26
+
27
+ * Drop Rails 6.0 support.
28
+ PR [1318](https://github.com/activerecord-hackery/ransack/pull/1318)
29
+
30
+ * Exclude "host" from params sent to url generator.
31
+ PR [1317](https://github.com/activerecord-hackery/ransack/pull/1317)
32
+
33
+ ## 3.1.0 - 2022-04-21
34
+
35
+ * Fix predicate name in "Using Predicates" documentation page.
36
+ PR [1313](https://github.com/activerecord-hackery/ransack/pull/1313)
37
+
38
+ * Drop Ruby 2.6 support.
39
+ PR [1311](https://github.com/activerecord-hackery/ransack/pull/1311)
40
+
41
+ * Allow Ransack to be used with Rails 7.1.0.alpha.
42
+ PR [1309](https://github.com/activerecord-hackery/ransack/pull/1309)
43
+
44
+ * Put contributor list last in documentation site.
45
+ PR [1308](https://github.com/activerecord-hackery/ransack/pull/1308)
46
+
47
+ * Add `acts-as-taggable-on` and polymorphic searches to documentation.
48
+ PR [1306](https://github.com/activerecord-hackery/ransack/pull/1306)
49
+ PR [1312](https://github.com/activerecord-hackery/ransack/pull/1312)
50
+
51
+ * Add full link to issue about merging searches to documentation.
52
+ PR [1305](https://github.com/activerecord-hackery/ransack/pull/1305)
53
+
54
+ ## 3.0.1 - 2022-04-08
55
+
56
+ * Fix `:data` option to `sort_link` being incorrectly appended to the generated
57
+ link query parameters.
58
+ PR [1301](https://github.com/activerecord-hackery/ransack/pull/1301)
59
+
60
+ * Fix "Edit this page" links in documentation site
61
+ PR [1303](https://github.com/activerecord-hackery/ransack/pull/1303)
62
+
63
+ * Auto deploy documentation site after merging PRs
64
+ PR [1302](https://github.com/activerecord-hackery/ransack/pull/1302)
65
+
66
+ * Add list of former wiki contributors to documentation site
67
+ PR [1300](https://github.com/activerecord-hackery/ransack/pull/1300)
68
+
69
+ * Reduce gem package size
70
+ PR [1297](https://github.com/activerecord-hackery/ransack/pull/1297)
71
+
72
+ ## 3.0.0 - 2022-03-30
12
73
 
13
- * Support ActiveRecord 6.1.0.rc1.
14
- PR [1172](https://github.com/activerecord-hackery/ransack/pull/1172)
74
+ * Move documentation into Docusaurus.
75
+ PR [1291](https://github.com/activerecord-hackery/ransack/pull/1291)
15
76
 
16
- * Fix for ActiveRecord 5.2.4 (note security fix in 5.2.4.2 for ActiveView's escape_javascript CVE-2020-5267 for all earlier versions)
77
+ * [BREAKING CHANGE] Remove deprecated `#search` method.
78
+ PR [1147](https://github.com/activerecord-hackery/ransack/pull/1147)
79
+
80
+ * Allow scopes that define string SQL joins.
81
+ PR [1225](https://github.com/activerecord-hackery/ransack/pull/1225)
82
+
83
+ * Improve `sort_link` documentation.
84
+ PR [1290](https://github.com/activerecord-hackery/ransack/pull/1290)
85
+
86
+ * Deprecate passing two trailing hashes to `sort_link`, for example:
87
+
88
+ ```ruby
89
+ sort_link(@q, :bussiness_name, "bussines_name", {}, class: "foo")
90
+ ```
91
+
92
+ Pass a single hash with all options instead.
93
+ PR [1289](https://github.com/activerecord-hackery/ransack/pull/1289)
94
+
95
+ * Fix `:class` option to `sort_link` not being passed to the generated link
96
+ correctly when no additional options are passed. For example:
97
+
98
+ ```ruby
99
+ sort_link(@q, :bussiness_name, class: "foo")
100
+ ```
101
+
102
+ PR [1288](https://github.com/activerecord-hackery/ransack/pull/1288)
103
+
104
+ * Evaluate `ransackable_scopes` before attributes when building the query.
105
+ PR [759](https://github.com/activerecord-hackery/ransack/pull/759)
106
+
107
+ ## 2.6.0 - 2022-03-08
108
+
109
+ * Fix regression when joining a table with itself.
110
+ PR [1275](https://github.com/activerecord-hackery/ransack/pull/1276)
111
+
112
+ * Drop support for ActiveRecord older than 6.0.4.
113
+ PR [1276](https://github.com/activerecord-hackery/ransack/pull/1276)
114
+
115
+ ## 2.5.0 - 2021-12-26
116
+
117
+ * Document release process by @scarroll32 in https://github.com/activerecord-hackery/ransack/pull/1199, https://github.com/activerecord-hackery/ransack/pull/1200.
118
+ * Support Rails 7 by @yahonda in https://github.com/activerecord-hackery/ransack/pull/1205, https://github.com/activerecord-hackery/ransack/pull/1209, https://github.com/activerecord-hackery/ransack/pull/1234, https://github.com/activerecord-hackery/ransack/pull/1230, https://github.com/activerecord-hackery/ransack/pull/1266
119
+ * Fix for `ActiveRecord::UnknownAttributeReference` in ransack by @TechnologyHypofriend in https://github.com/activerecord-hackery/ransack/pull/1207
120
+ * Make gem compatible with old polyamorous require by @rtweeks in https://github.com/activerecord-hackery/ransack/pull/1145
121
+ * Adding swedish translations by @johanandre in https://github.com/activerecord-hackery/ransack/pull/1208
122
+ * Document how to do case insensitive searches by @scarroll32 in https://github.com/activerecord-hackery/ransack/pull/1213
123
+ * Add the ability to disable whitespace stripping for string searches by @DCrow in https://github.com/activerecord-hackery/ransack/pull/1214
124
+ * Fix `:default` option in `Translate.attribute` method by @coreyaus in https://github.com/activerecord-hackery/ransack/pull/1218
125
+ * Fix typo in README.md by @d-m-u in https://github.com/activerecord-hackery/ransack/pull/1220
126
+ * Fix another typo in README.md by @plan-do-break-fix in https://github.com/activerecord-hackery/ransack/pull/1221
127
+ * Fix several documentation typos @wonda-tea-coffee in https://github.com/activerecord-hackery/ransack/pull/1233
128
+ * Allow ransack to treat nulls as always first or last by @mollerhoj in https://github.com/activerecord-hackery/ransack/pull/1226
129
+ * Consider ransack aliases when sorting by @faragorn and @waldyr in https://github.com/activerecord-hackery/ransack/pull/1223
130
+ * Fix non-casted array predicates by @danielpclark in https://github.com/activerecord-hackery/ransack/pull/1246
131
+ * Remove Squeel references from README by @Schwad in https://github.com/activerecord-hackery/ransack/pull/1249
132
+ * Remove part of the README that might lead to incorrect results by @RadekMolenda in https://github.com/activerecord-hackery/ransack/pull/1258
133
+ * ActiveRecord 7.0 support
134
+
135
+ ## 2.4.2 - 2021-01-23
136
+
137
+ * Enable RuboCop and configure GitHub Actions to run RuboCop by @yahonda in https://github.com/activerecord-hackery/ransack/pull/1185
138
+ * Add Ruby 3.0.0 support by @yahonda in https://github.com/activerecord-hackery/ransack/pull/1190
139
+ * Drop Ruby 2.5 or older versions of Ruby by @yahonda in https://github.com/activerecord-hackery/ransack/pull/1189
140
+ * Move bug report templates into ransack repository and run templates at CI by @yahonda in https://github.com/activerecord-hackery/ransack/pull/1191
141
+ * Allow Ransack to be tested with Rails main branch by @yahonda in https://github.com/activerecord-hackery/ransack/pull/1192
142
+
143
+ ## 2.4.1 - 2020-12-21
144
+
145
+ * Links to Tidelift subscription by @deivid-rodriguez in https://github.com/activerecord-hackery/ransack/pull/1178
146
+ * Enable GitHub Actions by @yahonda in https://github.com/activerecord-hackery/ransack/pull/1180
147
+ * Move security contact information to SECURITY.md by @deivid-rodriguez in https://github.com/activerecord-hackery/ransack/pull/1179
148
+ * Add `ActiveRecord::Base.ransack!` which raises error if passed unknown condition by @alipman88 in https://github.com/activerecord-hackery/ransack/pull/1132
149
+ * Add ability to config PostgreSQL ORDER BY ... NULLS FIRST or NULLS LAST by @itsalongstory in https://github.com/activerecord-hackery/ransack/pull/1184
150
+
151
+ ## 2.4.0 - 2020-11-27
17
152
 
18
- * Drop support for ActiveRecord older than 5.2.4.
19
- PR [1166](https://github.com/activerecord-hackery/ransack/pull/1166)
153
+ * Specify actual version of polyamorous, so we can release that separately by @gregmolnar in https://github.com/activerecord-hackery/ransack/pull/1101
154
+ * Only include necessary files in gem package by @tvdeyen in https://github.com/activerecord-hackery/ransack/pull/1104
155
+ * Test/Fix for subquery in Rails 5.2.4 by @stevenjonescgm in https://github.com/activerecord-hackery/ransack/pull/1112
156
+ * Polyamorous module by @varyonic in https://github.com/activerecord-hackery/ransack/pull/1113
157
+ * Remove duplicated rows by @sasharevzin in https://github.com/activerecord-hackery/ransack/pull/1116
158
+ * Fix Ruby 2.7 deprecation warnings by @terracatta in https://github.com/activerecord-hackery/ransack/pull/1121
159
+ * Fixes polymorphic joins. by @PhilCoggins in https://github.com/activerecord-hackery/ransack/pull/1122
160
+ * Drop support for activerecord older than 5.2.4 by @deivid-rodriguez in https://github.com/activerecord-hackery/ransack/pull/1166
161
+ * Adapt to quoting change in Rails by @deivid-rodriguez in https://github.com/activerecord-hackery/ransack/pull/1165
162
+ * Typo in docs by @brett-anderson in https://github.com/activerecord-hackery/ransack/pull/1155
163
+ * Add Rails 6.1 support by @deivid-rodriguez in https://github.com/activerecord-hackery/ransack/pull/1172
164
+ * Strip Leading & Trailing Whitespace Before Searching by @itsalongstory in https://github.com/activerecord-hackery/ransack/pull/1126
165
+ * Use unfrozen version of symbol to string by @fauno in https://github.com/activerecord-hackery/ransack/pull/1149
20
166
 
21
167
  ## 2.3.2 - 2020-01-11
22
168
 
@@ -200,7 +346,7 @@
200
346
  ignored when block parameter is specified.
201
347
  PR [#818](https://github.com/activerecord-hackery/ransack/pull/818).
202
348
 
203
- * No need pass some arugments to JoinAssociation#join_constraints in Rails 5.1.
349
+ * No need pass some arguments to JoinAssociation#join_constraints in Rails 5.1.
204
350
  PR [#814](https://github.com/activerecord-hackery/ransack/pull/814).
205
351
  Fixes [#807](https://github.com/activerecord-hackery/ransack/issues/807).
206
352
  Reference [rails/rails#28267](https://github.com/rails/rails/pull/28267)
data/CONTRIBUTING.md CHANGED
@@ -20,14 +20,14 @@ Steps:
20
20
  reported.
21
21
 
22
22
  2. **Check if the issue has been fixed** — try to reproduce it using the
23
- `master` branch in the repository.
23
+ `main` branch in the repository.
24
24
 
25
25
  3. **Isolate the real problem** — make sure the issue is really a bug in
26
26
  Ransack and not in your code or another gem.
27
27
 
28
28
  4. **Report the issue** by providing the link to a self-contained
29
- gist like [this](https://github.com/activerecord-hackery/ransack/blob/run_bug_report_templates/bug_report_templates/test-ransack-scope-and-column-same-name.rb) or
30
- [this](https://github.com/activerecord-hackery/ransack/blob/run_bug_report_templates/bug_report_templates/test-ransacker-arel-present-predicate.rb). Please use
29
+ gist like [this](https://github.com/activerecord-hackery/ransack/blob/main/bug_report_templates/test-ransack-scope-and-column-same-name.rb) or
30
+ [this](https://github.com/activerecord-hackery/ransack/blob/main/bug_report_templates/test-ransacker-arel-present-predicate.rb). Please use
31
31
  these code examples as a bug-report template for your Ransack issue!
32
32
 
33
33
  If you do not provide a self-contained gist and would like your issue to be reviewed, do provide at a minimum:
@@ -64,9 +64,7 @@ Here's a quick guide:
64
64
  2. Create a thoughtfully-named branch for your changes (`git checkout -b my-new-feature`).
65
65
 
66
66
  3. Install the development dependencies by running `bundle install`.
67
- To install rails other than latest (set in Gemfile): `RAILS='5-2-stable' bundle install`
68
-
69
- $ RAILS='5-2-stable' bundle install
67
+ To install rails other than latest (set in Gemfile): `RAILS='6-1-stable' bundle install`
70
68
 
71
69
  4. Begin by running the tests. We only take pull requests with passing tests,
72
70
  and it's great to know that you have a clean slate:
@@ -115,6 +113,9 @@ Here's a quick guide:
115
113
  $ git config --global user.email "contributor@example.com"
116
114
 
117
115
  10. Commit your changes (`git commit -am 'Add feature/fix bug/improve docs'`).
116
+ If your pull request only contains documentation changes, please remember
117
+ to add `[skip ci]` to the beginning of your commit message so the CI
118
+ test suite doesn't :runner: needlessly.
118
119
 
119
120
  11. If necessary, rebase your commits into logical chunks, without errors. To
120
121
  interactively rebase and cherry-pick from, say, the last 10 commits:
@@ -122,7 +123,7 @@ Here's a quick guide:
122
123
 
123
124
  12. Push the branch up to your fork on GitHub
124
125
  (`git push origin my-new-feature`) and from GitHub submit a pull request to
125
- Ransack's `master` branch.
126
+ Ransack's `main` branch.
126
127
 
127
128
  At this point you're waiting on us. We like to at least comment on, if not
128
129
  accept, pull requests within three business days (and, typically, one business
data/Gemfile CHANGED
@@ -3,7 +3,7 @@ gemspec
3
3
 
4
4
  gem 'rake'
5
5
 
6
- rails = ENV['RAILS'] || '6-0-stable'
6
+ rails = ENV['RAILS'] || '6-1-stable'
7
7
 
8
8
  rails_version = case rails
9
9
  when /\// # A path
@@ -15,7 +15,7 @@ rails_version = case rails
15
15
  end
16
16
 
17
17
  gem 'faker', '~> 2.0'
18
- gem 'sqlite3', ::Gem::Version.new(rails_version == 'main' ? '6.2.0.alpha' : rails_version) >= ::Gem::Version.new('6-0-stable') ? '~> 1.4.1' : '~> 1.3.3'
18
+ gem 'sqlite3', '~> 1.4.1'
19
19
  gem 'pg', '~> 1.0'
20
20
  gem 'pry', '~> 0.12.2'
21
21
  gem 'byebug'