Error al acceder al tema público sin iniciar sesión 3.1.0.beta2

Pasos para reproducir:
crear categoría con seguridad: todos pueden leer


cerrar sesión en discourse
entrar a una publicación dentro de esta categoría:
en mi sitio:
https://forum.rat-adv.com/t/test-posta-na-chwile/1315

Puedes ver:

# Oops

El software que impulsa este foro de discusión encontró un problema inesperado. Lamentamos las molestias.

La información detallada sobre el error se registró y se generó una notificación automática. Le echaremos un vistazo.

No se requiere ninguna acción adicional. Sin embargo, si la condición de error persiste, puede proporcionar detalles adicionales, incluidos los pasos para reproducir el error, publicando un tema de discusión en la categoría de comentarios del sitio.

Si inicias sesión en discourse
estos enlaces funcionan

En los registros puedes ver:

y el stack para noMethodError:

lib/guardian/topic_guardian.rb:146:in `can_recover_topic?'

app/serializers/topic_view_details_serializer.rb:119:in `include_can_recover?'

active_model_serializers (0.8.4) lib/active_model/serializer.rb:375:in `include?'

(eval):9:in `_fast_attributes'

active_model_serializers (0.8.4) lib/active_model/serializer.rb:468:in `rescue in attributes'

active_model_serializers (0.8.4) lib/active_model/serializer.rb:455:in `attributes'

active_model_serializers (0.8.4) lib/active_model/serializer.rb:480:in `_serializable_hash'

active_model_serializers (0.8.4) lib/active_model/serializer.rb:359:in `serializable_hash'

active_model_serializers (0.8.4) lib/active_model/serializer/associations.rb:200:in `serialize'

lib/freedom_patches/ams_include_without_root.rb:57:in `include!'

active_model_serializers (0.8.4) lib/active_model/serializer.rb:368:in `block in include_associations!'

active_model_serializers (0.8.4) lib/active_model/serializer.rb:367:in `each_key'

active_model_serializers (0.8.4) lib/active_model/serializer.rb:367:in `include_associations!'

active_model_serializers (0.8.4) lib/active_model/serializer.rb:362:in `serializable_hash'

active_model_serializers (0.8.4) lib/active_model/serializer.rb:347:in `as_json'

activesupport (7.0.4.1) lib/active_support/json/encoding.rb:22:in `encode'

activesupport (7.0.4.1) lib/active_support/json/encoding.rb:22:in `encode'

activesupport (7.0.4.1) lib/active_support/core_ext/object/json.rb:42:in `to_json'

active_model_serializers (0.8.4) lib/active_model/serializer.rb:331:in `to_json'

multi_json (1.15.0) lib/multi_json/adapters/oj.rb:56:in `dump'

multi_json (1.15.0) lib/multi_json/adapters/oj.rb:56:in `dump'

multi_json (1.15.0) lib/multi_json/adapter.rb:25:in `dump'

multi_json (1.15.0) lib/multi_json.rb:139:in `dump'

app/controllers/topics_controller.rb:1238:in `block (2 levels) in perform_show_response'

actionpack (7.0.4.1) lib/action_controller/metal/mime_responds.rb:214:in `respond_to'

app/controllers/topics_controller.rb:1232:in `perform_show_response'

app/controllers/topics_controller.rb:187:in `show'

actionpack (7.0.4.1) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'

actionpack (7.0.4.1) lib/abstract_controller/base.rb:215:in `process_action'

actionpack (7.0.4.1) lib/action_controller/metal/rendering.rb:53:in `process_action'

actionpack (7.0.4.1) lib/abstract_controller/callbacks.rb:234:in `block in process_action'

activesupport (7.0.4.1) lib/active_support/callbacks.rb:118:in `block in run_callbacks'

app/controllers/application_controller.rb:414:in `block in with_resolved_locale'

i18n (1.12.0) lib/i18n.rb:322:in `with_locale'

app/controllers/application_controller.rb:414:in `with_resolved_locale'

activesupport (7.0.4.1) lib/active_support/callbacks.rb:127:in `block in run_callbacks'

activesupport (7.0.4.1) lib/active_support/callbacks.rb:138:in `run_callbacks'

actionpack (7.0.4.1) lib/abstract_controller/callbacks.rb:233:in `process_action'

actionpack (7.0.4.1) lib/action_controller/metal/rescue.rb:22:in `process_action'

actionpack (7.0.4.1) lib/action_controller/metal/instrumentation.rb:67:in `block in process_action'

activesupport (7.0.4.1) lib/active_support/notifications.rb:206:in `block in instrument'

activesupport (7.0.4.1) lib/active_support/notifications/instrumenter.rb:24:in `instrument'

activesupport (7.0.4.1) lib/active_support/notifications.rb:206:in `instrument'

actionpack (7.0.4.1) lib/action_controller/metal/instrumentation.rb:66:in `process_action'

actionpack (7.0.4.1) lib/action_controller/metal/params_wrapper.rb:259:in `process_action'

activerecord (7.0.4.1) lib/active_record/railties/controller_runtime.rb:27:in `process_action'

actionpack (7.0.4.1) lib/abstract_controller/base.rb:151:in `process'

actionview (7.0.4.1) lib/action_view/rendering.rb:39:in `process'

rack-mini-profiler (3.0.0) lib/mini_profiler/profiling_methods.rb:85:in `block in profile_method'

actionpack (7.0.4.1) lib/action_controller/metal.rb:188:in `dispatch'

actionpack (7.0.4.1) lib/action_controller/metal.rb:251:in `dispatch'

actionpack (7.0.4.1) lib/action_dispatch/routing/route_set.rb:49:in `dispatch'

actionpack (7.0.4.1) lib/action_dispatch/routing/route_set.rb:32:in `serve'

actionpack (7.0.4.1) lib/action_dispatch/journey/router.rb:50:in `block in serve'

actionpack (7.0.4.1) lib/action_dispatch/journey/router.rb:32:in `each'

actionpack (7.0.4.1) lib/action_dispatch/journey/router.rb:32:in `serve'

actionpack (7.0.4.1) lib/action_dispatch/routing/route_set.rb:852:in `call'

lib/middleware/omniauth_bypass_middleware.rb:74:in `call'

rack (2.2.6.2) lib/rack/tempfile_reaper.rb:15:in `call'

rack (2.2.6.2) lib/rack/conditional_get.rb:27:in `call'

rack (2.2.6.2) lib/rack/head.rb:12:in `call'

actionpack (7.0.4.1) lib/action_dispatch/http/permissions_policy.rb:38:in `call'

lib/content_security_policy/middleware.rb:12:in `call'

lib/middleware/anonymous_cache.rb:367:in `call'

rack (2.2.6.2) lib/rack/session/abstract/id.rb:266:in `context'

rack (2.2.6.2) lib/rack/session/abstract/id.rb:260:in `call'

actionpack (7.0.4.1) lib/action_dispatch/middleware/cookies.rb:704:in `call'

actionpack (7.0.4.1) lib/action_dispatch/middleware/callbacks.rb:27:in `block in call'

activesupport (7.0.4.1) lib/active_support/callbacks.rb:99:in `run_callbacks'

actionpack (7.0.4.1) lib/action_dispatch/middleware/callbacks.rb:26:in `call'

actionpack (7.0.4.1) lib/action_dispatch/middleware/debug_exceptions.rb:28:in `call'

actionpack (7.0.4.1) lib/action_dispatch/middleware/show_exceptions.rb:26:in `call'

logster (2.11.4) lib/logster/middleware/reporter.rb:43:in `call'

railties (7.0.4.1) lib/rails/rack/logger.rb:40:in `call_app'

railties (7.0.4.1) lib/rails/rack/logger.rb:27:in `call'

config/initializers/100-quiet_logger.rb:20:in `call'

config/initializers/100-silence_logger.rb:29:in `call'

actionpack (7.0.4.1) lib/action_dispatch/middleware/remote_ip.rb:93:in `call'

actionpack (7.0.4.1) lib/action_dispatch/middleware/request_id.rb:26:in `call'

lib/middleware/enforce_hostname.rb:24:in `call'

rack (2.2.6.2) lib/rack/method_override.rb:24:in `call'

actionpack (7.0.4.1) lib/action_dispatch/middleware/executor.rb:14:in `call'

rack (2.2.6.2) lib/rack/sendfile.rb:110:in `call'

actionpack (7.0.4.1) lib/action_dispatch/middleware/host_authorization.rb:131:in `call'

rack-mini-profiler (3.0.0) lib/mini_profiler/profiler.rb:249:in `call'

message_bus (4.3.2) lib/message_bus/rack/middleware.rb:60:in `call'

lib/middleware/request_tracker.rb:228:in `call'

railties (7.0.4.1) lib/rails/engine.rb:530:in `call'

railties (7.0.4.1) lib/rails/railtie.rb:226:in `public_send'

railties (7.0.4.1) lib/rails/railtie.rb:226:in `method_missing'

rack (2.2.6.2) lib/rack/urlmap.rb:74:in `block in call'

rack (2.2.6.2) lib/rack/urlmap.rb:58:in `each'

rack (2.2.6.2) lib/rack/urlmap.rb:58:in `call'

unicorn (6.1.0) lib/unicorn/http_server.rb:634:in `process_client'

unicorn (6.1.0) lib/unicorn/http_server.rb:739:in `worker_loop'

unicorn (6.1.0) lib/unicorn/http_server.rb:547:in `spawn_missing_workers'

unicorn (6.1.0) lib/unicorn/http_server.rb:143:in `start'

unicorn (6.1.0) bin/unicorn:128:in `<top (required)>'

vendor/bundle/ruby/3.1.0/bin/unicorn:25:in `load'

vendor/bundle/ruby/3.1.0/bin/unicorn:25:in `<main>'

Piotr

1 me gusta

Hola Areen. :slight_smile:

Seguí tus pasos y no encontré ningún problema.

Intenté ingresar un tema en tu foro mientras estaba en modo seguro y encontré errores para cualquier tema en cualquier categoría.

¿Persiste el problema si reconstruyes tu foro (./launcher rebuild app)? ¿Tienes algún plugin instalado?

1 me gusta

Puedes obtener el texto del tema abriendo la página sin formato https://forum.rat-adv.com/raw/1315 y luego creando el tema de nuevo. (Sin embargo, el tema roto seguirá aquí)

Hola
No sabía que las páginas se podían abrir en modo sin procesar, gracias, será útil :slight_smile:
¡Estos temas se muestran en modo sin procesar!

pero el problema es que todas las páginas públicas no se muestran

Intento hacer:
eliminar/agregar permisos públicos en la categoría
agregar una nueva publicación en la categoría pública
agregar una nueva categoría y ver si aparece la entrada principal

Obtengo los mismos resultados
en la información de la página en los registros

NoMethodError (undefined method `has_trust_level?' for nil:NilClass

         (SiteSetting.tl4_delete_posts_and_topics && user.has_trust_level?(TrustLevel[4]))
                                                         ^^^^^^^^^^^^^^^^^))
lib/guardian/topic_guardian.rb:146:in `can_recover_topic?'

Creo que

  1. Tengo un problema con el código descargado, voy a descargar el código fuente y luego reconstruir
  2. El problema está en el almacén de datos en pgsqql, eso será más difícil

Escribiré lo que he logrado

2 Me gusta

Hola
Revisé el código fuente y el problema está en este commit

Creo que un usuario no registrado no tiene un perfil de usuario con nivel de confianza
Revertí estos cambios en este método en mi repositorio
pero no sé qué sigue, no programo en ruby

¿qué debería pasar ahora para que alguien arregle este fragmento de código?

Saludos …
Piotr

3 Me gusta

Hola,

Puedo reproducir este problema.

Habilitar la configuración del sitio tl4 delete posts and topics rompe los temas para los anónimos.

Solución rápida: Deshabilita esta configuración mientras llega la solución. :slightly_smiling_face:

4 Me gusta

Creo que @kris.kotlarek lo arregló, ¿puedes reconstruir y volver a intentarlo?

3 Me gusta

Sí, lo hago hoy y escribo sobre los resultados.

1 me gusta

Solo para añadir el onebox por consistencia: :slight_smile:

1 me gusta

Este tema se cerró automáticamente después de 4 días. Ya no se permiten nuevas respuestas.