Gerhard Schlager
4f36f604c8
FIX: Looking up translation overrides by symbol failed when count is used ( #12896 )
2021-04-30 13:54:45 +02:00
Gerhard Schlager
92e222d246
FIX: POP3 polling shouldn't stop after exception or old email ( #12742 )
2021-04-19 10:27:29 +02:00
Gerhard Schlager
c60ccfed98
DEV: Add app event "topic:timings-sent" ( #12737 )
2021-04-16 18:34:49 +02:00
Gerhard Schlager
74e84a1953
DEV: Export regex for parsing topic URL ( #12740 )
2021-04-16 18:34:39 +02:00
Gerhard Schlager
acc73f2989
FIX: uploads:fix_missing_s3 rake task used wrong SHA1 ( #12495 )
2021-03-25 11:35:29 +01:00
Gerhard Schlager
2d1b087efc
FIX: Delete invalid web push subscriptions ( #12447 )
...
The endpoint as well as the public and private ECDH keys are required to successfully send a push notification.
2021-03-19 14:24:03 +01:00
Gerhard Schlager
38dd81d38a
DEV: Remove deprecated Sidekiq config ( #12427 )
...
> WARNING: Sidekiq::Web.sessions= is no longer relevant and will be removed in Sidekiq 7.0.
2021-03-17 16:29:10 +01:00
Gerhard Schlager
58c218a4bf
FIX: Remap old S3 endpoints during backup restore ( #12276 )
...
It also starts outputting exceptions on the console.
2021-03-03 21:10:09 +01:00
Gerhard Schlager
0019e2e110
FIX: Remove unused JS from "finish installation" page ( #12263 )
...
This fixes the following error: "Uncaught ReferenceError: I18n is not defined"
The alternative would be to add `locales/#{I18n.locale}`, but the pages do not use any JS.
2021-03-02 19:19:19 +01:00
Gerhard Schlager
a96a5db0fb
DEV: Add option to send system message to groups ( #12256 )
2021-03-02 18:51:50 +01:00
Gerhard Schlager
11ccea5c9a
FIX: Topic#invite_group failed to notify users on newly created topic ( #12255 )
...
When `PostCreator` creates a new topic it loads the `allowed_groups` of the topic. `Fabricate` doesn't do that and that's why the existing spec worked even though it should have failed, because `PostAlerter#notify_group_summary` didn't create a notification for a non-fabricated topic.
`Topic#invite_group` added a new `TopicAllowedGroup` record without reloading `Topic.allowed_groups`. A subsequent call to `PostAlerter#notify_group_summary` didn't work because it didn't find the invited group in the topic's `allowed_groups` association.
2021-03-02 15:46:50 +01:00
Gerhard Schlager
154bfcf750
FEATURE: Include details about S3 backup storage errors ( #12257 )
2021-03-02 15:29:37 +01:00
Gerhard Schlager
4b05fc2d2d
FIX: Restoring backup via UI was broken ( #12089 )
2021-02-15 16:46:44 +01:00
Gerhard Schlager
f71ff2c34b
UX: relative-time-picker should use pluralized strings ( #12086 )
2021-02-15 14:15:22 +01:00
Gerhard Schlager
4d719725c8
FEATURE: Allow overriding the backup location when restoring via CLI ( #12015 )
...
You can use `discourse restore --location=local FILENAME` if you want to restore a backup that is stored locally even though the `backup_location` has the value `s3`.
2021-02-09 16:02:44 +01:00
Gerhard Schlager
9ce7ec24e2
FIX: Some error messages used wrong translation key ( #12012 )
2021-02-08 17:57:59 +01:00
Gerhard Schlager
f88def5f5b
PERF: Avoid lookbehinds when replacing links in imported emails ( #11931 )
...
Follow-up to 3c678df942
2021-02-02 17:34:00 +01:00
Gerhard Schlager
fa33e4863d
DEV: Remove deprecated bootsnap options ( #11929 )
...
Bootsnap started printing these warnings:
```
[DEPRECATED] Bootsnap's `autoload_paths_cache:` option is deprecated and will be removed. If you use Zeitwerk this option is useless, and if you are still using the classic autoloader upgrading is recommended.
[DEPRECATED] Bootsnap's `disable_trace:` option is deprecated and will be removed. If you use Ruby 2.5 or newer this option is useless, if not upgrading is recommended.
```
2021-02-02 14:39:51 +01:00
Gerhard Schlager
d055552994
Fix i18n issues reported on Crowdin ( #11747 )
...
* Pluralize `groups.errors.adding_too_many_users`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/248/en-ar#53882
* Pluralize `js.composer.error.title_too_short`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#41172
* Pluralize `js.composer.error.title_too_long`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#41174
* Pluralize `js.composer.error.post_length`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#41178
* Pluralize `js.topic.progress.jump_prompt_of`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#41958
* Use translations to join strings about posters
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/248/en-ar#49334
It also makes some changes to the crawler view:
* Removes `poster.moreCount` which is only available on the client for PMs
* CSS class names are actually stored in `poster.extras` instead of `poster.extraClasses`
* Stop concatenating category stats
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#40740
* Pluralize `js.summary.description`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#40782
* Pluralize `js.summary.description_time_MF`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#40784
* Use translation to join list of tags
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#43372
* Pluralize `admin_js.admin.groups.manage.membership.automatic_membership_user_count`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#43720
* Pluralize `js.post.controls.delete_topic_confirm_modal`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#54804
* Stop concatenating `js.post.last_edited_on`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#42358
* Stop concatenating `js.post.wiki_last_edited_on`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#42356
It also fixes a regression because `js.post.wiki_last_edited_on` wasn't used anymore since 2017.
2021-02-02 10:50:04 +01:00
Gerhard Schlager
5a6baa7c46
FIX: Translated button title didn't work ( #11872 )
...
Follow-up to 6f13d2b039
2021-01-28 08:32:02 +01:00
Gerhard Schlager
363dca5ddc
FIX: "Customize text" link was broken on badges admin page ( #11842 )
2021-01-25 21:45:13 +01:00
Gerhard Schlager
e65c5b0aad
PERF: Migrate search data after locale rename ( #11831 )
...
The default locale `en_US` has been renamed into `en`. This tries to migrate existing search data to avoid resource intensive reindexing.
2021-01-25 14:30:17 +01:00
Gerhard Schlager
71656d2c37
UX: Makes the theme editor display placeholder correctly for RTL languages ( #11800 )
...
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-he#53834
2021-01-22 16:03:43 +01:00
Gerhard Schlager
3c42611096
It's 2021 🥳
2021-01-21 10:11:59 +08:00
Gerhard Schlager
3b2f6e129a
FEATURE: Add English (UK) as locale ( #11768 )
...
* "English" gets renamed into "English (US)"
* "English (UK)" replaces "English"
@discourse-translator-bot keep_translations_and_approvals
2021-01-20 21:32:22 +01:00
Gerhard Schlager
fc9155f3ee
DEV: Lint MessageFormat strings to prevent usage of "one {foo 1 bar}" ( #11608 )
...
Follow-up to 6b53f26f
2021-01-04 12:29:20 +01:00
Gerhard Schlager
6b53f26fc0
DEV: Lint MessageFormat strings to prevent usage of "one {1 foo}" ( #11605 )
2020-12-29 21:42:47 +01:00
Gerhard Schlager
538e1142e7
FIX: Prevent error when primary email is missing ( #11446 )
2020-12-09 18:14:45 +01:00
Gerhard Schlager
b572ca6da0
FIX: Missing translation ( #11444 )
...
Follow-up to 1960fc53
2020-12-09 18:14:33 +01:00
Gerhard Schlager
06077856ce
FIX: Prevent usage of composer-action-undefined CSS class ( #11445 )
2020-12-09 15:22:53 +01:00
Gerhard Schlager
1960fc5333
FIX: Stop using duplicate composer button ID ( #11404 )
...
"quote" is used by the button added in `composer-editor`.
https://github.com/discourse/discourse/blob/bbe5d8d5cf1220165842985c0e2cd4c454d501cd/app/assets/javascripts/discourse/app/components/composer-editor.js#L875-L882
2020-12-04 00:05:43 +01:00
Gerhard Schlager
bcbe2de646
DEV: Make it easier to customize omniauth login complete handler in plugins ( #11403 )
...
It also removes the unused `provider` variable and stops Discourse from redirecting to /login after a login.
2020-12-03 22:27:55 +01:00
Gerhard Schlager
2e5e4dbf19
DEV: Make it easier to customize link attributes in quick access menu ( #11365 )
...
This allows themes to customize link attributes:
```
api.reopenWidget("quick-access-item", {
_linkAttributes(href) {
const attributes = this._super(...arguments);
// do stuff
return attributes;
}
}
```
2020-11-27 12:26:47 +01:00
Gerhard Schlager
333f0af0ec
FIX: Cached badge_count isn't updated after backfilling badges ( #11281 )
2020-11-18 22:01:56 +01:00
Gerhard Schlager
6ff07bb73f
FEATURE: Create revision when bulk moving topics ( #10802 )
...
This behavior can be configured with the new "create_revision_on_bulk_topic_moves" site setting. It's enabled by default.
2020-11-12 13:57:12 +01:00
Gerhard Schlager
6d4711ca10
DEV: Fix lint ( #11213 )
2020-11-12 12:15:55 +01:00
Gerhard Schlager
811c610108
DEV: Assign id to button for easier finding via CSS selectors ( #11200 )
2020-11-11 18:33:23 +01:00
Gerhard Schlager and Jarek Radosz
b73234b75c
FIX: Show an example username in Review Settings ( #11097 )
...
Co-authored-by: Jarek Radosz <jradosz@gmail.com >
2020-11-02 11:13:30 +01:00
Gerhard Schlager
5c662128d3
DEV: Rake task for creating admin should ask for full name if required ( #11096 )
2020-11-02 11:12:42 +01:00
Gerhard Schlager
cc74c3f9ab
FEATURE: Batch process topic bulk actions ( #10980 )
...
Topics are processed in chunks of 30 in order to prevent timeouts.
2020-10-30 12:02:35 +11:00
Gerhard Schlager
1ac010db3c
FIX: "Sorry an error has occurred" was shown when flagging a post ( #10948 )
2020-10-18 13:47:54 +02:00
Gerhard Schlager
918d1d8363
DEV: Fix heisentest ( #10946 )
...
This should fix the following sporadic spec failure:
```
1) JsLocaleHelper performs fallbacks to English if a translation is not available
Failure/Error: expect(ctx.eval('I18n.translations.uk.js').keys).to contain_exactly("all_three", "english_and_user", "only_user", "site_and_user")
expected collection contained: ["all_three", "english_and_user", "only_user", "site_and_user"]
actual collection contained: ["about", "action_codes", "activity", "admin", "admin_title", "adplugin", "age", "akismet", "all_time..."voting", "week", "week_desc", "weekly", "wizard_required", "year", "year_desc", "yes_value", "you"]
the missing elements were: ["all_three", "english_and_user", "only_user", "site_and_user"]
the extra elements were: ["about", "action_codes", "activity", "admin", "admin_title", "adplugin", "age", "akismet", "all_time..."voting", "week", "week_desc", "weekly", "wizard_required", "year", "year_desc", "yes_value", "you"]
# ./spec/components/js_locale_helper_spec.rb:182:in `block (2 levels) in <main>'
# ./bundle/ruby/2.6.0/gems/webmock-3.9.2/lib/webmock/rspec.rb:37:in `block (2 levels) in <top (required)>'
```
2020-10-18 12:00:35 +02:00
Gerhard Schlager
7adf71a203
Fix i18n issues reported on Crowdin ( #10925 )
...
* Pluralize `discourse_narrative_bot.dice.not_enough_dice`
The number of dice requires a pluralized string.
Fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/278/en-ar#51346
* Always use "two-factor" instead of "second factor" or "two factor"
Using different terms for the same thing is quite confusing.
Fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-nl#40096
* Remove whitespace before ellipsis for consistency
Fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-nl#53978
* Remove unused strings from locale file
* Correct grammar in `site_settings.review_media_unless_trust_level`
Fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/248/en-nl#54018
* Correct grammar in `reviewables.reasons.contains_media`
Fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/248/en-nl#54020
* Correct grammar in user notifications
It also adds a link to the /about page in order to give the user a clue who the site admins are.
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/248/en-nl#54084
* Use "log in" instead of "login" when it's a verb
This fixes multiple issues:
* https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-nl#40940
* https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/248/en-nl#47858
* https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/248/en-nl#49458
* Replace "Github" with "GitHub"
* Remove "discourse.org" from title of 503 error page
* Replace weirdly formatted multi line string
* Pluralize `js.composer.group_mentioned_limit`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#41158
* Remove unused string and pluralize `js.topic.feature_topic.confirm_pin_globally`
This kinda fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#42114 as `js.topic.feature_topic.confirm_pin` wasn't used anymore.
* Pluralize `js.user.second_factor_backup.remaining_codes`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#40054
* Pluralize `js.composer.error.tags_missing`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#41184
* Pluralize `js.post.errors.too_many_dragged_and_dropped_files`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#42408
* Remove unused `js.posts_long` and `js.likes_long`
This fixes the following issues in an unexpected way:
* https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#42974
* https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#42994
* Pluralize `js.bootstrap_mode_enabled`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#38726
* Remove unused `long_form` from `post_action_types`
This more or less fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/248/en-ar#47158
* Pluralize `js.presence.replying` and `js.presence.replying`
This fixes the following issues:
* https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/282/en-ar#51588
* https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/282/en-ar#51590
* Pluralize `js.user.second_factor_backup.manage`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#40044
* Stop using concatenated strings for "Recently Used Devices"
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#40308
* Pluralize `js.category_row.topic_count`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#41056
* Pluralize `js.select_kit.invalid_selection_length`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#41072
* Pluralize `js.notifications.membership_request_consolidated`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#41416
2020-10-16 15:24:58 +02:00
Gerhard Schlager
d5ef6188ed
PERF: Disable Sidekiq only during database restore ( #10857 )
...
It pauses Sidekiq, clears Redis (namespaced to the current site), clears Sidekiq jobs for the current site, restores the database and unpauses Sidekiq. Previously it stayed paused until the end of the restore.
Redis is cleared because we don't want any old data lying around (e.g. old Sidekiq jobs). Most data in Redis is prefixed with the name of the multisite, but Sidekiq jobs in a multisite are all stored in the same keys. So, deleting those jobs requires a little bit more logic.
2020-10-16 15:19:02 +02:00
Gerhard Schlager
8fd183c439
DEV: Add styleguide locale files to Crowdin ( #10876 )
2020-10-09 13:23:32 +11:00
Gerhard Schlager
99181bb3b8
FIX: Stripping lines from incoming email shouldn't fail for blank body ( #10800 )
2020-10-02 15:44:35 +02:00
Gerhard Schlager
9d4009b0e8
FIX: Use correct locale for error messages ( #10776 )
...
Error messages for exceeded rate limits and invalid parameters always used the English locale instead of the default locale or the current user's locale.
2020-09-29 21:42:45 +02:00
Gerhard Schlager
dac0e5b3cc
Merge pull request #10519 from gschlager/get-url
...
Fixes for getURL() in subfolders and basePath in translations
2020-08-25 11:42:50 +02:00
Gerhard Schlager
81247c1f6a
DEV: Remove mention of Transifex from locale files
2020-08-06 13:34:00 +02:00
Gerhard Schlager
92b2448500
DEV: Fix i18n deprecation warnings
2020-08-03 15:57:29 +02:00
Gerhard Schlager
957e851ffe
Revert "FIX: Regularly reset unknown extension of uploads"
...
This reverts commit cc7b24b88b as it shouldn't be needed anymore for new uploads.
2020-08-03 13:37:32 +02:00
Gerhard Schlager
ab4c0a4970
FEATURE: Create SQL-only backup if there are no uploads
...
It doesn't make sense to compress the database dump twice if the backup doesn't contain any uploaded files.
2020-07-07 16:23:47 +02:00
Gerhard Schlager
fc8e842773
FIX: Sometimes not all output of psql was logged during restores
...
There was a race condition which could prevent Discourse from logging the last couple of lines of output from psql.
2020-06-30 16:52:50 +02:00
Gerhard Schlager
1f053173a4
FEATURE: Import script for jForum
2020-06-21 12:12:42 +02:00
Gerhard Schlager
390dc5c7a9
Update translations
2020-06-21 11:58:21 +02:00
Gerhard Schlager
2da6faf281
FEATURE: Add before_email_send event
...
Plugins can use it to customize the message (e.g. add header) before the email is sent.
2020-06-18 18:58:51 +02:00
Gerhard Schlager
859d9b75a7
FIX: Restoring backup from PG12 could fail on PG10
...
The `EXECUTE FUNCTION` syntax for `CREATE TRIGGER` statements was introduced in PostgreSQL 11. We need to replace `EXECUTE FUNCTION` with `EXECUTE PROCEDURE` in order to be able to restore backups created with PG12 on PG10.
2020-06-16 16:04:14 +02:00
Gerhard Schlager
4cff4892e8
Locale checks were disabled by mistake
2020-06-16 16:04:14 +02:00
Gerhard Schlager
36a3675e0a
Update translations
2020-06-14 23:39:33 +02:00
Gerhard Schlager
6b7a2d6d4d
DEV: Remove non-existent option from setup-ruby Github action
2020-06-09 15:50:09 +02:00
Gerhard Schlager
0bf753a739
DEV: Remove unused routes
2020-06-08 10:26:29 +02:00
Gerhard Schlager
8c6a42c589
FIX: Redirects containing Unicode usernames didn't work
2020-06-08 10:26:29 +02:00
Gerhard Schlager
f683c5d0e0
DEV: Check English locale for errors in CI
...
Moves the most important checks into a linter. It gets executed by Lefthook as well as the docker rake task and Github actions. Doing those checks in rspec takes too long and it produces errors when the discourse:test Docker image contains old, invalid locale files.
2020-06-03 21:54:58 +02:00
Gerhard Schlager
9c42c0fe9a
FIX: Broken MessageFormat string
2020-06-02 21:42:39 +02:00
Gerhard Schlager
fc640f31df
DEV: Skip interpolation key specs until build scripts can be fixed
...
Currently the build fails because it runs the specs for all plugins even though the current source of those plugins isn't pulled from git.
2020-06-02 19:51:47 +02:00
Gerhard Schlager
0cf297725f
DEV: Use consistent interpolation key format in translations
...
From now on client strings can easily be reused on the server and you don’t have to think about choosing the right format anymore.
2020-06-02 19:05:10 +02:00
Gerhard Schlager
69ee94b526
FIX: XML files could be detected as SVG files
2020-05-26 18:18:20 +02:00
Gerhard Schlager
631024ae5d
FEATURE: Permalinks for tags
2020-05-25 14:51:01 +02:00
Gerhard Schlager
13d5ccedf5
FIX: Destroying a user failed when it had title
...
...because updating the user caused a validation of the primary email and the UserEmail records are already deleted at that time.
2020-05-24 22:14:50 +02:00
Gerhard Schlager
0a700d81fc
FIX: Restoring backups could fail for database dumps > 8GiB
...
This is a temporary fix until we ship a new image with bsdtar.
2020-05-19 22:36:59 +02:00
Gerhard Schlager
6d5e9db883
FIX: Restoring backup didn't clear cached translation overrides
2020-05-18 18:51:51 +02:00
Gerhard Schlager
27c611b1d1
FIX: Reverting multiple translation overrides didn't clear cache
2020-05-18 18:51:29 +02:00
Gerhard Schlager
ec2f3169ff
FIX: Using the default_locale in locale fallbacks caused problems
...
Locale files get precompiled after deployment and they contained translations from the `default_locale`. That's especially bad in multisites, because the initial `default_locale` is `en_US`. Sites where the `default_locale` isn't `en_US` could see missing translations. The same thing could happen when users are allowed to chose a different locale.
This change simplifies the logic by not using the `default_locale` in the locale chain. It always falls back to `en` in case of missing translations.
2020-05-06 22:59:07 +02:00
Gerhard Schlager
7177b9d771
UX: Translating poll chart types wasn't possible
2020-04-28 14:29:42 +02:00
Gerhard Schlager
30cb5f7d86
Update translations
2020-04-24 15:16:29 +02:00
Gerhard Schlager
67e96f6c54
DEV: discourse-backup-uploads-to-s3 plugin isn't supported anymore
2020-04-23 21:37:38 +02:00
Gerhard Schlager
060eb06a4f
Replace Travis build status with Github Actions status
2020-04-23 18:34:25 +02:00
Gerhard Schlager
82f9dcf301
Update translations
2020-04-20 11:37:59 +02:00
Gerhard Schlager
c6b411f6c1
FIX: Restore to S3 didn't work without env variables
...
The `uplaods:migrate_to_s3` rake task should always use the environment variables, because you usually don't want to break your site's uploads during the migration. But restoring a backup should work with site settings as well as environment variables, otherwise you can't restore uploads to S3 from the web interface.
2020-04-19 20:24:40 +02:00
Gerhard Schlager
baae0e7446
FIX: Infinite loop in migrate_to_s3 rake task
2020-04-19 20:24:40 +02:00
Gerhard Schlager
3e3ac704e1
Remove unused translation
...
It isn't used anymore since a19e43fd3b
2020-04-19 16:44:14 +02:00
Gerhard Schlager
ad6709772a
PERF: Backup with lots of uploads stored on S3 was slow
...
Creating the backup needs a lot more disk space after this change, but it is a lot faster.
2020-04-03 18:13:34 +02:00
Gerhard Schlager
2b2584912a
Improve Telligent import script
...
* Imports private messages
* Replaces internal links for topics and replies
* Allows incremental import of accepted answers
2020-04-03 18:10:52 +02:00
Gerhard Schlager
13b4eb9cce
FIX: Restore failed if schema contained objects not owned by the current DB user
2020-04-01 18:04:43 +02:00
Gerhard Schlager
739430c01e
FIX: mbox import failed if no tags were configured
2020-03-26 16:41:11 +01:00
Gerhard Schlager
5bffb033df
FIX: The migrate_to_s3 rake task couldn't find the AWS SDK
2020-03-26 16:41:10 +01:00
Gerhard Schlager
d216483c53
FIX: Importing with pgbouncer failed
...
Checking if all records have been imported uses a temp table in PostgreSQL. This fails when pgbouncer is used unless the temp table is created inside a transaction.
2020-03-26 16:41:09 +01:00
Gerhard Schlager
c94b63bc75
DEV: Improve import of attachments from Telligent
2020-03-26 16:37:55 +01:00
Gerhard Schlager
5b2b769eb7
DEV: Ensure uploads aren't deleted during imports
...
Sidekiq might delete uploads if you, for some reason, create upload records before using them in posts.
2020-03-24 17:14:16 +01:00
Gerhard Schlager
445b35381d
Improve Telligent import script
...
* Detects mostly all attachments and it's a lot faster
* Parses user properties in Ruby instead of the DB, because that's less errorprone
* Imports user avatars
* Imports topic views by users
* Better handling of quotes and YouTube links
2020-03-23 09:18:12 +01:00
Gerhard Schlager
d27ece9ded
FIX: Method from Telligent import script was deleted by accident
2020-03-14 22:10:40 +01:00
Gerhard Schlager
e825f47daa
DEV: Better handling of incremental scrapes for Google Groups
2020-03-14 00:00:36 +01:00
Gerhard Schlager
0a88232e87
DEV: Improve mbox import script
...
* Better documentation of settings
* Add option to exclude trimmed parts of emails (enabled by default) to not revail email addresses
2020-03-14 00:00:36 +01:00
Gerhard Schlager
36062f43c8
DEV: Improve Telligent import script
...
* Adds ability to map forums to categories and tags as well as ignore forums.
* Fixes regular expression for detecting attachments in posts.
* Handles "remote attachments" 😮 by inserting a link.
* Imports view counts for topics.
* Handles incorrect references of parent posts.
* Better handling of quotes.
* Finds a lot more attachments by trying to replace various Unicode characters in filenames.
2020-03-14 00:00:36 +01:00
Gerhard Schlager
ba1b840816
DEV: Don't deactivate suspended users during import
...
Otherwise a cleanup job might delete those deactivated users.
2020-03-14 00:00:36 +01:00
Gerhard Schlager
8022e51179
FIX: Failed to restore backups from versions without translation overrides
...
Rails calls I18n.translate during initialization and by default translation overrides are used. Database migrations would fail if the system tried to migrate from an old version that didn't have the `translation_overrides` table with all its columns yet.
This makes restoring really old backups work again. Running `DISABLE_TRANSLATION_OVERRIDES=1 rake db:migrate` will allow you to upgrade such an old database as well.
2020-03-14 00:00:22 +01:00
Gerhard Schlager
0e752db411
DEV: Improve mbox import script
...
* Customizable email subject prefixes to remove "Re" and "Fwd" as well as localized prefixes.
* Configuration option for prefixes like [FOO] or (BAR) which can be replaced with tags during import.
* Bugfix: Import script might have skipped some users due to missing ORDER BY.
2020-03-09 10:26:45 +01:00
Gerhard Schlager
edc8d58ac3
FEATURE: Add site setting to disable staged user cleanup
...
... and disabled the cleanup during imports, otherwise a running Sidekiq might delete users before posts are created
2020-03-09 10:26:41 +01:00
Gerhard Schlager
8fa8bab9ff
FIX: Don't optimize icons during db:migrate when restoring backup
...
Uploads are extracted after the DB migration, so this could lead to a failure during the restore. Site icons get optimized after extracting uploads.
2020-03-04 16:59:49 +01:00
Gerhard Schlager
93b8b04b06
FIX: Migrating uploads to S3 could miss files
...
The rake task aborted the migration with "Already migrated" when all upload URLs linked to the correct S3 bucket even though the files didn't exist on S3. By removing the first check we force the rake task to check for the existance of uploads on S3.
2020-03-04 12:50:48 +01:00