Sunspot 0.9 released

Sunspot version 0.9 has been released!


Sunspot is an expressive library for indexing and searching persistent
objects using the Solr search server. All interaction with Solr is done
a pure-Ruby API of intuitive DSLs.


Sunspot provides an intuitive abstraction layer for the following Solr

  • Dismax-based fulltext search with field and document boost
  • Construction of complex queries with scoping by scalar attributes
  • Field, date, and query faceting
  • Ordering by field; random ordering

In addition, Sunspot makes search easier with the following features:

  • Seamlessly integrate Sunspot with any persistent storage using
    adapter structure
  • Access objects referenced by facets on fields containing a foreign key
  • Combine multiple calls to index documents into a single batch request
  • Index data retrieved from existing methods or blocks for
    search-specific data


  • RSolr
  • Daemons
  • OptiFlag
  • Haml
  • Java


For an introduction to Sunspot, see


For a full treatment of the changes in Sunspot v0.9, see

== 0.9.0 2009-07-21

  • Use Dismax parser for keyword search
  • Field and document boosting
  • Specify which fields to search in keyword search
  • Allow indexing of multiple values in text fields
  • Access keyword relevance score in Hit objects
  • Allow stored fields, retrieve stored values from Hit objects
  • Support more values in shorthand restrictions
  • Disjunctions and conjunctions
  • Random ordering
  • Control all options for field facets
  • Time range facets
  • Get referenced objects from facets on foreign keys
  • Facet by class
  • Batch indexing
  • New Date field type
  • Direct access to data accessors
  • Executable to configure production Solr instances
  • Replace solr-ruby with RSolr
  • Remove accidental ActiveSupport dependency

== 0.8.9 2009-06-23

  • Fix OrderedHash bug in older versions of ActiveSupport

== 0.8.8 2009-06-15

  • Escape type names to support namespaced classes
  • Fix bug with anonymous modules in Ruby 1.9

== 0.8.7 2009-06-10

  • Add --pid-dir option for sunspot-solr executable

== 0.8.5 2009-06-09

  • Added dependencies for sunspot-solr executable to gem dependencies
  • Search for adapters using class ancestors rather than superclasses

== 0.8.3 2009-06-03

  • Index objects passed as a collection in a single HTTP request

== 0.8.2 2009-05-27

  • Allow specification of Solr home when using sunspot-solr

== 0.8.1 2009-05-26

  • Add Search#execute! to public API

== 0.8.0 2009-05-22

  • Access query API directly; instantiate search without running it
  • Dynamic fields
  • Search blocks can be evaluated in calling context

== 0.7.3 2009-05-06

  • Better exception handling when class doesn’t have adapter/setup

== 0.7.2 2009-04-29

  • Dirty sessions

== 0.7.1 2009-04-29

  • Removed extlib dependency from gemspec

== 0.7.0 2009-04-28

  • Less magic in the DSL
  • Restrict by empty values
  • Negative scoping using without() method
  • Exclusion by object identity using without(instance)
  • Support for faceting
  • Explicit commits
  • Boolean field type
  • Attribute field flexibility
  • Virtual field blocks can be evaluated in calling context
  • Order available by multiple fields
  • New adapter API
  • Got rid of builder API
  • Full documentation

== 0.0.2 2009-02-14

  • Run sunspot’s built-in Solr instance using
    sunspot-solr executable
  • Search hash interpretation delegated to
    Builder object

== 0.0.1 2008-12-11

  • Initial release
  • Define indexing for any class using DSL
  • Search indexed classes using DSL

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs