Fetching contributors…
Cannot retrieve contributors at this time
245 lines (158 sloc) 6.56 KB


This page describes the changes that have been made to scoped_search over its history.

Please add an entry to the “Unreleased changes” section in your pull requests.

Unreleased changes

*Nothing yet*

Version 4.1.0

  • Add support for ActiveRecord and ActionView 5.1

  • Add support for Ruby 2.4

  • Support calling `search_for` on an STI subclass, returning only records of the subclass type. (#112)

  • Inherited search definitions: when defining search fields on both STI parents and subclasses, the subclass can now be searched on all fields, including those inherited from the parent. Only works for STI classes. (#135)

  • Add 'tomorrow' and 'from now' keywords for searching future dates (#162)

Version 4.0.0

  • Drop support for Ruby 1.9

  • Drop support for ActiveRecord 3, 4.0, and 4.1

  • `scoped_search` registration deprecates `:in` in favor of `:relation`, and `:alias` in favor of `aliases: [..]` to avoid clash with Ruby reserved words.

  • `sort` helper: any HTML options must now be given as a keyword argument, instead of the third argument, i.e. `html_options: {..}`

  • `sort` helper now takes hash of `url_options`, defaulting to an unfiltered `params`. Call `params.permit(..)` and pass in the result to safely generate URLs and prevent non-sanitized errors under Rails 5.

  • Auto completion: remove autocomplete_* JavaScript helpers in favor of jQuery method provided via asset pipeline. Call `$(..).scopedSearch` on autocomplete text boxes to activate.

  • Auto completion: escape quotes in listed values (#138)

  • Add :validator option to definitions to validate user's search inputs

  • Fix incorrect association conditions being used on through relations

  • Use `#distinct` on Rails 4+

  • Test Rails 5.0.x releases, test latest AR adapters

Version 3.3.0

  • Support for ActiveRecord 5.0

Version 3.2.0

  • In MySQL, case sensitivity is now determined by the collation of the column, and is no longer enforced in the SQL query. This allows MySQL to use indices for queries.

  • Fix auto-completer for numeric fields.

Version 3.1.0

  • Add support for ActiveRecord 4.2.

  • Bump AtiveRecord requirement to 3.2.

Version 3.0.1

  • Security fix in parsing dates.

Version 3.0.0

  • Add support for ActiveRecord 4.1

  • Drop support for Ruby 1.8

  • Drop support for ActiveRecord 2.

  • No longer require jQuery UI automatically; you have to do this yourself now.

  • Auto completion: deprecate javascript helpers in favor of asset pipeline.

  • Remove some deprecated 1.x APIs.

  • Upgraded to RSpec 3.

  • Extract Oracle query builder enhancements to plugin gem:

  • Extract H2 query builder enhancements to plugin gem:

Version 2.7.1

  • Fix order SQL generation issue on PostgreSQL for the autocompleter.

Version 2.7.0

  • Allow setting a default sort order

  • Fix a sorting bug for field names starting with `desc`.

  • SQL generation fixes.

  • Improve test coverage

Version 2.6.5

  • Allow disabling certain fields for autocompletion.

Version 2.6.4

  • jQuery 1.9 support for automplete helpers.

Version 2.6.3

  • Bugfixes in querying plymorphic has many through relations.

Version 2.6.2

  • Add support for querying plymorphic has many through relations.

Version 2.6.1

  • Fix a SQL generation bug.

Version 2.6.0

  • Improve logic for querying one to many relations.

  • Add a Railtie for better Rails integration.

  • Project infrastructure changes: remove infinity test, update LICENSE

Version 2.5.1

  • Fixes to asset pipeline for auto completer UI helpers.

  • Use bundler for gem release management

Version 2.5.0

  • Add support for ActiveRecord 4.0

  • Add support for Ruby 2.0

  • Fix encoding bug

Version 2.4.1

  • Add asset pipeline support for autocompleter UI helpers

  • Fix query parser bug.

Version 2.4.0

  • Raise an appropriate exception when referring to a database field that does not exists.

  • Drop support for GROUP BY; just use DISTINCT for these use cases

  • Add support for PostgreSQL full text search.

  • Many bugfixes.

  • Improved specs.

  • Add Travis CI testing for all supported databases.

Version 2.3.7

  • Add support for IN and NOT IN queries.

  • Bug fix in SQL generation.

Version 2.3.6

  • Minor bugfixes in auto completer.

Version 2.3.5

  • Small bugfixes in auto completer.

Version 2.3.4

  • Small bugfixes.

Version 2.3.3

  • Add filtering and limiting support to autocompleter.

  • Documentation updates

Version 2.3.2


Version 2.3.1

  • Raise exception when trying to run an invalid query.

  • Several bug fixes in SQL generation

  • Several other minor bugfixes.

Version 2.3.0

  • Added support for querying key-value relations.

  • Improved querying of relations.

  • Add support for syntax and value autocompletion of queries.

  • Add Rails UI helpers for autocompletion

  • Localized handling of dates

  • Fixed some Ruby 1.9 compatibility issues

  • Test coverage enhancements

  • Improved project infrastructure with infinity test and bundler.

Version 2.2.1

  • Fix a parsing bug that would cause exceptions to be raised on certain queries.

  • Upgrade to RSpec 2

  • Fixed some Ruby 1.9 compatibility issues

Version 2.2.0

  • Improved gem release management rake tasks.

Version 2.1.1

  • Better handling of NULL values when evaluating queries.

  • Improved support for ActiveRecord 3.0.

  • Added an incomplete Oracle adapter.

Version 2.1.0

  • Support for multiple search profiles.

  • Documentation improvements.

Version 2.0.1

  • Improved project infrastructure and documentation

Version 2.0

  • Complete rewrite, to support a more complex query language. It now supports operators, logical constructs including parentheses, NULL checks, searching in a single field only.

  • More fine-grained control over in what fields should be searched by using a new definition syntax. (The old syntax is still available for backwards compatibility.

  • Migrated testsuite from Test::Unit to RSpec.

Version 1.2

  • Ruby 1.9 compatibility

Version 1.1

  • Support for integer fields

  • RCov integrated in testuite

Version 1.0

  • RDoc documentation

  • Improved testsuite

Version 0.7

  • Use the ILIKE operator in PostgreSQL for case insensitive search.

  • Tests can be run on different DBMSs.

Version 0.6

  • Search in associated models as well using ActiveRecord associations.

Version 0.3

  • Detection of column types so they can be handled properly

  • Date based queries supported on date and time fields

Version 0.2

  • OR keyword supported in query language

Version 0.1.0

  • Initial version