From 427d54b2b00fa94474c0522eaed750452c4e7f43 Mon Sep 17 00:00:00 2001 From: Krzysztof Kotlarek Date: Wed, 2 Oct 2019 14:01:53 +1000 Subject: [PATCH] DEV: Upgrading Discourse to Zeitwerk (#8098) Zeitwerk simplifies working with dependencies in dev and makes it easier reloading class chains. We no longer need to use Rails "require_dependency" anywhere and instead can just use standard Ruby patterns to require files. This is a far reaching change and we expect some followups here. --- app/controllers/about_controller.rb | 2 -- app/controllers/admin/backups_controller.rb | 2 +- app/controllers/admin/email_controller.rb | 2 -- app/controllers/admin/embedding_controller.rb | 2 -- app/controllers/admin/emojis_controller.rb | 2 -- app/controllers/admin/reports_controller.rb | 2 -- .../admin/screened_ip_addresses_controller.rb | 2 -- .../admin/site_texts_controller.rb | 3 --- .../admin/staff_action_logs_controller.rb | 2 -- app/controllers/admin/themes_controller.rb | 2 -- app/controllers/admin/users_controller.rb | 4 --- app/controllers/admin/versions_controller.rb | 2 -- app/controllers/application_controller.rb | 14 ----------- app/controllers/categories_controller.rb | 2 -- app/controllers/composer_controller.rb | 2 -- .../composer_messages_controller.rb | 2 -- app/controllers/embed_controller.rb | 2 -- app/controllers/inline_onebox_controller.rb | 2 -- app/controllers/invites_controller.rb | 2 -- app/controllers/list_controller.rb | 3 --- app/controllers/notifications_controller.rb | 2 -- app/controllers/onebox_controller.rb | 2 -- .../post_action_users_controller.rb | 2 -- app/controllers/post_actions_controller.rb | 2 -- app/controllers/posts_controller.rb | 9 ------- app/controllers/reviewables_controller.rb | 1 - app/controllers/search_controller.rb | 2 -- app/controllers/session_controller.rb | 6 ----- app/controllers/similar_topics_controller.rb | 3 --- app/controllers/site_controller.rb | 2 -- app/controllers/static_controller.rb | 3 --- app/controllers/steps_controller.rb | 4 --- app/controllers/tags_controller.rb | 5 ---- app/controllers/topics_controller.rb | 9 ------- app/controllers/uploads_controller.rb | 2 -- app/controllers/user_avatars_controller.rb | 2 -- .../users/omniauth_callbacks_controller.rb | 4 --- app/controllers/users_controller.rb | 8 ------ app/controllers/users_email_controller.rb | 4 --- app/controllers/wizard_controller.rb | 3 --- app/helpers/application_helper.rb | 8 ------ app/jobs/base.rb | 11 +++----- app/jobs/onceoff/clean_up_post_timings.rb | 2 +- .../onceoff/clean_up_sidekiq_statistic.rb | 2 +- .../onceoff/clean_up_user_export_topics.rb | 2 +- app/jobs/onceoff/clear_width_and_height.rb | 2 +- .../onceoff/correct_missing_dualstack_urls.rb | 2 +- app/jobs/onceoff/create_tags_search_index.rb | 2 +- .../onceoff/fix_featured_link_for_topics.rb | 2 +- .../onceoff/fix_invalid_gravatar_uploads.rb | 2 +- .../onceoff/fix_invalid_upload_extensions.rb | 4 +-- .../fix_out_of_sync_user_uploaded_avatar.rb | 2 +- app/jobs/onceoff/fix_posts_read.rb | 2 +- .../fix_primary_emails_for_staged_users.rb | 4 +-- app/jobs/onceoff/fix_retro_anniversary.rb | 4 +-- app/jobs/onceoff/fix_s3_etags.rb | 2 +- app/jobs/onceoff/grant_emoji.rb | 2 +- .../onceoff/grant_first_reply_by_email.rb | 2 +- app/jobs/onceoff/grant_onebox.rb | 2 +- app/jobs/onceoff/init_category_tag_stats.rb | 2 +- app/jobs/onceoff/migrate_censored_words.rb | 2 +- app/jobs/onceoff/migrate_custom_emojis.rb | 4 +-- app/jobs/onceoff/migrate_featured_links.rb | 2 +- app/jobs/onceoff/migrate_tagging_plugin.rb | 2 +- app/jobs/onceoff/migrate_upload_extensions.rb | 2 +- app/jobs/onceoff/migrate_url_site_settings.rb | 2 +- app/jobs/{ => onceoff}/onceoff.rb | 4 ++- app/jobs/onceoff/post_uploads_recovery.rb | 4 +-- .../onceoff/remove_old_auto_close_jobs.rb | 2 +- app/jobs/onceoff/retro_grant_anniversary.rb | 4 +-- app/jobs/onceoff/retro_recent_time_read.rb | 2 +- app/jobs/regular/admin_confirmation_email.rb | 4 +-- app/jobs/regular/anonymize_user.rb | 2 +- .../regular/automatic_group_membership.rb | 2 +- app/jobs/regular/backup_chunks_merger.rb | 5 +--- app/jobs/regular/bulk_grant_trust_level.rb | 2 +- app/jobs/regular/bulk_invite.rb | 5 +--- app/jobs/regular/bump_topic.rb | 2 +- app/jobs/regular/confirm_sns_subscription.rb | 2 +- app/jobs/regular/crawl_topic_link.rb | 4 +-- app/jobs/regular/create_avatar_thumbnails.rb | 2 +- app/jobs/regular/create_backup.rb | 4 +-- app/jobs/regular/create_user_reviewable.rb | 2 +- app/jobs/regular/critical_user_email.rb | 1 - .../delete_inaccessible_notifications.rb | 2 +- app/jobs/regular/delete_topic.rb | 2 +- app/jobs/regular/download_avatar_from_url.rb | 2 +- app/jobs/regular/download_backup_email.rb | 5 +--- .../download_profile_background_from_url.rb | 2 +- app/jobs/regular/emit_web_hook_event.rb | 2 +- app/jobs/regular/enable_bootstrap_mode.rb | 2 +- app/jobs/regular/export_csv_file.rb | 5 +--- app/jobs/regular/feature_topic_users.rb | 2 +- app/jobs/regular/invite_email.rb | 4 +-- .../invite_password_instructions_email.rb | 4 +-- app/jobs/regular/notify_category_change.rb | 4 +-- .../notify_mailing_list_subscribers.rb | 4 +-- app/jobs/regular/notify_moved_posts.rb | 2 +- app/jobs/regular/notify_post_revision.rb | 2 +- app/jobs/regular/notify_reviewable.rb | 2 +- app/jobs/regular/notify_tag_change.rb | 4 +-- app/jobs/regular/post_alert.rb | 4 +-- .../regular/process_bulk_invite_emails.rb | 4 +-- app/jobs/regular/process_email.rb | 2 +- app/jobs/regular/process_post.rb | 3 +-- app/jobs/regular/process_sns_notification.rb | 2 +- app/jobs/regular/publish_topic_to_category.rb | 4 +-- app/jobs/regular/pull_hotlinked_images.rb | 6 +---- app/jobs/regular/push_notification.rb | 2 +- app/jobs/regular/rebake_custom_emoji_posts.rb | 2 +- app/jobs/regular/retrieve_topic.rb | 5 +--- app/jobs/regular/run_heartbeat.rb | 2 +- app/jobs/regular/send_push_notification.rb | 2 +- app/jobs/regular/send_system_message.rb | 3 +-- app/jobs/regular/suspicious_login.rb | 2 +- app/jobs/regular/toggle_topic_closed.rb | 2 +- app/jobs/regular/topic_action_converter.rb | 2 +- app/jobs/regular/topic_reminder.rb | 2 +- app/jobs/regular/truncate_user_flag_stats.rb | 2 +- app/jobs/regular/unpin_topic.rb | 2 +- app/jobs/regular/update_gravatar.rb | 3 +-- app/jobs/regular/update_group_mentions.rb | 2 +- .../regular/update_private_uploads_acl.rb | 2 +- app/jobs/regular/update_s3_inventory.rb | 2 +- app/jobs/regular/update_top_redirection.rb | 2 +- app/jobs/regular/update_username.rb | 2 +- app/jobs/regular/user_email.rb | 5 +--- app/jobs/scheduled/about_stats.rb | 2 +- .../scheduled/activation_reminder_emails.rb | 2 +- .../scheduled/auto_expire_user_api_keys.rb | 2 +- app/jobs/scheduled/auto_queue_handler.rb | 2 +- app/jobs/scheduled/badge_grant.rb | 2 +- app/jobs/scheduled/category_stats.rb | 2 +- .../scheduled/check_out_of_date_themes.rb | 2 +- .../scheduled/clean_up_associated_accounts.rb | 2 +- app/jobs/scheduled/clean_up_crawler_stats.rb | 2 +- .../clean_up_deprecated_url_site_settings.rb | 2 +- app/jobs/scheduled/clean_up_email_logs.rb | 2 +- app/jobs/scheduled/clean_up_exports.rb | 2 +- app/jobs/scheduled/clean_up_inactive_users.rb | 2 +- .../scheduled/clean_up_post_reply_keys.rb | 2 +- app/jobs/scheduled/clean_up_search_logs.rb | 2 +- .../scheduled/clean_up_unmatched_emails.rb | 2 +- app/jobs/scheduled/clean_up_unmatched_ips.rb | 2 +- .../scheduled/clean_up_unsubscribe_keys.rb | 2 +- .../scheduled/clean_up_unused_staged_users.rb | 2 +- app/jobs/scheduled/clean_up_uploads.rb | 2 +- app/jobs/scheduled/create_missing_avatars.rb | 2 +- app/jobs/scheduled/dashboard_stats.rb | 6 +---- .../scheduled/destroy_old_deletion_stubs.rb | 2 +- .../scheduled/destroy_old_hidden_posts.rb | 2 +- app/jobs/scheduled/directory_refresh_daily.rb | 2 +- app/jobs/scheduled/directory_refresh_older.rb | 2 +- app/jobs/scheduled/disable_bootstrap_mode.rb | 2 +- app/jobs/scheduled/enqueue_digest_emails.rb | 2 +- app/jobs/scheduled/enqueue_onceoffs.rb | 4 +-- app/jobs/scheduled/ensure_db_consistency.rb | 2 +- .../scheduled/ensure_s3_uploads_existence.rb | 2 +- ...x_user_usernames_and_groups_names_clash.rb | 2 +- .../scheduled/grant_anniversary_badges.rb | 2 +- .../grant_new_user_of_the_month_badges.rb | 4 +-- app/jobs/scheduled/heartbeat.rb | 2 +- app/jobs/scheduled/ignored_users_summary.rb | 2 +- .../scheduled/invalidate_inactive_admins.rb | 2 +- app/jobs/scheduled/migrate_upload_scheme.rb | 2 +- .../pending_queued_posts_reminder.rb | 2 +- .../scheduled/pending_reviewables_reminder.rb | 2 +- app/jobs/scheduled/pending_users_reminder.rb | 4 +-- app/jobs/scheduled/periodical_updates.rb | 4 +-- app/jobs/scheduled/poll_feed.rb | 8 +----- app/jobs/scheduled/poll_mailbox.rb | 6 +---- app/jobs/scheduled/process_badge_backlog.rb | 2 +- app/jobs/scheduled/purge_deleted_uploads.rb | 2 +- .../scheduled/purge_expired_ignored_users.rb | 2 +- .../scheduled/purge_old_web_hook_events.rb | 2 +- app/jobs/scheduled/purge_unactivated.rb | 2 +- app/jobs/scheduled/reindex_search.rb | 2 +- app/jobs/scheduled/reviewable_priorities.rb | 2 +- app/jobs/scheduled/schedule_backup.rb | 2 +- app/jobs/scheduled/tl3_promotions.rb | 2 +- app/jobs/scheduled/top_refresh_older.rb | 2 +- app/jobs/scheduled/top_refresh_today.rb | 2 +- app/jobs/scheduled/unsilence_users.rb | 2 +- app/jobs/scheduled/update_heat_settings.rb | 2 +- app/jobs/scheduled/version_check.rb | 5 +--- app/jobs/scheduled/weekly.rb | 4 +-- app/mailers/admin_confirmation_mailer.rb | 2 -- app/mailers/download_backup_mailer.rb | 2 -- app/mailers/invite_mailer.rb | 2 -- app/mailers/rejection_mailer.rb | 2 +- app/mailers/subscription_mailer.rb | 2 -- app/mailers/test_mailer.rb | 2 -- app/mailers/user_notifications.rb | 7 ------ app/mailers/version_mailer.rb | 2 -- app/models/admin_dashboard_data.rb | 2 -- .../auto_track_duration_site_setting.rb | 2 -- app/models/backup_location_site_setting.rb | 2 -- app/models/badge.rb | 2 -- app/models/category.rb | 2 -- app/models/category_list.rb | 2 -- app/models/category_user.rb | 2 -- app/models/color_scheme.rb | 2 -- app/models/developer.rb | 2 -- app/models/digest_email_site_setting.rb | 2 -- app/models/discourse_single_sign_on.rb | 2 -- app/models/email_change_request.rb | 2 -- app/models/email_level_site_setting.rb | 2 -- app/models/email_log.rb | 2 -- app/models/embeddable_host.rb | 2 -- app/models/group.rb | 2 -- app/models/group_user.rb | 2 -- app/models/invite.rb | 2 -- ...ike_notification_frequency_site_setting.rb | 2 -- app/models/locale_site_setting.rb | 2 -- app/models/mailing_list_mode_site_setting.rb | 2 -- app/models/new_topic_duration_site_setting.rb | 2 -- app/models/notification.rb | 3 --- ...cation_level_when_replying_site_setting.rb | 3 --- app/models/optimized_image.rb | 5 ---- app/models/post.rb | 10 +------- app/models/post_action.rb | 5 ---- app/models/post_action_type.rb | 4 --- app/models/post_analyzer.rb | 3 --- app/models/post_revision.rb | 2 -- app/models/post_timing.rb | 2 -- app/models/previous_replies_site_setting.rb | 2 -- app/models/remote_theme.rb | 4 --- ...ove_muted_tags_from_latest_site_setting.rb | 2 -- app/models/report.rb | 2 -- app/models/reviewable.rb | 7 ------ app/models/reviewable_flagged_post.rb | 2 -- app/models/reviewable_priority_setting.rb | 2 -- app/models/reviewable_queued_post.rb | 3 --- app/models/reviewable_sensitivity_setting.rb | 2 -- app/models/reviewable_user.rb | 2 -- app/models/s3_region_site_setting.rb | 2 -- app/models/screened_email.rb | 2 -- app/models/screened_ip_address.rb | 4 +-- app/models/screened_url.rb | 2 -- app/models/search_log.rb | 2 -- app/models/site.rb | 3 --- app/models/site_setting.rb | 4 --- app/models/slug_setting.rb | 2 -- app/models/tag_user.rb | 2 -- app/models/theme.rb | 8 ------ app/models/theme_field.rb | 4 --- app/models/top_topic.rb | 2 -- app/models/topic.rb | 14 ----------- app/models/topic_embed.rb | 3 --- app/models/topic_link.rb | 2 -- app/models/topic_link_click.rb | 1 - app/models/topic_list.rb | 3 --- app/models/topic_posters_summary.rb | 2 -- app/models/topic_user.rb | 2 -- app/models/trust_level_and_staff_setting.rb | 2 -- app/models/trust_level_setting.rb | 2 -- app/models/upload.rb | 8 +----- app/models/user.rb | 16 ------------ app/models/user_avatar.rb | 3 --- app/models/user_email.rb | 2 -- app/models/user_profile.rb | 1 - app/models/user_search.rb | 2 -- app/models/username_validator.rb | 2 -- app/models/watched_word.rb | 2 -- app/serializers/admin_user_serializer.rb | 2 -- .../concerns/user_auth_tokens_mixin.rb | 3 --- app/serializers/current_user_serializer.rb | 2 -- app/serializers/listable_topic_serializer.rb | 2 -- app/serializers/new_post_result_serializer.rb | 2 -- .../post_action_type_serializer.rb | 2 -- .../post_stream_serializer_mixin.rb | 4 --- .../reviewable_explanation_serializer.rb | 1 - .../reviewable_score_serializer.rb | 2 -- app/serializers/reviewable_serializer.rb | 3 --- app/serializers/site_serializer.rb | 4 --- app/serializers/topic_view_serializer.rb | 3 --- .../trust_level3_requirements_serializer.rb | 2 -- .../web_hook_topic_view_serializer.rb | 2 -- app/services/group_message.rb | 4 --- app/services/inline_uploads.rb | 2 -- app/services/post_alerter.rb | 3 --- app/services/post_owner_changer.rb | 2 -- app/services/push_notification_pusher.rb | 2 -- app/services/search_indexer.rb | 1 - app/services/staff_action_logger.rb | 2 -- app/services/user_destroyer.rb | 2 -- app/services/user_silencer.rb | 2 -- app/services/username_changer.rb | 2 -- config/application.rb | 15 ++++++++--- config/initializers/013-excon_defaults.rb | 1 + .../initializers/014-track-setting-changes.rb | 2 -- config/initializers/099-defer.rb | 3 --- config/initializers/100-onebox_options.rb | 2 -- config/routes.rb | 4 --- lib/admin_constraint.rb | 2 -- lib/admin_user_index_query.rb | 2 -- lib/auth.rb | 22 ++++++++-------- lib/auth/default_current_user_provider.rb | 3 --- lib/{backup_restore => }/backup_restore.rb | 3 --- lib/backup_restore/local_backup_store.rb | 3 --- lib/backup_restore/s3_backup_store.rb | 3 --- lib/content_security_policy.rb | 4 +-- lib/cooked_post_processor.rb | 4 --- lib/demon/{base.rb => demon_base.rb} | 6 ++--- lib/demon/rails_autospec.rb | 4 +-- lib/demon/sidekiq.rb | 4 +-- lib/discourse_diff.rb | 2 -- lib/discourse_hub.rb | 3 --- lib/discourse_redis.rb | 1 - lib/email.rb | 4 --- lib/email/build_email_helper.rb | 15 +++++++++++ lib/email/message_builder.rb | 13 ---------- lib/email/receiver.rb | 5 ---- lib/email/renderer.rb | 2 -- lib/email/sender.rb | 1 - lib/email_cook.rb | 2 -- lib/email_updater.rb | 4 --- lib/freedom_patches/zeitwerk.rb | 25 +++++++++++++++++++ .../plugin/templates/scheduled_job.rb.erb | 2 +- lib/guardian.rb | 16 ++++++------ lib/i18n/backend/discourse_i18n.rb | 1 - lib/{import_export => }/import_export.rb | 0 lib/inline_oneboxer.rb | 2 -- lib/new_post_manager.rb | 6 +---- lib/new_post_result.rb | 2 -- .../discourse_onebox_sanitize_config.rb | 16 ++++++------ lib/oneboxer.rb | 4 +-- lib/plugin/filter.rb | 1 - lib/post_action_creator.rb | 2 -- lib/post_action_destroyer.rb | 2 -- lib/post_creator.rb | 7 +----- lib/pretty_text.rb | 4 --- lib/pretty_text/helpers.rb | 2 -- lib/rate_limiter.rb | 3 --- lib/retrieve_title.rb | 2 -- lib/reviewable/editable_fields.rb | 2 -- lib/search.rb | 2 -- lib/single_sign_on_provider.rb | 2 -- lib/site_setting_extension.rb | 5 ---- lib/site_settings/type_supervisor.rb | 3 --- lib/staff_constraint.rb | 2 -- lib/stylesheet/common.rb | 4 ++- lib/stylesheet/compiler.rb | 10 ++++---- lib/stylesheet/importer.rb | 2 +- lib/suggested_topics_builder.rb | 2 -- lib/svg_sprite/svg_sprite.rb | 2 -- lib/system_message.rb | 3 --- lib/tasks/maxminddb.rake | 2 -- lib/tasks/s3.rake | 2 -- lib/tasks/uploads.rake | 2 -- lib/theme_store/git_importer.rb | 2 -- lib/topic_creator.rb | 2 -- lib/topic_query.rb | 5 ---- lib/topic_view.rb | 5 ---- lib/trust_level.rb | 2 -- lib/upload_creator.rb | 1 - lib/upload_markdown.rb | 2 -- .../allowed_ip_address_validator.rb | 2 -- ...tive_reply_by_email_addresses_validator.rb | 2 -- lib/validators/password_validator.rb | 2 -- lib/validators/post_validator.rb | 8 ++---- lib/validators/stripped_length_validator.rb | 3 +-- lib/validators/upload_validator.rb | 2 +- lib/{webauthn => }/webauthn.rb | 0 lib/wizard.rb | 5 ---- lib/wizard/builder.rb | 5 ---- .../autoload/jobs/bot_input.rb | 2 +- .../autoload/jobs/narrative_init.rb | 4 +-- .../autoload/jobs/narrative_timeout.rb | 2 +- .../jobs/send_default_welcome_message.rb | 2 +- .../scheduled/daily_performance_report.rb | 2 +- plugins/poll/jobs/regular/close_poll.rb | 2 +- plugins/poll/plugin.rb | 2 -- script/demon_test/parent.rb | 2 +- script/discourse | 4 +-- script/import_scripts/base/uploader.rb | 3 --- .../postgresql_fallback_adapter_spec.rb | 1 - .../components/admin_user_index_query_spec.rb | 1 - .../default_current_user_provider_spec.rb | 1 - spec/components/avatar_lookup_spec.rb | 1 - .../common_passwords/common_passwords_spec.rb | 1 - spec/components/crawler_detection_spec.rb | 1 - spec/components/current_user_spec.rb | 1 - spec/components/directory_helper_spec.rb | 1 - spec/components/discourse_event_spec.rb | 1 - spec/components/discourse_hub_spec.rb | 1 - spec/components/discourse_plugin_spec.rb | 1 - spec/components/discourse_updates_spec.rb | 1 - spec/components/distributed_memoizer_spec.rb | 1 - spec/components/distributed_mutex_spec.rb | 1 - spec/components/email_updater_spec.rb | 1 - spec/components/file_store/base_store_spec.rb | 1 - .../freedom_patches/safe_buffer_spec.rb | 1 - .../schema_migration_details_spec.rb | 1 - spec/components/guardian_spec.rb | 2 -- .../highlight_js/highlight_js_spec.rb | 1 - spec/components/import/normalize_spec.rb | 1 - spec/components/inline_oneboxer_spec.rb | 1 - spec/components/json_error_spec.rb | 1 - spec/components/method_profiler_spec.rb | 1 - .../middleware/anonymous_cache_spec.rb | 1 - .../middleware/request_tracker_spec.rb | 1 - .../migration/column_dropper_spec.rb | 1 - .../components/migration/safe_migrate_spec.rb | 1 - .../migration/table_dropper_spec.rb | 1 - spec/components/oneboxer_spec.rb | 1 - spec/components/plugin/filter_manager_spec.rb | 1 - spec/components/plugin/instance_spec.rb | 1 - spec/components/plugin/metadata_spec.rb | 1 - spec/components/post_destroyer_spec.rb | 1 - spec/components/post_locker_spec.rb | 1 - spec/components/retrieve_title_spec.rb | 1 - spec/components/rtl_spec.rb | 1 - spec/components/scheduler/defer_spec.rb | 1 - spec/components/search_spec.rb | 1 - spec/components/secure_session_spec.rb | 1 - .../components/site_setting_extension_spec.rb | 2 -- .../site_settings/db_provider_spec.rb | 1 - .../site_settings/defaults_provider_spec.rb | 1 - .../local_process_provider_spec.rb | 1 - .../site_settings/type_supervisor_spec.rb | 1 - spec/components/timeline_lookup_spec.rb | 1 - spec/components/topic_retriever_spec.rb | 1 - spec/components/topics_bulk_action_spec.rb | 1 - spec/components/trashable_spec.rb | 1 - spec/components/url_helper_spec.rb | 1 - .../validators/password_validator_spec.rb | 1 - .../validators/post_validator_spec.rb | 7 +++--- .../validators/upload_validator_spec.rb | 3 +-- spec/components/wizard/step_updater_spec.rb | 3 --- spec/integration/category_tag_spec.rb | 1 - spec/integrity/onceoff_integrity_spec.rb | 4 +-- spec/jobs/automatic_group_membership_spec.rb | 1 - spec/jobs/bulk_grant_trust_level_spec.rb | 1 - spec/jobs/clean_up_uploads_spec.rb | 2 -- .../correct_missing_dualstack_urls_spec.rb | 2 -- spec/jobs/crawl_topic_link_spec.rb | 2 -- spec/jobs/create_missing_avatars_spec.rb | 2 -- spec/jobs/create_user_reviewable_spec.rb | 1 - spec/jobs/enqueue_digest_emails_spec.rb | 1 - spec/jobs/feature_topic_users_spec.rb | 1 - ..._usernames_and_groups_names_clash_spec.rb} | 4 +-- spec/jobs/grant_anniversary_badges_spec.rb | 1 - ...grant_new_user_of_the_month_badges_spec.rb | 1 - spec/jobs/heartbeat_spec.rb | 7 +++--- spec/jobs/ignored_users_summary_spec.rb | 2 -- spec/jobs/invalidate_inactive_admins_spec.rb | 2 -- spec/jobs/invite_email_spec.rb | 1 - spec/jobs/jobs_base_spec.rb | 15 ++++++----- spec/jobs/jobs_spec.rb | 1 - spec/jobs/notify_moved_posts_spec.rb | 2 -- .../pending_queued_posts_reminder_spec.rb | 2 +- spec/jobs/periodical_updates_spec.rb | 1 - spec/jobs/poll_feed_spec.rb | 1 - spec/jobs/poll_mailbox_spec.rb | 1 - spec/jobs/purge_expired_ignored_users_spec.rb | 2 -- spec/jobs/user_email_spec.rb | 1 - spec/lib/db_helper_spec.rb | 2 -- spec/lib/theme_javascript_compiler_spec.rb | 2 -- spec/lib/upload_recovery_spec.rb | 1 - ...ecurity_key_authentication_service_spec.rb | 2 +- .../security_key_registration_service_spec.rb | 2 +- spec/models/api_key_spec.rb | 1 - spec/models/badge_spec.rb | 1 - spec/models/badge_type_spec.rb | 1 - spec/models/category_spec.rb | 1 - spec/models/category_user_spec.rb | 1 - spec/models/plugin_store_spec.rb | 1 - spec/models/site_setting_spec.rb | 2 -- spec/models/site_spec.rb | 1 - spec/models/tag_user_spec.rb | 1 - spec/models/topic_spec.rb | 1 - spec/models/unsubscribe_key_spec.rb | 1 - spec/models/user_badge_spec.rb | 1 - spec/models/user_email_spec.rb | 1 - spec/models/user_option_spec.rb | 1 - spec/models/user_spec.rb | 1 - spec/multisite/pausable_spec.rb | 1 - spec/rails_helper.rb | 1 - .../admin/dashboard_controller_spec.rb | 1 - spec/requests/admin/themes_controller_spec.rb | 1 - .../admin/versions_controller_spec.rb | 1 - .../omniauth_callbacks_controller_spec.rb | 2 -- .../admin_user_list_serializer_spec.rb | 1 - .../serializers/basic_post_serializer_spec.rb | 2 -- .../serializers/basic_user_serializer_spec.rb | 1 - .../category_detailed_serializer_spec.rb | 1 - spec/serializers/category_serializer_spec.rb | 1 - spec/serializers/post_serializer_spec.rb | 1 - spec/serializers/site_serializer_spec.rb | 1 - .../topic_list_item_serializer_spec.rb | 1 - spec/serializers/user_serializer_spec.rb | 1 - spec/services/topic_status_updater_spec.rb | 1 - spec/services/user_authenticator_spec.rb | 1 - spec/services/user_destroyer_spec.rb | 1 - .../complete.html.erb_spec.rb | 1 - 496 files changed, 293 insertions(+), 1050 deletions(-) rename app/jobs/{ => onceoff}/onceoff.rb (93%) delete mode 100644 config/initializers/099-defer.rb rename lib/{backup_restore => }/backup_restore.rb (98%) rename lib/demon/{base.rb => demon_base.rb} (97%) create mode 100644 lib/email/build_email_helper.rb create mode 100644 lib/freedom_patches/zeitwerk.rb rename lib/{import_export => }/import_export.rb (100%) rename lib/{webauthn => }/webauthn.rb (100%) rename spec/jobs/{fix_user_usernames_and_group_names_clash_spec.rb => fix_user_usernames_and_groups_names_clash_spec.rb} (76%) diff --git a/app/controllers/about_controller.rb b/app/controllers/about_controller.rb index 8856a377b4f..fe2d3a2327d 100644 --- a/app/controllers/about_controller.rb +++ b/app/controllers/about_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'rate_limiter' - class AboutController < ApplicationController requires_login only: [:live_post_counts] diff --git a/app/controllers/admin/backups_controller.rb b/app/controllers/admin/backups_controller.rb index 2fae2e40da9..2e4762c05f9 100644 --- a/app/controllers/admin/backups_controller.rb +++ b/app/controllers/admin/backups_controller.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -require "backup_restore/backup_restore" +require "backup_restore" require "backup_restore/backup_store" class Admin::BackupsController < Admin::AdminController diff --git a/app/controllers/admin/email_controller.rb b/app/controllers/admin/email_controller.rb index e8c81111fa0..db89c25ebcd 100644 --- a/app/controllers/admin/email_controller.rb +++ b/app/controllers/admin/email_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'email/renderer' - class Admin::EmailController < Admin::AdminController def index diff --git a/app/controllers/admin/embedding_controller.rb b/app/controllers/admin/embedding_controller.rb index e2559fb85a5..c4540edd80b 100644 --- a/app/controllers/admin/embedding_controller.rb +++ b/app/controllers/admin/embedding_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'embedding' - class Admin::EmbeddingController < Admin::AdminController before_action :fetch_embedding diff --git a/app/controllers/admin/emojis_controller.rb b/app/controllers/admin/emojis_controller.rb index f8baa5dc39a..cc747777780 100644 --- a/app/controllers/admin/emojis_controller.rb +++ b/app/controllers/admin/emojis_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'upload_creator' - class Admin::EmojisController < Admin::AdminController def index diff --git a/app/controllers/admin/reports_controller.rb b/app/controllers/admin/reports_controller.rb index fe99dd706a2..20b97a6f255 100644 --- a/app/controllers/admin/reports_controller.rb +++ b/app/controllers/admin/reports_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'report' - class Admin::ReportsController < Admin::AdminController def index reports_methods = ['page_view_total_reqs'] + diff --git a/app/controllers/admin/screened_ip_addresses_controller.rb b/app/controllers/admin/screened_ip_addresses_controller.rb index ac3b1b8b98d..400620c4ccf 100644 --- a/app/controllers/admin/screened_ip_addresses_controller.rb +++ b/app/controllers/admin/screened_ip_addresses_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'ip_addr' - class Admin::ScreenedIpAddressesController < Admin::AdminController before_action :fetch_screened_ip_address, only: [:update, :destroy] diff --git a/app/controllers/admin/site_texts_controller.rb b/app/controllers/admin/site_texts_controller.rb index 14743c3c5a7..756974c109e 100644 --- a/app/controllers/admin/site_texts_controller.rb +++ b/app/controllers/admin/site_texts_controller.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'seed_data/categories' -require_dependency 'seed_data/topics' - class Admin::SiteTextsController < Admin::AdminController def self.preferred_keys diff --git a/app/controllers/admin/staff_action_logs_controller.rb b/app/controllers/admin/staff_action_logs_controller.rb index 9926c3ce1eb..5ab3fbe4d0a 100644 --- a/app/controllers/admin/staff_action_logs_controller.rb +++ b/app/controllers/admin/staff_action_logs_controller.rb @@ -26,8 +26,6 @@ class Admin::StaffActionLogsController < Admin::AdminController end def diff - require_dependency "discourse_diff" - @history = UserHistory.find(params[:id]) prev = @history.previous_value cur = @history.new_value diff --git a/app/controllers/admin/themes_controller.rb b/app/controllers/admin/themes_controller.rb index b9b34aff74d..89c7ef8454f 100644 --- a/app/controllers/admin/themes_controller.rb +++ b/app/controllers/admin/themes_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'upload_creator' -require_dependency 'theme_store/tgz_exporter' require 'base64' class Admin::ThemesController < Admin::AdminController diff --git a/app/controllers/admin/users_controller.rb b/app/controllers/admin/users_controller.rb index 59b9f037148..8c860a4d890 100644 --- a/app/controllers/admin/users_controller.rb +++ b/app/controllers/admin/users_controller.rb @@ -1,9 +1,5 @@ # frozen_string_literal: true -require_dependency 'user_destroyer' -require_dependency 'admin_user_index_query' -require_dependency 'admin_confirmation' - class Admin::UsersController < Admin::AdminController before_action :fetch_user, only: [:suspend, diff --git a/app/controllers/admin/versions_controller.rb b/app/controllers/admin/versions_controller.rb index 94ec89be68d..f8da407745f 100644 --- a/app/controllers/admin/versions_controller.rb +++ b/app/controllers/admin/versions_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'discourse_updates' - class Admin::VersionsController < Admin::AdminController def show render json: DiscourseUpdates.check_version diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 7940565ea5a..23467e68ce0 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -1,20 +1,6 @@ # frozen_string_literal: true require 'current_user' -require_dependency 'canonical_url' -require_dependency 'discourse' -require_dependency 'custom_renderer' -require_dependency 'archetype' -require_dependency 'rate_limiter' -require_dependency 'crawler_detection' -require_dependency 'json_error' -require_dependency 'letter_avatar' -require_dependency 'distributed_cache' -require_dependency 'global_path' -require_dependency 'secure_session' -require_dependency 'topic_query' -require_dependency 'hijack' -require_dependency 'read_only_header' class ApplicationController < ActionController::Base include CurrentUser diff --git a/app/controllers/categories_controller.rb b/app/controllers/categories_controller.rb index 774171395d8..47fbd2ab8f3 100644 --- a/app/controllers/categories_controller.rb +++ b/app/controllers/categories_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'category_serializer' - class CategoriesController < ApplicationController requires_login except: [:index, :categories_and_latest, :categories_and_top, :show, :redirect, :find_by_slug] diff --git a/app/controllers/composer_controller.rb b/app/controllers/composer_controller.rb index 0f54f282b72..7f275027e53 100644 --- a/app/controllers/composer_controller.rb +++ b/app/controllers/composer_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'html_to_markdown' - class ComposerController < ApplicationController requires_login diff --git a/app/controllers/composer_messages_controller.rb b/app/controllers/composer_messages_controller.rb index 97d91a4d3e0..c5d4de3c647 100644 --- a/app/controllers/composer_messages_controller.rb +++ b/app/controllers/composer_messages_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'composer_messages_finder' - class ComposerMessagesController < ApplicationController requires_login diff --git a/app/controllers/embed_controller.rb b/app/controllers/embed_controller.rb index 5490fa59fab..0d8f53eed2c 100644 --- a/app/controllers/embed_controller.rb +++ b/app/controllers/embed_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'topic_query_params' - class EmbedController < ApplicationController include TopicQueryParams diff --git a/app/controllers/inline_onebox_controller.rb b/app/controllers/inline_onebox_controller.rb index 4fa1db159c9..16e4cf267b7 100644 --- a/app/controllers/inline_onebox_controller.rb +++ b/app/controllers/inline_onebox_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'inline_oneboxer' - class InlineOneboxController < ApplicationController requires_login diff --git a/app/controllers/invites_controller.rb b/app/controllers/invites_controller.rb index cef597971f9..6c1d9b7579a 100644 --- a/app/controllers/invites_controller.rb +++ b/app/controllers/invites_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'rate_limiter' - class InvitesController < ApplicationController requires_login only: [ diff --git a/app/controllers/list_controller.rb b/app/controllers/list_controller.rb index 6d2bace3415..c94520d3bdc 100644 --- a/app/controllers/list_controller.rb +++ b/app/controllers/list_controller.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'topic_list_responder' -require_dependency 'topic_query_params' - class ListController < ApplicationController include TopicListResponder include TopicQueryParams diff --git a/app/controllers/notifications_controller.rb b/app/controllers/notifications_controller.rb index 2ec11b39c8e..94779fc0a1f 100644 --- a/app/controllers/notifications_controller.rb +++ b/app/controllers/notifications_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'notification_serializer' - class NotificationsController < ApplicationController requires_login diff --git a/app/controllers/onebox_controller.rb b/app/controllers/onebox_controller.rb index 877504df345..10c500317b7 100644 --- a/app/controllers/onebox_controller.rb +++ b/app/controllers/onebox_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'oneboxer' - class OneboxController < ApplicationController requires_login diff --git a/app/controllers/post_action_users_controller.rb b/app/controllers/post_action_users_controller.rb index 642c40dd4e6..9cfbbc1b112 100644 --- a/app/controllers/post_action_users_controller.rb +++ b/app/controllers/post_action_users_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'discourse' - class PostActionUsersController < ApplicationController def index params.require(:post_action_type_id) diff --git a/app/controllers/post_actions_controller.rb b/app/controllers/post_actions_controller.rb index e652fb4ce20..594c7062ce1 100644 --- a/app/controllers/post_actions_controller.rb +++ b/app/controllers/post_actions_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'discourse' - class PostActionsController < ApplicationController requires_login diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index d5a9a12c0da..b63d2539fe1 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -1,14 +1,5 @@ # frozen_string_literal: true -require_dependency 'new_post_manager' -require_dependency 'post_creator' -require_dependency 'post_action_destroyer' -require_dependency 'post_destroyer' -require_dependency 'post_merger' -require_dependency 'distributed_memoizer' -require_dependency 'new_post_result_serializer' -require_dependency 'post_locker' - class PostsController < ApplicationController requires_login except: [ diff --git a/app/controllers/reviewables_controller.rb b/app/controllers/reviewables_controller.rb index dffe6cd1724..2e9816bab10 100644 --- a/app/controllers/reviewables_controller.rb +++ b/app/controllers/reviewables_controller.rb @@ -1,5 +1,4 @@ # frozen_string_literal: true -require_dependency 'reviewable_explanation_serializer' class ReviewablesController < ApplicationController requires_login diff --git a/app/controllers/search_controller.rb b/app/controllers/search_controller.rb index 82d8ac74bc0..919303e3be4 100644 --- a/app/controllers/search_controller.rb +++ b/app/controllers/search_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'search' - class SearchController < ApplicationController skip_before_action :check_xhr, only: :show diff --git a/app/controllers/session_controller.rb b/app/controllers/session_controller.rb index c060fb7fafd..16aa29c8093 100644 --- a/app/controllers/session_controller.rb +++ b/app/controllers/session_controller.rb @@ -1,11 +1,5 @@ # frozen_string_literal: true -require_dependency 'rate_limiter' -require_dependency 'single_sign_on' -require_dependency 'single_sign_on_provider' -require_dependency 'url_helper' -require_dependency 'webauthn/webauthn' - class SessionController < ApplicationController class LocalLoginNotAllowed < StandardError; end rescue_from LocalLoginNotAllowed do diff --git a/app/controllers/similar_topics_controller.rb b/app/controllers/similar_topics_controller.rb index b2a5809505b..a42677893dc 100644 --- a/app/controllers/similar_topics_controller.rb +++ b/app/controllers/similar_topics_controller.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'similar_topic_serializer' -require_dependency 'search/grouped_search_results' - class SimilarTopicsController < ApplicationController class SimilarTopic diff --git a/app/controllers/site_controller.rb b/app/controllers/site_controller.rb index 8c1ed8d2deb..f1ea98d34de 100644 --- a/app/controllers/site_controller.rb +++ b/app/controllers/site_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'site_serializer' - class SiteController < ApplicationController layout false skip_before_action :preload_json, :check_xhr diff --git a/app/controllers/static_controller.rb b/app/controllers/static_controller.rb index b546c2bc867..51b291403cd 100644 --- a/app/controllers/static_controller.rb +++ b/app/controllers/static_controller.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'distributed_memoizer' -require_dependency 'file_helper' - class StaticController < ApplicationController skip_before_action :check_xhr, :redirect_to_login_if_required diff --git a/app/controllers/steps_controller.rb b/app/controllers/steps_controller.rb index 5569841838e..1f17ae6af99 100644 --- a/app/controllers/steps_controller.rb +++ b/app/controllers/steps_controller.rb @@ -1,9 +1,5 @@ # frozen_string_literal: true -require_dependency 'wizard' -require_dependency 'wizard/builder' -require_dependency 'wizard/step_updater' - class StepsController < ApplicationController requires_login diff --git a/app/controllers/tags_controller.rb b/app/controllers/tags_controller.rb index 7e06d03d6b8..edf64024396 100644 --- a/app/controllers/tags_controller.rb +++ b/app/controllers/tags_controller.rb @@ -1,10 +1,5 @@ # frozen_string_literal: true -require_dependency 'topic_list_responder' -require_dependency 'topic_query_params' -require_dependency 'topics_bulk_action' -require_dependency 'topic_query' - class TagsController < ::ApplicationController include TopicListResponder include TopicQueryParams diff --git a/app/controllers/topics_controller.rb b/app/controllers/topics_controller.rb index 087d00fc105..981a3454ad1 100644 --- a/app/controllers/topics_controller.rb +++ b/app/controllers/topics_controller.rb @@ -1,14 +1,5 @@ # frozen_string_literal: true -require_dependency 'topic_view' -require_dependency 'promotion' -require_dependency 'url_helper' -require_dependency 'topics_bulk_action' -require_dependency 'discourse_event' -require_dependency 'rate_limiter' -require_dependency 'topic_publisher' -require_dependency 'post_action_destroyer' - class TopicsController < ApplicationController requires_login only: [ :timings, diff --git a/app/controllers/uploads_controller.rb b/app/controllers/uploads_controller.rb index 2fe9c0c9c94..78c16237048 100644 --- a/app/controllers/uploads_controller.rb +++ b/app/controllers/uploads_controller.rb @@ -1,8 +1,6 @@ # frozen_string_literal: true require "mini_mime" -require_dependency 'upload_creator' -require_dependency "file_store/local_store" class UploadsController < ApplicationController requires_login except: [:show, :show_short] diff --git a/app/controllers/user_avatars_controller.rb b/app/controllers/user_avatars_controller.rb index 11f4f25cf5e..288fb8bc3f2 100644 --- a/app/controllers/user_avatars_controller.rb +++ b/app/controllers/user_avatars_controller.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'letter_avatar' - class UserAvatarsController < ApplicationController skip_before_action :preload_json, :redirect_to_login_if_required, :check_xhr, :verify_authenticity_token, only: [:show, :show_letter, :show_proxy_letter] diff --git a/app/controllers/users/omniauth_callbacks_controller.rb b/app/controllers/users/omniauth_callbacks_controller.rb index f1f43f1f855..e2cf35a0725 100644 --- a/app/controllers/users/omniauth_callbacks_controller.rb +++ b/app/controllers/users/omniauth_callbacks_controller.rb @@ -1,10 +1,6 @@ # -*- encoding : utf-8 -*- # frozen_string_literal: true -require_dependency 'email' -require_dependency 'enum' -require_dependency 'user_name_suggester' - class Users::OmniauthCallbacksController < ApplicationController skip_before_action :redirect_to_login_if_required diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 5557b8030e3..8f552871c64 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -1,13 +1,5 @@ # frozen_string_literal: true -require_dependency 'discourse_hub' -require_dependency 'user_name_suggester' -require_dependency 'rate_limiter' -require_dependency 'wizard' -require_dependency 'wizard/builder' -require_dependency 'admin_confirmation' -require_dependency 'webauthn/webauthn' - class UsersController < ApplicationController skip_before_action :authorize_mini_profiler, only: [:avatar] diff --git a/app/controllers/users_email_controller.rb b/app/controllers/users_email_controller.rb index 53d4cc28719..f74f60a94a2 100644 --- a/app/controllers/users_email_controller.rb +++ b/app/controllers/users_email_controller.rb @@ -1,9 +1,5 @@ # frozen_string_literal: true -require_dependency 'rate_limiter' -require_dependency 'email_validator' -require_dependency 'email_updater' - class UsersEmailController < ApplicationController requires_login only: [:index, :update] diff --git a/app/controllers/wizard_controller.rb b/app/controllers/wizard_controller.rb index 77c44055cc4..6b573bdace0 100644 --- a/app/controllers/wizard_controller.rb +++ b/app/controllers/wizard_controller.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'wizard' -require_dependency 'wizard/builder' - class WizardController < ApplicationController requires_login except: [:qunit] diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 34f92d79857..c45ade5fb2f 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -2,14 +2,6 @@ # frozen_string_literal: true require 'current_user' require 'canonical_url' -require_dependency 'guardian' -require_dependency 'unread' -require_dependency 'age_words' -require_dependency 'configurable_urls' -require_dependency 'mobile_detection' -require_dependency 'category_badge' -require_dependency 'global_path' -require_dependency 'emoji' module ApplicationHelper include CurrentUser diff --git a/app/jobs/base.rb b/app/jobs/base.rb index aae9c8a1071..9ad78f4564b 100644 --- a/app/jobs/base.rb +++ b/app/jobs/base.rb @@ -187,7 +187,7 @@ module Jobs def perform(*args) opts = args.extract_options!.with_indifferent_access - if Jobs.run_later? + if ::Jobs.run_later? Sidekiq.redis do |r| r.set('last_job_perform_at', Time.now.to_i) end @@ -275,7 +275,7 @@ module Jobs extend MiniScheduler::Schedule def perform(*args) - if (Jobs::Heartbeat === self) || !Discourse.readonly_mode? + if (::Jobs::Heartbeat === self) || !Discourse.readonly_mode? super end end @@ -290,7 +290,8 @@ module Jobs end # If we are able to queue a job, do it - if Jobs.run_later? + + if ::Jobs.run_later? hash = { 'class' => klass, 'args' => [opts] @@ -361,7 +362,3 @@ module Jobs end end end - -Dir["#{Rails.root}/app/jobs/onceoff/*.rb"].each { |file| require_dependency file } -Dir["#{Rails.root}/app/jobs/regular/*.rb"].each { |file| require_dependency file } -Dir["#{Rails.root}/app/jobs/scheduled/*.rb"].each { |file| require_dependency file } diff --git a/app/jobs/onceoff/clean_up_post_timings.rb b/app/jobs/onceoff/clean_up_post_timings.rb index 43c0e5cabaa..1399ddaa806 100644 --- a/app/jobs/onceoff/clean_up_post_timings.rb +++ b/app/jobs/onceoff/clean_up_post_timings.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class CleanUpPostTimings < Jobs::Onceoff + class CleanUpPostTimings < ::Jobs::Onceoff # Remove post timings that are remnants of previous post moves # or other shenanigans and don't reference a valid user or post anymore. diff --git a/app/jobs/onceoff/clean_up_sidekiq_statistic.rb b/app/jobs/onceoff/clean_up_sidekiq_statistic.rb index c99a87656dc..397fc4f79bd 100644 --- a/app/jobs/onceoff/clean_up_sidekiq_statistic.rb +++ b/app/jobs/onceoff/clean_up_sidekiq_statistic.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class CleanUpSidekiqStatistic < Jobs::Onceoff + class CleanUpSidekiqStatistic < ::Jobs::Onceoff def execute_onceoff(args) $redis.without_namespace.del('sidekiq:sidekiq:statistic') end diff --git a/app/jobs/onceoff/clean_up_user_export_topics.rb b/app/jobs/onceoff/clean_up_user_export_topics.rb index 9a5b19e05aa..8e5be5bf27b 100644 --- a/app/jobs/onceoff/clean_up_user_export_topics.rb +++ b/app/jobs/onceoff/clean_up_user_export_topics.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class CleanUpUserExportTopics < Jobs::Onceoff + class CleanUpUserExportTopics < ::Jobs::Onceoff def execute_onceoff(args) translated_keys = I18n.available_locales.map do |l| I18n.with_locale(:"#{l}") { I18n.t("system_messages.csv_export_succeeded.subject_template") } diff --git a/app/jobs/onceoff/clear_width_and_height.rb b/app/jobs/onceoff/clear_width_and_height.rb index 070c16056a9..7c828407405 100644 --- a/app/jobs/onceoff/clear_width_and_height.rb +++ b/app/jobs/onceoff/clear_width_and_height.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class ClearWidthAndHeight < Jobs::Onceoff + class ClearWidthAndHeight < ::Jobs::Onceoff def execute_onceoff(args) # we have to clear all old uploads cause # we could have old versions of height / width diff --git a/app/jobs/onceoff/correct_missing_dualstack_urls.rb b/app/jobs/onceoff/correct_missing_dualstack_urls.rb index a8de7b4c69f..6cdfa55e847 100644 --- a/app/jobs/onceoff/correct_missing_dualstack_urls.rb +++ b/app/jobs/onceoff/correct_missing_dualstack_urls.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class CorrectMissingDualstackUrls < Jobs::Onceoff + class CorrectMissingDualstackUrls < ::Jobs::Onceoff def execute_onceoff(args) # s3 now uses dualstack urls, keep them around correctly # in both uploads and optimized_image tables diff --git a/app/jobs/onceoff/create_tags_search_index.rb b/app/jobs/onceoff/create_tags_search_index.rb index f683834e652..f7617074260 100644 --- a/app/jobs/onceoff/create_tags_search_index.rb +++ b/app/jobs/onceoff/create_tags_search_index.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class CreateTagsSearchIndex < Jobs::Onceoff + class CreateTagsSearchIndex < ::Jobs::Onceoff def execute_onceoff(args) DB.query('select id, name from tags').each do |t| SearchIndexer.update_tags_index(t.id, t.name) diff --git a/app/jobs/onceoff/fix_featured_link_for_topics.rb b/app/jobs/onceoff/fix_featured_link_for_topics.rb index 4d3c48c9139..337d7d2efae 100644 --- a/app/jobs/onceoff/fix_featured_link_for_topics.rb +++ b/app/jobs/onceoff/fix_featured_link_for_topics.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class FixFeaturedLinkForTopics < Jobs::Onceoff + class FixFeaturedLinkForTopics < ::Jobs::Onceoff def execute_onceoff(args) Topic.where("featured_link IS NOT NULL").find_each do |topic| featured_link = topic.featured_link diff --git a/app/jobs/onceoff/fix_invalid_gravatar_uploads.rb b/app/jobs/onceoff/fix_invalid_gravatar_uploads.rb index 80fc0f1d271..bbbc9426038 100644 --- a/app/jobs/onceoff/fix_invalid_gravatar_uploads.rb +++ b/app/jobs/onceoff/fix_invalid_gravatar_uploads.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class FixInvalidGravatarUploads < Jobs::Onceoff + class FixInvalidGravatarUploads < ::Jobs::Onceoff def execute_onceoff(args) Upload.where(original_filename: "gravatar.png").find_each do |upload| # note, this still feels pretty expensive for a once off diff --git a/app/jobs/onceoff/fix_invalid_upload_extensions.rb b/app/jobs/onceoff/fix_invalid_upload_extensions.rb index 8c62bdbfc18..a5a6f98921f 100644 --- a/app/jobs/onceoff/fix_invalid_upload_extensions.rb +++ b/app/jobs/onceoff/fix_invalid_upload_extensions.rb @@ -1,9 +1,7 @@ # frozen_string_literal: true -require_dependency "upload_fixer" - module Jobs - class FixInvalidUploadExtensions < Jobs::Onceoff + class FixInvalidUploadExtensions < ::Jobs::Onceoff def execute_onceoff(args) UploadFixer.fix_all_extensions end diff --git a/app/jobs/onceoff/fix_out_of_sync_user_uploaded_avatar.rb b/app/jobs/onceoff/fix_out_of_sync_user_uploaded_avatar.rb index 1029edc9163..2a167697c27 100644 --- a/app/jobs/onceoff/fix_out_of_sync_user_uploaded_avatar.rb +++ b/app/jobs/onceoff/fix_out_of_sync_user_uploaded_avatar.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class FixOutOfSyncUserUploadedAvatar < Jobs::Onceoff + class FixOutOfSyncUserUploadedAvatar < ::Jobs::Onceoff def execute_onceoff(args) DB.exec(<<~SQL) WITH X AS ( diff --git a/app/jobs/onceoff/fix_posts_read.rb b/app/jobs/onceoff/fix_posts_read.rb index 206b5bc41f9..9d4787065a1 100644 --- a/app/jobs/onceoff/fix_posts_read.rb +++ b/app/jobs/onceoff/fix_posts_read.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class FixPostsRead < Jobs::Onceoff + class FixPostsRead < ::Jobs::Onceoff def execute_onceoff(args) # Skipping to the last post in a topic used to count all posts in the topic # as read in user stats. Cap the posts read count to 50 * topics_entered. diff --git a/app/jobs/onceoff/fix_primary_emails_for_staged_users.rb b/app/jobs/onceoff/fix_primary_emails_for_staged_users.rb index a60b1d6315c..5fb9ff218ef 100644 --- a/app/jobs/onceoff/fix_primary_emails_for_staged_users.rb +++ b/app/jobs/onceoff/fix_primary_emails_for_staged_users.rb @@ -1,9 +1,7 @@ # frozen_string_literal: true -require_dependency 'user_destroyer' - module Jobs - class FixPrimaryEmailsForStagedUsers < Jobs::Onceoff + class FixPrimaryEmailsForStagedUsers < ::Jobs::Onceoff def execute_onceoff(args) users = User.where(active: false, staged: true).joins(:email_tokens) acting_user = Discourse.system_user diff --git a/app/jobs/onceoff/fix_retro_anniversary.rb b/app/jobs/onceoff/fix_retro_anniversary.rb index bec4d8d62f9..a6ab1c566f4 100644 --- a/app/jobs/onceoff/fix_retro_anniversary.rb +++ b/app/jobs/onceoff/fix_retro_anniversary.rb @@ -1,10 +1,8 @@ # frozen_string_literal: true -require_dependency 'jobs/scheduled/grant_anniversary_badges' - module Jobs - class FixRetroAnniversary < Jobs::Onceoff + class FixRetroAnniversary < ::Jobs::Onceoff def execute_onceoff(args) return unless SiteSetting.enable_badges diff --git a/app/jobs/onceoff/fix_s3_etags.rb b/app/jobs/onceoff/fix_s3_etags.rb index 13cc3b0670c..226b09e9372 100644 --- a/app/jobs/onceoff/fix_s3_etags.rb +++ b/app/jobs/onceoff/fix_s3_etags.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class FixS3Etags < Jobs::Onceoff + class FixS3Etags < ::Jobs::Onceoff def execute_onceoff(args) [Upload, OptimizedImage].each do |model| diff --git a/app/jobs/onceoff/grant_emoji.rb b/app/jobs/onceoff/grant_emoji.rb index 1b3b5d6a75d..5f85b431b82 100644 --- a/app/jobs/onceoff/grant_emoji.rb +++ b/app/jobs/onceoff/grant_emoji.rb @@ -2,7 +2,7 @@ module Jobs - class GrantEmoji < Jobs::Onceoff + class GrantEmoji < ::Jobs::Onceoff def execute_onceoff(args) return unless SiteSetting.enable_badges to_award = {} diff --git a/app/jobs/onceoff/grant_first_reply_by_email.rb b/app/jobs/onceoff/grant_first_reply_by_email.rb index 7a9eb93361c..c0287205d76 100644 --- a/app/jobs/onceoff/grant_first_reply_by_email.rb +++ b/app/jobs/onceoff/grant_first_reply_by_email.rb @@ -2,7 +2,7 @@ module Jobs - class GrantFirstReplyByEmail < Jobs::Onceoff + class GrantFirstReplyByEmail < ::Jobs::Onceoff def execute_onceoff(args) return unless SiteSetting.enable_badges diff --git a/app/jobs/onceoff/grant_onebox.rb b/app/jobs/onceoff/grant_onebox.rb index ad01a2832b4..59cf443f4e5 100644 --- a/app/jobs/onceoff/grant_onebox.rb +++ b/app/jobs/onceoff/grant_onebox.rb @@ -2,7 +2,7 @@ module Jobs - class GrantOnebox < Jobs::Onceoff + class GrantOnebox < ::Jobs::Onceoff sidekiq_options queue: 'low' def execute_onceoff(args) diff --git a/app/jobs/onceoff/init_category_tag_stats.rb b/app/jobs/onceoff/init_category_tag_stats.rb index a296880f339..2189f474713 100644 --- a/app/jobs/onceoff/init_category_tag_stats.rb +++ b/app/jobs/onceoff/init_category_tag_stats.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class InitCategoryTagStats < Jobs::Onceoff + class InitCategoryTagStats < ::Jobs::Onceoff def execute_onceoff(args) DB.exec "DELETE FROM category_tag_stats" diff --git a/app/jobs/onceoff/migrate_censored_words.rb b/app/jobs/onceoff/migrate_censored_words.rb index 25d49a1b7b4..5de876107be 100644 --- a/app/jobs/onceoff/migrate_censored_words.rb +++ b/app/jobs/onceoff/migrate_censored_words.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class MigrateCensoredWords < Jobs::Onceoff + class MigrateCensoredWords < ::Jobs::Onceoff def execute_onceoff(args) row = DB.query_single("SELECT value FROM site_settings WHERE name = 'censored_words'") if row.count > 0 diff --git a/app/jobs/onceoff/migrate_custom_emojis.rb b/app/jobs/onceoff/migrate_custom_emojis.rb index 8986aeb8964..866ec4e4218 100644 --- a/app/jobs/onceoff/migrate_custom_emojis.rb +++ b/app/jobs/onceoff/migrate_custom_emojis.rb @@ -1,9 +1,7 @@ # frozen_string_literal: true -require_dependency 'upload_creator' - module Jobs - class MigrateCustomEmojis < Jobs::Onceoff + class MigrateCustomEmojis < ::Jobs::Onceoff def execute_onceoff(args) return if Rails.env.test? diff --git a/app/jobs/onceoff/migrate_featured_links.rb b/app/jobs/onceoff/migrate_featured_links.rb index e8da50f94d6..45f4c11defe 100644 --- a/app/jobs/onceoff/migrate_featured_links.rb +++ b/app/jobs/onceoff/migrate_featured_links.rb @@ -2,7 +2,7 @@ module Jobs - class MigrateFeaturedLinks < Jobs::Onceoff + class MigrateFeaturedLinks < ::Jobs::Onceoff def execute_onceoff(args) TopicCustomField.where(name: "featured_link").find_each do |tcf| diff --git a/app/jobs/onceoff/migrate_tagging_plugin.rb b/app/jobs/onceoff/migrate_tagging_plugin.rb index a9d2f710403..d92d5692f48 100644 --- a/app/jobs/onceoff/migrate_tagging_plugin.rb +++ b/app/jobs/onceoff/migrate_tagging_plugin.rb @@ -2,7 +2,7 @@ module Jobs - class MigrateTaggingPlugin < Jobs::Onceoff + class MigrateTaggingPlugin < ::Jobs::Onceoff def execute_onceoff(args) all_tags = TopicCustomField.where(name: "tags").select('DISTINCT value').all.map(&:value) diff --git a/app/jobs/onceoff/migrate_upload_extensions.rb b/app/jobs/onceoff/migrate_upload_extensions.rb index e5d33660318..846944e285e 100644 --- a/app/jobs/onceoff/migrate_upload_extensions.rb +++ b/app/jobs/onceoff/migrate_upload_extensions.rb @@ -2,7 +2,7 @@ module Jobs - class MigrateUploadExtensions < Jobs::Onceoff + class MigrateUploadExtensions < ::Jobs::Onceoff def execute_onceoff(args) Upload.find_each do |upload| upload.extension = File.extname(upload.original_filename)[1..10] diff --git a/app/jobs/onceoff/migrate_url_site_settings.rb b/app/jobs/onceoff/migrate_url_site_settings.rb index c2641b7e1f1..89ca6e67b75 100644 --- a/app/jobs/onceoff/migrate_url_site_settings.rb +++ b/app/jobs/onceoff/migrate_url_site_settings.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class MigrateUrlSiteSettings < Jobs::Onceoff + class MigrateUrlSiteSettings < ::Jobs::Onceoff SETTINGS = [ ['logo_url', 'logo'], ['logo_small_url', 'logo_small'], diff --git a/app/jobs/onceoff.rb b/app/jobs/onceoff/onceoff.rb similarity index 93% rename from app/jobs/onceoff.rb rename to app/jobs/onceoff/onceoff.rb index def68e4e64e..4de373399d7 100644 --- a/app/jobs/onceoff.rb +++ b/app/jobs/onceoff/onceoff.rb @@ -1,6 +1,8 @@ # frozen_string_literal: true -class Jobs::Onceoff < Jobs::Base +require_relative '../base.rb' + +class Jobs::Onceoff < ::Jobs::Base sidekiq_options retry: false def self.name_for(klass) diff --git a/app/jobs/onceoff/post_uploads_recovery.rb b/app/jobs/onceoff/post_uploads_recovery.rb index 4d92e402bcb..5f942209eb1 100644 --- a/app/jobs/onceoff/post_uploads_recovery.rb +++ b/app/jobs/onceoff/post_uploads_recovery.rb @@ -1,9 +1,7 @@ # frozen_string_literal: true -require_dependency "upload_recovery" - module Jobs - class PostUploadsRecovery < Jobs::Onceoff + class PostUploadsRecovery < ::Jobs::Onceoff MIN_PERIOD = 30 MAX_PERIOD = 120 diff --git a/app/jobs/onceoff/remove_old_auto_close_jobs.rb b/app/jobs/onceoff/remove_old_auto_close_jobs.rb index 90af80415d1..c7015b480d4 100644 --- a/app/jobs/onceoff/remove_old_auto_close_jobs.rb +++ b/app/jobs/onceoff/remove_old_auto_close_jobs.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class RemoveOldAutoCloseJobs < Jobs::Onceoff + class RemoveOldAutoCloseJobs < ::Jobs::Onceoff def execute_onceoff(args) Jobs.cancel_scheduled_job(:close_topic) diff --git a/app/jobs/onceoff/retro_grant_anniversary.rb b/app/jobs/onceoff/retro_grant_anniversary.rb index a4c9c98b2ae..dd73fe215fe 100644 --- a/app/jobs/onceoff/retro_grant_anniversary.rb +++ b/app/jobs/onceoff/retro_grant_anniversary.rb @@ -1,10 +1,8 @@ # frozen_string_literal: true -require_dependency 'jobs/scheduled/grant_anniversary_badges' - module Jobs - class RetroGrantAnniversary < Jobs::Onceoff + class RetroGrantAnniversary < ::Jobs::Onceoff def execute_onceoff(args) return unless SiteSetting.enable_badges diff --git a/app/jobs/onceoff/retro_recent_time_read.rb b/app/jobs/onceoff/retro_recent_time_read.rb index 0cf43669a34..0750103adfe 100644 --- a/app/jobs/onceoff/retro_recent_time_read.rb +++ b/app/jobs/onceoff/retro_recent_time_read.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class RetroRecentTimeRead < Jobs::Onceoff + class RetroRecentTimeRead < ::Jobs::Onceoff def execute_onceoff(args) # update past records by evenly distributing total time reading among each post read sql = <<~SQL diff --git a/app/jobs/regular/admin_confirmation_email.rb b/app/jobs/regular/admin_confirmation_email.rb index d525ea62c3c..23fd5b3d06a 100644 --- a/app/jobs/regular/admin_confirmation_email.rb +++ b/app/jobs/regular/admin_confirmation_email.rb @@ -1,9 +1,7 @@ # frozen_string_literal: true -require_dependency 'email/sender' - module Jobs - class AdminConfirmationEmail < Jobs::Base + class AdminConfirmationEmail < ::Jobs::Base sidekiq_options queue: 'critical' def execute(args) diff --git a/app/jobs/regular/anonymize_user.rb b/app/jobs/regular/anonymize_user.rb index 90c855fd3fe..8dca0ca403e 100644 --- a/app/jobs/regular/anonymize_user.rb +++ b/app/jobs/regular/anonymize_user.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class AnonymizeUser < Jobs::Base + class AnonymizeUser < ::Jobs::Base sidekiq_options queue: 'low' diff --git a/app/jobs/regular/automatic_group_membership.rb b/app/jobs/regular/automatic_group_membership.rb index 8695737ab2b..e10bc7a0136 100644 --- a/app/jobs/regular/automatic_group_membership.rb +++ b/app/jobs/regular/automatic_group_membership.rb @@ -2,7 +2,7 @@ module Jobs - class AutomaticGroupMembership < Jobs::Base + class AutomaticGroupMembership < ::Jobs::Base def execute(args) group_id = args[:group_id] diff --git a/app/jobs/regular/backup_chunks_merger.rb b/app/jobs/regular/backup_chunks_merger.rb index 35695d10a8b..5deb37f333b 100644 --- a/app/jobs/regular/backup_chunks_merger.rb +++ b/app/jobs/regular/backup_chunks_merger.rb @@ -1,11 +1,8 @@ # frozen_string_literal: true -require_dependency "backup_restore/local_backup_store" -require_dependency "backup_restore/backup_store" - module Jobs - class BackupChunksMerger < Jobs::Base + class BackupChunksMerger < ::Jobs::Base sidekiq_options queue: 'critical', retry: false def execute(args) diff --git a/app/jobs/regular/bulk_grant_trust_level.rb b/app/jobs/regular/bulk_grant_trust_level.rb index 886e604361b..f61b747d203 100644 --- a/app/jobs/regular/bulk_grant_trust_level.rb +++ b/app/jobs/regular/bulk_grant_trust_level.rb @@ -2,7 +2,7 @@ module Jobs - class BulkGrantTrustLevel < Jobs::Base + class BulkGrantTrustLevel < ::Jobs::Base def execute(args) trust_level = args[:trust_level] diff --git a/app/jobs/regular/bulk_invite.rb b/app/jobs/regular/bulk_invite.rb index f7ccd44fd6a..b5980a0db98 100644 --- a/app/jobs/regular/bulk_invite.rb +++ b/app/jobs/regular/bulk_invite.rb @@ -1,10 +1,7 @@ # frozen_string_literal: true -require_dependency 'system_message' - module Jobs - - class BulkInvite < Jobs::Base + class BulkInvite < ::Jobs::Base sidekiq_options retry: false def initialize diff --git a/app/jobs/regular/bump_topic.rb b/app/jobs/regular/bump_topic.rb index e8176316b14..e795592393a 100644 --- a/app/jobs/regular/bump_topic.rb +++ b/app/jobs/regular/bump_topic.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class BumpTopic < Jobs::Base + class BumpTopic < ::Jobs::Base def execute(args) topic_timer = TopicTimer.find_by(id: args[:topic_timer_id] || args[:topic_status_update_id]) diff --git a/app/jobs/regular/confirm_sns_subscription.rb b/app/jobs/regular/confirm_sns_subscription.rb index d37fdcfd799..073747067b5 100644 --- a/app/jobs/regular/confirm_sns_subscription.rb +++ b/app/jobs/regular/confirm_sns_subscription.rb @@ -2,7 +2,7 @@ module Jobs - class ConfirmSnsSubscription < Jobs::Base + class ConfirmSnsSubscription < ::Jobs::Base sidekiq_options retry: false def execute(args) diff --git a/app/jobs/regular/crawl_topic_link.rb b/app/jobs/regular/crawl_topic_link.rb index 36c10ff0c2a..da7659ec538 100644 --- a/app/jobs/regular/crawl_topic_link.rb +++ b/app/jobs/regular/crawl_topic_link.rb @@ -3,11 +3,9 @@ require 'open-uri' require 'nokogiri' require 'excon' -require_dependency 'retrieve_title' -require_dependency 'topic_link' module Jobs - class CrawlTopicLink < Jobs::Base + class CrawlTopicLink < ::Jobs::Base sidekiq_options queue: 'low' diff --git a/app/jobs/regular/create_avatar_thumbnails.rb b/app/jobs/regular/create_avatar_thumbnails.rb index aa9e4711c1e..540c5803d5c 100644 --- a/app/jobs/regular/create_avatar_thumbnails.rb +++ b/app/jobs/regular/create_avatar_thumbnails.rb @@ -2,7 +2,7 @@ module Jobs - class CreateAvatarThumbnails < Jobs::Base + class CreateAvatarThumbnails < ::Jobs::Base sidekiq_options queue: 'low' def execute(args) diff --git a/app/jobs/regular/create_backup.rb b/app/jobs/regular/create_backup.rb index 62c67575c12..dcd3a466f57 100644 --- a/app/jobs/regular/create_backup.rb +++ b/app/jobs/regular/create_backup.rb @@ -1,9 +1,9 @@ # frozen_string_literal: true -require "backup_restore/backup_restore" +require "backup_restore" module Jobs - class CreateBackup < Jobs::Base + class CreateBackup < ::Jobs::Base sidekiq_options retry: false def execute(args) diff --git a/app/jobs/regular/create_user_reviewable.rb b/app/jobs/regular/create_user_reviewable.rb index f68902ec2b9..58d0c8e15a4 100644 --- a/app/jobs/regular/create_user_reviewable.rb +++ b/app/jobs/regular/create_user_reviewable.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -class Jobs::CreateUserReviewable < Jobs::Base +class Jobs::CreateUserReviewable < ::Jobs::Base attr_reader :reviewable def execute(args) diff --git a/app/jobs/regular/critical_user_email.rb b/app/jobs/regular/critical_user_email.rb index 7592c7244b4..469729e77f9 100644 --- a/app/jobs/regular/critical_user_email.rb +++ b/app/jobs/regular/critical_user_email.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true # base.rb uses this style of require, so maintain usage of it here -require_dependency "#{Rails.root}/app/jobs/regular/user_email.rb" module Jobs class CriticalUserEmail < UserEmail diff --git a/app/jobs/regular/delete_inaccessible_notifications.rb b/app/jobs/regular/delete_inaccessible_notifications.rb index ca38dc4ec82..e33bfd6fb13 100644 --- a/app/jobs/regular/delete_inaccessible_notifications.rb +++ b/app/jobs/regular/delete_inaccessible_notifications.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class DeleteInaccessibleNotifications < Jobs::Base + class DeleteInaccessibleNotifications < ::Jobs::Base def execute(args) raise Discourse::InvalidParameters.new(:topic_id) if args[:topic_id].blank? diff --git a/app/jobs/regular/delete_topic.rb b/app/jobs/regular/delete_topic.rb index 9b071668620..be6ab194e77 100644 --- a/app/jobs/regular/delete_topic.rb +++ b/app/jobs/regular/delete_topic.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class DeleteTopic < Jobs::Base + class DeleteTopic < ::Jobs::Base def execute(args) topic_timer = TopicTimer.find_by(id: args[:topic_timer_id] || args[:topic_status_update_id]) diff --git a/app/jobs/regular/download_avatar_from_url.rb b/app/jobs/regular/download_avatar_from_url.rb index d87baf0e273..e1864c80b33 100644 --- a/app/jobs/regular/download_avatar_from_url.rb +++ b/app/jobs/regular/download_avatar_from_url.rb @@ -2,7 +2,7 @@ module Jobs - class DownloadAvatarFromUrl < Jobs::Base + class DownloadAvatarFromUrl < ::Jobs::Base sidekiq_options retry: false def execute(args) diff --git a/app/jobs/regular/download_backup_email.rb b/app/jobs/regular/download_backup_email.rb index 73c31347c79..0977098e974 100644 --- a/app/jobs/regular/download_backup_email.rb +++ b/app/jobs/regular/download_backup_email.rb @@ -1,11 +1,8 @@ # frozen_string_literal: true -require_dependency 'email/sender' -require_dependency "email_backup_token" - module Jobs - class DownloadBackupEmail < Jobs::Base + class DownloadBackupEmail < ::Jobs::Base sidekiq_options queue: 'critical' diff --git a/app/jobs/regular/download_profile_background_from_url.rb b/app/jobs/regular/download_profile_background_from_url.rb index 554c7425c19..5d39c3d8c86 100644 --- a/app/jobs/regular/download_profile_background_from_url.rb +++ b/app/jobs/regular/download_profile_background_from_url.rb @@ -2,7 +2,7 @@ module Jobs - class DownloadProfileBackgroundFromUrl < Jobs::Base + class DownloadProfileBackgroundFromUrl < ::Jobs::Base sidekiq_options retry: false def execute(args) diff --git a/app/jobs/regular/emit_web_hook_event.rb b/app/jobs/regular/emit_web_hook_event.rb index 5160fd7dffe..fd7f8ae2a73 100644 --- a/app/jobs/regular/emit_web_hook_event.rb +++ b/app/jobs/regular/emit_web_hook_event.rb @@ -3,7 +3,7 @@ require 'excon' module Jobs - class EmitWebHookEvent < Jobs::Base + class EmitWebHookEvent < ::Jobs::Base PING_EVENT = 'ping'.freeze MAX_RETRY_COUNT = 4.freeze RETRY_BACKOFF = 5 diff --git a/app/jobs/regular/enable_bootstrap_mode.rb b/app/jobs/regular/enable_bootstrap_mode.rb index 6deaef171bb..bf804e24dbc 100644 --- a/app/jobs/regular/enable_bootstrap_mode.rb +++ b/app/jobs/regular/enable_bootstrap_mode.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class EnableBootstrapMode < Jobs::Base + class EnableBootstrapMode < ::Jobs::Base sidekiq_options queue: 'critical' def execute(args) diff --git a/app/jobs/regular/export_csv_file.rb b/app/jobs/regular/export_csv_file.rb index cea8c1ec81e..afd32e8a733 100644 --- a/app/jobs/regular/export_csv_file.rb +++ b/app/jobs/regular/export_csv_file.rb @@ -2,13 +2,10 @@ require 'csv' require 'zip' -require_dependency 'system_message' -require_dependency 'upload_creator' -require_dependency 'upload_markdown' module Jobs - class ExportCsvFile < Jobs::Base + class ExportCsvFile < ::Jobs::Base sidekiq_options retry: false HEADER_ATTRS_FOR ||= HashWithIndifferentAccess.new( diff --git a/app/jobs/regular/feature_topic_users.rb b/app/jobs/regular/feature_topic_users.rb index 8ab797d7c53..84210a6bafa 100644 --- a/app/jobs/regular/feature_topic_users.rb +++ b/app/jobs/regular/feature_topic_users.rb @@ -2,7 +2,7 @@ module Jobs - class FeatureTopicUsers < Jobs::Base + class FeatureTopicUsers < ::Jobs::Base def execute(args) topic_id = args[:topic_id] diff --git a/app/jobs/regular/invite_email.rb b/app/jobs/regular/invite_email.rb index c91e67ae358..b8278ff40a7 100644 --- a/app/jobs/regular/invite_email.rb +++ b/app/jobs/regular/invite_email.rb @@ -1,11 +1,9 @@ # frozen_string_literal: true -require_dependency 'email/sender' - module Jobs # Asynchronously send an email - class InviteEmail < Jobs::Base + class InviteEmail < ::Jobs::Base def execute(args) raise Discourse::InvalidParameters.new(:invite_id) unless args[:invite_id].present? diff --git a/app/jobs/regular/invite_password_instructions_email.rb b/app/jobs/regular/invite_password_instructions_email.rb index 009a6b3792e..14ccec97c45 100644 --- a/app/jobs/regular/invite_password_instructions_email.rb +++ b/app/jobs/regular/invite_password_instructions_email.rb @@ -1,11 +1,9 @@ # frozen_string_literal: true -require_dependency 'email/sender' - module Jobs # Asynchronously send an email - class InvitePasswordInstructionsEmail < Jobs::Base + class InvitePasswordInstructionsEmail < ::Jobs::Base def execute(args) raise Discourse::InvalidParameters.new(:username) unless args[:username].present? diff --git a/app/jobs/regular/notify_category_change.rb b/app/jobs/regular/notify_category_change.rb index c37cf442158..bac94a20e07 100644 --- a/app/jobs/regular/notify_category_change.rb +++ b/app/jobs/regular/notify_category_change.rb @@ -1,9 +1,7 @@ # frozen_string_literal: true -require_dependency "post_alerter" - module Jobs - class NotifyCategoryChange < Jobs::Base + class NotifyCategoryChange < ::Jobs::Base def execute(args) post = Post.find_by(id: args[:post_id]) diff --git a/app/jobs/regular/notify_mailing_list_subscribers.rb b/app/jobs/regular/notify_mailing_list_subscribers.rb index 50230a380b5..ba63d13af2e 100644 --- a/app/jobs/regular/notify_mailing_list_subscribers.rb +++ b/app/jobs/regular/notify_mailing_list_subscribers.rb @@ -1,10 +1,8 @@ # frozen_string_literal: true -require_dependency 'post' - module Jobs - class NotifyMailingListSubscribers < Jobs::Base + class NotifyMailingListSubscribers < ::Jobs::Base include Skippable RETRY_TIMES = [5.minute, 15.minute, 30.minute, 45.minute, 90.minute, 180.minute, 300.minute] diff --git a/app/jobs/regular/notify_moved_posts.rb b/app/jobs/regular/notify_moved_posts.rb index e12af831fec..f02feec7a67 100644 --- a/app/jobs/regular/notify_moved_posts.rb +++ b/app/jobs/regular/notify_moved_posts.rb @@ -2,7 +2,7 @@ module Jobs - class NotifyMovedPosts < Jobs::Base + class NotifyMovedPosts < ::Jobs::Base def execute(args) raise Discourse::InvalidParameters.new(:post_ids) if args[:post_ids].blank? diff --git a/app/jobs/regular/notify_post_revision.rb b/app/jobs/regular/notify_post_revision.rb index 2331c6655a6..8d2160699c0 100644 --- a/app/jobs/regular/notify_post_revision.rb +++ b/app/jobs/regular/notify_post_revision.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class NotifyPostRevision < Jobs::Base + class NotifyPostRevision < ::Jobs::Base def execute(args) raise Discourse::InvalidParameters.new(:user_ids) unless args[:user_ids] diff --git a/app/jobs/regular/notify_reviewable.rb b/app/jobs/regular/notify_reviewable.rb index 8bed238b542..589b09510e1 100644 --- a/app/jobs/regular/notify_reviewable.rb +++ b/app/jobs/regular/notify_reviewable.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -class Jobs::NotifyReviewable < Jobs::Base +class Jobs::NotifyReviewable < ::Jobs::Base def execute(args) reviewable = Reviewable.find_by(id: args[:reviewable_id]) diff --git a/app/jobs/regular/notify_tag_change.rb b/app/jobs/regular/notify_tag_change.rb index 370227eef70..4725896cd4a 100644 --- a/app/jobs/regular/notify_tag_change.rb +++ b/app/jobs/regular/notify_tag_change.rb @@ -1,9 +1,7 @@ # frozen_string_literal: true -require_dependency "post_alerter" - module Jobs - class NotifyTagChange < Jobs::Base + class NotifyTagChange < ::Jobs::Base def execute(args) post = Post.find_by(id: args[:post_id]) diff --git a/app/jobs/regular/post_alert.rb b/app/jobs/regular/post_alert.rb index 4c28b95947b..dc6b8b1440b 100644 --- a/app/jobs/regular/post_alert.rb +++ b/app/jobs/regular/post_alert.rb @@ -1,9 +1,7 @@ # frozen_string_literal: true -require_dependency 'post_alerter' - module Jobs - class PostAlert < Jobs::Base + class PostAlert < ::Jobs::Base def execute(args) post = Post.find_by(id: args[:post_id]) diff --git a/app/jobs/regular/process_bulk_invite_emails.rb b/app/jobs/regular/process_bulk_invite_emails.rb index f4d057e7c2a..c7901d29c0d 100644 --- a/app/jobs/regular/process_bulk_invite_emails.rb +++ b/app/jobs/regular/process_bulk_invite_emails.rb @@ -1,10 +1,8 @@ # frozen_string_literal: true -require_dependency 'email/sender' - module Jobs - class ProcessBulkInviteEmails < Jobs::Base + class ProcessBulkInviteEmails < ::Jobs::Base def execute(args) pending_invite_ids = Invite.where(emailed_status: Invite.emailed_status_types[:bulk_pending]).limit(Invite::BULK_INVITE_EMAIL_LIMIT).pluck(:id) diff --git a/app/jobs/regular/process_email.rb b/app/jobs/regular/process_email.rb index d29b410dbbb..f738fc5be3f 100644 --- a/app/jobs/regular/process_email.rb +++ b/app/jobs/regular/process_email.rb @@ -2,7 +2,7 @@ module Jobs - class ProcessEmail < Jobs::Base + class ProcessEmail < ::Jobs::Base sidekiq_options retry: 3 def execute(args) diff --git a/app/jobs/regular/process_post.rb b/app/jobs/regular/process_post.rb index c2eea3e3ada..266072de015 100644 --- a/app/jobs/regular/process_post.rb +++ b/app/jobs/regular/process_post.rb @@ -1,11 +1,10 @@ # frozen_string_literal: true require 'image_sizer' -require_dependency 'cooked_post_processor' module Jobs - class ProcessPost < Jobs::Base + class ProcessPost < ::Jobs::Base def execute(args) post = Post.find_by(id: args[:post_id]) diff --git a/app/jobs/regular/process_sns_notification.rb b/app/jobs/regular/process_sns_notification.rb index be51110dd01..ff25dc83feb 100644 --- a/app/jobs/regular/process_sns_notification.rb +++ b/app/jobs/regular/process_sns_notification.rb @@ -2,7 +2,7 @@ module Jobs - class ProcessSnsNotification < Jobs::Base + class ProcessSnsNotification < ::Jobs::Base sidekiq_options retry: false def execute(args) diff --git a/app/jobs/regular/publish_topic_to_category.rb b/app/jobs/regular/publish_topic_to_category.rb index 7e26fdd8c61..1b86fc90342 100644 --- a/app/jobs/regular/publish_topic_to_category.rb +++ b/app/jobs/regular/publish_topic_to_category.rb @@ -1,9 +1,7 @@ # frozen_string_literal: true -require_dependency 'topic_publisher' - module Jobs - class PublishTopicToCategory < Jobs::Base + class PublishTopicToCategory < ::Jobs::Base def execute(args) topic_timer = TopicTimer.find_by(id: args[:topic_timer_id] || args[:topic_status_update_id]) return if topic_timer.blank? diff --git a/app/jobs/regular/pull_hotlinked_images.rb b/app/jobs/regular/pull_hotlinked_images.rb index c741b659d47..0b4823b54d3 100644 --- a/app/jobs/regular/pull_hotlinked_images.rb +++ b/app/jobs/regular/pull_hotlinked_images.rb @@ -1,12 +1,8 @@ # frozen_string_literal: true -require_dependency 'url_helper' -require_dependency 'file_helper' -require_dependency 'upload_creator' - module Jobs - class PullHotlinkedImages < Jobs::Base + class PullHotlinkedImages < ::Jobs::Base sidekiq_options queue: 'low' def initialize diff --git a/app/jobs/regular/push_notification.rb b/app/jobs/regular/push_notification.rb index 3a16d626d63..a03da1373c6 100644 --- a/app/jobs/regular/push_notification.rb +++ b/app/jobs/regular/push_notification.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class PushNotification < Jobs::Base + class PushNotification < ::Jobs::Base def execute(args) notification = args["payload"] notification["url"] = UrlHelper.absolute_without_cdn(notification["post_url"]) diff --git a/app/jobs/regular/rebake_custom_emoji_posts.rb b/app/jobs/regular/rebake_custom_emoji_posts.rb index dbf8fdfbca4..492fa42f9be 100644 --- a/app/jobs/regular/rebake_custom_emoji_posts.rb +++ b/app/jobs/regular/rebake_custom_emoji_posts.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class RebakeCustomEmojiPosts < Jobs::Base + class RebakeCustomEmojiPosts < ::Jobs::Base def execute(args) Post.where("raw LIKE ?", "%:#{args[:name]}:%").find_each(&:rebake!) end diff --git a/app/jobs/regular/retrieve_topic.rb b/app/jobs/regular/retrieve_topic.rb index 5c41ebf866f..ac3f0aacad7 100644 --- a/app/jobs/regular/retrieve_topic.rb +++ b/app/jobs/regular/retrieve_topic.rb @@ -1,12 +1,9 @@ # frozen_string_literal: true -require_dependency 'email/sender' -require_dependency 'topic_retriever' - module Jobs # Asynchronously retrieve a topic from an embedded site - class RetrieveTopic < Jobs::Base + class RetrieveTopic < ::Jobs::Base def execute(args) raise Discourse::InvalidParameters.new(:embed_url) unless args[:embed_url].present? diff --git a/app/jobs/regular/run_heartbeat.rb b/app/jobs/regular/run_heartbeat.rb index 364343d0434..708c45f7dba 100644 --- a/app/jobs/regular/run_heartbeat.rb +++ b/app/jobs/regular/run_heartbeat.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class RunHeartbeat < Jobs::Base + class RunHeartbeat < ::Jobs::Base sidekiq_options queue: 'critical' diff --git a/app/jobs/regular/send_push_notification.rb b/app/jobs/regular/send_push_notification.rb index 9eb072da767..4fbd7c761b0 100644 --- a/app/jobs/regular/send_push_notification.rb +++ b/app/jobs/regular/send_push_notification.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class SendPushNotification < Jobs::Base + class SendPushNotification < ::Jobs::Base def execute(args) user = User.find_by(id: args[:user_id]) PushNotificationPusher.push(user, args[:payload]) if user diff --git a/app/jobs/regular/send_system_message.rb b/app/jobs/regular/send_system_message.rb index 80fbc4e7e8b..23ebe656b20 100644 --- a/app/jobs/regular/send_system_message.rb +++ b/app/jobs/regular/send_system_message.rb @@ -1,11 +1,10 @@ # frozen_string_literal: true require 'image_sizer' -require_dependency 'system_message' module Jobs - class SendSystemMessage < Jobs::Base + class SendSystemMessage < ::Jobs::Base def execute(args) raise Discourse::InvalidParameters.new(:user_id) unless args[:user_id].present? diff --git a/app/jobs/regular/suspicious_login.rb b/app/jobs/regular/suspicious_login.rb index a2f15d32bcc..4ba98be3816 100644 --- a/app/jobs/regular/suspicious_login.rb +++ b/app/jobs/regular/suspicious_login.rb @@ -2,7 +2,7 @@ module Jobs - class SuspiciousLogin < Jobs::Base + class SuspiciousLogin < ::Jobs::Base def execute(args) if UserAuthToken.is_suspicious(args[:user_id], args[:client_ip]) diff --git a/app/jobs/regular/toggle_topic_closed.rb b/app/jobs/regular/toggle_topic_closed.rb index 96e631d066b..246eda4db69 100644 --- a/app/jobs/regular/toggle_topic_closed.rb +++ b/app/jobs/regular/toggle_topic_closed.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class ToggleTopicClosed < Jobs::Base + class ToggleTopicClosed < ::Jobs::Base def execute(args) topic_timer = TopicTimer.find_by(id: args[:topic_timer_id] || args[:topic_status_update_id]) state = !!args[:state] diff --git a/app/jobs/regular/topic_action_converter.rb b/app/jobs/regular/topic_action_converter.rb index d047bc83617..dff892d06a2 100644 --- a/app/jobs/regular/topic_action_converter.rb +++ b/app/jobs/regular/topic_action_converter.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -class Jobs::TopicActionConverter < Jobs::Base +class Jobs::TopicActionConverter < ::Jobs::Base # Re-creating all the user actions could be very slow, so let's do it in a job # to avoid a N+1 query on a front facing operation. diff --git a/app/jobs/regular/topic_reminder.rb b/app/jobs/regular/topic_reminder.rb index 5b63e11fd4d..a9eed2b36e6 100644 --- a/app/jobs/regular/topic_reminder.rb +++ b/app/jobs/regular/topic_reminder.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class TopicReminder < Jobs::Base + class TopicReminder < ::Jobs::Base def execute(args) topic_timer = TopicTimer.find_by(id: args[:topic_timer_id]) diff --git a/app/jobs/regular/truncate_user_flag_stats.rb b/app/jobs/regular/truncate_user_flag_stats.rb index 30dae8695af..d75f7bb5aa8 100644 --- a/app/jobs/regular/truncate_user_flag_stats.rb +++ b/app/jobs/regular/truncate_user_flag_stats.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -class Jobs::TruncateUserFlagStats < Jobs::Base +class Jobs::TruncateUserFlagStats < ::Jobs::Base def self.truncate_to 100 diff --git a/app/jobs/regular/unpin_topic.rb b/app/jobs/regular/unpin_topic.rb index 8dc0fe439b6..b99e505904b 100644 --- a/app/jobs/regular/unpin_topic.rb +++ b/app/jobs/regular/unpin_topic.rb @@ -2,7 +2,7 @@ module Jobs - class UnpinTopic < Jobs::Base + class UnpinTopic < ::Jobs::Base def execute(args) topic_id = args[:topic_id] diff --git a/app/jobs/regular/update_gravatar.rb b/app/jobs/regular/update_gravatar.rb index 795018c57fd..7ae721759de 100644 --- a/app/jobs/regular/update_gravatar.rb +++ b/app/jobs/regular/update_gravatar.rb @@ -1,8 +1,7 @@ # frozen_string_literal: true module Jobs - - class UpdateGravatar < Jobs::Base + class UpdateGravatar < ::Jobs::Base sidekiq_options queue: 'low' diff --git a/app/jobs/regular/update_group_mentions.rb b/app/jobs/regular/update_group_mentions.rb index a26151b0733..4df6b9145f3 100644 --- a/app/jobs/regular/update_group_mentions.rb +++ b/app/jobs/regular/update_group_mentions.rb @@ -2,7 +2,7 @@ module Jobs - class UpdateGroupMentions < Jobs::Base + class UpdateGroupMentions < ::Jobs::Base def execute(args) group = Group.find_by(id: args[:group_id]) diff --git a/app/jobs/regular/update_private_uploads_acl.rb b/app/jobs/regular/update_private_uploads_acl.rb index 80a6993dc7f..4437ea9649e 100644 --- a/app/jobs/regular/update_private_uploads_acl.rb +++ b/app/jobs/regular/update_private_uploads_acl.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class UpdatePrivateUploadsAcl < Jobs::Base + class UpdatePrivateUploadsAcl < ::Jobs::Base # only runs when SiteSetting.prevent_anons_from_downloading_files is updated def execute(args) return if !SiteSetting.enable_s3_uploads diff --git a/app/jobs/regular/update_s3_inventory.rb b/app/jobs/regular/update_s3_inventory.rb index dae3b06a564..2d279268f00 100644 --- a/app/jobs/regular/update_s3_inventory.rb +++ b/app/jobs/regular/update_s3_inventory.rb @@ -4,7 +4,7 @@ require "s3_inventory" module Jobs # if upload bucket changes or inventory bucket changes we want to update s3 bucket policy and inventory configuration - class UpdateS3Inventory < Jobs::Base + class UpdateS3Inventory < ::Jobs::Base def execute(args) return unless SiteSetting.enable_s3_inventory? && SiteSetting.Upload.enable_s3_uploads diff --git a/app/jobs/regular/update_top_redirection.rb b/app/jobs/regular/update_top_redirection.rb index 706fc2e6976..80ad6acefb5 100644 --- a/app/jobs/regular/update_top_redirection.rb +++ b/app/jobs/regular/update_top_redirection.rb @@ -2,7 +2,7 @@ module Jobs - class UpdateTopRedirection < Jobs::Base + class UpdateTopRedirection < ::Jobs::Base def execute(args) return if args[:user_id].blank? || args[:redirected_at].blank? diff --git a/app/jobs/regular/update_username.rb b/app/jobs/regular/update_username.rb index 6fdf60fa171..308dc75c999 100644 --- a/app/jobs/regular/update_username.rb +++ b/app/jobs/regular/update_username.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class UpdateUsername < Jobs::Base + class UpdateUsername < ::Jobs::Base sidekiq_options queue: 'low' diff --git a/app/jobs/regular/user_email.rb b/app/jobs/regular/user_email.rb index 447872fd7fa..5bdea4fb864 100644 --- a/app/jobs/regular/user_email.rb +++ b/app/jobs/regular/user_email.rb @@ -1,12 +1,9 @@ # frozen_string_literal: true -require_dependency 'email/sender' -require_dependency 'user_notifications' - module Jobs # Asynchronously send an email to a user - class UserEmail < Jobs::Base + class UserEmail < ::Jobs::Base include Skippable sidekiq_options queue: 'low' diff --git a/app/jobs/scheduled/about_stats.rb b/app/jobs/scheduled/about_stats.rb index 998acf1db5f..adf40c613b0 100644 --- a/app/jobs/scheduled/about_stats.rb +++ b/app/jobs/scheduled/about_stats.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class AboutStats < Jobs::Scheduled + class AboutStats < ::Jobs::Scheduled every 30.minutes def execute(args) diff --git a/app/jobs/scheduled/activation_reminder_emails.rb b/app/jobs/scheduled/activation_reminder_emails.rb index 5151bec7801..df0b1f86ec2 100644 --- a/app/jobs/scheduled/activation_reminder_emails.rb +++ b/app/jobs/scheduled/activation_reminder_emails.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class ActivationReminderEmails < Jobs::Scheduled + class ActivationReminderEmails < ::Jobs::Scheduled every 2.hours def execute(args) diff --git a/app/jobs/scheduled/auto_expire_user_api_keys.rb b/app/jobs/scheduled/auto_expire_user_api_keys.rb index 7217608ef45..4a4e041f7ce 100644 --- a/app/jobs/scheduled/auto_expire_user_api_keys.rb +++ b/app/jobs/scheduled/auto_expire_user_api_keys.rb @@ -2,7 +2,7 @@ module Jobs - class AutoExpireUserApiKeys < Jobs::Scheduled + class AutoExpireUserApiKeys < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/auto_queue_handler.rb b/app/jobs/scheduled/auto_queue_handler.rb index 659aa92c64b..500a45b0798 100644 --- a/app/jobs/scheduled/auto_queue_handler.rb +++ b/app/jobs/scheduled/auto_queue_handler.rb @@ -3,7 +3,7 @@ # This job will automatically act on records that have gone unhandled on a # queue for a long time. module Jobs - class AutoQueueHandler < Jobs::Scheduled + class AutoQueueHandler < ::Jobs::Scheduled every 1.day diff --git a/app/jobs/scheduled/badge_grant.rb b/app/jobs/scheduled/badge_grant.rb index ccddc6d582c..b4fd367c692 100644 --- a/app/jobs/scheduled/badge_grant.rb +++ b/app/jobs/scheduled/badge_grant.rb @@ -2,7 +2,7 @@ module Jobs - class BadgeGrant < Jobs::Scheduled + class BadgeGrant < ::Jobs::Scheduled def self.run self.new.execute(nil) end diff --git a/app/jobs/scheduled/category_stats.rb b/app/jobs/scheduled/category_stats.rb index 44843a67e39..b1de99224e2 100644 --- a/app/jobs/scheduled/category_stats.rb +++ b/app/jobs/scheduled/category_stats.rb @@ -2,7 +2,7 @@ module Jobs - class CategoryStats < Jobs::Scheduled + class CategoryStats < ::Jobs::Scheduled every 24.hours def execute(args) diff --git a/app/jobs/scheduled/check_out_of_date_themes.rb b/app/jobs/scheduled/check_out_of_date_themes.rb index 31f8b1547af..1003e25a906 100644 --- a/app/jobs/scheduled/check_out_of_date_themes.rb +++ b/app/jobs/scheduled/check_out_of_date_themes.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class CheckOutOfDateThemes < Jobs::Scheduled + class CheckOutOfDateThemes < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/clean_up_associated_accounts.rb b/app/jobs/scheduled/clean_up_associated_accounts.rb index 0d009d2feef..ac2ba4802b5 100644 --- a/app/jobs/scheduled/clean_up_associated_accounts.rb +++ b/app/jobs/scheduled/clean_up_associated_accounts.rb @@ -2,7 +2,7 @@ module Jobs - class CleanUpAssociatedAccounts < Jobs::Scheduled + class CleanUpAssociatedAccounts < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/clean_up_crawler_stats.rb b/app/jobs/scheduled/clean_up_crawler_stats.rb index 40dc386f8da..09f704bd34d 100644 --- a/app/jobs/scheduled/clean_up_crawler_stats.rb +++ b/app/jobs/scheduled/clean_up_crawler_stats.rb @@ -2,7 +2,7 @@ module Jobs - class CleanUpCrawlerStats < Jobs::Scheduled + class CleanUpCrawlerStats < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/clean_up_deprecated_url_site_settings.rb b/app/jobs/scheduled/clean_up_deprecated_url_site_settings.rb index b7c4fc212d9..6352c928571 100644 --- a/app/jobs/scheduled/clean_up_deprecated_url_site_settings.rb +++ b/app/jobs/scheduled/clean_up_deprecated_url_site_settings.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class CleanUpDeprecatedUrlSiteSettings < Jobs::Scheduled + class CleanUpDeprecatedUrlSiteSettings < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/clean_up_email_logs.rb b/app/jobs/scheduled/clean_up_email_logs.rb index 083f9b8b36f..9799764e711 100644 --- a/app/jobs/scheduled/clean_up_email_logs.rb +++ b/app/jobs/scheduled/clean_up_email_logs.rb @@ -2,7 +2,7 @@ module Jobs - class CleanUpEmailLogs < Jobs::Scheduled + class CleanUpEmailLogs < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/clean_up_exports.rb b/app/jobs/scheduled/clean_up_exports.rb index 8352aa105a6..7a29ff2eb68 100644 --- a/app/jobs/scheduled/clean_up_exports.rb +++ b/app/jobs/scheduled/clean_up_exports.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class CleanUpExports < Jobs::Scheduled + class CleanUpExports < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/clean_up_inactive_users.rb b/app/jobs/scheduled/clean_up_inactive_users.rb index f0ccc89a99f..a0a4ab5f61b 100644 --- a/app/jobs/scheduled/clean_up_inactive_users.rb +++ b/app/jobs/scheduled/clean_up_inactive_users.rb @@ -2,7 +2,7 @@ module Jobs - class CleanUpInactiveUsers < Jobs::Scheduled + class CleanUpInactiveUsers < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/clean_up_post_reply_keys.rb b/app/jobs/scheduled/clean_up_post_reply_keys.rb index a520061ebd5..748da603f34 100644 --- a/app/jobs/scheduled/clean_up_post_reply_keys.rb +++ b/app/jobs/scheduled/clean_up_post_reply_keys.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class CleanUpPostReplyKeys < Jobs::Scheduled + class CleanUpPostReplyKeys < ::Jobs::Scheduled every 1.day def execute(_) diff --git a/app/jobs/scheduled/clean_up_search_logs.rb b/app/jobs/scheduled/clean_up_search_logs.rb index 0f047641971..03f934bee71 100644 --- a/app/jobs/scheduled/clean_up_search_logs.rb +++ b/app/jobs/scheduled/clean_up_search_logs.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class CleanUpSearchLogs < Jobs::Scheduled + class CleanUpSearchLogs < ::Jobs::Scheduled every 1.week def execute(args) diff --git a/app/jobs/scheduled/clean_up_unmatched_emails.rb b/app/jobs/scheduled/clean_up_unmatched_emails.rb index 6ce52992550..58fb112e17b 100644 --- a/app/jobs/scheduled/clean_up_unmatched_emails.rb +++ b/app/jobs/scheduled/clean_up_unmatched_emails.rb @@ -2,7 +2,7 @@ module Jobs - class CleanUpUnmatchedEmails < Jobs::Scheduled + class CleanUpUnmatchedEmails < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/clean_up_unmatched_ips.rb b/app/jobs/scheduled/clean_up_unmatched_ips.rb index f535f5b4509..fa16315f2de 100644 --- a/app/jobs/scheduled/clean_up_unmatched_ips.rb +++ b/app/jobs/scheduled/clean_up_unmatched_ips.rb @@ -2,7 +2,7 @@ module Jobs - class CleanUpUnmatchedIPs < Jobs::Scheduled + class CleanUpUnmatchedIPs < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/clean_up_unsubscribe_keys.rb b/app/jobs/scheduled/clean_up_unsubscribe_keys.rb index 70f6b994736..ed8dfb55667 100644 --- a/app/jobs/scheduled/clean_up_unsubscribe_keys.rb +++ b/app/jobs/scheduled/clean_up_unsubscribe_keys.rb @@ -2,7 +2,7 @@ module Jobs - class CleanUpUnsubscribeKeys < Jobs::Scheduled + class CleanUpUnsubscribeKeys < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/clean_up_unused_staged_users.rb b/app/jobs/scheduled/clean_up_unused_staged_users.rb index ffcac8a0af2..3769dffe6bd 100644 --- a/app/jobs/scheduled/clean_up_unused_staged_users.rb +++ b/app/jobs/scheduled/clean_up_unused_staged_users.rb @@ -2,7 +2,7 @@ module Jobs - class CleanUpUnusedStagedUsers < Jobs::Scheduled + class CleanUpUnusedStagedUsers < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/clean_up_uploads.rb b/app/jobs/scheduled/clean_up_uploads.rb index a6ff2e3a6b8..97af8b02407 100644 --- a/app/jobs/scheduled/clean_up_uploads.rb +++ b/app/jobs/scheduled/clean_up_uploads.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class CleanUpUploads < Jobs::Scheduled + class CleanUpUploads < ::Jobs::Scheduled every 1.hour def execute(args) diff --git a/app/jobs/scheduled/create_missing_avatars.rb b/app/jobs/scheduled/create_missing_avatars.rb index 42e5365d41e..0847b84f2e8 100644 --- a/app/jobs/scheduled/create_missing_avatars.rb +++ b/app/jobs/scheduled/create_missing_avatars.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class CreateMissingAvatars < Jobs::Scheduled + class CreateMissingAvatars < ::Jobs::Scheduled every 1.hour def execute(args) diff --git a/app/jobs/scheduled/dashboard_stats.rb b/app/jobs/scheduled/dashboard_stats.rb index 26cc43afff5..c256466642d 100644 --- a/app/jobs/scheduled/dashboard_stats.rb +++ b/app/jobs/scheduled/dashboard_stats.rb @@ -1,11 +1,7 @@ # frozen_string_literal: true -require_dependency 'admin_dashboard_data' -require_dependency 'group' -require_dependency 'group_message' - module Jobs - class DashboardStats < Jobs::Scheduled + class DashboardStats < ::Jobs::Scheduled every 30.minutes def execute(args) diff --git a/app/jobs/scheduled/destroy_old_deletion_stubs.rb b/app/jobs/scheduled/destroy_old_deletion_stubs.rb index 8624b7ea48f..0762bbbaace 100644 --- a/app/jobs/scheduled/destroy_old_deletion_stubs.rb +++ b/app/jobs/scheduled/destroy_old_deletion_stubs.rb @@ -2,7 +2,7 @@ module Jobs # various consistency checks - class DestroyOldDeletionStubs < Jobs::Scheduled + class DestroyOldDeletionStubs < ::Jobs::Scheduled every 30.minutes def execute(args) diff --git a/app/jobs/scheduled/destroy_old_hidden_posts.rb b/app/jobs/scheduled/destroy_old_hidden_posts.rb index ee7819240c5..fa282fcbdb1 100644 --- a/app/jobs/scheduled/destroy_old_hidden_posts.rb +++ b/app/jobs/scheduled/destroy_old_hidden_posts.rb @@ -2,7 +2,7 @@ module Jobs - class DestroyOldHiddenPosts < Jobs::Scheduled + class DestroyOldHiddenPosts < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/directory_refresh_daily.rb b/app/jobs/scheduled/directory_refresh_daily.rb index 90311bbad24..4840f23f224 100644 --- a/app/jobs/scheduled/directory_refresh_daily.rb +++ b/app/jobs/scheduled/directory_refresh_daily.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class DirectoryRefreshDaily < Jobs::Scheduled + class DirectoryRefreshDaily < ::Jobs::Scheduled every 1.hour def execute(args) diff --git a/app/jobs/scheduled/directory_refresh_older.rb b/app/jobs/scheduled/directory_refresh_older.rb index 523be14b2f4..a1f792cc44e 100644 --- a/app/jobs/scheduled/directory_refresh_older.rb +++ b/app/jobs/scheduled/directory_refresh_older.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class DirectoryRefreshOlder < Jobs::Scheduled + class DirectoryRefreshOlder < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/disable_bootstrap_mode.rb b/app/jobs/scheduled/disable_bootstrap_mode.rb index e41cf8577b5..61650b3094c 100644 --- a/app/jobs/scheduled/disable_bootstrap_mode.rb +++ b/app/jobs/scheduled/disable_bootstrap_mode.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class DisableBootstrapMode < Jobs::Scheduled + class DisableBootstrapMode < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/enqueue_digest_emails.rb b/app/jobs/scheduled/enqueue_digest_emails.rb index e8db948ca60..59b091263c1 100644 --- a/app/jobs/scheduled/enqueue_digest_emails.rb +++ b/app/jobs/scheduled/enqueue_digest_emails.rb @@ -2,7 +2,7 @@ module Jobs - class EnqueueDigestEmails < Jobs::Scheduled + class EnqueueDigestEmails < ::Jobs::Scheduled every 30.minutes def execute(args) diff --git a/app/jobs/scheduled/enqueue_onceoffs.rb b/app/jobs/scheduled/enqueue_onceoffs.rb index d529fad0625..29692c63112 100644 --- a/app/jobs/scheduled/enqueue_onceoffs.rb +++ b/app/jobs/scheduled/enqueue_onceoffs.rb @@ -2,11 +2,11 @@ module Jobs - class EnqueueOnceoffs < Jobs::Scheduled + class EnqueueOnceoffs < ::Jobs::Scheduled every 10.minutes def execute(args) - Jobs::Onceoff.enqueue_all + ::Jobs::Onceoff.enqueue_all end end diff --git a/app/jobs/scheduled/ensure_db_consistency.rb b/app/jobs/scheduled/ensure_db_consistency.rb index 4d602187aef..6d7f3fbbb8a 100644 --- a/app/jobs/scheduled/ensure_db_consistency.rb +++ b/app/jobs/scheduled/ensure_db_consistency.rb @@ -2,7 +2,7 @@ module Jobs # various consistency checks - class EnsureDbConsistency < Jobs::Scheduled + class EnsureDbConsistency < ::Jobs::Scheduled every 12.hours def execute(args) diff --git a/app/jobs/scheduled/ensure_s3_uploads_existence.rb b/app/jobs/scheduled/ensure_s3_uploads_existence.rb index df29c385270..ccde386f3e6 100644 --- a/app/jobs/scheduled/ensure_s3_uploads_existence.rb +++ b/app/jobs/scheduled/ensure_s3_uploads_existence.rb @@ -2,7 +2,7 @@ module Jobs - class EnsureS3UploadsExistence < Jobs::Scheduled + class EnsureS3UploadsExistence < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/fix_user_usernames_and_groups_names_clash.rb b/app/jobs/scheduled/fix_user_usernames_and_groups_names_clash.rb index 4158e2e7a23..d176217d55f 100644 --- a/app/jobs/scheduled/fix_user_usernames_and_groups_names_clash.rb +++ b/app/jobs/scheduled/fix_user_usernames_and_groups_names_clash.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class FixUserUsernamesAndGroupNamesClash < Jobs::Scheduled + class FixUserUsernamesAndGroupsNamesClash < ::Jobs::Scheduled every 1.week def execute(args) diff --git a/app/jobs/scheduled/grant_anniversary_badges.rb b/app/jobs/scheduled/grant_anniversary_badges.rb index a091c3032b6..a5246c3243f 100644 --- a/app/jobs/scheduled/grant_anniversary_badges.rb +++ b/app/jobs/scheduled/grant_anniversary_badges.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class GrantAnniversaryBadges < Jobs::Scheduled + class GrantAnniversaryBadges < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/grant_new_user_of_the_month_badges.rb b/app/jobs/scheduled/grant_new_user_of_the_month_badges.rb index fe550071954..59fb77bc941 100644 --- a/app/jobs/scheduled/grant_new_user_of_the_month_badges.rb +++ b/app/jobs/scheduled/grant_new_user_of_the_month_badges.rb @@ -1,9 +1,7 @@ # frozen_string_literal: true -require 'badge_granter' - module Jobs - class GrantNewUserOfTheMonthBadges < Jobs::Scheduled + class GrantNewUserOfTheMonthBadges < ::Jobs::Scheduled every 1.day MAX_AWARDED = 2 diff --git a/app/jobs/scheduled/heartbeat.rb b/app/jobs/scheduled/heartbeat.rb index c1b8a8cb24c..0f0d9fc020a 100644 --- a/app/jobs/scheduled/heartbeat.rb +++ b/app/jobs/scheduled/heartbeat.rb @@ -3,7 +3,7 @@ module Jobs # used to ensure at least 1 sidekiq is running correctly - class Heartbeat < Jobs::Scheduled + class Heartbeat < ::Jobs::Scheduled every 3.minute def execute(args) diff --git a/app/jobs/scheduled/ignored_users_summary.rb b/app/jobs/scheduled/ignored_users_summary.rb index c84122e0a2f..59483c2b529 100644 --- a/app/jobs/scheduled/ignored_users_summary.rb +++ b/app/jobs/scheduled/ignored_users_summary.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class IgnoredUsersSummary < Jobs::Scheduled + class IgnoredUsersSummary < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/invalidate_inactive_admins.rb b/app/jobs/scheduled/invalidate_inactive_admins.rb index fbe8929d045..8b1468d762b 100644 --- a/app/jobs/scheduled/invalidate_inactive_admins.rb +++ b/app/jobs/scheduled/invalidate_inactive_admins.rb @@ -2,7 +2,7 @@ module Jobs - class InvalidateInactiveAdmins < Jobs::Scheduled + class InvalidateInactiveAdmins < ::Jobs::Scheduled every 1.day def execute(_) diff --git a/app/jobs/scheduled/migrate_upload_scheme.rb b/app/jobs/scheduled/migrate_upload_scheme.rb index 6d4683ccd5e..601ad3afd87 100644 --- a/app/jobs/scheduled/migrate_upload_scheme.rb +++ b/app/jobs/scheduled/migrate_upload_scheme.rb @@ -2,7 +2,7 @@ module Jobs - class MigrateUploadScheme < Jobs::Scheduled + class MigrateUploadScheme < ::Jobs::Scheduled every 10.minutes sidekiq_options retry: false diff --git a/app/jobs/scheduled/pending_queued_posts_reminder.rb b/app/jobs/scheduled/pending_queued_posts_reminder.rb index f0d36088892..599446374ea 100644 --- a/app/jobs/scheduled/pending_queued_posts_reminder.rb +++ b/app/jobs/scheduled/pending_queued_posts_reminder.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class PendingQueuedPostReminder < Jobs::Scheduled + class PendingQueuedPostsReminder < ::Jobs::Scheduled every 1.hour diff --git a/app/jobs/scheduled/pending_reviewables_reminder.rb b/app/jobs/scheduled/pending_reviewables_reminder.rb index 92642b03271..f06e8a7ed24 100644 --- a/app/jobs/scheduled/pending_reviewables_reminder.rb +++ b/app/jobs/scheduled/pending_reviewables_reminder.rb @@ -2,7 +2,7 @@ module Jobs - class PendingReviewablesReminder < Jobs::Scheduled + class PendingReviewablesReminder < ::Jobs::Scheduled every 1.hour attr_reader :sent_reminder diff --git a/app/jobs/scheduled/pending_users_reminder.rb b/app/jobs/scheduled/pending_users_reminder.rb index bf11df2900f..8ef1332485d 100644 --- a/app/jobs/scheduled/pending_users_reminder.rb +++ b/app/jobs/scheduled/pending_users_reminder.rb @@ -1,10 +1,8 @@ # frozen_string_literal: true -require_dependency 'admin_user_index_query' - module Jobs - class PendingUsersReminder < Jobs::Scheduled + class PendingUsersReminder < ::Jobs::Scheduled every 1.hour def execute(args) diff --git a/app/jobs/scheduled/periodical_updates.rb b/app/jobs/scheduled/periodical_updates.rb index 12c1414ef4b..2ae53c951d2 100644 --- a/app/jobs/scheduled/periodical_updates.rb +++ b/app/jobs/scheduled/periodical_updates.rb @@ -1,12 +1,10 @@ # frozen_string_literal: true -require_dependency 'score_calculator' - module Jobs # This job will run on a regular basis to update statistics and denormalized data. # If it does not run, the site will not function properly. - class PeriodicalUpdates < Jobs::Scheduled + class PeriodicalUpdates < ::Jobs::Scheduled every 15.minutes def self.should_update_long_topics? diff --git a/app/jobs/scheduled/poll_feed.rb b/app/jobs/scheduled/poll_feed.rb index 54f47578b39..14411da2a5d 100644 --- a/app/jobs/scheduled/poll_feed.rb +++ b/app/jobs/scheduled/poll_feed.rb @@ -5,13 +5,9 @@ # require 'digest/sha1' require 'excon' -require_dependency 'final_destination' -require_dependency 'post_creator' -require_dependency 'post_revisor' -require_dependency 'encodings' module Jobs - class PollFeed < Jobs::Scheduled + class PollFeed < ::Jobs::Scheduled every 5.minutes sidekiq_options retry: false @@ -41,8 +37,6 @@ module Jobs def ensure_rss_loaded return if @@rss_loaded require 'rss' - require_dependency 'feed_item_accessor' - require_dependency 'feed_element_installer' @@rss_loaded = true end diff --git a/app/jobs/scheduled/poll_mailbox.rb b/app/jobs/scheduled/poll_mailbox.rb index 80b858a11ad..22028994835 100644 --- a/app/jobs/scheduled/poll_mailbox.rb +++ b/app/jobs/scheduled/poll_mailbox.rb @@ -1,13 +1,9 @@ # frozen_string_literal: true require 'net/pop' -require_dependency 'email/receiver' -require_dependency 'email/processor' -require_dependency 'email/sender' -require_dependency 'email/message_builder' module Jobs - class PollMailbox < Jobs::Scheduled + class PollMailbox < ::Jobs::Scheduled every SiteSetting.pop3_polling_period_mins.minutes sidekiq_options retry: false diff --git a/app/jobs/scheduled/process_badge_backlog.rb b/app/jobs/scheduled/process_badge_backlog.rb index 370165d4b21..61136aae1fa 100644 --- a/app/jobs/scheduled/process_badge_backlog.rb +++ b/app/jobs/scheduled/process_badge_backlog.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class ProcessBadgeBacklog < Jobs::Scheduled + class ProcessBadgeBacklog < ::Jobs::Scheduled every 1.minute def execute(args) BadgeGranter.process_queue! diff --git a/app/jobs/scheduled/purge_deleted_uploads.rb b/app/jobs/scheduled/purge_deleted_uploads.rb index 56497f1ab5a..73c3de50544 100644 --- a/app/jobs/scheduled/purge_deleted_uploads.rb +++ b/app/jobs/scheduled/purge_deleted_uploads.rb @@ -2,7 +2,7 @@ module Jobs - class PurgeDeletedUploads < Jobs::Scheduled + class PurgeDeletedUploads < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/purge_expired_ignored_users.rb b/app/jobs/scheduled/purge_expired_ignored_users.rb index abf360b66ac..96b10837a6b 100644 --- a/app/jobs/scheduled/purge_expired_ignored_users.rb +++ b/app/jobs/scheduled/purge_expired_ignored_users.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class PurgeExpiredIgnoredUsers < Jobs::Scheduled + class PurgeExpiredIgnoredUsers < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/purge_old_web_hook_events.rb b/app/jobs/scheduled/purge_old_web_hook_events.rb index 53704bcaac4..cf4a0094109 100644 --- a/app/jobs/scheduled/purge_old_web_hook_events.rb +++ b/app/jobs/scheduled/purge_old_web_hook_events.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class PurgeOldWebHookEvents < Jobs::Scheduled + class PurgeOldWebHookEvents < ::Jobs::Scheduled every 1.day def execute(_) diff --git a/app/jobs/scheduled/purge_unactivated.rb b/app/jobs/scheduled/purge_unactivated.rb index c693822e3b2..c221bd81783 100644 --- a/app/jobs/scheduled/purge_unactivated.rb +++ b/app/jobs/scheduled/purge_unactivated.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class PurgeUnactivated < Jobs::Scheduled + class PurgeUnactivated < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/reindex_search.rb b/app/jobs/scheduled/reindex_search.rb index 50ed5e0bf3b..2ffb8110947 100644 --- a/app/jobs/scheduled/reindex_search.rb +++ b/app/jobs/scheduled/reindex_search.rb @@ -2,7 +2,7 @@ module Jobs # if locale changes or search algorithm changes we may want to reindex stuff - class ReindexSearch < Jobs::Scheduled + class ReindexSearch < ::Jobs::Scheduled every 2.hours CLEANUP_GRACE_PERIOD = 1.day.ago diff --git a/app/jobs/scheduled/reviewable_priorities.rb b/app/jobs/scheduled/reviewable_priorities.rb index b1133a89e44..7e0f5bbd7e9 100644 --- a/app/jobs/scheduled/reviewable_priorities.rb +++ b/app/jobs/scheduled/reviewable_priorities.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -class Jobs::ReviewablePriorities < Jobs::Scheduled +class Jobs::ReviewablePriorities < ::Jobs::Scheduled every 1.day # We need this many reviewables before we'll calculate priorities diff --git a/app/jobs/scheduled/schedule_backup.rb b/app/jobs/scheduled/schedule_backup.rb index a33cf3c34c5..8b9d43aff44 100644 --- a/app/jobs/scheduled/schedule_backup.rb +++ b/app/jobs/scheduled/schedule_backup.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class ScheduleBackup < Jobs::Scheduled + class ScheduleBackup < ::Jobs::Scheduled daily at: 0.hours sidekiq_options retry: false diff --git a/app/jobs/scheduled/tl3_promotions.rb b/app/jobs/scheduled/tl3_promotions.rb index 2bd9613c595..848f409b9c2 100644 --- a/app/jobs/scheduled/tl3_promotions.rb +++ b/app/jobs/scheduled/tl3_promotions.rb @@ -2,7 +2,7 @@ module Jobs - class Tl3Promotions < Jobs::Scheduled + class Tl3Promotions < ::Jobs::Scheduled daily at: 4.hours def execute(args) diff --git a/app/jobs/scheduled/top_refresh_older.rb b/app/jobs/scheduled/top_refresh_older.rb index e24ec875877..74878de8d58 100644 --- a/app/jobs/scheduled/top_refresh_older.rb +++ b/app/jobs/scheduled/top_refresh_older.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class TopRefreshOlder < Jobs::Scheduled + class TopRefreshOlder < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/top_refresh_today.rb b/app/jobs/scheduled/top_refresh_today.rb index 4259a95241b..237ed371213 100644 --- a/app/jobs/scheduled/top_refresh_today.rb +++ b/app/jobs/scheduled/top_refresh_today.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class TopRefreshToday < Jobs::Scheduled + class TopRefreshToday < ::Jobs::Scheduled every 1.hour def execute(args) diff --git a/app/jobs/scheduled/unsilence_users.rb b/app/jobs/scheduled/unsilence_users.rb index 94c343f4c21..f6f5f5e0ff4 100644 --- a/app/jobs/scheduled/unsilence_users.rb +++ b/app/jobs/scheduled/unsilence_users.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class UnsilenceUsers < Jobs::Scheduled + class UnsilenceUsers < ::Jobs::Scheduled every 15.minutes def execute(args) diff --git a/app/jobs/scheduled/update_heat_settings.rb b/app/jobs/scheduled/update_heat_settings.rb index 9dafbbf118e..887df93e8ec 100644 --- a/app/jobs/scheduled/update_heat_settings.rb +++ b/app/jobs/scheduled/update_heat_settings.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class UpdateHeatSettings < Jobs::Scheduled + class UpdateHeatSettings < ::Jobs::Scheduled every 1.month def execute(args) diff --git a/app/jobs/scheduled/version_check.rb b/app/jobs/scheduled/version_check.rb index c52bb97d4bd..d28d943d934 100644 --- a/app/jobs/scheduled/version_check.rb +++ b/app/jobs/scheduled/version_check.rb @@ -1,10 +1,7 @@ # frozen_string_literal: true -require_dependency 'discourse_hub' -require_dependency 'discourse_updates' - module Jobs - class VersionCheck < Jobs::Scheduled + class VersionCheck < ::Jobs::Scheduled every 1.day def execute(args) diff --git a/app/jobs/scheduled/weekly.rb b/app/jobs/scheduled/weekly.rb index 705cf600243..19895bfef62 100644 --- a/app/jobs/scheduled/weekly.rb +++ b/app/jobs/scheduled/weekly.rb @@ -1,12 +1,10 @@ # frozen_string_literal: true -require_dependency 'score_calculator' - module Jobs # This job will run on a regular basis to update statistics and denormalized data. # If it does not run, the site will not function properly. - class Weekly < Jobs::Scheduled + class Weekly < ::Jobs::Scheduled every 1.week def execute(args) diff --git a/app/mailers/admin_confirmation_mailer.rb b/app/mailers/admin_confirmation_mailer.rb index a546db497b5..e7ff1cde99c 100644 --- a/app/mailers/admin_confirmation_mailer.rb +++ b/app/mailers/admin_confirmation_mailer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'email/message_builder' - class AdminConfirmationMailer < ActionMailer::Base include Email::BuildEmailHelper diff --git a/app/mailers/download_backup_mailer.rb b/app/mailers/download_backup_mailer.rb index fe291f0614b..62d5e583684 100644 --- a/app/mailers/download_backup_mailer.rb +++ b/app/mailers/download_backup_mailer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'email/message_builder' - class DownloadBackupMailer < ActionMailer::Base include Email::BuildEmailHelper diff --git a/app/mailers/invite_mailer.rb b/app/mailers/invite_mailer.rb index 469a3804158..050f6e8a7ce 100644 --- a/app/mailers/invite_mailer.rb +++ b/app/mailers/invite_mailer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'email/message_builder' - class InviteMailer < ActionMailer::Base include Email::BuildEmailHelper diff --git a/app/mailers/rejection_mailer.rb b/app/mailers/rejection_mailer.rb index f91b98c4d8a..99d6feb310d 100644 --- a/app/mailers/rejection_mailer.rb +++ b/app/mailers/rejection_mailer.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -require_dependency 'email/message_builder' +require 'email/message_builder' class RejectionMailer < ActionMailer::Base include Email::BuildEmailHelper diff --git a/app/mailers/subscription_mailer.rb b/app/mailers/subscription_mailer.rb index 0b13cb6a51e..535dec5387a 100644 --- a/app/mailers/subscription_mailer.rb +++ b/app/mailers/subscription_mailer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'email/message_builder' - class SubscriptionMailer < ActionMailer::Base include Email::BuildEmailHelper diff --git a/app/mailers/test_mailer.rb b/app/mailers/test_mailer.rb index a9eba9e9e52..ab65d300e88 100644 --- a/app/mailers/test_mailer.rb +++ b/app/mailers/test_mailer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'email/message_builder' - class TestMailer < ActionMailer::Base include Email::BuildEmailHelper diff --git a/app/mailers/user_notifications.rb b/app/mailers/user_notifications.rb index 0ffc6f77ba0..ee5a516a734 100644 --- a/app/mailers/user_notifications.rb +++ b/app/mailers/user_notifications.rb @@ -1,12 +1,5 @@ # frozen_string_literal: true -require_dependency 'markdown_linker' -require_dependency 'email/message_builder' -require_dependency 'age_words' -require_dependency 'rtl' -require_dependency 'discourse_ip_info' -require_dependency 'browser_detection' - class UserNotifications < ActionMailer::Base include UserNotificationsHelper include ApplicationHelper diff --git a/app/mailers/version_mailer.rb b/app/mailers/version_mailer.rb index 4c12dffc173..0b9445f452b 100644 --- a/app/mailers/version_mailer.rb +++ b/app/mailers/version_mailer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'email/message_builder' - class VersionMailer < ActionMailer::Base include Email::BuildEmailHelper diff --git a/app/models/admin_dashboard_data.rb b/app/models/admin_dashboard_data.rb index c558954c3d0..633b1a0019a 100644 --- a/app/models/admin_dashboard_data.rb +++ b/app/models/admin_dashboard_data.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'mem_info' - class AdminDashboardData include StatsCacheable diff --git a/app/models/auto_track_duration_site_setting.rb b/app/models/auto_track_duration_site_setting.rb index 3659d81ce61..9764d0d5256 100644 --- a/app/models/auto_track_duration_site_setting.rb +++ b/app/models/auto_track_duration_site_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class AutoTrackDurationSiteSetting < EnumSiteSetting def self.valid_value?(val) diff --git a/app/models/backup_location_site_setting.rb b/app/models/backup_location_site_setting.rb index 4763c3be047..4236ca1de7f 100644 --- a/app/models/backup_location_site_setting.rb +++ b/app/models/backup_location_site_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class BackupLocationSiteSetting < EnumSiteSetting LOCAL ||= "local" S3 ||= "s3" diff --git a/app/models/badge.rb b/app/models/badge.rb index 561b562583f..3596190a8a2 100644 --- a/app/models/badge.rb +++ b/app/models/badge.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'slug' - class Badge < ActiveRecord::Base # NOTE: These badge ids are not in order! They are grouped logically. # When picking an id, *search* for it. diff --git a/app/models/category.rb b/app/models/category.rb index af7b0731669..9efc7ab0f20 100644 --- a/app/models/category.rb +++ b/app/models/category.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'distributed_cache' - class Category < ActiveRecord::Base self.ignored_columns = %w{ uploaded_meta_id diff --git a/app/models/category_list.rb b/app/models/category_list.rb index 2d8bfb3d740..f1f7b6a0d94 100644 --- a/app/models/category_list.rb +++ b/app/models/category_list.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'pinned_check' - class CategoryList include ActiveModel::Serialization diff --git a/app/models/category_user.rb b/app/models/category_user.rb index acf29cbefc1..e25f917d322 100644 --- a/app/models/category_user.rb +++ b/app/models/category_user.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'notification_levels' - class CategoryUser < ActiveRecord::Base belongs_to :category belongs_to :user diff --git a/app/models/color_scheme.rb b/app/models/color_scheme.rb index c242b634428..f69a96031cd 100644 --- a/app/models/color_scheme.rb +++ b/app/models/color_scheme.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'distributed_cache' - class ColorScheme < ActiveRecord::Base # rubocop:disable Layout/AlignHash diff --git a/app/models/developer.rb b/app/models/developer.rb index db0958303a5..0b0dcd93208 100644 --- a/app/models/developer.rb +++ b/app/models/developer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'distributed_cache' - class Developer < ActiveRecord::Base belongs_to :user diff --git a/app/models/digest_email_site_setting.rb b/app/models/digest_email_site_setting.rb index d0cc1be9138..23cc4e28ecb 100644 --- a/app/models/digest_email_site_setting.rb +++ b/app/models/digest_email_site_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class DigestEmailSiteSetting < EnumSiteSetting def self.valid_value?(val) diff --git a/app/models/discourse_single_sign_on.rb b/app/models/discourse_single_sign_on.rb index ed6d73013e9..6b6e392683f 100644 --- a/app/models/discourse_single_sign_on.rb +++ b/app/models/discourse_single_sign_on.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'single_sign_on' - class DiscourseSingleSignOn < SingleSignOn class BlankExternalId < StandardError; end diff --git a/app/models/email_change_request.rb b/app/models/email_change_request.rb index b9f9e7bfeba..f54df4bf23e 100644 --- a/app/models/email_change_request.rb +++ b/app/models/email_change_request.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'email_validator' - class EmailChangeRequest < ActiveRecord::Base belongs_to :old_email_token, class_name: 'EmailToken' belongs_to :new_email_token, class_name: 'EmailToken' diff --git a/app/models/email_level_site_setting.rb b/app/models/email_level_site_setting.rb index a3eccdf11c8..9f805dd2536 100644 --- a/app/models/email_level_site_setting.rb +++ b/app/models/email_level_site_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class EmailLevelSiteSetting < EnumSiteSetting def self.valid_value?(val) diff --git a/app/models/email_log.rb b/app/models/email_log.rb index bc7df7ae2a5..4ca15594f15 100644 --- a/app/models/email_log.rb +++ b/app/models/email_log.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'distributed_mutex' - class EmailLog < ActiveRecord::Base CRITICAL_EMAIL_TYPES ||= Set.new %w{ account_created diff --git a/app/models/embeddable_host.rb b/app/models/embeddable_host.rb index 788fc8b4d9a..8944a4fcd72 100644 --- a/app/models/embeddable_host.rb +++ b/app/models/embeddable_host.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'url_helper' - class EmbeddableHost < ActiveRecord::Base validate :host_must_be_valid belongs_to :category diff --git a/app/models/group.rb b/app/models/group.rb index c3f632acd15..a773593107b 100644 --- a/app/models/group.rb +++ b/app/models/group.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum' - class Group < ActiveRecord::Base include HasCustomFields include AnonCacheInvalidator diff --git a/app/models/group_user.rb b/app/models/group_user.rb index 456cbfbc42b..664a333e9bd 100644 --- a/app/models/group_user.rb +++ b/app/models/group_user.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'notification_levels' - class GroupUser < ActiveRecord::Base belongs_to :group, counter_cache: "user_count" belongs_to :user diff --git a/app/models/invite.rb b/app/models/invite.rb index e92d5cd4083..34ff75b2822 100644 --- a/app/models/invite.rb +++ b/app/models/invite.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'rate_limiter' - class Invite < ActiveRecord::Base self.ignored_columns = %w{ via_email diff --git a/app/models/like_notification_frequency_site_setting.rb b/app/models/like_notification_frequency_site_setting.rb index 80cdf1c8827..19d7043627d 100644 --- a/app/models/like_notification_frequency_site_setting.rb +++ b/app/models/like_notification_frequency_site_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class LikeNotificationFrequencySiteSetting < EnumSiteSetting def self.valid_value?(val) diff --git a/app/models/locale_site_setting.rb b/app/models/locale_site_setting.rb index 4e5522a4789..947fe5724ac 100644 --- a/app/models/locale_site_setting.rb +++ b/app/models/locale_site_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class LocaleSiteSetting < EnumSiteSetting def self.valid_value?(val) diff --git a/app/models/mailing_list_mode_site_setting.rb b/app/models/mailing_list_mode_site_setting.rb index 3d7d4881bca..2192a6fbf7d 100644 --- a/app/models/mailing_list_mode_site_setting.rb +++ b/app/models/mailing_list_mode_site_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class MailingListModeSiteSetting < EnumSiteSetting def self.valid_value?(val) val.to_i.to_s == val.to_s && diff --git a/app/models/new_topic_duration_site_setting.rb b/app/models/new_topic_duration_site_setting.rb index e2a944f8775..3ed58210ae8 100644 --- a/app/models/new_topic_duration_site_setting.rb +++ b/app/models/new_topic_duration_site_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class NewTopicDurationSiteSetting < EnumSiteSetting def self.valid_value?(val) diff --git a/app/models/notification.rb b/app/models/notification.rb index b31812c75af..9b32cae7c0d 100644 --- a/app/models/notification.rb +++ b/app/models/notification.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum' -require_dependency 'notification_emailer' - class Notification < ActiveRecord::Base belongs_to :user belongs_to :topic diff --git a/app/models/notification_level_when_replying_site_setting.rb b/app/models/notification_level_when_replying_site_setting.rb index 97e444a984b..c71927815fe 100644 --- a/app/models/notification_level_when_replying_site_setting.rb +++ b/app/models/notification_level_when_replying_site_setting.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' -require_dependency 'notification_levels' - class NotificationLevelWhenReplyingSiteSetting < EnumSiteSetting def self.valid_value?(val) diff --git a/app/models/optimized_image.rb b/app/models/optimized_image.rb index 1f5b287f4d2..cd50f70b58f 100644 --- a/app/models/optimized_image.rb +++ b/app/models/optimized_image.rb @@ -1,10 +1,5 @@ # frozen_string_literal: true -require_dependency "file_helper" -require_dependency "url_helper" -require_dependency "db_helper" -require_dependency "file_store/local_store" - class OptimizedImage < ActiveRecord::Base include HasUrl belongs_to :upload diff --git a/app/models/post.rb b/app/models/post.rb index 2d2cb253e46..d2ad8be4358 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -1,13 +1,5 @@ # frozen_string_literal: true -require_dependency 'pretty_text' -require_dependency 'rate_limiter' -require_dependency 'post_revisor' -require_dependency 'enum' -require_dependency 'post_analyzer' -require_dependency 'validators/post_validator' -require_dependency 'plugin/filter' - require 'archetype' require 'digest/sha1' @@ -55,7 +47,7 @@ class Post < ActiveRecord::Base has_many :user_actions, foreign_key: :target_post_id - validates_with ::Validators::PostValidator, unless: :skip_validation + validates_with PostValidator, unless: :skip_validation after_save :index_search diff --git a/app/models/post_action.rb b/app/models/post_action.rb index bf79a2a16ea..5affd3b8097 100644 --- a/app/models/post_action.rb +++ b/app/models/post_action.rb @@ -1,10 +1,5 @@ # frozen_string_literal: true -require_dependency 'rate_limiter' -require_dependency 'system_message' -require_dependency 'post_action_creator' -require_dependency 'post_action_destroyer' - class PostAction < ActiveRecord::Base include RateLimiter::OnCreateRecord include Trashable diff --git a/app/models/post_action_type.rb b/app/models/post_action_type.rb index a15ac36fd07..3a895f14d5a 100644 --- a/app/models/post_action_type.rb +++ b/app/models/post_action_type.rb @@ -1,9 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum' -require_dependency 'distributed_cache' -require_dependency 'flag_settings' - class PostActionType < ActiveRecord::Base after_save :expire_cache after_destroy :expire_cache diff --git a/app/models/post_analyzer.rb b/app/models/post_analyzer.rb index cfc64e5308e..1b5ca6970e9 100644 --- a/app/models/post_analyzer.rb +++ b/app/models/post_analyzer.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'oneboxer' -require_dependency 'email_cook' - class PostAnalyzer def initialize(raw, topic_id) diff --git a/app/models/post_revision.rb b/app/models/post_revision.rb index d4961eb8650..4557f0f4daf 100644 --- a/app/models/post_revision.rb +++ b/app/models/post_revision.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency "discourse_diff" - class PostRevision < ActiveRecord::Base belongs_to :post belongs_to :user diff --git a/app/models/post_timing.rb b/app/models/post_timing.rb index 9d7b2f1d30f..21a2e31d824 100644 --- a/app/models/post_timing.rb +++ b/app/models/post_timing.rb @@ -1,6 +1,4 @@ # frozen_string_literal: true -# -require_dependency 'archetype' class PostTiming < ActiveRecord::Base belongs_to :topic diff --git a/app/models/previous_replies_site_setting.rb b/app/models/previous_replies_site_setting.rb index 85f273cc703..59b7c2d246e 100644 --- a/app/models/previous_replies_site_setting.rb +++ b/app/models/previous_replies_site_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class PreviousRepliesSiteSetting < EnumSiteSetting def self.valid_value?(val) diff --git a/app/models/remote_theme.rb b/app/models/remote_theme.rb index 16b58579ca0..3f3cdeca704 100644 --- a/app/models/remote_theme.rb +++ b/app/models/remote_theme.rb @@ -1,9 +1,5 @@ # frozen_string_literal: true -require_dependency 'theme_store/git_importer' -require_dependency 'theme_store/tgz_importer' -require_dependency 'upload_creator' - class RemoteTheme < ActiveRecord::Base METADATA_PROPERTIES = %i{ license_url diff --git a/app/models/remove_muted_tags_from_latest_site_setting.rb b/app/models/remove_muted_tags_from_latest_site_setting.rb index 5c23198e246..9ca328e328f 100644 --- a/app/models/remove_muted_tags_from_latest_site_setting.rb +++ b/app/models/remove_muted_tags_from_latest_site_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class RemoveMutedTagsFromLatestSiteSetting < EnumSiteSetting ALWAYS ||= "always" diff --git a/app/models/report.rb b/app/models/report.rb index d4387b0f614..5271e0bef33 100644 --- a/app/models/report.rb +++ b/app/models/report.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'topic_subtype' - class Report # Change this line each time report format change # and you want to ensure cache is reset diff --git a/app/models/reviewable.rb b/app/models/reviewable.rb index 6fa2eccb6c2..539ae3c2f9d 100644 --- a/app/models/reviewable.rb +++ b/app/models/reviewable.rb @@ -1,12 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum' -require_dependency 'reviewable/actions' -require_dependency 'reviewable/conversation' -require_dependency 'reviewable/editable_fields' -require_dependency 'reviewable/perform_result' -require_dependency 'reviewable_serializer' - class Reviewable < ActiveRecord::Base class UpdateConflict < StandardError; end diff --git a/app/models/reviewable_flagged_post.rb b/app/models/reviewable_flagged_post.rb index 43622b14769..340d63c8b5c 100644 --- a/app/models/reviewable_flagged_post.rb +++ b/app/models/reviewable_flagged_post.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'reviewable' - class ReviewableFlaggedPost < Reviewable # Penalties are handled by the modal after the action is performed diff --git a/app/models/reviewable_priority_setting.rb b/app/models/reviewable_priority_setting.rb index eb89b18a5a4..42afd497758 100644 --- a/app/models/reviewable_priority_setting.rb +++ b/app/models/reviewable_priority_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class ReviewablePrioritySetting < EnumSiteSetting def self.valid_value?(val) diff --git a/app/models/reviewable_queued_post.rb b/app/models/reviewable_queued_post.rb index 8602a0fb728..9c99be4c3d8 100644 --- a/app/models/reviewable_queued_post.rb +++ b/app/models/reviewable_queued_post.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'reviewable' -require_dependency 'user_destroyer' - class ReviewableQueuedPost < Reviewable after_create do diff --git a/app/models/reviewable_sensitivity_setting.rb b/app/models/reviewable_sensitivity_setting.rb index 1135c03a0df..4207d142605 100644 --- a/app/models/reviewable_sensitivity_setting.rb +++ b/app/models/reviewable_sensitivity_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class ReviewableSensitivitySetting < EnumSiteSetting def self.valid_value?(val) diff --git a/app/models/reviewable_user.rb b/app/models/reviewable_user.rb index 31b8776ef8a..59e107105c9 100644 --- a/app/models/reviewable_user.rb +++ b/app/models/reviewable_user.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'reviewable' - class ReviewableUser < Reviewable def self.create_for(user) diff --git a/app/models/s3_region_site_setting.rb b/app/models/s3_region_site_setting.rb index 5d892d31924..0f6e03a2083 100644 --- a/app/models/s3_region_site_setting.rb +++ b/app/models/s3_region_site_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class S3RegionSiteSetting < EnumSiteSetting def self.valid_value?(val) diff --git a/app/models/screened_email.rb b/app/models/screened_email.rb index 316d898fba8..73119db3b2a 100644 --- a/app/models/screened_email.rb +++ b/app/models/screened_email.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'screening_model' - # A ScreenedEmail record represents an email address that is being watched, # typically when creating a new User account. If the email of the signup form # (or some other form) matches a ScreenedEmail record, an action can be diff --git a/app/models/screened_ip_address.rb b/app/models/screened_ip_address.rb index e4d89e51184..10ce1ce4f19 100644 --- a/app/models/screened_ip_address.rb +++ b/app/models/screened_ip_address.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true -require_dependency 'screening_model' -require_dependency 'ip_addr' +require 'screening_model' +require 'ip_addr' # A ScreenedIpAddress record represents an IP address or subnet that is being watched, # and possibly blocked from creating accounts. diff --git a/app/models/screened_url.rb b/app/models/screened_url.rb index a5bbaec4976..0140dd2b47c 100644 --- a/app/models/screened_url.rb +++ b/app/models/screened_url.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'screening_model' - # A ScreenedUrl record represents a URL that is being watched. # If the URL is found in a post, some action can be performed. diff --git a/app/models/search_log.rb b/app/models/search_log.rb index c6285242384..a3899ff3186 100644 --- a/app/models/search_log.rb +++ b/app/models/search_log.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum' - class SearchLog < ActiveRecord::Base validates_presence_of :term diff --git a/app/models/site.rb b/app/models/site.rb index efddc9cb4fd..3a30f023815 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -1,9 +1,6 @@ # frozen_string_literal: true # A class we can use to serialize the site data -require_dependency 'score_calculator' -require_dependency 'trust_level' - class Site include ActiveModel::Serialization diff --git a/app/models/site_setting.rb b/app/models/site_setting.rb index 703dce9adb8..945b1d3e1be 100644 --- a/app/models/site_setting.rb +++ b/app/models/site_setting.rb @@ -1,9 +1,5 @@ # frozen_string_literal: true -require 'site_setting_extension' -require_dependency 'global_path' -require_dependency 'site_settings/yaml_loader' - class SiteSetting < ActiveRecord::Base extend GlobalPath extend SiteSettingExtension diff --git a/app/models/slug_setting.rb b/app/models/slug_setting.rb index 2feec4bd2a0..65460f83900 100644 --- a/app/models/slug_setting.rb +++ b/app/models/slug_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class SlugSetting < EnumSiteSetting VALUES = %w(ascii encoded none) diff --git a/app/models/tag_user.rb b/app/models/tag_user.rb index dc0164ebb11..820d750b663 100644 --- a/app/models/tag_user.rb +++ b/app/models/tag_user.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'notification_levels' - class TagUser < ActiveRecord::Base belongs_to :tag belongs_to :user diff --git a/app/models/theme.rb b/app/models/theme.rb index 613af2069dc..aae30f66128 100644 --- a/app/models/theme.rb +++ b/app/models/theme.rb @@ -1,13 +1,5 @@ # frozen_string_literal: true -require_dependency 'distributed_cache' -require_dependency 'stylesheet/compiler' -require_dependency 'stylesheet/manager' -require_dependency 'theme_settings_parser' -require_dependency 'theme_settings_manager' -require_dependency 'theme_translation_parser' -require_dependency 'theme_translation_manager' - class Theme < ActiveRecord::Base @cache = DistributedCache.new('theme') diff --git a/app/models/theme_field.rb b/app/models/theme_field.rb index 8d8a0c6c998..a18da47c5f3 100644 --- a/app/models/theme_field.rb +++ b/app/models/theme_field.rb @@ -1,9 +1,5 @@ # frozen_string_literal: true -require_dependency 'theme_settings_parser' -require_dependency 'theme_translation_parser' -require_dependency 'theme_javascript_compiler' - class ThemeField < ActiveRecord::Base belongs_to :upload diff --git a/app/models/top_topic.rb b/app/models/top_topic.rb index 33933779c89..739f6ce66cc 100644 --- a/app/models/top_topic.rb +++ b/app/models/top_topic.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency "distributed_memoizer" - class TopTopic < ActiveRecord::Base belongs_to :topic diff --git a/app/models/topic.rb b/app/models/topic.rb index 208b639d505..f2e04a2f9e7 100644 --- a/app/models/topic.rb +++ b/app/models/topic.rb @@ -1,19 +1,5 @@ # frozen_string_literal: true -require_dependency 'slug' -require_dependency 'avatar_lookup' -require_dependency 'topic_view' -require_dependency 'rate_limiter' -require_dependency 'text_sentinel' -require_dependency 'text_cleaner' -require_dependency 'archetype' -require_dependency 'html_prettify' -require_dependency 'discourse_tagging' -require_dependency 'search_indexer' -require_dependency 'list_controller' -require_dependency 'topic_posters_summary' -require_dependency 'topic_featured_users' - class Topic < ActiveRecord::Base class UserExists < StandardError; end include ActionView::Helpers::SanitizeHelper diff --git a/app/models/topic_embed.rb b/app/models/topic_embed.rb index 973b4896c51..895f0d59863 100644 --- a/app/models/topic_embed.rb +++ b/app/models/topic_embed.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'nokogiri' -require_dependency 'url_helper' - class TopicEmbed < ActiveRecord::Base include Trashable diff --git a/app/models/topic_link.rb b/app/models/topic_link.rb index cdd0cc4a2de..5222d438dcd 100644 --- a/app/models/topic_link.rb +++ b/app/models/topic_link.rb @@ -1,8 +1,6 @@ # frozen_string_literal: true require 'uri' -require_dependency 'slug' -require_dependency 'discourse' class TopicLink < ActiveRecord::Base diff --git a/app/models/topic_link_click.rb b/app/models/topic_link_click.rb index 452fb709f3f..6b45f7e9af1 100644 --- a/app/models/topic_link_click.rb +++ b/app/models/topic_link_click.rb @@ -1,6 +1,5 @@ # frozen_string_literal: true -require_dependency 'discourse' require 'ipaddr' require 'url_helper' diff --git a/app/models/topic_list.rb b/app/models/topic_list.rb index e546df96f04..27730561d7e 100644 --- a/app/models/topic_list.rb +++ b/app/models/topic_list.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'avatar_lookup' -require_dependency 'primary_group_lookup' - class TopicList include ActiveModel::Serialization diff --git a/app/models/topic_posters_summary.rb b/app/models/topic_posters_summary.rb index b054401617d..a4299561e20 100644 --- a/app/models/topic_posters_summary.rb +++ b/app/models/topic_posters_summary.rb @@ -1,8 +1,6 @@ # frozen_string_literal: true # This is used in topic lists -require_dependency 'topic_poster' - class TopicPostersSummary # localization is fast, but this allows us to avoid diff --git a/app/models/topic_user.rb b/app/models/topic_user.rb index 5b83e66f5f9..65df38666fd 100644 --- a/app/models/topic_user.rb +++ b/app/models/topic_user.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'notification_levels' - class TopicUser < ActiveRecord::Base belongs_to :user belongs_to :topic diff --git a/app/models/trust_level_and_staff_setting.rb b/app/models/trust_level_and_staff_setting.rb index 2795de8266f..ecab020b931 100644 --- a/app/models/trust_level_and_staff_setting.rb +++ b/app/models/trust_level_and_staff_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class TrustLevelAndStaffSetting < TrustLevelSetting def self.valid_value?(val) special_group?(val) || diff --git a/app/models/trust_level_setting.rb b/app/models/trust_level_setting.rb index a7d887c7478..4660adc5800 100644 --- a/app/models/trust_level_setting.rb +++ b/app/models/trust_level_setting.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum_site_setting' - class TrustLevelSetting < EnumSiteSetting def self.valid_value?(val) diff --git a/app/models/upload.rb b/app/models/upload.rb index b013ece4b47..5821afea84b 100644 --- a/app/models/upload.rb +++ b/app/models/upload.rb @@ -1,12 +1,6 @@ # frozen_string_literal: true require "digest/sha1" -require_dependency "file_helper" -require_dependency "url_helper" -require_dependency "db_helper" -require_dependency "validators/upload_validator" -require_dependency "file_store/local_store" -require_dependency "base62" class Upload < ActiveRecord::Base include ActionView::Helpers::NumberHelper @@ -34,7 +28,7 @@ class Upload < ActiveRecord::Base validates_presence_of :filesize validates_presence_of :original_filename - validates_with ::Validators::UploadValidator + validates_with UploadValidator after_destroy do User.where(uploaded_avatar_id: self.id).update_all(uploaded_avatar_id: nil) diff --git a/app/models/user.rb b/app/models/user.rb index 0b8f18da700..04c6af225a1 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -1,21 +1,5 @@ # frozen_string_literal: true -require_dependency 'jobs/base' -require_dependency 'email' -require_dependency 'email_token' -require_dependency 'email_validator' -require_dependency 'trust_level' -require_dependency 'pbkdf2' -require_dependency 'discourse' -require_dependency 'post_destroyer' -require_dependency 'user_name_suggester' -require_dependency 'pretty_text' -require_dependency 'url_helper' -require_dependency 'letter_avatar' -require_dependency 'promotion' -require_dependency 'password_validator' -require_dependency 'notification_serializer' - class User < ActiveRecord::Base include Searchable include Roleable diff --git a/app/models/user_avatar.rb b/app/models/user_avatar.rb index 741f952acaf..215524a743c 100644 --- a/app/models/user_avatar.rb +++ b/app/models/user_avatar.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'letter_avatar' -require_dependency 'upload_creator' - class UserAvatar < ActiveRecord::Base belongs_to :user belongs_to :gravatar_upload, class_name: 'Upload' diff --git a/app/models/user_email.rb b/app/models/user_email.rb index 8b3729f1fbc..e6fdaa8fc6f 100644 --- a/app/models/user_email.rb +++ b/app/models/user_email.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'email_validator' - class UserEmail < ActiveRecord::Base belongs_to :user diff --git a/app/models/user_profile.rb b/app/models/user_profile.rb index 3e51fd91733..7f16cfe90eb 100644 --- a/app/models/user_profile.rb +++ b/app/models/user_profile.rb @@ -1,6 +1,5 @@ # frozen_string_literal: true -require_dependency 'upload_creator' class UserProfile < ActiveRecord::Base self.ignored_columns = %w{ card_background diff --git a/app/models/user_search.rb b/app/models/user_search.rb index 86ae6d5d750..ffb23e46f96 100644 --- a/app/models/user_search.rb +++ b/app/models/user_search.rb @@ -1,8 +1,6 @@ # frozen_string_literal: true # Searches for a user by username or full text or name (if enabled in SiteSettings) -require_dependency 'search' - class UserSearch MAX_SIZE_PRIORITY_MENTION ||= 500 diff --git a/app/models/username_validator.rb b/app/models/username_validator.rb index 1f2e9b97993..8a588ad56c4 100644 --- a/app/models/username_validator.rb +++ b/app/models/username_validator.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'user' - class UsernameValidator # Public: Perform the validation of a field in a given object # it adds the errors (if any) to the object that we're giving as parameter diff --git a/app/models/watched_word.rb b/app/models/watched_word.rb index 959dfb011df..57cc69f1fcd 100644 --- a/app/models/watched_word.rb +++ b/app/models/watched_word.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum' - class WatchedWord < ActiveRecord::Base def self.actions diff --git a/app/serializers/admin_user_serializer.rb b/app/serializers/admin_user_serializer.rb index fed45ea7321..e864578f919 100644 --- a/app/serializers/admin_user_serializer.rb +++ b/app/serializers/admin_user_serializer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'admin_user_list_serializer' - class AdminUserSerializer < AdminUserListSerializer attributes :name, diff --git a/app/serializers/concerns/user_auth_tokens_mixin.rb b/app/serializers/concerns/user_auth_tokens_mixin.rb index 5b9ae19673c..8e963f7fadb 100644 --- a/app/serializers/concerns/user_auth_tokens_mixin.rb +++ b/app/serializers/concerns/user_auth_tokens_mixin.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'browser_detection' -require_dependency 'discourse_ip_info' - module UserAuthTokensMixin extend ActiveSupport::Concern diff --git a/app/serializers/current_user_serializer.rb b/app/serializers/current_user_serializer.rb index 8cfb348e62d..4ba1a982f8a 100644 --- a/app/serializers/current_user_serializer.rb +++ b/app/serializers/current_user_serializer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'new_post_manager' - class CurrentUserSerializer < BasicUserSerializer attributes :name, diff --git a/app/serializers/listable_topic_serializer.rb b/app/serializers/listable_topic_serializer.rb index 2b110290e87..1336a92c14a 100644 --- a/app/serializers/listable_topic_serializer.rb +++ b/app/serializers/listable_topic_serializer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'pinned_check' - class ListableTopicSerializer < BasicTopicSerializer attributes :reply_count, diff --git a/app/serializers/new_post_result_serializer.rb b/app/serializers/new_post_result_serializer.rb index 3031348da70..ca6eee7f9c7 100644 --- a/app/serializers/new_post_result_serializer.rb +++ b/app/serializers/new_post_result_serializer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'application_serializer' - class NewPostResultSerializer < ApplicationSerializer attributes :action, :post, diff --git a/app/serializers/post_action_type_serializer.rb b/app/serializers/post_action_type_serializer.rb index f6aec434994..7c492cb1a3f 100644 --- a/app/serializers/post_action_type_serializer.rb +++ b/app/serializers/post_action_type_serializer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'configurable_urls' - class PostActionTypeSerializer < ApplicationSerializer attributes( diff --git a/app/serializers/post_stream_serializer_mixin.rb b/app/serializers/post_stream_serializer_mixin.rb index 794b1bffb44..9b435155d95 100644 --- a/app/serializers/post_stream_serializer_mixin.rb +++ b/app/serializers/post_stream_serializer_mixin.rb @@ -1,9 +1,5 @@ # frozen_string_literal: true -require_dependency 'gap_serializer' -require_dependency 'post_serializer' -require_dependency 'timeline_lookup' - module PostStreamSerializerMixin def self.included(klass) klass.attributes :post_stream diff --git a/app/serializers/reviewable_explanation_serializer.rb b/app/serializers/reviewable_explanation_serializer.rb index 057c4dc3ce0..f268d12794a 100644 --- a/app/serializers/reviewable_explanation_serializer.rb +++ b/app/serializers/reviewable_explanation_serializer.rb @@ -1,5 +1,4 @@ # frozen_string_literal: true -require_dependency 'reviewable_score_explanation_serializer' class ReviewableExplanationSerializer < ApplicationSerializer attributes( diff --git a/app/serializers/reviewable_score_serializer.rb b/app/serializers/reviewable_score_serializer.rb index 8bcf0890986..4232c0c25c5 100644 --- a/app/serializers/reviewable_score_serializer.rb +++ b/app/serializers/reviewable_score_serializer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'reviewable_score_type_serializer' - class ReviewableScoreSerializer < ApplicationSerializer attributes :id, :score, :agree_stats, :status, :reason, :created_at, :reviewed_at diff --git a/app/serializers/reviewable_serializer.rb b/app/serializers/reviewable_serializer.rb index d1a99c8a20c..b2cbdab4592 100644 --- a/app/serializers/reviewable_serializer.rb +++ b/app/serializers/reviewable_serializer.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'reviewable_action_serializer' -require_dependency 'reviewable_editable_field_serializer' - class ReviewableSerializer < ApplicationSerializer class_attribute :_payload_for_serialization diff --git a/app/serializers/site_serializer.rb b/app/serializers/site_serializer.rb index 6e579d77190..3f8a653d969 100644 --- a/app/serializers/site_serializer.rb +++ b/app/serializers/site_serializer.rb @@ -1,9 +1,5 @@ # frozen_string_literal: true -require_dependency 'discourse_tagging' -require_dependency 'wizard' -require_dependency 'wizard/builder' - class SiteSerializer < ApplicationSerializer attributes( diff --git a/app/serializers/topic_view_serializer.rb b/app/serializers/topic_view_serializer.rb index 1f177645164..233303f8f0b 100644 --- a/app/serializers/topic_view_serializer.rb +++ b/app/serializers/topic_view_serializer.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'pinned_check' -require_dependency 'new_post_manager' - class TopicViewSerializer < ApplicationSerializer include PostStreamSerializerMixin include SuggestedTopicsMixin diff --git a/app/serializers/trust_level3_requirements_serializer.rb b/app/serializers/trust_level3_requirements_serializer.rb index 6f5a726830b..2cf83317595 100644 --- a/app/serializers/trust_level3_requirements_serializer.rb +++ b/app/serializers/trust_level3_requirements_serializer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'penalty_counts_serializer' - class TrustLevel3RequirementsSerializer < ApplicationSerializer has_one :penalty_counts, embed: :object, serializer: PenaltyCountsSerializer diff --git a/app/serializers/web_hook_topic_view_serializer.rb b/app/serializers/web_hook_topic_view_serializer.rb index 0d83cee5aef..90defd183f8 100644 --- a/app/serializers/web_hook_topic_view_serializer.rb +++ b/app/serializers/web_hook_topic_view_serializer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'pinned_check' - class WebHookTopicViewSerializer < TopicViewSerializer attributes :created_by, :last_poster diff --git a/app/services/group_message.rb b/app/services/group_message.rb index 0bc9a9005c9..5c22d90d525 100644 --- a/app/services/group_message.rb +++ b/app/services/group_message.rb @@ -10,10 +10,6 @@ # limit_once_per: (seconds) Limit sending the given type of message once every X seconds. # The default is 24 hours. Set to false to always send the message. -require_dependency 'post_creator' -require_dependency 'topic_subtype' -require_dependency 'discourse' - class GroupMessage include Rails.application.routes.url_helpers diff --git a/app/services/inline_uploads.rb b/app/services/inline_uploads.rb index 66fead79211..8168543b243 100644 --- a/app/services/inline_uploads.rb +++ b/app/services/inline_uploads.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency "pretty_text" - class InlineUploads PLACEHOLDER = "__replace__" PATH_PLACEHOLDER = "__replace_path__" diff --git a/app/services/post_alerter.rb b/app/services/post_alerter.rb index d48fc2a2dda..3fe1a8899a7 100644 --- a/app/services/post_alerter.rb +++ b/app/services/post_alerter.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'distributed_mutex' -require_dependency 'user_action_manager' - class PostAlerter def self.post_created(post, opts = {}) PostAlerter.new(opts).after_save_post(post, true) diff --git a/app/services/post_owner_changer.rb b/app/services/post_owner_changer.rb index 45ed22688c9..9a2d128c452 100644 --- a/app/services/post_owner_changer.rb +++ b/app/services/post_owner_changer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'post_action_destroyer' - class PostOwnerChanger def initialize(params) diff --git a/app/services/push_notification_pusher.rb b/app/services/push_notification_pusher.rb index 82d65196d60..93ae8a4e4ed 100644 --- a/app/services/push_notification_pusher.rb +++ b/app/services/push_notification_pusher.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'webpush' - class PushNotificationPusher TOKEN_VALID_FOR_SECONDS ||= 5 * 60 diff --git a/app/services/search_indexer.rb b/app/services/search_indexer.rb index 4ea9b7b972d..8b3c84944b9 100644 --- a/app/services/search_indexer.rb +++ b/app/services/search_indexer.rb @@ -1,5 +1,4 @@ # frozen_string_literal: true -require_dependency 'search' class SearchIndexer INDEX_VERSION = 3 diff --git a/app/services/staff_action_logger.rb b/app/services/staff_action_logger.rb index 765a05b5420..e564c6c790f 100644 --- a/app/services/staff_action_logger.rb +++ b/app/services/staff_action_logger.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'staff_message_format' - # Responsible for logging the actions of admins and moderators. class StaffActionLogger diff --git a/app/services/user_destroyer.rb b/app/services/user_destroyer.rb index dbdbc1daeff..abb5b9b3cab 100644 --- a/app/services/user_destroyer.rb +++ b/app/services/user_destroyer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'ip_addr' - # Responsible for destroying a User record class UserDestroyer diff --git a/app/services/user_silencer.rb b/app/services/user_silencer.rb index 014d65aa5db..6dd2edf736b 100644 --- a/app/services/user_silencer.rb +++ b/app/services/user_silencer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'staff_message_format' - class UserSilencer attr_reader :user_history diff --git a/app/services/username_changer.rb b/app/services/username_changer.rb index 6b23d3ec5d5..7c6cec61cc3 100644 --- a/app/services/username_changer.rb +++ b/app/services/username_changer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'jobs/regular/update_username' - class UsernameChanger def initialize(user, new_username, actor = nil) diff --git a/config/application.rb b/config/application.rb index 7b58fcd96e9..59bf4180fb0 100644 --- a/config/application.rb +++ b/config/application.rb @@ -93,14 +93,21 @@ module Discourse # issue is image_optim crashes on missing dependencies config.assets.image_optim = false - config.autoloader = :classic + config.autoloader = :zeitwerk # Custom directories with classes and modules you want to be autoloadable. - config.autoload_paths += Dir["#{config.root}/app/serializers"] - config.autoload_paths += Dir["#{config.root}/lib/validators/"] config.autoload_paths += Dir["#{config.root}/app"] + config.autoload_paths += Dir["#{config.root}/app/jobs"] + config.autoload_paths += Dir["#{config.root}/app/serializers"] + config.autoload_paths += Dir["#{config.root}/lib/active_record/connection_adapters"] + config.autoload_paths += Dir["#{config.root}/lib/common_passwords"] + config.autoload_paths += Dir["#{config.root}/lib/highlight_js"] + config.autoload_paths += Dir["#{config.root}/lib/i18n"] + config.autoload_paths += Dir["#{config.root}/lib/validators/"] - if Rails.env.development? && !Sidekiq.server? + Rails.autoloaders.main.ignore(Dir["#{config.root}/app/models/reports"]) + + if !Sidekiq.server? config.autoload_paths += Dir["#{config.root}/lib"] end diff --git a/config/initializers/013-excon_defaults.rb b/config/initializers/013-excon_defaults.rb index cfade5b7ccd..40389051db3 100644 --- a/config/initializers/013-excon_defaults.rb +++ b/config/initializers/013-excon_defaults.rb @@ -1,3 +1,4 @@ # frozen_string_literal: true +require 'excon' Excon::DEFAULTS[:omit_default_port] = true diff --git a/config/initializers/014-track-setting-changes.rb b/config/initializers/014-track-setting-changes.rb index 00150af49ef..e5ca1341228 100644 --- a/config/initializers/014-track-setting-changes.rb +++ b/config/initializers/014-track-setting-changes.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency "site_icon_manager" - DiscourseEvent.on(:site_setting_changed) do |name, old_value, new_value| # Enabling `must_approve_users` on an existing site is odd, so we assume that the # existing users are approved. diff --git a/config/initializers/099-defer.rb b/config/initializers/099-defer.rb deleted file mode 100644 index 96f1456b644..00000000000 --- a/config/initializers/099-defer.rb +++ /dev/null @@ -1,3 +0,0 @@ -# frozen_string_literal: true - -require_dependency 'scheduler/defer' diff --git a/config/initializers/100-onebox_options.rb b/config/initializers/100-onebox_options.rb index c6bd15fad9f..e9d0f21c712 100644 --- a/config/initializers/100-onebox_options.rb +++ b/config/initializers/100-onebox_options.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'twitter_api' - Onebox.options = { twitter_client: TwitterApi, redirect_limit: 3, diff --git a/config/routes.rb b/config/routes.rb index 44a66d3f603..55f2cd7a536 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -2,10 +2,6 @@ require "sidekiq/web" require "mini_scheduler/web" -require_dependency "admin_constraint" -require_dependency "staff_constraint" -require_dependency "homepage_constraint" -require_dependency "permalink_constraint" # The following constants have been replaced with `RouteFormat` and are deprecated. USERNAME_ROUTE_FORMAT = /[%\w.\-]+?/ unless defined? USERNAME_ROUTE_FORMAT diff --git a/lib/admin_constraint.rb b/lib/admin_constraint.rb index f7077b7e7dd..2fd16b90b32 100644 --- a/lib/admin_constraint.rb +++ b/lib/admin_constraint.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'current_user' - class AdminConstraint def initialize(options = {}) diff --git a/lib/admin_user_index_query.rb b/lib/admin_user_index_query.rb index 69498329c4f..ea6afa01923 100644 --- a/lib/admin_user_index_query.rb +++ b/lib/admin_user_index_query.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'trust_level' - class AdminUserIndexQuery def initialize(params = {}, klass = User, trust_levels = TrustLevel.levels) diff --git a/lib/auth.rb b/lib/auth.rb index 74e924bf46a..b48a22d6c45 100644 --- a/lib/auth.rb +++ b/lib/auth.rb @@ -2,14 +2,14 @@ module Auth; end -require_dependency 'auth/auth_provider' -require_dependency 'auth/result' -require_dependency 'auth/authenticator' -require_dependency 'auth/managed_authenticator' -require_dependency 'auth/facebook_authenticator' -require_dependency 'auth/open_id_authenticator' -require_dependency 'auth/github_authenticator' -require_dependency 'auth/twitter_authenticator' -require_dependency 'auth/google_oauth2_authenticator' -require_dependency 'auth/instagram_authenticator' -require_dependency 'auth/discord_authenticator' +require 'auth/auth_provider' +require 'auth/result' +require 'auth/authenticator' +require 'auth/managed_authenticator' +require 'auth/facebook_authenticator' +require 'auth/open_id_authenticator' +require 'auth/github_authenticator' +require 'auth/twitter_authenticator' +require 'auth/google_oauth2_authenticator' +require 'auth/instagram_authenticator' +require 'auth/discord_authenticator' diff --git a/lib/auth/default_current_user_provider.rb b/lib/auth/default_current_user_provider.rb index 9e8d88faa06..24ed4122fef 100644 --- a/lib/auth/default_current_user_provider.rb +++ b/lib/auth/default_current_user_provider.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency "auth/current_user_provider" -require_dependency "rate_limiter" - class Auth::DefaultCurrentUserProvider CURRENT_USER_KEY ||= "_DISCOURSE_CURRENT_USER" diff --git a/lib/backup_restore/backup_restore.rb b/lib/backup_restore.rb similarity index 98% rename from lib/backup_restore/backup_restore.rb rename to lib/backup_restore.rb index 81b05196b35..d3d59079e69 100644 --- a/lib/backup_restore/backup_restore.rb +++ b/lib/backup_restore.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency "backup_restore/backuper" -require_dependency "backup_restore/restorer" - module BackupRestore class OperationRunningError < RuntimeError; end diff --git a/lib/backup_restore/local_backup_store.rb b/lib/backup_restore/local_backup_store.rb index 5717329e425..1b1cb977f5c 100644 --- a/lib/backup_restore/local_backup_store.rb +++ b/lib/backup_restore/local_backup_store.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency "backup_restore/backup_store" -require_dependency "disk_space" - module BackupRestore class LocalBackupStore < BackupStore def self.base_directory(db: nil, root_directory: nil) diff --git a/lib/backup_restore/s3_backup_store.rb b/lib/backup_restore/s3_backup_store.rb index 6425478c110..2c1bfc0c6d4 100644 --- a/lib/backup_restore/s3_backup_store.rb +++ b/lib/backup_restore/s3_backup_store.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency "backup_restore/backup_store" -require_dependency "s3_helper" - module BackupRestore class S3BackupStore < BackupStore UPLOAD_URL_EXPIRES_AFTER_SECONDS ||= 21_600 # 6 hours diff --git a/lib/content_security_policy.rb b/lib/content_security_policy.rb index fd38fd543ac..87ad1947ce4 100644 --- a/lib/content_security_policy.rb +++ b/lib/content_security_policy.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -require_dependency 'content_security_policy/builder' -require_dependency 'content_security_policy/extension' +require 'content_security_policy/builder' +require 'content_security_policy/extension' class ContentSecurityPolicy class << self diff --git a/lib/cooked_post_processor.rb b/lib/cooked_post_processor.rb index f709b3d9cff..00c50e5b9a0 100644 --- a/lib/cooked_post_processor.rb +++ b/lib/cooked_post_processor.rb @@ -3,10 +3,6 @@ # Post processing that we can do after a post has already been cooked. # For example, inserting the onebox content, or image sizes/thumbnails. -require_dependency 'url_helper' -require_dependency 'pretty_text' -require_dependency 'quote_comparer' - class CookedPostProcessor INLINE_ONEBOX_LOADING_CSS_CLASS = "inline-onebox-loading" INLINE_ONEBOX_CSS_CLASS = "inline-onebox" diff --git a/lib/demon/base.rb b/lib/demon/demon_base.rb similarity index 97% rename from lib/demon/base.rb rename to lib/demon/demon_base.rb index d1626114d70..85242228638 100644 --- a/lib/demon/base.rb +++ b/lib/demon/demon_base.rb @@ -3,7 +3,7 @@ module Demon; end # intelligent fork based demonizer -class Demon::Base +class Demon::DemonBase def self.demons @demons @@ -57,7 +57,7 @@ class Demon::Base def alive?(pid = nil) pid ||= @pid if pid - Demon::Base.alive?(pid) + Demon::DemonBase.alive?(pid) else false end @@ -143,7 +143,7 @@ class Demon::Base def already_running? if File.exists? pid_file pid = File.read(pid_file).to_i - if Demon::Base.alive?(pid) + if Demon::DemonBase.alive?(pid) return pid end end diff --git a/lib/demon/rails_autospec.rb b/lib/demon/rails_autospec.rb index babf5a5e7e1..c48931b411b 100644 --- a/lib/demon/rails_autospec.rb +++ b/lib/demon/rails_autospec.rb @@ -1,8 +1,8 @@ # frozen_string_literal: true -require "demon/base" +require "demon/demon_base" -class Demon::RailsAutospec < Demon::Base +class Demon::RailsAutospec < Demon::DemonBase def self.prefix "rails-autospec" diff --git a/lib/demon/sidekiq.rb b/lib/demon/sidekiq.rb index d6da3b55d6c..666cfe63539 100644 --- a/lib/demon/sidekiq.rb +++ b/lib/demon/sidekiq.rb @@ -1,8 +1,8 @@ # frozen_string_literal: true -require "demon/base" +require "demon/demon_base" -class Demon::Sidekiq < Demon::Base +class Demon::Sidekiq < ::Demon::DemonBase def self.prefix "sidekiq" diff --git a/lib/discourse_diff.rb b/lib/discourse_diff.rb index 6cac77603ac..6445ac88cd1 100644 --- a/lib/discourse_diff.rb +++ b/lib/discourse_diff.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency "onpdiff" - class DiscourseDiff MAX_DIFFERENCE = 200 diff --git a/lib/discourse_hub.rb b/lib/discourse_hub.rb index cf42009b3f8..eead8cfdc43 100644 --- a/lib/discourse_hub.rb +++ b/lib/discourse_hub.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'version' -require_dependency 'site_setting' - module DiscourseHub STATS_FETCHED_AT_KEY = "stats_fetched_at" diff --git a/lib/discourse_redis.rb b/lib/discourse_redis.rb index e63ec530ab4..89e588806f2 100644 --- a/lib/discourse_redis.rb +++ b/lib/discourse_redis.rb @@ -3,7 +3,6 @@ # # A wrapper around redis that namespaces keys with the current site id # -require_dependency 'cache' class DiscourseRedis class FallbackHandler diff --git a/lib/email.rb b/lib/email.rb index 44417b721aa..1f2dac5a800 100644 --- a/lib/email.rb +++ b/lib/email.rb @@ -1,10 +1,6 @@ # frozen_string_literal: true require 'mail' -require_dependency 'email/message_builder' -require_dependency 'email/renderer' -require_dependency 'email/sender' -require_dependency 'email/styles' module Email diff --git a/lib/email/build_email_helper.rb b/lib/email/build_email_helper.rb new file mode 100644 index 00000000000..80677942a08 --- /dev/null +++ b/lib/email/build_email_helper.rb @@ -0,0 +1,15 @@ +# frozen_string_literal: true + +module Email + module BuildEmailHelper + def build_email(*builder_args) + builder = Email::MessageBuilder.new(*builder_args) + headers(builder.header_args) if builder.header_args.present? + mail(builder.build_args).tap { |message| + if message && h = builder.html_part + message.html_part = h + end + } + end + end +end diff --git a/lib/email/message_builder.rb b/lib/email/message_builder.rb index 88669eb729d..d1e83b03e01 100644 --- a/lib/email/message_builder.rb +++ b/lib/email/message_builder.rb @@ -3,19 +3,6 @@ # Builds a Mail::Message we can use for sending. Optionally supports using a template # for the body and subject module Email - - module BuildEmailHelper - def build_email(*builder_args) - builder = Email::MessageBuilder.new(*builder_args) - headers(builder.header_args) if builder.header_args.present? - mail(builder.build_args).tap { |message| - if message && h = builder.html_part - message.html_part = h - end - } - end - end - class MessageBuilder attr_reader :template_args diff --git a/lib/email/receiver.rb b/lib/email/receiver.rb index 418d8d2aade..724adc06ab9 100644 --- a/lib/email/receiver.rb +++ b/lib/email/receiver.rb @@ -1,11 +1,6 @@ # frozen_string_literal: true require "digest" -require_dependency "new_post_manager" -require_dependency "html_to_markdown" -require_dependency "plain_text_to_markdown" -require_dependency "upload_creator" -require_dependency "upload_markdown" module Email diff --git a/lib/email/renderer.rb b/lib/email/renderer.rb index 0c616be0436..641fb207bed 100644 --- a/lib/email/renderer.rb +++ b/lib/email/renderer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'email/styles' - module Email class Renderer diff --git a/lib/email/sender.rb b/lib/email/sender.rb index 60c3e9a2239..2ae0654eb94 100644 --- a/lib/email/sender.rb +++ b/lib/email/sender.rb @@ -8,7 +8,6 @@ # # It also adds an HTML part for the plain text body # -require_dependency 'email/renderer' require 'uri' require 'net/smtp' diff --git a/lib/email_cook.rb b/lib/email_cook.rb index 751b190d1d9..9bc96fef762 100644 --- a/lib/email_cook.rb +++ b/lib/email_cook.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'pretty_text' - # A very simple formatter for imported emails class EmailCook diff --git a/lib/email_updater.rb b/lib/email_updater.rb index 9c2797aa9f8..023389fc020 100644 --- a/lib/email_updater.rb +++ b/lib/email_updater.rb @@ -1,9 +1,5 @@ # frozen_string_literal: true -require_dependency 'email' -require_dependency 'has_errors' -require_dependency 'email_validator' - class EmailUpdater include HasErrors diff --git a/lib/freedom_patches/zeitwerk.rb b/lib/freedom_patches/zeitwerk.rb new file mode 100644 index 00000000000..12d22051ac8 --- /dev/null +++ b/lib/freedom_patches/zeitwerk.rb @@ -0,0 +1,25 @@ +# frozen_string_literal: true + +module ActiveSupport::Dependencies::ZeitwerkIntegration::Inflector + CUSTOM_PATHS = { + 'base' => 'Jobs', + 'canonical_url' => 'CanonicalURL', + 'clean_up_unmatched_ips' => 'CleanUpUnmatchedIPs', + 'homepage_constraint' => 'HomePageConstraint', + 'ip_addr' => 'IPAddr', + 'onpdiff' => 'ONPDiff', + 'onceoff' => 'Jobs', + 'pop3_polling_enabled_setting_validator' => 'POP3PollingEnabledSettingValidator', + 'postgresql_fallback_adapter' => 'PostgreSQLFallbackHandler', + 'regular' => 'Jobs', + 'scheduled' => 'Jobs', + 'source_url' => 'SourceURL', + 'topic_query_sql' => 'TopicQuerySQL', + 'version' => 'Discourse', + } + + def self.camelize(basename, _abspath) + return basename.camelize if _abspath =~ /onceoff\.rb$/ + CUSTOM_PATHS.fetch(basename, basename.camelize) + end +end diff --git a/lib/generators/plugin/templates/scheduled_job.rb.erb b/lib/generators/plugin/templates/scheduled_job.rb.erb index 21d9e17b77d..c2b6ed03840 100644 --- a/lib/generators/plugin/templates/scheduled_job.rb.erb +++ b/lib/generators/plugin/templates/scheduled_job.rb.erb @@ -1,5 +1,5 @@ module Jobs - class ::<%= classified_name %>::Check < Jobs::Scheduled + class ::<%= classified_name %>::Check < ::Jobs::Scheduled every 1.day def execute(args = nil) diff --git a/lib/guardian.rb b/lib/guardian.rb index 883386ef23b..41a93f5fee2 100644 --- a/lib/guardian.rb +++ b/lib/guardian.rb @@ -1,13 +1,13 @@ # frozen_string_literal: true -require_dependency 'guardian/category_guardian' -require_dependency 'guardian/ensure_magic' -require_dependency 'guardian/post_guardian' -require_dependency 'guardian/topic_guardian' -require_dependency 'guardian/user_guardian' -require_dependency 'guardian/post_revision_guardian' -require_dependency 'guardian/group_guardian' -require_dependency 'guardian/tag_guardian' +require 'guardian/category_guardian' +require 'guardian/ensure_magic' +require 'guardian/post_guardian' +require 'guardian/topic_guardian' +require 'guardian/user_guardian' +require 'guardian/post_revision_guardian' +require 'guardian/group_guardian' +require 'guardian/tag_guardian' # The guardian is responsible for confirming access to various site resources and operations class Guardian diff --git a/lib/i18n/backend/discourse_i18n.rb b/lib/i18n/backend/discourse_i18n.rb index 6578091f6db..27da5e1894c 100644 --- a/lib/i18n/backend/discourse_i18n.rb +++ b/lib/i18n/backend/discourse_i18n.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'i18n/backend/pluralization' -require_dependency 'locale_site_setting' module I18n module Backend diff --git a/lib/import_export/import_export.rb b/lib/import_export.rb similarity index 100% rename from lib/import_export/import_export.rb rename to lib/import_export.rb diff --git a/lib/inline_oneboxer.rb b/lib/inline_oneboxer.rb index 04d8ea348c8..1405edc234e 100644 --- a/lib/inline_oneboxer.rb +++ b/lib/inline_oneboxer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'retrieve_title' - class InlineOneboxer MIN_TITLE_LENGTH = 2 diff --git a/lib/new_post_manager.rb b/lib/new_post_manager.rb index 5db5cd5ef3a..c047b78495a 100644 --- a/lib/new_post_manager.rb +++ b/lib/new_post_manager.rb @@ -1,9 +1,5 @@ # frozen_string_literal: true -require_dependency 'post_creator' -require_dependency 'new_post_result' -require_dependency 'word_watcher' - # Determines what actions should be taken with new posts. # # The default action is to create the post, but this can be extended @@ -127,7 +123,7 @@ class NewPostManager reason = post_needs_approval?(manager) return if reason == :skip - validator = Validators::PostValidator.new + validator = PostValidator.new post = Post.new(raw: manager.args[:raw]) post.user = manager.user validator.validate(post) diff --git a/lib/new_post_result.rb b/lib/new_post_result.rb index b8d4fe49f0e..70bf3f7262f 100644 --- a/lib/new_post_result.rb +++ b/lib/new_post_result.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'has_errors' - class NewPostResult include HasErrors diff --git a/lib/onebox/discourse_onebox_sanitize_config.rb b/lib/onebox/discourse_onebox_sanitize_config.rb index 5072f53c307..93902fa347b 100644 --- a/lib/onebox/discourse_onebox_sanitize_config.rb +++ b/lib/onebox/discourse_onebox_sanitize_config.rb @@ -1,11 +1,13 @@ # frozen_string_literal: true -class Sanitize - module Config - - DISCOURSE_ONEBOX ||= freeze_config merge(ONEBOX, - attributes: merge(ONEBOX[:attributes], 'aside' => [:data]) - ) - +module Onebox + class DiscourseOneboxSanitizeConfig + module Config + DISCOURSE_ONEBOX ||= + Sanitize::Config.freeze_config( + Sanitize::Config.merge(Sanitize::Config::ONEBOX, + attributes: Sanitize::Config.merge(Sanitize::Config::ONEBOX[:attributes], + 'aside' => [:data]))) + end end end diff --git a/lib/oneboxer.rb b/lib/oneboxer.rb index a4c9163804b..863b1a782ac 100644 --- a/lib/oneboxer.rb +++ b/lib/oneboxer.rb @@ -1,8 +1,6 @@ # frozen_string_literal: true require 'uri' -require_dependency "onebox/discourse_onebox_sanitize_config" -require_dependency 'final_destination' Dir["#{Rails.root}/lib/onebox/engine/*_onebox.rb"].sort.each { |f| require f } @@ -277,7 +275,7 @@ module Oneboxer options = { cache: {}, max_width: 695, - sanitize_config: Sanitize::Config::DISCOURSE_ONEBOX + sanitize_config: Onebox::DiscourseOneboxSanitizeConfig::Config::DISCOURSE_ONEBOX } options[:cookie] = fd.cookie if fd.cookie diff --git a/lib/plugin/filter.rb b/lib/plugin/filter.rb index 78c5d652548..27a1a483a94 100644 --- a/lib/plugin/filter.rb +++ b/lib/plugin/filter.rb @@ -1,6 +1,5 @@ # frozen_string_literal: true -require_dependency 'plugin/filter_manager' # this concept is borrowed straight out of wordpress module Plugin class Filter diff --git a/lib/post_action_creator.rb b/lib/post_action_creator.rb index fa2b87ab095..b4bb11f086a 100644 --- a/lib/post_action_creator.rb +++ b/lib/post_action_creator.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'post_action_result' - class PostActionCreator class CreateResult < PostActionResult attr_accessor :post_action, :reviewable, :reviewable_score diff --git a/lib/post_action_destroyer.rb b/lib/post_action_destroyer.rb index c06e8d30aa1..cf2280a5877 100644 --- a/lib/post_action_destroyer.rb +++ b/lib/post_action_destroyer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'post_action_result' - class PostActionDestroyer class DestroyResult < PostActionResult attr_accessor :post diff --git a/lib/post_creator.rb b/lib/post_creator.rb index 9614a518e6a..bf1fe848d7a 100644 --- a/lib/post_creator.rb +++ b/lib/post_creator.rb @@ -2,11 +2,6 @@ # Responsible for creating posts and topics # -require_dependency 'rate_limiter' -require_dependency 'topic_creator' -require_dependency 'post_jobs_enqueuer' -require_dependency 'distributed_mutex' -require_dependency 'has_errors' class PostCreator include HasErrors @@ -158,7 +153,7 @@ class PostCreator DiscourseEvent.trigger :before_create_post, @post DiscourseEvent.trigger :validate_post, @post - post_validator = Validators::PostValidator.new(skip_topic: true) + post_validator = PostValidator.new(skip_topic: true) post_validator.validate(@post) valid = @post.errors.blank? diff --git a/lib/pretty_text.rb b/lib/pretty_text.rb index 787d455c57f..d620320f1b0 100644 --- a/lib/pretty_text.rb +++ b/lib/pretty_text.rb @@ -3,10 +3,6 @@ require 'mini_racer' require 'nokogiri' require 'erb' -require_dependency 'url_helper' -require_dependency 'excerpt_parser' -require_dependency 'discourse_tagging' -require_dependency 'pretty_text/helpers' module PrettyText @mutex = Mutex.new diff --git a/lib/pretty_text/helpers.rb b/lib/pretty_text/helpers.rb index 31c2136eea2..9c898882a7c 100644 --- a/lib/pretty_text/helpers.rb +++ b/lib/pretty_text/helpers.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'inline_oneboxer' - module PrettyText module Helpers extend self diff --git a/lib/rate_limiter.rb b/lib/rate_limiter.rb index 99defc60108..98fdfc7df5c 100644 --- a/lib/rate_limiter.rb +++ b/lib/rate_limiter.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'rate_limiter/limit_exceeded' -require_dependency 'rate_limiter/on_create_record' - # A redis backed rate limiter. class RateLimiter diff --git a/lib/retrieve_title.rb b/lib/retrieve_title.rb index 6fc724075f3..90897077223 100644 --- a/lib/retrieve_title.rb +++ b/lib/retrieve_title.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'final_destination' - module RetrieveTitle CRAWL_TIMEOUT = 1 diff --git a/lib/reviewable/editable_fields.rb b/lib/reviewable/editable_fields.rb index 12aa60fad35..d68ac138353 100644 --- a/lib/reviewable/editable_fields.rb +++ b/lib/reviewable/editable_fields.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'reviewable/collection' - class Reviewable < ActiveRecord::Base class EditableFields < Reviewable::Collection class Field < Item diff --git a/lib/search.rb b/lib/search.rb index 9fcd1b76e7b..7eba399d149 100644 --- a/lib/search.rb +++ b/lib/search.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'search/grouped_search_results' - class Search DIACRITICS ||= /([\u0300-\u036f]|[\u1AB0-\u1AFF]|[\u1DC0-\u1DFF]|[\u20D0-\u20FF])/ diff --git a/lib/single_sign_on_provider.rb b/lib/single_sign_on_provider.rb index 774c5eeb087..d97ecdf6c88 100644 --- a/lib/single_sign_on_provider.rb +++ b/lib/single_sign_on_provider.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'single_sign_on' - class SingleSignOnProvider < SingleSignOn class BlankSecret < RuntimeError; end diff --git a/lib/site_setting_extension.rb b/lib/site_setting_extension.rb index 8b9e49f1b14..899f1338b5b 100644 --- a/lib/site_setting_extension.rb +++ b/lib/site_setting_extension.rb @@ -1,10 +1,5 @@ # frozen_string_literal: true -require_dependency 'site_settings/deprecated_settings' -require_dependency 'site_settings/type_supervisor' -require_dependency 'site_settings/defaults_provider' -require_dependency 'site_settings/db_provider' - module SiteSettingExtension include SiteSettings::DeprecatedSettings diff --git a/lib/site_settings/type_supervisor.rb b/lib/site_settings/type_supervisor.rb index f90a2312410..0f96b379086 100644 --- a/lib/site_settings/type_supervisor.rb +++ b/lib/site_settings/type_supervisor.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'site_settings/validations' -require_dependency 'enum' - module SiteSettings; end class SiteSettings::TypeSupervisor diff --git a/lib/staff_constraint.rb b/lib/staff_constraint.rb index a310cc65ad8..a90e264da1b 100644 --- a/lib/staff_constraint.rb +++ b/lib/staff_constraint.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'current_user' - class StaffConstraint def matches?(request) diff --git a/lib/stylesheet/common.rb b/lib/stylesheet/common.rb index 880d1945a53..b64f9257fb6 100644 --- a/lib/stylesheet/common.rb +++ b/lib/stylesheet/common.rb @@ -3,5 +3,7 @@ require 'sassc' module Stylesheet - ASSET_ROOT = "#{Rails.root}/app/assets/stylesheets" unless defined? ASSET_ROOT + module Common + ASSET_ROOT = "#{Rails.root}/app/assets/stylesheets" unless defined? ASSET_ROOT + end end diff --git a/lib/stylesheet/compiler.rb b/lib/stylesheet/compiler.rb index f1519aca5d1..08532a6c704 100644 --- a/lib/stylesheet/compiler.rb +++ b/lib/stylesheet/compiler.rb @@ -1,8 +1,8 @@ # frozen_string_literal: true -require_dependency 'stylesheet/common' -require_dependency 'stylesheet/importer' -require_dependency 'stylesheet/functions' +require 'stylesheet/common' +require 'stylesheet/importer' +require 'stylesheet/functions' module Stylesheet @@ -17,7 +17,7 @@ module Stylesheet file += " @import \"#{asset}\";" else filename = "#{asset}.scss" - path = "#{ASSET_ROOT}/#{filename}" + path = "#{Stylesheet::Common::ASSET_ROOT}/#{filename}" file = File.read path end @@ -37,7 +37,7 @@ module Stylesheet theme_id: options[:theme_id], theme: options[:theme], theme_field: options[:theme_field], - load_paths: [ASSET_ROOT]) + load_paths: [Stylesheet::Common::ASSET_ROOT]) result = engine.render diff --git a/lib/stylesheet/importer.rb b/lib/stylesheet/importer.rb index a0fccd0fa54..060243ae9f3 100644 --- a/lib/stylesheet/importer.rb +++ b/lib/stylesheet/importer.rb @@ -202,7 +202,7 @@ module Stylesheet def imports(asset, parent_path) if asset[-1] == "*" - Dir["#{Stylesheet::ASSET_ROOT}/#{asset}.scss"].map do |path| + Dir["#{Stylesheet::Common::ASSET_ROOT}/#{asset}.scss"].map do |path| Import.new(asset[0..-2] + File.basename(path, ".*")) end elsif callback = Importer.special_imports[asset] diff --git a/lib/suggested_topics_builder.rb b/lib/suggested_topics_builder.rb index 701922b7088..273289671af 100644 --- a/lib/suggested_topics_builder.rb +++ b/lib/suggested_topics_builder.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'topic_list' - class SuggestedTopicsBuilder attr_reader :excluded_topic_ids diff --git a/lib/svg_sprite/svg_sprite.rb b/lib/svg_sprite/svg_sprite.rb index 3630efc0c5b..0408fc2817d 100644 --- a/lib/svg_sprite/svg_sprite.rb +++ b/lib/svg_sprite/svg_sprite.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'distributed_cache' - module SvgSprite SVG_ICONS ||= Set.new([ "adjust", diff --git a/lib/system_message.rb b/lib/system_message.rb index f6186d1871d..b6eaab6e675 100644 --- a/lib/system_message.rb +++ b/lib/system_message.rb @@ -1,9 +1,6 @@ # frozen_string_literal: true # Handle sending a message to a user from the system. -require_dependency 'post_creator' -require_dependency 'topic_subtype' -require_dependency 'discourse' class SystemMessage diff --git a/lib/tasks/maxminddb.rake b/lib/tasks/maxminddb.rake index 5023f1a98fb..e85e7486410 100644 --- a/lib/tasks/maxminddb.rake +++ b/lib/tasks/maxminddb.rake @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'discourse_ip_info' - desc "downloads MaxMind's GeoLite2-City database" task "maxminddb:get" do puts "Downloading MaxMindDb's GeoLite2-City..." diff --git a/lib/tasks/s3.rake b/lib/tasks/s3.rake index 7913df4bc0a..f1b42dd90dd 100644 --- a/lib/tasks/s3.rake +++ b/lib/tasks/s3.rake @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency "s3_helper" - def brotli_s3_path(path) ext = File.extname(path) "#{path[0..-ext.length]}br#{ext}" diff --git a/lib/tasks/uploads.rake b/lib/tasks/uploads.rake index 05b803026f8..f21ddd6e625 100644 --- a/lib/tasks/uploads.rake +++ b/lib/tasks/uploads.rake @@ -886,7 +886,6 @@ task "uploads:analyze", [:cache_path, :limit] => :environment do |_, args| end task "uploads:fix_incorrect_extensions" => :environment do - require_dependency "upload_fixer" UploadFixer.fix_all_extensions end @@ -895,7 +894,6 @@ task "uploads:recover_from_tombstone" => :environment do end task "uploads:recover" => :environment do - require_dependency "upload_recovery" dry_run = ENV["DRY_RUN"].present? stop_on_error = ENV["STOP_ON_ERROR"].present? diff --git a/lib/theme_store/git_importer.rb b/lib/theme_store/git_importer.rb index cf44169ceb5..a0b2a0ce773 100644 --- a/lib/theme_store/git_importer.rb +++ b/lib/theme_store/git_importer.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'theme_store/tgz_exporter' - module ThemeStore; end class ThemeStore::GitImporter diff --git a/lib/topic_creator.rb b/lib/topic_creator.rb index 34e38487b51..dfbaf74d298 100644 --- a/lib/topic_creator.rb +++ b/lib/topic_creator.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'has_errors' - class TopicCreator attr_reader :user, :guardian, :opts diff --git a/lib/topic_query.rb b/lib/topic_query.rb index 06a89f4f2c4..991ed94dfbb 100644 --- a/lib/topic_query.rb +++ b/lib/topic_query.rb @@ -5,11 +5,6 @@ # Returns a TopicList object containing the topics found. # -require_dependency 'topic_list' -require_dependency 'suggested_topics_builder' -require_dependency 'topic_query_sql' -require_dependency 'avatar_lookup' - class TopicQuery PG_MAX_INT ||= 2147483647 diff --git a/lib/topic_view.rb b/lib/topic_view.rb index 69c3ca64400..c93461e035b 100644 --- a/lib/topic_view.rb +++ b/lib/topic_view.rb @@ -1,10 +1,5 @@ # frozen_string_literal: true -require_dependency 'guardian' -require_dependency 'topic_query' -require_dependency 'filter_best_posts' -require_dependency 'gaps' - class TopicView MEGA_TOPIC_POSTS_COUNT = 10000 MIN_POST_READ_TIME = 4.0 diff --git a/lib/trust_level.rb b/lib/trust_level.rb index f3dcd55084b..20787bb4189 100644 --- a/lib/trust_level.rb +++ b/lib/trust_level.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency 'enum' - class InvalidTrustLevel < StandardError; end class TrustLevel diff --git a/lib/upload_creator.rb b/lib/upload_creator.rb index e28f33e022c..54abb69b151 100644 --- a/lib/upload_creator.rb +++ b/lib/upload_creator.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require "fastimage" -require_dependency "image_sizer" class UploadCreator diff --git a/lib/upload_markdown.rb b/lib/upload_markdown.rb index d6476417a07..c176ae67104 100644 --- a/lib/upload_markdown.rb +++ b/lib/upload_markdown.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency "file_helper" - class UploadMarkdown def initialize(upload) @upload = upload diff --git a/lib/validators/allowed_ip_address_validator.rb b/lib/validators/allowed_ip_address_validator.rb index c0a50e7e830..d2f008f27d4 100644 --- a/lib/validators/allowed_ip_address_validator.rb +++ b/lib/validators/allowed_ip_address_validator.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency "spam_handler" - class AllowedIpAddressValidator < ActiveModel::EachValidator def validate_each(record, attribute, value) diff --git a/lib/validators/alternative_reply_by_email_addresses_validator.rb b/lib/validators/alternative_reply_by_email_addresses_validator.rb index 106828025d5..0c39cde7399 100644 --- a/lib/validators/alternative_reply_by_email_addresses_validator.rb +++ b/lib/validators/alternative_reply_by_email_addresses_validator.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require 'validators/reply_by_email_address_validator' - class AlternativeReplyByEmailAddressesValidator def initialize(opts = {}) @opts = opts diff --git a/lib/validators/password_validator.rb b/lib/validators/password_validator.rb index 1b0f9374a9e..4c3e8813312 100644 --- a/lib/validators/password_validator.rb +++ b/lib/validators/password_validator.rb @@ -1,7 +1,5 @@ # frozen_string_literal: true -require_dependency "common_passwords/common_passwords" - class PasswordValidator < ActiveModel::EachValidator def validate_each(record, attribute, value) diff --git a/lib/validators/post_validator.rb b/lib/validators/post_validator.rb index dc391b63bf5..5b160026604 100644 --- a/lib/validators/post_validator.rb +++ b/lib/validators/post_validator.rb @@ -1,10 +1,6 @@ # frozen_string_literal: true -require_dependency 'validators/stripped_length_validator' - -module Validators; end - -class Validators::PostValidator < ActiveModel::Validator +class PostValidator < ActiveModel::Validator def validate(record) presence(record) @@ -51,7 +47,7 @@ class Validators::PostValidator < ActiveModel::Validator SiteSetting.post_length end - Validators::StrippedLengthValidator.validate(post, :raw, post.raw, range) + StrippedLengthValidator.validate(post, :raw, post.raw, range) end def raw_quality(post) diff --git a/lib/validators/stripped_length_validator.rb b/lib/validators/stripped_length_validator.rb index e65b7d2e7fa..628866cb9cf 100644 --- a/lib/validators/stripped_length_validator.rb +++ b/lib/validators/stripped_length_validator.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true -module Validators; end -class Validators::StrippedLengthValidator < ActiveModel::EachValidator +class StrippedLengthValidator < ActiveModel::EachValidator def self.validate(record, attribute, value, range) unless value.nil? stripped_length = value.strip.length diff --git a/lib/validators/upload_validator.rb b/lib/validators/upload_validator.rb index 7e2d13779a0..deb49854bf6 100644 --- a/lib/validators/upload_validator.rb +++ b/lib/validators/upload_validator.rb @@ -4,7 +4,7 @@ require_dependency "file_helper" module Validators; end -class Validators::UploadValidator < ActiveModel::Validator +class UploadValidator < ActiveModel::Validator def validate(upload) # staff can upload any file in PM diff --git a/lib/webauthn/webauthn.rb b/lib/webauthn.rb similarity index 100% rename from lib/webauthn/webauthn.rb rename to lib/webauthn.rb diff --git a/lib/wizard.rb b/lib/wizard.rb index 06f507ca8e6..dbf4d8967e3 100644 --- a/lib/wizard.rb +++ b/lib/wizard.rb @@ -1,10 +1,5 @@ # frozen_string_literal: true -require_dependency 'wizard/step' -require_dependency 'wizard/field' -require_dependency 'wizard/step_updater' -require_dependency 'wizard/builder' - class Wizard attr_reader :steps, :user diff --git a/lib/wizard/builder.rb b/lib/wizard/builder.rb index 8731f4b2331..210f0bd8e17 100644 --- a/lib/wizard/builder.rb +++ b/lib/wizard/builder.rb @@ -1,10 +1,5 @@ # frozen_string_literal: true -require_dependency 'introduction_updater' -require_dependency 'emoji_set_site_setting' -require_dependency 'seed_data/categories' -require_dependency 'seed_data/topics' - class Wizard class Builder diff --git a/plugins/discourse-narrative-bot/autoload/jobs/bot_input.rb b/plugins/discourse-narrative-bot/autoload/jobs/bot_input.rb index 9daa0283aeb..b38a9eb83c0 100644 --- a/plugins/discourse-narrative-bot/autoload/jobs/bot_input.rb +++ b/plugins/discourse-narrative-bot/autoload/jobs/bot_input.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class BotInput < Jobs::Base + class BotInput < ::Jobs::Base sidekiq_options queue: 'critical', retry: false diff --git a/plugins/discourse-narrative-bot/autoload/jobs/narrative_init.rb b/plugins/discourse-narrative-bot/autoload/jobs/narrative_init.rb index ac88154bbbb..560a2256e75 100644 --- a/plugins/discourse-narrative-bot/autoload/jobs/narrative_init.rb +++ b/plugins/discourse-narrative-bot/autoload/jobs/narrative_init.rb @@ -1,9 +1,7 @@ # frozen_string_literal: true -require_dependency 'user' - module Jobs - class NarrativeInit < Jobs::Base + class NarrativeInit < ::Jobs::Base sidekiq_options queue: 'critical' def execute(args) diff --git a/plugins/discourse-narrative-bot/autoload/jobs/narrative_timeout.rb b/plugins/discourse-narrative-bot/autoload/jobs/narrative_timeout.rb index 726dc5657a0..a5697199ab4 100644 --- a/plugins/discourse-narrative-bot/autoload/jobs/narrative_timeout.rb +++ b/plugins/discourse-narrative-bot/autoload/jobs/narrative_timeout.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class NarrativeTimeout < Jobs::Base + class NarrativeTimeout < ::Jobs::Base def execute(args) if user = User.find_by(id: args[:user_id]) I18n.with_locale(user.effective_locale) do diff --git a/plugins/discourse-narrative-bot/autoload/jobs/send_default_welcome_message.rb b/plugins/discourse-narrative-bot/autoload/jobs/send_default_welcome_message.rb index 5bc1f0b6fbf..1b2c54aa6cf 100644 --- a/plugins/discourse-narrative-bot/autoload/jobs/send_default_welcome_message.rb +++ b/plugins/discourse-narrative-bot/autoload/jobs/send_default_welcome_message.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class SendDefaultWelcomeMessage < Jobs::Base + class SendDefaultWelcomeMessage < ::Jobs::Base def execute(args) if user = User.find_by(id: args[:user_id]) type = user.invited_by ? 'welcome_invite' : 'welcome_user' diff --git a/plugins/discourse-nginx-performance-report/app/jobs/scheduled/daily_performance_report.rb b/plugins/discourse-nginx-performance-report/app/jobs/scheduled/daily_performance_report.rb index 90e58706413..f79c3a20d5a 100644 --- a/plugins/discourse-nginx-performance-report/app/jobs/scheduled/daily_performance_report.rb +++ b/plugins/discourse-nginx-performance-report/app/jobs/scheduled/daily_performance_report.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true module Jobs - class DailyPerformanceReport < Jobs::Scheduled + class DailyPerformanceReport < ::Jobs::Scheduled every 1.day per_host diff --git a/plugins/poll/jobs/regular/close_poll.rb b/plugins/poll/jobs/regular/close_poll.rb index 5e85a00ee19..864bef086da 100644 --- a/plugins/poll/jobs/regular/close_poll.rb +++ b/plugins/poll/jobs/regular/close_poll.rb @@ -2,7 +2,7 @@ module Jobs - class ClosePoll < Jobs::Base + class ClosePoll < ::Jobs::Base def execute(args) %i{ diff --git a/plugins/poll/plugin.rb b/plugins/poll/plugin.rb index 731a4c19750..6a4ea272d89 100644 --- a/plugins/poll/plugin.rb +++ b/plugins/poll/plugin.rb @@ -300,8 +300,6 @@ after_initialize do end end - require_dependency "application_controller" - class DiscoursePoll::PollsController < ::ApplicationController requires_plugin PLUGIN_NAME diff --git a/script/demon_test/parent.rb b/script/demon_test/parent.rb index a6edd1ea548..4762a015f1d 100644 --- a/script/demon_test/parent.rb +++ b/script/demon_test/parent.rb @@ -4,7 +4,7 @@ require File.expand_path("../../../config/environment", __FILE__) puts "Parent is now loaded" -class ForkExecDemon < Demon::Base +class ForkExecDemon < Demon::DemonBase def self.prefix "fork-exec-child" end diff --git a/script/discourse b/script/discourse index a8fc444eaa1..97b47861da3 100755 --- a/script/discourse +++ b/script/discourse @@ -59,7 +59,7 @@ class DiscourseCLI < Thor desc "backup", "Backup a discourse forum" def backup(filename = nil) load_rails - require "backup_restore/backup_restore" + require "backup_restore" require "backup_restore/backuper" store = BackupRestore::BackupStore.create @@ -117,7 +117,7 @@ class DiscourseCLI < Thor end load_rails - require "backup_restore/backup_restore" + require "backup_restore" require "backup_restore/restorer" require "backup_restore/backup_store" diff --git a/script/import_scripts/base/uploader.rb b/script/import_scripts/base/uploader.rb index 8e38850a6bd..45404bba21a 100644 --- a/script/import_scripts/base/uploader.rb +++ b/script/import_scripts/base/uploader.rb @@ -1,8 +1,5 @@ # frozen_string_literal: true -require_dependency 'url_helper' -require_dependency 'upload_markdown' - module ImportScripts class Uploader # Creates an upload. diff --git a/spec/components/active_record/connection_adapters/postgresql_fallback_adapter_spec.rb b/spec/components/active_record/connection_adapters/postgresql_fallback_adapter_spec.rb index 36aca1c50cb..0e9efa94a7d 100644 --- a/spec/components/active_record/connection_adapters/postgresql_fallback_adapter_spec.rb +++ b/spec/components/active_record/connection_adapters/postgresql_fallback_adapter_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'active_record/connection_adapters/postgresql_fallback_adapter' describe ActiveRecord::ConnectionHandling do let(:replica_host) { "1.1.1.1" } diff --git a/spec/components/admin_user_index_query_spec.rb b/spec/components/admin_user_index_query_spec.rb index 2e23232c8a1..5471bcd059d 100644 --- a/spec/components/admin_user_index_query_spec.rb +++ b/spec/components/admin_user_index_query_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'admin_user_index_query' describe AdminUserIndexQuery do def real_users(query) diff --git a/spec/components/auth/default_current_user_provider_spec.rb b/spec/components/auth/default_current_user_provider_spec.rb index 62761fa181d..14715096a83 100644 --- a/spec/components/auth/default_current_user_provider_spec.rb +++ b/spec/components/auth/default_current_user_provider_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'auth/default_current_user_provider' describe Auth::DefaultCurrentUserProvider do diff --git a/spec/components/avatar_lookup_spec.rb b/spec/components/avatar_lookup_spec.rb index 33f01f5f297..24112bd5d42 100644 --- a/spec/components/avatar_lookup_spec.rb +++ b/spec/components/avatar_lookup_spec.rb @@ -2,7 +2,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'avatar_lookup' describe AvatarLookup do fab!(:user) { Fabricate(:user, username: "john_doe", name: "John Doe") } diff --git a/spec/components/common_passwords/common_passwords_spec.rb b/spec/components/common_passwords/common_passwords_spec.rb index e05f5a2430d..deccf6a5d52 100644 --- a/spec/components/common_passwords/common_passwords_spec.rb +++ b/spec/components/common_passwords/common_passwords_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require "rails_helper" -require_dependency "common_passwords/common_passwords" describe CommonPasswords do diff --git a/spec/components/crawler_detection_spec.rb b/spec/components/crawler_detection_spec.rb index 7d5393342d4..dd9ce42d222 100644 --- a/spec/components/crawler_detection_spec.rb +++ b/spec/components/crawler_detection_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'crawler_detection' describe CrawlerDetection do diff --git a/spec/components/current_user_spec.rb b/spec/components/current_user_spec.rb index e1cf988a136..78310be2458 100644 --- a/spec/components/current_user_spec.rb +++ b/spec/components/current_user_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'current_user' describe CurrentUser do it "allows us to lookup a user from our environment" do diff --git a/spec/components/directory_helper_spec.rb b/spec/components/directory_helper_spec.rb index 1792bfdf8df..0b2d687fd5b 100644 --- a/spec/components/directory_helper_spec.rb +++ b/spec/components/directory_helper_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'directory_helper' describe DirectoryHelper do class DummyClass diff --git a/spec/components/discourse_event_spec.rb b/spec/components/discourse_event_spec.rb index 3b867a31247..158204688a6 100644 --- a/spec/components/discourse_event_spec.rb +++ b/spec/components/discourse_event_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'discourse_event' describe DiscourseEvent do diff --git a/spec/components/discourse_hub_spec.rb b/spec/components/discourse_hub_spec.rb index 384995bff9c..eafb579a8da 100644 --- a/spec/components/discourse_hub_spec.rb +++ b/spec/components/discourse_hub_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'discourse_hub' describe DiscourseHub do describe '.discourse_version_check' do diff --git a/spec/components/discourse_plugin_spec.rb b/spec/components/discourse_plugin_spec.rb index 42c4a72cb6e..12a19d94c56 100644 --- a/spec/components/discourse_plugin_spec.rb +++ b/spec/components/discourse_plugin_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'discourse_plugin' describe DiscoursePlugin do diff --git a/spec/components/discourse_updates_spec.rb b/spec/components/discourse_updates_spec.rb index ccdd45ac4da..d57493d672d 100644 --- a/spec/components/discourse_updates_spec.rb +++ b/spec/components/discourse_updates_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'discourse_updates' describe DiscourseUpdates do diff --git a/spec/components/distributed_memoizer_spec.rb b/spec/components/distributed_memoizer_spec.rb index d620542d56e..c040ed92a5d 100644 --- a/spec/components/distributed_memoizer_spec.rb +++ b/spec/components/distributed_memoizer_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'distributed_memoizer' describe DistributedMemoizer do diff --git a/spec/components/distributed_mutex_spec.rb b/spec/components/distributed_mutex_spec.rb index e04727a8a85..e15b20f36cc 100644 --- a/spec/components/distributed_mutex_spec.rb +++ b/spec/components/distributed_mutex_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'distributed_mutex' describe DistributedMutex do let(:key) { "test_mutex_key" } diff --git a/spec/components/email_updater_spec.rb b/spec/components/email_updater_spec.rb index a6a9030dfb4..81018733dcb 100644 --- a/spec/components/email_updater_spec.rb +++ b/spec/components/email_updater_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'email_updater' describe EmailUpdater do let(:old_email) { 'old.email@example.com' } diff --git a/spec/components/file_store/base_store_spec.rb b/spec/components/file_store/base_store_spec.rb index 3c2e30eef90..f633b1e455e 100644 --- a/spec/components/file_store/base_store_spec.rb +++ b/spec/components/file_store/base_store_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'file_store/base_store' RSpec.describe FileStore::BaseStore do fab!(:upload) { Fabricate(:upload, id: 9999, sha1: Digest::SHA1.hexdigest('9999')) } diff --git a/spec/components/freedom_patches/safe_buffer_spec.rb b/spec/components/freedom_patches/safe_buffer_spec.rb index 622d50924ad..f7653bb0b7c 100644 --- a/spec/components/freedom_patches/safe_buffer_spec.rb +++ b/spec/components/freedom_patches/safe_buffer_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency "freedom_patches/safe_buffer" describe ActiveSupport::SafeBuffer do it "can cope with encoding weirdness" do diff --git a/spec/components/freedom_patches/schema_migration_details_spec.rb b/spec/components/freedom_patches/schema_migration_details_spec.rb index 6d4a7a57fb6..02e0a898c3a 100644 --- a/spec/components/freedom_patches/schema_migration_details_spec.rb +++ b/spec/components/freedom_patches/schema_migration_details_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency "freedom_patches/schema_migration_details" describe FreedomPatches::SchemaMigrationDetails do diff --git a/spec/components/guardian_spec.rb b/spec/components/guardian_spec.rb index ac8efd88a91..34a66c9b8c8 100644 --- a/spec/components/guardian_spec.rb +++ b/spec/components/guardian_spec.rb @@ -3,8 +3,6 @@ require 'rails_helper' require 'guardian' -require_dependency 'post_destroyer' -require_dependency 'post_locker' describe Guardian do diff --git a/spec/components/highlight_js/highlight_js_spec.rb b/spec/components/highlight_js/highlight_js_spec.rb index 5488faa80b4..aaf12f4c8b4 100644 --- a/spec/components/highlight_js/highlight_js_spec.rb +++ b/spec/components/highlight_js/highlight_js_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'highlight_js/highlight_js' describe HighlightJs do it 'can list languages' do diff --git a/spec/components/import/normalize_spec.rb b/spec/components/import/normalize_spec.rb index a85aa5746d8..b89ab8b414d 100644 --- a/spec/components/import/normalize_spec.rb +++ b/spec/components/import/normalize_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require "rails_helper" -require_dependency "import/normalize" describe Import::Normalize do describe "#normalize_code_blocks" do diff --git a/spec/components/inline_oneboxer_spec.rb b/spec/components/inline_oneboxer_spec.rb index d9bb7ebbf32..bdb08b2c917 100644 --- a/spec/components/inline_oneboxer_spec.rb +++ b/spec/components/inline_oneboxer_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'inline_oneboxer' describe InlineOneboxer do diff --git a/spec/components/json_error_spec.rb b/spec/components/json_error_spec.rb index 4dfbc37211d..3b064a6381d 100644 --- a/spec/components/json_error_spec.rb +++ b/spec/components/json_error_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'json_error' shared_examples "a generic error" do let(:result) { creator.create_errors_json(obj) } diff --git a/spec/components/method_profiler_spec.rb b/spec/components/method_profiler_spec.rb index b11cc558087..df2e2fdd72a 100644 --- a/spec/components/method_profiler_spec.rb +++ b/spec/components/method_profiler_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'method_profiler' describe MethodProfiler do class Sneetch diff --git a/spec/components/middleware/anonymous_cache_spec.rb b/spec/components/middleware/anonymous_cache_spec.rb index 74fe7f31745..ed09e6149b3 100644 --- a/spec/components/middleware/anonymous_cache_spec.rb +++ b/spec/components/middleware/anonymous_cache_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require "rails_helper" -require_dependency "middleware/anonymous_cache" describe Middleware::AnonymousCache::Helper do diff --git a/spec/components/middleware/request_tracker_spec.rb b/spec/components/middleware/request_tracker_spec.rb index 394e26013c4..b7433f4af6e 100644 --- a/spec/components/middleware/request_tracker_spec.rb +++ b/spec/components/middleware/request_tracker_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require "rails_helper" -require_dependency "middleware/request_tracker" describe Middleware::RequestTracker do diff --git a/spec/components/migration/column_dropper_spec.rb b/spec/components/migration/column_dropper_spec.rb index 2a8cfd1cd77..4dd4758633a 100644 --- a/spec/components/migration/column_dropper_spec.rb +++ b/spec/components/migration/column_dropper_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'migration/column_dropper' RSpec.describe Migration::ColumnDropper do def has_column?(table, column) diff --git a/spec/components/migration/safe_migrate_spec.rb b/spec/components/migration/safe_migrate_spec.rb index 9bd0b690ae7..f7d3a3839d6 100644 --- a/spec/components/migration/safe_migrate_spec.rb +++ b/spec/components/migration/safe_migrate_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'migration/safe_migrate' describe Migration::SafeMigrate do before do diff --git a/spec/components/migration/table_dropper_spec.rb b/spec/components/migration/table_dropper_spec.rb index a59da8b9439..9966aeb3e87 100644 --- a/spec/components/migration/table_dropper_spec.rb +++ b/spec/components/migration/table_dropper_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'migration/table_dropper' describe Migration::TableDropper do diff --git a/spec/components/oneboxer_spec.rb b/spec/components/oneboxer_spec.rb index 659a975bcd0..f90eb5ba755 100644 --- a/spec/components/oneboxer_spec.rb +++ b/spec/components/oneboxer_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'oneboxer' describe Oneboxer do diff --git a/spec/components/plugin/filter_manager_spec.rb b/spec/components/plugin/filter_manager_spec.rb index 886e815358d..a9d40c4b1fb 100644 --- a/spec/components/plugin/filter_manager_spec.rb +++ b/spec/components/plugin/filter_manager_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'plugin/filter_manager' describe Plugin::FilterManager do let(:instance) { Plugin::FilterManager.new } diff --git a/spec/components/plugin/instance_spec.rb b/spec/components/plugin/instance_spec.rb index 76ecc02cacf..0ff78469865 100644 --- a/spec/components/plugin/instance_spec.rb +++ b/spec/components/plugin/instance_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'plugin/instance' describe Plugin::Instance do diff --git a/spec/components/plugin/metadata_spec.rb b/spec/components/plugin/metadata_spec.rb index d982175d604..b8ad2ab97c6 100644 --- a/spec/components/plugin/metadata_spec.rb +++ b/spec/components/plugin/metadata_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'plugin/metadata' describe Plugin::Metadata do context "parse" do diff --git a/spec/components/post_destroyer_spec.rb b/spec/components/post_destroyer_spec.rb index f8d050c0a84..76c1fd92200 100644 --- a/spec/components/post_destroyer_spec.rb +++ b/spec/components/post_destroyer_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'post_destroyer' describe PostDestroyer do diff --git a/spec/components/post_locker_spec.rb b/spec/components/post_locker_spec.rb index 9696d39c56e..9525e5c31c2 100644 --- a/spec/components/post_locker_spec.rb +++ b/spec/components/post_locker_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'post_locker' describe PostLocker do fab!(:moderator) { Fabricate(:moderator) } diff --git a/spec/components/retrieve_title_spec.rb b/spec/components/retrieve_title_spec.rb index a7f2c8fe455..84ca621ef0c 100644 --- a/spec/components/retrieve_title_spec.rb +++ b/spec/components/retrieve_title_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'retrieve_title' describe RetrieveTitle do diff --git a/spec/components/rtl_spec.rb b/spec/components/rtl_spec.rb index f2622735d3a..77e66348830 100644 --- a/spec/components/rtl_spec.rb +++ b/spec/components/rtl_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'rtl' describe Rtl do diff --git a/spec/components/scheduler/defer_spec.rb b/spec/components/scheduler/defer_spec.rb index f93b8a046e5..c5ac81786b1 100644 --- a/spec/components/scheduler/defer_spec.rb +++ b/spec/components/scheduler/defer_spec.rb @@ -2,7 +2,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'scheduler/defer' describe Scheduler::Defer do class DeferInstance diff --git a/spec/components/search_spec.rb b/spec/components/search_spec.rb index 3cf118811f0..815302501b3 100644 --- a/spec/components/search_spec.rb +++ b/spec/components/search_spec.rb @@ -2,7 +2,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'search' describe Search do fab!(:admin) { Fabricate(:admin) } diff --git a/spec/components/secure_session_spec.rb b/spec/components/secure_session_spec.rb index cb0a885c309..1e2aad50602 100644 --- a/spec/components/secure_session_spec.rb +++ b/spec/components/secure_session_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'secure_session' describe SecureSession do it "operates correctly" do diff --git a/spec/components/site_setting_extension_spec.rb b/spec/components/site_setting_extension_spec.rb index 809a1b77c88..9a82c1912e0 100644 --- a/spec/components/site_setting_extension_spec.rb +++ b/spec/components/site_setting_extension_spec.rb @@ -1,8 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'site_setting_extension' -require_dependency 'site_settings/local_process_provider' describe SiteSettingExtension do diff --git a/spec/components/site_settings/db_provider_spec.rb b/spec/components/site_settings/db_provider_spec.rb index 7caa07862bc..8e9092ccc25 100644 --- a/spec/components/site_settings/db_provider_spec.rb +++ b/spec/components/site_settings/db_provider_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'site_settings/db_provider' describe SiteSettings::DbProvider do diff --git a/spec/components/site_settings/defaults_provider_spec.rb b/spec/components/site_settings/defaults_provider_spec.rb index bbcf524f528..77d3afc1e5e 100644 --- a/spec/components/site_settings/defaults_provider_spec.rb +++ b/spec/components/site_settings/defaults_provider_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'site_settings/defaults_provider' describe SiteSettings::DefaultsProvider do let(:provider_local) do diff --git a/spec/components/site_settings/local_process_provider_spec.rb b/spec/components/site_settings/local_process_provider_spec.rb index 40a4b539947..ac32d977932 100644 --- a/spec/components/site_settings/local_process_provider_spec.rb +++ b/spec/components/site_settings/local_process_provider_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'site_settings/local_process_provider' describe SiteSettings::LocalProcessProvider do diff --git a/spec/components/site_settings/type_supervisor_spec.rb b/spec/components/site_settings/type_supervisor_spec.rb index b6d01e0f3e0..c46cde843ab 100644 --- a/spec/components/site_settings/type_supervisor_spec.rb +++ b/spec/components/site_settings/type_supervisor_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'site_settings/type_supervisor' describe SiteSettings::TypeSupervisor do let :provider_local do diff --git a/spec/components/timeline_lookup_spec.rb b/spec/components/timeline_lookup_spec.rb index f47fb93e6f0..0ae24563f58 100644 --- a/spec/components/timeline_lookup_spec.rb +++ b/spec/components/timeline_lookup_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'timeline_lookup' describe TimelineLookup do it "returns an empty array for empty input" do diff --git a/spec/components/topic_retriever_spec.rb b/spec/components/topic_retriever_spec.rb index 4c2d97d31dd..5ab908476b7 100644 --- a/spec/components/topic_retriever_spec.rb +++ b/spec/components/topic_retriever_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'topic_retriever' describe TopicRetriever do diff --git a/spec/components/topics_bulk_action_spec.rb b/spec/components/topics_bulk_action_spec.rb index a88fcc60f01..b0788c8b788 100644 --- a/spec/components/topics_bulk_action_spec.rb +++ b/spec/components/topics_bulk_action_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'topics_bulk_action' describe TopicsBulkAction do fab!(:topic) { Fabricate(:topic) } diff --git a/spec/components/trashable_spec.rb b/spec/components/trashable_spec.rb index 16a3cafb490..75bc6642a3a 100644 --- a/spec/components/trashable_spec.rb +++ b/spec/components/trashable_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'trashable' describe Trashable do # post is trashable, just use it. diff --git a/spec/components/url_helper_spec.rb b/spec/components/url_helper_spec.rb index 5da5c8323fc..53da4a688db 100644 --- a/spec/components/url_helper_spec.rb +++ b/spec/components/url_helper_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'url_helper' describe UrlHelper do diff --git a/spec/components/validators/password_validator_spec.rb b/spec/components/validators/password_validator_spec.rb index c4cf64216b6..c419b8ca58d 100644 --- a/spec/components/validators/password_validator_spec.rb +++ b/spec/components/validators/password_validator_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency "common_passwords/common_passwords" describe PasswordValidator do diff --git a/spec/components/validators/post_validator_spec.rb b/spec/components/validators/post_validator_spec.rb index 275a32b7867..5b5826e1a3e 100644 --- a/spec/components/validators/post_validator_spec.rb +++ b/spec/components/validators/post_validator_spec.rb @@ -1,12 +1,11 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'validators/post_validator' -describe Validators::PostValidator do +describe PostValidator do fab!(:topic) { Fabricate(:topic) } let(:post) { build(:post, topic: topic) } - let(:validator) { Validators::PostValidator.new({}) } + let(:validator) { PostValidator.new({}) } context "#post_body_validator" do it 'should not allow a post with an empty raw' do @@ -16,7 +15,7 @@ describe Validators::PostValidator do end context "when empty raw can bypass validation" do - let(:validator) { Validators::PostValidator.new(skip_post_body: true) } + let(:validator) { PostValidator.new(skip_post_body: true) } it "should be allowed for empty raw based on site setting" do post.raw = "" diff --git a/spec/components/validators/upload_validator_spec.rb b/spec/components/validators/upload_validator_spec.rb index 9348c85e79a..898279216c2 100644 --- a/spec/components/validators/upload_validator_spec.rb +++ b/spec/components/validators/upload_validator_spec.rb @@ -1,9 +1,8 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'validators/upload_validator' -describe Validators::UploadValidator do +describe UploadValidator do subject(:validator) { described_class.new } describe 'validate' do diff --git a/spec/components/wizard/step_updater_spec.rb b/spec/components/wizard/step_updater_spec.rb index ef43bb8f191..5c2fee85556 100644 --- a/spec/components/wizard/step_updater_spec.rb +++ b/spec/components/wizard/step_updater_spec.rb @@ -1,9 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'wizard' -require_dependency 'wizard/builder' -require_dependency 'wizard/step_updater' describe Wizard::StepUpdater do before do diff --git a/spec/integration/category_tag_spec.rb b/spec/integration/category_tag_spec.rb index b42839a18d1..b20829778b4 100644 --- a/spec/integration/category_tag_spec.rb +++ b/spec/integration/category_tag_spec.rb @@ -2,7 +2,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'post_creator' describe "category tag restrictions" do diff --git a/spec/integrity/onceoff_integrity_spec.rb b/spec/integrity/onceoff_integrity_spec.rb index 1d782f406b5..7918995448f 100644 --- a/spec/integrity/onceoff_integrity_spec.rb +++ b/spec/integrity/onceoff_integrity_spec.rb @@ -2,14 +2,14 @@ require "rails_helper" -describe Jobs::Onceoff do +describe ::Jobs::Onceoff do it "can run all once off jobs without errors" do # load all once offs Dir[Rails.root + 'app/jobs/onceoff/*.rb'].each do |f| require_relative '../../app/jobs/onceoff/' + File.basename(f) end - ObjectSpace.each_object(Class).select { |klass| klass < Jobs::Onceoff }.each do |j| + ObjectSpace.each_object(Class).select { |klass| klass < ::Jobs::Onceoff }.each do |j| j.new.execute_onceoff(nil) end end diff --git a/spec/jobs/automatic_group_membership_spec.rb b/spec/jobs/automatic_group_membership_spec.rb index 697b684361f..afac2b7f3fd 100644 --- a/spec/jobs/automatic_group_membership_spec.rb +++ b/spec/jobs/automatic_group_membership_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/regular/automatic_group_membership' describe Jobs::AutomaticGroupMembership do diff --git a/spec/jobs/bulk_grant_trust_level_spec.rb b/spec/jobs/bulk_grant_trust_level_spec.rb index 47f4aad1e9b..45bf56c38e6 100644 --- a/spec/jobs/bulk_grant_trust_level_spec.rb +++ b/spec/jobs/bulk_grant_trust_level_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/regular/bulk_grant_trust_level' describe Jobs::BulkGrantTrustLevel do diff --git a/spec/jobs/clean_up_uploads_spec.rb b/spec/jobs/clean_up_uploads_spec.rb index 934ca6eb216..2626aad9804 100644 --- a/spec/jobs/clean_up_uploads_spec.rb +++ b/spec/jobs/clean_up_uploads_spec.rb @@ -2,8 +2,6 @@ require 'rails_helper' -require_dependency 'jobs/scheduled/clean_up_uploads' - describe Jobs::CleanUpUploads do def fabricate_upload(attributes = {}) diff --git a/spec/jobs/correct_missing_dualstack_urls_spec.rb b/spec/jobs/correct_missing_dualstack_urls_spec.rb index 08d20351857..c41f12c9893 100644 --- a/spec/jobs/correct_missing_dualstack_urls_spec.rb +++ b/spec/jobs/correct_missing_dualstack_urls_spec.rb @@ -2,8 +2,6 @@ require 'rails_helper' -require_dependency 'jobs/onceoff/correct_missing_dualstack_urls' - describe Jobs::CorrectMissingDualstackUrls do it 'corrects the urls' do diff --git a/spec/jobs/crawl_topic_link_spec.rb b/spec/jobs/crawl_topic_link_spec.rb index ffeaa601141..328ee70aaf1 100644 --- a/spec/jobs/crawl_topic_link_spec.rb +++ b/spec/jobs/crawl_topic_link_spec.rb @@ -1,8 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/base' -require_dependency 'jobs/regular/crawl_topic_link' describe Jobs::CrawlTopicLink do diff --git a/spec/jobs/create_missing_avatars_spec.rb b/spec/jobs/create_missing_avatars_spec.rb index 3832e7e9742..1a8ff7a66d8 100644 --- a/spec/jobs/create_missing_avatars_spec.rb +++ b/spec/jobs/create_missing_avatars_spec.rb @@ -2,8 +2,6 @@ require 'rails_helper' -require_dependency 'jobs/scheduled/create_missing_avatars' - describe Jobs::CreateMissingAvatars do it "runs correctly without crashing" do Jobs::CreateMissingAvatars.new.execute(nil) diff --git a/spec/jobs/create_user_reviewable_spec.rb b/spec/jobs/create_user_reviewable_spec.rb index d30e218a838..2de253b57e8 100644 --- a/spec/jobs/create_user_reviewable_spec.rb +++ b/spec/jobs/create_user_reviewable_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/regular/create_user_reviewable' describe Jobs::CreateUserReviewable do diff --git a/spec/jobs/enqueue_digest_emails_spec.rb b/spec/jobs/enqueue_digest_emails_spec.rb index b6ee0188494..029be5a814d 100644 --- a/spec/jobs/enqueue_digest_emails_spec.rb +++ b/spec/jobs/enqueue_digest_emails_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/base' describe Jobs::EnqueueDigestEmails do diff --git a/spec/jobs/feature_topic_users_spec.rb b/spec/jobs/feature_topic_users_spec.rb index ac74f378919..5fd58f3bb99 100644 --- a/spec/jobs/feature_topic_users_spec.rb +++ b/spec/jobs/feature_topic_users_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/base' require 'jobs/regular/process_post' describe Jobs::FeatureTopicUsers do diff --git a/spec/jobs/fix_user_usernames_and_group_names_clash_spec.rb b/spec/jobs/fix_user_usernames_and_groups_names_clash_spec.rb similarity index 76% rename from spec/jobs/fix_user_usernames_and_group_names_clash_spec.rb rename to spec/jobs/fix_user_usernames_and_groups_names_clash_spec.rb index bfb9e5b8ca2..67cdd336428 100644 --- a/spec/jobs/fix_user_usernames_and_group_names_clash_spec.rb +++ b/spec/jobs/fix_user_usernames_and_groups_names_clash_spec.rb @@ -2,14 +2,14 @@ require 'rails_helper' -RSpec.describe Jobs::FixUserUsernamesAndGroupNamesClash do +RSpec.describe Jobs::FixUserUsernamesAndGroupsNamesClash do it 'update usernames of users that clashes with a group name' do user = Fabricate(:user) Fabricate(:user, username: 'test1') group = Fabricate(:group, name: 'test') user.update_columns(username: 'test', username_lower: 'test') - Jobs::FixUserUsernamesAndGroupNamesClash.new.execute({}) + Jobs::FixUserUsernamesAndGroupsNamesClash.new.execute({}) expect(user.reload.username).to eq('test2') expect(group.reload.name).to eq('test') diff --git a/spec/jobs/grant_anniversary_badges_spec.rb b/spec/jobs/grant_anniversary_badges_spec.rb index d60b6291d51..cb8e4e2626b 100644 --- a/spec/jobs/grant_anniversary_badges_spec.rb +++ b/spec/jobs/grant_anniversary_badges_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/scheduled/grant_anniversary_badges' describe Jobs::GrantAnniversaryBadges do diff --git a/spec/jobs/grant_new_user_of_the_month_badges_spec.rb b/spec/jobs/grant_new_user_of_the_month_badges_spec.rb index db3b65a4244..5deaa1f2adb 100644 --- a/spec/jobs/grant_new_user_of_the_month_badges_spec.rb +++ b/spec/jobs/grant_new_user_of_the_month_badges_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/scheduled/grant_new_user_of_the_month_badges' describe Jobs::GrantNewUserOfTheMonthBadges do diff --git a/spec/jobs/heartbeat_spec.rb b/spec/jobs/heartbeat_spec.rb index 315fe4172bc..fb39ffd36bd 100644 --- a/spec/jobs/heartbeat_spec.rb +++ b/spec/jobs/heartbeat_spec.rb @@ -1,9 +1,8 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/base' -describe Jobs::Heartbeat do +describe ::Jobs::Heartbeat do after do Discourse.disable_readonly_mode end @@ -14,8 +13,8 @@ describe Jobs::Heartbeat do Discourse.enable_readonly_mode Sidekiq::Testing.inline! do - Jobs::Heartbeat.new.perform(nil) - expect(Jobs::RunHeartbeat.last_heartbeat).to eq(Time.new.to_i) + ::Jobs::Heartbeat.new.perform(nil) + expect(::Jobs::RunHeartbeat.last_heartbeat).to eq(Time.new.to_i) end end end diff --git a/spec/jobs/ignored_users_summary_spec.rb b/spec/jobs/ignored_users_summary_spec.rb index b98e6e0dace..b05b0d7673e 100644 --- a/spec/jobs/ignored_users_summary_spec.rb +++ b/spec/jobs/ignored_users_summary_spec.rb @@ -2,8 +2,6 @@ require 'rails_helper' -require_dependency 'jobs/scheduled/ignored_users_summary' - describe Jobs::IgnoredUsersSummary do before do SiteSetting.ignored_users_count_message_threshold = 1 diff --git a/spec/jobs/invalidate_inactive_admins_spec.rb b/spec/jobs/invalidate_inactive_admins_spec.rb index dfae43525b3..e7b5b435d13 100644 --- a/spec/jobs/invalidate_inactive_admins_spec.rb +++ b/spec/jobs/invalidate_inactive_admins_spec.rb @@ -2,8 +2,6 @@ require 'rails_helper' -require_dependency 'jobs/scheduled/invalidate_inactive_admins' - describe Jobs::InvalidateInactiveAdmins do fab!(:active_admin) { Fabricate(:admin, last_seen_at: 1.hour.ago) } before { active_admin.email_tokens.update_all(confirmed: true) } diff --git a/spec/jobs/invite_email_spec.rb b/spec/jobs/invite_email_spec.rb index f67fd135e76..d998b85baed 100644 --- a/spec/jobs/invite_email_spec.rb +++ b/spec/jobs/invite_email_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/base' describe Jobs::InviteEmail do diff --git a/spec/jobs/jobs_base_spec.rb b/spec/jobs/jobs_base_spec.rb index a107fea9eb4..473710ba4bf 100644 --- a/spec/jobs/jobs_base_spec.rb +++ b/spec/jobs/jobs_base_spec.rb @@ -1,10 +1,9 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/base' -describe Jobs::Base do - class GoodJob < Jobs::Base +describe ::Jobs::Base do + class GoodJob < ::Jobs::Base attr_accessor :count def execute(args) self.count ||= 0 @@ -12,7 +11,7 @@ describe Jobs::Base do end end - class BadJob < Jobs::Base + class BadJob < ::Jobs::Base attr_accessor :fail_count def execute(args) @@ -39,13 +38,13 @@ describe Jobs::Base do end it 'delegates the process call to execute' do - Jobs::Base.any_instance.expects(:execute).with('hello' => 'world') - Jobs::Base.new.perform('hello' => 'world', 'sync_exec' => true) + ::Jobs::Base.any_instance.expects(:execute).with('hello' => 'world') + ::Jobs::Base.new.perform('hello' => 'world', 'sync_exec' => true) end it 'converts to an indifferent access hash' do - Jobs::Base.any_instance.expects(:execute).with(instance_of(HashWithIndifferentAccess)) - Jobs::Base.new.perform('hello' => 'world', 'sync_exec' => true) + ::Jobs::Base.any_instance.expects(:execute).with(instance_of(HashWithIndifferentAccess)) + ::Jobs::Base.new.perform('hello' => 'world', 'sync_exec' => true) end end diff --git a/spec/jobs/jobs_spec.rb b/spec/jobs/jobs_spec.rb index 0f4c00c1cee..d956b92a988 100644 --- a/spec/jobs/jobs_spec.rb +++ b/spec/jobs/jobs_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/base' describe Jobs do diff --git a/spec/jobs/notify_moved_posts_spec.rb b/spec/jobs/notify_moved_posts_spec.rb index 68b1e68267d..903b99cace0 100644 --- a/spec/jobs/notify_moved_posts_spec.rb +++ b/spec/jobs/notify_moved_posts_spec.rb @@ -1,8 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/base' -require_dependency 'jobs/regular/process_post' describe Jobs::NotifyMovedPosts do diff --git a/spec/jobs/pending_queued_posts_reminder_spec.rb b/spec/jobs/pending_queued_posts_reminder_spec.rb index cc5bd387bb3..8a5fe59bfef 100644 --- a/spec/jobs/pending_queued_posts_reminder_spec.rb +++ b/spec/jobs/pending_queued_posts_reminder_spec.rb @@ -2,7 +2,7 @@ require "rails_helper" -describe Jobs::PendingQueuedPostReminder do +describe Jobs::PendingQueuedPostsReminder do let(:job) { described_class.new } context "notify_about_queued_posts_after is 0" do diff --git a/spec/jobs/periodical_updates_spec.rb b/spec/jobs/periodical_updates_spec.rb index 788efe6adea..52729471d4a 100644 --- a/spec/jobs/periodical_updates_spec.rb +++ b/spec/jobs/periodical_updates_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/scheduled/periodical_updates' describe Jobs::PeriodicalUpdates do diff --git a/spec/jobs/poll_feed_spec.rb b/spec/jobs/poll_feed_spec.rb index cee8520e0dd..5ddc7a7d6d7 100644 --- a/spec/jobs/poll_feed_spec.rb +++ b/spec/jobs/poll_feed_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/regular/process_post' describe Jobs::PollFeed do let(:poller) { Jobs::PollFeed.new } diff --git a/spec/jobs/poll_mailbox_spec.rb b/spec/jobs/poll_mailbox_spec.rb index 90f59a7f05d..078bb55fd7f 100644 --- a/spec/jobs/poll_mailbox_spec.rb +++ b/spec/jobs/poll_mailbox_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/regular/process_post' describe Jobs::PollMailbox do diff --git a/spec/jobs/purge_expired_ignored_users_spec.rb b/spec/jobs/purge_expired_ignored_users_spec.rb index c49a45bd34c..e0627de9596 100644 --- a/spec/jobs/purge_expired_ignored_users_spec.rb +++ b/spec/jobs/purge_expired_ignored_users_spec.rb @@ -2,8 +2,6 @@ require 'rails_helper' -require_dependency 'jobs/scheduled/purge_expired_ignored_users' - describe Jobs::PurgeExpiredIgnoredUsers do subject { Jobs::PurgeExpiredIgnoredUsers.new.execute({}) } diff --git a/spec/jobs/user_email_spec.rb b/spec/jobs/user_email_spec.rb index 56d5a62ed22..39844fdb173 100644 --- a/spec/jobs/user_email_spec.rb +++ b/spec/jobs/user_email_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'jobs/base' describe Jobs::UserEmail do diff --git a/spec/lib/db_helper_spec.rb b/spec/lib/db_helper_spec.rb index af834dc197a..b178cd1e193 100644 --- a/spec/lib/db_helper_spec.rb +++ b/spec/lib/db_helper_spec.rb @@ -1,8 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'db_helper' -require_dependency 'migration/column_dropper' RSpec.describe DbHelper do describe '.remap' do diff --git a/spec/lib/theme_javascript_compiler_spec.rb b/spec/lib/theme_javascript_compiler_spec.rb index e1c9695509b..cf80db014de 100644 --- a/spec/lib/theme_javascript_compiler_spec.rb +++ b/spec/lib/theme_javascript_compiler_spec.rb @@ -2,8 +2,6 @@ require 'rails_helper' -require_dependency 'theme_javascript_compiler' - describe ThemeJavascriptCompiler do let(:theme_id) { 22 } diff --git a/spec/lib/upload_recovery_spec.rb b/spec/lib/upload_recovery_spec.rb index afcff5025c2..f248d009f5a 100644 --- a/spec/lib/upload_recovery_spec.rb +++ b/spec/lib/upload_recovery_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency "upload_recovery" RSpec.describe UploadRecovery do fab!(:user) { Fabricate(:user) } diff --git a/spec/lib/webauthn/security_key_authentication_service_spec.rb b/spec/lib/webauthn/security_key_authentication_service_spec.rb index e448bf32c57..8f6ce0c529d 100644 --- a/spec/lib/webauthn/security_key_authentication_service_spec.rb +++ b/spec/lib/webauthn/security_key_authentication_service_spec.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require 'webauthn/webauthn' +require 'webauthn' require 'webauthn/security_key_registration_service' describe Webauthn::SecurityKeyAuthenticationService do diff --git a/spec/lib/webauthn/security_key_registration_service_spec.rb b/spec/lib/webauthn/security_key_registration_service_spec.rb index e412d2284bc..17bc9ff1495 100644 --- a/spec/lib/webauthn/security_key_registration_service_spec.rb +++ b/spec/lib/webauthn/security_key_registration_service_spec.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require 'webauthn/webauthn' +require 'webauthn' require 'webauthn/security_key_registration_service' describe Webauthn::SecurityKeyRegistrationService do diff --git a/spec/models/api_key_spec.rb b/spec/models/api_key_spec.rb index 288916e8b9f..fd6ac20303d 100644 --- a/spec/models/api_key_spec.rb +++ b/spec/models/api_key_spec.rb @@ -2,7 +2,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'api_key' describe ApiKey do fab!(:user) { Fabricate(:user) } diff --git a/spec/models/badge_spec.rb b/spec/models/badge_spec.rb index 81e136cad1c..41cf3edcfd0 100644 --- a/spec/models/badge_spec.rb +++ b/spec/models/badge_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'badge' describe Badge do it { is_expected.to belong_to(:badge_type) } diff --git a/spec/models/badge_type_spec.rb b/spec/models/badge_type_spec.rb index b5a35b14c8b..99a9330c0e4 100644 --- a/spec/models/badge_type_spec.rb +++ b/spec/models/badge_type_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'badge_type' describe BadgeType do diff --git a/spec/models/category_spec.rb b/spec/models/category_spec.rb index 66944834299..298bfc2b448 100644 --- a/spec/models/category_spec.rb +++ b/spec/models/category_spec.rb @@ -2,7 +2,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'post_creator' describe Category do fab!(:user) { Fabricate(:user) } diff --git a/spec/models/category_user_spec.rb b/spec/models/category_user_spec.rb index a386a575eb8..f777b9e8206 100644 --- a/spec/models/category_user_spec.rb +++ b/spec/models/category_user_spec.rb @@ -2,7 +2,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'post_creator' describe CategoryUser do fab!(:user) { Fabricate(:user) } diff --git a/spec/models/plugin_store_spec.rb b/spec/models/plugin_store_spec.rb index b134339d452..ca2e178b50e 100644 --- a/spec/models/plugin_store_spec.rb +++ b/spec/models/plugin_store_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require "rails_helper" -require_dependency "plugin_store" describe PluginStore do let(:store) { PluginStore.new("my_plugin_2") } diff --git a/spec/models/site_setting_spec.rb b/spec/models/site_setting_spec.rb index ce0a53cf83e..5c8f973ccc2 100644 --- a/spec/models/site_setting_spec.rb +++ b/spec/models/site_setting_spec.rb @@ -1,8 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'site_setting' -require_dependency 'site_setting_extension' describe SiteSetting do diff --git a/spec/models/site_spec.rb b/spec/models/site_spec.rb index b90011e8669..53b5f7493e3 100644 --- a/spec/models/site_spec.rb +++ b/spec/models/site_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'site' describe Site do diff --git a/spec/models/tag_user_spec.rb b/spec/models/tag_user_spec.rb index cce48a6a090..258aa19f66c 100644 --- a/spec/models/tag_user_spec.rb +++ b/spec/models/tag_user_spec.rb @@ -2,7 +2,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'post_creator' describe TagUser do before do diff --git a/spec/models/topic_spec.rb b/spec/models/topic_spec.rb index 0c3f6383531..23dfdf5b75c 100644 --- a/spec/models/topic_spec.rb +++ b/spec/models/topic_spec.rb @@ -2,7 +2,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'post_destroyer' describe Topic do let(:now) { Time.zone.local(2013, 11, 20, 8, 0) } diff --git a/spec/models/unsubscribe_key_spec.rb b/spec/models/unsubscribe_key_spec.rb index 13b11df9b7f..e2d4eeb1f2d 100644 --- a/spec/models/unsubscribe_key_spec.rb +++ b/spec/models/unsubscribe_key_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'unsubscribe_key' describe UnsubscribeKey do diff --git a/spec/models/user_badge_spec.rb b/spec/models/user_badge_spec.rb index 68c591248be..72fa8a01f6e 100644 --- a/spec/models/user_badge_spec.rb +++ b/spec/models/user_badge_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'user_badge' describe UserBadge do diff --git a/spec/models/user_email_spec.rb b/spec/models/user_email_spec.rb index 1e53a56f93f..ee48170269c 100644 --- a/spec/models/user_email_spec.rb +++ b/spec/models/user_email_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'user_email' describe UserEmail do context "validation" do diff --git a/spec/models/user_option_spec.rb b/spec/models/user_option_spec.rb index d02eefd08f8..30112859a68 100644 --- a/spec/models/user_option_spec.rb +++ b/spec/models/user_option_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'user_option' describe UserOption do diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb index 431ca1dacc9..29dcad458ba 100644 --- a/spec/models/user_spec.rb +++ b/spec/models/user_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'user' describe User do let(:user) { Fabricate(:user) } diff --git a/spec/multisite/pausable_spec.rb b/spec/multisite/pausable_spec.rb index 5bc1262af97..fe764faabbe 100644 --- a/spec/multisite/pausable_spec.rb +++ b/spec/multisite/pausable_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'sidekiq/pausable' RSpec.describe "Pausing/Unpausing Sidekiq", type: :multisite do diff --git a/spec/rails_helper.rb b/spec/rails_helper.rb index 714407c46dc..53136f48b44 100644 --- a/spec/rails_helper.rb +++ b/spec/rails_helper.rb @@ -196,7 +196,6 @@ RSpec.configure do |config| SiteSetting.defaults.set_regardless_of_locale(k, v) if SiteSetting.respond_to? k end - require_dependency 'site_settings/local_process_provider' SiteSetting.provider = SiteSettings::LocalProcessProvider.new WebMock.disable_net_connect! diff --git a/spec/requests/admin/dashboard_controller_spec.rb b/spec/requests/admin/dashboard_controller_spec.rb index b777131ad1d..22b5a368291 100644 --- a/spec/requests/admin/dashboard_controller_spec.rb +++ b/spec/requests/admin/dashboard_controller_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'discourse_version_check' describe Admin::DashboardController do before do diff --git a/spec/requests/admin/themes_controller_spec.rb b/spec/requests/admin/themes_controller_spec.rb index b3d5acd7291..891d260bb82 100644 --- a/spec/requests/admin/themes_controller_spec.rb +++ b/spec/requests/admin/themes_controller_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'theme_serializer' describe Admin::ThemesController do fab!(:admin) { Fabricate(:admin) } diff --git a/spec/requests/admin/versions_controller_spec.rb b/spec/requests/admin/versions_controller_spec.rb index b6f8db943d3..8922c995853 100644 --- a/spec/requests/admin/versions_controller_spec.rb +++ b/spec/requests/admin/versions_controller_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'version' describe Admin::VersionsController do diff --git a/spec/requests/omniauth_callbacks_controller_spec.rb b/spec/requests/omniauth_callbacks_controller_spec.rb index 48bb6ac6ffc..d72f9f71dc8 100644 --- a/spec/requests/omniauth_callbacks_controller_spec.rb +++ b/spec/requests/omniauth_callbacks_controller_spec.rb @@ -582,8 +582,6 @@ RSpec.describe Users::OmniauthCallbacksController do end context 'after changing email' do - require_dependency 'email_updater' - def login(identity) OmniAuth.config.mock_auth[:google_oauth2] = OmniAuth::AuthHash.new( provider: 'google_oauth2', diff --git a/spec/serializers/admin_user_list_serializer_spec.rb b/spec/serializers/admin_user_list_serializer_spec.rb index e5c429fc8ae..508c8c790f9 100644 --- a/spec/serializers/admin_user_list_serializer_spec.rb +++ b/spec/serializers/admin_user_list_serializer_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'user' describe AdminUserListSerializer do fab!(:user) { Fabricate(:user_second_factor_totp).user } diff --git a/spec/serializers/basic_post_serializer_spec.rb b/spec/serializers/basic_post_serializer_spec.rb index faad10498a4..04f70583c4d 100644 --- a/spec/serializers/basic_post_serializer_spec.rb +++ b/spec/serializers/basic_post_serializer_spec.rb @@ -1,8 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'post' -require_dependency 'user' describe BasicPostSerializer do diff --git a/spec/serializers/basic_user_serializer_spec.rb b/spec/serializers/basic_user_serializer_spec.rb index 9dfb7877980..9109e068f6c 100644 --- a/spec/serializers/basic_user_serializer_spec.rb +++ b/spec/serializers/basic_user_serializer_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'user' describe BasicUserSerializer do describe '#as_json' do diff --git a/spec/serializers/category_detailed_serializer_spec.rb b/spec/serializers/category_detailed_serializer_spec.rb index 48324823b3c..9c78eac8ef5 100644 --- a/spec/serializers/category_detailed_serializer_spec.rb +++ b/spec/serializers/category_detailed_serializer_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'category' describe CategoryDetailedSerializer do diff --git a/spec/serializers/category_serializer_spec.rb b/spec/serializers/category_serializer_spec.rb index a8f2ce9edf4..1557850efd0 100644 --- a/spec/serializers/category_serializer_spec.rb +++ b/spec/serializers/category_serializer_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'category' describe CategorySerializer do fab!(:group) { Fabricate(:group) } diff --git a/spec/serializers/post_serializer_spec.rb b/spec/serializers/post_serializer_spec.rb index 1e710b5e313..cd21e838aba 100644 --- a/spec/serializers/post_serializer_spec.rb +++ b/spec/serializers/post_serializer_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'post_action' describe PostSerializer do fab!(:post) { Fabricate(:post) } diff --git a/spec/serializers/site_serializer_spec.rb b/spec/serializers/site_serializer_spec.rb index c66bac51a58..6574b3e4b2c 100644 --- a/spec/serializers/site_serializer_spec.rb +++ b/spec/serializers/site_serializer_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'site' describe SiteSerializer do let(:guardian) { Guardian.new } diff --git a/spec/serializers/topic_list_item_serializer_spec.rb b/spec/serializers/topic_list_item_serializer_spec.rb index 09f51f5c8bc..f798ec3498c 100644 --- a/spec/serializers/topic_list_item_serializer_spec.rb +++ b/spec/serializers/topic_list_item_serializer_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'post_action' describe TopicListItemSerializer do let(:topic) do diff --git a/spec/serializers/user_serializer_spec.rb b/spec/serializers/user_serializer_spec.rb index 7f896a285ff..262166422a3 100644 --- a/spec/serializers/user_serializer_spec.rb +++ b/spec/serializers/user_serializer_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'user' describe UserSerializer do diff --git a/spec/services/topic_status_updater_spec.rb b/spec/services/topic_status_updater_spec.rb index c0a6843e2e8..7bb6ab4abf8 100644 --- a/spec/services/topic_status_updater_spec.rb +++ b/spec/services/topic_status_updater_spec.rb @@ -2,7 +2,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'post_destroyer' # TODO - test pinning, create_moderator_post diff --git a/spec/services/user_authenticator_spec.rb b/spec/services/user_authenticator_spec.rb index 7ee4543d147..c7f6b989f41 100644 --- a/spec/services/user_authenticator_spec.rb +++ b/spec/services/user_authenticator_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'user_authenticator' def github_auth(email_valid) { diff --git a/spec/services/user_destroyer_spec.rb b/spec/services/user_destroyer_spec.rb index 2fbefd9acf3..ed11feb0116 100644 --- a/spec/services/user_destroyer_spec.rb +++ b/spec/services/user_destroyer_spec.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true require 'rails_helper' -require_dependency 'user_destroyer' describe UserDestroyer do diff --git a/spec/views/omniauth_callbacks/complete.html.erb_spec.rb b/spec/views/omniauth_callbacks/complete.html.erb_spec.rb index 028213e521d..177c580533c 100644 --- a/spec/views/omniauth_callbacks/complete.html.erb_spec.rb +++ b/spec/views/omniauth_callbacks/complete.html.erb_spec.rb @@ -3,7 +3,6 @@ require "rails_helper" require "auth/authenticator" -require_dependency "auth/result" describe "users/omniauth_callbacks/complete.html.erb" do