discourse/spec
Gerhard Schlager 07ff21d045
FIX: Restoring backup could fail due to missing discourse_functions (#29332)
Database dumps sometimes reference functions in the `discourse_functions` schema. It's possible that some of these functions have been dropped in a newer version of Discourse. In that case, restoring an older backup will fail with a `ERROR:  function discourse_functions.something_something() does not exist` error. The restore functionality contains a workaround for that problem, but it didn't work with functions created in plugin migrations.

This commit adds support for temporarily creating missing `discourse_functions` from plugins. And it adds a simple check if the DB migration file even contains the required `DROPPED_TABLES` or `DROPPED_COLUMNS` constant. We don't need to create an instance of the DB migration class unless one of those constants is used. This makes the restore slightly faster and works around a problem with migrations that execute without `up` or `down` methods (e.g. `BackfillChatChannelAndThreadLastMessageIdsPostMigrate`).
2024-10-22 16:13:01 +02:00
..
fabricators DEV: Migrate user passwords data to UserPassword table (#28746) 2024-10-10 09:23:06 +08:00
fixtures DEV: Remove logical OR assignment of constants (#29201) 2024-10-16 10:09:07 +08:00
generator DEV: Silence the output of migration specs (#26365) 2024-03-26 11:32:44 +01:00
helpers DEV: Call Discourse.redis.flushdb after the end of each test (#29117) 2024-10-09 07:19:31 +08:00
import_export DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
initializers DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
integration DEV: Attempt to fix a flaky spec (#29155) 2024-10-10 17:19:53 +08:00
integrity DEV: Add spec to ensure app works with multiple tagged loggers 2024-08-13 18:10:03 +02:00
jobs DEV: Fix linting in notify_category_change_spec (#29175) 2024-10-11 19:55:33 +02:00
lib FIX: Restoring backup could fail due to missing discourse_functions (#29332) 2024-10-22 16:13:01 +02:00
mailers UX: Use a dropdown for SSL mode for group SMTP (#27932) 2024-07-18 10:33:14 +10:00
migrations DEV: Remove invalid content_security_policy_script_src site setting values from DB (#27588) 2024-06-27 22:17:56 +08:00
models FIX: Don't error out on empty reserved_usernames setting (#29305) 2024-10-21 14:38:37 +08:00
multisite FEATURE: allow admins to enable announced experimental features (#29244) 2024-10-22 10:56:58 +11:00
requests FEATURE: Revive legacy pageview reports (#29308) 2024-10-22 10:06:22 +10:00
script/import_scripts DEV: Catch missing translations during test runs (#26258) 2024-05-24 22:15:53 +08:00
serializers DEV: Set topic list filter name in serializer for children (#29291) 2024-10-18 17:24:47 -03:00
services DEV: Add comments in flags specs 2024-10-22 10:54:26 +02:00
support DEV: Improve isolation and concurrency for minio-based upload specs (#29216) 2024-10-16 10:40:58 +01:00
system DEV: Improvements to auto grid images (#29317) 2024-10-22 06:53:09 -07:00
tasks DEV: update rake task to disable 2FA for a user (#29052) 2024-10-16 09:11:29 +11:00
views FEATURE: Simplify crawler content for non-canonical post URLs (#26324) 2024-03-26 15:18:46 +00:00
rails_helper.rb DEV: Improve isolation and concurrency for minio-based upload specs (#29216) 2024-10-16 10:40:58 +01:00
regenerate_swagger_docs
swagger_helper.rb DEV: Bump rswag-specs from 2.11.0 to 2.13.0 (#24654) 2023-12-07 08:16:47 +08:00