** Description **
Firstly for those who don’t know, Ferret is a full-text search library
which makes adding search to your application a breeze. It’s much
faster than MySQL full-text search as well most other search libraries
out there. It allows you to do Boolean (+ruby + rails -jewelry) and
phrase queries (“the quick brown fox”) as well as some more unusual
queries like fuzzy queries (misspelling~ matches mispeling or
misspellng), wildcard queries (Aus?ral*), range queries
(date:<=20050601) and a lot more. Ferret also now offers query result
highlighting and excerpting.
** Announcement **
I’ve just released Ferret 0.10.7. It is still in beta but we are
getting closer and closer to a 1.0 release. The main changes in this
release are better handling of fields by the QueryParser. You can now
give the QueryParser a list of fields that are tokenized so that only
those fields will be analyzed in the QueryParser. This means that you
can search untokenized fields for terms with spaces in them. For
results = index.search('title:Shawshank\ Redemption')
If :title is an untokenized field, this query will be parsed as a
single TermQuery. Previously the search would have failed.
I’ve also changed the StandardTokenizer behaviour so that it will
handle email addresses that start with numbers. This also means that
200km will be parsed as a single term instead of seperate terms.
Whether this is a good thing or not is a matter of taste. You can
easily use a filter to split these terms up if you need to.
There are a lot of other bug fixes as well so Ferret should be a
little more stable.