Commit graph

6554 commits

Author SHA1 Message Date
Claire
c5eabffe34 Change language to be carried over on reply (#18557)
In most cases, replies to a toot are written in the same language as the
toot being replied to.
2022-05-31 05:53:43 +02:00
Claire
8ce9a12526 Remove unnused otherAccounts property (#18556)
Leftover from before #11896
2022-05-30 17:10:13 +02:00
Eugen Rochko
02c4d029ff New Crowdin updates (#18507)
* New translations en.yml (Galician)

* New translations en.json (Galician)

* New translations en.yml (Esperanto)

* New translations en.json (Esperanto)

* New translations en.json (Dutch)

* New translations en.json (Dutch)

* New translations en.json (Dutch)

* New translations en.yml (Korean)

* New translations en.yml (Polish)

* New translations en.yml (Finnish)

* New translations en.yml (Hungarian)

* New translations en.yml (Armenian)

* New translations en.yml (Georgian)

* New translations en.yml (Lithuanian)

* New translations en.yml (Macedonian)

* New translations en.yml (Dutch)

* New translations en.yml (Norwegian)

* New translations en.yml (Punjabi)

* New translations en.yml (Portuguese)

* New translations en.yml (Greek)

* New translations en.yml (Albanian)

* New translations en.yml (Serbian (Cyrillic))

* New translations en.yml (Turkish)

* New translations en.yml (Ukrainian)

* New translations en.yml (Chinese Traditional)

* New translations en.yml (Urdu (Pakistan))

* New translations en.yml (Icelandic)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Indonesian)

* New translations en.yml (Tamil)

* New translations en.yml (Basque)

* New translations en.yml (German)

* New translations en.yml (Galician)

* New translations en.yml (Slovak)

* New translations en.yml (Chinese Simplified)

* New translations en.yml (Swedish)

* New translations en.yml (Arabic)

* New translations en.yml (French)

* New translations en.yml (Spanish)

* New translations en.yml (Catalan)

* New translations en.yml (Hebrew)

* New translations en.yml (Italian)

* New translations en.yml (Japanese)

* New translations en.yml (Russian)

* New translations en.yml (Slovenian)

* New translations en.yml (Danish)

* New translations en.yml (Vietnamese)

* New translations en.yml (Thai)

* New translations en.yml (Scottish Gaelic)

* New translations en.yml (Occitan)

* New translations en.json (Catalan)

* New translations en.yml (Persian)

* New translations en.yml (Romanian)

* New translations en.yml (Afrikaans)

* New translations en.yml (Bulgarian)

* New translations en.yml (Czech)

* New translations en.yml (Spanish, Argentina)

* New translations en.yml (Spanish, Mexico)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Kabyle)

* New translations en.yml (Ido)

* New translations en.yml (Taigi)

* New translations en.yml (Silesian)

* New translations en.yml (Standard Moroccan Tamazight)

* New translations en.json (German)

* New translations en.json (Japanese)

* New translations en.json (Korean)

* New translations en.json (Turkish)

* New translations en.json (Vietnamese)

* New translations en.yml (Sardinian)

* New translations en.json (Portuguese, Brazilian)

* New translations en.json (Asturian)

* New translations en.json (Irish)

* New translations en.yml (Irish)

* New translations en.json (Arabic)

* New translations en.json (Scottish Gaelic)

* New translations en.json (Welsh)

* New translations en.json (Galician)

* New translations en.json (Icelandic)

* New translations en.yml (Sanskrit)

* New translations en.yml (Corsican)

* New translations en.yml (Bengali)

* New translations en.yml (Marathi)

* New translations en.yml (Croatian)

* New translations en.yml (Norwegian Nynorsk)

* New translations en.yml (Kazakh)

* New translations en.yml (Estonian)

* New translations en.yml (Latvian)

* New translations en.yml (Hindi)

* New translations en.yml (Malay)

* New translations en.yml (Telugu)

* New translations en.yml (Welsh)

* New translations en.yml (Uyghur)

* New translations en.yml (Sorani (Kurdish))

* New translations en.yml (Chinese Traditional, Hong Kong)

* New translations en.yml (Tatar)

* New translations en.yml (Malayalam)

* New translations en.yml (Breton)

* New translations en.yml (Sinhala)

* New translations en.yml (Cornish)

* New translations en.yml (Kannada)

* New translations en.yml (Asturian)

* New translations en.yml (Serbian (Latin))

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.json (Sorani (Kurdish))

* New translations en.json (English, United Kingdom)

* New translations en.json (Bengali)

* New translations en.json (Swedish)

* New translations en.json (Ukrainian)

* New translations en.json (Chinese Traditional)

* New translations en.json (Urdu (Pakistan))

* New translations en.json (Indonesian)

* New translations en.json (Persian)

* New translations en.json (Tamil)

* New translations en.json (Spanish, Argentina)

* New translations en.json (Spanish, Mexico)

* New translations en.json (Marathi)

* New translations en.json (Albanian)

* New translations en.json (Thai)

* New translations en.json (Croatian)

* New translations en.json (Norwegian Nynorsk)

* New translations en.json (Kazakh)

* New translations en.json (Latvian)

* New translations en.json (Hindi)

* New translations en.json (Malay)

* New translations en.json (Telugu)

* New translations en.json (Serbian (Cyrillic))

* New translations en.json (Slovenian)

* New translations en.yml (English, United Kingdom)

* New translations en.json (Finnish)

* New translations en.json (Norwegian)

* New translations en.json (Romanian)

* New translations en.json (French)

* New translations en.json (Spanish)

* New translations en.json (Afrikaans)

* New translations en.json (Bulgarian)

* New translations en.json (Czech)

* New translations en.json (Danish)

* New translations en.json (Greek)

* New translations en.json (Basque)

* New translations en.json (Hebrew)

* New translations en.json (Russian)

* New translations en.json (Hungarian)

* New translations en.json (Armenian)

* New translations en.json (Italian)

* New translations en.json (Georgian)

* New translations en.json (Lithuanian)

* New translations en.json (Macedonian)

* New translations en.json (Dutch)

* New translations en.json (Punjabi)

* New translations en.json (Polish)

* New translations en.json (Portuguese)

* New translations en.json (Uyghur)

* New translations en.json (Chinese Traditional, Hong Kong)

* New translations en.json (Corsican)

* New translations en.json (Silesian)

* New translations en.json (Taigi)

* New translations en.json (Ido)

* New translations en.json (Kabyle)

* New translations en.json (Sanskrit)

* New translations en.json (Sardinian)

* New translations en.json (Kurmanji (Kurdish))

* New translations en.json (Tatar)

* New translations en.json (Serbian (Latin))

* New translations en.json (Occitan)

* New translations en.json (Kannada)

* New translations en.json (Cornish)

* New translations en.json (Sinhala)

* New translations en.json (Breton)

* New translations en.json (Malayalam)

* New translations en.json (Standard Moroccan Tamazight)

* New translations en.yml (Dutch)

* New translations en.yml (Dutch)

* New translations en.yml (Chinese Traditional)

* New translations en.json (Turkish)

* New translations en.json (Polish)

* New translations en.json (Chinese Traditional)

* New translations en.yml (Dutch)

* New translations en.yml (Chinese Traditional)

* New translations en.yml (Latvian)

* New translations en.json (Latvian)

* New translations en.yml (Polish)

* New translations en.json (Czech)

* New translations en.json (Dutch)

* New translations en.json (Catalan)

* New translations en.yml (Dutch)

* New translations en.json (Dutch)

* New translations en.yml (Dutch)

* New translations en.json (Icelandic)

* New translations en.json (Kurmanji (Kurdish))

* New translations en.yml (Icelandic)

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.yml (Occitan)

* New translations en.json (Occitan)

* New translations en.json (Afrikaans)

* New translations en.json (Spanish, Argentina)

* New translations en.json (Greek)

* New translations en.yml (Spanish, Argentina)

* New translations en.yml (Czech)

* New translations en.json (Ukrainian)

* New translations en.json (Russian)

* New translations en.json (Slovenian)

* New translations en.yml (Slovenian)

* New translations en.json (Ido)

* New translations en.yml (Ido)

* New translations en.json (Polish)

* New translations en.yml (Spanish)

* New translations en.yml (Spanish, Mexico)

* New translations en.yml (Galician)

* New translations en.yml (Galician)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Galician)

* New translations en.json (Galician)

* New translations en.yml (Chinese Traditional)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Italian)

* New translations en.json (Hungarian)

* New translations en.yml (Hungarian)

* New translations en.json (Scottish Gaelic)

* New translations en.yml (Scottish Gaelic)

* New translations simple_form.en.yml (Esperanto)

* New translations simple_form.en.yml (Esperanto)

* New translations simple_form.en.yml (Esperanto)

* New translations en.json (Russian)

* New translations en.json (Spanish)

* New translations en.yml (Spanish)

* New translations en.json (Vietnamese)

* New translations en.json (Portuguese)

* New translations en.json (Danish)

* New translations en.yml (Danish)

* New translations en.yml (Chinese Traditional)

* New translations en.yml (Vietnamese)

* New translations en.json (Thai)

* New translations en.json (French)

* New translations en.json (Esperanto)

* New translations en.yml (Esperanto)

* New translations en.json (Esperanto)

* New translations doorkeeper.en.yml (Esperanto)

* New translations activerecord.en.yml (Esperanto)

* New translations devise.en.yml (Esperanto)

* New translations en.yml (Italian)

* New translations en.json (Italian)

* New translations en.json (Kurmanji (Kurdish))

* New translations en.yml (Chinese Simplified)

* New translations en.json (Korean)

* New translations en.json (Ido)

* Run `yarn manage:translations`

* Run `bundle exec i18n-tasks normalize`

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-05-30 15:49:43 +09:00
Jeong Arm
9adb7dde33 Add lang html attr to each posts (#18544) 2022-05-28 15:50:36 +02:00
Jeong Arm
ee1b865c24 Prevent use locale with empty string (#18543)
Somehow user's locale could be an empty string, And empty string itself
are treated as true value.
2022-05-28 14:32:08 +02:00
Alexander Ivanov
a59e8245f5 Add support for webp uploads (#18506) 2022-05-27 20:06:40 +02:00
Eugen Rochko
c460fd0250 Remove unused assets (#18541) 2022-05-27 20:05:34 +02:00
Claire
73c8032178 Remove unused filtered_languages column (#18533)
* Remove unused `filtered_languages` column

Fixes #18522

* Fix tests
2022-05-27 20:05:22 +02:00
Eugen Rochko
cd8ee3df8f Fix errors when rendering RSS feeds (#18531) 2022-05-26 23:02:42 +02:00
Eugen Rochko
902d3627e2 Fix concurrent unfollowing decrementing follower count more than once (#18527) 2022-05-26 22:14:47 +02:00
Eugen Rochko
a4410daf13 Fix being able to appeal a strike unlimited times (#18529)
Peculiarity of the `has_one` association is that the convenience
creation method deletes the previous association even if the new
one is invalid
2022-05-26 22:08:12 +02:00
Eugen Rochko
4bb50e32e4 Fix being able to report otherwise inaccessible statuses (#18528) 2022-05-26 22:08:02 +02:00
Eugen Rochko
49c6b3736a Fix empty votes arbitrarily increasing voters count in polls (#18526) 2022-05-26 22:06:10 +02:00
Eugen Rochko
e871725668 Fix moderator leak in undo_mark_statuses_as_sensitive (#18525)
Signed-off-by: Eugen Rochko <eugen@zeonfederated.com>

Co-authored-by: 40826d <74816220+40826d@users.noreply.github.com>
2022-05-26 22:04:16 +02:00
Eugen Rochko
b264197a1d Fix suspended users being able to access APIs that don't require a user (#18524) 2022-05-26 22:04:05 +02:00
Eugen Rochko
89d4d6fd3b Fix confirmation redirect to app without Location header (#18523) 2022-05-26 22:03:54 +02:00
Eugen Rochko
35ebb5571e Fix follower and other counters being able to go negative (#18517) 2022-05-26 20:32:48 +02:00
Eugen Rochko
5be3d071f2 Fix regression in tootctl search deploy caused by unloaded attribute (#18514) 2022-05-26 18:05:47 +02:00
Eugen Rochko
3143aec7f1 Change "dangerous" to "sensitive" in privacy policy and web UI (#18515)
Fix #18470
2022-05-26 17:55:05 +02:00
Claire
f5e6c776c1 Change unapproved and unconfirmed account to not be accessible in the REST API (#17530)
* Change unapproved and unconfirmed account to not be accessible in the REST API

* Change Account#searchable? to reject unconfirmed and unapproved users

* Disable search for unapproved and unconfirmed users in Account.search_for

* Disable search for unapproved and unconfirmed users in Account.advanced_search_for

* Remove unconfirmed and unapproved accounts from Account.searchable scope

* Prevent mentions to unapproved/unconfirmed accounts

* Fix some old tests for Account.advanced_search_for

* Add some Account.advanced_search_for tests for existing behaviors

* Add some tests for Account.search_for

* Add Account.advanced_search_for tests unconfirmed and unapproved accounts

* Add Account.searchable tests

* Fix Account.without_unapproved scope potentially messing with previously-applied scopes

* Allow lookup of unconfirmed/unapproved accounts through /api/v1/accounts/lookup

This is so that the API can still be used to check whether an username is free
to use.
2022-05-26 15:50:33 +02:00
Claire
e220fcf1d4 Fix unnecessary query on status creation (#17901) 2022-05-26 00:20:30 +02:00
Eugen Rochko
c5f0792a0d New Crowdin updates (#18458)
* New translations en.yml (Ido)

* New translations en.json (Ido)

* New translations doorkeeper.en.yml (Ido)

* New translations devise.en.yml (Ido)

* New translations simple_form.en.yml (Ido)

* New translations doorkeeper.en.yml (Ido)

* New translations simple_form.en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.json (Ido)

* New translations doorkeeper.en.yml (Ido)

* New translations simple_form.en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.json (Ido)

* New translations en.yml (Ido)

* New translations en.json (Ido)

* New translations doorkeeper.en.yml (Ido)

* New translations simple_form.en.yml (Ido)

* New translations en.json (Esperanto)

* New translations en.yml (Esperanto)

* New translations en.json (Esperanto)

* New translations doorkeeper.en.yml (Esperanto)

* New translations en.json (Esperanto)

* New translations en.yml (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations doorkeeper.en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.json (Ido)

* New translations simple_form.en.yml (Ido)

* New translations en.json (Armenian)

* New translations en.json (Armenian)

* New translations en.json (Armenian)

* New translations en.json (Scottish Gaelic)

* New translations en.yml (Ido)

* New translations simple_form.en.yml (Ido)

* New translations en.yml (Ido)

* New translations simple_form.en.yml (Ido)

* New translations en.yml (Russian)

* New translations en.json (Estonian)

* New translations en.json (Estonian)

* New translations en.json (Estonian)

* New translations en.json (Estonian)

* New translations en.yml (Estonian)

* New translations en.json (Estonian)

* New translations en.json (Estonian)

* New translations en.yml (Estonian)

* New translations en.json (Estonian)

* New translations en.yml (Estonian)

* New translations en.json (Estonian)

* New translations en.json (Estonian)

* New translations en.yml (Russian)

* New translations en.yml (Russian)

* New translations simple_form.en.yml (Russian)

* New translations en.yml (Russian)

* New translations simple_form.en.yml (Russian)

* New translations en.json (Sorani (Kurdish))

* New translations en.json (Sorani (Kurdish))

* New translations en.json (Sorani (Kurdish))

* New translations activerecord.en.yml (Sorani (Kurdish))

* New translations doorkeeper.en.yml (Sorani (Kurdish))

* New translations en.yml (Sorani (Kurdish))

* New translations doorkeeper.en.yml (Sorani (Kurdish))

* New translations en.yml (Sorani (Kurdish))

* New translations en.yml (Sorani (Kurdish))

* New translations en.yml (Sorani (Kurdish))

* New translations en.yml (Sorani (Kurdish))

* New translations en.yml (Sorani (Kurdish))

* Run `yarn manage:translations`

* Run `bundle exec i18n-tasks normalize`

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-05-24 23:33:18 +09:00
Claire
2baba513d9 Fix warning an account outside of a report closing all reports for that account (#18387)
* Fix warning an account outside of a report closing all reports for that account

* Make it clear what actions solve other reports

* Revert "Make it clear what actions solve other reports"

This reverts commit ad006de821f72e75480701298d13f0945b509059.
2022-05-23 20:38:29 +02:00
Eugen Rochko
eda9c41ed8 Change algorithm of tootctl search deploy to improve performance (#18463) 2022-05-22 22:16:43 +02:00
Yamagishi Kazutoshi
fa12352fd3 Fix languages dropdown on light theme (#18460) 2022-05-19 19:26:19 +02:00
Eugen Rochko
9977cda0ac New Crowdin updates (#18419)
* New translations en.json (German)

* New translations en.json (Welsh)

* New translations en.json (Japanese)

* New translations en.json (Korean)

* New translations en.json (Turkish)

* New translations en.json (Chinese Simplified)

* New translations en.json (Vietnamese)

* New translations en.json (Portuguese, Brazilian)

* New translations en.json (Asturian)

* New translations en.json (Irish)

* New translations en.json (Arabic)

* New translations en.json (Scottish Gaelic)

* New translations en.json (Galician)

* New translations en.json (Czech)

* New translations en.json (Slovak)

* New translations en.json (Icelandic)

* New translations en.json (Sorani (Kurdish))

* New translations en.json (English, United Kingdom)

* New translations en.json (Norwegian)

* New translations en.json (Romanian)

* New translations en.json (French)

* New translations en.json (Spanish)

* New translations en.json (Afrikaans)

* New translations en.json (Bulgarian)

* New translations en.json (Persian)

* New translations en.json (Tamil)

* New translations en.json (Malayalam)

* New translations en.json (Silesian)

* New translations en.json (Taigi)

* New translations en.json (Ido)

* New translations en.json (Kabyle)

* New translations en.json (Sanskrit)

* New translations en.json (Sardinian)

* New translations en.json (Corsican)

* New translations en.json (Kurmanji (Kurdish))

* New translations en.json (Serbian (Latin))

* New translations en.json (Occitan)

* New translations en.json (Kannada)

* New translations en.json (Cornish)

* New translations en.json (Sinhala)

* New translations en.json (Breton)

* New translations en.json (Tatar)

* New translations en.json (Spanish, Argentina)

* New translations en.json (Kazakh)

* New translations en.json (Spanish, Mexico)

* New translations en.json (Bengali)

* New translations en.json (Marathi)

* New translations en.json (Thai)

* New translations en.json (Croatian)

* New translations en.json (Norwegian Nynorsk)

* New translations en.json (Estonian)

* New translations en.json (Chinese Traditional, Hong Kong)

* New translations en.json (Latvian)

* New translations en.json (Hindi)

* New translations en.json (Malay)

* New translations en.json (Telugu)

* New translations en.json (Esperanto)

* New translations en.json (Uyghur)

* New translations en.json (Standard Moroccan Tamazight)

* New translations en.yml (Icelandic)

* New translations en.json (German)

* New translations en.json (Turkish)

* New translations en.json (Icelandic)

* New translations en.json (Greek)

* New translations en.json (Chinese Traditional)

* New translations en.json (Catalan)

* New translations en.json (Latvian)

* New translations en.json (Czech)

* New translations en.json (Indonesian)

* New translations en.json (Korean)

* New translations en.json (Russian)

* New translations en.json (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.json (German)

* New translations en.json (Spanish, Argentina)

* New translations en.json (Spanish, Argentina)

* New translations en.json (Danish)

* New translations en.json (Chinese Simplified)

* New translations en.json (Afrikaans)

* New translations en.json (Ukrainian)

* New translations en.json (Portuguese)

* New translations en.yml (Italian)

* New translations en.json (Italian)

* New translations en.yml (Italian)

* New translations en.json (Catalan)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.json (French)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.json (Arabic)

* New translations en.yml (Arabic)

* New translations en.yml (Hungarian)

* New translations en.json (Hungarian)

* New translations en.yml (Galician)

* New translations en.json (Galician)

* New translations en.yml (Scottish Gaelic)

* New translations en.yml (Ido)

* New translations en.json (Scottish Gaelic)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.json (Catalan)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.json (Korean)

* New translations en.json (Polish)

* New translations en.yml (Ido)

* New translations en.json (Czech)

* New translations en.json (Hungarian)

* New translations en.json (Spanish, Argentina)

* New translations en.json (Ido)

* New translations en.json (Russian)

* New translations en.json (Latvian)

* New translations en.yml (Russian)

* New translations en.json (Russian)

* New translations devise.en.yml (Russian)

* New translations en.yml (Ido)

* New translations en.json (Icelandic)

* New translations en.json (Portuguese)

* New translations en.yml (Ido)

* New translations en.json (Catalan)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* Run `yarn manage:translations`

* New translations en.json (Chinese Simplified)

* New translations en.yml (Slovenian)

* New translations en.json (Slovenian)

* New translations en.json (Vietnamese)

* New translations en.json (Chinese Traditional)

* New translations en.json (Chinese Simplified)

* New translations en.json (Spanish)

* New translations en.json (Greek)

* New translations en.json (Thai)

* New translations en.json (Turkish)

* New translations en.json (Turkish)

* New translations en.json (Italian)

* New translations en.json (Kurmanji (Kurdish))

* New translations en.yml (Japanese)

* New translations en.json (Japanese)

* New translations en.json (Afrikaans)

* New translations en.yml (Basque)

* New translations en.yml (German)

* New translations en.json (German)

* New translations en.yml (Esperanto)

* New translations en.json (German)

* New translations en.yml (Esperanto)

* New translations en.yml (Esperanto)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.json (Chinese Simplified)

* New translations en.json (German)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Korean)

* New translations en.yml (Galician)

* New translations en.json (Galician)

* New translations devise.en.yml (Galician)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Russian)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.json (Kurmanji (Kurdish))

* New translations en.yml (Ido)

* New translations en.json (Kurmanji (Kurdish))

* New translations en.yml (German)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Korean)

* New translations en.json (Korean)

* New translations simple_form.en.yml (Korean)

* New translations en.yml (Korean)

* New translations en.json (Ukrainian)

* New translations en.yml (Arabic)

* New translations en.json (Arabic)

* New translations en.json (Arabic)

* New translations en.json (Arabic)

* New translations en.json (Arabic)

* New translations en.json (Thai)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Russian)

* New translations en.json (Portuguese, Brazilian)

* New translations en.yml (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations simple_form.en.yml (Chinese Simplified)

* New translations devise.en.yml (Chinese Simplified)

* New translations en.yml (Ido)

* New translations en.json (French)

* New translations en.json (Indonesian)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Vietnamese)

* New translations en.json (Esperanto)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations doorkeeper.en.yml (Portuguese, Brazilian)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* New translations en.yml (Ido)

* Run `yarn manage:translations`

* Run `bundle exec i18n-tasks normalize`

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-05-19 19:58:16 +09:00
Eugen Rochko
f4cab3ebad Change search indexing to use batches to minimize resource usage (#18451) 2022-05-18 23:29:14 +02:00
Claire
14dca6b469 Fix NoMethodError when resolving a link that redirects to a local post (#18314)
* Fix NoMethodError when resolving a link that redirects to a local post

* Fix tests
2022-05-17 14:52:26 +02:00
Eugen Rochko
9d160dae82 Fix preferred posting language returning unusable value in REST API (#18428) 2022-05-16 19:13:36 +02:00
Eugen Rochko
e4a9aa1ab4 Add language dropdown to compose in web UI (#18420) 2022-05-16 11:18:35 +02:00
Yamagishi Kazutoshi
69774b86bf Fix Mastodon::RaceConditionError that occurs when external status is reblogged (#18424)
* Fix `Mastodon::RaceConditionError` that occurs when external status is reblogged

* Replace to `@object`
2022-05-16 01:00:09 +02:00
Eugen Rochko
f806b5d6b6 New Crowdin updates (#18339)
* New translations en.yml (Asturian)

* New translations en.yml (Kannada)

* New translations en.yml (Sinhala)

* New translations en.yml (Marathi)

* New translations en.yml (Malay)

* New translations en.yml (Croatian)

* New translations en.yml (Norwegian Nynorsk)

* New translations en.yml (Kazakh)

* New translations en.yml (Estonian)

* New translations en.yml (Latvian)

* New translations en.yml (Hindi)

* New translations en.yml (Telugu)

* New translations en.yml (Breton)

* New translations en.yml (Welsh)

* New translations en.yml (Esperanto)

* New translations en.yml (Uyghur)

* New translations en.yml (Chinese Traditional, Hong Kong)

* New translations en.yml (Tatar)

* New translations en.yml (Malayalam)

* New translations en.yml (English, United Kingdom)

* New translations en.yml (Korean)

* New translations en.yml (Russian)

* New translations en.yml (Turkish)

* New translations en.yml (Spanish, Argentina)

* New translations en.yml (Swedish)

* New translations en.yml (Catalan)

* New translations en.yml (Czech)

* New translations en.yml (Spanish)

* New translations en.yml (Greek)

* New translations en.yml (Portuguese)

* New translations en.yml (Ukrainian)

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.yml (German)

* New translations en.yml (Chinese Simplified)

* New translations en.yml (Polish)

* New translations en.yml (Asturian)

* New translations en.yml (Scottish Gaelic)

* New translations en.yml (Chinese Traditional)

* New translations en.json (Persian)

* New translations en.yml (Persian)

* New translations en.yml (Chinese Traditional)

* New translations en.json (Chinese Traditional)

* New translations en.json (Persian)

* New translations en.yml (Persian)

* New translations en.yml (Chinese Traditional)

* New translations doorkeeper.en.yml (Chinese Traditional)

* New translations en.json (Persian)

* New translations simple_form.en.yml (Chinese Traditional)

* New translations devise.en.yml (Chinese Traditional)

* New translations en.yml (Chinese Traditional)

* New translations doorkeeper.en.yml (Chinese Traditional)

* New translations en.yml (Chinese Traditional)

* New translations en.json (Chinese Traditional)

* New translations doorkeeper.en.yml (Chinese Traditional)

* New translations simple_form.en.yml (Chinese Traditional)

* New translations en.yml (Icelandic)

* New translations en.yml (Indonesian)

* New translations en.yml (Japanese)

* New translations en.yml (Vietnamese)

* New translations en.yml (Japanese)

* New translations en.yml (Latvian)

* New translations en.yml (Galician)

* New translations en.yml (Thai)

* New translations en.yml (Italian)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Welsh)

* New translations en.yml (Welsh)

* New translations en.yml (Welsh)

* New translations en.yml (Welsh)

* New translations en.yml (Welsh)

* New translations en.json (Korean)

* New translations en.yml (Hungarian)

* New translations en.yml (Welsh)

* New translations en.yml (French)

* New translations en.yml (Scottish Gaelic)

* New translations en.json (Scottish Gaelic)

* New translations en.yml (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.yml (Afrikaans)

* New translations en.json (Afrikaans)

* New translations en.json (Ido)

* New translations en.json (Afrikaans)

* New translations en.json (Afrikaans)

* New translations en.json (Afrikaans)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Catalan)

* New translations en.json (Catalan)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Arabic)

* New translations en.json (Arabic)

* New translations en.yml (Arabic)

* New translations en.json (Ido)

* New translations doorkeeper.en.yml (Ido)

* New translations devise.en.yml (Ido)

* New translations en.yml (Spanish, Mexico)

* New translations en.yml (Chinese Simplified)

* New translations en.yml (Catalan)

* New translations en.yml (Afrikaans)

* New translations en.yml (Latvian)

* New translations en.yml (Italian)

* New translations en.yml (Greek)

* New translations en.yml (Hungarian)

* New translations en.yml (Chinese Traditional)

* New translations en.yml (Ido)

* New translations en.yml (Hungarian)

* New translations en.json (Hungarian)

* New translations simple_form.en.yml (Hungarian)

* New translations en.yml (Korean)

* New translations en.yml (Russian)

* New translations en.yml (Hungarian)

* New translations en.yml (Turkish)

* New translations en.yml (Korean)

* New translations en.yml (Portuguese)

* New translations en.yml (Vietnamese)

* New translations en.yml (Portuguese)

* New translations en.yml (Icelandic)

* New translations en.yml (Albanian)

* New translations en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.yml (Danish)

* New translations simple_form.en.yml (Ido)

* New translations en.yml (Polish)

* New translations en.yml (Spanish, Argentina)

* New translations en.yml (Ukrainian)

* New translations en.yml (Indonesian)

* New translations en.yml (Spanish)

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.json (Chinese Simplified)

* New translations en.yml (Chinese Simplified)

* New translations en.yml (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations simple_form.en.yml (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations doorkeeper.en.yml (Chinese Simplified)

* New translations en.yml (German)

* New translations en.json (Chinese Simplified)

* New translations simple_form.en.yml (Ido)

* New translations simple_form.en.yml (Ido)

* New translations simple_form.en.yml (Ido)

* New translations en.yml (Chinese Simplified)

* New translations en.yml (Galician)

* New translations en.yml (French)

* New translations en.json (Galician)

* New translations en.yml (French)

* New translations en.yml (Welsh)

* New translations en.yml (Arabic)

* New translations en.json (Sorani (Kurdish))

* New translations en.yml (Arabic)

* New translations en.json (Sorani (Kurdish))

* New translations en.yml (Arabic)

* New translations doorkeeper.en.yml (Arabic)

* New translations en.json (Arabic)

* New translations en.json (Sorani (Kurdish))

* New translations simple_form.en.yml (Arabic)

* New translations en.yml (Arabic)

* New translations en.yml (Arabic)

* New translations simple_form.en.yml (Ido)

* New translations simple_form.en.yml (Ido)

* New translations en.json (Hindi)

* New translations en.json (Hindi)

* New translations en.json (Hindi)

* New translations en.json (Sorani (Kurdish))

* New translations en.yml (Slovenian)

* New translations en.yml (Hungarian)

* New translations en.json (English, United Kingdom)

* New translations en.yml (French)

* New translations en.yml (French)

* New translations en.json (French)

* New translations en.json (Croatian)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Scottish Gaelic)

* New translations simple_form.en.yml (Ido)

* New translations simple_form.en.yml (Ido)

* New translations en.yml (Welsh)

* New translations en.yml (Welsh)

* New translations en.yml (Chinese Traditional)

* New translations en.yml (Chinese Traditional)

* New translations en.yml (Chinese Simplified)

* New translations en.yml (Spanish, Mexico)

* New translations en.yml (Chinese Simplified)

* New translations en.yml (Chinese Traditional)

* New translations en.json (Tatar)

* New translations en.json (Tatar)

* New translations en.yml (Catalan)

* New translations en.yml (Hebrew)

* New translations en.yml (Catalan)

* New translations en.yml (Hebrew)

* New translations devise.en.yml (Catalan)

* New translations en.yml (Russian)

* New translations doorkeeper.en.yml (Russian)

* New translations en.yml (Russian)

* New translations en.yml (Swedish)

* New translations en.yml (Spanish)

* New translations en.yml (Turkish)

* New translations en.yml (Welsh)

* New translations en.yml (Latvian)

* New translations en.json (Slovak)

* New translations en.yml (Slovak)

* New translations en.json (Slovak)

* New translations en.yml (Czech)

* New translations en.yml (Portuguese)

* New translations en.yml (Afrikaans)

* New translations activerecord.en.yml (Afrikaans)

* New translations activerecord.en.yml (Afrikaans)

* New translations en.yml (Afrikaans)

* New translations activerecord.en.yml (Afrikaans)

* New translations en.json (Esperanto)

* New translations en.json (Esperanto)

* New translations en.yml (Spanish, Argentina)

* New translations en.yml (Ido)

* New translations en.json (Spanish, Argentina)

* New translations simple_form.en.yml (Ido)

* New translations simple_form.en.yml (Ido)

* New translations en.yml (Danish)

* New translations en.yml (Vietnamese)

* New translations en.yml (German)

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.yml (Polish)

* New translations en.yml (Indonesian)

* New translations en.yml (Korean)

* New translations en.yml (Italian)

* New translations simple_form.en.yml (Ido)

* New translations simple_form.en.yml (Ido)

* New translations simple_form.en.yml (Ido)

* New translations simple_form.en.yml (Ido)

* New translations en.yml (Polish)

* Run `yarn manage:translations`

* Run `bundle exec i18n-tasks normalize`

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-05-15 18:04:59 +09:00
Eugen Rochko
f1707c6d50 Refactor how Redis locks are created (#18400)
* Refactor how Redis locks are created

* Fix autorelease duration on account deletion lock
2022-05-13 00:02:35 +02:00
Jeong Arm
394dacef21 Fix rss view on hashtag (#18406) 2022-05-12 22:40:54 +02:00
Eugen Rochko
ac3d6f9a35 Add limited attribute to accounts in REST API and a warning in web UI (#18344) 2022-05-10 09:44:35 +02:00
Claire
917567567a Fix block/mute lists showing a follow button when unblocking a user (#18364)
Fixes #601
2022-05-09 23:20:19 +02:00
Eugen Rochko
41ad817afa Change RSS feeds (#18356)
* Change RSS feeds

- Use date and time for titles instead of ellipsized text
- Use full content in body, even when there is a content warning
- Use media extensions

* Change feed icons and add width and height attributes to custom emojis

* Fix custom emoji animate on hover breaking

* Fix tests
2022-05-09 07:43:08 +02:00
Claire
7919b6631e Fix streaming notifications not using quick filter logic (#18316)
Fixes #18309

The quickFilter logic was used on display and to request new notification
pages, but not for live updates. The main issue this caused is bump the unread
notifications count regardless of the quickFilter setting.

Since notifications are re-fetched when changing quickFilter settings, it is
safe to drop live notifications that do not match the selected filter.
2022-05-07 04:50:40 +02:00
Claire
345dc4d102 Fix ambiguous wording on appeal actions (#18328)
Fixes #18322
2022-05-06 21:41:34 +02:00
Claire
82dcdc12f1 Fix floating action button obscuring last element (#18332)
Fixes #18331

Add some padding below the last element of scrollable lists when the FAB is
shown in order for users to always be able to fully see the last element.
2022-05-06 21:40:49 +02:00
Claire
0e0b96b8e7 Fix account warnings not being recorded in audit log (#18338)
* Fix account warnings not being recorded in audit log

Fixes #18334

* Only record warnings if they are not associated to another action
2022-05-06 21:40:20 +02:00
Eugen Rochko
3ce9a50930 New Crowdin updates (#18255)
* New translations doorkeeper.en.yml (Chinese Traditional, Hong Kong)

* New translations doorkeeper.en.yml (Tatar)

* New translations doorkeeper.en.yml (Malayalam)

* New translations doorkeeper.en.yml (Breton)

* New translations doorkeeper.en.yml (Sinhala)

* New translations doorkeeper.en.yml (Standard Moroccan Tamazight)

* New translations en.json (Chinese Traditional)

* New translations en.json (Catalan)

* New translations en.json (Japanese)

* New translations en.json (French)

* New translations en.json (Spanish)

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.json (Kurmanji (Kurdish))

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.json (Korean)

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.json (Korean)

* New translations en.yml (Hebrew)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Hebrew)

* New translations en.json (Vietnamese)

* New translations en.json (Turkish)

* New translations en.json (Galician)

* Run `yarn manage:translations`

* Run `bundle exec i18n-tasks normalize`

* Add whitelist_en-GB.json [ci skip]

* New translations en.json (Ukrainian)

* New translations en.json (Ukrainian)

* New translations en.json (Ukrainian)

* New translations en.yml (Hebrew)

* New translations en.json (Ukrainian)

* New translations en.yml (Hebrew)

* New translations en.json (Ukrainian)

* New translations en.yml (Hebrew)

* New translations en.json (Ukrainian)

* New translations en.yml (Hebrew)

* New translations en.json (Ukrainian)

* New translations en.yml (Hebrew)

* New translations en.json (Swedish)

* New translations en.json (Ukrainian)

* New translations en.yml (Hebrew)

* New translations en.json (Ukrainian)

* New translations en.yml (Hebrew)

* New translations en.json (Greek)

* New translations en.json (Ukrainian)

* New translations en.yml (Hebrew)

* New translations en.json (Ukrainian)

* New translations en.json (Thai)

* New translations en.yml (Hebrew)

* New translations en.yml (Ukrainian)

* New translations en.json (Polish)

* New translations en.json (Ukrainian)

* New translations doorkeeper.en.yml (Ukrainian)

* New translations en.json (Thai)

* New translations en.yml (Hebrew)

* New translations en.yml (Ukrainian)

* New translations en.json (Danish)

* New translations en.json (Hebrew)

* New translations en.json (Ido)

* New translations simple_form.en.yml (Ukrainian)

* New translations en.yml (Hebrew)

* New translations en.json (Danish)

* New translations en.json (Ido)

* New translations en.yml (Hebrew)

* New translations doorkeeper.en.yml (Hebrew)

* New translations en.json (Ido)

* New translations en.yml (Hebrew)

* New translations en.yml (Afrikaans)

* New translations en.json (Afrikaans)

* New translations en.yml (Hebrew)

* New translations en.json (Afrikaans)

* New translations en.json (Hebrew)

* New translations en.json (Slovenian)

* New translations simple_form.en.yml (Hebrew)

* New translations en.yml (Slovenian)

* New translations en.json (Hebrew)

* New translations en.json (Slovenian)

* New translations en.json (Ukrainian)

* New translations simple_form.en.yml (Hebrew)

* New translations simple_form.en.yml (Slovenian)

* New translations en.yml (Hebrew)

* New translations en.json (Hebrew)

* New translations en.json (Latvian)

* New translations simple_form.en.yml (Hebrew)

* New translations simple_form.en.yml (Slovenian)

* New translations en.yml (Hebrew)

* New translations en.json (Hebrew)

* New translations simple_form.en.yml (Hebrew)

* New translations simple_form.en.yml (Slovenian)

* New translations en.yml (Hebrew)

* New translations en.yml (Slovenian)

* New translations en.json (Hebrew)

* New translations simple_form.en.yml (Ukrainian)

* New translations simple_form.en.yml (Hebrew)

* New translations simple_form.en.yml (Slovenian)

* New translations en.yml (Hebrew)

* New translations en.yml (Slovenian)

* New translations en.json (German)

* New translations simple_form.en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations simple_form.en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.yml (Slovenian)

* New translations en.json (Russian)

* New translations simple_form.en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.yml (Slovenian)

* New translations en.json (Icelandic)

* New translations simple_form.en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.json (Hungarian)

* New translations simple_form.en.yml (Hebrew)

* New translations simple_form.en.yml (Hungarian)

* New translations en.yml (Hebrew)

* New translations en.yml (Hungarian)

* New translations en.json (Hungarian)

* New translations en.yml (Hebrew)

* New translations en.json (Czech)

* New translations en.yml (Hebrew)

* New translations en.json (Czech)

* New translations en.yml (Spanish)

* New translations en.yml (Hebrew)

* New translations en.json (Spanish)

* New translations en.yml (Hebrew)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Hebrew)

* New translations en.json (Portuguese)

* New translations en.yml (Hebrew)

* New translations en.yml (Japanese)

* New translations simple_form.en.yml (Japanese)

* New translations doorkeeper.en.yml (Japanese)

* New translations en.json (Danish)

* New translations activerecord.en.yml (Japanese)

* New translations en.yml (Hebrew)

* New translations en.yml (Slovenian)

* New translations en.json (Welsh)

* New translations en.yml (Slovenian)

* New translations en.json (Italian)

* New translations en.yml (Slovenian)

* New translations en.json (Indonesian)

* New translations en.yml (Slovenian)

* New translations en.yml (Slovenian)

* New translations en.yml (Thai)

* New translations en.yml (Slovenian)

* New translations en.yml (Thai)

* New translations en.yml (Slovenian)

* New translations en.yml (Thai)

* New translations en.yml (Thai)

* New translations en.yml (Slovenian)

* New translations en.yml (Danish)

* New translations en.json (Swedish)

* New translations en.yml (Slovenian)

* New translations en.json (Vietnamese)

* New translations en.yml (Slovenian)

* New translations en.yml (Slovenian)

* New translations en.yml (Slovenian)

* New translations en.yml (Slovenian)

* New translations en.yml (Welsh)

* New translations simple_form.en.yml (Slovenian)

* New translations en.yml (Slovenian)

* New translations en.yml (Scottish Gaelic)

* New translations en.json (Scottish Gaelic)

* New translations en.yml (Slovenian)

* New translations en.yml (Welsh)

* New translations en.json (Scottish Gaelic)

* New translations en.yml (Slovenian)

* New translations en.yml (Slovenian)

* New translations en.json (Danish)

* New translations en.yml (Slovenian)

* New translations en.json (Portuguese, Brazilian)

* New translations en.yml (Slovenian)

* New translations en.json (Portuguese, Brazilian)

* New translations en.json (Slovenian)

* New translations doorkeeper.en.yml (Slovenian)

* New translations simple_form.en.yml (Slovenian)

* New translations en.yml (Slovenian)

* New translations en.json (Spanish, Argentina)

* New translations en.yml (Slovenian)

* New translations en.json (Scottish Gaelic)

* New translations en.json (Slovenian)

* New translations simple_form.en.yml (Slovenian)

* New translations en.json (Welsh)

* New translations en.json (French)

* New translations en.json (Welsh)

* New translations en.json (French)

* New translations en.yml (Arabic)

* New translations en.json (Arabic)

* New translations simple_form.en.yml (Welsh)

* New translations en.json (French)

* New translations simple_form.en.yml (Ukrainian)

* New translations en.json (Ukrainian)

* New translations en.json (Ukrainian)

* New translations en.yml (German)

* New translations en.yml (Ukrainian)

* New translations en.json (Ukrainian)

* New translations en.yml (Hebrew)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.yml (Hebrew)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Chinese Simplified)

* New translations en.yml (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Arabic)

* New translations en.json (Asturian)

* New translations en.yml (Thai)

* New translations en.json (Thai)

* New translations en.json (German)

* New translations en.json (Ido)

* New translations en.json (Welsh)

* New translations en.json (Ido)

* New translations en.json (Welsh)

* New translations en.json (German)

* New translations en.json (German)

* New translations en.json (German)

* New translations en.json (German)

* New translations en.json (German)

* New translations en.yml (German)

* New translations en.yml (Catalan)

* New translations en.json (Catalan)

* New translations en.json (German)

* New translations en.json (Albanian)

* New translations en.json (German)

* New translations en.yml (German)

* New translations en.json (German)

* Run `yarn manage:translations`

* Run `bundle exec i18n-tasks normalize`

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-05-06 21:53:22 +09:00
Stefano Pigozzi
02987b1191 Replace leftover envelope icons with at icons (#18305) 2022-05-06 00:41:56 +02:00
Sara Golemon
7c1bd95c9b Allow VerifyLinkService to accept backlinks with differing case (#18320) 2022-05-06 00:41:42 +02:00
mayaeh
f78036e71b Update translation strings for direct message (#18300) 2022-05-04 02:40:26 +02:00
Claire
1d7e3d18a0 Change “Only people I mention” to “Mentioned people only” (#18291) 2022-05-03 12:30:40 +02:00
Eugen Rochko
c33a26ed38 Change "Conversations" back to "Direct messages" and add warning in web UI (#18289)
Partially reverts #18146
2022-05-03 09:09:09 +02:00
Claire
25d089390c Fix ArgumentError when processing pinned posts from Friendica (#18260)
Follow-up to #18254
2022-05-02 19:34:39 +02:00
Claire
ac4b3039fa Fix compatibility with Friendica regarding pinned posts (#18254)
* Fix multiple database queries when fetching pinned posts for remote account

* Fix compatibility with Friendica regarding pinned posts

Fixes #18066

* Add tests
2022-05-02 17:41:01 +02:00
Eugen Rochko
35ca8565d5 New Crowdin updates (#18213)
* New translations activerecord.en.yml (Ido)

* New translations en.json (Ido)

* New translations activerecord.en.yml (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.json (Ido)

* New translations en.yml (Armenian)

* New translations en.json (Armenian)

* New translations en.yml (Russian)

* New translations en.yml (Armenian)

* New translations en.json (Armenian)

* New translations en.yml (Armenian)

* New translations en.json (Japanese)

* New translations en.json (Armenian)

* New translations en.yml (Armenian)

* New translations en.json (Japanese)

* New translations doorkeeper.en.yml (Armenian)

* New translations simple_form.en.yml (Sorani (Kurdish))

* New translations simple_form.en.yml (Sorani (Kurdish))

* New translations en.json (Spanish)

* New translations en.json (Portuguese)

* New translations en.yml (Chinese Simplified)

* New translations en.json (Portuguese)

* New translations devise.en.yml (Chinese Simplified)

* New translations en.json (Portuguese)

* New translations en.yml (Portuguese)

* New translations en.yml (Portuguese)

* New translations en.yml (Polish)

* New translations doorkeeper.en.yml (Japanese)

* New translations activerecord.en.yml (Japanese)

* New translations devise.en.yml (Japanese)

* New translations doorkeeper.en.yml (Japanese)

* New translations simple_form.en.yml (Japanese)

* New translations simple_form.en.yml (Japanese)

* New translations en.json (Japanese)

* New translations simple_form.en.yml (Japanese)

* New translations en.json (Japanese)

* New translations en.json (Galician)

* New translations en.json (Japanese)

* New translations en.json (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations simple_form.en.yml (Japanese)

* New translations devise.en.yml (Japanese)

* New translations en.yml (Scottish Gaelic)

* New translations en.json (Scottish Gaelic)

* New translations simple_form.en.yml (Scottish Gaelic)

* New translations activerecord.en.yml (Scottish Gaelic)

* New translations devise.en.yml (Scottish Gaelic)

* New translations doorkeeper.en.yml (Scottish Gaelic)

* New translations en.yml (Danish)

* New translations en.yml (Danish)

* New translations en.json (Welsh)

* New translations en.json (Welsh)

* New translations en.json (Welsh)

* New translations en.json (Welsh)

* New translations en.json (Welsh)

* New translations en.json (Welsh)

* New translations en.json (Icelandic)

* New translations en.json (Icelandic)

* New translations en.json (Icelandic)

* New translations en.yml (Icelandic)

* New translations simple_form.en.yml (Icelandic)

* New translations en.json (Icelandic)

* New translations en.json (Icelandic)

* New translations en.json (Welsh)

* New translations en.json (Welsh)

* New translations en.json (Welsh)

* New translations en.json (Icelandic)

* New translations en.json (Welsh)

* New translations en.json (Welsh)

* New translations en.json (Icelandic)

* New translations simple_form.en.yml (Icelandic)

* New translations en.json (Welsh)

* New translations en.json (Welsh)

* New translations en.json (Welsh)

* New translations en.json (Czech)

* New translations en.json (German)

* New translations en.json (Czech)

* New translations en.json (Czech)

* New translations en.json (Czech)

* New translations doorkeeper.en.yml (Ido)

* New translations en.json (Icelandic)

* New translations doorkeeper.en.yml (Ido)

* New translations doorkeeper.en.yml (Ido)

* New translations doorkeeper.en.yml (Ido)

* New translations doorkeeper.en.yml (Ido)

* New translations doorkeeper.en.yml (Ido)

* New translations doorkeeper.en.yml (Ido)

* New translations doorkeeper.en.yml (Ido)

* New translations en.yml (Korean)

* New translations en.yml (Hungarian)

* New translations en.yml (Georgian)

* New translations en.yml (Lithuanian)

* New translations en.yml (Macedonian)

* New translations en.yml (Dutch)

* New translations en.yml (Norwegian)

* New translations en.yml (Punjabi)

* New translations en.yml (Albanian)

* New translations en.yml (Basque)

* New translations en.yml (Serbian (Cyrillic))

* New translations en.yml (Turkish)

* New translations en.yml (Ukrainian)

* New translations en.yml (Chinese Traditional)

* New translations en.yml (Urdu (Pakistan))

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Indonesian)

* New translations en.yml (Tamil)

* New translations en.yml (Spanish, Argentina)

* New translations en.yml (Finnish)

* New translations en.yml (Greek)

* New translations en.yml (Galician)

* New translations en.yml (Slovak)

* New translations en.yml (Swedish)

* New translations en.yml (Arabic)

* New translations en.yml (French)

* New translations en.yml (Spanish)

* New translations en.yml (Catalan)

* New translations en.yml (Hebrew)

* New translations en.yml (Italian)

* New translations en.yml (Slovenian)

* New translations en.yml (German)

* New translations en.yml (Vietnamese)

* New translations en.yml (Thai)

* New translations en.yml (Occitan)

* New translations en.yml (Persian)

* New translations en.yml (Romanian)

* New translations en.yml (Afrikaans)

* New translations en.yml (Bulgarian)

* New translations en.yml (Czech)

* New translations en.yml (Spanish, Mexico)

* New translations en.yml (Bengali)

* New translations en.yml (Cornish)

* New translations en.yml (Irish)

* New translations en.yml (Standard Moroccan Tamazight)

* New translations en.yml (Silesian)

* New translations en.yml (Taigi)

* New translations en.yml (Ido)

* New translations en.yml (Kabyle)

* New translations en.yml (Sanskrit)

* New translations en.yml (Sardinian)

* New translations en.yml (Corsican)

* New translations en.yml (Sorani (Kurdish))

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.yml (Serbian (Latin))

* New translations en.yml (Asturian)

* New translations en.yml (Kannada)

* New translations en.yml (Sinhala)

* New translations en.yml (Marathi)

* New translations en.yml (Malay)

* New translations en.yml (Croatian)

* New translations en.yml (Norwegian Nynorsk)

* New translations en.yml (Kazakh)

* New translations en.yml (Estonian)

* New translations en.yml (Latvian)

* New translations en.yml (Hindi)

* New translations en.yml (Telugu)

* New translations en.yml (Breton)

* New translations en.yml (Welsh)

* New translations en.yml (Esperanto)

* New translations en.yml (Uyghur)

* New translations en.yml (Chinese Traditional, Hong Kong)

* New translations en.yml (Tatar)

* New translations en.yml (Malayalam)

* New translations en.yml (English, United Kingdom)

* New translations en.yml (Chinese Traditional)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Ido)

* New translations en.json (Chinese Simplified)

* New translations doorkeeper.en.yml (Ido)

* New translations en.yml (Korean)

* New translations doorkeeper.en.yml (Ido)

* New translations doorkeeper.en.yml (Ido)

* New translations en.yml (Japanese)

* New translations en.yml (Turkish)

* New translations en.yml (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Vietnamese)

* New translations en.yml (Greek)

* New translations en.yml (Catalan)

* New translations en.yml (French)

* New translations en.yml (Spanish)

* New translations en.yml (Polish)

* New translations doorkeeper.en.yml (Persian)

* New translations en.yml (Czech)

* New translations en.yml (Icelandic)

* New translations en.json (Icelandic)

* New translations en.yml (Russian)

* New translations en.yml (Hungarian)

* New translations en.yml (Swedish)

* New translations en.yml (Indonesian)

* New translations en.yml (Swedish)

* New translations en.yml (Welsh)

* New translations en.json (Swedish)

* New translations en.yml (Danish)

* New translations en.yml (Galician)

* Run `yarn manage:translations`

* Run `bundle exec i18n-tasks normalize`

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-05-02 23:19:23 +09:00
Claire
3c87683cf2 Fix error when looking handle with surrounding spaces (#18225) 2022-05-02 01:00:08 +02:00
Eugen Rochko
089e1e5554 Fix double render error when authorizing interaction (#18203) 2022-05-01 00:56:34 +02:00
Claire
a31975d369 Fix possible crash when a post references an invalid media attachment (#18211) 2022-05-01 00:55:26 +02:00
Eugen Rochko
e05fea8dad Fix error when trying to revoke OAuth token without supplying a token (#18205) 2022-05-01 00:51:32 +02:00
Eugen Rochko
2abc8b035b Fix error caused by missing subject in Webfinger response (#18204) 2022-05-01 00:37:46 +02:00
Eugen Rochko
15c9eb89bc New Crowdin updates (#18148)
* New translations en.yml (Kazakh)

* New translations en.yml (Estonian)

* New translations en.yml (Latvian)

* New translations en.yml (Hindi)

* New translations en.yml (Malay)

* New translations en.yml (Telugu)

* New translations en.yml (Welsh)

* New translations en.yml (Esperanto)

* New translations en.yml (Uyghur)

* New translations en.yml (Tatar)

* New translations en.yml (Sinhala)

* New translations en.yml (Malayalam)

* New translations en.yml (Breton)

* New translations en.yml (Standard Moroccan Tamazight)

* New translations en.yml (Silesian)

* New translations en.yml (Taigi)

* New translations en.yml (Ido)

* New translations en.json (Asturian)

* New translations en.yml (Kabyle)

* New translations en.yml (Sanskrit)

* New translations en.yml (Sardinian)

* New translations en.yml (Sorani (Kurdish))

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.yml (Serbian (Latin))

* New translations en.yml (Asturian)

* New translations en.yml (Corsican)

* New translations en.json (Welsh)

* New translations doorkeeper.en.yml (Armenian)

* New translations en.json (Basque)

* New translations doorkeeper.en.yml (Basque)

* New translations en.json (Finnish)

* New translations doorkeeper.en.yml (Finnish)

* New translations en.json (Hebrew)

* New translations doorkeeper.en.yml (Hebrew)

* New translations en.json (Hungarian)

* New translations doorkeeper.en.yml (Hungarian)

* New translations en.json (Armenian)

* New translations en.json (Italian)

* New translations en.json (Greek)

* New translations doorkeeper.en.yml (Italian)

* New translations en.json (Georgian)

* New translations doorkeeper.en.yml (Georgian)

* New translations en.json (Lithuanian)

* New translations en.json (Macedonian)

* New translations en.json (Dutch)

* New translations doorkeeper.en.yml (Dutch)

* New translations doorkeeper.en.yml (Norwegian)

* New translations doorkeeper.en.yml (Greek)

* New translations doorkeeper.en.yml (German)

* New translations en.json (Galician)

* New translations doorkeeper.en.yml (Romanian)

* New translations doorkeeper.en.yml (Korean)

* New translations en.json (Slovak)

* New translations doorkeeper.en.yml (Scottish Gaelic)

* New translations en.json (Icelandic)

* New translations en.json (Norwegian)

* New translations en.json (Romanian)

* New translations en.json (French)

* New translations doorkeeper.en.yml (Danish)

* New translations doorkeeper.en.yml (French)

* New translations en.json (Spanish)

* New translations doorkeeper.en.yml (Spanish)

* New translations en.json (Afrikaans)

* New translations en.json (Bulgarian)

* New translations doorkeeper.en.yml (Bulgarian)

* New translations en.json (Czech)

* New translations doorkeeper.en.yml (Czech)

* New translations en.json (Danish)

* New translations en.json (Punjabi)

* New translations en.json (Sorani (Kurdish))

* New translations en.json (Bengali)

* New translations doorkeeper.en.yml (Indonesian)

* New translations en.json (Persian)

* New translations doorkeeper.en.yml (Persian)

* New translations en.json (Tamil)

* New translations doorkeeper.en.yml (Tamil)

* New translations en.json (Spanish, Argentina)

* New translations doorkeeper.en.yml (Spanish, Argentina)

* New translations en.json (Spanish, Mexico)

* New translations doorkeeper.en.yml (Spanish, Mexico)

* New translations doorkeeper.en.yml (Portuguese, Brazilian)

* New translations en.json (Marathi)

* New translations doorkeeper.en.yml (Marathi)

* New translations en.json (Thai)

* New translations doorkeeper.en.yml (Thai)

* New translations en.json (Croatian)

* New translations doorkeeper.en.yml (Croatian)

* New translations en.json (Norwegian Nynorsk)

* New translations doorkeeper.en.yml (Norwegian Nynorsk)

* New translations en.json (Kazakh)

* New translations doorkeeper.en.yml (Kazakh)

* New translations en.json (Indonesian)

* New translations doorkeeper.en.yml (Icelandic)

* New translations en.json (Polish)

* New translations en.json (Serbian (Cyrillic))

* New translations doorkeeper.en.yml (Polish)

* New translations en.json (Portuguese)

* New translations doorkeeper.en.yml (Portuguese)

* New translations en.json (Russian)

* New translations doorkeeper.en.yml (Russian)

* New translations doorkeeper.en.yml (Slovak)

* New translations en.json (Slovenian)

* New translations doorkeeper.en.yml (Slovenian)

* New translations en.json (Albanian)

* New translations doorkeeper.en.yml (Albanian)

* New translations doorkeeper.en.yml (Serbian (Cyrillic))

* New translations doorkeeper.en.yml (Galician)

* New translations en.json (Swedish)

* New translations doorkeeper.en.yml (Swedish)

* New translations doorkeeper.en.yml (Turkish)

* New translations en.json (Ukrainian)

* New translations doorkeeper.en.yml (Ukrainian)

* New translations doorkeeper.en.yml (Chinese Simplified)

* New translations en.json (Chinese Traditional)

* New translations doorkeeper.en.yml (Chinese Traditional)

* New translations en.json (Urdu (Pakistan))

* New translations en.json (Estonian)

* New translations doorkeeper.en.yml (Estonian)

* New translations doorkeeper.en.yml (Chinese Traditional, Hong Kong)

* New translations en.json (Kannada)

* New translations en.json (Latvian)

* New translations en.json (Cornish)

* New translations doorkeeper.en.yml (Sinhala)

* New translations en.json (Sinhala)

* New translations doorkeeper.en.yml (Breton)

* New translations en.json (Breton)

* New translations doorkeeper.en.yml (Malayalam)

* New translations en.json (Malayalam)

* New translations doorkeeper.en.yml (Tatar)

* New translations en.json (Tatar)

* New translations en.json (Chinese Traditional, Hong Kong)

* New translations doorkeeper.en.yml (Latvian)

* New translations doorkeeper.en.yml (Hindi)

* New translations en.json (Malay)

* New translations en.json (Hindi)

* New translations en.json (Telugu)

* New translations doorkeeper.en.yml (Welsh)

* New translations en.json (Esperanto)

* New translations doorkeeper.en.yml (Esperanto)

* New translations en.json (Uyghur)

* New translations doorkeeper.en.yml (Sardinian)

* New translations en.json (Silesian)

* New translations en.json (Taigi)

* New translations doorkeeper.en.yml (Ido)

* New translations en.json (Ido)

* New translations doorkeeper.en.yml (Kabyle)

* New translations en.json (Kabyle)

* New translations en.json (Sanskrit)

* New translations doorkeeper.en.yml (Serbian (Latin))

* New translations en.json (Sardinian)

* New translations doorkeeper.en.yml (Corsican)

* New translations en.json (Corsican)

* New translations doorkeeper.en.yml (Sorani (Kurdish))

* New translations doorkeeper.en.yml (Kurmanji (Kurdish))

* New translations en.json (Kurmanji (Kurdish))

* New translations en.json (Serbian (Latin))

* New translations doorkeeper.en.yml (Occitan)

* New translations en.json (Occitan)

* New translations doorkeeper.en.yml (Asturian)

* New translations en.json (Standard Moroccan Tamazight)

* New translations doorkeeper.en.yml (Standard Moroccan Tamazight)

* New translations en.json (Danish)

* New translations en.json (Danish)

* New translations en.json (Icelandic)

* New translations en.json (Korean)

* New translations en.json (Spanish, Argentina)

* New translations en.json (Spanish, Argentina)

* New translations en.json (Korean)

* New translations en.json (Chinese Traditional)

* New translations en.json (Kurmanji (Kurdish))

* New translations en.json (Kurmanji (Kurdish))

* New translations en.json (Catalan)

* New translations en.json (Catalan)

* New translations en.json (Vietnamese)

* New translations en.json (Chinese Traditional)

* New translations en.json (Vietnamese)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Japanese)

* Run `yarn manage:translations`

* Run `bundle exec i18n-tasks normalize`

* New translations en.json (Japanese)

* New translations en.yml (Japanese)

* Restore en locales

* Run `bundle exec i18n-tasks normalize`

* New translations en.json (Greek)

* New translations en.json (Chinese Traditional)

* New translations en.json (Greek)

* New translations en.json (Chinese Traditional)

* New translations en.json (Galician)

* New translations en.json (Chinese Traditional)

* New translations en.json (Russian)

* New translations en.json (Chinese Traditional)

* New translations en.json (Afrikaans)

* New translations en.json (Russian)

* New translations en.json (Afrikaans)

* New translations en.yml (Swedish)

* New translations en.json (Swedish)

* New translations en.json (Welsh)

* New translations en.json (Dutch)

* New translations en.json (Turkish)

* New translations en.json (Turkish)

* New translations en.json (Scottish Gaelic)

* New translations en.json (Catalan)

* New translations en.json (Icelandic)

* New translations en.json (French)

* New translations en.json (Spanish)

* New translations en.json (Thai)

* New translations en.json (Hungarian)

* New translations en.json (German)

* New translations en.json (Portuguese, Brazilian)

* New translations en.json (German)

* New translations en.json (Polish)

* New translations en.json (Polish)

* New translations en.json (Indonesian)

* New translations en.json (Tatar)

* New translations en.json (Tatar)

* New translations en.json (Turkish)

* New translations en.json (Turkish)

* New translations en.json (Turkish)

* New translations en.json (Ukrainian)

* New translations en.yml (Thai)

* New translations en.json (Thai)

* New translations en.yml (Thai)

* New translations en.yml (Arabic)

* New translations en.json (Arabic)

* New translations en.json (Czech)

* New translations en.json (Italian)

* New translations en.json (Italian)

* New translations en.json (Ukrainian)

* New translations en.yml (Ukrainian)

* New translations en.json (Ukrainian)

* New translations en.json (Japanese)

* New translations en.json (Latvian)

* New translations en.json (Danish)

* New translations en.yml (Danish)

* New translations en.json (Albanian)

* New translations en.yml (Albanian)

* New translations en.json (Albanian)

* New translations doorkeeper.en.yml (Albanian)

* New translations simple_form.en.yml (Albanian)

* New translations activerecord.en.yml (Albanian)

* New translations devise.en.yml (Albanian)

* Run `yarn manage:translations`

* Run `bundle exec i18n-tasks normalize`

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-04-30 20:11:52 +09:00
Eugen Rochko
1cd4518c29 Remove IP matching from e-mail domain blocks (#18190)
Clear out e-mail domain blocks created from automatically resolved DNS records
2022-04-29 23:27:03 +02:00
Eugen Rochko
a8e694233c Fix opening and closing Redis connections instead of using a pool (#18171)
* Fix opening and closing Redis connections instead of using a pool

* Fix Redis connections not being returned to the pool in CLI commands
2022-04-29 22:43:07 +02:00
Eugen Rochko
2fb1c02eb7 Change trending statuses to only show one status from each account (#18181)
Calculate trends in temporary sets to avoid having to manage items
that go below the decay threshold while not having any moments
where a half-processed set is accessible to end-users
2022-04-29 22:42:42 +02:00
Claire
da9eb6eda8 Fix error on attempting to delete an account moderation note (#18196)
Fixes #18193
2022-04-29 20:25:31 +02:00
Eugen Rochko
4543f42811 Change half-life of trending status scores from 6 hours to 2 hours (#18182) 2022-04-29 11:46:59 +02:00
Claire
2c1843f37a Pre-fill domain block/allow domain from search filter (#18172) 2022-04-29 00:24:44 +02:00
Eugen Rochko
07737bb6d1 Change "Direct" status visibility to "Only people I mention" in web UI (#18146)
- Change name of conversations column in web UI
- Change hotkey for opening conversations column from `g d` to `g c` in web UI
- Remove shortcuts for creating direct-visibility statuses from web UI
2022-04-29 00:24:31 +02:00
Eugen Rochko
c803c1a8db Fix being able to scroll away from the loading bar in web UI (#18170) 2022-04-29 00:15:27 +02:00
Claire
0301eef266 Fix 500 error when a bookmark or favorite has been reported and deleted (#18174) 2022-04-28 23:34:58 +02:00
Claire
ff9d647aa6 Fix empty “Server rules violation” report option (#18165) 2022-04-28 21:29:29 +02:00
Claire
10014f29a5 Fix temporary network/remote server error prevent from interactions with remote accounts (#18161)
* Fix temporary network/remote server error prevent from interactions with remote accounts

* Fix and add tests
2022-04-28 20:19:10 +02:00
Eugen Rochko
553889bc7c Fix single Redis connection being used across all threads (#18135)
* Fix single Redis connection being used across all Sidekiq threads

* Fix tests
2022-04-28 17:47:34 +02:00
Chris Dzombak
57e23df5b1 Fix incorrect link in "new trending tags" email (#18156)
Closes #18129
2022-04-28 17:15:29 +02:00
Eugen Rochko
0f11d6ee6d New Crowdin updates (#18074)
* New translations en.yml (German)
[ci skip]

* New translations en.yml (Vietnamese)
[ci skip]

* New translations simple_form.en.yml (Vietnamese)
[ci skip]

* New translations en.yml (Vietnamese)
[ci skip]

* New translations en.yml (Vietnamese)
[ci skip]

* New translations simple_form.en.yml (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.yml (Vietnamese)
[ci skip]

* New translations simple_form.en.yml (Vietnamese)
[ci skip]

* New translations en.yml (Vietnamese)
[ci skip]

* New translations simple_form.en.yml (Vietnamese)
[ci skip]

* New translations devise.en.yml (Vietnamese)
[ci skip]

* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]

* New translations en.yml (Vietnamese)
[ci skip]

* New translations en.yml (Vietnamese)
[ci skip]

* New translations en.json (Irish)
[ci skip]

* New translations en.json (Irish)
[ci skip]

* New translations en.json (Irish)
[ci skip]

* New translations en.json (Scottish Gaelic)
[ci skip]

* New translations en.json (Irish)
[ci skip]

* New translations en.yml (Irish)
[ci skip]

* New translations en.yml (Irish)
[ci skip]

* New translations en.json (Catalan)
[ci skip]

* New translations en.json (Catalan)
[ci skip]

* New translations activerecord.en.yml (Catalan)
[ci skip]

* New translations devise.en.yml (Catalan)
[ci skip]

* New translations devise.en.yml (Catalan)
[ci skip]

* New translations devise.en.yml (Catalan)
[ci skip]

* New translations doorkeeper.en.yml (Catalan)
[ci skip]

* New translations devise.en.yml (Catalan)
[ci skip]

* New translations en.yml (Catalan)
[ci skip]

* New translations en.yml (Hebrew)
[ci skip]

* New translations devise.en.yml (Catalan)
[ci skip]

* New translations en.yml (Catalan)
[ci skip]

* New translations simple_form.en.yml (Catalan)
[ci skip]

* New translations simple_form.en.yml (Catalan)
[ci skip]

* New translations en.json (Irish)
[ci skip]

* New translations simple_form.en.yml (Catalan)
[ci skip]

* New translations en.json (Catalan)
[ci skip]

* New translations simple_form.en.yml (Catalan)
[ci skip]

* New translations en.json (Irish)
[ci skip]

* New translations en.json (Catalan)
[ci skip]

* New translations en.json (Catalan)
[ci skip]

* New translations en.json (Irish)
[ci skip]

* New translations en.json (Catalan)
[ci skip]

* New translations en.json (Irish)
[ci skip]

* New translations en.json (Catalan)
[ci skip]

* New translations en.json (Catalan)
[ci skip]

* New translations devise.en.yml (Catalan)
[ci skip]

* New translations en.json (Irish)
[ci skip]

* New translations devise.en.yml (Catalan)
[ci skip]

* New translations en.json (Irish)
[ci skip]

* New translations en.json (Catalan)
[ci skip]

* New translations en.yml (Welsh)
[ci skip]

* New translations simple_form.en.yml (Welsh)
[ci skip]

* New translations en.json (Welsh)
[ci skip]

* New translations en.json (Korean)
[ci skip]

* New translations en.json (Catalan)
[ci skip]

* New translations simple_form.en.yml (Catalan)
[ci skip]

* New translations en.json (Irish)
[ci skip]

* New translations en.yml (Vietnamese)
[ci skip]

* New translations en.json (Vietnamese)
[ci skip]

* New translations simple_form.en.yml (Vietnamese)
[ci skip]

* New translations en.yml (Catalan)
[ci skip]

* New translations en.yml (German)
[ci skip]

* New translations en.json (Turkish)
[ci skip]

* New translations en.yml (German)
[ci skip]

* New translations en.json (German)
[ci skip]

* New translations en.yml (Chinese Simplified)
[ci skip]

* New translations en.yml (Portuguese)
[ci skip]

* New translations en.yml (Portuguese, Brazilian)
[ci skip]

* New translations en.yml (Chinese Simplified)
[ci skip]

* New translations en.yml (Galician)
[ci skip]

* New translations en.json (Galician)
[ci skip]

* New translations en.json (Galician)
[ci skip]

* New translations en.yml (French)
[ci skip]

* New translations en.yml (French)
[ci skip]

* New translations en.yml (Korean)
[ci skip]

* New translations en.json (Korean)
[ci skip]

* New translations en.yml (Korean)
[ci skip]

* New translations en.json (Korean)
[ci skip]

* New translations simple_form.en.yml (Korean)
[ci skip]

* New translations doorkeeper.en.yml (Korean)
[ci skip]

* New translations en.json (Slovak)
[ci skip]

* New translations en.yml (Scottish Gaelic)
[ci skip]

* New translations en.json (Scottish Gaelic)
[ci skip]

* New translations simple_form.en.yml (Scottish Gaelic)
[ci skip]

* New translations activerecord.en.yml (Scottish Gaelic)
[ci skip]

* New translations devise.en.yml (Scottish Gaelic)
[ci skip]

* New translations doorkeeper.en.yml (Scottish Gaelic)
[ci skip]

* New translations en.json (Korean)
[ci skip]

* New translations en.json (Icelandic)
[ci skip]

* New translations en.json (Icelandic)
[ci skip]

* New translations en.json (Icelandic)
[ci skip]

* New translations en.json (Sorani (Kurdish))
[ci skip]

* New translations en.json (Sorani (Kurdish))
[ci skip]

* New translations en.json (Sorani (Kurdish))
[ci skip]

* Run `yarn manage:translations`

* Run `bundle exec i18n-tasks normalize`

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-04-28 14:34:28 +09:00
Eugen Rochko
09ab3d06f1 Fix n+1 query on feed merge and populate operations (#18111) 2022-04-26 22:06:31 +02:00
Claire
74e946ea5f Fix UnmergeWorker being exceptionally slow in some conditions (#18110) 2022-04-26 21:48:36 +02:00
Claire
368c9631d2 Fix PeerTube videos appearing with an erroneous “Edited at” marker (#18100)
* Fix PeerTube videos appearing with an erroneous “Edited at” marker

PeerTube videos have an `updated` field equal to `published`.
When processing an incoming activity that has the same value for `updated` and
`published`, assume this doesn't represent an actual edit.

* Please CodeClimate
2022-04-26 21:25:26 +02:00
Claire
ef902a72cf Fix instance actor being incorrectly created when running migrations (#18109)
* Add migration test about instance actor key

* Fix old migration

* Work around incorrect database state
2022-04-26 21:22:09 +02:00
Eugen Rochko
1ae83e0796 New Crowdin updates (#18062)
* New translations en.yml (Korean)

* New translations en.yml (Portuguese)

* New translations en.yml (Hungarian)

* New translations en.yml (Armenian)

* New translations en.yml (Georgian)

* New translations en.yml (Lithuanian)

* New translations en.yml (Macedonian)

* New translations en.yml (Dutch)

* New translations en.yml (Norwegian)

* New translations en.yml (Punjabi)

* New translations en.yml (Polish)

* New translations en.yml (Albanian)

* New translations en.yml (Basque)

* New translations en.yml (Serbian (Cyrillic))

* New translations en.yml (Turkish)

* New translations en.yml (Ukrainian)

* New translations en.yml (Chinese Traditional)

* New translations en.yml (Urdu (Pakistan))

* New translations en.yml (Icelandic)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Indonesian)

* New translations en.yml (Tamil)

* New translations en.yml (Spanish, Argentina)

* New translations en.yml (Finnish)

* New translations en.yml (Greek)

* New translations en.yml (Galician)

* New translations en.yml (Slovak)

* New translations en.yml (Chinese Simplified)

* New translations en.yml (Swedish)

* New translations en.yml (Arabic)

* New translations en.yml (French)

* New translations en.yml (Spanish)

* New translations en.yml (Catalan)

* New translations en.yml (Hebrew)

* New translations en.yml (Italian)

* New translations en.yml (Japanese)

* New translations en.yml (Russian)

* New translations en.yml (Slovenian)

* New translations en.yml (German)

* New translations en.yml (Vietnamese)

* New translations en.yml (Thai)

* New translations en.yml (Scottish Gaelic)

* New translations en.yml (Occitan)

* New translations en.yml (Persian)

* New translations en.yml (Romanian)

* New translations en.yml (Afrikaans)

* New translations en.yml (Bulgarian)

* New translations en.yml (Czech)

* New translations en.yml (Danish)

* New translations en.yml (Spanish, Mexico)

* New translations en.yml (Bengali)

* New translations en.yml (Sinhala)

* New translations en.yml (Silesian)

* New translations en.yml (Taigi)

* New translations en.yml (Ido)

* New translations en.yml (Kabyle)

* New translations en.yml (Sanskrit)

* New translations en.yml (Sardinian)

* New translations en.yml (Corsican)

* New translations en.yml (Sorani (Kurdish))

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.yml (Serbian (Latin))

* New translations en.yml (Asturian)

* New translations en.yml (Kannada)

* New translations en.yml (Cornish)

* New translations en.yml (Breton)

* New translations en.yml (Marathi)

* New translations en.yml (Malayalam)

* New translations en.yml (Tatar)

* New translations en.yml (Chinese Traditional, Hong Kong)

* New translations en.yml (Uyghur)

* New translations en.yml (Esperanto)

* New translations en.yml (Welsh)

* New translations en.yml (Telugu)

* New translations en.yml (Malay)

* New translations en.yml (Hindi)

* New translations en.yml (Latvian)

* New translations en.yml (Estonian)

* New translations en.yml (Kazakh)

* New translations en.yml (Norwegian Nynorsk)

* New translations en.yml (Croatian)

* New translations en.yml (Standard Moroccan Tamazight)

* New translations en.yml (Catalan)

* New translations en.yml (Japanese)

* New translations en.json (Catalan)

* New translations en.yml (Greek)

* New translations en.yml (Chinese Traditional)

* New translations en.yml (Turkish)

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.yml (Latvian)

* New translations en.yml (Czech)

* New translations en.yml (Russian)

* New translations en.yml (Czech)

* New translations en.yml (Spanish, Argentina)

* New translations en.yml (Korean)

* New translations en.yml (Vietnamese)

* New translations en.yml (Catalan)

* New translations en.yml (French)

* New translations en.yml (Spanish)

* New translations en.yml (Galician)

* New translations en.yml (Icelandic)

* New translations en.yml (Italian)

* New translations en.yml (Hungarian)

* New translations en.yml (Thai)

* New translations en.json (Irish)

* New translations en.yml (Irish)

* New translations simple_form.en.yml (Irish)

* New translations activerecord.en.yml (Irish)

* New translations devise.en.yml (Irish)

* New translations doorkeeper.en.yml (Irish)

* New translations simple_form.en.yml (Turkish)

* New translations en.yml (Vietnamese)

* New translations en.yml (Vietnamese)

* New translations en.yml (Indonesian)

* New translations en.yml (Ukrainian)

* New translations en.yml (Thai)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.json (Irish)

* New translations en.yml (Vietnamese)

* New translations en.yml (German)

* New translations en.json (German)

* New translations en.json (German)

* New translations en.json (German)

* New translations en.json (German)

* New translations en.yml (Arabic)

* New translations en.json (Arabic)

* New translations doorkeeper.en.yml (Arabic)

* New translations en.yml (Turkish)

* Run `yarn manage:translations`

* Run `bundle exec i18n-tasks normalize`

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-04-24 06:33:26 +09:00
Claire
bf3efdbb2d Fix web push notifications containing HTML entities (#18071) 2022-04-23 21:47:43 +02:00
Jeong Arm
4af30ac16b Let votes statuses are also searchable (#18070) 2022-04-23 21:47:27 +02:00
Eugen Rochko
e0a1c43a69 New Crowdin updates (#18032)
* New translations en.json (Vietnamese)

* New translations en.yml (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Japanese)

* New translations en.yml (French)

* New translations en.json (Asturian)

* New translations en.yml (Asturian)

* New translations en.json (Asturian)

* New translations en.yml (Asturian)

* New translations simple_form.en.yml (Asturian)

* New translations simple_form.en.yml (Asturian)

* New translations en.yml (Turkish)

* New translations en.yml (German)

* New translations simple_form.en.yml (German)

* New translations en.json (Vietnamese)

* New translations en.json (Turkish)

* New translations simple_form.en.yml (Turkish)

* New translations en.yml (Korean)

* New translations en.json (Korean)

* New translations en.json (Turkish)

* New translations en.json (Turkish)

* New translations en.yml (Turkish)

* New translations en.json (Turkish)

* New translations simple_form.en.yml (Turkish)

* New translations devise.en.yml (Turkish)

* New translations en.yml (Catalan)

* New translations en.json (Catalan)

* New translations en.yml (German)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations simple_form.en.yml (Japanese)

* New translations doorkeeper.en.yml (Japanese)

* New translations en.yml (French)

* New translations en.json (Japanese)

* New translations en.yml (Japanese)

* New translations doorkeeper.en.yml (Japanese)

* New translations simple_form.en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations simple_form.en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations simple_form.en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.yml (Japanese)

* New translations en.json (Portuguese, Brazilian)

* New translations en.json (Chinese Simplified)

* New translations en.json (Catalan)

* New translations en.yml (Catalan)

* New translations en.json (Catalan)

* New translations en.yml (French)

* New translations en.yml (Catalan)

* New translations en.yml (Vietnamese)

* New translations simple_form.en.yml (Catalan)

* New translations en.json (Vietnamese)

* New translations doorkeeper.en.yml (Catalan)

* New translations en.yml (Catalan)

* New translations en.json (Catalan)

* New translations simple_form.en.yml (Catalan)

* New translations simple_form.en.yml (Japanese)

* New translations simple_form.en.yml (Japanese)

* New translations simple_form.en.yml (Japanese)

* New translations en.yml (Portuguese)

* New translations en.yml (Hungarian)

* New translations en.yml (Armenian)

* New translations en.yml (Georgian)

* New translations en.yml (Lithuanian)

* New translations en.yml (Macedonian)

* New translations en.yml (Dutch)

* New translations en.yml (Norwegian)

* New translations en.yml (Punjabi)

* New translations en.yml (Polish)

* New translations en.yml (Albanian)

* New translations en.yml (Basque)

* New translations en.yml (Serbian (Cyrillic))

* New translations en.yml (Ukrainian)

* New translations en.yml (Chinese Traditional)

* New translations en.yml (Urdu (Pakistan))

* New translations en.yml (Icelandic)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Indonesian)

* New translations en.yml (Tamil)

* New translations en.yml (Spanish, Argentina)

* New translations en.yml (Finnish)

* New translations en.yml (Greek)

* New translations en.yml (Galician)

* New translations en.yml (Slovak)

* New translations en.yml (Swedish)

* New translations en.yml (Arabic)

* New translations en.yml (Spanish)

* New translations en.yml (Hebrew)

* New translations en.yml (Italian)

* New translations en.yml (Japanese)

* New translations en.yml (Russian)

* New translations en.yml (Slovenian)

* New translations en.yml (Thai)

* New translations en.yml (Persian)

* New translations en.yml (Romanian)

* New translations en.yml (Afrikaans)

* New translations en.yml (Bulgarian)

* New translations en.yml (Czech)

* New translations en.yml (Danish)

* New translations en.yml (Spanish, Mexico)

* New translations en.yml (Scottish Gaelic)

* New translations en.yml (Occitan)

* New translations en.yml (Bengali)

* New translations en.yml (Malay)

* New translations en.yml (Marathi)

* New translations en.yml (Uyghur)

* New translations en.yml (Esperanto)

* New translations en.yml (Telugu)

* New translations en.yml (Welsh)

* New translations en.yml (Hindi)

* New translations en.yml (Latvian)

* New translations en.yml (Estonian)

* New translations en.yml (Kazakh)

* New translations en.yml (Norwegian Nynorsk)

* New translations en.yml (Croatian)

* New translations en.yml (Sorani (Kurdish))

* New translations en.yml (Silesian)

* New translations en.yml (Taigi)

* New translations en.yml (Ido)

* New translations en.yml (Kabyle)

* New translations en.yml (Sanskrit)

* New translations en.yml (Sardinian)

* New translations en.yml (Corsican)

* New translations en.yml (Breton)

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.yml (Serbian (Latin))

* New translations en.yml (Kannada)

* New translations en.yml (Cornish)

* New translations en.yml (Sinhala)

* New translations en.yml (Malayalam)

* New translations en.yml (Tatar)

* New translations en.yml (Chinese Traditional, Hong Kong)

* New translations en.yml (Standard Moroccan Tamazight)

* Run `yarn manage:translations`

* Run `bundle exec i18n-tasks normalize`

* Run `bundle exec i18n-tasks normalize`

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-04-22 03:21:08 +09:00
Eugen Rochko
71d83f4e61 New Crowdin updates (#17995)
* New translations en.json (Catalan)

* New translations en.yml (Persian)

* New translations en.yml (Romanian)

* New translations en.yml (Afrikaans)

* New translations en.yml (Bulgarian)

* New translations en.yml (Czech)

* New translations en.yml (Spanish, Argentina)

* New translations en.yml (Spanish, Mexico)

* New translations en.yml (Sanskrit)

* New translations en.yml (Asturian)

* New translations en.yml (Serbian (Latin))

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.yml (Sorani (Kurdish))

* New translations en.yml (Corsican)

* New translations en.yml (Sardinian)

* New translations en.yml (Kabyle)

* New translations en.yml (Cornish)

* New translations en.yml (Ido)

* New translations en.yml (Taigi)

* New translations en.yml (Silesian)

* New translations en.yml (Standard Moroccan Tamazight)

* New translations en.json (Czech)

* New translations en.json (Hungarian)

* New translations en.yml (Kannada)

* New translations en.yml (Sinhala)

* New translations en.yml (Bengali)

* New translations en.yml (Hindi)

* New translations en.yml (Marathi)

* New translations en.yml (Croatian)

* New translations en.yml (Norwegian Nynorsk)

* New translations en.yml (Kazakh)

* New translations en.yml (Estonian)

* New translations en.yml (Latvian)

* New translations en.yml (Malay)

* New translations en.yml (Breton)

* New translations en.yml (Telugu)

* New translations en.yml (Welsh)

* New translations en.yml (Esperanto)

* New translations en.yml (Uyghur)

* New translations en.yml (Chinese Traditional, Hong Kong)

* New translations en.yml (Tatar)

* New translations en.yml (Malayalam)

* New translations en.json (Icelandic)

* New translations en.json (Vietnamese)

* New translations en.yml (Korean)

* New translations en.yml (Catalan)

* New translations en.yml (Czech)

* New translations en.yml (Icelandic)

* New translations en.json (Korean)

* New translations en.json (Polish)

* New translations en.yml (Albanian)

* New translations en.json (Albanian)

* New translations en.yml (Vietnamese)

* New translations en.yml (Chinese Traditional)

* New translations en.json (Chinese Traditional)

* New translations en.json (Vietnamese)

* New translations en.json (Russian)

* New translations en.yml (Russian)

* New translations en.json (Russian)

* New translations en.json (Latvian)

* New translations en.yml (Spanish, Argentina)

* New translations en.json (Spanish, Argentina)

* New translations en.yml (Danish)

* New translations en.yml (Latvian)

* New translations en.yml (Spanish)

* New translations en.json (Spanish)

* New translations simple_form.en.yml (Catalan)

* New translations simple_form.en.yml (Chinese Traditional)

* New translations simple_form.en.yml (Portuguese)

* New translations simple_form.en.yml (Russian)

* New translations simple_form.en.yml (Slovak)

* New translations simple_form.en.yml (Albanian)

* New translations simple_form.en.yml (Serbian (Cyrillic))

* New translations simple_form.en.yml (Swedish)

* New translations simple_form.en.yml (Turkish)

* New translations simple_form.en.yml (Ukrainian)

* New translations simple_form.en.yml (Dutch)

* New translations simple_form.en.yml (Vietnamese)

* New translations simple_form.en.yml (Galician)

* New translations simple_form.en.yml (Icelandic)

* New translations simple_form.en.yml (Portuguese, Brazilian)

* New translations simple_form.en.yml (Indonesian)

* New translations simple_form.en.yml (Persian)

* New translations simple_form.en.yml (Tamil)

* New translations simple_form.en.yml (Spanish, Argentina)

* New translations simple_form.en.yml (Spanish, Mexico)

* New translations simple_form.en.yml (Bengali)

* New translations simple_form.en.yml (Norwegian)

* New translations simple_form.en.yml (Slovenian)

* New translations simple_form.en.yml (Danish)

* New translations simple_form.en.yml (Chinese Simplified)

* New translations simple_form.en.yml (Thai)

* New translations simple_form.en.yml (Polish)

* New translations simple_form.en.yml (Romanian)

* New translations simple_form.en.yml (French)

* New translations simple_form.en.yml (Spanish)

* New translations simple_form.en.yml (Arabic)

* New translations simple_form.en.yml (Bulgarian)

* New translations simple_form.en.yml (Czech)

* New translations simple_form.en.yml (German)

* New translations simple_form.en.yml (Greek)

* New translations simple_form.en.yml (Basque)

* New translations simple_form.en.yml (Finnish)

* New translations simple_form.en.yml (Hebrew)

* New translations simple_form.en.yml (Hungarian)

* New translations simple_form.en.yml (Armenian)

* New translations simple_form.en.yml (Italian)

* New translations simple_form.en.yml (Japanese)

* New translations simple_form.en.yml (Georgian)

* New translations simple_form.en.yml (Korean)

* New translations simple_form.en.yml (Croatian)

* New translations simple_form.en.yml (Ido)

* New translations simple_form.en.yml (Kabyle)

* New translations simple_form.en.yml (Sardinian)

* New translations simple_form.en.yml (Corsican)

* New translations simple_form.en.yml (Sorani (Kurdish))

* New translations simple_form.en.yml (Kurmanji (Kurdish))

* New translations simple_form.en.yml (Serbian (Latin))

* New translations simple_form.en.yml (Occitan)

* New translations simple_form.en.yml (Asturian)

* New translations simple_form.en.yml (Scottish Gaelic)

* New translations simple_form.en.yml (Norwegian Nynorsk)

* New translations simple_form.en.yml (Sinhala)

* New translations simple_form.en.yml (Breton)

* New translations simple_form.en.yml (Malayalam)

* New translations simple_form.en.yml (Tatar)

* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)

* New translations simple_form.en.yml (Esperanto)

* New translations simple_form.en.yml (Welsh)

* New translations simple_form.en.yml (Latvian)

* New translations simple_form.en.yml (Estonian)

* New translations simple_form.en.yml (Kazakh)

* New translations simple_form.en.yml (Standard Moroccan Tamazight)

* New translations simple_form.en.yml (Czech)

* New translations simple_form.en.yml (Latvian)

* New translations simple_form.en.yml (Spanish)

* New translations simple_form.en.yml (Czech)

* New translations simple_form.en.yml (Korean)

* New translations simple_form.en.yml (Russian)

* New translations simple_form.en.yml (Spanish, Argentina)

* New translations simple_form.en.yml (Polish)

* New translations en.json (Swedish)

* New translations en.yml (Italian)

* New translations en.json (Italian)

* New translations simple_form.en.yml (Italian)

* New translations simple_form.en.yml (Catalan)

* New translations en.yml (Portuguese)

* New translations en.json (Portuguese)

* New translations en.yml (Kurmanji (Kurdish))

* New translations simple_form.en.yml (Portuguese)

* New translations simple_form.en.yml (Russian)

* New translations en.json (French)

* New translations simple_form.en.yml (French)

* New translations en.json (Polish)

* New translations en.json (Polish)

* New translations en.yml (Kurmanji (Kurdish))

* New translations simple_form.en.yml (Kurmanji (Kurdish))

* New translations simple_form.en.yml (Arabic)

* New translations en.yml (Arabic)

* New translations simple_form.en.yml (Arabic)

* New translations doorkeeper.en.yml (Arabic)

* New translations en.yml (Arabic)

* New translations doorkeeper.en.yml (Arabic)

* New translations simple_form.en.yml (Chinese Traditional)

* New translations en.yml (Esperanto)

* New translations en.json (Esperanto)

* New translations en.yml (Esperanto)

* New translations en.yml (Turkish)

* New translations en.json (Turkish)

* New translations simple_form.en.yml (Turkish)

* New translations en.yml (Czech)

* New translations en.yml (Esperanto)

* New translations en.yml (Esperanto)

* New translations en.yml (Esperanto)

* New translations en.yml (Greek)

* New translations en.json (Greek)

* New translations simple_form.en.yml (Greek)

* New translations simple_form.en.yml (Icelandic)

* New translations en.yml (Czech)

* New translations en.yml (Ukrainian)

* New translations en.yml (Ukrainian)

* New translations en.json (Ukrainian)

* New translations simple_form.en.yml (Ukrainian)

* New translations en.yml (Ukrainian)

* New translations en.json (Ukrainian)

* New translations doorkeeper.en.yml (Ukrainian)

* New translations simple_form.en.yml (Danish)

* New translations en.yml (Galician)

* New translations en.json (Galician)

* New translations simple_form.en.yml (Galician)

* New translations simple_form.en.yml (Vietnamese)

* New translations en.yml (German)

* New translations en.json (German)

* New translations en.yml (Esperanto)

* New translations en.yml (Esperanto)

* New translations en.yml (Esperanto)

* New translations en.yml (Esperanto)

* New translations en.yml (Esperanto)

* New translations en.yml (Esperanto)

* New translations en.json (French)

* New translations en.yml (Indonesian)

* New translations en.json (Indonesian)

* New translations en.yml (Indonesian)

* New translations simple_form.en.yml (Indonesian)

* New translations en.yml (Thai)

* New translations en.json (Thai)

* New translations simple_form.en.yml (Thai)

* New translations simple_form.en.yml (Thai)

* New translations en.yml (Armenian)

* New translations en.json (Armenian)

* New translations en.yml (Italian)

* New translations en.json (Italian)

* New translations en.yml (Catalan)

* New translations en.json (Catalan)

* New translations en.yml (Spanish, Argentina)

* New translations en.json (Kurmanji (Kurdish))

* New translations simple_form.en.yml (Hungarian)

* New translations en.yml (Chinese Simplified)

* New translations simple_form.en.yml (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Chinese Simplified)

* New translations en.yml (Chinese Simplified)

* New translations en.yml (Chinese Simplified)

* New translations en.yml (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.yml (Chinese Simplified)

* New translations simple_form.en.yml (Chinese Simplified)

* New translations en.yml (Chinese Simplified)

* New translations en.json (Polish)

* New translations en.json (Polish)

* New translations en.json (Polish)

* New translations en.json (Polish)

* New translations doorkeeper.en.yml (Polish)

* New translations doorkeeper.en.yml (Polish)

* New translations en.yml (Polish)

* New translations en.yml (Polish)

* New translations en.yml (Polish)

* New translations en.yml (Polish)

* New translations simple_form.en.yml (Polish)

* New translations en.json (Polish)

* New translations en.json (Polish)

* New translations en.json (Catalan)

* New translations en.json (Vietnamese)

* New translations en.yml (Vietnamese)

* New translations en.json (Vietnamese)

* New translations en.json (Vietnamese)

* New translations en.yml (Vietnamese)

* Run `yarn manage:translations`

* Run `bundle exec i18n-tasks normalize`

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-04-14 02:52:53 +09:00
Jeong Arm
c9fceecff1 Fix FetchFeaturedCollectionService (#18030) 2022-04-13 13:25:42 +02:00
dogelover911
64b6d84782 FeedManager: skip account when target_account's last status is too old (#18009)
Co-authored-by: dogelover911 <dogelover911@localhost>
2022-04-11 21:17:03 +02:00
Claire
5e13634c6b Fix crash in alias settings page (#18004) 2022-04-09 20:11:06 +02:00
0x2019
e681e8d14c Fix error resposes for from search prefix (#17963)
* Fix error responses in `from` search prefix (addresses mastodon/mastodon#17941)

Using unsupported prefixes now reports a 422; searching for posts from an
account the instance is not aware of reports a 404. TODO: The UI for this
on the front end is abysmal.

Searching `from:username@domain` now succeeds when `domain` is the local
domain; searching `from:@username(@domain)?` now works as expected.

* Remove unused methods on new Error classes as they are not being used

Currently when `raise`d there are error messages being supplied, but
this is not actually being used. The associated `raise`s have been
edited accordingly.

* Remove needless comments

* Satisfy rubocop

* Try fixing tests being unable to find AccountFindingConcern methods

* Satisfy rubocop

* Simplify `from` prefix logic

This incorporates @ClearlyClaire's suggestion (see
https://github.com/mastodon/mastodon/pull/17963#pullrequestreview-933986737).

Accepctable account strings in `from:` clauses are more lenient than
before this commit; for example, `from:@user@example.org@asnteo +cat`
will not error, and return posts by @user@example.org containing the
word "cat". This is more consistent with how Mastodon matches mentions
in statuses. In addition, `from` clauses will not be checked for
syntatically invalid usernames or domain names, simply 404ing when
`Account.find_remote!` raises ActiveRecord::NotFound.

New code for this PR that is no longer used has been removed.
2022-04-08 21:21:49 +02:00
Eugen Rochko
d2265cab26 Fix dangling language-specific trends (#17997)
- Change score half-life for trending statuses from 2 to 6 hours
- Change score threshold for trimming old items from 1 to 0.3
2022-04-08 19:35:31 +02:00
Claire
c9a5121ae5 Auto-fill timeline gaps when getting re-connecting to Websocket/EventSource stream (#17987) 2022-04-08 19:17:54 +02:00
Claire
72be882792 Fix extremely rare race condition when deleting a toot or account (#17994) 2022-04-08 19:17:37 +02:00
Eugen Rochko
4ba66d256a Change e-mail notifications to only be sent when recipient is offline (#17984)
* Change e-mail notifications to only be sent when recipient is offline

Change the default for follow and mention notifications back on

* Add preference to always send e-mail notifications

* Change wording
2022-04-08 18:03:31 +02:00
Eugen Rochko
e3be46c743 Fix trends returning less results per page when filtered in REST API (#17996)
- Change filtering and pagination to occur in SQL instead of Redis
- Change rank/score displayed on trends in admin UI to be locale-specific
2022-04-08 17:10:53 +02:00
Eugen Rochko
330c279c0c New Crowdin updates (#17897)
* New translations en.yml (Danish)

* New translations en.yml (German)

* New translations en.yml (Basque)

* New translations en.yml (Finnish)

* New translations en.yml (Hungarian)

* New translations en.yml (Hebrew)

* New translations en.yml (Catalan)

* New translations en.yml (Spanish)

* New translations en.yml (French)

* New translations en.yml (Arabic)

* New translations en.yml (Armenian)

* New translations en.yml (Afrikaans)

* New translations en.yml (Polish)

* New translations en.yml (Punjabi)

* New translations en.yml (Serbian (Cyrillic))

* New translations en.yml (Portuguese)

* New translations en.yml (Albanian)

* New translations en.yml (Dutch)

* New translations en.yml (Turkish)

* New translations en.yml (Chinese Traditional)

* New translations en.yml (Urdu (Pakistan))

* New translations en.yml (Icelandic)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Indonesian)

* New translations en.yml (Tamil)

* New translations en.yml (Spanish, Argentina)

* New translations en.yml (Norwegian)

* New translations en.yml (Korean)

* New translations en.yml (Macedonian)

* New translations en.yml (Slovenian)

* New translations en.yml (Chinese Simplified)

* New translations en.yml (Swedish)

* New translations en.yml (Italian)

* New translations en.yml (Japanese)

* New translations en.yml (Russian)

* New translations en.yml (Slovak)

* New translations en.yml (Vietnamese)

* New translations en.yml (Lithuanian)

* New translations en.yml (Scottish Gaelic)

* New translations en.yml (Occitan)

* New translations en.yml (Persian)

* New translations en.yml (Galician)

* New translations en.yml (Georgian)

* New translations en.yml (Spanish, Mexico)

* New translations en.yml (Bengali)

* New translations en.yml (Sinhala)

* New translations en.yml (Silesian)

* New translations en.yml (Taigi)

* New translations en.yml (Ido)

* New translations en.yml (Kabyle)

* New translations en.yml (Sanskrit)

* New translations en.yml (Sardinian)

* New translations en.yml (Corsican)

* New translations en.yml (Sorani (Kurdish))

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.yml (Serbian (Latin))

* New translations en.yml (Asturian)

* New translations en.yml (Kannada)

* New translations en.yml (Cornish)

* New translations en.yml (Breton)

* New translations en.yml (Marathi)

* New translations en.yml (Malayalam)

* New translations en.yml (Tatar)

* New translations en.yml (Chinese Traditional, Hong Kong)

* New translations en.yml (Uyghur)

* New translations en.yml (Esperanto)

* New translations en.yml (Welsh)

* New translations en.yml (Telugu)

* New translations en.yml (Malay)

* New translations en.yml (Hindi)

* New translations en.yml (Latvian)

* New translations en.yml (Estonian)

* New translations en.yml (Kazakh)

* New translations en.yml (Norwegian Nynorsk)

* New translations en.yml (Croatian)

* New translations en.yml (Standard Moroccan Tamazight)

* New translations en.yml (German)

* New translations en.yml (Icelandic)

* New translations en.yml (Catalan)

* New translations en.yml (Czech)

* New translations en.yml (Italian)

* New translations doorkeeper.en.yml (Czech)

* New translations en.yml (Danish)

* New translations en.json (Czech)

* New translations doorkeeper.en.yml (Czech)

* New translations en.yml (Czech)

* New translations doorkeeper.en.yml (Czech)

* New translations en.yml (Latvian)

* New translations doorkeeper.en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.yml (Indonesian)

* New translations en.yml (Czech)

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.yml (Czech)

* New translations en.yml (Czech)

* New translations simple_form.en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.yml (Hungarian)

* New translations simple_form.en.yml (Czech)

* New translations simple_form.en.yml (Czech)

* New translations en.yml (Korean)

* New translations en.yml (Spanish)

* New translations en.yml (Czech)

* New translations simple_form.en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.yml (Portuguese)

* New translations en.yml (Polish)

* New translations en.yml (Chinese Traditional)

* New translations en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.json (Chinese Traditional)

* New translations en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.json (Chinese Traditional)

* New translations en.json (Chinese Traditional)

* New translations en.yml (Czech)

* New translations en.json (Chinese Traditional)

* New translations en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.yml (Spanish, Argentina)

* New translations en.json (Chinese Traditional)

* New translations en.yml (Czech)

* New translations en.yml (Czech)

* New translations en.json (Italian)

* New translations en.yml (Galician)

* New translations en.yml (French)

* New translations en.yml (Vietnamese)

* New translations simple_form.en.yml (Vietnamese)

* New translations en.yml (Vietnamese)

* New translations simple_form.en.yml (Vietnamese)

* New translations en.yml (Vietnamese)

* New translations simple_form.en.yml (Vietnamese)

* New translations simple_form.en.yml (Vietnamese)

* New translations en.yml (Korean)

* New translations en.json (Korean)

* New translations simple_form.en.yml (Galician)

* New translations en.yml (Korean)

* New translations en.yml (Portuguese)

* New translations en.yml (Hungarian)

* New translations en.yml (Armenian)

* New translations en.yml (Dutch)

* New translations en.yml (Norwegian)

* New translations en.yml (Polish)

* New translations en.yml (Albanian)

* New translations en.yml (Basque)

* New translations en.yml (Turkish)

* New translations en.yml (Ukrainian)

* New translations en.yml (Chinese Traditional)

* New translations en.yml (Icelandic)

* New translations en.yml (Portuguese, Brazilian)

* New translations en.yml (Indonesian)

* New translations en.yml (Tamil)

* New translations en.yml (Spanish, Argentina)

* New translations en.yml (Finnish)

* New translations en.yml (Greek)

* New translations en.yml (Galician)

* New translations en.yml (Slovak)

* New translations en.yml (Chinese Simplified)

* New translations en.yml (Swedish)

* New translations en.yml (Arabic)

* New translations en.yml (French)

* New translations en.yml (Spanish)

* New translations en.yml (Catalan)

* New translations en.yml (Italian)

* New translations en.yml (Japanese)

* New translations en.yml (Russian)

* New translations en.yml (Slovenian)

* New translations en.yml (German)

* New translations en.yml (Vietnamese)

* New translations en.yml (Thai)

* New translations en.yml (Scottish Gaelic)

* New translations en.yml (Occitan)

* New translations en.yml (Persian)

* New translations en.yml (Romanian)

* New translations en.yml (Czech)

* New translations en.yml (Danish)

* New translations en.yml (Spanish, Mexico)

* New translations en.yml (Kabyle)

* New translations en.yml (Sardinian)

* New translations en.yml (Corsican)

* New translations en.yml (Sorani (Kurdish))

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.yml (Breton)

* New translations en.yml (Chinese Traditional, Hong Kong)

* New translations en.yml (Esperanto)

* New translations en.yml (Welsh)

* New translations en.yml (Latvian)

* New translations en.yml (Norwegian Nynorsk)

* New translations en.yml (Croatian)

* New translations en.yml (Catalan)

* New translations en.yml (Latvian)

* New translations en.yml (Catalan)

* New translations en.yml (Latvian)

* New translations en.yml (Icelandic)

* New translations en.yml (Chinese Traditional)

* New translations en.yml (Swedish)

* New translations en.yml (Russian)

* New translations en.yml (Czech)

* New translations en.yml (Spanish, Argentina)

* New translations en.yml (Czech)

* New translations en.yml (Spanish, Argentina)

* New translations en.yml (Danish)

* New translations en.yml (Danish)

* New translations en.yml (Korean)

* New translations en.yml (Korean)

* New translations en.yml (Galician)

* New translations en.yml (Vietnamese)

* New translations en.yml (Galician)

* New translations en.yml (Turkish)

* New translations en.yml (Polish)

* New translations en.yml (Hungarian)

* New translations en.yml (Hungarian)

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.yml (Kurmanji (Kurdish))

* New translations en.yml (Italian)

* New translations en.yml (Spanish)

* New translations en.yml (Arabic)

* New translations en.json (Arabic)

* New translations doorkeeper.en.yml (Arabic)

* New translations en.yml (Arabic)

* New translations en.yml (French)

* New translations en.json (Arabic)

* New translations en.json (Arabic)

* New translations en.json (Arabic)

* New translations en.json (Breton)

* New translations en.yml (Arabic)

* New translations en.json (Arabic)

* New translations en.yml (Vietnamese)

* New translations en.yml (Korean)

* New translations en.yml (Vietnamese)

* New translations en.yml (Esperanto)

* New translations en.json (Esperanto)

* New translations en.json (Esperanto)

* New translations en.json (Esperanto)

* New translations en.json (Esperanto)

* New translations en.yml (Esperanto)

* New translations en.json (Esperanto)

* New translations en.yml (Esperanto)

* New translations en.yml (Esperanto)

* New translations en.yml (Esperanto)

* Run `yarn manage:translations`

* Run `bundle exec i18n-tasks normalzie`

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-04-08 19:52:22 +09:00
Eugen Rochko
aa6bc541d3 Fix pagination header on empty trends responses in REST API (#17986) 2022-04-07 18:06:15 +02:00
Claire
d43028a0d3 Fix potentially missing statuses when reconnecting to websocket (#17981)
* Fix potentially missing statuses when reconnecting to websocket

* Add gap on reconnect rather than maintaining it constantly
2022-04-07 16:08:17 +02:00
Claire
7ee6cc230e Fix failure when sending warning emails with custom text (#17983)
* Add tests

* Fix failure when sending warning emails with custom text
2022-04-07 14:47:30 +02:00
Claire
00d429879f Fix older items possibly disappearing on timeline updates (#17980)
In some rare cases, when receiving statuses out of order from the streaming
API then polling from the REST API, it was possible for the
`expandNormalizedTimeline` function to remove older items from the timeline.

This commit ensures that any item from the replaced slice that is older
than the oldest item retrieved from the API gets added back to the replaced
slice.
2022-04-07 11:27:35 +02:00
Eugen Rochko
cea2cd9a56 Add pagination for trending statuses in web UI (#17976) 2022-04-06 22:53:29 +02:00
Claire
623f8717c8 Fix possible duplicate statuses in timelines in some edge cases (#17971)
In some rare cases, when receiving statuses out of order from the streaming
API then polling from the REST API, it was possible for the
`expandNormalizedTimeline` function to insert duplicates in the timeline,
which would then result in several bugs.

This commits ensures that there are no duplicates inserted in the
timeline.
2022-04-06 21:01:41 +02:00
Claire
d62ebc9d7b Fix spurious edits and require incoming edits to be explicitly marked as such (#17918)
* Change post text edit to not be considered significant if it's identical after reformatting

* We don't need to clear previous change information anymore

* Require status edits to be explicit, except for poll tallies

* Fix tests

* Add some tests

* Add poll-related tests

* Add HTML-formatting related tests
2022-04-06 21:01:02 +02:00
Claire
82375bdb7c Fix error when encountering invalid pinned posts (#17964) 2022-04-06 20:58:23 +02:00
Eugen Rochko
f982d56b4e Remove sign-in token authentication, instead send e-mail about new sign-in (#17970) 2022-04-06 20:58:12 +02:00
Claire
7790624ca4 Fix inconsistency in error handling when removing a status (#17974)
Not completely sure this could actually have any ill effect, but if
`RemoveStatusService` fails to acquire a lock in an
`ActivityPub::ProcessingWorker` job processing a `Delete`, the status
is currently discarded and causes a job failure but the next time the
job is attempted, it will skip deleting the status due to it being
discarded.

This commit makes the behavior of `RemoveStatusService` a bit more consistent
in case of failure to acquire the lock.
2022-04-06 20:57:52 +02:00
Claire
0e3717eb2d Fix admin API unconditionally requiring CSRF token (#17975)
Fixes #17898

Since #17204, the admin API has only been available through the web
application because of the unconditional requirement to provide a valid CSRF
token.

This commit changes it back to `null_session`, which should make it work
both with session-based authentication (provided a CSRF token) and with a
bearer token.
2022-04-06 20:57:18 +02:00