ThibG
8b8004a962
Fix webfinger redirect handling in ResolveAccountService ( #15187 )
...
* Fix webfinger redirect handling in ResolveAccountService
ResolveAccountService#process_webfinger! handled a one-step webfinger
redirection, but only accepting the result if it matched the exact URI passed
as input, defeating the point of a redirection check.
Instead, use the same logic as in `ActivityPub::FetchRemoteAccountService`,
updating the resulting `acct:` URI with the result of the first webfinger
query.
* Add tests
2020-11-19 19:52:06 +01:00
ThibG
96c1e71329
Add import/export feature for bookmarks ( #14956 )
...
* Add ability to export bookmarks
* Add support for importing bookmarks
* Add bookmark import tests
* Add bookmarks export test
2020-11-19 17:48:13 +01:00
Darius Kazemi
8e2530ea16
Mark correctly as read reverse-order announcements ( #15070 )
...
This fixes a bug in #15065 where the "read" indicator was not getting correctly set. The ID of a dismissed announcement is now correct.
2020-11-19 17:40:18 +01:00
ThibG
2f6831f318
Fix sending spurious Rejects when processing remote account deletion ( #15104 )
...
* Fix sending spurious Rejects when processing remote account deletion
* Make skip_side_effects imply skip_activitypub
2020-11-19 17:39:47 +01:00
Eugen Rochko
df1653174b
Add cache buster feature for media files ( #15155 )
...
Nginx can be configured to bypass proxy cache when a special header
is in the request. If the response is cacheable, it will replace
the cache for that request. Proxy caching of media files is
desirable when using object storage as a way of minimizing bandwidth
costs, but has the drawback of leaving deleted media files for
a configured amount of cache time. A cache buster can make those
media files immediately unavailable. This especially makes sense
when suspending and unsuspending an account.
2020-11-19 17:38:06 +01:00
ThibG
966593393e
Fix DMs not appearing into timelines ( #15182 )
...
Fixes #15179
2020-11-19 00:23:46 +01:00
ThibG
d8d43a427a
Fix image uploads being random data when canvas read access is blocked ( #15180 )
...
Fixes #15178
PR #11499 introduced a way to deal with all-white canvas, but newer
Firefox versions set random data instead.
This PR detects whether canvas operations are reliable by comparing
the results on a hardcoded 2×2 pixels image, and memoizing the result.
This should be both more reliable and faster than the previous check.
2020-11-18 18:01:58 +01:00
Eugen Rochko
18ca4e0e9a
Fix pop-out player appearing on mobile screens in web UI ( #15157 )
...
Fix #15092
2020-11-16 05:16:39 +01:00
Eugen Rochko
04a079e723
Add hotkeys for audio/video control ( #15158 )
...
Fix #14515
2020-11-15 14:24:54 +01:00
Thibaut Girka
de5cc20dd8
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `app/controllers/concerns/sign_in_token_authentication_concern.rb`:
Conflict caused because of glitch-soc's theming system.
Took upstream's new code and applied the theming system changes on top
of it.
- `app/controllers/concerns/two_factor_authentication_concern.rb`:
Conflict caused because of glitch-soc's theming system.
Took upstream's new code and applied the theming system changes on top
of it.
2020-11-14 00:30:36 +01:00
ThibG
0a4d0e8320
Fix AccountDeletionWorker not accepting keyword arguments ( #15152 )
2020-11-13 22:17:04 +01:00
Thibaut Girka
8ffae82fa6
Fix minor design issues with fav confirmation modal
2020-11-13 01:14:52 +01:00
Thibaut Girka
339f78fb63
Fix media not being marked sensitive when outgoing CW is set
...
Fixes #1461
Fixes a regression from a recent merge
2020-11-13 01:05:55 +01:00
Thibaut Girka
265b26489a
Fix “Show boosts/replies in public timelines” only affecting streaming
...
Fixes #1456
2020-11-12 23:44:53 +01:00
Thibaut Girka
10bd6f415d
Improve searching for private toots from URL
...
Most of the time, when sharing toots, people use the toot URL rather than
the toot URI, which makes sense since it is the user-facing URL.
In Mastodon's case, the URL and URI are different, and Mastodon does not
have an index on URL, which means searching a private toot by URL is done
with a slow query that will only succeed for very recent toots.
This change gets rid of the slow query, and attempts to guess the URI from
URL instead, as Mastodon's are predictable.
2020-11-12 23:44:30 +01:00
Eugen Rochko
aa10200e58
Fix streaming API allowing connections to persist after access token invalidation ( #15111 )
...
Fix #14816
2020-11-12 23:05:24 +01:00
Eugen Rochko
8532429af7
Fix 2FA/sign-in token sessions being valid after password change ( #14802 )
...
If someone tries logging in to an account and is prompted for a 2FA
code or sign-in token, even if the account's password or e-mail is
updated in the meantime, the session will show the prompt and allow
the login process to complete with a valid 2FA code or sign-in token
2020-11-12 23:05:01 +01:00
Thibaut Girka
3f09d4ca03
Add missing locales to glitch flavor
2020-11-12 22:27:44 +01:00
Takeshi Umeda
412fe2ebb0
[Glitch] Add interrelationship icon
...
Port SCSS changes from 148ce97e21
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-11-12 22:24:24 +01:00
Eugen Rochko
0aeb833317
[Glitch] Add button to dismiss desktop notifications permissions banner
...
Port 4790a126be
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-11-12 22:23:06 +01:00
Thibaut Girka
c077cdaba7
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `app/controllers/relationships_controller.rb`:
Upstream changed a line too close to a glitch-soc only line related to
glitch-soc's theming system.
Applied upstream changes accordingly.
2020-11-12 22:13:57 +01:00
ThibG
9870b175b4
Fix possible inconsistencies in tag search ( #14906 )
...
Do not downcase the queried tag before passing it to postgres when searching:
- tags are not downcased on creation
- `arel_table[:name].lower.matches(pattern)` generates an ILIKE anyway
- if Postgres and Rails happen to use different case-folding rules,
downcasing before query but not before insertion may mean that some
tags with some casings are not searchable
2020-11-12 18:35:23 +01:00
Takeshi Umeda
148ce97e21
Add interrelationship icon ( #15149 )
...
* Add interrelationship icon
* Fix arrow for rtl
* Fix to predefined color
2020-11-12 17:43:12 +01:00
Takeshi Umeda
2b1a6e734f
Add follow selected followers button ( #15148 )
...
* Add follow selected followers button
* Fix unused variable
* Fix i18n normalize
2020-11-12 16:58:00 +01:00
Eugen Rochko
4790a126be
Add button to dismiss desktop notifications permissions banner ( #15141 )
2020-11-11 05:36:29 +01:00
Eugen Rochko
f1858f08c2
Remove auto-redirect to direct messages in web UI ( #15142 )
2020-11-11 05:36:22 +01:00
Yamagishi Kazutoshi
5206ede9c9
Add missing locales ( #15138 )
2020-11-10 14:44:17 +01:00
Eugen Rochko
880fc9baaf
New Crowdin updates ( #15110 )
...
* New translations doorkeeper.en.yml (Hungarian)
[ci skip]
* New translations doorkeeper.en.yml (Korean)
[ci skip]
* New translations doorkeeper.en.yml (Georgian)
[ci skip]
* New translations doorkeeper.en.yml (Japanese)
[ci skip]
* New translations doorkeeper.en.yml (Italian)
[ci skip]
* New translations doorkeeper.en.yml (Armenian)
[ci skip]
* New translations doorkeeper.en.yml (Hebrew)
[ci skip]
* New translations doorkeeper.en.yml (Dutch)
[ci skip]
* New translations doorkeeper.en.yml (Finnish)
[ci skip]
* New translations doorkeeper.en.yml (Basque)
[ci skip]
* New translations doorkeeper.en.yml (Greek)
[ci skip]
* New translations doorkeeper.en.yml (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 doorkeeper.en.yml (Norwegian)
[ci skip]
* New translations doorkeeper.en.yml (Persian)
[ci skip]
* New translations doorkeeper.en.yml (Ukrainian)
[ci skip]
* New translations doorkeeper.en.yml (Indonesian)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations doorkeeper.en.yml (Galician)
[ci skip]
* New translations doorkeeper.en.yml (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Chinese Traditional)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations doorkeeper.en.yml (Polish)
[ci skip]
* New translations doorkeeper.en.yml (Swedish)
[ci skip]
* New translations doorkeeper.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations doorkeeper.en.yml (Albanian)
[ci skip]
* New translations doorkeeper.en.yml (Slovenian)
[ci skip]
* New translations doorkeeper.en.yml (Slovak)
[ci skip]
* New translations doorkeeper.en.yml (Russian)
[ci skip]
* New translations doorkeeper.en.yml (Portuguese)
[ci skip]
* New translations en.json (Kazakh)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Bulgarian)
[ci skip]
* New translations simple_form.en.yml (Czech)
[ci skip]
* New translations en.yml (Czech)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.yml (Bulgarian)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations en.json (Bulgarian)
[ci skip]
* New translations simple_form.en.yml (Arabic)
[ci skip]
* New translations en.yml (Arabic)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations simple_form.en.yml (Spanish)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations simple_form.en.yml (Danish)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.json (Hebrew)
[ci skip]
* New translations en.json (Armenian)
[ci skip]
* New translations simple_form.en.yml (Hungarian)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations simple_form.en.yml (Hebrew)
[ci skip]
* New translations en.yml (Hebrew)
[ci skip]
* New translations simple_form.en.yml (Finnish)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.yml (Finnish)
[ci skip]
* New translations en.json (Finnish)
[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 simple_form.en.yml (Greek)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations simple_form.en.yml (Armenian)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.yml (Portuguese)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Romanian)
[ci skip]
* New translations simple_form.en.yml (Croatian)
[ci skip]
* New translations en.yml (Romanian)
[ci skip]
* New translations en.json (Romanian)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations simple_form.en.yml (Breton)
[ci skip]
* New translations en.yml (Breton)
[ci skip]
* New translations doorkeeper.en.yml (Croatian)
[ci skip]
* New translations en.yml (Croatian)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.json (Croatian)
[ci skip]
* New translations simple_form.en.yml (Thai)
[ci skip]
* New translations en.yml (Thai)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations doorkeeper.en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations en.yml (Armenian)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations simple_form.en.yml (Chinese Traditional)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations simple_form.en.yml (Galician)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.yml (Urdu (Pakistan))
[ci skip]
* New translations en.json (Urdu (Pakistan))
[ci skip]
* New translations en.yml (Chinese Traditional)
[ci skip]
* New translations simple_form.en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Chinese Traditional)
[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 simple_form.en.yml (Ukrainian)
[ci skip]
* New translations en.yml (Ukrainian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.yml (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.yml (Swedish)
[ci skip]
* New translations en.json (Bengali)
[ci skip]
* New translations en.json (Thai)
[ci skip]
* New translations en.yml (Marathi)
[ci skip]
* New translations en.json (Marathi)
[ci skip]
* New translations simple_form.en.yml (Bengali)
[ci skip]
* New translations en.yml (Bengali)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.yml (Indonesian)
[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 simple_form.en.yml (Persian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Swedish)
[ci skip]
* New translations en.json (Swedish)
[ci skip]
* New translations simple_form.en.yml (Italian)
[ci skip]
* New translations en.json (Macedonian)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations simple_form.en.yml (Dutch)
[ci skip]
* New translations en.yml (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.yml (Macedonian)
[ci skip]
* New translations simple_form.en.yml (Norwegian)
[ci skip]
* New translations en.yml (Lithuanian)
[ci skip]
* New translations en.json (Lithuanian)
[ci skip]
* New translations simple_form.en.yml (Korean)
[ci skip]
* New translations simple_form.en.yml (Georgian)
[ci skip]
* New translations en.yml (Georgian)
[ci skip]
* New translations en.json (Georgian)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations en.json (Polish)
[ci skip]
* New translations simple_form.en.yml (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.yml (Serbian (Cyrillic))
[ci skip]
* New translations en.json (Serbian (Cyrillic))
[ci skip]
* New translations simple_form.en.yml (Albanian)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations simple_form.en.yml (Slovenian)
[ci skip]
* New translations en.yml (Slovenian)
[ci skip]
* New translations simple_form.en.yml (Slovak)
[ci skip]
* New translations en.yml (Polish)
[ci skip]
* New translations en.yml (Slovak)
[ci skip]
* New translations en.json (Slovak)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations simple_form.en.yml (Portuguese)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations simple_form.en.yml (Polish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations devise.en.yml (Turkish)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations doorkeeper.en.yml (Spanish)
[ci skip]
* New translations en.json (Spanish, Mexico)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Mexico)
[ci skip]
* New translations simple_form.en.yml (Spanish, Mexico)
[ci skip]
* New translations en.yml (Spanish, Mexico)
[ci skip]
* New translations simple_form.en.yml (Spanish)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Korean)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.yml (Kabyle)
[ci skip]
* New translations devise.en.yml (Japanese)
[ci skip]
* New translations en.json (Standard Moroccan Tamazight)
[ci skip]
* New translations en.json (Standard Moroccan Tamazight)
[ci skip]
* New translations en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations simple_form.en.yml (Icelandic)
[ci skip]
* New translations simple_form.en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations doorkeeper.en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations simple_form.en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations simple_form.en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations devise.en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations activerecord.en.yml (Icelandic)
[ci skip]
* New translations devise.en.yml (Icelandic)
[ci skip]
* New translations en.yml (Russian)
[ci skip]
* New translations en.json (Russian)
[ci skip]
* New translations simple_form.en.yml (Russian)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations devise.en.yml (Chinese Simplified)
[ci skip]
* New translations devise.en.yml (Chinese Simplified)
[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.json (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations activerecord.en.yml (Turkish)
[ci skip]
* New translations en.json (Turkish)
[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]
* Fix invalid syntax
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* bundle exec i18n-tasks normalize
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* bundle exec i18n-tasks normalize
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* bundle exec i18n-tasks normalize [ci skip]
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2020-11-10 16:53:54 +09:00
Eugen Rochko
337dc6e0ad
Fix updating account counters when account_stat is not yet created ( #15108 )
2020-11-09 16:00:23 +01:00
Thibaut Girka
ecd83f495c
Merge branch 'master' into glitch-soc/merge-upstream
2020-11-09 10:53:53 +01:00
Yamagishi Kazutoshi
2b63c62c57
Remove unnecessary messages ( #15109 )
...
* Remove unnecessary messages
* ran `i18n-tasks normalize`
2020-11-09 01:43:16 +01:00
ThibG
b0893291ef
Fix Move handler not being triggered when failing to fetch target ( #15107 )
...
When failing to fetch the target account, the ProcessingWorker fails
as expected, but since it hasn't cleared the `move_in_progress` flag,
the next attempt at processing skips the `Move` activity altogether.
This commit changes it to clear the flag when encountering any
unexpected error on fetching the target account. This is likely to
occur because, of, e.g., a timeout, when many instances query the
same actor at the same time.
2020-11-09 01:41:52 +01:00
Eugen Rochko
cc98f967b1
New Crowdin updates ( #14388 )
...
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Esperanto)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Norwegian)
[ci skip]
* New translations en.yml (Norwegian)
[ci skip]
* New translations simple_form.en.yml (Norwegian)
[ci skip]
* New translations devise.en.yml (Norwegian)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Esperanto)
[ci skip]
* New translations simple_form.en.yml (Arabic)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations devise.en.yml (Chinese Simplified)
[ci skip]
* New translations en.json (Danish)
[ci skip]
* New translations en.yml (Danish)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.yml (Icelandic)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.json (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations simple_form.en.yml (Spanish, Mexico)
[ci skip]
* New translations en.yml (Spanish, Mexico)
[ci skip]
* New translations en.json (Spanish, Mexico)
[ci skip]
* New translations doorkeeper.en.yml (Spanish)
[ci skip]
* New translations en.yml (Norwegian Nynorsk)
[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 doorkeeper.en.yml (Spanish, Mexico)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.json (French)
[ci skip]
* New translations en.json (Catalan)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.json (Icelandic)
[ci skip]
* New translations en.json (Spanish, Argentina)
[ci skip]
* New translations en.json (Vietnamese)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Galician)
[ci skip]
* New translations en.json (Albanian)
[ci skip]
* New translations en.json (Indonesian)
[ci skip]
* New translations en.json (Italian)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.json (Czech)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations en.json (Chinese Simplified)
[ci skip]
* New translations en.json (Persian)
[ci skip]
* New translations en.json (Norwegian Nynorsk)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Arabic)
[ci skip]
* New translations en.json (Slovenian)
[ci skip]
* New translations en.json (Ukrainian)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Breton)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.json (Hungarian)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations en.json (Portuguese, Brazilian)
[ci skip]
* New translations en.json (Kabyle)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Dutch)
[ci skip]
* New translations en.json (Sardinian)
[ci skip]
* New translations en.json (Portuguese)
[ci skip]
* New translations doorkeeper.en.yml (Spanish)
[ci skip]
* New translations en.yml (Spanish, Mexico)
[ci skip]
* New translations simple_form.en.yml (Spanish, Mexico)
[ci skip]
* New translations en.json (Spanish, Mexico)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Mexico)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations doorkeeper.en.yml (Spanish)
[ci skip]
* New translations simple_form.en.yml (Spanish)
[ci skip]
* New translations en.json (Spanish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations simple_form.en.yml (French)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations en.yml (Spanish, Mexico)
[ci skip]
* New translations simple_form.en.yml (Spanish, Mexico)
[ci skip]
* New translations en.json (Spanish, Mexico)
[ci skip]
* New translations doorkeeper.en.yml (Spanish, Mexico)
[ci skip]
* New translations en.yml (French)
[ci skip]
* New translations en.yml (Catalan)
[ci skip]
* New translations simple_form.en.yml (Catalan)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.json (Greek)
[ci skip]
* New translations en.yml (Greek)
[ci skip]
* New translations simple_form.en.yml (Spanish)
[ci skip]
* New translations en.yml (Catalan)
[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 en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations en.yml (German)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations simple_form.en.yml (German)
[ci skip]
* New translations en.yml (Italian)
[ci skip]
* New translations simple_form.en.yml (Italian)
[ci skip]
* New translations en.yml (Korean)
[ci skip]
* New translations simple_form.en.yml (Korean)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Chinese Simplified)
[ci skip]
* New translations simple_form.en.yml (Chinese Simplified)
[ci skip]
* New translations en.yml (Vietnamese)
[ci skip]
* New translations simple_form.en.yml (Vietnamese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations simple_form.en.yml (Japanese)
[ci skip]
* New translations en.yml (Japanese)
[ci skip]
* New translations en.yml (Galician)
[ci skip]
* New translations simple_form.en.yml (Galician)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations en.yml (Persian)
[ci skip]
* New translations simple_form.en.yml (Persian)
[ci skip]
* New translations en.yml (Esperanto)
[ci skip]
* New translations devise.en.yml (German)
[ci skip]
* New translations simple_form.en.yml (Hungarian)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations simple_form.en.yml (Hungarian)
[ci skip]
* New translations en.yml (Spanish, Argentina)
[ci skip]
* New translations simple_form.en.yml (Spanish, Argentina)
[ci skip]
* New translations en.yml (Hungarian)
[ci skip]
* New translations en.yml (Albanian)
[ci skip]
* New translations simple_form.en.yml (Albanian)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations simple_form.en.yml (Corsican)
[ci skip]
* New translations en.yml (Corsican)
[ci skip]
* New translations en.json (Corsican)
[ci skip]
* New translations doorkeeper.en.yml (Corsican)
[ci skip]
* New translations devise.en.yml (Corsican)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Danish)
[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 en.json (Chinese Traditional)
[ci skip]
* New translations en.json (German)
[ci skip]
* New translations en.yml (Indonesian)
[ci skip]
* New translations simple_form.en.yml (Indonesian)
[ci skip]
* New translations en.yml (Indonesian)
[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.json (Occitan)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations devise.en.yml (Occitan)
[ci skip]
* New translations en.yml (Occitan)
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations en.json (Occitan)
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations simple_form.en.yml (Occitan)
[ci skip]
* New translations en.yml (Spanish)
[ci skip]
* New translations en.json (Standard Moroccan Tamazight)
[ci skip]
* New translations en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations simple_form.en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations activerecord.en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations devise.en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations doorkeeper.en.yml (Standard Moroccan Tamazight)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations en.json (Turkish)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations doorkeeper.en.yml (Turkish)
[ci skip]
* New translations devise.en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations devise.en.yml (Turkish)
[ci skip]
* New translations activerecord.en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations simple_form.en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
* ran `i18n-tasks normalize`
* ran `yarn manage:translations`
* ran `i18n-tasks normalize`
* New translations en.json (Turkish)
[ci skip]
* New translations en.yml (Turkish)
[ci skip]
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2020-11-09 00:56:52 +01:00
ThibG
1e64666662
Fix crash in SuspendAccountWorker ( #15106 )
...
* Fix crash in SuspendAccountWorker
`follows` is an array thanks to `to_a`
* Fix code style issue
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
2020-11-08 18:29:48 +01:00
Thibaut Girka
0437d70628
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `app/controllers/follower_accounts_controller.rb`:
Conflict due to upstream changing suspension logic while
glitch-soc has an extra option to hide followers count.
Ported upstream changes.
2020-11-08 14:20:35 +01:00
Eugen Rochko
3134691948
Add support for reversible suspensions through ActivityPub ( #14989 )
2020-11-08 00:28:39 +01:00
Mashiro
e4d62042bd
[Glitch] Add limitation of image's max zoom rate (max to the original size of image)
...
Port f720af6b72
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-11-07 18:33:16 +01:00
dependabot[bot]
91c2f14fd2
[Glitch] Bump detect-passive-events from 1.0.5 to 2.0.1
...
Port e16b0fb15a
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: Thibaut Girka <thib@sitedethib.com>
2020-11-07 18:32:09 +01:00
Thibaut Girka
412218af2e
Merge branch 'master' into glitch-soc/merge-upstream
2020-11-07 18:23:02 +01:00
ThibG
ee8cf246cf
Fix crashes in SuspendAccountService/UnsuspendAccountService ( #15100 )
...
* Fix crashes in SuspendAccountService/UnsuspendAccountService
* Catch filesystem errors
2020-11-07 13:16:54 +01:00
ThibG
f84239ecab
Fix suspension/unsuspension not working because of FeedManager change ( #15099 )
2020-11-07 13:16:00 +01:00
Eugen Rochko
9b1f2a4b61
Add subresource integrity for JS and CSS assets ( #15096 )
...
Fix #2744
2020-11-06 11:56:31 +01:00
Mélanie Chauvel
68d4b2b83e
Display “Show newer” and “Show older” instead of “Show more” in public pages ( #15052 )
2020-11-04 21:15:45 +01:00
ThibG
b29defb851
Change order of announcements in admin page to sort them newest-first ( #15091 )
...
* Change order of announcements in admin page to sort show newly-created first
Fixes #15090
* Use reverse-chronological rather than creation date only
2020-11-04 21:15:22 +01:00
Takeshi Umeda
d6fe0c94ca
Add account sensitized ( #14361 )
...
* Add account sensitized
* Fix i18n normalize
* Fix description and spec
* Fix spec
* Fix wording
2020-11-04 20:45:01 +01:00
Mashiro
f720af6b72
Add limitation of image's max zoom rate (max to the original size of image) ( #15094 )
...
* limit image max scale rate to fit the actual image size
* replace with MIN_SCALE
* fix behavior on touch screen
2020-11-04 20:43:31 +01:00
Thibaut Girka
5a9fc749c3
Fix unsightly re-layout delay for media previews
2020-11-04 18:53:52 +01:00
Thibaut Girka
a48dbc78f8
Fix hiding video breaking playback
...
Also make the video player code closer to upstream
2020-11-04 18:53:39 +01:00
dependabot[bot]
e16b0fb15a
Bump detect-passive-events from 1.0.5 to 2.0.1 ( #15003 )
...
* Bump detect-passive-events from 1.0.5 to 2.0.1
Bumps [detect-passive-events](https://github.com/rafgraph/detect-passive-events ) from 1.0.5 to 2.0.1.
- [Release notes](https://github.com/rafgraph/detect-passive-events/releases )
- [Commits](https://github.com/rafgraph/detect-passive-events/compare/v1.0.5...v2.0.1 )
Signed-off-by: dependabot[bot] <support@github.com>
* Migrate to detect-passive-events v2
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2020-11-05 02:21:05 +09:00
Mashiro
dc86d814d9
[Glitch] add mouse scroll lock in image expand view
...
Port f645dad661
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-11-04 12:24:40 +01:00
Mashiro
40af1cf65b
[Glitch] Add expand/compress image button on image view box
...
Port 6a2db10f76
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-11-04 12:24:40 +01:00
mayaeh
f5df3d1ae2
[Glitch] Fix width of content text fluctuating over time
...
Port 2ae751f19d
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-11-04 12:24:40 +01:00
Mélanie Chauvel
078744f210
[Glitch] Make visibility icon clickable as part of the time of a toot
...
Port 1d07f51039
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-11-04 12:24:40 +01:00
Mélanie Chauvel
578e757d09
[Glitch] Make click area of video/audio player buttons bigger in WebUI
...
Port a5afbb62d2
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-11-03 17:42:40 +01:00
ThibG
adfaf9551c
[Glitch] Fix some account media gallery items having empty labels
...
Port 9d023ed4f6
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-11-03 17:38:50 +01:00
fuyu
37dfb9dddc
[Glitch] Fix wrong seek bar width on media player
...
Port 8d7fbe7dd9
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-11-03 17:37:53 +01:00
Mélanie Chauvel
3b96141633
[Glitch] Make “Mark media as sensitive” properly translatable
...
Port c5704e75ae
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-11-03 17:36:54 +01:00
Thibaut Girka
cd675fbe18
Merge branch 'master' into glitch-soc/merge-upstream
2020-11-03 17:28:54 +01:00
Mashiro
f645dad661
add mouse scroll lock in image expand view ( #15088 )
...
* add mouse scroll lock in image expand view
* enhancement
2020-11-03 06:06:45 +01:00
Mashiro
6a2db10f76
Add expand/compress image button on image view box ( #15068 )
...
* add zoom image button
* enhance zoom algorithm & add translation
* code structure
* code structure
* code structure
* enhance grab performance
* rm useless state
* fix behavior on Firefox & scroll lock & horizontal scroll with mousewheel
* remove scroll lock on MouseWheelEvent
* code structure
* enhance algorithm and code structure
* rm Gemfile.lock from tree
* codeclimate
* fix a stupid mistake
2020-11-02 21:16:38 +01:00
ThibG
fa929d8b81
Tweak signature verification ( #15069 )
...
* Add more specific error message when request body digest is invalid
This may help other implementors debug their implementation.
* Relax Host parameter requirement to GET requests
The only POST requests processed by Mastodon need objects/actors (including
their host) to be explicitly mentioned in the request's body, so replaying
a legitimate request to another host should not be a security issue.
* Support Digest headers using multiple algorithms or lowercase alogirthm names
2020-11-01 23:38:31 +01:00
ThibG
9d023ed4f6
Fix some account media gallery items having empty labels ( #15073 )
...
Remove the labels entirely for images instead of putting an empty label.
2020-11-01 18:31:39 +01:00
Thibaut Girka
b8e790c3c2
Fix crash when viewing a profile with a filtered out pinned toot
2020-11-01 16:53:03 +01:00
ThibG
c49805efb1
Fix poll ending notifications being created for each vote ( #15071 )
...
On a poll ending, notifications were created for each vote instead
of for each voter.
2020-11-01 06:34:43 +01:00
Darius Kazemi
f1f0400adc
Show announcements in reverse chronological order ( #15065 )
2020-10-30 13:09:51 +01:00
fuyu
8d7fbe7dd9
Fix wrong seek bar width on media player ( #15060 )
2020-10-30 13:09:20 +01:00
Thibaut Girka
5a41704f89
Fix IP blocks in admin panel
...
It was broken due to discrepancies between upstream and glitch-soc's
theming system.
2020-10-28 23:55:41 +01:00
mayaeh
2ae751f19d
Fix width of content text fluctuating over time ( #15055 )
2020-10-27 13:34:02 +01:00
Thibaut Girka
a81bb14abe
Add option to hide notification markers
2020-10-27 11:20:11 +01:00
Mélanie Chauvel
c5704e75ae
Make “Mark media as sensitive” properly translatable ( #15051 )
2020-10-27 03:05:50 +01:00
Mélanie Chauvel
1d07f51039
Make visibility icon clickable as part of the time of a toot ( #15053 )
...
- Makes permalink to a toot more easily clickable
- Fix clicking between icon and time in fact clicking the display name
- Fix clicking slightly under time in fact clicking the display name
2020-10-27 03:00:47 +01:00
Mélanie Chauvel
0a8ab822e2
Sort filters by “keyword or phrase” in Settings ( #15050 )
2020-10-27 03:00:06 +01:00
Mélanie Chauvel
a5afbb62d2
Make click area of video/audio player buttons bigger in WebUI ( #15049 )
2020-10-27 02:58:47 +01:00
Thibaut Girka
49ee69f75f
Add local setting for pop-in player position
2020-10-26 20:51:28 +01:00
Thibaut Girka
ea5298ab9b
Add setting to disable the pop-in player
2020-10-26 20:31:54 +01:00
Thibaut Girka
5ee2b860f9
Respect glitch-soc's reply counter setting in the pop-in player
2020-10-26 20:31:54 +01:00
Eugen Rochko
47edac871c
[Glitch] Fix regressions in icon buttons in web UI
...
Port a549415868
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-10-26 19:51:09 +01:00
Eugen Rochko
8f950e540b
[Glitch] Add pop-out player for audio/video in web UI
...
port d88a79b456
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-10-26 19:51:09 +01:00
ThibG
ddbb9f0ec4
[Glitch] Fix follow request notifications
...
Port 3678b10823
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-10-26 15:50:48 +01:00
Thibaut Girka
9c34090db8
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `app/services/process_mentions_service.rb`:
glitch-soc local-only handling, ported upstream changes
2020-10-26 15:48:16 +01:00
ThibG
3678b10823
Fix follow request notifications ( #15048 )
2020-10-26 15:41:28 +01:00
ThibG
1f945e7390
Fix followers synchronization mechanism not being triggered on mentions ( #15026 )
...
e.g. if someone on an instance that previously had followers gets mentioned
in a private toot, before this PR, they would not receive a
Collection-Synchronization header and may show the toot to the former followers
in addition to the mentioned person.
2020-10-23 14:22:16 +02:00
ThibG
fb586584f2
Fix account processing failing because of large collections ( #15027 )
...
Fixes #15025
2020-10-23 14:21:31 +02:00
mayaeh
5c60f7eaed
[Glitch] Fix strings that could not be translated
...
Port fb5f3be18f
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-10-21 21:49:46 +02:00
Eugen Rochko
4ae4b03974
[Glitch] Change how missing desktop notifications permission is displayed
...
Port a69ca29473
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-10-21 21:49:46 +02:00
Thibaut Girka
dca05c79a9
Move columns-related CSS rules into the appropriate files
2020-10-21 21:28:47 +02:00
ThibG
b5927301cf
[Glitch] Fix browser notification permission request logic
...
Port f54ca3d08e
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-10-21 21:28:47 +02:00
OSAMU SATO
78ad04420c
[Glitch] Add duration parameter to muting.
...
Port 96761752ec
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-10-21 21:28:47 +02:00
ThibG
813c84cd6c
[Glitch] Change how CDN_HOST is passed down to make assets build reproducible
...
Port 4c45b43cb8
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-10-21 21:28:47 +02:00
ThibG
842c048c6b
[Glitch] Fix unread notification marker not updating when mounting column
...
Port dac3e362fd
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-10-21 19:36:41 +02:00
ThibG
f7306c7b7c
[Glitch] Ignore alt-key hotkeys in text fields
...
Port 63770d3aac
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-10-21 19:34:44 +02:00
Takeshi Umeda
8071613dd7
[Glitch] Fix mark as read in notifications to be saved immediately
...
Port bec8b12bb5
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-10-21 19:33:20 +02:00
ThibG
c3d82027cf
[Glitch] Fix bell button causing a brief “Cancel follow request” on locked accounts
...
Port 82951920f7
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-10-21 19:24:32 +02:00
Thibaut Girka
ec49aa8175
Merge branch 'master' into glitch-soc/merge-upstream
...
Conflicts:
- `.github/dependabot.yml`:
Updated upstream, we deleted it to not be flooded by Depandabot.
Kept deleted.
- `Gemfile.lock`:
Puma updated on both sides, went for the most recent version.
- `app/controllers/api/v1/mutes_controller.rb`:
Upstream updated the serializer to support timed mutes, while
glitch-soc added a custom API ages ago to get information that
is already available elsewhere.
Dropped the glitch-soc-specific API, went with upstream changes.
- `app/javascript/core/admin.js`:
Conflict due to changing how assets are loaded. Went with upstream.
- `app/javascript/packs/public.js`:
Conflict due to changing how assets are loaded. Went with upstream.
- `app/models/mute.rb`:
🤷
- `app/models/user.rb`:
New user setting added upstream while we have glitch-soc-specific
user settings. Added upstream's user setting.
- `config/settings.yml`:
Upstream added a new user setting close to a user setting we had
changed the defaults for. Added the new upstream setting.
- `package.json`:
Upstream dependency updated “too close” to a glitch-soc-specific
dependency. No real conflict. Updated the dependency.
2020-10-21 19:10:50 +02:00
ThibG
ca56527140
Add follower synchronization mechanism ( #14510 )
...
* Add support for followers synchronization on the receiving end
Check the `collectionSynchronization` attribute on `Create` and `Announce`
activities and synchronize followers from provided collection if possible.
* Add tests for followers synchronization on the receiving end
* Add support for follower synchronization on the sender's end
* Add tests for the sending end
* Switch from AS attributes to HTTP header
Replace the custom `collectionSynchronization` ActivityStreams attribute by
an HTTP header (`X-AS-Collection-Synchronization`) with the same syntax as
the `Signature` header and the following fields:
- `collectionId` to specify which collection to synchronize
- `digest` for the SHA256 hex-digest of the list of followers known on the
receiving instance (where “receiving instance” is determined by accounts
sharing the same host name for their ActivityPub actor `id`)
- `url` of a collection that should be fetched by the instance actor
Internally, move away from the webfinger-based `domain` attribute and use
account `uri` prefix to group accounts.
* Add environment variable to disable followers synchronization
Since the whole mechanism relies on some new preconditions that, in some
extremely rare cases, might not be met, add an environment variable
(DISABLE_FOLLOWERS_SYNCHRONIZATION) to disable the mechanism altogether and
avoid followers being incorrectly removed.
The current conditions are:
1. all managed accounts' actor `id` and inbox URL have the same URI scheme and
netloc.
2. all accounts whose actor `id` or inbox URL share the same URI scheme and
netloc as a managed account must be managed by the same Mastodon instance
as well.
As far as Mastodon is concerned, breaking those preconditions require extensive
configuration changes in the reverse proxy and might also cause other issues.
Therefore, this environment variable provides a way out for people with highly
unusual configurations, and can be safely ignored for the overwhelming majority
of Mastodon administrators.
* Only set follower synchronization header on non-public statuses
This is to avoid unnecessary computations and allow Follow-related
activities to be handled by the usual codepath instead of going through
the synchronization mechanism (otherwise, any Follow/Undo/Accept activity
would trigger the synchronization mechanism even if processing the activity
itself would be enough to re-introduce synchronization)
* Change how ActivityPub::SynchronizeFollowersService handles follow requests
If the remote lists a local follower which we only know has sent a follow
request, consider the follow request as accepted instead of sending an Undo.
* Integrate review feeback
- rename X-AS-Collection-Synchronization to Collection-Synchronization
- various minor refactoring and code style changes
* Only select required fields when computing followers_hash
* Use actor URI rather than webfinger domain in synchronization endpoint
* Change hash computation to be a XOR of individual hashes
Makes it much easier to be memory-efficient, and avoid sorting discrepancy issues.
* Marginally improve followers_hash computation speed
* Further improve hash computation performances by using pluck_each
2020-10-21 18:04:09 +02:00
abcang
9649ca0fbe
Removed disabling comments for Style/MethodMissingSuper ( #15014 )
...
* Removed disabling comments for Style/MethodMissingSuper
* Update rubocop for codeclimate
2020-10-20 09:13:39 +02:00
otrapersona
29870d2be6
Glitchsoc translation to 'es' language ( #1439 )
...
glitch-soc-specific translation to 'es' language
2020-10-19 22:17:29 +02:00
Josh Leeb-du Toit
0c24f4dce2
Add support for Gemini urls ( #15013 )
...
This PR updates the `valid_url` regex and sanitizer allowlist to provide
support for Gemini urls.
Closes #14991
2020-10-19 17:02:13 +02:00
mayaeh
4130aef29c
Fix translation string ( #14986 )
2020-10-16 21:41:43 +02:00
mayaeh
fb5f3be18f
Fix strings that could not be translated ( #14980 )
2020-10-15 21:24:58 +02:00