質問

I am using guard with rspec and pry.

I keep getting this error:

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'

I see that this is a popular topic for discussion but I haven't found a good solution. I'm running ruby 2.1.0 and the latest versions of guard & listen (2.4.0) on Centos 6.3. I tried adding rb-readline to my Gemfile but that broke pry's history functionality.

役に立ちましたか?

解決

Current version is broken - go back to 2.2.5.

It was also giving me the same error until I starting ignoring vim's dot files like this:

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

EDIT: This continues to fail sometimes for me, I don't have a solution - marking this as it though.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top