Claire
53d99e7426
Fix URL scanning in note length validator and preview card fetching ( #15827 )
...
* Add tests
* Fix URL scanning in note length validator and preview card fetching
2021-03-04 00:12:26 +01:00
Claire
a33f8f787a
Update twitter-text from 1.14 to 3.1.0 and fix toot character counting ( #15382 )
...
* Update twitter-text from 1.14 to 3.1.0
* Disable emoji parsing
* Properly depend on twitter-text for url detection
* Fix some URLs being wrongly detected client-side
* Add test for server-side validation of non-autolinkable URLs
* Fix server-side status length counting
2021-03-02 12:02:56 +01:00
Claire
9208810829
Add borders to 📱 and 📲 emojis ( #15794 )
2021-03-01 21:22:54 +01:00
Eugen Rochko
28399e88b5
Add POST /api/v1/emails/confirmations
to REST API ( #15816 )
...
Only available to the application the user originally signed-up with
2021-03-01 18:39:47 +01:00
Eugen Rochko
ade70733f7
Add details
to error response for POST /api/v1/accounts
in REST API ( #15803 )
2021-03-01 04:59:13 +01:00
Claire
7f203d6a7b
Fix WebUI crashing when SVG support is disabled ( #15809 )
...
Fixes #14910
2021-02-28 01:01:34 +01:00
Claire
d1deaee77f
Fix crash on receiving requests with missing Digest header ( #15782 )
...
* Fix crash on receiving requests with missing Digest header
Return an error pointing out that Digest is missing, instead of crashing.
Fixes #15743
* Fix from review feedback
2021-02-26 17:40:27 +01:00
Claire
37d5bae34f
Add inline description of moderation actions in moderation interface ( #15792 )
2021-02-24 16:53:16 +01:00
Claire
7411520821
Change ResolveAccountService's handling of skip_webfinger ( #15750 )
...
* Change ResolveAccountService's handling of skip_webfinger
Change it so it never makes any webfinger query, as the name would imply.
* Add tests
* Change FollowService to not take an URI for target_account
* Restore domain-block check in FollowService
* Fix tests
2021-02-24 06:32:13 +01:00
Claire
6ff52096d7
Fix server rules not being displayed if extended server discription isn't set ( #15778 )
2021-02-22 18:26:24 +01:00
abcang
6faf654c43
Fix default searchTokens ( #15775 )
2021-02-22 11:26:08 +01:00
Eugen Rochko
4930e71ae7
Add server rules ( #15769 )
2021-02-21 19:50:12 +01:00
Justin Tracey
cbcf083cb4
replace all instances of "ends_with?" with "end_with?" ( #15745 )
...
The "ends_with?" method is just a Rails alias of Ruby's "end_with?" method.
Using the latter makes the code less brittle.
2021-02-19 09:56:14 +01:00
Eugen Rochko
e4ba5635ee
Add GET /api/v1/accounts/lookup
REST API ( #15740 )
2021-02-16 15:28:32 +01:00
Eugen Rochko
ecfcdc856b
Refactor Api::Web::SettingsController ( #15717 )
2021-02-12 07:19:15 +01:00
Eugen Rochko
0baa928e56
Fix YouTube embeds failing due to YouTube serving wrong OEmbed URLs ( #15716 )
2021-02-12 05:45:38 +01:00
kaias1jp
7004e88738
Fixed WebUI crash when a status opened in the media modal is deleted ( #15701 )
...
* Fixed picture in picture compatibility error in WebUI when status is deleted
* Revert "Fixed picture in picture compatibility error in WebUI when status is deleted"
This reverts commit f003b7d9d88688e9504f7dfae1545d7522fcfd98.
* Close the modal display of the image when status is deleted
* Fixed the case statement before the default statement
* Removed unnecessary parts
2021-02-11 19:59:47 +01:00
Takeshi Umeda
96fe153669
fix typo ( #15705 )
2021-02-11 06:22:11 +01:00
Cecylia Bocovich
6c300f08e5
Onion service related changes to HTTPS handling ( #15560 )
...
* Enable secure cookie flag for https only
* Disable force_ssl for .onion hosts only
Co-authored-by: Aiden McClelland <me@drbonez.dev>
2021-02-11 04:40:13 +01:00
Jeong Arm
b2572f0b29
Use custom mascot on static share page ( #15687 )
...
* Use custom mascot on static share page
* Use full_asset_url
2021-02-11 02:18:56 +01:00
Claire
00fb4ecf6b
Fix URI of repeat follow requests not being recorded ( #15662 )
...
* Fix URI of repeat follow requests not being recorded
In case we receive a “repeat” or “duplicate” follow request, we automatically
fast-forward the accept with the latest received Activity `id`, but we don't
record it.
In general, a “repeat” or “duplicate” follow request may happen if for some
reason (e.g. inconsistent handling of Block or Undo Accept activities, an
instance being brought back up from the dead, etc.) the local instance thought
the remote actor were following them while the remote actor thought otherwise.
In those cases, the remote instance does not know about the older Follow
activity `id`, so keeping that record serves no purpose, but knowing the most
recent one is useful if the remote implementation at some point refers to it
by `id` without inlining it.
* Add tests
2021-02-11 01:53:44 +01:00
Mélanie Chauvel
e48633f3cf
Slightly reorder three dots menu on toots to make it more intuitive ( #15647 )
...
* Slightly reorder three dots menu on toots to make it more intuitive
- Make “Pin to profile” always appear at the same place
- Add separator to group “Bookmark” and “Pin to profile”
- Fix separator being the first item in some cases
* Fix missing semicolon and keep status_action_bar.js and action_bar.js in sync
2021-02-11 01:05:04 +01:00
Claire
c848e85068
Add dropdown for boost privacy in boost confirmation modal ( #15704 )
...
* Various dropdown code quality fixes
* Prepare support for privacy selection in boost modal
* Add dropdown for boost privacy in boost confirmation modal
2021-02-11 00:53:12 +01:00
Claire
4028717020
Create instance actor if it hasn't been properly seeded ( #15693 )
...
An uncommon but somewhat difficult to digagnose issue is dealing with
improperly-seeded databases. In such cases, instance-signed fetches will
fail with a ActiveRecord::RecordNotFound error, usually caught and handled
as generic 404, leading people to think the remote resource itself has not
been found, while it's the local instance actor that does not exist.
This commit changes the code so that failure to find the instance actor
automatically creates a new one, so that improperly-seeded databases do
not cause any issue.
2021-02-09 18:12:54 +01:00
Eugen Rochko
826a5cc624
Change max. image dimensions to 1920x1080px (1080p) ( #15690 )
...
* Change max. image size to 1920x1080px
* Change it in web UI too
2021-02-09 01:21:06 +01:00
ThibG
dd2c80e1d1
Fix race conditions on account migration creation ( #15597 )
...
* Atomically check for processing lock in Move handler
* Prevent race condition when creating account migrations
Fixes #15595
* Add tests
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-02-02 14:49:57 +01:00
ThibG
e57047f213
Change custom emoji to be animated when hovering container ( #15637 )
...
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-01-31 21:25:31 +01:00
abcang
2b9d71cc18
Improved performance of notification preloading ( #15640 )
...
* Improved performance of notification preloading
* Remove Cacheable from Notification
* Fix test
2021-01-31 21:24:57 +01:00
abcang
82eb3a575e
Fix N+1 query when rendering with StatusSerializer ( #15641 )
2021-01-31 21:24:17 +01:00
abcang
df708569ac
Fix react/jsx-no-duplicate-props ( #15636 )
2021-01-28 18:24:22 +01:00
Takeshi Umeda
3830dbc6fc
Fix first return value of FetchLinkCardService.html method ( #15630 )
2021-01-25 09:22:41 +01:00
luigi
1256c05a99
Use Enumerable#filter_map in more places ( #15527 )
2021-01-22 16:28:15 +01:00
ThibG
603ce7e1f5
Add “translate” class to other user strings ( #15611 )
...
* Add “translate” class to other user strings
Follow-up to #15610 .
Allow Google Translate to work on more user content:
- poll options
- reply indicator (contents of the status being replied to)
- directory account cards
- account note in follow requests list
* Fix incorrect styling of account bio
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-01-22 10:09:23 +01:00
luigi
c19fe86d66
Optimize some regex matching ( #15528 )
...
* Use Regex#match?
* Replace =~ too
* Avoid to call match? from Nil
* Keep value of Regexp.last_match
2021-01-22 10:09:08 +01:00
ThibG
c9d9e96e75
Fix Google Translate breaking web interface ( #15610 )
...
- marks the page as a whole as untranslatable
- still marks user text as translatable
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-01-21 14:29:54 +01:00
ThibG
0306d0d4b0
Fix sign-up restrictions based on IP addresses not being enforced ( #15607 )
...
Fixes #15606
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-01-21 06:18:30 +01:00
ThibG
320355ce28
Fix /activity endpoint not require signature in authorized fetch mode ( #15592 )
...
Fixes #15589
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-01-19 06:47:36 +01:00
ThibG
2582047c36
Use Rails' index_by where it makes sense ( #15542 )
...
* Use Rails' index_by where it makes sense
* Fix tests
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-01-12 09:27:38 +01:00
ThibG
42a9b50d36
Fix processing of incoming Block activities ( #15546 )
...
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-12 09:25:01 +01:00
Levi Bard
87d45a9cd8
Fix muting users with duration via the REST api ( #15516 )
2021-01-10 12:47:21 +01:00
luigi
944b059f50
Optimize map { ... }.compact calls ( #15513 )
...
* Optimize map { ... }.compact
using Enumerable#filter_map, supported since Ruby 2.7
* Add poyfill for Enumerable#filter_map
2021-01-10 00:32:01 +01:00
ThibG
f1cf85d5a0
Fix OCR lang data failing to load ( #15519 )
...
Fixes #15472
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-01-09 03:48:50 +01:00
ThibG
8a54766750
Skip processing Update activities on unknown accounts ( #15514 )
...
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-08 12:26:29 +01:00
abcang
41f9aa5dbb
Fix rubocop config and warnings ( #15503 )
...
* 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-07 09:40:55 +01:00
Takeshi Umeda
8c0b9e37d0
Fix defaultProps of frameRate to string ( #15493 )
2021-01-05 20:00:42 +01:00
Takeshi Umeda
7e9a91ae63
Fix missing key in list timeline policy ( #15494 )
2021-01-05 19:57:50 +01:00
Takeshi Umeda
ccb7aa93c7
Fix getting-started footer in single column mode not being clickable in Safari ( #15496 )
2021-01-05 19:57:32 +01:00
ThibG
e56b3f03aa
Fix profile update not being sent on profile/header picture deletion ( #15461 )
...
Fixes #15460
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-30 23:19:18 +01:00
Takeshi Umeda
74f34c1291
Fix logo button style more ( #15458 )
2020-12-30 23:18:39 +01:00
Takeshi Umeda
e90b31f176
Fix expand video on public page ( #15469 )
2020-12-30 23:18:11 +01:00
ThibG
82d014fd08
Fix being able to import more than allowed number of follows ( #15384 )
...
* 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-26 23:52:46 +01:00
Eugen Rochko
7f1d08e0e1
New Crowdin updates ( #15413 )
...
* 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-26 23:51:46 +01:00
Takeshi Umeda
0ffece77ab
Fix logo button style ( #15428 )
...
* Fix bell button rtl style
* Remove size and style props from button component
* Fix logo button style
* Update jest snapshot
2020-12-26 23:50:34 +01:00
Eugen Rochko
060d0a1d6b
Fix error when changing ACL on missing objects during suspension ( #15420 )
2020-12-24 15:53:45 +01:00
Eugen Rochko
0b88105e3a
Fix undefined method error when batch-removing statuses with ElasticSearch on ( #15421 )
2020-12-24 15:53:26 +01:00
Takeshi Umeda
743c7504f5
Fix unfollow action button style ( #15418 )
2020-12-23 23:47:50 +01:00
ThibG
ca5b51153a
Fix media modal buttons not showing up on mobile ( #15417 )
...
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-23 19:55:23 +01:00
trwnh
33e4e1cfe4
Use existing FeaturedTag serializer and delete AccountFeaturedTag serializer ( #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-23 16:43:38 +01:00
ThibG
92243f1306
Fix mentions not being deleted efficiently ( #15416 )
...
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-23 16:43:11 +01:00
Eugen Rochko
e4f5e9c029
Fix trying to privatize empty media attachments ( #15414 )
2020-12-23 15:47:03 +09:00
ThibG
52955fdcee
Improve performances of deleting favourites when deleting accounts ( #15412 )
...
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-23 01:35:02 +01:00
Eugen Rochko
fd6bfd2b0f
New Crowdin updates ( #15369 )
...
* 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-23 00:10:58 +01:00
ThibG
c1f03bedec
Fix BatchedRemoveStatusService not working without ES in rails console ( #15408 )
...
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-23 00:04:52 +01:00
ThibG
8d75aa630f
Improve account deletion performances further ( #15407 )
...
* 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-22 23:57:46 +01:00
ThibG
58e0d8924b
Fix batch order warnings in BatchedRemoveStatusService ( #15409 )
...
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-22 20:24:55 +01:00
ThibG
f894bb9220
Fix external user creation failing when invite request text is required ( #15405 )
...
* 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-22 17:14:32 +01:00
Eugen Rochko
3489758ff2
Fix unnecessary queries when batch-removing statuses, 100x faster ( #15387 )
2020-12-22 17:13:55 +01:00
ThibG
806f7ea54f
Fix some notifications not being deleted on poll/status deletion ( #15402 )
...
* 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-21 18:22:17 +01:00
ThibG
ad1a3c6435
Fix invitation links not working when invite request text is required ( #15385 )
...
Fixes #15383
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-21 00:47:02 +01:00
ThibG
bbf0e7107c
Fix AccountDeletionWorker crashing and clogging sidekiq queues ( #15380 )
...
* 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-20 18:25:00 +01:00
Eugen Rochko
382ecc0197
New Crowdin updates ( #15353 )
...
* 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-19 00:21:01 +01:00
Eugen Rochko
46b249ece6
Fix missing description on enable bootstrap timeline accounts toggle in admin UI ( #15367 )
2020-12-19 00:19:15 +01:00
ThibG
0b3e9c1e4c
Fix resolving accounts sometimes creating duplicate records for a given AP 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>
2020-12-18 23:26:26 +01:00
ThibG
82b5e454dc
Fix styling issue on /about when server admin has a long username ( #15357 )
...
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-18 09:43:33 +01:00
Eugen Rochko
e66964d8f0
Fix follow limit preventing re-following of a moved account ( #14207 )
2020-12-18 09:18:31 +01:00
Eugen Rochko
832b70df82
Fix styles for RTL languages and the light theme ( #15356 )
2020-12-18 08:47:36 +01:00
Eugen Rochko
816df80b86
Add option to obfuscate domain name in public list of domain blocks ( #15355 )
...
- Replace the middle of the domain with * characters (except for periods)
- Add SHA-256 digest of the domain name in tooltip
2020-12-18 08:30:41 +01:00
ThibG
509ab82fb2
Improve searching for private toots from URL ( #14856 )
...
* Improve searching for private toots from URL
Most of the time, when sharing toots, people use the toot URL rather than
the toot URI, which makes sense since it is the user-facing URL.
In Mastodon's case, the URL and URI are different, and Mastodon does not
have an index on URL, which means searching a private toot by URL is done
with a slow query that will only succeed for very recent toots.
This change gets rid of the slow query, and attempts to guess the URI from
URL instead, as Mastodon's are predictable.
* Add tests
* Only return status with guessed uri if url matches
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-17 06:51:49 +01:00
Eugen Rochko
d5a3299b4d
New Crowdin updates ( #15220 )
...
* New translations doorkeeper.en.yml (Slovak)
[ci skip]
* New translations simple_form.en.yml (Slovak)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations doorkeeper.en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Polish)
[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 doorkeeper.en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations en.yml (Georgian)
[ci skip]
* New translations doorkeeper.en.yml (Japanese)
[ci skip]
* New translations doorkeeper.en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (German)
[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 doorkeeper.en.yml (Greek)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations doorkeeper.en.yml (German)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.json (Finnish)
[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 doorkeeper.en.yml (Czech)
[ci skip]
* New translations simple_form.en.yml (Czech)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations doorkeeper.en.yml (Basque)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations doorkeeper.en.yml (Hungarian)
[ci skip]
* New translations en.json (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 simple_form.en.yml (Armenian)
[ci skip]
* New translations simple_form.en.yml (Hungarian)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[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 en.yml (Hebrew)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations doorkeeper.en.yml (Finnish)
[ci skip]
* New translations simple_form.en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations simple_form.en.yml (Galician)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations simple_form.en.yml (Korean)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations simple_form.en.yml (Portuguese)
[ci skip]
* New translations en.json (Standard Moroccan Tamazight)
[ci skip]
* New translations en.json (Standard Moroccan Tamazight)
[ci skip]
* New translations en.json (Standard Moroccan Tamazight)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations simple_form.en.yml (Italian)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations simple_form.en.yml (Hungarian)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations simple_form.en.yml (Swedish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations en.yml (Sardinian)
[ci skip]
* New translations simple_form.en.yml (Sardinian)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations simple_form.en.yml (Spanish)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Esperanto)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations simple_form.en.yml (Albanian)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Greek)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Mexico)
[ci skip]
* New translations simple_form.en.yml (Spanish, Mexico)
[ci skip]
* New translations en.yml (Spanish, Mexico)
[ci skip]
* New translations en.json (Spanish, Mexico)
[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 (Vietnamese)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Mexico)
[ci skip]
* New translations simple_form.en.yml (Spanish, Mexico)
[ci skip]
* New translations en.yml (Spanish, Mexico)
[ci skip]
* New translations en.json (Spanish, Mexico)
[ci skip]
* New translations en.yml (Swedish)
[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 (Japanese)
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Hungarian)
[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 (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Sardinian)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations devise.en.yml (Hungarian)
[ci skip]
* New translations simple_form.en.yml (Sardinian)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Mexico)
[ci skip]
* New translations simple_form.en.yml (Spanish, Mexico)
[ci skip]
* New translations en.yml (Spanish, Mexico)
[ci skip]
* New translations en.json (Spanish, Mexico)
[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 (French)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Mexico)
[ci skip]
* New translations simple_form.en.yml (Spanish, Mexico)
[ci skip]
* New translations en.yml (Spanish, Mexico)
[ci skip]
* New translations en.json (Spanish, Mexico)
[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 (German)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.json (Standard Moroccan Tamazight)
[ci skip]
* New translations en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Mexico)
[ci skip]
* New translations simple_form.en.yml (Spanish, Mexico)
[ci skip]
* New translations en.yml (Spanish, Mexico)
[ci skip]
* New translations en.json (Spanish, Mexico)
[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 (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations en.yml (Armenian)
[ci skip]
* New translations en.yml (Armenian)
[ci skip]
* New translations simple_form.en.yml (Armenian)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations simple_form.en.yml (Persian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* ran `yarn manage:translations`
* ran `i18n-tasks normalize`
* Ran `yarn manage:translations`
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* Ran `i18n-tasks normalize`
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2020-12-16 03:24:55 +01:00
ThibG
5a4d40dcfa
Change notification permission handling ( #15176 )
...
* Change notification permission handling
- allow changing individual alert settings even if permission is not explicitly
enabled (asks for permission on toggle)
- persist permission request banner dismissal across sessions through settings
* Add additional, more discrete message to grant permissions
* Change permission granting button design according to reviews
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-15 18:43:54 +01:00
ThibG
02bd1060d8
Fix admins being able to suspend their instance actor ( #14567 )
...
* Fix admin being able to suspend their own instance account
* Add text about the instance's own actor in admin view
* Change instance actor notice from flash message to template
* Do not list local instance actor in account moderation list
2020-12-15 17:23:58 +01:00
Eugen Rochko
812f2bdb8f
Change RTL detection to rely on unicode-bidi paragraph by paragraph ( #14573 )
2020-12-15 12:56:43 +01:00
Eugen Rochko
76b0f84cd5
Add stoplight for object storage failures, return HTTP 503 ( #13043 )
2020-12-15 12:55:29 +01:00
Mashiro
9129058192
Add "invite request content" display in user account admin page ( #15265 )
...
* feat: display `invite_request_text` in admin's user account page
* fix: move invite_request to the bottom of accounts page
* fix: remove time display, remove formate, change code terminology
* fix: remove escape
2020-12-15 06:28:14 +01:00
ThibG
3debd888a6
Add indication to admin UI of whether a report has been forwarded ( #13237 )
...
* Add indication to admin UI of whether a report has been forwarded
* Rework how forwarded status is displayed
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-15 04:30:15 +01:00
Marcin Mikołajczak
429d837f80
Add app shortcuts ( #15234 )
...
* Add app shortcuts
Signed-off-by: mkljczk <me@mkljczk.pl>
* Fix codeclimate issues
Signed-off-by: mkljczk <me@mkljczk.pl>
* Change shortcuts
Signed-off-by: mkljczk <me@mkljczk.pl>
* More consistent new-status icon
Signed-off-by: mkljczk <me@mkljczk.pl>
2020-12-15 02:04:56 +01:00
ThibG
64eaaff345
Add ability to require invite request text ( #15326 )
...
Fixes #15273
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-14 10:03:09 +01:00
ThibG
5749bd73ca
Fix dynamic updating of “Bootstrap timeline accounts” admin setting ( #15325 )
...
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-14 09:37:58 +01:00
Eugen Rochko
2d8ee84ed6
Change "Profile unavailable" string to "Account suspended" in web UI ( #15345 )
2020-12-14 09:08:09 +01:00
Eugen Rochko
df8874b24e
Fix performance on instances list in admin UI ( #15282 )
...
- Reduce duplicate queries
- Remove n+1 queries
- Add accounts count to detailed view
- Add separate action log entry for updating existing domain blocks
2020-12-14 09:06:34 +01:00
Eugen Rochko
c2ff16b1ed
Change number format on about page from full to shortened ( #15327 )
2020-12-14 05:09:14 +01:00
ThibG
e1ef5f3b31
Add honeypot fields and minimum fill-out time for sign-up form ( #15276 )
...
* Add honeypot fields to limit non-specialized spam
Add two honeypot fields: a fake website input and a fake password confirmation
one. The label/placeholder/aria-label tells not to fill them, and they are
hidden in CSS, so legitimate users should not fall into these.
This should cut down on some non-Mastodon-specific spambots.
* Require a 3 seconds delay before submitting the registration form
* Fix tests
* Move registration form time check to model validation
* Give people a chance to clear the honeypot fields
* Refactor honeypot translation strings
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-10 06:27:26 +01:00
ThibG
772f525c90
Fix notifications being unnecessarily redrawn on state change ( #15312 )
...
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-09 19:16:30 +01:00
trwnh
eb9be7be0c
rename replies_policy enumerables ( #15304 )
2020-12-09 04:34:17 +01:00
Takeshi Umeda
4de05a3606
Fix missing pictureInPicture prop in detailed status container ( #15309 )
2020-12-09 04:33:33 +01:00
Jeong Arm
46ad37d3a5
Fix open media hotkey ( #15308 )
...
* Fix open media hotkey
* Update status.js
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
2020-12-09 00:24:13 +01:00
Takeshi Umeda
14b5505c68
Fix the Open handler for PreviewCard ( #15305 )
2020-12-08 12:07:54 +01:00
ThibG
58a3eaccba
Fix column swiping animation logic ( #15301 )
...
From the start, swiping columns was highly unreliable because the logic
could change `ReactSwipeableViews`'s `animateTransitions` property
mid-swipe.
PR #11200 partially fixed this, but at the unintended cost of disabling the
swipe animation altogether.
This PR changes the logic behind `shouldAnimate` to only disable the swiping
animation at the end of a column change not initiated by `ReactSwipeableViews`.
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-07 20:07:24 +01:00
Eugen Rochko
7e7f69dfed
Fix unnecessary re-rendering of various components when typing in web UI ( #15286 )
2020-12-07 19:36:36 +01:00
Eugen Rochko
48534762cf
Fix slow distinct queries where grouped queries are faster ( #15287 )
...
About 2x speed-up on inboxes query
2020-12-07 12:08:30 +01:00