2013-10-21 7 views
22

गार्ड-आरएसपीईसी के साथ एक रेल 4 प्रोजेक्ट में गार्ड चलाते समय, मैं vim में फ़ाइलों को खोलने/बंद करने पर निम्न त्रुटि को देखता हूं। मैंने भाग्य के बिना गार्ड, गार्ड-आरएसपीसी, प्राइ, और अन्य पुस्तकालयों को अपग्रेड/डाउनग्रेड करने का प्रयास किया है।गार्ड "कारण: स्ट्रिंग को संशोधित नहीं कर सकता; अस्थायी रूप से लॉक किया गया"

  • माणिक 2.0.0p247 (2013-06-27 संशोधन 41,674) [x86_64-linux]
  • Bundler संस्करण 1.3.5
  • गार्ड संस्करण 2.1.1

नीचे स्टैकट्रेस है मैं हर कुछ परीक्षण रन देखें:

Error: can't modify string; temporarily locked 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:624:in `readline' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:624:in `block in readline' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:564:in `handle_read_errors' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:609:in `readline' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:384:in `retrieve_line' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:301:in `block in r' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:298:in `loop' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:298:in `r' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:276:in `re' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:254:in `rep' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:234:in `block (3 levels) in repl' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:232:in `loop' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:232:in `block (2 levels) in repl' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:231:in `catch' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:231:in `block in repl' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:230:in `catch' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_instance.rb:230:in `repl' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/pry-0.9.12.2/lib/pry/pry_class.rb:170:in `start' 
/home/charles/.rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/guard-2.1.1/lib/guard/interactor.rb:133:in `block in start' 
[1] Specs guard(main)> 
+0

मुझे एक ही चीज़ का सामना करना पड़ रहा है। मैं आरवीएम पर हूं (1.24.4)। और रूबी 2.0.0p353 (2013-11-22 संशोधन 43784) [x86_64-linux]। और प्रिये 0.9.14। और रेल 3.2.14। और उबंटू 13.10। –

उत्तर

16

rb-readline मणि के लिए मेरे Gemfile इस मुद्दे को ठीक करने लगता है जोड़ना।

gem "rb-readline", "~> 0.5.0" 

मेरा अनुमान है जो बताता है कि क्यों त्रुटि pry_instance.rb:624:in 'readline' में होता है ReadLine मुद्दे हैं रूबी 2.0.0-p247 के rbenv संकलित संस्करण है,। आरबी-रीडलाइन प्रोजेक्ट रीडलाइन लाइब्रेरी का शुद्ध रूबी कार्यान्वयन है और इस मुद्दे को कम करने लगता है।

रूबी को पुनः संयोजित करने में एक बेहतर समाधान हो सकता है, लेकिन मुझे यह नहीं मिला है।

+1

आपके बारे में नहीं पता, लेकिन आरबी-रीडलाइन का उपयोग करके पूरी तरह से मेरे 'pry' पर्यावरण को खराब कर देता है (यानी चश्मा चलाने के दौरान 'binding.pry' निष्पादित करना), इसलिए यह कोई नहीं है। –

+0

@ PawełGościcki मुझे भी। मैंने देखा है कि आरबी-रीडलाइन का उपयोग करने के साथ अन्य दुष्प्रभाव हैं। जैसे कि घर और अंत कुंजी अपेक्षा के अनुसार काम नहीं कर रही हैं। –

3

यह वास्तव में रूबी 2.0.0 और 1.9.3 में एक त्रुटि प्रतीत होता है। देखें https://bugs.ruby-lang.org/issues/8669

इसका संशोधन 42216.

+3

मुझे यकीन नहीं है कि यह मामला है। मैं रूबी 2.0.0p353 (2013-11-22 संशोधन 43784) का उपयोग कर रहा हूं और मुझे अभी भी इसका अनुभव है। –

+2

2.1.0p0 – gertas

+0

के साथ वही समस्या Yup मैं इसे 2.1.0p0 के साथ भी देखता हूं। –

0

में रूबी 2.0.0 में बैकपोर्ट आप उदात्त पाठ 3 का उपयोग कर रहे हैं? यदि हां, तो आपको निश्चित रूप से check this out चाहिए!

टीएलडीआर: "atomic_save": false सेट करें।

संबंधित मुद्दे