Eugen Rochko
44b2ee3485
Add customizable user roles ( #18641 )
...
* Add customizable user roles
* Various fixes and improvements
* Add migration for old settings and fix tootctl role management
2022-07-05 02:41:40 +02:00
Claire
1b4054256f
Fix crash when a remote Flag activity mentions a private post ( #18760 )
...
* Add tests
* Fix crash when a remote Flag activity mentions a private post
2022-07-04 11:08:30 +02:00
Claire
a233a9bfb5
Remove dead code in WebUI filtering code ( #18745 )
2022-06-30 10:39:29 +02:00
Claire
3c24f19afe
Fix reblogged statuses being erroneously shown as filtered ( #18744 )
2022-06-30 09:51:55 +02:00
Jeong Arm
df27953f96
Support audio/vnd.wave ( #18737 )
...
See: https://datatracker.ietf.org/doc/html/rfc2361
And Misskey uses this mime type for wav file.
2022-06-28 19:49:35 +02:00
Claire
02851848e9
Revamp post filtering system ( #18058 )
...
* Add model for custom filter keywords
* Use CustomFilterKeyword internally
Does not change the API
* Fix /filters/edit and /filters/new
* Add migration tests
* Remove whole_word column from custom_filters (covered by custom_filter_keywords)
* Redesign /filters
Instead of a list, present a card that displays more information and handles
multiple keywords per filter.
* Redesign /filters/new and /filters/edit to add and remove keywords
This adds a new gem dependency: cocoon, as well as a npm dependency:
cocoon-js-vanilla. Those are used to easily populate and remove form fields
from the user interface when manipulating multiple keyword filters at once.
* Add /api/v2/filters to edit filter with multiple keywords
Entities:
- `Filter`: `id`, `title`, `filter_action` (either `hide` or `warn`), `context`
`keywords`
- `FilterKeyword`: `id`, `keyword`, `whole_word`
API endpoits:
- `GET /api/v2/filters` to list filters (including keywords)
- `POST /api/v2/filters` to create a new filter
`keywords_attributes` can also be passed to create keywords in one request
- `GET /api/v2/filters/:id` to read a particular filter
- `PUT /api/v2/filters/:id` to update a new filter
`keywords_attributes` can also be passed to edit, delete or add keywords in
one request
- `DELETE /api/v2/filters/:id` to delete a particular filter
- `GET /api/v2/filters/:id/keywords` to list keywords for a filter
- `POST /api/v2/filters/:filter_id/keywords/:id` to add a new keyword to a
filter
- `GET /api/v2/filter_keywords/:id` to read a particular keyword
- `PUT /api/v2/filter_keywords/:id` to edit a particular keyword
- `DELETE /api/v2/filter_keywords/:id` to delete a particular keyword
* Change from `irreversible` boolean to `action` enum
* Remove irrelevent `irreversible_must_be_within_context` check
* Fix /filters/new and /filters/edit with update for filter_action
* Fix Rubocop/Codeclimate complaining about task names
* Refactor FeedManager#phrase_filtered?
This moves regexp building and filter caching to the `CustomFilter` class.
This does not change the functional behavior yet, but this changes how the
cache is built, doing per-custom_filter regexps so that filters can be matched
independently, while still offering caching.
* Perform server-side filtering and output result in REST API
* Fix numerous filters_changed events being sent when editing multiple keywords at once
* Add some tests
* Use the new API in the WebUI
- use client-side logic for filters we have fetched rules for.
This is so that filter changes can be retroactively applied without
reloading the UI.
- use server-side logic for filters we haven't fetched rules for yet
(e.g. network error, or initial timeline loading)
* Minor optimizations and refactoring
* Perform server-side filtering on the streaming server
* Change the wording of filter action labels
* Fix issues pointed out by linter
* Change design of “Show anyway” link in accordence to review comments
* Drop “irreversible” filtering behavior
* Move /api/v2/filter_keywords to /api/v1/filters/keywords
* Rename `filter_results` attribute to `filtered`
* Rename REST::LegacyFilterSerializer to REST::V1::FilterSerializer
* Fix systemChannelId value in streaming server
* Simplify code by removing client-side filtering code
The simplifcation comes at a cost though: filters aren't retroactively
applied anymore.
2022-06-28 09:42:13 +02:00
Eugen Rochko
2936f42a14
Add notifications for new reports ( #18697 )
2022-06-27 09:30:15 +02:00
Eugen Rochko
829b978a89
New Crowdin updates ( #18671 )
...
* New translations en.json (Esperanto)
* New translations en.json (Esperanto)
* New translations en.json (Esperanto)
* New translations en.yml (Korean)
* New translations simple_form.en.yml (Korean)
* New translations activerecord.en.yml (Korean)
* New translations en.yml (German)
* New translations en.yml (Dutch)
* New translations simple_form.en.yml (Dutch)
* New translations activerecord.en.yml (Dutch)
* New translations en.yml (Dutch)
* New translations en.yml (Icelandic)
* New translations en.yml (Icelandic)
* New translations simple_form.en.yml (Icelandic)
* New translations activerecord.en.yml (Icelandic)
* New translations en.yml (Thai)
* New translations en.json (Thai)
* New translations simple_form.en.yml (Thai)
* New translations activerecord.en.yml (Thai)
* New translations activerecord.en.yml (Indonesian)
* New translations en.yml (Turkish)
* New translations en.json (Galician)
* New translations en.yml (Slovenian)
* New translations en.yml (Galician)
* New translations en.json (Esperanto)
* New translations en.yml (Esperanto)
* New translations en.yml (Esperanto)
* New translations en.json (Esperanto)
* New translations en.json (Esperanto)
* New translations en.yml (Galician)
* New translations en.json (Esperanto)
* New translations en.json (Esperanto)
* New translations en.json (Esperanto)
* New translations simple_form.en.yml (Galician)
* New translations en.json (Esperanto)
* New translations en.json (Esperanto)
* New translations en.yml (Esperanto)
* New translations en.yml (Esperanto)
* New translations en.json (Esperanto)
* New translations en.yml (Ukrainian)
* New translations en.yml (Ukrainian)
* Run `yarn manage:translations`
* Run `bundle exec i18n-tasks normalize`
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-06-26 12:08:08 +09:00
Claire
35588d09e2
Add /api/v1/admin/domain_allows ( #18668 )
...
- `GET /api/v1/admin/domain_allows` lists allowed domains
- `GET /api/v1/admin/domain_allows/:id` shows one by ID
- `DELETE /api/v1/admin/domain_allows/:id` deletes a given domain from the list
of allowed domains
- `POST /api/v1/admin/domain_allows` to allow a new domain:
if that domain is already allowed, the existing DomainAllow will be returned
2022-06-23 23:12:01 +02:00
Takeshi Umeda
9c571a95db
Fix missing , ( #18660 )
2022-06-23 23:10:03 +02:00
Jeong Arm
6c2d3038f4
Fix CDN_HOST not affected on full_asset_url ( #18662 )
...
* Fix CDN_HOST not affected to assets url
* Fix typo
2022-06-23 23:09:32 +02:00
mayaeh
65ad589848
Fixed the setting page's logo that is not displayed on the smartphone ( #18710 )
2022-06-23 23:08:52 +02:00
tateisu
47f2ff617d
use Notification::TYPES for api push subscription alerts ( #18709 )
2022-06-23 01:44:27 +02:00
Claire
327eed0076
Fix suspicious sign-in mails never being sent ( #18599 )
...
* Add tests
* Fix suspicious sign-in mails never being sent
2022-06-21 15:16:22 +02:00
Eugen Rochko
0391b2a603
Fix contrast of some elements with new brand colors ( #18691 )
2022-06-19 08:18:08 +02:00
Eugen Rochko
3f02157a94
New Crowdin updates ( #18605 )
...
* New translations doorkeeper.en.yml (Indonesian)
* New translations simple_form.en.yml (Persian)
* New translations activerecord.en.yml (Persian)
* New translations doorkeeper.en.yml (Persian)
* New translations simple_form.en.yml (Tamil)
* New translations doorkeeper.en.yml (Tamil)
* New translations activerecord.en.yml (Marathi)
* New translations simple_form.en.yml (Spanish, Argentina)
* New translations activerecord.en.yml (Spanish, Argentina)
* New translations doorkeeper.en.yml (Spanish, Argentina)
* New translations simple_form.en.yml (Spanish, Mexico)
* New translations activerecord.en.yml (Spanish, Mexico)
* New translations doorkeeper.en.yml (Spanish, Mexico)
* New translations simple_form.en.yml (Bengali)
* New translations activerecord.en.yml (Bengali)
* New translations activerecord.en.yml (Asturian)
* New translations simple_form.en.yml (Scottish Gaelic)
* New translations activerecord.en.yml (Scottish Gaelic)
* New translations doorkeeper.en.yml (Scottish Gaelic)
* New translations simple_form.en.yml (Asturian)
* New translations doorkeeper.en.yml (Asturian)
* New translations doorkeeper.en.yml (Sinhala)
* New translations simple_form.en.yml (Occitan)
* New translations activerecord.en.yml (Occitan)
* New translations doorkeeper.en.yml (Occitan)
* New translations simple_form.en.yml (Serbian (Latin))
* New translations activerecord.en.yml (Serbian (Latin))
* New translations doorkeeper.en.yml (Serbian (Latin))
* New translations simple_form.en.yml (Kurmanji (Kurdish))
* New translations activerecord.en.yml (Kurmanji (Kurdish))
* New translations doorkeeper.en.yml (Kurmanji (Kurdish))
* New translations simple_form.en.yml (Sorani (Kurdish))
* New translations activerecord.en.yml (Sinhala)
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
* New translations simple_form.en.yml (English, United Kingdom)
* New translations activerecord.en.yml (English, United Kingdom)
* New translations simple_form.en.yml (Welsh)
* New translations activerecord.en.yml (Welsh)
* New translations doorkeeper.en.yml (Welsh)
* New translations activerecord.en.yml (Chinese Traditional, Hong Kong)
* New translations simple_form.en.yml (Sinhala)
* New translations doorkeeper.en.yml (Chinese Traditional, Hong Kong)
* New translations simple_form.en.yml (Tatar)
* New translations activerecord.en.yml (Tatar)
* New translations doorkeeper.en.yml (Tatar)
* New translations simple_form.en.yml (Malayalam)
* New translations activerecord.en.yml (Malayalam)
* New translations doorkeeper.en.yml (Malayalam)
* New translations simple_form.en.yml (Breton)
* New translations activerecord.en.yml (Breton)
* New translations doorkeeper.en.yml (Breton)
* New translations activerecord.en.yml (Sorani (Kurdish))
* New translations doorkeeper.en.yml (Sorani (Kurdish))
* New translations simple_form.en.yml (Ido)
* New translations activerecord.en.yml (Standard Moroccan Tamazight)
* New translations simple_form.en.yml (Standard Moroccan Tamazight)
* New translations doorkeeper.en.yml (Ido)
* New translations activerecord.en.yml (Ido)
* New translations doorkeeper.en.yml (Kabyle)
* New translations simple_form.en.yml (Corsican)
* New translations activerecord.en.yml (Kabyle)
* New translations simple_form.en.yml (Kabyle)
* New translations doorkeeper.en.yml (Sardinian)
* New translations activerecord.en.yml (Sardinian)
* New translations simple_form.en.yml (Sardinian)
* New translations doorkeeper.en.yml (Corsican)
* New translations activerecord.en.yml (Corsican)
* New translations doorkeeper.en.yml (Standard Moroccan Tamazight)
* New translations en.yml (Korean)
* New translations en.yml (Portuguese)
* New translations en.yml (Hungarian)
* New translations en.yml (Armenian)
* New translations en.yml (Dutch)
* New translations en.yml (Norwegian)
* New translations en.yml (Polish)
* New translations en.yml (Albanian)
* New translations en.yml (Basque)
* New translations en.yml (Turkish)
* New translations en.yml (Ukrainian)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Icelandic)
* New translations en.yml (Portuguese, Brazilian)
* New translations en.yml (Indonesian)
* New translations en.yml (Tamil)
* New translations en.yml (Spanish, Argentina)
* New translations en.yml (Finnish)
* New translations en.yml (Greek)
* New translations en.yml (Galician)
* New translations en.yml (Slovak)
* New translations en.yml (Chinese Simplified)
* New translations en.yml (Swedish)
* New translations en.yml (Arabic)
* New translations en.yml (French)
* New translations en.yml (Spanish)
* New translations en.yml (Catalan)
* New translations en.yml (Hebrew)
* New translations en.yml (Italian)
* New translations en.yml (Japanese)
* New translations en.yml (Russian)
* New translations en.yml (Slovenian)
* New translations en.yml (German)
* New translations en.yml (Vietnamese)
* New translations en.yml (Thai)
* New translations en.yml (Scottish Gaelic)
* New translations en.yml (Occitan)
* New translations en.yml (Persian)
* New translations en.yml (Romanian)
* New translations en.yml (Bulgarian)
* New translations en.yml (Czech)
* New translations en.yml (Danish)
* New translations en.yml (Spanish, Mexico)
* New translations en.yml (Bengali)
* New translations en.yml (Corsican)
* New translations en.yml (Sardinian)
* New translations en.yml (Kabyle)
* New translations en.yml (Ido)
* New translations en.yml (Kurmanji (Kurdish))
* New translations simple_form.en.yml (Russian)
* New translations activerecord.en.yml (Russian)
* New translations simple_form.en.yml (Slovenian)
* New translations activerecord.en.yml (Slovenian)
* New translations simple_form.en.yml (Ukrainian)
* New translations activerecord.en.yml (Ukrainian)
* New translations en.yml (Sorani (Kurdish))
* New translations en.yml (Welsh)
* New translations en.yml (Norwegian Nynorsk)
* New translations en.yml (Kazakh)
* New translations en.yml (Estonian)
* New translations en.yml (Latvian)
* New translations en.yml (Malay)
* New translations en.yml (Esperanto)
* New translations en.yml (Asturian)
* New translations en.yml (Chinese Traditional, Hong Kong)
* New translations en.yml (Malayalam)
* New translations activerecord.en.yml (Asturian)
* New translations en.yml (Catalan)
* New translations activerecord.en.yml (Catalan)
* New translations en.yml (Chinese Simplified)
* New translations en.yml (Danish)
* New translations en.yml (Ido)
* New translations simple_form.en.yml (Danish)
* New translations activerecord.en.yml (Danish)
* New translations activerecord.en.yml (Italian)
* New translations activerecord.en.yml (Chinese Simplified)
* New translations simple_form.en.yml (Ido)
* New translations activerecord.en.yml (Ido)
* New translations en.yml (Korean)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Spanish, Argentina)
* New translations simple_form.en.yml (Chinese Traditional)
* New translations activerecord.en.yml (Chinese Traditional)
* New translations en.yml (Chinese Simplified)
* New translations en.yml (Spanish, Argentina)
* New translations en.yml (Spanish, Mexico)
* New translations simple_form.en.yml (Spanish, Argentina)
* New translations activerecord.en.yml (Spanish, Argentina)
* New translations en.yml (Galician)
* New translations simple_form.en.yml (Galician)
* New translations activerecord.en.yml (Galician)
* New translations en.yml (Greek)
* New translations en.yml (Catalan)
* New translations en.yml (Afrikaans)
* New translations en.yml (Polish)
* New translations simple_form.en.yml (Afrikaans)
* New translations activerecord.en.yml (Afrikaans)
* New translations simple_form.en.yml (Polish)
* New translations activerecord.en.yml (Polish)
* New translations en.yml (Portuguese)
* New translations en.json (German)
* New translations simple_form.en.yml (Portuguese)
* New translations activerecord.en.yml (Portuguese)
* New translations en.yml (Italian)
* New translations en.yml (Russian)
* New translations en.yml (Turkish)
* New translations simple_form.en.yml (Turkish)
* New translations activerecord.en.yml (Turkish)
* New translations en.yml (Russian)
* New translations en.yml (Hungarian)
* New translations simple_form.en.yml (Hungarian)
* New translations activerecord.en.yml (Hungarian)
* New translations en.yml (French)
* New translations en.yml (Galician)
* New translations en.yml (French)
* New translations en.yml (Icelandic)
* New translations simple_form.en.yml (Galician)
* New translations simple_form.en.yml (French)
* New translations activerecord.en.yml (French)
* New translations en.yml (Italian)
* New translations simple_form.en.yml (Italian)
* New translations en.yml (Latvian)
* New translations en.json (Latvian)
* New translations simple_form.en.yml (Latvian)
* New translations activerecord.en.yml (Latvian)
* New translations en.yml (Kurmanji (Kurdish))
* New translations en.json (Latvian)
* New translations simple_form.en.yml (Kurmanji (Kurdish))
* New translations activerecord.en.yml (Kurmanji (Kurdish))
* New translations en.yml (Catalan)
* New translations simple_form.en.yml (Catalan)
* New translations en.yml (Chinese Traditional)
* New translations simple_form.en.yml (Chinese Traditional)
* New translations en.yml (Vietnamese)
* New translations en.yml (Vietnamese)
* New translations simple_form.en.yml (Vietnamese)
* New translations activerecord.en.yml (Vietnamese)
* New translations en.yml (Japanese)
* New translations simple_form.en.yml (Japanese)
* New translations activerecord.en.yml (Japanese)
* New translations en.yml (Czech)
* New translations en.yml (French)
* New translations en.yml (Czech)
* New translations en.json (Arabic)
* New translations en.yml (Slovak)
* New translations en.json (Slovak)
* New translations en.yml (Indonesian)
* New translations en.yml (Czech)
* New translations en.yml (Czech)
* New translations simple_form.en.yml (Czech)
* New translations activerecord.en.yml (Czech)
* New translations en.yml (Spanish, Argentina)
* New translations en.yml (Indonesian)
* New translations en.yml (Indonesian)
* New translations en.yml (Hebrew)
* New translations en.json (Hebrew)
* New translations simple_form.en.yml (Hebrew)
* New translations en.yml (Albanian)
* New translations en.json (Albanian)
* New translations simple_form.en.yml (Albanian)
* New translations activerecord.en.yml (Albanian)
* New translations devise.en.yml (Albanian)
* New translations en.yml (German)
* New translations en.json (German)
* New translations simple_form.en.yml (German)
* New translations activerecord.en.yml (German)
* New translations en.json (German)
* New translations en.yml (Spanish)
* New translations en.yml (Spanish)
* New translations simple_form.en.yml (Spanish)
* New translations activerecord.en.yml (Spanish)
* New translations en.json (Ido)
* New translations en.yml (Chinese Simplified)
* New translations en.json (Occitan)
* New translations en.json (Occitan)
* New translations en.json (Esperanto)
* New translations en.json (Esperanto)
* Run `yarn manage:translations`
* Run `bundle exec i18n-tasks normalize`
* New translations en.yml (Albanian)
* Run `bundle exec i18n-tasks normalize`
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-06-16 13:31:19 +09:00
Eugen Rochko
620b70c41e
Remove item titles from RSS feeds ( #18640 )
2022-06-12 02:48:03 +02:00
Eugen Rochko
fe2d6fe105
Fix wrong aspect ratio of logo in icons ( #18639 )
2022-06-11 20:32:02 +02:00
Claire
37cd984acf
Fix logo gradient not working on some Safari and Blink-based browsers ( #18634 )
...
Works around https://bugs.chromium.org/p/chromium/issues/detail?id=258029
2022-06-10 17:34:59 +02:00
Eugen Rochko
45aa5781ce
Change brand color and logotypes ( #18592 )
...
- Add rake task for generating Apple/Android icons and favicons from SVG
- Add rake task for generating PNG icons and logos for e-mails from SVG
- Remove obsolete Microsoft icons and configuration
- Remove PWA shortcut icons
2022-06-09 22:25:23 +02:00
Eugen Rochko
a2871cd747
Add administrative webhooks ( #18510 )
...
* Add administrative webhooks
* Fix error when webhook is deleted before delivery worker runs
2022-06-09 21:57:36 +02:00
Eugen Rochko
17ba5e1e61
New Crowdin updates ( #18561 )
...
* New translations en.yml (Portuguese)
* New translations en.yml (Lithuanian)
* New translations en.yml (Serbian (Cyrillic))
* New translations en.yml (Turkish)
* New translations en.yml (Ukrainian)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Urdu (Pakistan))
* New translations en.yml (Icelandic)
* New translations en.yml (Portuguese, Brazilian)
* New translations en.yml (Indonesian)
* New translations en.yml (Tamil)
* New translations en.yml (Macedonian)
* New translations en.yml (Korean)
* New translations en.yml (Georgian)
* New translations en.yml (Slovak)
* New translations en.yml (Chinese Simplified)
* New translations en.yml (Swedish)
* New translations en.yml (Hebrew)
* New translations en.yml (Italian)
* New translations en.yml (Japanese)
* New translations en.yml (Russian)
* New translations en.yml (Slovenian)
* New translations en.yml (Armenian)
* New translations en.yml (Vietnamese)
* New translations en.yml (Scottish Gaelic)
* New translations en.yml (Occitan)
* New translations en.yml (Persian)
* New translations en.yml (Galician)
* New translations en.yml (Hungarian)
* New translations en.yml (Spanish, Argentina)
* New translations en.yml (Irish)
* New translations en.json (Arabic)
* New translations en.json (Irish)
* New translations en.json (German)
* New translations en.yml (Spanish, Mexico)
* New translations en.json (Turkish)
* New translations en.yml (Kabyle)
* New translations en.yml (Ido)
* New translations en.yml (Taigi)
* New translations en.yml (Silesian)
* New translations en.yml (Standard Moroccan Tamazight)
* New translations en.json (Japanese)
* New translations en.json (Korean)
* New translations en.json (Vietnamese)
* New translations en.json (Chinese Simplified)
* New translations en.yml (Sardinian)
* New translations en.json (Portuguese, Brazilian)
* New translations en.json (Asturian)
* New translations en.json (Scottish Gaelic)
* New translations en.json (Welsh)
* New translations en.json (Galician)
* New translations en.json (Slovak)
* New translations en.json (Icelandic)
* New translations en.yml (Sanskrit)
* New translations en.yml (Corsican)
* New translations en.yml (Bengali)
* New translations en.yml (Esperanto)
* New translations en.yml (Marathi)
* New translations en.yml (Croatian)
* New translations en.yml (Norwegian Nynorsk)
* New translations en.yml (Kazakh)
* New translations en.yml (Estonian)
* New translations en.yml (Latvian)
* New translations en.yml (Hindi)
* New translations en.yml (Malay)
* New translations en.yml (Telugu)
* New translations en.yml (Welsh)
* New translations en.yml (Uyghur)
* New translations en.yml (Sorani (Kurdish))
* New translations en.yml (Chinese Traditional, Hong Kong)
* New translations en.yml (Tatar)
* New translations en.yml (Malayalam)
* New translations en.yml (Breton)
* New translations en.yml (Sinhala)
* New translations en.yml (Cornish)
* New translations en.yml (Kannada)
* New translations en.yml (Asturian)
* New translations en.yml (Serbian (Latin))
* New translations en.yml (Kurmanji (Kurdish))
* New translations en.json (Sorani (Kurdish))
* New translations en.json (Greek)
* New translations en.json (Romanian)
* New translations en.json (French)
* New translations en.json (Spanish)
* New translations en.json (Afrikaans)
* New translations en.json (Bulgarian)
* New translations en.json (Czech)
* New translations en.json (Danish)
* New translations en.json (Basque)
* New translations en.json (Finnish)
* New translations en.json (Hebrew)
* New translations en.json (Spanish, Mexico)
* New translations en.json (Marathi)
* New translations en.json (Bengali)
* New translations en.json (English, United Kingdom)
* New translations en.json (Spanish, Argentina)
* New translations en.json (Tamil)
* New translations en.json (Croatian)
* New translations en.json (Persian)
* New translations en.json (Thai)
* New translations en.json (Malay)
* New translations en.json (Norwegian Nynorsk)
* New translations en.json (Kazakh)
* New translations en.json (Estonian)
* New translations en.json (Latvian)
* New translations en.json (Hindi)
* New translations en.json (Urdu (Pakistan))
* New translations en.json (Telugu)
* New translations en.json (Esperanto)
* New translations en.json (Indonesian)
* New translations en.json (Slovenian)
* New translations en.json (Chinese Traditional)
* New translations en.json (Dutch)
* New translations en.json (Norwegian)
* New translations en.json (Hungarian)
* New translations en.json (Armenian)
* New translations en.json (Italian)
* New translations en.json (Georgian)
* New translations en.json (Lithuanian)
* New translations en.json (Macedonian)
* New translations en.json (Punjabi)
* New translations en.json (Ukrainian)
* New translations en.json (Polish)
* New translations en.json (Portuguese)
* New translations en.json (Russian)
* New translations en.yml (English, United Kingdom)
* New translations en.json (Albanian)
* New translations en.json (Serbian (Cyrillic))
* New translations en.json (Swedish)
* New translations en.json (Uyghur)
* New translations en.json (Chinese Traditional, Hong Kong)
* New translations en.json (Corsican)
* New translations en.json (Silesian)
* New translations en.json (Taigi)
* New translations en.json (Ido)
* New translations en.json (Kabyle)
* New translations en.json (Sanskrit)
* New translations en.json (Sardinian)
* New translations en.json (Kurmanji (Kurdish))
* New translations en.json (Tatar)
* New translations en.json (Serbian (Latin))
* New translations en.json (Occitan)
* New translations en.json (Kannada)
* New translations en.json (Cornish)
* New translations en.json (Sinhala)
* New translations en.json (Breton)
* New translations en.json (Malayalam)
* New translations en.json (Standard Moroccan Tamazight)
* New translations en.json (Spanish, Argentina)
* New translations en.json (Galician)
* New translations en.json (Chinese Traditional)
* New translations en.json (Greek)
* New translations en.json (Swedish)
* New translations en.json (Russian)
* New translations en.json (Chinese Simplified)
* New translations en.json (Catalan)
* New translations en.json (Polish)
* New translations en.json (Latvian)
* New translations en.yml (Turkish)
* New translations en.json (Turkish)
* New translations en.json (Czech)
* New translations en.json (Slovenian)
* New translations en.json (Icelandic)
* New translations en.json (Hungarian)
* New translations en.json (Italian)
* New translations en.json (Vietnamese)
* New translations en.yml (Russian)
* New translations doorkeeper.en.yml (Russian)
* New translations en.yml (Japanese)
* New translations en.json (Japanese)
* New translations en.json (Danish)
* New translations en.json (Dutch)
* New translations en.json (Portuguese)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations simple_form.en.yml (Frisian)
* New translations activerecord.en.yml (Frisian)
* New translations devise.en.yml (Frisian)
* New translations doorkeeper.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Breton)
* New translations en.json (Breton)
* New translations en.yml (Polish)
* New translations en.yml (Russian)
* New translations en.yml (Catalan)
* New translations en.yml (Korean)
* New translations en.yml (Spanish, Argentina)
* New translations en.json (Korean)
* New translations en.yml (Greek)
* New translations en.yml (Kurmanji (Kurdish))
* New translations en.yml (Ukrainian)
* New translations en.yml (Czech)
* New translations en.json (Ukrainian)
* New translations en.yml (Icelandic)
* New translations en.yml (Portuguese)
* New translations en.yml (Latvian)
* New translations en.yml (Hungarian)
* New translations en.json (Irish)
* New translations en.json (Irish)
* New translations en.json (Irish)
* New translations en.yml (Czech)
* New translations en.yml (Danish)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Galician)
* New translations en.yml (Galician)
* New translations simple_form.en.yml (Galician)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations activerecord.en.yml (Frisian)
* New translations activerecord.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations devise.en.yml (Frisian)
* New translations doorkeeper.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations en.yml (Slovenian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations doorkeeper.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations simple_form.en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.json (Frisian)
* New translations en.yml (Indonesian)
* New translations en.json (Indonesian)
* New translations en.json (Spanish)
* New translations en.yml (Spanish)
* New translations en.yml (Italian)
* New translations en.yml (Ido)
* New translations en.json (Ido)
* New translations en.json (French)
* New translations en.yml (Korean)
* New translations simple_form.en.yml (Korean)
* New translations simple_form.en.yml (Korean)
* New translations en.yml (Russian)
* New translations en.yml (Russian)
* Run `yarn manage:translations`
* Run `bundle exec i18n-tasks normalize`
* Fix default message
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-06-04 13:44:49 +09:00
Claire
9d4861b498
Remove dependency on running Redis server for db:setup ( #18560 )
2022-06-01 19:23:31 +02:00
Claire
ae4f068a84
Fix CAS_DISPLAY_NAME, SAML_DISPLAY_NAME and OIDC_DISPLAY_NAME being ignored ( #18568 )
2022-06-01 19:22:55 +02:00
Yamagishi Kazutoshi
84266f87e7
Replace from Code Climate to Super-Linter ( #18587 )
2022-06-01 19:22:35 +02:00
Claire
28329ba62f
Add /api/v1/admin/domain_blocks ( #18247 )
...
* Add /api/v1/admin/domain_blocks
Fixes #18140
- `GET /api/v1/admin/domain_blocks` lists domain blocks
- `GET /api/v1/admin/domain_blocks/:id` shows one by ID
- `DELETE /api/v1/admin/domain_blocks/:id` deletes a given domain block
- `POST /api/v1/admin/domain_blocks` to create a new domain block:
if it conflicts with an existing one, returns an error with
an attribute `existing_domain_block` with the rendered domain block
* Simplify conflict handling as suggested in review
2022-06-01 17:31:36 +02:00
Meisam
f5783182c3
Add “services” and “metadata” to NodeInfo ( #18563 )
...
* add services to NodeInfo response
* add metadata to NodeInfo response
* learning ruby syntax!
* patch the patch
* rm trailing whitespace
* use [] instead of empty array constructor
2022-06-01 16:24:07 +02:00
Eugen Rochko
628c177ebe
Change label of publish button to be "Publish" again ( #18583 )
2022-06-01 05:03:12 +02:00
Claire
28212bd2be
Fix TagManager#local_url? erroring out on invalid URL ( #18580 )
2022-05-31 18:25:24 +02:00
Claire
14d7cf39f4
Change language to be carried over on reply ( #18557 )
...
In most cases, replies to a toot are written in the same language as the
toot being replied to.
2022-05-31 05:53:43 +02:00
Claire
2f6416db53
Remove unnused otherAccounts property ( #18556 )
...
Leftover from before #11896
2022-05-30 17:10:13 +02:00
Eugen Rochko
3238f570db
New Crowdin updates ( #18507 )
...
* New translations en.yml (Galician)
* New translations en.json (Galician)
* New translations en.yml (Esperanto)
* New translations en.json (Esperanto)
* New translations en.json (Dutch)
* New translations en.json (Dutch)
* New translations en.json (Dutch)
* New translations en.yml (Korean)
* New translations en.yml (Polish)
* New translations en.yml (Finnish)
* New translations en.yml (Hungarian)
* New translations en.yml (Armenian)
* New translations en.yml (Georgian)
* New translations en.yml (Lithuanian)
* New translations en.yml (Macedonian)
* New translations en.yml (Dutch)
* New translations en.yml (Norwegian)
* New translations en.yml (Punjabi)
* New translations en.yml (Portuguese)
* New translations en.yml (Greek)
* New translations en.yml (Albanian)
* New translations en.yml (Serbian (Cyrillic))
* New translations en.yml (Turkish)
* New translations en.yml (Ukrainian)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Urdu (Pakistan))
* New translations en.yml (Icelandic)
* New translations en.yml (Portuguese, Brazilian)
* New translations en.yml (Indonesian)
* New translations en.yml (Tamil)
* New translations en.yml (Basque)
* New translations en.yml (German)
* New translations en.yml (Galician)
* New translations en.yml (Slovak)
* New translations en.yml (Chinese Simplified)
* New translations en.yml (Swedish)
* New translations en.yml (Arabic)
* New translations en.yml (French)
* New translations en.yml (Spanish)
* New translations en.yml (Catalan)
* New translations en.yml (Hebrew)
* New translations en.yml (Italian)
* New translations en.yml (Japanese)
* New translations en.yml (Russian)
* New translations en.yml (Slovenian)
* New translations en.yml (Danish)
* New translations en.yml (Vietnamese)
* New translations en.yml (Thai)
* New translations en.yml (Scottish Gaelic)
* New translations en.yml (Occitan)
* New translations en.json (Catalan)
* New translations en.yml (Persian)
* New translations en.yml (Romanian)
* New translations en.yml (Afrikaans)
* New translations en.yml (Bulgarian)
* New translations en.yml (Czech)
* New translations en.yml (Spanish, Argentina)
* New translations en.yml (Spanish, Mexico)
* New translations en.json (Chinese Simplified)
* New translations en.yml (Kabyle)
* New translations en.yml (Ido)
* New translations en.yml (Taigi)
* New translations en.yml (Silesian)
* New translations en.yml (Standard Moroccan Tamazight)
* New translations en.json (German)
* New translations en.json (Japanese)
* New translations en.json (Korean)
* New translations en.json (Turkish)
* New translations en.json (Vietnamese)
* New translations en.yml (Sardinian)
* New translations en.json (Portuguese, Brazilian)
* New translations en.json (Asturian)
* New translations en.json (Irish)
* New translations en.yml (Irish)
* New translations en.json (Arabic)
* New translations en.json (Scottish Gaelic)
* New translations en.json (Welsh)
* New translations en.json (Galician)
* New translations en.json (Icelandic)
* New translations en.yml (Sanskrit)
* New translations en.yml (Corsican)
* New translations en.yml (Bengali)
* New translations en.yml (Marathi)
* New translations en.yml (Croatian)
* New translations en.yml (Norwegian Nynorsk)
* New translations en.yml (Kazakh)
* New translations en.yml (Estonian)
* New translations en.yml (Latvian)
* New translations en.yml (Hindi)
* New translations en.yml (Malay)
* New translations en.yml (Telugu)
* New translations en.yml (Welsh)
* New translations en.yml (Uyghur)
* New translations en.yml (Sorani (Kurdish))
* New translations en.yml (Chinese Traditional, Hong Kong)
* New translations en.yml (Tatar)
* New translations en.yml (Malayalam)
* New translations en.yml (Breton)
* New translations en.yml (Sinhala)
* New translations en.yml (Cornish)
* New translations en.yml (Kannada)
* New translations en.yml (Asturian)
* New translations en.yml (Serbian (Latin))
* New translations en.yml (Kurmanji (Kurdish))
* New translations en.json (Sorani (Kurdish))
* New translations en.json (English, United Kingdom)
* New translations en.json (Bengali)
* New translations en.json (Swedish)
* New translations en.json (Ukrainian)
* New translations en.json (Chinese Traditional)
* New translations en.json (Urdu (Pakistan))
* New translations en.json (Indonesian)
* New translations en.json (Persian)
* New translations en.json (Tamil)
* New translations en.json (Spanish, Argentina)
* New translations en.json (Spanish, Mexico)
* New translations en.json (Marathi)
* New translations en.json (Albanian)
* New translations en.json (Thai)
* New translations en.json (Croatian)
* New translations en.json (Norwegian Nynorsk)
* New translations en.json (Kazakh)
* New translations en.json (Latvian)
* New translations en.json (Hindi)
* New translations en.json (Malay)
* New translations en.json (Telugu)
* New translations en.json (Serbian (Cyrillic))
* New translations en.json (Slovenian)
* New translations en.yml (English, United Kingdom)
* New translations en.json (Finnish)
* New translations en.json (Norwegian)
* New translations en.json (Romanian)
* New translations en.json (French)
* New translations en.json (Spanish)
* New translations en.json (Afrikaans)
* New translations en.json (Bulgarian)
* New translations en.json (Czech)
* New translations en.json (Danish)
* New translations en.json (Greek)
* New translations en.json (Basque)
* New translations en.json (Hebrew)
* New translations en.json (Russian)
* New translations en.json (Hungarian)
* New translations en.json (Armenian)
* New translations en.json (Italian)
* New translations en.json (Georgian)
* New translations en.json (Lithuanian)
* New translations en.json (Macedonian)
* New translations en.json (Dutch)
* New translations en.json (Punjabi)
* New translations en.json (Polish)
* New translations en.json (Portuguese)
* New translations en.json (Uyghur)
* New translations en.json (Chinese Traditional, Hong Kong)
* New translations en.json (Corsican)
* New translations en.json (Silesian)
* New translations en.json (Taigi)
* New translations en.json (Ido)
* New translations en.json (Kabyle)
* New translations en.json (Sanskrit)
* New translations en.json (Sardinian)
* New translations en.json (Kurmanji (Kurdish))
* New translations en.json (Tatar)
* New translations en.json (Serbian (Latin))
* New translations en.json (Occitan)
* New translations en.json (Kannada)
* New translations en.json (Cornish)
* New translations en.json (Sinhala)
* New translations en.json (Breton)
* New translations en.json (Malayalam)
* New translations en.json (Standard Moroccan Tamazight)
* New translations en.yml (Dutch)
* New translations en.yml (Dutch)
* New translations en.yml (Chinese Traditional)
* New translations en.json (Turkish)
* New translations en.json (Polish)
* New translations en.json (Chinese Traditional)
* New translations en.yml (Dutch)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Latvian)
* New translations en.json (Latvian)
* New translations en.yml (Polish)
* New translations en.json (Czech)
* New translations en.json (Dutch)
* New translations en.json (Catalan)
* New translations en.yml (Dutch)
* New translations en.json (Dutch)
* New translations en.yml (Dutch)
* New translations en.json (Icelandic)
* New translations en.json (Kurmanji (Kurdish))
* New translations en.yml (Icelandic)
* New translations en.yml (Kurmanji (Kurdish))
* New translations en.yml (Occitan)
* New translations en.json (Occitan)
* New translations en.json (Afrikaans)
* New translations en.json (Spanish, Argentina)
* New translations en.json (Greek)
* New translations en.yml (Spanish, Argentina)
* New translations en.yml (Czech)
* New translations en.json (Ukrainian)
* New translations en.json (Russian)
* New translations en.json (Slovenian)
* New translations en.yml (Slovenian)
* New translations en.json (Ido)
* New translations en.yml (Ido)
* New translations en.json (Polish)
* New translations en.yml (Spanish)
* New translations en.yml (Spanish, Mexico)
* New translations en.yml (Galician)
* New translations en.yml (Galician)
* New translations en.json (Chinese Simplified)
* New translations en.yml (Galician)
* New translations en.json (Galician)
* New translations en.yml (Chinese Traditional)
* New translations en.json (Chinese Simplified)
* New translations en.json (Chinese Simplified)
* New translations en.json (Italian)
* New translations en.json (Hungarian)
* New translations en.yml (Hungarian)
* New translations en.json (Scottish Gaelic)
* New translations en.yml (Scottish Gaelic)
* New translations simple_form.en.yml (Esperanto)
* New translations simple_form.en.yml (Esperanto)
* New translations simple_form.en.yml (Esperanto)
* New translations en.json (Russian)
* New translations en.json (Spanish)
* New translations en.yml (Spanish)
* New translations en.json (Vietnamese)
* New translations en.json (Portuguese)
* New translations en.json (Danish)
* New translations en.yml (Danish)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Vietnamese)
* New translations en.json (Thai)
* New translations en.json (French)
* New translations en.json (Esperanto)
* New translations en.yml (Esperanto)
* New translations en.json (Esperanto)
* New translations doorkeeper.en.yml (Esperanto)
* New translations activerecord.en.yml (Esperanto)
* New translations devise.en.yml (Esperanto)
* New translations en.yml (Italian)
* New translations en.json (Italian)
* New translations en.json (Kurmanji (Kurdish))
* New translations en.yml (Chinese Simplified)
* New translations en.json (Korean)
* New translations en.json (Ido)
* Run `yarn manage:translations`
* Run `bundle exec i18n-tasks normalize`
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-05-30 15:49:43 +09:00
Jeong Arm
dc7e2985e6
Add lang html attr to each posts ( #18544 )
2022-05-28 15:50:36 +02:00
Jeong Arm
fed7380e9f
Prevent use locale with empty string ( #18543 )
...
Somehow user's locale could be an empty string, And empty string itself
are treated as true value.
2022-05-28 14:32:08 +02:00
Alexander Ivanov
379a7a7ca7
Add support for webp uploads ( #18506 )
2022-05-27 20:06:40 +02:00
Eugen Rochko
d21251f8fe
Remove unused assets ( #18541 )
2022-05-27 20:05:34 +02:00
Claire
e34dd3644c
Remove unused `filtered_languages` column ( #18533 )
...
* Remove unused `filtered_languages` column
Fixes #18522
* Fix tests
2022-05-27 20:05:22 +02:00
Eugen Rochko
0a1992430d
Fix errors when rendering RSS feeds ( #18531 )
2022-05-26 23:02:42 +02:00
Eugen Rochko
52f4e834f2
Fix concurrent unfollowing decrementing follower count more than once ( #18527 )
2022-05-26 22:14:47 +02:00
Eugen Rochko
8a9acbe604
Fix being able to appeal a strike unlimited times ( #18529 )
...
Peculiarity of the `has_one` association is that the convenience
creation method deletes the previous association even if the new
one is invalid
2022-05-26 22:08:12 +02:00
Eugen Rochko
c4d2c39a75
Fix being able to report otherwise inaccessible statuses ( #18528 )
2022-05-26 22:08:02 +02:00
Eugen Rochko
1ff4877945
Fix empty votes arbitrarily increasing voters count in polls ( #18526 )
2022-05-26 22:06:10 +02:00
Eugen Rochko
976cd6413e
Fix moderator leak in undo_mark_statuses_as_sensitive ( #18525 )
...
Signed-off-by: Eugen Rochko <eugen@zeonfederated.com>
Co-authored-by: 40826d <74816220+40826d@users.noreply.github.com>
2022-05-26 22:04:16 +02:00
Eugen Rochko
9f81b9f29a
Fix suspended users being able to access APIs that don't require a user ( #18524 )
2022-05-26 22:04:05 +02:00
Eugen Rochko
96129c2f10
Fix confirmation redirect to app without `Location` header ( #18523 )
2022-05-26 22:03:54 +02:00
Eugen Rochko
3e0e7a1cfb
Fix follower and other counters being able to go negative ( #18517 )
2022-05-26 20:32:48 +02:00
Eugen Rochko
088dc0ec5a
Fix regression in `tootctl search deploy` caused by unloaded attribute ( #18514 )
2022-05-26 18:05:47 +02:00
Eugen Rochko
a4fa9e23fc
Change "dangerous" to "sensitive" in privacy policy and web UI ( #18515 )
...
Fix #18470
2022-05-26 17:55:05 +02:00
Claire
440eb71310
Change unapproved and unconfirmed account to not be accessible in the REST API ( #17530 )
...
* Change unapproved and unconfirmed account to not be accessible in the REST API
* Change Account#searchable? to reject unconfirmed and unapproved users
* Disable search for unapproved and unconfirmed users in Account.search_for
* Disable search for unapproved and unconfirmed users in Account.advanced_search_for
* Remove unconfirmed and unapproved accounts from Account.searchable scope
* Prevent mentions to unapproved/unconfirmed accounts
* Fix some old tests for Account.advanced_search_for
* Add some Account.advanced_search_for tests for existing behaviors
* Add some tests for Account.search_for
* Add Account.advanced_search_for tests unconfirmed and unapproved accounts
* Add Account.searchable tests
* Fix Account.without_unapproved scope potentially messing with previously-applied scopes
* Allow lookup of unconfirmed/unapproved accounts through /api/v1/accounts/lookup
This is so that the API can still be used to check whether an username is free
to use.
2022-05-26 15:50:33 +02:00
Claire
25dda3061e
Fix unnecessary query on status creation ( #17901 )
2022-05-26 00:20:30 +02:00