- Add Rails 7.1.0 support by @yuki24 in activerecord-hackery#1439
- Fix wrong table aliases in Rails 6.1 by @oneiros in activerecord-hackery#1447
- Drop Ruby 2.7 support by @deivid-rodriguez in activerecord-hackery#1449
- Update blog post link by @meg-gutshall in activerecord-hackery#1425
- Add namespaced example of Polymorphic search by @craigmcnamara in activerecord-hackery#1422
- Update sorting example to be self-contained by @kinduff in activerecord-hackery#1442
- Minor updates for Rails 7.1 by @deivid-rodriguez in activerecord-hackery#1448
- Don't mention Ruby compatibility in contribution instructions by @deivid-rodriguez in activerecord-hackery#1452
- Bump @sideway/formula from 3.0.0 to 3.0.1 in /docs by @dependabot in activerecord-hackery#1417
- Bump webpack from 5.74.0 to 5.76.1 in /docs by @dependabot in activerecord-hackery#1412
- Bump semver from 5.7.1 to 5.7.2 in /docs by @dependabot in activerecord-hackery#1431
- Bump @babel/traverse from 7.18.2 to 7.23.2 in /docs by @dependabot in activerecord-hackery#1446
- Bump postcss from 8.4.14 to 8.4.31 in /docs by @dependabot in activerecord-hackery#1443
- Bump dns-packet from 5.3.1 to 5.6.1 in /docs by @dependabot in activerecord-hackery#1450
- Test with Ruby 3.2 by @deivid-rodriguez in activerecord-hackery#1451
- Misc CI bumps by @deivid-rodriguez in activerecord-hackery#1453
- RuboCop tweaks by @deivid-rodriguez in activerecord-hackery#1454
- [SECURITY] Require explicit allowlisting of attributes and associations by @deivid-rodriguez in activerecord-hackery#1400
- Remove Polyamorous entrypoint by @scarroll32 in activerecord-hackery#1370
- Remove dead MongoDB code by @scarroll32 in activerecord-hackery#1345
- Add support for default predicates by @p8 in activerecord-hackery#1384
- Ignore
ActiveModel::RangeError
in Ransack conditions by @JunichiIto in activerecord-hackery#1340 - Fix crash when using
q=string
as parameter by @stereobooster in activerecord-hackery#1374 - Prevent changing host through params by @AndersGM in activerecord-hackery#1391
- Fix broken documentation link by @cpgo in activerecord-hackery#1332
- Remove more old wiki references by @deivid-rodriguez in activerecord-hackery#1333
- Improve some wording and correct some typos by @ydah in activerecord-hackery#1336
- Add warning about necessary authorization by @AmShaegar13 in activerecord-hackery#1367
- Fix required Ruby and Rails version in README by @tagliala in activerecord-hackery#1389
- Implement CodeQL by @scarroll32 in activerecord-hackery#1334
- Code quality improvements by @scarroll32 in activerecord-hackery#1371
- Refactor adapters by @scarroll32 in activerecord-hackery#1348
- Fix typo: teh -> the by @jdufresne in activerecord-hackery#1387
- Fix broken link by @maful in activerecord-hackery#1394
- Bump docusaurus by @deivid-rodriguez in activerecord-hackery#1338
- Update dependencies by @scarroll32 in activerecord-hackery#1342
- Improve CI by @scarroll32 in activerecord-hackery#1351
- Improve CONTRIBUTING.md by @scarroll32 in activerecord-hackery#1347
- Add links to GitHub Discussions by @scarroll32 in activerecord-hackery#1353
- Bump terser from 5.14.0 to 5.14.2 in /docs by @dependabot in activerecord-hackery#1355
- Bump loader-utils from 2.0.2 to 2.0.3 in /docs by @dependabot in activerecord-hackery#1372
- Bump loader-utils from 2.0.3 to 2.0.4 in /docs by @dependabot in activerecord-hackery#1378
- Upgrade some documentation dependencies by @deivid-rodriguez in activerecord-hackery#1379
- Upgrade local search plugin too by @deivid-rodriguez in activerecord-hackery#1380
- Bump json5 from 2.2.1 to 2.2.3 in /docs by @dependabot in activerecord-hackery#1390
- Bump ua-parser-js from 0.7.31 to 0.7.33 in /docs by @dependabot in activerecord-hackery#1397
- Bump some doc deps by @deivid-rodriguez in activerecord-hackery#1398
- Bump http-cache-semantics from 4.1.0 to 4.1.1 in /docs by @dependabot in activerecord-hackery#1401
-
Add search functionality to documentation site. PR 1329
-
Fix contributing URLs and syntax highlight in
README.md
. PR 1326 -
Cast PostgreSQL's
timestamptz
columns to time. PR 1325 -
Add Ruby and ERB syntax highlighting support to documentation site. PR 1324
-
Fix a wrong link in
CHANGELOG.md
. PR 1323 -
Fix links to bug report templates in
CONTRIBUTING.md
. PR 1321
-
Fix predicate name in "Using Predicates" documentation page. PR 1313
-
Drop Ruby 2.6 support. PR 1311
-
Allow Ransack to be used with Rails 7.1.0.alpha. PR 1309
-
Put contributor list last in documentation site. PR 1308
-
Add
acts-as-taggable-on
and polymorphic searches to documentation. PR 1306 PR 1312 -
Add full link to issue about merging searches to documentation. PR 1305
-
Fix
:data
option tosort_link
being incorrectly appended to the generated link query parameters. PR 1301 -
Fix "Edit this page" links in documentation site PR 1303
-
Auto deploy documentation site after merging PRs PR 1302
-
Add list of former wiki contributors to documentation site PR 1300
-
Reduce gem package size PR 1297
-
Move documentation into Docusaurus. PR 1291
-
[BREAKING CHANGE] Remove deprecated
#search
method. PR 1147 -
Allow scopes that define string SQL joins. PR 1225
-
Improve
sort_link
documentation. PR 1290 -
Deprecate passing two trailing hashes to
sort_link
, for example:sort_link(@q, :bussiness_name, "bussines_name", {}, class: "foo")
Pass a single hash with all options instead. PR 1289
-
Fix
:class
option tosort_link
not being passed to the generated link correctly when no additional options are passed. For example:sort_link(@q, :bussiness_name, class: "foo")
PR 1288
-
Evaluate
ransackable_scopes
before attributes when building the query. PR 759
-
Fix regression when joining a table with itself. PR 1275
-
Drop support for ActiveRecord older than 6.0.4. PR 1276
- Document release process by @scarroll32 in activerecord-hackery#1199, activerecord-hackery#1200.
- Support Rails 7 by @yahonda in activerecord-hackery#1205, activerecord-hackery#1209, activerecord-hackery#1234, activerecord-hackery#1230, activerecord-hackery#1266
- Fix for
ActiveRecord::UnknownAttributeReference
in ransack by @TechnologyHypofriend in activerecord-hackery#1207 - Make gem compatible with old polyamorous require by @rtweeks in activerecord-hackery#1145
- Adding swedish translations by @johanandre in activerecord-hackery#1208
- Document how to do case insensitive searches by @scarroll32 in activerecord-hackery#1213
- Add the ability to disable whitespace stripping for string searches by @DCrow in activerecord-hackery#1214
- Fix
:default
option inTranslate.attribute
method by @coreyaus in activerecord-hackery#1218 - Fix typo in README.md by @d-m-u in activerecord-hackery#1220
- Fix another typo in README.md by @plan-do-break-fix in activerecord-hackery#1221
- Fix several documentation typos @wonda-tea-coffee in activerecord-hackery#1233
- Allow ransack to treat nulls as always first or last by @mollerhoj in activerecord-hackery#1226
- Consider ransack aliases when sorting by @faragorn and @waldyr in activerecord-hackery#1223
- Fix non-casted array predicates by @danielpclark in activerecord-hackery#1246
- Remove Squeel references from README by @Schwad in activerecord-hackery#1249
- Remove part of the README that might lead to incorrect results by @RadekMolenda in activerecord-hackery#1258
- ActiveRecord 7.0 support
- Enable RuboCop and configure GitHub Actions to run RuboCop by @yahonda in activerecord-hackery#1185
- Add Ruby 3.0.0 support by @yahonda in activerecord-hackery#1190
- Drop Ruby 2.5 or older versions of Ruby by @yahonda in activerecord-hackery#1189
- Move bug report templates into ransack repository and run templates at CI by @yahonda in activerecord-hackery#1191
- Allow Ransack to be tested with Rails main branch by @yahonda in activerecord-hackery#1192
- Links to Tidelift subscription by @deivid-rodriguez in activerecord-hackery#1178
- Enable GitHub Actions by @yahonda in activerecord-hackery#1180
- Move security contact information to SECURITY.md by @deivid-rodriguez in activerecord-hackery#1179
- Add
ActiveRecord::Base.ransack!
which raises error if passed unknown condition by @alipman88 in activerecord-hackery#1132 - Add ability to config PostgreSQL ORDER BY ... NULLS FIRST or NULLS LAST by @itsalongstory in activerecord-hackery#1184
- Specify actual version of polyamorous, so we can release that separately by @gregmolnar in activerecord-hackery#1101
- Only include necessary files in gem package by @tvdeyen in activerecord-hackery#1104
- Test/Fix for subquery in Rails 5.2.4 by @stevenjonescgm in activerecord-hackery#1112
- Polyamorous module by @varyonic in activerecord-hackery#1113
- Remove duplicated rows by @sasharevzin in activerecord-hackery#1116
- Fix Ruby 2.7 deprecation warnings by @terracatta in activerecord-hackery#1121
- Fixes polymorphic joins. by @PhilCoggins in activerecord-hackery#1122
- Drop support for activerecord older than 5.2.4 by @deivid-rodriguez in activerecord-hackery#1166
- Adapt to quoting change in Rails by @deivid-rodriguez in activerecord-hackery#1165
- Typo in docs by @brett-anderson in activerecord-hackery#1155
- Add Rails 6.1 support by @deivid-rodriguez in activerecord-hackery#1172
- Strip Leading & Trailing Whitespace Before Searching by @itsalongstory in activerecord-hackery#1126
- Use unfrozen version of symbol to string by @fauno in activerecord-hackery#1149
- Breakfix to bump Polyamorous
-
Drop support for Active Record 5.0, 5.1, and 5.2.0. PR #1073
-
Drop support for rubies under 2.3. PR #1070
... and others
-
Arabic translations PR 979
-
Rails 6 PR 1027 vrodokanakis
-
Make polyamorous a separate gem PR 1002
-
Catalan translations PR1007 roslavych
-
Don't escape period characters with wildcard searches in mysql2 PR 1013 daflip
-
Farsi translations PR 1030
-
Finnish translations PR 1049
-
Fix wrong table alias when using nested join. for ActiveRecord >= 5.2 PR 374
hiichan
-
Add
arabic
translation activerecord-hackery#979 -
Deprecate #search PR 975
-
Add support for sorting by scopes PR 973
Diego Borges
-
Added a new logo for Ransack PR 972
Anıl Kılıç, Greg Molnar
-
Greek translations PR 971 PR 960
Sean Carroll, Greg Molnar
-
README improvements PR 963
tommaso1
-
Bulgarian translations PR 961
Sean Carroll
-
README improvements PR 956
Alex Konoval
-
Remove lib/ransack/adapters/active_record/compat.rb PR 954
Ryuta Kamizono
-
Remove unused aliases PR 953
Ryuta Kamizono
-
Don't return association if table is nil PR 952
Christian Gregg
-
Add support for Active Record 5.2.1 PR #938
-
Fix sort with joins on existing association PR #937
-
Add the ability to skip arg sanitization on a per scope basis. Using
ransackable_scopes_skip_sanitize_args
, users can define a list of scopes which will bypass parameter sanitization. This allows passing 0, 1, t, f, etc. to a scope as an actual parameter. PR #933 -
Drop support for Active Record < 5.0. PR #929
-
Extract mongoid support to a separate gem. PR #928
-
Absorb polyamorous PR #927
-
Fix broken monkey patch of #form_with PR #922
-
Fix multiple database support PR #893
-
Updated Dutch translations PR #887
-
Fixed no method error 'asc' for Rails 4.2 PR #885
-
Rails 5.2 support PR #868
-
Lock pg gem to 0.21 to support older releases
-
Warnings cleanup PR #867
-
Wildcard escaping PR [#866]
- Added Turkish Translations PR #835.
-
Cast Postgres money type to float. PR #823.
-
Fix the bug in sort_link, which causes the multiple fields option to be ignored when block parameter is specified. PR #818.
-
No need pass some arguments to JoinAssociation#join_constraints in Rails 5.1. PR #814. Fixes #807. Reference rails/rails#28267 and rails/rails#27851.
-
Add a config option to customize the up and down arrows used for direction indicators in Ransack sort links. PR #726.
Garett Arrowood
-
Add ability to turn off sanitization of custom scope arguments. PR #742.
Garett Arrowood
-
Use class attributes properly so that inheritance is respected. PR #717. This fixes two bugs:
-
In the Mongoid adapter, subclasses were not properly inheriting their parents' Ransack aliases because each class defined its own set of aliases.
-
In the Active Record adapter, Ransack aliases were defined in such a way that the parent's (and grandparent's, etc.) aliases were overwritten by the child, meaning that all aliases were ultimately kept on
ActiveRecord::Base
. This had the unfortunate effect of enforcing uniqueness of Ransack alias names across all models rather than per model. Depending on the load order of models, earlier definitions of an alias in other models were clobbered.
Steve Richert (laserlemon)
-
-
Use
ActiveSupport.on_load
hooks to include Ransack in Active Record, avoiding autoloading the constant too soon. PR #719. Reference: [This comment in rails#23589] (rails/rails#23589 (comment)).Yuji Yaginuma (y-yagi)
-
Fix empty attribute_fields regression in advanced search mode introduced by 235eae3. Closes #701. Commit 2839acf.
Jon Atack, Jay Dorsey, Stefan Haslinger, Igor Kasyanchuk
-
Add
sort_url
view helper that returns only the url of asort_link
. PR #706.amatotsuji
-
Fix
rake console
to run a command-line console with ransack + seed data. Commits 2cc781e, f2e85ad, 6a059ba.Jon Atack
-
Fix returned value of
Ransack::Nodes::Condition#format_predicate
. PR #692.Masahiro Saito
-
Better test coverage on passing arrays to ransackers. Commit 98df2c5.
Jon Atack
-
Fix missing Ransack::Constants::ASC constant. Commit aece23c.
Jon Atack
-
Support Mongoid 5. PR #636, commit 9e5faf4.
Josef Šimánek
-
Add optional block argument for the
sort_link
method. PR #604.Andrea Dal Ponte
-
Add
ransack_alias
to allow users to customize the names for long ransack field names. PR #623.Ray Zane
-
Add support for searching on attributes that have been added to Active Record models with
alias_attribute
(Rails >= 4 only). PR #592, commit 549342a.Marten Schilstra
-
Add ability to globally hide sort link order indicator arrows with
Ransack.configure#hide_sort_order_indicators = true
. PR #577, commit 95d4591.Josh Hunter, Jon Atack
-
Add test for
ActionController:Parameter
object params insort_link
to ensure Ransack is handling the Rails 5 changes correctly. Commit b1cfed8.Ryan Wood
-
Add failing tests to facilitate work on issue #566 of passing boolean values to search scopes. PR #575.
Marcel Eeken
-
Add i18n locale files:
-
Taiwanese Hokkien/Mandarin (
zh-TW.yml
). PR #674. Sibevin Wang -
Danish (
da.yml
). PR #663. Kasper Johansen -
Brazilian Portuguese (
pt-BR.yml
). PR #581. Diego Henrique Domingues -
Indonesian (Bahasa) (
id.yml
). PR #612. Adam Pahlevi Baihaqi -
Japanese (
ja.yml
). PR #622. Masanobu Mizutani
-
In
FormHelper::SortLink#parameters_hash
, convertparams#to_unsafe_h
only if Rails 5, and add tests. Commit 14e66ca.Jon Atack
-
Respect negative conditions for collection associations and fix Mongoid compat. PR #645.
Andrew Vit
-
Ensure conditions differing only by ransacker_args aren't filtered out. PR #665.
Andrew Porterfield
-
Fix using aliased attributes in association searches, and add a failing spec. PR #602.
Marten Schilstra
-
Replace Active Record
table_exists?
API that was deprecated here in Rails 5. Commit c9d2297.Jon Atack
-
Adapt to changes in Rails 5 where AC::Parameters composes a HWIA instead of inheriting from Hash starting from Rails commit rails/rails@14a3bd5. Commit ceafc05.
Jon Atack
-
Fix test
#sort_link with hide order indicator set to true
to fail properly (4f65b09). This spec, added in #473, tested the presence of the attribute name instead of the absence of the order indicators and did not fail when it should.Josh Hunter, Jon Atack
-
Fix rspec-mocks
stub
deprecation warnings when running the tests. Commit 600892e.Jon Atack
-
Revert f858dd6. Fixes #553 performance regression with the SQL Server adapter.
sschwing3
-
Fix invalid Chinese I18n locale file name by replacing "zh" with "zh-CN". PR #590.
Ethan Yang
-
Memory/speed perf improvement: Freeze strings in array global constants and partially move from using global string constants to frozen strings (381a83c and ce114ec).
Jon Atack
-
Escape underscore
_
wildcard characters with PostgreSQL and MySQL. PR #584.Igor Dobryn
-
Refactor
Ransack::Adapters
from conditionals to classes (94a404c).Jon Atack
-
Add Mongoid support for referenced/embedded relations. PR #498. TODO: Missing spec coverage! Add documentation!
Penn Su
-
Add German i18n locale file (
de.yml
). PR #537.Philipp Weissensteiner
-
Fix #499 and #549. Ransack now loads only Active Record if both Active Record and Mongoid are running to avoid the two adapters overriding each other. This clarifies that Ransack currently knows how to work with only one database adapter active at a time. PR #541.
ASnow (Большов Андрей)
-
Fix #299
attribute_method?
parsing for attribute names containing_and_
and_or_
. Attributes named likefoo_and_bar
orfoo_or_bar
are recognized now instead of running failing checks forfoo
andbar
. PR #562.Ryohei Hoshi
-
Fix a time-dependent test failure. When the database has
default_timezone = :local
(system time) and theTime.zone
is set to elsewhere, thenDate.current
does not match what the query produces for the stored timestamps. Resolved by setting everything to UTC. PR #561.Andrew Vit
-
Avoid overwriting association conditions with default scope in Rails 3. When a model with default scope was associated with conditions (
has_many :x, conditions: ...
), the default scope would overwrite the association conditions. This patch ensures that both sources of conditions are applied. Avoid selecting records from joins that would normally be filtered out if they were selected from the base table. Only applies to Rails 3, as this issue was fixed since Rails 4. PR #560.Andrew Vit
-
Fix RSpec
its
method deprecation warning: "Use of rspec-core's its method is deprecated. Use the rspec-its gem instead" (c09aa17). -
Fix deprecated RSpec syntax in
grouping_spec.rb
(ba92a0b).Jon Atack
-
Upgrade gemspec dependencies: MySQL2 from '0.3.14' to '0.3.18', and RSpec from '
> 2.14.0' to '> 2' which loads 2.99 (000cd22). -
Upgrade spec suite to RSpec 3
expect
syntax backward compatible with RSpec 2.9 (87cd36d and d296caa). -
Various documentation updates.
Jon Atack
-
Add the Ruby version to the the header message that shows the database, Active Record and Arel versions when running tests.
-
Add Code Climate analysis.
Jon Atack
-
An improved fix for the "undefined method
model_name
for Ransack::Search" issue #518 affecting Rails 4.2.1 and 5.0.0. This fix allows us to remove the ActionView patch in Ransack version 1.6.4.Gleb Mazovetskiy
-
Fix an erroneous reference in
ActiveRecord::Associations::JoinDependency
to a version-dependent Active Record reference, and replace it with a better, more reliable one defined in Polyamorous. As this class lives inside anActiveRecord
module, the reference needs to be absolute in order to properly point to the AR class.Nahuel Cuesta Luengo
-
Fix RubyGems YARD rendering of the README docs.
Jon Atack
-
Upgrade Polyamorous dependency to version 1.2.0, which uses
Module#prepend
instead ofalias_method
for hooking into Active Record (with Ruby 2.x).Jon Atack
-
[WIP/experimental] Add compatibility with Rails 5/master and Arel 7.
-
Update the Contributing Guide with detailed steps for contributing to Ransack.
-
Broaden the test suite database options in
schema.rb
and add code documentation. -
Improve the header message when running tests.
Jon Atack
-
Allow
:wants_array
to be set tofalse
in the predicate options (#32).Michael Pavling
-
Add a failing spec for issue #374.
Jamie Davidson, Jon Atack
-
Stop relying on
Active Record::relation#where_values
which are deprecated in Rails 5. -
Make the test for passing search arguments to a ransacker (
ransacker_args
) work correctly with Sqlite3.Jon Atack
-
Stop CI testing for Rails 3.0 to reduce the size of the Travis test matrix.
Jon Atack
-
ActionView patch to maintain compatibility with Rails 4.2.1 released today.
Jon Atack
-
Enable scoping I18n by 'ransack.models' (#514).
nagyt234
-
Add ransacker arguments (#513).
Denis Tataurov, Jon Atack
-
Fix a regression (#496) caused by ee571fe where passing a multi-parameter attribute (like
date_select
) raisedRuntimeError: can't add a new key into hash during iteration
, and add a regression spec for the issue.Nate Berkopec, Jon Atack
-
Update travis-ci to no longer test Rails 3.1 with Ruby 2.2 and speed up the test matrix.
-
Refactor Nodes::Condition.
Jon Atack
-
Fix a regression (#494) where passing an array of routes to
search_form_for
no longer worked, and add a failing/passing test that would have caught the issue.Daniel Rikowski, Jon Atack
-
Fix a regression with using
in
predicates caused by PR #488) and add a test. -
README improvements to clarify
sort_link
syntax with associations and Ransack#search vs #ransack. -
Default the Gemfile to Rails 4-2-stable.
Jon Atack
-
Add support for using Ransack with
Mongoid 4.0
without associations (PR #407).Zhomart Mukhamejanov
-
Add support and tests for passing stringy booleans for ransackable scopes (PR #460).
Josh Kovach
-
Add an sort_link option to not display sort order indicator arrows (PR #473).
Fred Bergman
-
Numerous documentation improvements to the README, Contributing Guide and wiki.
Jon Atack
-
Fix passing arrays to ransackers with Rails 4.2 / Arel 6.0 (pull requests #486 and #488).
Idean Labib
-
Make
search_form_for
's default:as
option respect the custom search key if it has been set (PR #470). Prior to this change, if you set a customsearch_key
option in the Ransack initializer file, you'd have to also pass anas: :whatever
option to all of the search forms. Fixes #92.Robert Speicher
-
Fix sorting on polymorphic associations (missing downcase) (PR #467).
Eugen Neagoe
-
Fix Rails 5 / Arel 5 compatibility after the Arel and Active Record API changed.
-
Fix and add tests for sort_link
default_order
parsing if the option is set as a string instead of symbol. -
Fix and add a test to handle
nil
in options passed to sort_link. -
Fix #search method name conflicts in the README.
Jon Atack
-
Refactor and DRY up FormHelper#SortLink. Encapsulate parsing into a Plain Old Ruby Object with few public methods and small, private functional methods. Limit mutations to explicit methods and mutate no ivars.
-
Numerous speed improvements by using more specific Ruby methods like:
Hash#each_key
instead ofHash#keys.each
#none?
instead ofselect#empty?
#any?
instead of#select
followed by#any?
#flat_map
instead of#flatten
followed by#map
!include?
instead of#none?
-
Replace
string#freeze
instances with top level constants to reduce string allocations in Ruby < 2.1. -
Remove unneeded
Ransack::
namespacing on most of the constants. -
In enumerable methods, pass a symbol as an argument instead of a block.
-
Update Travis-ci for Rails 5.0.0 and 4-2-stable.
-
Update the Travis-ci tests and the Gemfile for Ruby 2.2.
-
Replace
#search
with#ransack
class methods in the README and wiki code examples. Enabling the#search
alias by default may possibly be deprecated in the next major release (Ransack v.2.0.0) to address #369.Jon Atack
-
Add base specs for search on fields with
_start
and_end
. -
Add a failing spec for detecting attribute fields containing
_and_
that needs to be fixed. Attribute names containing_and_
and_or_
are still not parsed/detected correctly.Jon Atack
-
Fix a regression caused by incorrect string constants in
context.rb
.Kazuhiro Nishiyama
-
Remove duplicate code in
spec/support/schema.rb
.Jon Atack
-
Add support for multiple sort fields and default orders in Ransack
sort_link
helpers (PR #438).Caleb Land, James u007
-
Add tests for
lteq
,lt
,gteq
andgt
predicates. They are also tested in Arel, but testing them in Ransack has proven useful to detect issues.Jon Atack
-
Add tests for unknown attribute names.
Joe Yates
-
Add tests for attribute names containing
_or_
and_and_
.Joe Yates, Jon Atack
-
Add tests for attribute names ending with
_start
and `_end``.Jon Atack, Timo Schilling
-
Add tests for
start
,not_start
,end
andnot_end
predicates, with emphasis on cases when attribute names end with_start
and_end
.Jon Atack
-
Fix a regression where form labels for attributes through a
belongs_to
association without a translation for the attribute in the locales file would cause a "no implicit conversion of nil into Hash" crash instead of falling back on the attribute name. Added test coverage.John Dell, Jon Atack, jasdeepgosal
-
Fix the
form_helper date_select
spec that was failing with Rails 4.2 and master.Jon Atack
-
Improve
attribute_method?
parsing for attribute names containing_and_
and_or_
. Attributes named likefoo_and_bar
orfoo_or_bar
are recognized now instead of running failing checks forfoo
andbar
. CORRECTION October 28, 2014: this feature is still not working!Joe Yates
-
Improve
attribute_method?
parsing for attribute names ending with a predicate like_start
and_end
. For instance, afoo_start
attribute is now recognized instead of raising a NoMethodError.Timo Schilling, Jon Atack
-
Reduce object allocations and memory footprint (with a slight speed gain as well) by extracting commonly used strings into top level constants and replacing calls to
#try
methods with simple nil checking.Jon Atack
-
Fix README markdown so RubyGems documentation picks up the formatting correctly.
Jon Atack
-
Add support for Rails 4.2.0! Let us know if you encounter any issues.
Xiang Li
-
Add
not_true
andnot_false
predicates and update the "Basic Searching" wiki. Fixes #123, #353.Pedro Chambino
-
Add Romanian i18n locale file (
ro.yml
).Andreas Philippi
-
Add new documentation in the README explaining how to group queries by
OR
instead of the defaultAND
using them: 'or'
combinator. -
Add new documentation in the README and in the source code comments explaining in detail how to handle whitelisting/authorization of attributes, associations, sorts and scopes.
-
Add new documentation in the README explaining in more detail how to use scopes for searching with Ransack.
-
Begin a CHANGELOG.
Jon Atack
-
Fix singular/plural Active Record attribute translations.
Andreas Philippi
-
Fix the params hash being modified by
Search.new
and the Ransack scope.Daniel Rikowski
-
Apply default scope conditions for association joins (fix for Rails 3).
Avoid selecting records from joins that would normally be filtered out if they were selected from the base table. Only applies to Rails 3, as this issue was fixed in Rails 4.
Andrew Vit
-
Fix incoherent code examples in the README Associations section that sometimes used
@q
and other times@search
.Jon Atack
-
Refactor Ransack::Translate.
-
Rewrite much of the Ransack README documentation, including the Associations section code examples and the Authorizations section detailing how to whitelist attributes, associations, sorts and scopes.
Jon Atack
-
Add search scopes by popular demand. Using
ransackable_scopes
, users can define whitelists for allowed model scopes on a parent table. Not yet implemented for associated models' scopes; scopes must be defined on the parent table.Gleb Mazovetskiy, Andrew Vit, Sven Schwyn
-
Add
JOINS
merging. -
Add
OR
grouping on base search. -
Allow authorizing/whitelisting attributes, associations, sorts and scopes.
-
Improve boolean predicates’ handling of
false
values. -
Allow configuring Ransack to raise on instead of ignore unknown search conditions.
-
Allow passing blank values to search without crashing.
-
Add wildcard escaping compatibility for SQL Server databases.
-
Add various I18n translations.