Commit graph

8857 commits

Author SHA1 Message Date
Eugen Rochko
1c2b085a64 Fix media processing getting stuck on too much stdin/stderr (#16136)
* Fix media processing getting stuck on too much stdin/stderr

See thoughtbot/terrapin#5

* Remove dependency on paperclip-av-transcoder gem

* Remove dependency on streamio-ffmpeg gem

* Disable stdin on ffmpeg process
2021-05-05 19:44:01 +02:00
Mélanie Chauvel
6930e22a7c Improve description of keyboard shortcuts (#16129)
* Remove useless “to” from shortcuts description

* Improve descriptions of keyboard shortcuts

* Use curved quotations marks instead of straight ones
2021-05-04 23:23:36 +02:00
Eugen Rochko
d3b2560e58 Fix existing username validator not allowing multiple accounts (#16153)
Fix #16107
2021-05-04 14:22:04 +02:00
Eugen Rochko
876061e777 Fix empty home feed before first follow has finished processing (#16152)
Change queue of merge worker from pull to default
2021-05-04 04:45:08 +02:00
Claire
db57eaf207 Change confirmations controller to redirect to / for approved users (#16151)
Clicking the confirmation link multiple times currently leads to entering
account settings, which can be confusing. This commit changes that so that
it redirects to the root path, so it behaves the same way as clicking only
once in most cases.
2021-05-03 15:45:19 +02:00
fusagiko / takayamaki
3e3c54d56d fix component name (#16138)
It seems forget renaming when It copied from MissingIndicator.

Co-authored-by: fusagiko / takayamaki <takayamaki@users.noreply.github.com>
2021-05-03 14:59:49 +02:00
Eugen Rochko
cc0cb9dd97 Fix trying to fetch key from empty URI when verifying HTTP signature (#16100) 2021-05-01 23:18:59 +02:00
abcang
dec6f34546 Further improve the media attached status query for accounts (#16106) 2021-04-26 18:57:46 +02:00
Eugen Rochko
bc522c698c Fix thread resolve worker retrying when status no longer exists (#16109) 2021-04-26 18:56:45 +02:00
Claire
bf44601a23 Add environment variables to control custom emoji size limits
Fixes #1524
2021-04-26 11:22:22 +02:00
abcang
fa2d62e6e2 Improve media attached status query (#16105) 2021-04-25 06:34:48 +02:00
abcang
fd2c5e27c7 Improve tag search query (#16104) 2021-04-25 06:33:28 +02:00
Eugen Rochko
f5d59b3979 Change auto-following admin-selected accounts, show in recommendations (#16078) 2021-04-24 17:01:43 +02:00
Eugen Rochko
bf5d831fe7 Fix nil error when removing status caused by race condition (#16099) 2021-04-24 13:35:39 +02:00
Claire
3b3907ec9d Fix edge case where accepted follow cannot be processed because of follow limit (#16098) 2021-04-23 22:51:21 +02:00
Eugen Rochko
383fb6b7bc Fix delete of local reply to local parent not being forwarded (#16096) 2021-04-22 14:26:11 +02:00
Eugen Rochko
f7704cc4d7 Add af, gd and si locales (#16090)
* Add af, gd and si locales

* i18n-tasks normalize

* Fix inconsistent interpolations

Co-authored-by: GunChleoc <fios@foramnagaidhlig.net>
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2021-04-22 05:12:27 +02:00
Eugen Rochko
aaa8275d0d New Crowdin updates (#16088)
* New translations en.yml (Finnish)
[ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations en.yml (Spanish, Argentina)
[ci skip]

* New translations en.json (Spanish, Argentina)
[ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations en.yml (Spanish, Mexico)
[ci skip]

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

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

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

* New translations activerecord.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 (Urdu (Pakistan))
[ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations en.json (Spanish, Mexico)
[ci skip]

* New translations doorkeeper.en.yml (Spanish, Argentina)
[ci skip]

* New translations activerecord.en.yml (Spanish, Argentina)
[ci skip]

* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations devise.en.yml (Standard Moroccan Tamazight)
[ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* i18n-tasks normalize

* yarn manage:translations
2021-04-22 03:27:43 +02:00
Eugen Rochko
2daf464ff0 New Crowdin updates (#15719)
* New translations en.yml (Spanish)
[ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations en.yml (Spanish, Argentina)
[ci skip]

* New translations en.yml (Spanish, Argentina)
[ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations en.json (Standard Moroccan Tamazight)
[ci skip]

* New translations activerecord.en.yml (Standard Moroccan Tamazight)
[ci skip]

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

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

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

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

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

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

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

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

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

* New translations en.yml (Spanish, Mexico)
[ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations activerecord.en.yml (Spanish, Mexico)
[ci skip]

* New translations en.yml (Spanish, Mexico)
[ci skip]

* New translations en.json (Spanish, Mexico)
[ci skip]

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

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

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

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

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

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

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

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

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

* New translations en.yml (Chinese Traditional, Hong Kong)
[ci skip]

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

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

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

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

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

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

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

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

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

* New translations en.yml (Spanish, Argentina)
[ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations en.yml (Spanish, Argentina)
[ci skip]

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

* New translations en.yml (Spanish, Argentina)
[ci skip]

* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]

* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations en.json (Spanish, Mexico)
[ci skip]

* New translations doorkeeper.en.yml (Spanish, Mexico)
[ci skip]

* New translations activerecord.en.yml (Spanish, Mexico)
[ci skip]

* New translations simple_form.en.yml (Spanish, Mexico)
[ci skip]

* New translations en.yml (Spanish, Mexico)
[ci skip]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* New translations en.json (Spanish, Mexico)
[ci skip]

* New translations en.yml (Spanish, Mexico)
[ci skip]

* New translations simple_form.en.yml (Spanish, Mexico)
[ci skip]

* New translations activerecord.en.yml (Spanish, Mexico)
[ci skip]

* New translations doorkeeper.en.yml (Spanish, Mexico)
[ci skip]

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

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

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

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

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

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

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

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

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

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

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

* New translations en.yml (Spanish, Mexico)
[ci skip]

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

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

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

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

* New translations en.yml (Spanish, Argentina)
[ci skip]

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

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

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

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

* New translations en.json (Spanish, Argentina)
[ci skip]

* New translations en.yml (Spanish, Argentina)
[ci skip]

* New translations en.yml (Spanish, Argentina)
[ci skip]

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

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

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

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

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

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

* i18n-tasks normalize

* yarn manage:translations
2021-04-22 00:04:58 +02:00
Eugen Rochko
0c70cd7758 Change the nouns "toot" and "status" to "post" (#16080) 2021-04-21 18:31:24 +02:00
Claire
d3f42fd4d1 Add DM icon back on HTML view of DMs (#16086)
Fix regression from #16052
2021-04-21 15:40:00 +02:00
Claire
21f35c249b Merge branch 'main' into glitch-soc/merge-upstream 2021-04-21 13:52:03 +02:00
Takeshi Umeda
bac5e8202a [Glitch] Fix not to show follow button in global suggestion
Port ecb285afb8 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-04-21 13:50:51 +02:00
Takeshi Umeda
596855eded [Glitch] Fix to update suggestion list after dismiss
Port 86458297ac to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-04-21 13:50:51 +02:00
Claire
872d5d508d [Glitch] Add border to 🚲 emoji
Port front-end changes from 89ef33df51 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-04-21 13:50:51 +02:00
Eugen Rochko
bd9429d89b [Glitch] Add cold-start follow recommendations
Port front-end changes from 92b2d926bf to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-04-21 13:50:51 +02:00
Claire
05df66f8d7 Fix processing of remote Delete activities (#16084)
* Add tests

* Ensure deleted statuses are marked as such

* Save some redis memory by not storing URIs in delete_upon_arrival values

* Avoid possible race condition when processing incoming Deletes

* Avoid potential duplicate Delete forwards

* Lower lock durations to reduce issues in case of hard crash of the Rails process

* Check for `lock.aquired?` and improve comment

* Refactor RedisLock usage in app/lib/activitypub

* Fix using incorrect or non-existent sender for relaying Deletes
2021-04-21 04:46:09 +02:00
Claire
24c66f14c9 Hide floating action button on onboarding page (#16082) 2021-04-20 21:28:01 +02:00
Eugen Rochko
0fb004cf1f Change follow recommendations to be limited to 20 instead of 40 in web UI (#16077) 2021-04-20 15:07:51 +02:00
Eugen Rochko
92cf2a4187 Add "recommended" label to activity/peers API toggles in admin UI (#16081) 2021-04-20 13:57:45 +02:00
Claire
069a6ab162 Fix the follow recommendation admin page on glitch-soc 2021-04-20 12:22:50 +02:00
Claire
f5a9971cac Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `README.md`:
  Upstream updated copyright year, we don't mention it so kept our version.
- `app/controllers/admin/dashboard_controller.rb`:
  Not really a conflict, upstream change (removing the spam checker) too close
  to glitch-soc changes. Ported upstream changes.
- `app/models/form/admin_settings.rb`:
  Same.
- `app/services/remove_status_service.rb`:
  Same.
- `app/views/admin/settings/edit.html.haml`:
  Same.
- `config/settings.yml`:
  Same.
- `config/environments/production.rb`:
  Not a real conflict, upstream added a default HTTP header, but we have
  extra headers in glitch-soc.
  Added the header.
2021-04-20 12:17:14 +02:00
Eugen Rochko
4bffe10987 Fix newlines not being considered sentence separators in account note (#16079)
Also bullets
2021-04-20 02:34:08 +02:00
Eugen Rochko
052fb31256 Change onboarding by replacing tutorial with follow recommendations in web UI (#16060) 2021-04-19 14:45:15 +02:00
Eugen Rochko
e6a6d37009 Refactor StatusReachFinder to handle followers and relays as well (#16051) 2021-04-17 15:41:57 +02:00
Eugen Rochko
9adb8dd9ee Fix remote reporters not receiving suspend/unsuspend activities (#16050) 2021-04-17 14:55:46 +02:00
Eugen Rochko
6d78b064e3 Fix missing source strings and inconsistent lead text style in admin UI (#16052) 2021-04-17 11:12:49 +02:00
Eugen Rochko
c9bb0e576d Add canonical e-mail blocks for suspended accounts (#16049)
Prevent new accounts from being created using the same underlying
e-mail as a suspended account using extensions and period
permutations. Stores e-mails as a SHA256 hash
2021-04-17 03:14:25 +02:00
Eugen Rochko
4d4ed90438 Fix reports of already suspended accounts being recorded (#16047) 2021-04-16 22:01:05 +02:00
Takeshi Umeda
ecb285afb8 Fix not to show follow button in global suggestion (#16045)
* Fix not to show follow button in global suggestion

* Fix style
2021-04-16 10:06:42 +02:00
Takeshi Umeda
86458297ac Fix to update suggestion list after dismiss (#16044)
* Fix to update suggestion list after dismiss

* Change to inline

* Fix style
2021-04-16 10:06:16 +02:00
Eugen Rochko
5d0cbe4892 Fix app name, website and redirect URIs not having a maximum length (#16042)
Fix app scopes not being validated
2021-04-15 16:28:43 +02:00
Eugen Rochko
2cab9c9f06 Add policy param to POST /api/v1/push/subscriptions (#16040)
With possible values `all`, `followed`, `follower`, and `none`,
control from whom notifications will generate a Web Push alert
2021-04-15 05:00:25 +02:00
Takeshi Umeda
0778ebc0b9 Fix an error with 'multiple mentions with same username' (#16038) 2021-04-14 15:48:49 +02:00
Claire
89ef33df51 Add border to 🚲 emoji (#16035) 2021-04-13 23:43:51 +02:00
Eugen Rochko
a8bf951926 Change Web Push API deliveries to use request pooling (#16014) 2021-04-12 14:25:34 +02:00
Eugen Rochko
92b2d926bf Add cold-start follow recommendations (#15945) 2021-04-12 12:37:14 +02:00
Eugen Rochko
2e8a673376 Remove spam check and dependency on nilsimsa gem (#16011) 2021-04-11 11:22:50 +02:00
Eugen Rochko
a085c385af Change multiple mentions with same username to render with domain (#15718)
Fix #15506
2021-04-10 11:51:02 +02:00
Claire
729197f1c8 Fix SidekiqProcessCheck checking for a queue name that isn't used in Mastodon (#16002) 2021-04-05 23:41:37 +02:00
Eugen Rochko
63fab052e0 [Glitch] Add system checks to dashboard in admin UI
Port SCSS changes from 19df881320

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-04-05 14:34:36 +02:00
Claire
d5f59d7155 [Glitch] Fix crash in old browsers
Port fb35c11084 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-04-05 14:33:42 +02:00
Claire
ba9921c644 Merge branch 'main' into glitch-soc/merge-upstream 2021-04-05 14:31:07 +02:00
Noiob
137a3f6648 Remove superfluous toot length check 2021-04-05 14:30:43 +02:00
Claire
55babb90ac Fix SVG files not being correctly included in templates (#16001)
In Rails 6.1, raw file inclusion in templates have to be explicitly marked as
HTML-safe, otherwise it's rendered as text.
2021-04-05 13:05:49 +02:00
Eugen Rochko
19df881320 Add system checks to dashboard in admin UI (#15989) 2021-04-03 14:12:30 +02:00
Eugen Rochko
2e0cdf30d5 Change health check (#15988) 2021-04-03 02:39:04 +02:00
Claire
fb35c11084 Fix crash in old browsers (#15985)
Fixes #15984
2021-04-01 00:00:12 +02:00
Claire
88048a8d8a Merge branch 'main' into glitch-soc/merge-upstream 2021-03-31 10:34:29 +02:00
Claire
7e74891ff0 Fix /admin/tags/:id crashing since Rails 6.1 update (#15953)
Raw SQL passed to `pluck` now has to be explicitly marked as SQL via
Arel.sql, see https://github.com/rails/rails/pull/27947
2021-03-26 18:36:16 +01:00
Claire
151e79fe72 Add warning in admin dashboard if some required queues are not handled (#15954) 2021-03-26 18:22:54 +01:00
Eugen Rochko
6440cd74e9 Add email param to POST /api/v1/emails/confirmations (#15949)
Allow changing e-mail as long as the account is unconfirmed
2021-03-25 02:46:13 +01:00
Marcin Mikołajczak
af28865116 Add transition to media modal background (#15843)
* Add transition to media modal background

* use reduceMotion

* Move background color transition into css

Signed-off-by: marcin mikołajczak <me@mkljczk.pl>
2021-03-24 13:51:32 +01:00
Claire
6542281066 [Glitch] Fix compose form behavior in mobile view
Port c9a92dd35a to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-03-24 11:21:21 +01:00
dependabot[bot]
72e78a9d65 [Glitch] Bump react-select from 3.2.0 to 4.0.2
Add cacheKey to NonceProvider for react-select

Port changes from c8908a35b7 to glitch-soc

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-03-24 11:01:57 +01:00
Claire
d10b08ea1f Merge branch 'main' into glitch-soc/merge-upstream 2021-03-24 10:53:50 +01:00
Claire
b2a89bf38e Update Mastodon to Rails 6.1 (#15910)
* Update devise-two-factor to unreleased fork for Rails 6 support

Update tests to match new `rotp` version.

* Update nsa gem to unreleased fork for Rails 6 support

* Update rails to 6.1.3 and rails-i18n to 6.0

* Update to unreleased fork of pluck_each for Ruby 6 support

* Run "rails app:update"

* Add missing ActiveStorage config file

* Use config.ssl_options instead of removed ApplicationController#force_ssl

Disabled force_ssl-related tests as they do not seem to be easily testable
anymore.

* Fix nonce directives by removing Rails 5 specific monkey-patching

* Fix fixture_file_upload deprecation warning

* Fix yield-based test failing with Rails 6

* Use Rails 6's index_with when possible

* Use ActiveRecord::Cache::Store#delete_multi from Rails 6

This will yield better performances when deleting an account

* Disable Rails 6.1's automatic preload link headers

Since Rails 6.1, ActionView adds preload links for javascript files
in the Links header per default.

In our case, that will bloat headers too much and potentially cause
issues with reverse proxies. Furhermore, we don't need those links,
as we already output them as HTML link tags.

* Switch to Rails 6.0 default config

* Switch to Rails 6.1 default config

* Do not include autoload paths in the load path
2021-03-24 10:44:31 +01:00
Claire
f0e6f3a1d7 Fix Mastodon not understanding as:Public and Public (#15948)
Fixes #5551
2021-03-24 10:19:40 +01:00
Claire
c9a92dd35a Fix compose form behavior in mobile view (#15555)
* Fix ComposeForm being mounted twice in mobile view

Fixes #13094

* Fix compose form focus and pre-selection behavior in mobile view

* Split _updateFocusAndSelection out of componentDidUpdate
2021-03-24 10:19:07 +01:00
dependabot[bot]
c8908a35b7 Bump react-select from 3.2.0 to 4.0.2 (#15624)
* Bump react-select from 3.2.0 to 4.0.2

Bumps [react-select](https://github.com/JedWatson/react-select) from 3.2.0 to 4.0.2.
- [Release notes](https://github.com/JedWatson/react-select/releases)
- [Changelog](https://github.com/JedWatson/react-select/blob/master/docs/CHANGELOG.md)
- [Commits](https://github.com/JedWatson/react-select/compare/react-select@3.2.0...react-select@4.0.2)

Signed-off-by: dependabot[bot] <support@github.com>

* Add cacheKey to NonceProvider for react-select

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2021-03-22 15:41:47 +09:00
Claire
d27331e99a Fix brakeman warning (#15870)
As far as I understand, the brakeman warning was a false-positive as
`content_tag` properly escapes untrusted HTML. Furthermore, the interpolated
string values are built from the “username” part of accounts, which is
restricted to a small subset of ASCII that precludes any XML entity or HTML
code.

This proposed change should be functionally equivalent to the current code,
however it is slightly more robust, it's more idiomatic, and Brakeman will
stop complaining about it.
2021-03-19 23:48:59 +01:00
Claire
ebe08f4335 Bypass MX validation for explicitly allowed domains (#15930)
* Bypass MX validation for explicitly allowed domains

This spares some lookups and prevent issues in some edge cases with
local domains.

* Add tests

* Fix test
2021-03-19 23:48:47 +01:00
Claire
1516b46bfa Fixing the hero widget (#15926)
* Removing last-child padding conflicts with light theme in hero widget

* Add missing background color to widget

* Reset widget.scss to default

* Hope this works

Co-authored-by: koyu <me@koyu.space>
2021-03-19 20:23:32 +01:00
Claire
eee8cedfd4 Fix custom CSS when CDN_HOST is set (#15927) 2021-03-19 20:23:08 +01:00
Eugen Rochko
3c1b807b94 WIP (#15222) 2021-03-19 17:15:36 +01:00
Claire
8e29925236 Messing around with box-shadow
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-03-19 14:47:57 +01:00
Claire
e2fe3d1552 Add more button states?
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-03-19 14:47:54 +01:00
Claire
80820535fa Change notification settings UI to be more compact
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-03-19 14:47:06 +01:00
Claire
860b7f9653 Migrate glitch-soc local notification settings to upstream system 2021-03-19 13:57:36 +01:00
Claire
d1d9646bfc Add option to opt out of unread notification markers
Port ac03531bec to glitch-soc
2021-03-19 13:57:32 +01:00
Claire
e19ca0e913 Merge branch 'main' into glitch-soc/merge-upstream 2021-03-19 13:57:15 +01:00
Claire
5c69eecacc Improve account counters handling (#15913)
* Improve account counters handling

* Use ActiveRecord::Base::sanitize_sql to pass values instead of interpolating them

Keep using string interpolation for `key` as it is safe and using
“ActiveRecord::Base::sanitize_sql_hash_for_assignment” would require stitching
bits of SQL in a way that is not more easily checked for safety.

* Add migration hook to catch PostgreSQL versions earlier than 9.5
2021-03-19 13:14:57 +01:00
Claire
6024c263bf Further preparation for Rails 6 (#15916)
* Use ActiveRecord::Result#to_ary instead of deprecated to_hash

They do the same thing, and to_hash has been removed from Rails 6.1

* Explicitly name polymorphic indexes to workaround a bug in Rails 6.1

cf. https://github.com/rails/rails/issues/41693

* Fix incorrect usage of “foreign_key” in migration script

* Use `ActiveModel::Errors#delete` instead of deprecated clear method

* Fix link headers tests on Rails 6.1

Rails 6.1 adds values to the Link header by default, thus it is not a
LinkHeader object anymore. Fix the test to parse the Link header instead
of assuming it is a LinkHeader.
2021-03-19 02:45:34 +01:00
Claire
ac03531bec Add option to opt out of unread notification markers (#15842)
Fixes #15133
2021-03-19 02:44:57 +01:00
Claire
3feb291d90 Prepare Mastodon for zeitwerk autoloader (#15917)
* Prepare Mastodon for zeitwerk autoloader (Rails 6)

Add inflections and rename/move a few classes.

In particular, app/lib/exceptions.rb and app/lib/sanitize_config.rb
were manually loaded while still in autoload paths.

* Add inflection for Url → URL
2021-03-19 02:42:43 +01:00
Claire
b35955af26 Fix cache_collection crashing when given an empty collection (#15921)
* Fix cache_collection crashing when given an empty collection

* Add tests
2021-03-18 00:41:32 +01:00
Claire
1634e71bd6 Prepare Mastodon for Rails 6 (#15911)
* Fix misuse of foreign_type

* Fix use of removed "add_template_helper"

* Use response.media_type instead of response.content_type in tests

* Fix CSV export controller test on Rails 6

Rails 6 sets a "filename*" field in the Content-Disposition header to
explicitly encode the filename as UTF-8.

This changes checks the first part of the Content-Disposition header so
it matches in both Rails 5 and Rails 6.

* Fix emoji formatting with Rails 6

* Make emoji output more idiomatic and robust

* Switch from redis-rails gem to built-in Rails redis cache storage
2021-03-17 10:09:55 +01:00
Claire
3c09518a1d Merge branch 'main' into glitch-soc/merge-upstream 2021-03-15 11:26:59 +01:00
Eugen Rochko
9f16bd9c89 Fix configuration for sidekiq-unique-jobs after 7.x upgrade (#15908)
Remove locks from scheduled jobs
2021-03-15 11:17:43 +01:00
Filipe Rodrigues
bbed5ea557 Fix reference to non-existing translation in the exports page. (#15894)
The exports page showed a different "CSV" capitalisation in the
"Bookmarks" row ("Csv") compared to the other rows ("CSV").
This was due to a referece to a translation string that does not exist,
`bookmarks.csv`, defaulting to the key's last segment in title case.

This issue was introduced in commit dcd86204 (PR #14956).

(h/t @meqif for helping with figuring out the bug)
2021-03-15 02:17:29 +01:00
Claire
5e83d10e29 Fix DM timeline failing to load from database 2021-03-12 23:17:34 +01:00
Claire
f05b0ab58a Fix not being able to change world filter expiration back to “Never” (#15858)
Fixes #15849
2021-03-12 05:25:50 +01:00
Claire
e78f476c58 Remove subscription_expires_at leftover from OStatus (#15857) 2021-03-12 05:25:24 +01:00
Claire
cf6d132a58 Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `app/validators/status_length_validator.rb`:
  Conflict due to glitch-soc's configurable maximum toot chars.
  Ported upstream changes.
2021-03-11 16:08:15 +01:00
Claire
6451cfcd83 Fix some ignored brakeman warnings (#15829) 2021-03-07 07:06:56 +01:00
Claire
4ed3024b36 Fix various CodeClimate warnings 2021-03-06 14:51:53 +01:00
Claire
53d99e7426 Fix URL scanning in note length validator and preview card fetching (#15827)
* Add tests

* Fix URL scanning in note length validator and preview card fetching
2021-03-04 00:12:26 +01:00
Claire
bdb6aa1a7f [Glitch] Update twitter-text from 1.14 to 3.1.0 and fix toot character counting
Port a33f8f787a to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-03-02 12:37:23 +01:00
Claire
37561d6bea [Glitch] Add borders to 📱 and 📲 emojis
Port 9208810829 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-03-02 12:27:29 +01:00
Claire
847bc13838 [Glitch] Fix WebUI crashing when SVG support is disabled
Port 7f203d6a7b to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-03-02 12:26:12 +01:00
Claire
5a89279d20 Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `app/validators/status_length_validator.rb`:
  Upstream changes too close to glitch-soc MAX_CHARS changes, but not a real
  conflict.
  Applied upstream changes.
- `package.json`:
  glitch-soc-only dependency textually too close to a dependency updated
  upstream, not a real conflict.
  Applied upstream changes.
2021-03-02 12:06:58 +01:00
Claire
a33f8f787a Update twitter-text from 1.14 to 3.1.0 and fix toot character counting (#15382)
* Update twitter-text from 1.14 to 3.1.0

* Disable emoji parsing

* Properly depend on twitter-text for url detection

* Fix some URLs being wrongly detected client-side

* Add test for server-side validation of non-autolinkable URLs

* Fix server-side status length counting
2021-03-02 12:02:56 +01:00
Claire
9208810829 Add borders to 📱 and 📲 emojis (#15794) 2021-03-01 21:22:54 +01:00
Eugen Rochko
28399e88b5 Add POST /api/v1/emails/confirmations to REST API (#15816)
Only available to the application the user originally signed-up with
2021-03-01 18:39:47 +01:00
Eugen Rochko
ade70733f7 Add details to error response for POST /api/v1/accounts in REST API (#15803) 2021-03-01 04:59:13 +01:00
Claire
7f203d6a7b Fix WebUI crashing when SVG support is disabled (#15809)
Fixes #14910
2021-02-28 01:01:34 +01:00
Claire
d1deaee77f Fix crash on receiving requests with missing Digest header (#15782)
* Fix crash on receiving requests with missing Digest header

Return an error pointing out that Digest is missing, instead of crashing.

Fixes #15743

* Fix from review feedback
2021-02-26 17:40:27 +01:00
Claire
37d5bae34f Add inline description of moderation actions in moderation interface (#15792) 2021-02-24 16:53:16 +01:00
Claire
7411520821 Change ResolveAccountService's handling of skip_webfinger (#15750)
* Change ResolveAccountService's handling of skip_webfinger

Change it so it never makes any webfinger query, as the name would imply.

* Add tests

* Change FollowService to not take an URI for target_account

* Restore domain-block check in FollowService

* Fix tests
2021-02-24 06:32:13 +01:00
Claire
6ff52096d7 Fix server rules not being displayed if extended server discription isn't set (#15778) 2021-02-22 18:26:24 +01:00
abcang
20efc1b816 [Glitch] Fix default searchTokens
Port 6faf654c43 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-02-22 15:47:17 +01:00
Eugen Rochko
dc7c948820 [Glitch] Add server rules
Port SCSS changes from 4930e71ae7 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-02-22 15:45:28 +01:00
Claire
dd60ecfc04 Merge branch 'main' into glitch-soc/merge-upstream 2021-02-22 15:23:46 +01:00
abcang
6faf654c43 Fix default searchTokens (#15775) 2021-02-22 11:26:08 +01:00
Eugen Rochko
4930e71ae7 Add server rules (#15769) 2021-02-21 19:50:12 +01:00
Justin Tracey
cbcf083cb4 replace all instances of "ends_with?" with "end_with?" (#15745)
The "ends_with?" method is just a Rails alias of Ruby's "end_with?" method.
Using the latter makes the code less brittle.
2021-02-19 09:56:14 +01:00
Eugen Rochko
e4ba5635ee Add GET /api/v1/accounts/lookup REST API (#15740) 2021-02-16 15:28:32 +01:00
Claire
12d91755f5 [Glitch] Add dropdown for boost privacy in boost confirmation modal
Port c848e85068 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-02-12 12:31:49 +01:00
Claire
cc5b429545 Refactor privacy dropdown to have an interface closer to upstream's 2021-02-12 12:04:04 +01:00
kaias1jp
5f403bb57a [Glitch] Fixed WebUI crash when a status opened in the media modal is deleted
Port 7004e88738 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-02-12 10:58:34 +01:00
Jeong Arm
77f7de53e1 [Glitch] Use custom mascot on static share page
Port b2572f0b29 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-02-12 10:57:09 +01:00
Mélanie Chauvel
f419096f3b [Glitch] Slightly reorder three dots menu on toots to make it more intuitive
Port e48633f3cf to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-02-12 10:55:37 +01:00
Eugen Rochko
d66867d1c2 [Glitch] Change max. image dimensions to 1920x1080px (1080p)
Port 826a5cc624 to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-02-12 10:46:00 +01:00
Claire
489a5a539c Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `app/javascript/styles/mastodon/modal.scss`:
  For some reason we changed the file loading path in glitch-soc,
  but now upstream has completely changed how the logo is loaded.
  Applied upstream changes.
2021-02-12 10:28:32 +01:00
Eugen Rochko
ecfcdc856b Refactor Api::Web::SettingsController (#15717) 2021-02-12 07:19:15 +01:00
Eugen Rochko
0baa928e56 Fix YouTube embeds failing due to YouTube serving wrong OEmbed URLs (#15716) 2021-02-12 05:45:38 +01:00
kaias1jp
7004e88738 Fixed WebUI crash when a status opened in the media modal is deleted (#15701)
* Fixed picture in picture compatibility error in WebUI when status is deleted

* Revert "Fixed picture in picture compatibility error in WebUI when status is deleted"

This reverts commit f003b7d9d88688e9504f7dfae1545d7522fcfd98.

* Close the modal display of the image when status is deleted

* Fixed the case statement before the default statement

* Removed unnecessary parts
2021-02-11 19:59:47 +01:00
Takeshi Umeda
96fe153669 fix typo (#15705) 2021-02-11 06:22:11 +01:00
Cecylia Bocovich
6c300f08e5 Onion service related changes to HTTPS handling (#15560)
* Enable secure cookie flag for https only

* Disable force_ssl for .onion hosts only

Co-authored-by: Aiden McClelland <me@drbonez.dev>
2021-02-11 04:40:13 +01:00
Jeong Arm
b2572f0b29 Use custom mascot on static share page (#15687)
* Use custom mascot on static share page

* Use full_asset_url
2021-02-11 02:18:56 +01:00
Claire
00fb4ecf6b Fix URI of repeat follow requests not being recorded (#15662)
* Fix URI of repeat follow requests not being recorded

In case we receive a “repeat” or “duplicate” follow request, we automatically
fast-forward the accept with the latest received Activity `id`, but we don't
record it.

In general, a “repeat” or “duplicate” follow request may happen if for some
reason (e.g. inconsistent handling of Block or Undo Accept activities, an
instance being brought back up from the dead, etc.) the local instance thought
the remote actor were following them while the remote actor thought otherwise.

In those cases, the remote instance does not know about the older Follow
activity `id`, so keeping that record serves no purpose, but knowing the most
recent one is useful if the remote implementation at some point refers to it
by `id` without inlining it.

* Add tests
2021-02-11 01:53:44 +01:00
Mélanie Chauvel
e48633f3cf Slightly reorder three dots menu on toots to make it more intuitive (#15647)
* Slightly reorder three dots menu on toots to make it more intuitive

- Make “Pin to profile” always appear at the same place
- Add separator to group “Bookmark” and “Pin to profile”
- Fix separator being the first item in some cases

* Fix missing semicolon and keep status_action_bar.js and action_bar.js in sync
2021-02-11 01:05:04 +01:00
Claire
c848e85068 Add dropdown for boost privacy in boost confirmation modal (#15704)
* Various dropdown code quality fixes

* Prepare support for privacy selection in boost modal

* Add dropdown for boost privacy in boost confirmation modal
2021-02-11 00:53:12 +01:00
Claire
c1c469be88 Fix background color for favourite modal on DMs 2021-02-10 19:27:18 +01:00
Claire
4028717020 Create instance actor if it hasn't been properly seeded (#15693)
An uncommon but somewhat difficult to digagnose issue is dealing with
improperly-seeded databases. In such cases, instance-signed fetches will
fail with a ActiveRecord::RecordNotFound error, usually caught and handled
as generic 404, leading people to think the remote resource itself has not
been found, while it's the local instance actor that does not exist.

This commit changes the code so that failure to find the instance actor
automatically creates a new one, so that improperly-seeded databases do
not cause any issue.
2021-02-09 18:12:54 +01:00
Eugen Rochko
826a5cc624 Change max. image dimensions to 1920x1080px (1080p) (#15690)
* Change max. image size to 1920x1080px

* Change it in web UI too
2021-02-09 01:21:06 +01:00
ThibG
2b877cad16 [Glitch] Change custom emoji to be animated when hovering container
Port e57047f213 to glitch-soc

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-02-03 17:16:22 +01:00
Claire
85e0b5ce91 Merge branch 'main' into glitch-soc/merge-upstream 2021-02-03 17:02:48 +01:00
ThibG
dd2c80e1d1 Fix race conditions on account migration creation (#15597)
* Atomically check for processing lock in Move handler

* Prevent race condition when creating account migrations

Fixes #15595

* Add tests

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-02-02 14:49:57 +01:00
ThibG
e57047f213 Change custom emoji to be animated when hovering container (#15637)
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-01-31 21:25:31 +01:00
abcang
2b9d71cc18 Improved performance of notification preloading (#15640)
* Improved performance of notification preloading

* Remove Cacheable from Notification

* Fix test
2021-01-31 21:24:57 +01:00
abcang
82eb3a575e Fix N+1 query when rendering with StatusSerializer (#15641) 2021-01-31 21:24:17 +01:00
abcang
df708569ac Fix react/jsx-no-duplicate-props (#15636) 2021-01-28 18:24:22 +01:00
ThibG
bca23a4a1e Merge pull request #1491 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
2021-01-26 23:21:32 +01:00
leo60228
3a774aa017 Support customizing poll option limits 2021-01-26 14:07:31 +01:00
ThibG
07408600f3 [Glitch] Add “translate” class to other user strings
Port 603ce7e1f5 to glitch-soc

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2021-01-26 14:05:24 +01:00
Claire
9493606b11 Merge branch 'main' into glitch-soc/merge-upstream
Conflicts:
- `CONTRIBUTING.md`:
  Not a real conflict, glitch-soc quotes the upstream file, which has been
  changed. Update the quote.
2021-01-26 14:01:30 +01:00
Takeshi Umeda
3830dbc6fc Fix first return value of FetchLinkCardService.html method (#15630) 2021-01-25 09:22:41 +01:00
luigi
1256c05a99 Use Enumerable#filter_map in more places (#15527) 2021-01-22 16:28:15 +01:00
ThibG
603ce7e1f5 Add “translate” class to other user strings (#15611)
* Add “translate” class to other user strings

Follow-up to #15610.

Allow Google Translate to work on more user content:
- poll options
- reply indicator (contents of the status being replied to)
- directory account cards
- account note in follow requests list

* Fix incorrect styling of account bio

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2021-01-22 10:09:23 +01:00