2014-01-23 28 views
0

我正在用rspec和pry使用guard。Readline好像壞了

我不斷收到此錯誤:

Error: can't modify string; temporarily locked 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:626:in `readline' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:626:in `block in readline' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:566:in `handle_read_errors' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:611:in `readline' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:384:in `retrieve_line' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:301:in `block in r' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:298:in `loop' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:298:in `r' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:276:in `re' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:254:in `rep' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:234:in `block (3 levels) in repl' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:232:in `loop' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:232:in `block (2 levels) in repl' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:231:in `catch' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:231:in `block in repl' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:230:in `catch' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_instance.rb:230:in `repl' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-0.9.12.4/lib/pry/pry_class.rb:170:in `start' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/pry-byebug-1.2.1/lib/pry-byebug/pry_ext.rb:19:in `start_with_pry_byebug' 
/home/eric/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/guard-2.3.0/lib/guard/interactor.rb:133:in `block in start' 

我看到這是一個討論的熱門話題,但我還沒有找到一個好的解決辦法。我正在運行ruby 2.1.0,最新版本的guard &在Centos 6.3上監聽(2.4.0)。我嘗試將rb-readline添加到我的Gemfile中,但這打破了pry的歷史記錄功能。

+1

和???什麼代碼導致錯誤? –

+0

運行任何測試。它通過從當前版本(2.3.0)退回到最新版本的guard(2.2.5)來解決。 – Eric

+0

所以 - 下面再添加上面的問題(這是重要的信息來幫助你解決你的問題):) –

回答

0

當前版本已損壞 - 返回2.2.5。

也有人給我同樣的錯誤,直到我開始忽略vim的點文件是這樣的:

watch(%r{^app/workers/[^.](.+)_worker\.rb$})   { |m| "spec/features/workers/#{m[1]}_spec.rb" } 

編輯:這仍然失敗有時對我來說,我沒有一個解決方案 - 標記這是它雖然。

+1

務必給你的答案複選標記,以便其他人能夠快速看到問題有一個可接受的答案。 –