I am seeing this error when trying to save the included components field for a theme. It happens in safe mode as well. Any idea what’s going on here?
סיכום מבוסס בינה מלאכותית
Included Components Error
User davidkingham is experiencing an error when trying to save the included components field for a theme, even in safe mode. Arkshine suggests checking the /logs route for errors.
Upon investigation, davidkingham discovers that the issue is due to a theme component having the same name as a theme, which is not allowed in the latest version of Discourse. Renaming the theme component resolves the issue.
The error log reveals a RecordInvalid error due to a validation failure, specifically that “Themes with child themes can’t be child themes themselves.”
Are there any errors on /logs route when you try to save?
On a side note, here is your Discourse version in case someone is interested:
Discourse v3.3.0.beta3-dev — e161086630 — Ember v5.5.0
Ahh yes. There seems to a change in the latest version where a theme component cannot have the same name as a theme. I renamed the ‘Dark’ TC to ‘Dark TC’ and that seems to have resolved this. Thanks Arkshine!
Message (2 copies reported)
ActiveRecord::RecordInvalid (Validation failed: Themes with child themes can't be child themes themselves)
app/models/theme.rb:619:in `parent_theme_ids='
app/controllers/admin/themes_controller.rb:224:in `update'
app/controllers/application_controller.rb:424:in `block in with_resolved_locale'
app/controllers/application_controller.rb:424:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:64:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:393:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:26: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:24:in `call'
lib/middleware/request_tracker.rb:289:in `call'
Backtrace
activerecord (7.0.8.4) lib/active_record/validations.rb:80:in `raise_validation_error'
activerecord (7.0.8.4) lib/active_record/validations.rb:53:in `save!'
activerecord (7.0.8.4) lib/active_record/transactions.rb:302:in `block in save!'
activerecord (7.0.8.4) lib/active_record/transactions.rb:354:in `block in with_transaction_returning_status'
activerecord (7.0.8.4) lib/active_record/connection_adapters/abstract/database_statements.rb:314:in `transaction'
activerecord (7.0.8.4) lib/active_record/transactions.rb:350:in `with_transaction_returning_status'
activerecord (7.0.8.4) lib/active_record/transactions.rb:302:in `save!'
activerecord (7.0.8.4) lib/active_record/suppressor.rb:54:in `save!'
activerecord (7.0.8.4) lib/active_record/associations/has_many_through_association.rb:80:in `save_through_record'
activerecord (7.0.8.4) lib/active_record/associations/has_many_through_association.rb:31:in `insert_record'
activerecord (7.0.8.4) lib/active_record/associations/collection_association.rb:431:in `block (2 levels) in concat_records'
activerecord (7.0.8.4) lib/active_record/associations/collection_association.rb:456:in `replace_on_target'
activerecord (7.0.8.4) lib/active_record/associations/collection_association.rb:272:in `add_to_target'
activerecord (7.0.8.4) lib/active_record/associations/collection_association.rb:429:in `block in concat_records'
activerecord (7.0.8.4) lib/active_record/associations/collection_association.rb:427:in `each'
activerecord (7.0.8.4) lib/active_record/associations/collection_association.rb:427:in `concat_records'
activerecord (7.0.8.4) lib/active_record/associations/has_many_association.rb:133:in `concat_records'
activerecord (7.0.8.4) lib/active_record/associations/has_many_through_association.rb:40:in `concat_records'
activerecord (7.0.8.4) lib/active_record/associations/collection_association.rb:125:in `block in concat'
activerecord (7.0.8.4) lib/active_record/connection_adapters/abstract/database_statements.rb:314:in `transaction'
activerecord (7.0.8.4) lib/active_record/transactions.rb:209:in `transaction'
activerecord (7.0.8.4) lib/active_record/associations/collection_association.rb:308:in `transaction'
activerecord (7.0.8.4) lib/active_record/associations/collection_association.rb:125:in `concat'
activerecord (7.0.8.4) lib/active_record/associations/has_many_through_association.rb:21:in `concat'
activerecord (7.0.8.4) lib/active_record/associations/collection_association.rb:407:in `replace_records'
activerecord (7.0.8.4) lib/active_record/associations/collection_association.rb:243:in `block in replace'
activerecord (7.0.8.4) lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
activesupport (7.0.8.4) lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
activesupport (7.0.8.4) lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
activesupport (7.0.8.4) lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
activesupport (7.0.8.4) lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
activerecord (7.0.8.4) lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
activerecord (7.0.8.4) lib/active_record/connection_adapters/abstract/database_statements.rb:316:in `transaction'
activerecord (7.0.8.4) lib/active_record/transactions.rb:209:in `transaction'
activerecord (7.0.8.4) lib/active_record/associations/collection_association.rb:308:in `transaction'
activerecord (7.0.8.4) lib/active_record/associations/collection_association.rb:243:in `replace'
activerecord (7.0.8.4) lib/active_record/associations/collection_association.rb:75:in `ids_writer'
activerecord (7.0.8.4) lib/active_record/associations/builder/collection_association.rb:73:in `parent_theme_ids='
app/models/theme.rb:619:in `parent_theme_ids='
app/controllers/admin/themes_controller.rb:224:in `update'
actionpack (7.0.8.4) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
actionpack (7.0.8.4) lib/abstract_controller/base.rb:215:in `process_action'
actionpack (7.0.8.4) lib/action_controller/metal/rendering.rb:165:in `process_action'
actionpack (7.0.8.4) lib/abstract_controller/callbacks.rb:234:in `block in process_action'
activesupport (7.0.8.4) lib/active_support/callbacks.rb:118:in `block in run_callbacks'
app/controllers/application_controller.rb:424:in `block in with_resolved_locale'
i18n (1.14.5) lib/i18n.rb:351:in `with_locale'
app/controllers/application_controller.rb:424:in `with_resolved_locale'
activesupport (7.0.8.4) lib/active_support/callbacks.rb:127:in `block in run_callbacks'
activesupport (7.0.8.4) lib/active_support/callbacks.rb:138:in `run_callbacks'
actionpack (7.0.8.4) lib/abstract_controller/callbacks.rb:233:in `process_action'
actionpack (7.0.8.4) lib/action_controller/metal/rescue.rb:23:in `process_action'
actionpack (7.0.8.4) lib/action_controller/metal/instrumentation.rb:67:in `block in process_action'
activesupport (7.0.8.4) lib/active_support/notifications.rb:206:in `block in instrument'
activesupport (7.0.8.4) lib/active_support/notifications/instrumenter.rb:24:in `instrument'
activesupport (7.0.8.4) lib/active_support/notifications.rb:206:in `instrument'
actionpack (7.0.8.4) lib/action_controller/metal/instrumentation.rb:66:in `process_action'
actionpack (7.0.8.4) lib/action_controller/metal/params_wrapper.rb:259:in `process_action'
activerecord (7.0.8.4) lib/active_record/railties/controller_runtime.rb:27:in `process_action'
actionpack (7.0.8.4) lib/abstract_controller/base.rb:151:in `process'
actionview (7.0.8.4) lib/action_view/rendering.rb:39:in `process'
rack-mini-profiler (3.3.1) lib/mini_profiler/profiling_methods.rb:115:in `block in profile_method'
actionpack (7.0.8.4) lib/action_controller/metal.rb:188:in `dispatch'
actionpack (7.0.8.4) lib/action_controller/metal.rb:251:in `dispatch'
actionpack (7.0.8.4) lib/action_dispatch/routing/route_set.rb:49:in `dispatch'
actionpack (7.0.8.4) lib/action_dispatch/routing/route_set.rb:32:in `serve'
actionpack (7.0.8.4) lib/action_dispatch/routing/mapper.rb:18:in `block in <class:Constraints>'
actionpack (7.0.8.4) lib/action_dispatch/routing/mapper.rb:48:in `serve'
actionpack (7.0.8.4) lib/action_dispatch/journey/router.rb:50:in `block in serve'
actionpack (7.0.8.4) lib/action_dispatch/journey/router.rb:32:in `each'
actionpack (7.0.8.4) lib/action_dispatch/journey/router.rb:32:in `serve'
actionpack (7.0.8.4) lib/action_dispatch/routing/route_set.rb:852:in `call'
lib/middleware/omniauth_bypass_middleware.rb:64:in `call'
rack (2.2.9) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.9) lib/rack/conditional_get.rb:40:in `call'
rack (2.2.9) lib/rack/head.rb:12:in `call'
actionpack (7.0.8.4) lib/action_dispatch/http/permissions_policy.rb:38:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:393:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:26:in `call'
rack (2.2.9) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.9) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/cookies.rb:704:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/callbacks.rb:27:in `block in call'
activesupport (7.0.8.4) lib/active_support/callbacks.rb:99:in `run_callbacks'
actionpack (7.0.8.4) lib/action_dispatch/middleware/callbacks.rb:26:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/debug_exceptions.rb:28:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/show_exceptions.rb:29:in `call'
logster (2.19.1) lib/logster/middleware/reporter.rb:40:in `call'
railties (7.0.8.4) lib/rails/rack/logger.rb:40:in `call_app'
railties (7.0.8.4) 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.8.4) lib/action_dispatch/middleware/remote_ip.rb:93:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/request_id.rb:26:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
rack (2.2.9) lib/rack/method_override.rb:24:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/executor.rb:14:in `call'
rack (2.2.9) lib/rack/sendfile.rb:110:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/host_authorization.rb:131:in `call'
rack-mini-profiler (3.3.1) lib/mini_profiler.rb:334:in `call'
message_bus (4.3.8) lib/message_bus/rack/middleware.rb:60:in `call'
lib/middleware/request_tracker.rb:289:in `call'
railties (7.0.8.4) lib/rails/engine.rb:530:in `call'
railties (7.0.8.4) lib/rails/railtie.rb:226:in `public_send'
railties (7.0.8.4) lib/rails/railtie.rb:226:in `method_missing'
rack (2.2.9) lib/rack/urlmap.rb:74:in `block in ca
Env
HTTP HOSTS: community.naturephotographers.network
