Hello Mailinglisters
It's been a long time since I've written. One wonders why this mailing list still exists? Well, … let's see how the future turns out to be.
I've gotten a nice bit of feedback from people who are using mainly for internal purposes (people searches in companies and such), and I've been called many things – the best though was "[...] hate the bubble-daemon symbol"!
I loved that one. The bubble-daemon symbol formerly known as the Ruby semantic search engine! Prince would be so envious.
Last time I talked about changes was in version 1.2.2. As it happens, we're now at 2.4.0! I progress quickly through versions, but on API changes I usually do a minor jump, or even a major one, as it happens.
So let me get a quick combat team beta after action report, BAM!
- New indexing option: reject_token_if: some_lambda, default: &:empty? # Reject symbol tokens if you don't want them to be indexed.
- Routing has a new target: route %r{/admin} => Live::Interface.new
- The last change referred to the new picky-live gem (aka Suckerfish), change default settings in the running server! Crazy eh?
- Symbol/String keys now allowed! (use key_format :to_s, for example, if you want strings)
- picky command line tool improved, shows nicely what options/parameters there are.
- Similar words now displayed in front end JS interface instead of the typed one.
- History plugin in JS frontend interface makes back/forward button work. Yay! Also: No more breaking the web.
- 1.4.0 added a heap of options to the JS client interface, check out the generated search.haml in the Sinatra client.
- Redis backend! Slower, but persistent…er.
- rake stats, rake analyze
- Total rework of the API. Query::Full, Query::Live become Search. Much nicer :) Pass in how many ids you want.
- searching, indexing offer option case_sensitive. Default is false.
- rake search <url>, search in a terminal interface. Localhost or whatever Picky search is out there. Love it!
- sources API changed – define in index definition block. See generated Unicorn project for example.
- Simple geosearch, use geo_categories(lat, lng, radius_in_kilometers, options = {}) Be creative with it! (See also Florian's blog:
http://florianhanke.com/blog)
- Integration specs are way easier now.
- Phew, that was a lot! Much more is planned, though. Tell me what to do if you need something!
Waving a tentacly appendage from down under (sea food here is the freshest ever)! See you, folks
Picky