Кстати: изменилось ли что-то в том, что mini_racer не поддерживается в TruffleRuby? Это серьёзное препятствие.
У меня есть ветка, в которой большая часть функциональности mini_racer проходит набор тестов в TruffleRuby с использованием GraalJS. Я полагаю, что она покрывает все необходимые для Discourse функции. Её нужно только проверить, после чего я постараюсь добиться её включения в основную ветку. Вот как я запускаю это локально: https://twitter.com/brandonfish/status/1486755128577253376
mini_profiler всё ещё должен работать нормально, я бы рекомендовал просто не загружать rbtrace / stackprof и т. д. Там есть нестрого связанные зависимости.
mini_profiler может по-прежнему приносить много пользы в мире Truffle, в этом нет ничего специфичного для MRI.
Мне всё ещё не удалось запустить это успешно, возникла ошибка java.lang.NullPointerException, но это может быть связано с моим грубым отключением mini_racer. Я очень жду момента, когда полностью функциональный Discourse будет работать на TruffleRuby.
Я не углублялся в это, но заметил ошибку, когда отключил только загрузку stackprof и memory_profiler. Поэтому пока я полностью отключил mini_profiler.
2022-05-04 21:48:13 +0200 Rack app ("POST /mini-profiler-resources/results" - (127.0.0.1)): #<SystemStackError: stack level too deep
from StackOverflowCheckImpl.java:328:in `com.oracle.svm.core.graal.snippets.StackOverflowCheckImpl.newStackOverflowError0'>
Это могло быть побочным эффектом других проблем. Думаю, мы сможем заняться этим, когда будут решены остальные проблемы.