ArgumentError (Превышен лимит атрибутов на элемент) при попытке открыть дифф заблокированной темы

ArgumentError (Превышен лимит атрибутов на элемент) — при нажатии на иконку «изменить» для просмотра различий версий темы.

Консоль разработчика

Логи

Сообщение (2 копии)

ArgumentError (Превышен лимит атрибутов на элемент)
lib/discourse_diff.rb:171:in `tokenize_html_blocks'
lib/discourse_diff.rb:10:in `initialize'
app/serializers/post_revision_serializer.rb:117:in `new'
app/serializers/post_revision_serializer.rb:117:in `body_changes'
(eval):18:in `_fast_attributes'
app/controllers/application_controller.rb:520:in `render_json_dump'
app/controllers/posts_controller.rb:408:in `latest_revision'
app/controllers/application_controller.rb:397:in `block in with_resolved_locale'
app/controllers/application_controller.rb:397:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:71:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:356:in `call'
config/initializers/100-quiet_logger.rb:23:in `call'
config/initializers/100-silence_logger.rb:31:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
lib/middleware/request_tracker.rb:187:in `call'

Трассировка стека

nokogiri-1.12.5-x86_64 (linux) lib/nokogiri/html5/document_fragment.rb:38:in `fragment'
nokogiri-1.12.5-x86_64 (linux) lib/nokogiri/html5/document_fragment.rb:38:in `initialize'
nokogiri-1.12.5-x86_64 (linux) lib/nokogiri/html5/document_fragment.rb:52:in `new'
nokogiri-1.12.5-x86_64 (linux) lib/nokogiri/html5/document_fragment.rb:52:in `parse'
nokogiri-1.12.5-x86_64 (linux) lib/nokogiri/html5.rb:242:in `fragment'
lib/discourse_diff.rb:171:in `tokenize_html_blocks'
lib/discourse_diff.rb:10:in `initialize'
app/serializers/post_revision_serializer.rb:117:in `new'
app/serializers/post_revision_serializer.rb:117:in `body_changes'
(eval):18:in `_fast_attributes'

Окружение

HTTP HOSTS: jai.community

Это на сайте, который мы для вас хостим? Нам нужно увидеть diff, вызывающий патологическое поведение.

Это решение с самостоятельным размещением. Как лучше всего поделиться с вами разницей?

Если ничего секретного, можете попробовать воспроизвести это здесь? Просто оставьте ответ, подождите 10 минут и отредактируйте сообщение с описанием проблемы.

Это не публичное сообщество, и материалы касаются бета-версии продукта, которая также не является публичной. Поэтому, выражая глубокое уважение как автору материалов, так и команде Discourse, я предпочитаю не делиться ими здесь. Есть ли какой-то другой простой способ?

1 лайк

Наверное, принцип «разделяй и властвуй»? Попробуйте создавать всё более и более мелкие репродуцируемые примеры, пока не найдёте проблемную строку?

1 лайк

Может, мне опубликовать содержимое той конкретной темы в личном сообщении вам здесь, в Meta?

Не стесняйтесь, особенно если вы можете создать воспроизводимый пример.