Нещодавно у нас виникла проблема, коли після низки комісій не вдалося запустити процес запуску. Тепер ми були маленькими хлопчиками та дівчатками і бігали rake test
після кожного заїзду, але, через деякі диваки в завантаженні бібліотеки Rails, це сталося лише тоді, коли ми запустили його безпосередньо від Mongrel у виробничому режимі.
Я відслідковував помилку, і це було пов’язано з новим дорогоцінним каменем Rails, що переписав метод у класі String таким чином, що порушив одне вузьке використання в коді Rails часу Rails.
У будь-якому випадку, якщо коротко розповісти, чи існує спосіб, коли під час виконання запитати Рубі, де визначений метод? Щось whereami( :foo )
таке повертається /path/to/some/file.rb line #45
? У цьому випадку сказати мені, що це було визначено в класі String було б не корисно, тому що це перевантажено якоюсь бібліотекою.
Я не можу гарантувати джерела життя в моєму проекті, тому привітання 'def foo'
не обов'язково дасть мені те, що мені потрібно, не кажучи вже про те, що у мене багато def foo
, іноді я не знаю до часу виконання, яким з них я можу користуватися.