Thanks for that Thibaut - I'll try to get it into the master soon, when I have time to review the fork (I've fallen behind a bit in the last few weeks, and that's not likely to improve until I'm back in Australia mid-Feb)
Cheers -- Pat On 27/01/2009, at 6:26 AM, Thibaut Barrère wrote: > > Hi Pat et al, > > just implemented this: > > ThinkingSphinx::Configuration.configure do |config| > config.app_root = File.expand_path(File.dirname(__FILE__) + '/..') > config.app_env_task = :environment > end > > commits are there: > - > http://github.com/thbar/thinking-sphinx/commit/313c99c6c8ffff4b43b1eec8c49616456281cb21 > (app_root) > - > http://github.com/thbar/thinking-sphinx/commit/43f8b9e2b158118d958f97aa4a6dcbdaa607b43f > (app_env_task) > > After thinking about it, I decided that Rake was wide-spread enough so > that a symbol or string for app_env_task would be good enough > (supporting a proc wouldn't be hard though). > > I'm quite happy with the external API, the spec and the fact that it > works; I'm less happy with the internal implementation > (Configuration.reset get called twice for instance, and a reset will > not memorize the block passed to configure initially). Feel free to > comment, patch or suggest anything to make it better. > > cheers, > > -- Thibaut > > > On Jan 21, 4:45 pm, Pat Allan <[email protected]> wrote: >> Hi Thibaut >> >> What you're suggesting makes a lot of sense. If you want to get a >> generic patch for it working, please, go ahead. My one suggested >> change is make app_env_task accept strings or symbols indicating the >> task name - Thinking Sphinx should be able to translate it to the >> relevant call by itself (and if you want to make the setting accept >> lambdas *as well* as strings and symbols, that'd be pretty cool too). >> >> Cheers >> >> -- >> Pat >> >> On 11/01/2009, at 8:01 PM, Thibaut Barrère wrote: >> >> >> >>> Hi Pat, >> >>> toughts after a night: it would be much better not to rely on >>> RAMAZE_ROOT (some thing that do not actually exist in Ramaze), but >>> instead to provide extensions point. It would cover Ramaze and any >>> other framework, too. >> >>> From what I've seen, the two extension points required today seem to >>> be: >>> 1/ app_root setting >>> 2/ rake env task calling on app_env, if useful >> >>> (there is another question on how paths are build inside .conf file, >>> but I'll noddle around it before suggesting something). >> >>> What about transforming TS so that it can let the caller configure >>> itself (inversion of control) ?: >> >>> ThinkingSphinx::Configuration.configure do |config| >>> config.app_root = my_ramaze_root >>> config.app_env_task = lambda { Rake::Task[:environment].invoke } >>> end >> >>> That would require some bits of refactoring, but would leave the >>> ability to customize things for the end-user. The Rails/Merb default >>> would be invoked, unless a config is provided to override it. >> >>> What do you think ? >> >>> regards, >> >>> -- Thibaut > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Thinking Sphinx" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/thinking-sphinx?hl=en -~----------~----~----~----~------~----~------~--~---
