It's actually Builder 2.1.2 or better that TS expects… so there shouldn't be a 
version conflict happening.

So if instance_eval can't be revealed, then I guess it's not being removed by 
BlankSlate. Which then doesn't explain why things aren't working.

Just to double-check - does this raise the expected error, or does it print out 
a FauxColumn:
  puts self.instance_eval

-- 
Pat

On 17/11/2011, at 1:06 AM, Ngan wrote:

> Not sure if this helps, but I have confirmed that the BlankSlate being
> used in TS is the one from Rails (which is builder-2.1.2 for my
> version of Rails), instead of the builder-3.0 that is specified ini
> the gemspec.
> 
> On Nov 16, 9:33 am, Ngan <[email protected]> wrote:
>> Also, I'm on Rails 2.3.2, which I found includes its own version of
>> builder and therefore BlankSlate.  After doing some puts, I found that
>> the blankslate builded with rails is the one that gets evaluated, and
>> the one from thinking sphinx gem spec (builder 3.x) is not getting run
>> at all.
>> 
>> I'm using bundler.
>> 
>> On Nov 16, 9:08 am, Ngan <[email protected]> wrote:
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>>> I've added that but then I just get this error:
>>> Don't know how to reveal method 'instance_eval'
>> 
>>> Just to confirm:
>> 
>>> class Builder < BlankSlate
>>>   reveal :instance_eval
>>>   reveal :repond_to?
>> 
>>>   def self.generate(...)
>>>   ...
>>> end
>> 
>>> On Nov 16, 2:32 am, Pat Allan <[email protected]> wrote:
>> 
>>>> Hmm, REE must behave differently with BlankSlate. I've certainly noticed 
>>>> different behaviours for Ruby 1.9 and Rubinius.
>> 
>>>> Although keep in mind respond_to? is returning the FauxColumn in your 
>>>> example, it's not instance_eval itself. In your local copy of TS, can you 
>>>> add the following to the top of the Builder class:
>>>>   reveal :instance_eval
>>>>   reveal :respond_to?
>> 
>>>> That'll unhide those methods.
>> 
>>>> --
>>>> Pat
>> 
>>>> On 16/11/2011, at 2:14 PM, Ngan wrote:
>> 
>>>>> I've narrowed down the issue...
>>>>> lib/thinking_sphinx/index/builder.rb
>> 
>>>>> def initialzie
>>>>>    ...
>>>>>    self.instance_eval &block
>>>>>    ...
>>>>> end
>> 
>>>>> That call seems to not be working and/or doing nothing.
>>>>> When I do:
>> 
>>>>> puts "self.respond_to?(:instance_eval)", I get:
>>>>> #<ThinkingSphinx::Index::FauxColumn:0x10f575778>
>> 
>>>>> I'm on Ruby Enterprise 1.8.7-2010.02
>> 
>>>>> This must be because of the BlankSlate/Builder changes?
>> 
>>>>> On Nov 5, 1:25 am, Pat Allan <[email protected]> wrote:
>>>>>> I don't suppose the stack trace holds any clues?
>> 
>>>>>> --
>>>>>> Pat
>> 
>>>>>> On 05/11/2011, at 12:10 AM, Ngan wrote:
>> 
>>>>>>> I've removed all indexes from all models and left just one:
>> 
>>>>>>> class Label < ActiveRecord::Base
>>>>>>>  define_index do
>>>>>>>    indexes :name
>>>>>>>  end
>>>>>>> end
>> 
>>>>>>> And it still errors.
>> 
>>>>>>> On Nov 4, 2:36 pm, Ngan <[email protected]> wrote:
>>>>>>>> Yea, i downgrade Riddle as well when going to 1.4.9 (it errors when
>>>>>>>> you don't).
>> 
>>>>>>>> Will check further
>> 
>>>>>>>> On Nov 4, 2:07 pm, Pat Allan <[email protected]> wrote:
>> 
>>>>>>>>> Can't think why that error would appear changing from 1.4.7 to 1.4.10…
>> 
>>>>>>>>> When you downgrade to 1.4.9, keep in mind you'll need to downgrade 
>>>>>>>>> Riddle as well (1.5.0 only works with 1.4.10/2.0.10 - all were 
>>>>>>>>> released earlier today).
>> 
>>>>>>>>> Do any of your index definitions not have any fields? Are you doing 
>>>>>>>>> anything out of the ordinary with index definitions?
>> 
>>>>>>>>> --
>>>>>>>>> Pat
>> 
>>>>>>>>> On 04/11/2011, at 10:50 PM, Ngan wrote:
>> 
>>>>>>>>>> I'm on Rails 2.3.  Been running TS 1.4.7.  Tried to upgrade to to TS
>>>>>>>>>> 1.4.10, but got this error:
>> 
>>>>>>>>>> $ rake ts:index --trace
>>>>>>>>>> ...
>>>>>>>>>> At least one field is necessary for an index
>>>>>>>>>> ...
>> 
>>>>>>>>>> I tried to upgrade to 1.4.9, and got the same error...
>>>>>>>>>> What changed?
>> 
>>>>>>>>>> --
>>>>>>>>>> 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 
>>>>>>>>>> athttp://groups.google.com/group/thinking-sphinx?hl=en.
>> 
>>>>>>> --
>>>>>>> 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 
>>>>>>> athttp://groups.google.com/group/thinking-sphinx?hl=en.
>> 
>>>>> --
>>>>> 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 
>>>>> athttp://groups.google.com/group/thinking-sphinx?hl=en.
> 
> -- 
> 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.
> 

-- 
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.

Reply via email to