kgrier
(Kirk Grier)
29 Agosto, 2025 16:48
1
Hey Discoursers,
I have report from forum member of invited user being unable to complete registratio . Have confirmed. Repro is easy, just send invite to specific user, they enter desire username, password, name, check “accept tos”, hit “accept invitation” button which greys, then nada. Logs appear to show the process is failing in the watch_words censor function. Here’s what I see. Regex option is not selected in Watch Words, no changes have been made in watch_words for many months.
Assistance will be appreciated. - Kirk
Message (13 copies reported)
NoMethodError (undefined method `gsub' for true)
app/services/word_watcher.rb:258:in `censor_text_with_regexp'
app/services/word_watcher.rb:146:in `block in censor_text'
app/services/word_watcher.rb:146:in `each'
app/services/word_watcher.rb:146:in `inject'
app/services/word_watcher.rb:146:in `censor_text'
app/models/user.rb:1612:in `block in apply_watched_words'
app/models/user.rb:1611:in `each'
app/models/user.rb:1611:in `apply_watched_words'
app/models/invite_redeemer.rb:156:in `create_user_from_invite'
app/models/invite_redeemer.rb:220:in `invited_user'
app/models/invite_redeemer.rb:277:in `add_user_to_groups'
app/models/invite_redeemer.rb:238:in `process_invitation'
app/models/invite_redeemer.rb:56:in `block in redeem'
app/models/invite_redeemer.rb:54:in `redeem'
app/models/invite.rb:239:in `redeem'
app/controllers/invites_controller.rb:376:in `perform_accept_invitation'
app/controllers/application_controller.rb:428:in `block in with_resolved_locale'
app/controllers/application_controller.rb:428:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:415:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:26:in `call'
lib/middleware/default_headers.rb:13:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
lib/middleware/processing_request.rb:12:in `call'
lib/middleware/request_tracker.rb:410:in `call'
Backtrace
app/services/word_watcher.rb:258:in `censor_text_with_regexp'
app/services/word_watcher.rb:146:in `block in censor_text'
app/services/word_watcher.rb:146:in `each'
app/services/word_watcher.rb:146:in `inject'
app/services/word_watcher.rb:146:in `censor_text'
app/models/user.rb:1612:in `block in apply_watched_words'
app/models/user.rb:1611:in `each'
app/models/user.rb:1611:in `apply_watched_words'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:361:in `block in make_lambda'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:178:in `block in call'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:668:in `block (2 levels) in default_terminator'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:667:in `catch'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:667:in `block in default_terminator'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:179:in `call'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:559:in `block in invoke_before'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:559:in `each'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:559:in `invoke_before'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:118:in `block in run_callbacks'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:140:in `run_callbacks'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:913:in `_run_save_callbacks'
activerecord (8.0.2.1) lib/active_record/callbacks.rb:441:in `create_or_update'
activerecord (8.0.2.1) lib/active_record/timestamp.rb:127:in `create_or_update'
activerecord (8.0.2.1) lib/active_record/persistence.rb:424:in `save!'
activerecord (8.0.2.1) lib/active_record/validations.rb:54:in `save!'
activerecord (8.0.2.1) lib/active_record/transactions.rb:365:in `block in save!'
activerecord (8.0.2.1) lib/active_record/transactions.rb:417:in `block (2 levels) in with_transaction_returning_status'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/database_statements.rb:357:in `transaction'
activerecord (8.0.2.1) lib/active_record/transactions.rb:413:in `block in with_transaction_returning_status'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/connection_pool.rb:412:in `with_connection'
activerecord (8.0.2.1) lib/active_record/connection_handling.rb:310:in `with_connection'
activerecord (8.0.2.1) lib/active_record/transactions.rb:409:in `with_transaction_returning_status'
activerecord (8.0.2.1) lib/active_record/transactions.rb:365:in `save!'
activerecord (8.0.2.1) lib/active_record/suppressor.rb:56:in `save!'
app/models/invite_redeemer.rb:156:in `create_user_from_invite'
app/models/invite_redeemer.rb:220:in `invited_user'
app/models/invite_redeemer.rb:277:in `add_user_to_groups'
app/models/invite_redeemer.rb:238:in `process_invitation'
app/models/invite_redeemer.rb:56:in `block in redeem'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/transaction.rb:626:in `block in within_new_transaction'
activesupport (8.0.2.1) lib/active_support/concurrency/null_lock.rb:9:in `synchronize'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/transaction.rb:623:in `within_new_transaction'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/database_statements.rb:367:in `within_new_transaction'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/database_statements.rb:359:in `transaction'
activerecord (8.0.2.1) lib/active_record/transactions.rb:233:in `block in transaction'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/connection_pool.rb:418:in `with_connection'
activerecord (8.0.2.1) lib/active_record/connection_handling.rb:310:in `with_connection'
activerecord (8.0.2.1) lib/active_record/transactions.rb:232:in `transaction'
app/models/invite_redeemer.rb:54:in `redeem'
app/models/invite.rb:239:in `redeem'
app/controllers/invites_controller.rb:376:in `perform_accept_invitation'
actionpack (8.0.2.1) lib/action_controller/metal/basic_implicit_render.rb:8:in `send_action'
actionpack (8.0.2.1) lib/abstract_controller/base.rb:226:in `process_action'
actionpack (8.0.2.1) lib/action_controller/metal/rendering.rb:193:in `process_action'
actionpack (8.0.2.1) lib/abstract_controller/callbacks.rb:261:in `block in process_action'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:120:in `block in run_callbacks'
app/controllers/application_controller.rb:428:in `block in with_resolved_locale'
i18n (1.14.7) lib/i18n.rb:353:in `with_locale'
app/controllers/application_controller.rb:428:in `with_resolved_locale'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:129:in `block in run_callbacks'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:140:in `run_callbacks'
actionpack (8.0.2.1) lib/abstract_controller/callbacks.rb:260:in `process_action'
actionpack (8.0.2.1) lib/action_controller/metal/rescue.rb:27:in `process_action'
actionpack (8.0.2.1) lib/action_controller/metal/instrumentation.rb:76:in `block in process_action'
activesupport (8.0.2.1) lib/active_support/notifications.rb:210:in `block in instrument'
activesupport (8.0.2.1) lib/active_support/notifications/instrumenter.rb:58:in `instrument'
activesupport (8.0.2.1) lib/active_support/notifications.rb:210:in `instrument'
actionpack (8.0.2.1) lib/action_controller/metal/instrumentation.rb:75:in `process_action'
actionpack (8.0.2.1) lib/action_controller/metal/params_wrapper.rb:259:in `process_action'
activerecord (8.0.2.1) lib/active_record/railties/controller_runtime.rb:39:in `process_action'
actionpack (8.0.2.1) lib/abstract_controller/base.rb:163:in `process'
actionview (8.0.2.1) lib/action_view/rendering.rb:40:in `process'
rack-mini-profiler (4.0.1) lib/mini_profiler/profiling_methods.rb:90:in `block in profile_method'
actionpack (8.0.2.1) lib/action_controller/metal.rb:252:in `dispatch'
actionpack (8.0.2.1) lib/action_controller/metal.rb:335:in `dispatch'
actionpack (8.0.2.1) lib/action_dispatch/routing/route_set.rb:67:in `dispatch'
actionpack (8.0.2.1) lib/action_dispatch/routing/route_set.rb:50:in `serve'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:53:in `block in serve'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:133:in `block in find_routes'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:126:in `each'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:126:in `find_routes'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:34:in `serve'
actionpack (8.0.2.1) lib/action_dispatch/routing/route_set.rb:908:in `call'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
rack (2.2.17) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.17) lib/rack/conditional_get.rb:40:in `call'
rack (2.2.17) lib/rack/head.rb:12:in `call'
actionpack (8.0.2.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:415:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:26:in `call'
rack (2.2.17) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.17) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/cookies.rb:706:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/callbacks.rb:31:in `block in call'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:100:in `run_callbacks'
actionpack (8.0.2.1) lib/action_dispatch/middleware/callbacks.rb:30:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/debug_exceptions.rb:31:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/show_exceptions.rb:32:in `call'
logster (2.20.1) lib/logster/middleware/reporter.rb:40:in `call'
lib/middleware/default_headers.rb:13:in `call'
railties (8.0.2.1) lib/rails/rack/logger.rb:41:in `call_app'
railties (8.0.2.1) lib/rails/rack/logger.rb:29:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/request_id.rb:34:in
Env
HTTP HOSTS: discourse.bsh.zone
2 Me gusta
¿El nombre de usuario o la información del perfil coinciden con alguna de las palabras vigiladas o prohibidas?
Esto indica un probable error de código… en alguna parte.
¿En qué commit de Discourse te encuentras y qué complementos de terceros (si los hay) están instalados?
kgrier
(Kirk Grier)
30 Agosto, 2025 05:55
4
No, lo he comprobado. Tengo como 20 palabras clave y usar mi cuenta de prueba también genera el fallo.
kgrier
(Kirk Grier)
30 Agosto, 2025 06:05
5
Estoy en la versión 3.6.0.beta1-dev (dab361ac41 ). Realizo actualizaciones el primer y tercer lunes del mes. Supongo que esto comenzó con la actualización que hice el día 18. Aquí están mis plugins de app.yml. Parece que ahora tengo algunos más “incluidos en el núcleo” que también puedo eliminar.
- git clone https://github.com/discourse/docker_manager.git
## - git clone https://github.com/iunctis/discourse-formatting-toolbar.git
- git clone https://github.com/discourse/discourse-saved-searches.git
- git clone https://github.com/discourse/discourse-fingerprint.git
- git clone https://github.com/sylque/discourse-home-page.git
- git clone https://github.com/discourse/discourse-follow.git
- git clone https://github.com/LeoDavidson/discourse-forcemoderation.git
- git clone https://github.com/discourse/discourse-yearly-review.git
- git clone https://github.com/discourse/discourse-bbcode.git
- git clone https://github.com/discourse/discourse-cakeday.git
- git clone https://github.com/discourse/discourse-whos-online
- git clone https://github.com/paviliondev/discourse-locations.git
- git clone https://github.com/communiteq/discourse-legal-compliance.git
- git clone https://github.com/communiteq/discourse-delete-unreplied-topics.git
j.jaffeux
(Joffrey Jaffeux)
30 Agosto, 2025 07:03
6
¿Puede mostrar su lista de palabras de censura, por favor?
kgrier
(Kirk Grier)
30 Agosto, 2025 07:25
7
Preferiría no publicarlos; algunos son bastante ofensivos. Y no han cambiado en al menos un año. p: ¿la función de coincidencia de expresiones regulares es nueva? Puedo intentar activarla y ver si eso provoca algún cambio en el procesamiento.
kgrier
(Kirk Grier)
30 Agosto, 2025 07:31
8
Alternar la expresión regular no ayudó:
Message (15 copies reported)
NoMethodError (undefined method `gsub' for true):
app/services/word_watcher.rb:258:in `censor_text_with_regexp'
app/services/word_watcher.rb:146:in `block in censor_text'
app/services/word_watcher.rb:146:in `each'
app/services/word_watcher.rb:146:in `inject'
app/services/word_watcher.rb:146:in `censor_text'
app/models/user.rb:1612:in `block in apply_watched_words'
app/models/user.rb:1611:in `each'
app/models/user.rb:1611:in `apply_watched_words'
app/models/invite_redeemer.rb:156:in `create_user_from_invite'
app/models/invite_redeemer.rb:220:in `invited_user'
app/models/invite_redeemer.rb:277:in `add_user_to_groups'
app/models/invite_redeemer.rb:238:in `process_invitation'
app/models/invite_redeemer.rb:56:in `block in redeem'
app/models/invite_redeemer.rb:54:in `redeem'
app/models/invite.rb:239:in `redeem'
app/controllers/invites_controller.rb:376:in `perform_accept_invitation'
app/controllers/application_controller.rb:428:in `block in with_resolved_locale'
app/controllers/application_controller.rb:428:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:415:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:26:in `call'
lib/middleware/default_headers.rb:13:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
lib/middleware/processing_request.rb:12:in `call'
lib/middleware/request_tracker.rb:410:in `call'
Backtrace
app/services/word_watcher.rb:258:in `censor_text_with_regexp'
app/services/word_watcher.rb:146:in `block in censor_text'
app/services/word_watcher.rb:146:in `each'
app/services/word_watcher.rb:146:in `inject'
app/services/word_watcher.rb:146:in `censor_text'
app/models/user.rb:1612:in `block in apply_watched_words'
app/models/user.rb:1611:in `each'
app/models/user.rb:1611:in `apply_watched_words'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:361:in `block in make_lambda'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:178:in `block in call'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:668:in `block (2 levels) in default_terminator'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:667:in `catch'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:667:in `block in default_terminator'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:179:in `call'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:559:in `block in invoke_before'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:559:in `each'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:559:in `invoke_before'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:118:in `block in run_callbacks'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:140:in `run_callbacks'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:913:in `_run_save_callbacks'
activerecord (8.0.2.1) lib/active_record/callbacks.rb:441:in `create_or_update'
activerecord (8.0.2.1) lib/active_record/timestamp.rb:127:in `create_or_update'
activerecord (8.0.2.1) lib/active_record/persistence.rb:424:in `save!'
activerecord (8.0.2.1) lib/active_record/validations.rb:54:in `save!'
activerecord (8.0.2.1) lib/active_record/transactions.rb:365:in `block in save!'
activerecord (8.0.2.1) lib/active_record/transactions.rb:417:in `block (2 levels) in with_transaction_returning_status'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/database_statements.rb:357:in `transaction'
activerecord (8.0.2.1) lib/active_record/transactions.rb:413:in `block in with_transaction_returning_status'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/connection_pool.rb:412:in `with_connection'
activerecord (8.0.2.1) lib/active_record/connection_handling.rb:310:in `with_connection'
activerecord (8.0.2.1) lib/active_record/transactions.rb:409:in `with_transaction_returning_status'
activerecord (8.0.2.1) lib/active_record/transactions.rb:365:in `save!'
activerecord (8.0.2.1) lib/active_record/suppressor.rb:56:in `save!'
app/models/invite_redeemer.rb:156:in `create_user_from_invite'
app/models/invite_redeemer.rb:220:in `invited_user'
app/models/invite_redeemer.rb:277:in `add_user_to_groups'
app/models/invite_redeemer.rb:238:in `process_invitation'
app/models/invite_redeemer.rb:56:in `block in redeem'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/transaction.rb:626:in `block in within_new_transaction'
activesupport (8.0.2.1) lib/active_support/concurrency/null_lock.rb:9:in `synchronize'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/transaction.rb:623:in `within_new_transaction'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/database_statements.rb:367:in `within_new_transaction'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/database_statements.rb:359:in `transaction'
activerecord (8.0.2.1) lib/active_record/transactions.rb:233:in `block in transaction'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/connection_pool.rb:418:in `with_connection'
activerecord (8.0.2.1) lib/active_record/connection_handling.rb:310:in `with_connection'
activerecord (8.0.2.1) lib/active_record/transactions.rb:232:in `transaction'
app/models/invite_redeemer.rb:54:in `redeem'
app/models/invite.rb:239:in `redeem'
app/controllers/invites_controller.rb:376:in `perform_accept_invitation'
actionpack (8.0.2.1) lib/action_controller/metal/basic_implicit_render.rb:8:in `send_action'
actionpack (8.0.2.1) lib/abstract_controller/base.rb:226:in `process_action'
actionpack (8.0.2.1) lib/action_controller/metal/rendering.rb:193:in `process_action'
actionpack (8.0.2.1) lib/abstract_controller/callbacks.rb:261:in `block in process_action'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:120:in `block in run_callbacks'
app/controllers/application_controller.rb:428:in `block in with_resolved_locale'
i18n (1.14.7) lib/i18n.rb:353:in `with_locale'
app/controllers/application_controller.rb:428:in `with_resolved_locale'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:129:in `block in run_callbacks'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:140:in `run_callbacks'
actionpack (8.0.2.1) lib/abstract_controller/callbacks.rb:260:in `process_action'
actionpack (8.0.2.1) lib/action_controller/metal/rescue.rb:27:in `process_action'
actionpack (8.0.2.1) lib/action_controller/metal/instrumentation.rb:76:in `block in process_action'
activesupport (8.0.2.1) lib/active_support/notifications.rb:210:in `block in instrument'
activesupport (8.0.2.1) lib/active_support/notifications/instrumenter.rb:58:in `instrument'
activesupport (8.0.2.1) lib/active_support/notifications.rb:210:in `instrument'
actionpack (8.0.2.1) lib/action_controller/metal/instrumentation.rb:75:in `process_action'
actionpack (8.0.2.1) lib/action_controller/metal/params_wrapper.rb:259:in `process_action'
activerecord (8.0.2.1) lib/active_record/railties/controller_runtime.rb:39:in `process_action'
actionpack (8.0.2.1) lib/abstract_controller/base.rb:163:in `process'
actionview (8.0.2.1) lib/action_view/rendering.rb:40:in `process'
rack-mini-profiler (4.0.1) lib/mini_profiler/profiling_methods.rb:90:in `block in profile_method'
actionpack (8.0.2.1) lib/action_controller/metal.rb:252:in `dispatch'
actionpack (8.0.2.1) lib/action_controller/metal.rb:335:in `dispatch'
actionpack (8.0.2.1) lib/action_dispatch/routing/route_set.rb:67:in `dispatch'
actionpack (8.0.2.1) lib/action_dispatch/routing/route_set.rb:50:in `serve'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:53:in `block in serve'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:133:in `block in find_routes'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:126:in `each'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:126:in `find_routes'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:34:in `serve'
actionpack (8.0.2.1) lib/action_dispatch/routing/route_set.rb:908:in `call'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
rack (2.2.17) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.17) lib/rack/conditional_get.rb:40:in `call'
rack (2.2.17) lib/rack/head.rb:12:in `call'
actionpack (8.0.2.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:415:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:26:in `call'
rack (2.2.17) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.17) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/cookies.rb:706:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/callbacks.rb:31:in `block in call'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:100:in `run_callbacks'
actionpack (8.0.2.1) lib/action_dispatch/middleware/callbacks.rb:30:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/debug_exceptions.rb:31:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/show_exceptions.rb:32:in `call'
logster (2.20.1) lib/logster/middleware/reporter.rb:40:in `call'
lib/middleware/default_headers.rb:13:in `call'
railties (8.0.2.1) lib/rails/rack/logger.rb:41:in `call_app'
railties (8.0.2.1) lib/rails/rack/logger.rb:29:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/request_id.rb:34:in `call'
Env
HTTP HOSTS: discourse.bsh.zone
kgrier
(Kirk Grier)
30 Agosto, 2025 07:34
9
Borré las 19 palabras de censura y el registro de invitaciones vuelve a funcionar. Parece que algo se rompió en una actualización.
kgrier
(Kirk Grier)
30 Agosto, 2025 07:49
10
Genera errores con solo una palabra de censura:
Mensaje (17 copias reportadas)
NoMethodError (método no definido `gsub' para true)
app/services/word_watcher.rb:258:in `censor_text_with_regexp'
app/services/word_watcher.rb:146:in `block in censor_text'
app/services/word_watcher.rb:146:in `each'
app/services/word_watcher.rb:146:in `inject'
app/services/word_watcher.rb:146:in `censor_text'
app/models/user.rb:1612:in `block in apply_watched_words'
app/models/user.rb:1611:in `each'
app/models/user.rb:1611:in `apply_watched_words'
app/models/invite_redeemer.rb:156:in `create_user_from_invite'
app/models/invite_redeemer.rb:220:in `invited_user'
app/models/invite_redeemer.rb:277:in `add_user_to_groups'
app/models/invite_redeemer.rb:238:in `process_invitation'
app/models/invite_redeemer.rb:56:in `block in redeem'
app/models/invite_redeemer.rb:54:in `redeem'
app/models/invite.rb:239:in `redeem'
app/controllers/invites_controller.rb:376:in `perform_accept_invitation'
app/controllers/application_controller.rb:428:in `block in with_resolved_locale'
app/controllers/application_controller.rb:428:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:415:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:26:in `call'
lib/middleware/default_headers.rb:13:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
lib/middleware/processing_request.rb:12:in `call'
lib/middleware/request_tracker.rb:410:in `call'
Backtrace
app/services/word_watcher.rb:258:in `censor_text_with_regexp'
app/services/word_watcher.rb:146:in `block in censor_text'
app/services/word_watcher.rb:146:in `each'
app/services/word_watcher.rb:146:in `inject'
app/services/word_watcher.rb:146:in `censor_text'
app/models/user.rb:1612:in `block in apply_watched_words'
app/models/user.rb:1611:in `each'
app/models/user.rb:1611:in `apply_watched_words'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:361:in `block in make_lambda'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:178:in `block in call'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:668:in `block (2 levels) in default_terminator'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:667:in `catch'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:667:in `block in default_terminator'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:179:in `call'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:559:in `block in invoke_before'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:559:in `each'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:559:in `invoke_before'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:118:in `block in run_callbacks'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:140:in `run_callbacks'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:913:in `_run_save_callbacks'
activerecord (8.0.2.1) lib/active_record/callbacks.rb:441:in `create_or_update'
activerecord (8.0.2.1) lib/active_record/timestamp.rb:127:in `create_or_update'
activerecord (8.0.2.1) lib/active_record/persistence.rb:424:in `save!'
activerecord (8.0.2.1) lib/active_record/validations.rb:54:in `save!'
activerecord (8.0.2.1) lib/active_record/transactions.rb:365:in `block in save!'
activerecord (8.0.2.1) lib/active_record/transactions.rb:417:in `block (2 levels) in with_transaction_returning_status'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/database_statements.rb:357:in `transaction'
activerecord (8.0.2.1) lib/active_record/transactions.rb:413:in `block in with_transaction_returning_status'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/connection_pool.rb:412:in `with_connection'
activerecord (8.0.2.1) lib/active_record/connection_handling.rb:310:in `with_connection'
activerecord (8.0.2.1) lib/active_record/transactions.rb:409:in `with_transaction_returning_status'
activerecord (8.0.2.1) lib/active_record/transactions.rb:365:in `save!'
activerecord (8.0.2.1) lib/active_record/suppressor.rb:56:in `save!'
app/models/invite_redeemer.rb:156:in `create_user_from_invite'
app/models/invite_redeemer.rb:220:in `invited_user'
app/models/invite_redeemer.rb:277:in `add_user_to_groups'
app/models/invite_redeemer.rb:238:in `process_invitation'
app/models/invite_redeemer.rb:56:in `block in redeem'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/transaction.rb:626:in `block in within_new_transaction'
activesupport (8.0.2.1) lib/active_support/concurrency/null_lock.rb:9:in `synchronize'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/transaction.rb:623:in `within_new_transaction'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/database_statements.rb:367:in `within_new_transaction'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/database_statements.rb:359:in `transaction'
activerecord (8.0.2.1) lib/active_record/transactions.rb:233:in `block in transaction'
activerecord (8.0.2.1) lib/active_record/connection_adapters/abstract/connection_pool.rb:418:in `with_connection'
activerecord (8.0.2.1) lib/active_record/connection_handling.rb:310:in `with_connection'
activerecord (8.0.2.1) lib/active_record/transactions.rb:232:in `transaction'
app/models/invite_redeemer.rb:54:in `redeem'
app/models/invite.rb:239:in `redeem'
app/controllers/invites_controller.rb:376:in `perform_accept_invitation'
actionpack (8.0.2.1) lib/action_controller/metal/basic_implicit_render.rb:8:in `send_action'
actionpack (8.0.2.1) lib/abstract_controller/base.rb:226:in `process_action'
actionpack (8.0.2.1) lib/action_controller/metal/rendering.rb:193:in `process_action'
actionpack (8.0.2.1) lib/abstract_controller/callbacks.rb:261:in `block in process_action'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:120:in `block in run_callbacks'
app/controllers/application_controller.rb:428:in `block in with_resolved_locale'
i18n (1.14.7) lib/i18n.rb:353:in `with_locale'
app/controllers/application_controller.rb:428:in `with_resolved_locale'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:129:in `block in run_callbacks'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:140:in `run_callbacks'
actionpack (8.0.2.1) lib/abstract_controller/callbacks.rb:260:in `process_action'
actionpack (8.0.2.1) lib/action_controller/metal/rescue.rb:27:in `process_action'
actionpack (8.0.2.1) lib/action_controller/metal/instrumentation.rb:76:in `block in process_action'
activesupport (8.0.2.1) lib/active_support/notifications.rb:210:in `block in instrument'
activesupport (8.0.2.1) lib/active_support/notifications/instrumenter.rb:58:in `instrument'
activesupport (8.0.2.1) lib/active_support/notifications.rb:210:in `instrument'
actionpack (8.0.2.1) lib/action_controller/metal/instrumentation.rb:75:in `process_action'
actionpack (8.0.2.1) lib/action_controller/metal/params_wrapper.rb:259:in `process_action'
activerecord (8.0.2.1) lib/active_record/railties/controller_runtime.rb:39:in `process_action'
actionpack (8.0.2.1) lib/abstract_controller/base.rb:163:in `process'
actionview (8.0.2.1) lib/action_view/rendering.rb:40:in `process'
rack-mini-profiler (4.0.1) lib/mini_profiler/profiling_methods.rb:90:in `block in profile_method'
actionpack (8.0.2.1) lib/action_controller/metal.rb:252:in `dispatch'
actionpack (8.0.2.1) lib/action_controller/metal.rb:335:in `dispatch'
actionpack (8.0.2.1) lib/action_dispatch/routing/route_set.rb:67:in `dispatch'
actionpack (8.0.2.1) lib/action_dispatch/routing/route_set.rb:50:in `serve'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:53:in `block in serve'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:133:in `block in find_routes'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:126:in `each'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:126:in `find_routes'
actionpack (8.0.2.1) lib/action_dispatch/journey/router.rb:34:in `serve'
actionpack (8.0.2.1) lib/action_dispatch/routing/route_set.rb:908:in `call'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
rack (2.2.17) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.17) lib/rack/conditional_get.rb:40:in `call'
rack (2.2.17) lib/rack/head.rb:12:in `call'
actionpack (8.0.2.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:415:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:26:in `call'
rack (2.2.17) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.17) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/cookies.rb:706:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/callbacks.rb:31:in `block in call'
activesupport (8.0.2.1) lib/active_support/callbacks.rb:100:in `run_callbacks'
actionpack (8.0.2.1) lib/action_dispatch/middleware/callbacks.rb:30:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/debug_exceptions.rb:31:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/show_exceptions.rb:32:in `call'
logster (2.20.1) lib/logster/middleware/reporter.rb:40:in `call'
lib/middleware/default_headers.rb:13:in `call'
railties (8.0.2.1) lib/rails/rack/logger.rb:41:in `call_app'
railties (8.0.2.1) lib/rails/rack/logger.rb:29:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
actionpack (8.0.2.1) lib/action_dispatch/middleware/request_id.rb:34:in `call'
Env
HTTP HOSTS: discourse.bsh.zone
Moin
30 Agosto, 2025 08:09
11
Me pregunto si esto está relacionado con el cambio en
main ← pento/fix-confirm-user-field-consistency
opened 06:15AM - 15 Aug 25 UTC
## ✨ What's This?
See: t/161115
This PR fixes two issues with the "confirm… " type user field.
These user fields are rendered as checkboxes, so the user field value was being used directly as the `@checked` param for the input element. Non-boolean values would cause unexpected checkbox behaviour (for example, a value of `"false"` would cause the checkbox to be checked, or a value of `null` would cause the form to be submitted with an empty value, instead of `false`).
Additionally, since we know that these fields will only have boolean values, `User#user_fields` now automatically casts the string `"true"` and `"false"` values for confirm fields into their boolean equivalent.
2 Me gusta
kgrier
(Kirk Grier)
30 Agosto, 2025 08:17
12
Solo por diversión desactivé la aprobación de moderador de nuevas cuentas. La invitación sigue fallando presentando “Error interno del servidor” al usuario que intenta registrarse.
j.jaffeux
(Joffrey Jaffeux)
30 Agosto, 2025 09:04
13
Gracias, creo que tenemos suficiente para intentar reproducirlo la próxima semana.
2 Me gusta
j.jaffeux
(Joffrey Jaffeux)
31 Agosto, 2025 10:23
14
Ok, gracias por el informe y lamento los problemas que causa. Eso debería solucionarlo:
main ← confirm-user-field-watch-word
opened 10:23AM - 31 Aug 25 UTC
A confirm field will always be a Boolean so there's no need to check for it. Thi… s was causing an error as we were trying to treat it as a string in the watched word code.
Example error:
```
NoMethodError (undefined method `gsub' for true)
app/services/word_watcher.rb:258:in `censor_text_with_regexp'
app/services/word_watcher.rb:146:in `block in censor_text'
app/services/word_watcher.rb:146:in `each'
app/services/word_watcher.rb:146:in `inject'
app/services/word_watcher.rb:146:in `censor_text'
app/models/user.rb:1612:in `block in apply_watched_words'
app/models/user.rb:1611:in `each'
app/models/user.rb:1611:in `apply_watched_words'
app/models/invite_redeemer.rb:156:in `create_user_from_invite'
app/models/invite_redeemer.rb:220:in `invited_user'
app/models/invite_redeemer.rb:277:in `add_user_to_groups'
app/models/invite_redeemer.rb:238:in `process_invitation'
app/models/invite_redeemer.rb:56:in `block in redeem'
app/models/invite_redeemer.rb:54:in `redeem'
app/models/invite.rb:239:in `redeem'
```
Intentaré fusionarlo el lunes.
3 Me gusta
sam
(Sam Saffron)
31 Agosto, 2025 23:20
15
Creo que también nos falta dropdown… ¿por qué no moverlo a solo verificar el tipo de campo text?
1 me gusta
pento
(Gary)
1 Septiembre, 2025 05:51
17
¡Gracias por el informe de errores! He modificado y fusionado la corrección de @j.jaffeux en main, y también la he portado a la rama stable.
¡Dinos cómo va, o si encuentras algún otro problema!
2 Me gusta
kgrier
(Kirk Grier)
1 Septiembre, 2025 07:24
18
¡Genial! Y gracias Reconstruiré / actualizaré mañana (lunes 9/1) por la noche y te informaré. ¡Que tengas un excelente Día del Trabajo si estás en un lugar donde se celebra!
3 Me gusta
pento
(Gary)
Cerrado
3 Septiembre, 2025 06:51
19
Este tema se cerró automáticamente después de 2 días. Ya no se permiten nuevas respuestas.