Внезапно, после выполнения git pull в окружении разработки Discourse на Mac, возникает эта ошибка после успешного выполнения bundle install при попытке запустить любую команду rake или rails.
gems/activesupport-6.0.3.2/lib/active_support/dependencies.rb:324:in `require': cannot load such file -- omniauth/strategies/oauth2 (LoadError)
Пытался удалить все gems, начать заново, переустановить с нуля — ничего не помогает; ошибка остаётся прежней.
Можно ли просто отключить эту функциональность oauth2 в режиме разработки?
Сожалею, что у тебя возникли проблемы с разработкой на macOS. Это действительно непросто.
Только для тебя я зашел на один из своих Mac mini, на котором никогда не устанавливались Rails (или Discourse); это был абсолютно чистый macOS, который я использую только как файловый сервер.
Я выполнил установку для разработки на macOS с нуля; столкнулся с обычными проблемами с правами доступа к каталогам и, как всегда, назойливым гемом cppjieba_rb, но в итоге установка прошла успешно:
Этот Mac далеко не чистый. После прочтения вашего ответа я без устали пытался переустановить систему «с нуля» с Ruby 2.7.1, 2.6.1 и 2.6.5, но каждый раз возникали разные ошибки, связанные с bootsnap.
Простые приложения на Rails создаются и работают нормально, и бандл Discourse тоже работает без проблем, но при запуске Rails я постоянно получаю ошибки ```bootsnap``
Сначала хотел полностью удалить Ruby и Rails и начать всё с чистого листа, но у меня есть другие текущие проекты на Rails, поэтому пока отложу изучение и доработку плагинов для Discourse в сторон.
Ещё раз спасибо, @neounix, за то, что нашли время помочь и показали, что всё работает на чистой машине.
Так как скрипт установки для разработчиков macOS по какой-то причине не смог обновить или установить систему корректно (предположительно, потому что предыдущая установка была не чистой, а обновляемой, хотя я точно не уверен; запускал его много раз, то и дело); я вручную обновил Ruby с помощью rvm (по этой инструкции):