about summary refs log tree commit diff
path: root/app
AgeCommit message (Collapse)Author
2021-01-18Merge branch 'master' into glitch-soc/merge-upstreamClaire
2021-01-12Use Rails' index_by where it makes sense (#15542)ThibG
* Use Rails' index_by where it makes sense * Fix tests Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-01-12Fix processing of incoming Block activities (#15546)ThibG
Unlike locally-issued blocks, they weren't clearing follow relationships in both directions, follow requests or notifications. Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-01-11[Glitch] Fix OCR lang data failing to loadThibG
Port 73ddb60c32090c9685f3b74e0bbb4a06b34a7083 to glitch-soc Co-authored-by: Claire <claire.github-309c@sitedethib.com> Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-01-11Merge branch 'master' into glitch-soc/merge-upstreamClaire
Conflicts: - `app/models/public_feed.rb`: Upstream refactored a bit, glitch-soc had specific code for local-only statuses. Updated glitch-soc's specific code accordingly.
2021-01-10Fix muting users with duration via the REST api (#15516)Levi Bard
2021-01-10Optimize map { ... }.compact calls (#15513)luigi
* Optimize map { ... }.compact using Enumerable#filter_map, supported since Ruby 2.7 * Add poyfill for Enumerable#filter_map
2021-01-09Fix OCR lang data failing to load (#15519)ThibG
Fixes #15472 Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-01-08Skip processing Update activities on unknown accounts (#15514)ThibG
This also skips fetching the actor completely. This will be useful if we end up distributing Update activities linked to account suspensions more widely (they are currently only delivered to the suspended account's followers), as currently, instances not knowing about the suspended account would fetch it to then process the suspension. Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-01-07Fix rubocop config and warnings (#15503)abcang
* disable NewCops * update TargetRubyVersion * Fix Lint/MissingSuper for ActiveModelSerializers::Model * Fix Lint/MissingSuper for feed * Fix Lint/FloatComparison * Do not use instance variables
2021-01-06[Glitch] Fix logo button style moreTakeshi Umeda
Port 3f4b0dfd47d35818b36fedb767a5a82dc02f87cc to glitch-soc Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-01-06[Glitch] Fix logo button styleTakeshi Umeda
Port ba748a83f2050dff27758bce67c05d37a8b7d8f3 to glitch-soc Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-01-06[Glitch] Fix getting-started footer in single column mode not being ↵Takeshi Umeda
clickable in Safari Port e38874dcf7b0fca0f9934fcd0e12bba457c7c212 to glitch-soc Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-01-06[Glitch] Fix defaultProps of frameRate to stringTakeshi Umeda
Port a50fe47a77118dba043143c01d0d6ad6c82f9b31 to glitch-soc Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-01-06[Glitch] Fix missing key in list timeline policyTakeshi Umeda
Port 71f09688878241f0a47fd637047afbf0148f0abf to glitch-soc Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-01-06Merge branch 'master' into glitch-soc/merge-upstreamClaire
Conflicts: - `config/webpack/configuration.js`: Upstream updated the `js-yaml` dependency, which changed how to call it. Those changes conflicted because that code is pretty different in glitch-soc which has to deal with its more complex theming system. Proceeded to the same compatibility changes in glitch-soc's code. - `package.json` and `yarn.lock`: Not really a conflict, just glitch-soc-specific dependencies textually too close to some dependencies updated upstream.
2021-01-05Fix defaultProps of frameRate to string (#15493)Takeshi Umeda
2021-01-05Fix missing key in list timeline policy (#15494)Takeshi Umeda
2021-01-05Fix getting-started footer in single column mode not being clickable in ↵Takeshi Umeda
Safari (#15496)
2020-12-30Fix profile update not being sent on profile/header picture deletion (#15461)ThibG
Fixes #15460 Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-30Fix logo button style more (#15458)Takeshi Umeda
2020-12-30Fix expand video on public page (#15469)Takeshi Umeda
2020-12-26Fix being able to import more than allowed number of follows (#15384)ThibG
* Fix being able to import more than allowed number of follows Without this commit, if someone tries importing a second list of accounts to follow before the first one has been processed, this will queue imports for the two whole lists, even if they exceed the account's allowed number of outgoing follows. This commit changes it so the individual queued imports aren't exempt from the follow limit check (they remain exempt from the rate-limiting check though). * Catch validation errors to not re-queue failed follows Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-26New Crowdin updates (#15413)Eugen Rochko
* New translations en.json (Vietnamese) [ci skip] * New translations en.yml (Vietnamese) [ci skip] * New translations en.json (Vietnamese) [ci skip] * New translations en.yml (Vietnamese) [ci skip] * New translations en.yml (Vietnamese) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.yml (Vietnamese) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations simple_form.en.yml (Japanese) [ci skip] * New translations en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations en.yml (Occitan) [ci skip] * New translations en.yml (Occitan) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations simple_form.en.yml (Armenian) [ci skip] * New translations devise.en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations devise.en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * i18n-tasks normalize * yarn manage:translations
2020-12-26Fix logo button style (#15428)Takeshi Umeda
* Fix bell button rtl style * Remove size and style props from button component * Fix logo button style * Update jest snapshot
2020-12-24Fix error when changing ACL on missing objects during suspension (#15420)Eugen Rochko
2020-12-24Fix undefined method error when batch-removing statuses with ElasticSearch ↵Eugen Rochko
on (#15421)
2020-12-23Fix unfollow action button style (#15418)Takeshi Umeda
2020-12-23Fix media modal buttons not showing up on mobile (#15417)ThibG
Fixes #15374 When the pop-out player was introduced, it had tweaks for the mobile view, but it's now disabled in mobile mode and the styling was reused for modals, causing the footer to be hidden on mobile without a good reason. Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-23Use existing FeaturedTag serializer and delete AccountFeaturedTag serializer ↵trwnh
(#15415) * Update featured_tags_controller.rb * Update featured_tag_serializer.rb * Update featured_tag_serializer.rb * Delete account_featured_tag_serializer.rb * please codeclimate * please codeclimate
2020-12-23Fix mentions not being deleted efficiently (#15416)ThibG
As a regression from the recent optimizations, mentions were left untouched until `account.destroy`, which would then delete them individually, and executing queries to find and delete associated notifications, resulting in a massive slowdown. Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-23Fix trying to privatize empty media attachments (#15414)Eugen Rochko
2020-12-23Merge branch 'master' into glitch-soc/merge-upstreamClaire
Conflicts: - `app/lib/feed_manager.rb`: Not a real conflict, glitch-soc-only DM-related method too close to changed upstream stuff. Ported upstream changes. - `app/services/batched_remove_status_service.rb`: Additional logic in glitch-soc to clear DMs from timelines. Ported upstream changes and fixed the DM TL clearing logic. - `app/workers/scheduler/feed_cleanup_scheduler.rb`: Additional code in glitch-soc to clear DM timelines. Ported upstream changes.
2020-12-23Improve performances of deleting favourites when deleting accounts (#15412)ThibG
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-23New Crowdin updates (#15369)Eugen Rochko
* New translations doorkeeper.en.yml (Esperanto) [ci skip] * New translations doorkeeper.en.yml (Albanian) [ci skip] * New translations en.yml (Albanian) [ci skip] * New translations en.yml (Greek) [ci skip] * New translations doorkeeper.en.yml (Standard Moroccan Tamazight) [ci skip] * New translations en.json (Romanian) [ci skip] * New translations en.yml (Icelandic) [ci skip] * New translations en.json (Esperanto) [ci skip] * New translations en.json (Thai) [ci skip] * New translations simple_form.en.yml (Thai) [ci skip] * New translations en.yml (Thai) [ci skip] * New translations simple_form.en.yml (Galician) [ci skip] * New translations simple_form.en.yml (Romanian) [ci skip] * New translations en.yml (Tatar) [ci skip] * New translations en.json (Tatar) [ci skip] * New translations en.yml (Standard Moroccan Tamazight) [ci skip] * New translations en.json (Standard Moroccan Tamazight) [ci skip] * New translations doorkeeper.en.yml (Sardinian) [ci skip] * New translations en.yml (Romanian) [ci skip] * New translations doorkeeper.en.yml (Romanian) [ci skip] * New translations doorkeeper.en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations en.json (Bulgarian) [ci skip] * New translations simple_form.en.yml (Catalan) [ci skip] * New translations en.yml (Catalan) [ci skip] * New translations doorkeeper.en.yml (Bulgarian) [ci skip] * New translations simple_form.en.yml (Bulgarian) [ci skip] * New translations en.yml (Bulgarian) [ci skip] * New translations doorkeeper.en.yml (Arabic) [ci skip] * New translations en.yml (French) [ci skip] * New translations simple_form.en.yml (Arabic) [ci skip] * New translations en.yml (Arabic) [ci skip] * New translations en.json (Arabic) [ci skip] * New translations doorkeeper.en.yml (Spanish) [ci skip] * New translations simple_form.en.yml (Spanish) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations doorkeeper.en.yml (French) [ci skip] * New translations doorkeeper.en.yml (Sorani (Kurdish)) [ci skip] * New translations doorkeeper.en.yml (Vietnamese) [ci skip] * New translations en.yml (Czech) [ci skip] * New translations simple_form.en.yml (Greek) [ci skip] * New translations simple_form.en.yml (Dutch) [ci skip] * New translations en.yml (Dutch) [ci skip] * New translations en.json (Dutch) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.json (German) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations en.json (Czech) [ci skip] * New translations en.json (Spanish) [ci skip] * New translations simple_form.en.yml (French) [ci skip] * New translations en.yml (Corsican) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations en.json (Swedish) [ci skip] * New translations simple_form.en.yml (Chinese Simplified) [ci skip] * New translations en.json (Kabyle) [ci skip] * New translations en.yml (Occitan) [ci skip] * New translations simple_form.en.yml (Sardinian) [ci skip] * New translations en.yml (Sardinian) [ci skip] * New translations en.json (Sardinian) [ci skip] * New translations simple_form.en.yml (Sorani (Kurdish)) [ci skip] * New translations en.yml (Sorani (Kurdish)) [ci skip] * New translations en.json (Sorani (Kurdish)) [ci skip] * New translations simple_form.en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations simple_form.en.yml (Esperanto) [ci skip] * New translations en.yml (Esperanto) [ci skip] * New translations simple_form.en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations doorkeeper.en.yml (Catalan) [ci skip] * New translations simple_form.en.yml (Czech) [ci skip] * New translations doorkeeper.en.yml (Norwegian) [ci skip] * New translations simple_form.en.yml (Norwegian) [ci skip] * New translations en.yml (Norwegian) [ci skip] * New translations en.json (Norwegian) [ci skip] * New translations doorkeeper.en.yml (Dutch) [ci skip] * New translations en.yml (Macedonian) [ci skip] * New translations simple_form.en.yml (Polish) [ci skip] * New translations en.json (Macedonian) [ci skip] * New translations en.yml (Lithuanian) [ci skip] * New translations en.json (Lithuanian) [ci skip] * New translations doorkeeper.en.yml (Korean) [ci skip] * New translations simple_form.en.yml (Korean) [ci skip] * New translations en.yml (Polish) [ci skip] * New translations doorkeeper.en.yml (Polish) [ci skip] * New translations doorkeeper.en.yml (Georgian) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations doorkeeper.en.yml (Slovenian) [ci skip] * New translations simple_form.en.yml (Slovenian) [ci skip] * New translations en.yml (Slovenian) [ci skip] * New translations en.json (Slovenian) [ci skip] * New translations doorkeeper.en.yml (Slovak) [ci skip] * New translations simple_form.en.yml (Slovak) [ci skip] * New translations en.json (Slovak) [ci skip] * New translations doorkeeper.en.yml (Russian) [ci skip] * New translations simple_form.en.yml (Russian) [ci skip] * New translations en.yml (Russian) [ci skip] * New translations doorkeeper.en.yml (Portuguese) [ci skip] * New translations simple_form.en.yml (Portuguese) [ci skip] * New translations en.yml (Portuguese) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations simple_form.en.yml (Georgian) [ci skip] * New translations doorkeeper.en.yml (Czech) [ci skip] * New translations doorkeeper.en.yml (Greek) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.json (Finnish) [ci skip] * New translations doorkeeper.en.yml (Basque) [ci skip] * New translations simple_form.en.yml (Basque) [ci skip] * New translations en.yml (Basque) [ci skip] * New translations en.json (Basque) [ci skip] * New translations en.json (Greek) [ci skip] * New translations doorkeeper.en.yml (Finnish) [ci skip] * New translations doorkeeper.en.yml (German) [ci skip] * New translations simple_form.en.yml (German) [ci skip] * New translations en.yml (German) [ci skip] * New translations doorkeeper.en.yml (Danish) [ci skip] * New translations simple_form.en.yml (Danish) [ci skip] * New translations en.yml (Danish) [ci skip] * New translations en.json (Danish) [ci skip] * New translations simple_form.en.yml (Finnish) [ci skip] * New translations en.json (Hebrew) [ci skip] * New translations en.yml (Georgian) [ci skip] * New translations en.json (Georgian) [ci skip] * New translations doorkeeper.en.yml (Japanese) [ci skip] * New translations simple_form.en.yml (Japanese) [ci skip] * New translations doorkeeper.en.yml (Italian) [ci skip] * New translations simple_form.en.yml (Italian) [ci skip] * New translations en.yml (Italian) [ci skip] * New translations doorkeeper.en.yml (Armenian) [ci skip] * New translations en.yml (Hebrew) [ci skip] * New translations simple_form.en.yml (Armenian) [ci skip] * New translations doorkeeper.en.yml (Hungarian) [ci skip] * New translations simple_form.en.yml (Hungarian) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations doorkeeper.en.yml (Hebrew) [ci skip] * New translations simple_form.en.yml (Hebrew) [ci skip] * New translations simple_form.en.yml (Vietnamese) [ci skip] * New translations en.json (Turkish) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.yml (Spanish, Argentina) [ci skip] * New translations en.json (French) [ci skip] * New translations en.yml (Vietnamese) [ci skip] * New translations en.json (French) [ci skip] * New translations en.yml (Galician) [ci skip] * New translations en.yml (Galician) [ci skip] * New translations en.yml (Catalan) [ci skip] * New translations en.yml (Occitan) [ci skip] * New translations en.json (Occitan) [ci skip] * New translations en.yml (Polish) [ci skip] * New translations en.yml (Greek) [ci skip] * New translations en.yml (Albanian) [ci skip] * New translations en.json (German) [ci skip] * New translations en.json (German) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations en.yml (German) [ci skip] * New translations devise.en.yml (German) [ci skip] * New translations en.yml (Icelandic) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Italian) [ci skip] * New translations en.yml (Portuguese) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations simple_form.en.yml (Armenian) [ci skip] * New translations simple_form.en.yml (Armenian) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations en.json (Chinese Simplified) [ci skip] * New translations en.json (Chinese Simplified) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations en.yml (Occitan) [ci skip] * New translations simple_form.en.yml (Occitan) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.yml (Malayalam) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.json (Vietnamese) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.yml (Malayalam) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.yml (Malayalam) [ci skip] * New translations simple_form.en.yml (Malayalam) [ci skip] * New translations en.json (Chinese Traditional) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.yml (Malayalam) [ci skip] * New translations devise.en.yml (Chinese Traditional) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations devise.en.yml (Chinese Traditional) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations devise.en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Malayalam) [ci skip] * New translations devise.en.yml (Chinese Traditional) [ci skip] * New translations en.json (Dutch) [ci skip] * New translations en.yml (Dutch) [ci skip] * New translations en.yml (Dutch) [ci skip] * New translations simple_form.en.yml (Dutch) [ci skip] * New translations en.yml (Dutch) [ci skip] * New translations simple_form.en.yml (Dutch) [ci skip] * New translations en.yml (Dutch) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.yml (Malayalam) [ci skip] * New translations en.yml (Malayalam) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.yml (Indonesian) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations activerecord.en.yml (Kabyle) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.json (Croatian) [ci skip] * New translations en.json (Croatian) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations en.json (Esperanto) [ci skip] * New translations en.json (Esperanto) [ci skip] * i18n-tasks normalize * yarn manage:translations
2020-12-23Fix BatchedRemoveStatusService not working without ES in rails console (#15408)ThibG
Not a huge deal but may cause surprising failures in custom scripts and development. Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-22Improve account deletion performances further (#15407)ThibG
* Delete status records by batches of 50 * Do not precompute values that are only used once * Do not generate redis events for removal of public toots older than two weeks * Filter reported toots a priori for polls and status deletion * Do not process reblogs when cleaning up public timelines As in Mastodon proper, reblogs don't appear in public TLs * Clean the deleted account's own feed in one go * Refactor Account#clean_feed_manager and List#clean_feed_manager * Delete instead of destroy a few more associations * Fix preloading Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-22Fix batch order warnings in BatchedRemoveStatusService (#15409)ThibG
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-22Fix external user creation failing when invite request text is required (#15405)ThibG
* Fix external user creation failing when invite request text is required Also fixes tootctl-based user creation. * Add test about invites when invite request text is otherwise required Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-22Fix unnecessary queries when batch-removing statuses, 100x faster (#15387)Eugen Rochko
2020-12-21Merge branch 'master' into glitch-soc/merge-upstreamClaire
2020-12-21Fix some notifications not being deleted on poll/status deletion (#15402)ThibG
* Fix deleting polls not deleting notifications * Fix fav notification deletion when deleting a toot * Refactor DeleteAccountService spec * Add DeleteAccountService tests for other associations and notifications * Add favourite handling spec in status removal Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-21Fix invitation links not working when invite request text is required (#15385)ThibG
Fixes #15383 Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-20Fix AccountDeletionWorker crashing and clogging sidekiq queues (#15380)ThibG
* Fix account deletion workers being queued multiple times for a single account * Fix poll votes being unnecessarily instantiated on poll deletion * Fix favourites being unnecessarily instantiated on status deletion * Remove inaccurate comments * Delete polls instead of destroying them Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-19[Glitch] Fix styling issue on /about when server admin has a long usernameThibG
Port 47c6c54d31fe43cdda2fab55d39ad5f99c0538be to glitch-soc Co-authored-by: Claire <claire.github-309c@sitedethib.com> Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2020-12-19[Glitch] Change notification permission handlingThibG
Port 79efcf8aad17b8bc47d98592151fbd24b977cbeb to glitch-soc Co-authored-by: Claire <claire.github-309c@sitedethib.com> Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2020-12-19Merge branch 'master' into glitch-soc/merge-upstreamClaire
Conflicts: - `app/services/resolve_url_service.rb`: The private toot search by URL hack has been revamped upstream. Took upstream's version.
2020-12-19New Crowdin updates (#15353)Eugen Rochko
* New translations en.json (Danish) [ci skip] * New translations en.yml (Danish) [ci skip] * New translations simple_form.en.yml (Danish) [ci skip] * New translations doorkeeper.en.yml (Danish) [ci skip] * New translations en.yml (German) [ci skip] * New translations simple_form.en.yml (German) [ci skip] * New translations en.json (Greek) [ci skip] * New translations simple_form.en.yml (Czech) [ci skip] * New translations doorkeeper.en.yml (Greek) [ci skip] * New translations en.json (Basque) [ci skip] * New translations en.yml (Basque) [ci skip] * New translations simple_form.en.yml (Basque) [ci skip] * New translations doorkeeper.en.yml (Basque) [ci skip] * New translations en.json (Finnish) [ci skip] * New translations doorkeeper.en.yml (Czech) [ci skip] * New translations en.yml (Czech) [ci skip] * New translations simple_form.en.yml (Spanish) [ci skip] * New translations en.json (Bulgarian) [ci skip] * New translations doorkeeper.en.yml (Spanish) [ci skip] * New translations en.json (Arabic) [ci skip] * New translations en.yml (Arabic) [ci skip] * New translations simple_form.en.yml (Arabic) [ci skip] * New translations doorkeeper.en.yml (Arabic) [ci skip] * New translations en.yml (Bulgarian) [ci skip] * New translations simple_form.en.yml (Bulgarian) [ci skip] * New translations doorkeeper.en.yml (Bulgarian) [ci skip] * New translations en.json (Catalan) [ci skip] * New translations en.yml (Catalan) [ci skip] * New translations simple_form.en.yml (Catalan) [ci skip] * New translations doorkeeper.en.yml (Catalan) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations doorkeeper.en.yml (Breton) [ci skip] * New translations simple_form.en.yml (Breton) [ci skip] * New translations en.json (Kannada) [ci skip] * New translations en.yml (Breton) [ci skip] * New translations en.json (Hindi) [ci skip] * New translations en.yml (Hindi) [ci skip] * New translations doorkeeper.en.yml (Hindi) [ci skip] * New translations en.json (Malay) [ci skip] * New translations en.yml (Malay) [ci skip] * New translations en.json (Telugu) [ci skip] * New translations en.yml (Telugu) [ci skip] * New translations en.json (Welsh) [ci skip] * New translations en.json (Breton) [ci skip] * New translations en.yml (Welsh) [ci skip] * New translations simple_form.en.yml (Welsh) [ci skip] * New translations doorkeeper.en.yml (Welsh) [ci skip] * New translations doorkeeper.en.yml (Esperanto) [ci skip] * New translations en.json (Uyghur) [ci skip] * New translations en.yml (Uyghur) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations en.yml (Malayalam) [ci skip] * New translations simple_form.en.yml (Malayalam) [ci skip] * New translations doorkeeper.en.yml (Malayalam) [ci skip] * New translations en.yml (Kannada) [ci skip] * New translations en.yml (Serbian (Latin)) [ci skip] * New translations en.json (Taigi) [ci skip] * New translations simple_form.en.yml (Kabyle) [ci skip] * New translations doorkeeper.en.yml (Kabyle) [ci skip] * New translations en.json (Ido) [ci skip] * New translations en.yml (Ido) [ci skip] * New translations simple_form.en.yml (Ido) [ci skip] * New translations doorkeeper.en.yml (Ido) [ci skip] * New translations en.yml (Taigi) [ci skip] * New translations en.json (Silesian) [ci skip] * New translations en.yml (Silesian) [ci skip] * New translations en.yml (Kabyle) [ci skip] * New translations en.json (Asturian) [ci skip] * New translations en.json (Serbian (Latin)) [ci skip] * New translations en.yml (Asturian) [ci skip] * New translations simple_form.en.yml (Asturian) [ci skip] * New translations doorkeeper.en.yml (Asturian) [ci skip] * New translations en.json (Occitan) [ci skip] * New translations simple_form.en.yml (Occitan) [ci skip] * New translations doorkeeper.en.yml (Occitan) [ci skip] * New translations en.yml (Latvian) [ci skip] * New translations en.yml (Sanskrit) [ci skip] * New translations simple_form.en.yml (Serbian (Latin)) [ci skip] * New translations doorkeeper.en.yml (Serbian (Latin)) [ci skip] * New translations en.json (Corsican) [ci skip] * New translations simple_form.en.yml (Corsican) [ci skip] * New translations doorkeeper.en.yml (Corsican) [ci skip] * New translations en.json (Sanskrit) [ci skip] * New translations en.json (Spanish, Argentina) [ci skip] * New translations en.json (Latvian) [ci skip] * New translations en.json (Chinese Traditional, Hong Kong) [ci skip] * New translations simple_form.en.yml (Sorani (Kurdish)) [ci skip] * New translations en.yml (Sorani (Kurdish)) [ci skip] * New translations en.json (Sorani (Kurdish)) [ci skip] * New translations en.yml (Occitan) [ci skip] * New translations simple_form.en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations simple_form.en.yml (Esperanto) [ci skip] * New translations en.yml (Sardinian) [ci skip] * New translations en.yml (Esperanto) [ci skip] * New translations en.json (Persian) [ci skip] * New translations en.yml (Corsican) [ci skip] * New translations doorkeeper.en.yml (Indonesian) [ci skip] * New translations en.yml (Persian) [ci skip] * New translations simple_form.en.yml (Persian) [ci skip] * New translations en.json (Sardinian) [ci skip] * New translations simple_form.en.yml (Sardinian) [ci skip] * New translations en.json (Tamil) [ci skip] * New translations en.json (Esperanto) [ci skip] * New translations en.json (Thai) [ci skip] * New translations simple_form.en.yml (Thai) [ci skip] * New translations en.yml (Thai) [ci skip] * New translations doorkeeper.en.yml (Standard Moroccan Tamazight) [ci skip] * New translations en.yml (Tatar) [ci skip] * New translations en.json (Kabyle) [ci skip] * New translations en.json (Tatar) [ci skip] * New translations en.yml (Standard Moroccan Tamazight) [ci skip] * New translations en.json (Standard Moroccan Tamazight) [ci skip] * New translations doorkeeper.en.yml (Sardinian) [ci skip] * New translations doorkeeper.en.yml (Sorani (Kurdish)) [ci skip] * New translations doorkeeper.en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations doorkeeper.en.yml (Persian) [ci skip] * New translations en.yml (Tamil) [ci skip] * New translations doorkeeper.en.yml (Estonian) [ci skip] * New translations doorkeeper.en.yml (Norwegian Nynorsk) [ci skip] * New translations en.yml (Croatian) [ci skip] * New translations simple_form.en.yml (Croatian) [ci skip] * New translations doorkeeper.en.yml (Croatian) [ci skip] * New translations en.json (Norwegian Nynorsk) [ci skip] * New translations en.yml (Norwegian Nynorsk) [ci skip] * New translations simple_form.en.yml (Norwegian Nynorsk) [ci skip] * New translations en.json (Kazakh) [ci skip] * New translations doorkeeper.en.yml (Thai) [ci skip] * New translations en.yml (Kazakh) [ci skip] * New translations simple_form.en.yml (Kazakh) [ci skip] * New translations doorkeeper.en.yml (Kazakh) [ci skip] * New translations en.json (Estonian) [ci skip] * New translations en.yml (Estonian) [ci skip] * New translations simple_form.en.yml (Estonian) [ci skip] * New translations en.json (Croatian) [ci skip] * New translations doorkeeper.en.yml (Marathi) [ci skip] * New translations simple_form.en.yml (Tamil) [ci skip] * New translations simple_form.en.yml (Spanish, Mexico) [ci skip] * New translations doorkeeper.en.yml (Tamil) [ci skip] * New translations en.yml (Spanish, Argentina) [ci skip] * New translations simple_form.en.yml (Spanish, Argentina) [ci skip] * New translations doorkeeper.en.yml (Spanish, Argentina) [ci skip] * New translations en.json (Spanish, Mexico) [ci skip] * New translations en.yml (Spanish, Mexico) [ci skip] * New translations doorkeeper.en.yml (Spanish, Mexico) [ci skip] * New translations en.json (Bengali) [ci skip] * New translations en.yml (Bengali) [ci skip] * New translations simple_form.en.yml (Bengali) [ci skip] * New translations en.json (Marathi) [ci skip] * New translations en.yml (Marathi) [ci skip] * New translations simple_form.en.yml (Standard Moroccan Tamazight) [ci skip] * New translations en.json (French) [ci skip] * New translations en.json (Korean) [ci skip] * New translations en.json (Spanish, Argentina) [ci skip] * New translations en.json (Spanish, Argentina) [ci skip] * New translations en.json (Catalan) [ci skip] * New translations en.json (Galician) [ci skip] * New translations en.yml (Galician) [ci skip] * New translations en.json (Vietnamese) [ci skip] * New translations en.json (Russian) [ci skip] * New translations en.json (Russian) [ci skip] * New translations en.json (Polish) [ci skip] * New translations en.json (Albanian) [ci skip] * New translations en.yml (Albanian) [ci skip] * New translations en.json (Greek) [ci skip] * New translations en.json (Albanian) [ci skip] * New translations en.json (Spanish) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations en.json (Persian) [ci skip] * New translations en.json (Icelandic) [ci skip] * New translations en.yml (Icelandic) [ci skip] * New translations en.json (Icelandic) [ci skip] * New translations en.json (Hungarian) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations en.yml (Portuguese, Brazilian) [ci skip] * New translations simple_form.en.yml (Portuguese, Brazilian) [ci skip] * New translations en.json (Portuguese, Brazilian) [ci skip] * New translations en.yml (Portuguese, Brazilian) [ci skip] * New translations simple_form.en.yml (Portuguese, Brazilian) [ci skip] * New translations en.yml (Portuguese, Brazilian) [ci skip] * New translations en.yml (Vietnamese) [ci skip] * New translations en.yml (Thai) [ci skip] * New translations en.yml (Thai) [ci skip] * New translations en.json (Thai) [ci skip] * New translations en.yml (Thai) [ci skip] * New translations en.yml (Corsican) [ci skip] * New translations en.json (Corsican) [ci skip] * New translations simple_form.en.yml (Corsican) [ci skip] * New translations en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations en.json (Chinese Traditional, Hong Kong) [ci skip] * New translations en.yml (Chinese Traditional, Hong Kong) [ci skip] * New translations en.yml (Portuguese) [ci skip] * New translations en.json (Portuguese) [ci skip] * New translations en.yml (Portuguese) [ci skip] * New translations en.json (Portuguese) [ci skip] * New translations en.json (Japanese) [ci skip] * New translations en.json (Galician) [ci skip] * New translations en.yml (Galician) [ci skip] * New translations en.json (Italian) [ci skip] * New translations en.yml (Kabyle) [ci skip] * New translations en.json (Spanish, Mexico) [ci skip] * New translations doorkeeper.en.yml (Spanish, Mexico) [ci skip] * New translations doorkeeper.en.yml (Spanish) [ci skip] * New translations simple_form.en.yml (Spanish) [ci skip] * New translations en.json (Spanish) [ci skip] * New translations en.json (Spanish, Mexico) [ci skip] * New translations en.yml (Spanish, Mexico) [ci skip] * New translations simple_form.en.yml (Spanish, Mexico) [ci skip] * New translations doorkeeper.en.yml (Spanish, Mexico) [ci skip] * New translations en.yml (Vietnamese) [ci skip] * New translations en.json (Spanish) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations doorkeeper.en.yml (Spanish) [ci skip] * New translations simple_form.en.yml (Spanish) [ci skip] * New translations en.yml (Vietnamese) [ci skip] * New translations simple_form.en.yml (Spanish, Mexico) [ci skip] * New translations en.yml (Spanish, Argentina) [ci skip] * New translations en.json (Spanish, Mexico) [ci skip] * New translations en.yml (Spanish, Mexico) [ci skip] * New translations doorkeeper.en.yml (Spanish, Mexico) [ci skip] * New translations en.yml (Vietnamese) [ci skip] * New translations en.yml (Greek) [ci skip] * New translations en.yml (Catalan) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations doorkeeper.en.yml (Spanish) [ci skip] * New translations simple_form.en.yml (Spanish) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations en.json (Spanish) [ci skip] * New translations en.yml (Spanish, Argentina) [ci skip] * New translations en.yml (Icelandic) [ci skip] * New translations en.yml (Swedish) [ci skip] * New translations en.yml (Portuguese) [ci skip] * New translations en.yml (Portuguese) [ci skip] * New translations en.yml (Italian) [ci skip] * New translations en.yml (Italian) [ci skip] * New translations en.yml (Spanish) [ci skip] * New translations en.yml (Polish) [ci skip] * New translations en.yml (Polish) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations en.json (Indonesian) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations en.json (Indonesian) [ci skip] * New translations en.yml (Indonesian) [ci skip] * New translations en.yml (French) [ci skip] * New translations en.yml (Indonesian) [ci skip] * New translations simple_form.en.yml (Indonesian) [ci skip] * New translations en.yml (Albanian) [ci skip] * New translations en.yml (Thai) [ci skip] * i18n-tasks normalize * yarn manage:translations
2020-12-19Fix missing description on enable bootstrap timeline accounts toggle in ↵Eugen Rochko
admin UI (#15367)
2020-12-18Fix resolving accounts sometimes creating duplicate records for a given AP ↵ThibG
id (#15364) * Fix ResolveAccountService accepting mismatching acct: URI * Set attributes that should be updated regardless of suspension * Fix key fetching * Automatically merge remote accounts with duplicate `uri` * Add tests * Add "tootctl accounts fix-duplicates" Finds duplicate accounts sharing a same ActivityPub `id`, re-fetch them and merge them under the canonical `acct:` URI. Co-authored-by: Claire <claire.github-309c@sitedethib.com>