通過打破94行上的「break」ruby保留字,ruby-debug變得越來越忙activesupport-2.3.5/lib/active_support/callbacks.rb 。在ActiveSupport :: Callbacks.run中調試打破Rails的「break」
def run(object, options = {}, &terminator)
enumerator = options[:enumerator] || :each
unless block_given?
send(enumerator) { |callback| callback.call(object) }
else
send(enumerator) do |callback|
result = callback.call(object)
break result if terminator.call(result, object) # This line is the culprit
end
end
end
我知道休息是Ruby的保留字,我surpirsed的紅寶石調試是在「破」字爲每個回調的ActiveSupport打破。由於回調非常頻繁地觸發,這幾乎使我的所有調試都無用。我不再能夠運行我的任何rspec測試,因爲每個規範都會觸發多次回調斷點。
這是我所有的當前已安裝的寶石的列表:http://pastie.org/854538
更新: 我試着刪除紅寶石調試和紅寶石調試基地,現在我得到以下信息時,都給我跑我的規格。我正在重新安裝這些寶石,因爲我需要它們。
debugger statement ignored, use -u or --debugger option on rspec to enable debugging
我不知道如何解決這個問題。有任何想法嗎?