Claire
4d9ee0e01d
Remove LDSignature on actor Delete activities ( #21466 )
...
They are currently not used for anything and represent more than half of the
payload size.
2 years ago
Claire
f47fbb8729
Fix “Share @{name}'s profile” profile menu item ( #21490 )
2 years ago
Kaspar V
f2ec356cb6
refactor(vacuum statuses): reduce amount of db queries and load for each query - improve performance ( #21487 )
...
* refactor(statuses_vacuum): remove dead code - unused
Method is not called inside class and private.
Clean up dead code.
* refactor(statuses_vacuum): make retention_period present test explicit
This private method only hides functionality.
It is best practice to be as explicit as possible.
* refactor(statuses_vacuum): improve query performance
- fix statuses_scope having sub-select for Account.remote scope by
`joins(:account).merge(Account.remote)`
- fix statuses_scope unnecessary use of `Status.arel_table[:id].lt`
because it is inexplicit, bad practice and even slower than normal
`.where('statuses.id < ?'`
- fix statuses_scope remove select(:id, :visibility) for having reusable
active record query batches (no re queries)
- fix vacuum_statuses! to use in_batches instead of find_in_batches,
because in_batches delivers a full blown active record query result,
in stead of an array - no requeries necessary
- send(:unlink_from_conversations) not to perform another db query, but
reuse the in_batches result instead.
- remove now obsolete remove_from_account_conversations method
- remove_from_search_index uses array of ids, instead of mapping
the ids from an array - this should be more efficient
- use the in_batches scope to call delete_all, instead of running
another db query for this - because it is again more efficient
- add TODO comment for calling models private method with send
* refactor(status): simplify unlink_from_conversations
- add `has_many through:` relation mentioned_accounts
- use model scope local instead of method call `Status#local?`
- more readable add account to inbox_owners when account.local?
* refactor(status): searchable_by way less sub selects
These queries all included a sub-select. Doing the same with a joins
should be more efficient.
Since this method does 5 such queries, this should be significant,
since it technically halves the query count.
This is how it was:
```ruby
[3] pry(main)> Status.first.mentions.where(account: Account.local, silent: false).explain
Status Load (1.6ms) SELECT "statuses".* FROM "statuses" WHERE "statuses"."deleted_at" IS NULL ORDER BY "statuses"."id" DESC LIMIT $1 [["LIMIT", 1]]
Mention Load (1.5ms) SELECT "mentions".* FROM "mentions" WHERE "mentions"."status_id" = $1 AND "mentions"."account_id" IN (SELECT "accounts"."id" FROM "accounts" WHERE "accounts"."domain" IS NULL) AND "mentions"."silent" = $2 [["status_id", 109382923142288414], ["silent", false]]
=> EXPLAIN for: SELECT "mentions".* FROM "mentions" WHERE "mentions"."status_id" = $1 AND "mentions"."account_id" IN (SELECT "accounts"."id" FROM "accounts" WHERE "accounts"."domain" IS NULL) AND "mentions"."silent" = $2 [["status_id", 109382923142288414], ["silent", false]]
QUERY PLAN
------------------------------------------------------------------------------------------------------------------
Nested Loop (cost=0.15..23.08 rows=1 width=41)
-> Seq Scan on accounts (cost=0.00..10.90 rows=1 width=8)
Filter: (domain IS NULL)
-> Index Scan using index_mentions_on_account_id_and_status_id on mentions (cost=0.15..8.17 rows=1 width=41)
Index Cond: ((account_id = accounts.id) AND (status_id = '109382923142288414'::bigint))
Filter: (NOT silent)
(6 rows)
```
This is how it is with this change:
```ruby
[4] pry(main)> Status.first.mentions.joins(:account).merge(Account.local).active.explain
Status Load (1.7ms) SELECT "statuses".* FROM "statuses" WHERE "statuses"."deleted_at" IS NULL ORDER BY "statuses"."id" DESC LIMIT $1 [["LIMIT", 1]]
Mention Load (0.7ms) SELECT "mentions".* FROM "mentions" INNER JOIN "accounts" ON "accounts"."id" = "mentions"."account_id" WHERE "mentions"."status_id" = $1 AND "accounts"."domain" IS NULL AND "mentions"."silent" = $2 [["status_id", 109382923142288414], ["silent", false]]
=> EXPLAIN for: SELECT "mentions".* FROM "mentions" INNER JOIN "accounts" ON "accounts"."id" = "mentions"."account_id" WHERE "mentions"."status_id" = $1 AND "accounts"."domain" IS NULL AND "mentions"."silent" = $2 [["status_id", 109382923142288414], ["silent", false]]
QUERY PLAN
------------------------------------------------------------------------------------------------------------------
Nested Loop (cost=0.15..23.08 rows=1 width=41)
-> Seq Scan on accounts (cost=0.00..10.90 rows=1 width=8)
Filter: (domain IS NULL)
-> Index Scan using index_mentions_on_account_id_and_status_id on mentions (cost=0.15..8.17 rows=1 width=41)
Index Cond: ((account_id = accounts.id) AND (status_id = '109382923142288414'::bigint))
Filter: (NOT silent)
(6 rows)
```
2 years ago
Claire
be16e6f26c
Fix attachments of edited statuses not being fetched ( #21565 )
...
* Fix attachments of edited statuses not being fetched
* Fix tests
2 years ago
kedama
691b827c87
Fix status mismatch of sensitive check ( #21724 )
2 years ago
afontenot
05b1b5790f
Clear voter count when poll is reset ( #21700 )
...
When a poll is edited, we reset the poll and remove all previous
votes. However, prior to this commit, the voter count on the poll
was not reset. This leads to incorrect percentages being shown in
poll results.
Fixes #21696
2 years ago
Skyler Hawthorne
ce10b313bb
fix media uploads with ffmpeg 5 ( #21191 )
2 years ago
Eugen Rochko
4b21adb4b2
New Crowdin updates ( #20942 )
...
* New translations en.yml (Belarusian)
* New translations simple_form.en.yml (Belarusian)
* New translations doorkeeper.en.yml (Belarusian)
* New translations devise.en.yml (Finnish)
* New translations en.json (Norwegian)
* New translations en.json (Serbian (Cyrillic))
* New translations en.yml (Esperanto)
* New translations en.yml (Scots)
* New translations en.yml (Italian)
* New translations en.json (Welsh)
* New translations en.yml (Welsh)
* New translations en.yml (Esperanto)
* New translations en.yml (Belarusian)
* New translations simple_form.en.yml (Belarusian)
* New translations en.yml (German)
* New translations simple_form.en.yml (Belarusian)
* New translations en.yml (Belarusian)
* New translations en.json (Belarusian)
* New translations en.yml (Faroese)
* New translations simple_form.en.yml (Estonian)
* New translations en.json (German)
* New translations simple_form.en.yml (German)
* New translations en.yml (Esperanto)
* New translations en.yml (Welsh)
* New translations en.yml (Estonian)
* New translations en.json (Estonian)
* New translations en.yml (Italian)
* New translations doorkeeper.en.yml (Belarusian)
* New translations en.yml (German)
* New translations en.json (Estonian)
* New translations en.yml (Estonian)
* New translations en.yml (Welsh)
* New translations simple_form.en.yml (German)
* New translations simple_form.en.yml (Estonian)
* New translations doorkeeper.en.yml (Welsh)
* New translations activerecord.en.yml (Welsh)
* New translations devise.en.yml (Welsh)
* New translations en.yml (Faroese)
* New translations en.yml (Scots)
* New translations simple_form.en.yml (Belarusian)
* New translations doorkeeper.en.yml (Belarusian)
* New translations en.yml (German)
* New translations en.json (Hungarian)
* New translations en.json (Bengali)
* New translations en.yml (Estonian)
* New translations simple_form.en.yml (German)
* New translations simple_form.en.yml (Estonian)
* New translations simple_form.en.yml (Welsh)
* New translations en.yml (Scots)
* New translations doorkeeper.en.yml (German)
* New translations en.yml (Russian)
* New translations en.yml (Estonian)
* New translations en.json (Belarusian)
* New translations simple_form.en.yml (Belarusian)
* New translations en.json (Indonesian)
* New translations en.yml (Indonesian)
* New translations simple_form.en.yml (Serbian (Latin))
* New translations en.json (Belarusian)
* New translations en.yml (Belarusian)
* New translations devise.en.yml (Serbian (Latin))
* New translations en.yml (Belarusian)
* New translations simple_form.en.yml (Belarusian)
* New translations doorkeeper.en.yml (Belarusian)
* New translations en.yml (German)
* New translations en.json (German)
* New translations en.yml (Portuguese, Brazilian)
* New translations simple_form.en.yml (German)
* New translations doorkeeper.en.yml (German)
* New translations devise.en.yml (German)
* New translations en.yml (Faroese)
* New translations simple_form.en.yml (Faroese)
* New translations en.yml (Belarusian)
* New translations doorkeeper.en.yml (Belarusian)
* New translations en.json (Spanish)
* New translations en.json (Welsh)
* New translations en.yml (Welsh)
* New translations doorkeeper.en.yml (Welsh)
* New translations en.yml (Belarusian)
* New translations en.json (German)
* New translations en.yml (Welsh)
* New translations en.json (Asturian)
* New translations simple_form.en.yml (German)
* New translations en.yml (Faroese)
* New translations en.yml (Belarusian)
* New translations en.json (Asturian)
* New translations en.yml (Asturian)
* New translations en.json (French, Quebec)
* New translations en.json (Faroese)
* New translations en.yml (Faroese)
* New translations en.json (Belarusian)
* New translations en.yml (Belarusian)
* New translations devise.en.yml (Asturian)
* New translations en.json (Spanish)
* New translations en.json (French, Quebec)
* New translations en.yml (Faroese)
* New translations en.yml (Scots)
* New translations en.json (Belarusian)
* New translations en.yml (Belarusian)
* New translations en.json (French, Quebec)
* New translations en.yml (Scots)
* New translations en.yml (Belarusian)
* New translations en.yml (Asturian)
* New translations simple_form.en.yml (Asturian)
* New translations doorkeeper.en.yml (Asturian)
* New translations en.json (Asturian)
* New translations en.yml (Asturian)
* New translations simple_form.en.yml (Asturian)
* New translations en.json (Asturian)
* New translations en.yml (Faroese)
* New translations en.yml (Faroese)
* New translations simple_form.en.yml (Faroese)
* New translations simple_form.en.yml (Belarusian)
* New translations devise.en.yml (Serbian (Latin))
* New translations en.yml (Japanese)
* New translations en.json (Serbian (Latin))
* New translations en.yml (Faroese)
* New translations en.yml (Belarusian)
* New translations simple_form.en.yml (Belarusian)
* New translations en.yml (German)
* New translations en.json (German)
* New translations en.yml (Estonian)
* New translations en.json (Estonian)
* New translations en.yml (Estonian)
* New translations simple_form.en.yml (Estonian)
* New translations devise.en.yml (Estonian)
* New translations en.yml (German)
* New translations en.json (German)
* New translations en.yml (Estonian)
* New translations simple_form.en.yml (German)
* New translations simple_form.en.yml (Estonian)
* New translations devise.en.yml (Estonian)
* New translations en.yml (German)
* New translations en.json (German)
* New translations en.yml (Catalan)
* New translations en.json (Estonian)
* New translations en.yml (Estonian)
* New translations simple_form.en.yml (Catalan)
* New translations doorkeeper.en.yml (Catalan)
* New translations simple_form.en.yml (German)
* New translations simple_form.en.yml (Estonian)
* New translations activerecord.en.yml (Serbian (Cyrillic))
* New translations en.yml (Faroese)
* New translations simple_form.en.yml (Faroese)
* New translations en.yml (Scots)
* New translations doorkeeper.en.yml (Serbian (Cyrillic))
* New translations en.yml (Belarusian)
* New translations devise.en.yml (German)
* New translations en.json (Estonian)
* New translations en.yml (Estonian)
* New translations simple_form.en.yml (Estonian)
* New translations doorkeeper.en.yml (Serbian (Cyrillic))
* New translations doorkeeper.en.yml (Estonian)
* New translations en.yml (Romanian)
* New translations en.yml (Estonian)
* New translations simple_form.en.yml (Estonian)
* New translations en.yml (Scots)
* New translations doorkeeper.en.yml (Estonian)
* New translations simple_form.en.yml (Bulgarian)
* New translations simple_form.en.yml (German)
* New translations activerecord.en.yml (Serbian (Cyrillic))
* New translations en.yml (Scots)
* New translations en.yml (Bulgarian)
* New translations simple_form.en.yml (Bulgarian)
* New translations en.yml (Asturian)
* New translations devise.en.yml (Asturian)
* New translations en.yml (Scots)
* New translations simple_form.en.yml (Hebrew)
* New translations en.yml (Belarusian)
* New translations en.yml (Belarusian)
* New translations en.yml (Belarusian)
* New translations en.yml (Scots)
* New translations en.yml (Belarusian)
* New translations en.json (Ukrainian)
* New translations doorkeeper.en.yml (Ukrainian)
* New translations en.yml (Scots)
* New translations doorkeeper.en.yml (Serbian (Cyrillic))
* New translations en.yml (Scots)
* New translations doorkeeper.en.yml (Serbian (Cyrillic))
* New translations en.yml (Czech)
* New translations en.json (Czech)
* New translations en.yml (Bulgarian)
* New translations en.json (Catalan)
* New translations en.yml (Catalan)
* New translations en.yml (Scots)
* New translations doorkeeper.en.yml (Serbian (Cyrillic))
* New translations en.json (Belarusian)
* New translations simple_form.en.yml (Belarusian)
* New translations en.yml (Ukrainian)
* New translations simple_form.en.yml (Dutch)
* New translations en.json (Ukrainian)
* New translations en.yml (Esperanto)
* New translations simple_form.en.yml (Ukrainian)
* New translations simple_form.en.yml (Esperanto)
* New translations en.yml (Faroese)
* New translations en.yml (Faroese)
* New translations en.yml (Scots)
* New translations en.yml (Scots)
* New translations en.yml (Belarusian)
* New translations en.yml (Belarusian)
* New translations en.json (Czech)
* New translations en.json (Malayalam)
* New translations en.yml (Scots)
* New translations en.json (Czech)
* New translations en.json (Hindi)
* New translations en.json (Malayalam)
* New translations activerecord.en.yml (Serbian (Latin))
* New translations en.yml (Scots)
* New translations doorkeeper.en.yml (Serbian (Latin))
* New translations en.json (Czech)
* New translations en.json (Serbian (Cyrillic))
* New translations simple_form.en.yml (Asturian)
* New translations en.yml (Scots)
* New translations en.json (Czech)
* New translations en.json (Frisian)
* New translations en.json (Serbian (Cyrillic))
* New translations en.yml (Scots)
* New translations en.yml (Belarusian)
* New translations devise.en.yml (Frisian)
* New translations en.json (Czech)
* New translations en.json (Serbian (Cyrillic))
* New translations en.json (Estonian)
* New translations en.yml (Estonian)
* New translations en.yml (Faroese)
* New translations en.yml (Belarusian)
* New translations en.yml (Ukrainian)
* New translations en.yml (Bulgarian)
* New translations en.json (Italian)
* New translations en.json (Ukrainian)
* New translations en.json (Spanish, Mexico)
* New translations en.json (Estonian)
* New translations en.yml (Estonian)
* New translations simple_form.en.yml (Bulgarian)
* New translations simple_form.en.yml (Estonian)
* New translations en.yml (Faroese)
* New translations en.yml (Belarusian)
* New translations simple_form.en.yml (Belarusian)
* New translations devise.en.yml (Ukrainian)
* New translations en.yml (Ukrainian)
* New translations en.json (Italian)
* New translations en.json (Ukrainian)
* New translations en.json (Spanish, Mexico)
* New translations simple_form.en.yml (Ukrainian)
* New translations activerecord.en.yml (Italian)
* New translations en.yml (Belarusian)
* New translations simple_form.en.yml (Belarusian)
* Run `yarn manage:translations`
* Run `bundle exec i18n-tasks normalize`
* Add `app/javascript/mastodon/locales/whitelist_be.json`
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2 years ago
Claire
655ad99a37
Fix not being able to follow more than one hashtag ( #21285 )
...
Fixes regression from #20860
2 years ago
David Leadbeater
72a60150de
Don't allow URLs that contain non-normalized paths to be verified ( #20999 )
...
* Don't allow URLs that contain non-normalized paths to be verified
This stops things like https://example.com/otheruser/../realuser where
"/otheruser" appears to be the verified URL, but the actual URL being
verified is "/realuser" due to the "/../".
Also fix a test to use 'https', so it is testing the right thing, now
that since #20304 https is required.
* missing do
2 years ago
Claire
3b81318a0f
Fix form-action CSP directive for external login ( #20962 )
2 years ago
Claire
aa37dc6aae
Fix OAuth flow being broken by recent CSP change ( #20958 )
2 years ago
Eugen Rochko
c67819829d
New Crowdin updates ( #20759 )
...
* New translations en.json (German)
* New translations en.json (Italian)
* New translations en.yml (Kurmanji (Kurdish))
* New translations simple_form.en.yml (German)
* New translations doorkeeper.en.yml (Kurmanji (Kurdish))
* New translations en.json (Dutch)
* New translations en.json (Esperanto)
* New translations en.json (Dutch)
* New translations en.yml (Portuguese, Brazilian)
* New translations en.json (Faroese)
* New translations en.json (Esperanto)
* New translations en.json (Irish)
* New translations simple_form.en.yml (Esperanto)
* New translations doorkeeper.en.yml (Esperanto)
* New translations en.json (Faroese)
* New translations simple_form.en.yml (Faroese)
* New translations en.json (Scots)
* New translations simple_form.en.yml (Esperanto)
* New translations doorkeeper.en.yml (Esperanto)
* New translations en.json (Scots)
* New translations en.yml (Korean)
* New translations simple_form.en.yml (Korean)
* New translations en.yml (Esperanto)
* New translations en.yml (Chinese Simplified)
* New translations en.yml (Chinese Simplified)
* New translations en.json (Chinese Simplified)
* New translations simple_form.en.yml (Chinese Simplified)
* New translations doorkeeper.en.yml (Chinese Simplified)
* New translations en.json (Lithuanian)
* New translations en.yml (Galician)
* New translations en.json (Icelandic)
* New translations en.yml (Galician)
* New translations en.json (Icelandic)
* New translations en.yml (Thai)
* New translations en.yml (Slovenian)
* New translations en.yml (Lithuanian)
* New translations en.yml (Macedonian)
* New translations en.yml (Dutch)
* New translations en.yml (Punjabi)
* New translations en.yml (Polish)
* New translations en.yml (Portuguese)
* New translations en.yml (Russian)
* New translations en.yml (Slovak)
* New translations en.yml (Serbian (Cyrillic))
* New translations en.yml (Georgian)
* New translations en.yml (Swedish)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Urdu (Pakistan))
* New translations en.yml (Vietnamese)
* New translations en.yml (Galician)
* New translations en.yml (Icelandic)
* New translations en.yml (Portuguese, Brazilian)
* New translations en.yml (Indonesian)
* New translations en.yml (Persian)
* New translations en.yml (Tamil)
* New translations en.yml (Korean)
* New translations en.yml (Japanese)
* New translations en.yml (German)
* New translations en.yml (Arabic)
* New translations en.yml (Czech)
* New translations en.yml (Chinese Simplified)
* New translations en.yml (Ido)
* New translations en.yml (Spanish)
* New translations en.yml (Turkish)
* New translations en.yml (Albanian)
* New translations en.yml (Ukrainian)
* New translations en.yml (Romanian)
* New translations en.yml (French)
* New translations en.yml (Afrikaans)
* New translations en.yml (Bulgarian)
* New translations en.yml (Italian)
* New translations en.yml (Catalan)
* New translations en.yml (Danish)
* New translations en.yml (Frisian)
* New translations en.yml (Basque)
* New translations en.yml (Finnish)
* New translations en.yml (Hebrew)
* New translations en.yml (Hungarian)
* New translations en.yml (Armenian)
* New translations en.yml (Spanish, Argentina)
* New translations en.yml (Spanish, Mexico)
* New translations en.yml (Silesian)
* New translations en.yml (Serbian (Latin))
* New translations en.yml (Kurmanji (Kurdish))
* New translations en.yml (Sorani (Kurdish))
* New translations en.yml (Corsican)
* New translations en.yml (Sardinian)
* New translations en.yml (Sanskrit)
* New translations en.yml (Taigi)
* New translations en.yml (Standard Moroccan Tamazight)
* New translations en.yml (Asturian)
* New translations en.yml (Burmese)
* New translations en.yml (Igbo)
* New translations en.yml (French, Quebec)
* New translations en.json (Faroese)
* New translations en.yml (Faroese)
* New translations simple_form.en.yml (Faroese)
* New translations en.yml (Occitan)
* New translations en.yml (Scottish Gaelic)
* New translations en.yml (Bengali)
* New translations en.yml (Telugu)
* 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 (English, United Kingdom)
* New translations en.yml (Kannada)
* New translations en.yml (Welsh)
* New translations en.yml (Uyghur)
* New translations en.yml (Chinese Traditional, Hong Kong)
* New translations en.yml (Tatar)
* New translations en.yml (Malayalam)
* New translations en.yml (Sinhala)
* New translations en.yml (Cornish)
* New translations en.yml (Thai)
* New translations en.yml (Portuguese)
* New translations en.yml (Georgian)
* New translations en.yml (Korean)
* New translations en.yml (Lithuanian)
* New translations en.yml (Dutch)
* New translations simple_form.en.yml (Dutch)
* New translations en.yml (Norwegian)
* New translations en.yml (Polish)
* New translations en.yml (Russian)
* New translations en.yml (Italian)
* New translations en.yml (Slovak)
* New translations en.yml (Slovenian)
* New translations en.yml (Serbian (Cyrillic))
* New translations en.yml (Swedish)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Vietnamese)
* New translations en.yml (Galician)
* New translations en.yml (Icelandic)
* New translations en.yml (Portuguese, Brazilian)
* New translations en.yml (Japanese)
* New translations en.yml (Armenian)
* New translations en.json (Hebrew)
* New translations en.yml (French)
* New translations en.yml (German)
* New translations en.yml (Czech)
* New translations en.yml (Chinese Simplified)
* New translations en.yml (Spanish)
* New translations en.yml (Turkish)
* New translations simple_form.en.yml (Czech)
* New translations en.yml (Albanian)
* New translations en.yml (Ukrainian)
* New translations en.yml (Afrikaans)
* New translations en.yml (Hungarian)
* New translations en.yml (Arabic)
* New translations en.yml (Bulgarian)
* New translations en.yml (Catalan)
* New translations en.yml (Danish)
* New translations en.yml (Greek)
* New translations en.yml (Basque)
* New translations en.yml (Finnish)
* New translations en.yml (Irish)
* New translations en.yml (Hebrew)
* New translations en.yml (Indonesian)
* New translations en.yml (Ido)
* New translations en.yml (Persian)
* New translations simple_form.en.yml (Polish)
* New translations en.yml (Breton)
* New translations en.yml (Sinhala)
* New translations en.yml (Scottish Gaelic)
* New translations simple_form.en.yml (Sinhala)
* New translations simple_form.en.yml (Vietnamese)
* New translations simple_form.en.yml (Romanian)
* New translations simple_form.en.yml (French)
* New translations simple_form.en.yml (Spanish)
* New translations simple_form.en.yml (Afrikaans)
* New translations simple_form.en.yml (Arabic)
* New translations simple_form.en.yml (Bulgarian)
* New translations en.yml (Chinese Traditional, Hong Kong)
* New translations en.yml (Spanish, Argentina)
* New translations en.yml (Spanish, Mexico)
* New translations en.yml (Norwegian Nynorsk)
* New translations en.yml (Kazakh)
* New translations en.yml (Estonian)
* New translations en.yml (Latvian)
* New translations simple_form.en.yml (Catalan)
* New translations en.yml (Esperanto)
* New translations en.yml (Welsh)
* New translations en.yml (Malay)
* New translations en.yml (Corsican)
* New translations en.yml (Occitan)
* New translations en.yml (Sardinian)
* New translations en.yml (Serbian (Latin))
* New translations en.yml (Kurmanji (Kurdish))
* New translations en.yml (Kabyle)
* New translations en.yml (Sorani (Kurdish))
* New translations simple_form.en.yml (Bengali)
* New translations simple_form.en.yml (Galician)
* New translations simple_form.en.yml (Icelandic)
* New translations simple_form.en.yml (Portuguese, Brazilian)
* New translations simple_form.en.yml (Indonesian)
* New translations simple_form.en.yml (Persian)
* New translations simple_form.en.yml (Tamil)
* New translations simple_form.en.yml (Spanish, Argentina)
* New translations simple_form.en.yml (Spanish, Mexico)
* New translations simple_form.en.yml (Ukrainian)
* New translations simple_form.en.yml (Croatian)
* New translations simple_form.en.yml (Norwegian Nynorsk)
* New translations simple_form.en.yml (Kazakh)
* New translations simple_form.en.yml (Estonian)
* New translations simple_form.en.yml (Latvian)
* New translations simple_form.en.yml (English, United Kingdom)
* New translations simple_form.en.yml (Chinese Traditional)
* New translations simple_form.en.yml (Turkish)
* New translations simple_form.en.yml (Georgian)
* New translations simple_form.en.yml (Frisian)
* New translations simple_form.en.yml (Basque)
* New translations simple_form.en.yml (Finnish)
* New translations simple_form.en.yml (Hebrew)
* New translations simple_form.en.yml (Hungarian)
* New translations simple_form.en.yml (Armenian)
* New translations simple_form.en.yml (Italian)
* New translations simple_form.en.yml (Japanese)
* New translations simple_form.en.yml (Swedish)
* New translations simple_form.en.yml (Portuguese)
* New translations simple_form.en.yml (Slovak)
* New translations simple_form.en.yml (Slovenian)
* New translations simple_form.en.yml (Albanian)
* New translations simple_form.en.yml (Serbian (Cyrillic))
* New translations en.yml (French, Quebec)
* New translations en.json (Faroese)
* New translations en.yml (Faroese)
* New translations simple_form.en.yml (Scottish Gaelic)
* New translations simple_form.en.yml (Malayalam)
* New translations simple_form.en.yml (Tatar)
* New translations simple_form.en.yml (Chinese Traditional, Hong Kong)
* New translations simple_form.en.yml (Standard Moroccan Tamazight)
* New translations simple_form.en.yml (Ido)
* New translations simple_form.en.yml (Sardinian)
* New translations simple_form.en.yml (Corsican)
* New translations simple_form.en.yml (Sorani (Kurdish))
* New translations simple_form.en.yml (Serbian (Latin))
* New translations simple_form.en.yml (Occitan)
* New translations simple_form.en.yml (Asturian)
* New translations en.yml (Chinese Simplified)
* New translations en.yml (Hebrew)
* New translations en.yml (Korean)
* New translations en.yml (Dutch)
* New translations en.yml (Slovenian)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Kurmanji (Kurdish))
* normalize
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2 years ago
Claire
41be06e4ec
Remove use of DOMParser in front-end emoji rewriting code ( #20758 )
...
* Add jstest for node ordering in emojify
* Remove use of DOMParser in front-end emoji rewriting code
2 years ago
Rose
b54c639482
Fix style for hashes ( #20518 )
...
* Fix style for hashes
Make the style for hashes consistent.
* New style
More consistency
2 years ago
lenore gilbert
498e9478c7
Support for import/export of instance-level domain blocks/allows for 4.x w/ additional fixes ( #20597 )
...
* Allow import/export of instance-level domain blocks/allows (#1754 )
* Allow import/export of instance-level domain blocks/allows.
Fixes #15095
* Pacify circleci
* Address simple code review feedback
* Add headers to exported CSV
* Extract common import/export functionality to
AdminExportControllerConcern
* Add additional fields to instance-blocked domain export
* Address review feedback
* Split instance domain block/allow import/export into separate pages/controllers
* Address code review feedback
* Pacify DeepSource
* Work around Paperclip::HasAttachmentFile for Rails 6
* Fix deprecated API warning in export tests
* Remove after_commit workaround
(cherry picked from commit b8319d0578
)
* Add confirmation page when importing blocked domains (#1773 )
* Move glitch-soc-specific strings to glitch-soc-specific locale files
* Add confirmation page when importing blocked domains
(cherry picked from commit 73a2e3326f
)
* Fix authorization check in domain blocks controller
(cherry picked from commit 655bac2c3a
)
* Fix error strings for domain blocks and email-domain blocks
Corrected issue with non-error message used for Mastodon:NotPermittedError in Domain Blocks
Corrected issue Domain Blocks using the Email Domain Blocks message on ActionContoller::ParameterMissing
Corrected issue with Email Domain Blocks using the not_permitted string from "custom emojii's"
* Ran i18n-tasks normalize to address test failure
* Removed unused admin.export_domain_blocks.not_permitted string
Removing unused string as indicated by Check i18n
* Fix tests
(cherry picked from commit 1ba41b34c1
)
* Fix domain block export not exporting blocks with only media rejection
(cherry picked from commit 1686374b2f
)
* Fix various issues with domain block import
- stop using Paperclip for processing domain allow/block imports
- stop leaving temporary files
- better error handling
- assume CSV files are UTF-8-encoded
(cherry picked from commit cad824d8f501b95377e4f0a957e5a00d517a1902)
Co-authored-by: Levi Bard <taktaktaktaktaktaktaktaktaktak@gmail.com>
Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2 years ago
Joshua Wood
e0940d04f1
Handle links with no href in VerifyLinkService ( #20741 )
...
Before this change, the following error would cause VerifyAccountLinksWorker to fail:
NoMethodError: undefined method `downcase' for nil:NilClass
[PROJECT_ROOT]/app/services/verify_link_service.rb:31 :in `block in link_back_present?`
2 years ago
Claire
4abfb043f2
Fix invalid/empty RSS feed link on account pages ( #20772 )
...
Fixes #20770
2 years ago
trwnh
699bec589f
Make tag following idempotent ( #20860 )
2 years ago
trwnh
0f402ff0eb
Fix getting a single EmailDomainBlock ( #20846 )
2 years ago
Claire
c7accdb6ac
Change automatic post deletion configuration to be accessible to redirected users ( #20774 )
...
Fixes #20550
2 years ago
trwnh
9b83c67aa7
Fix pagination of followed tags ( #20861 )
...
* Fix missing pagination headers on followed tags
* Fix typo
2 years ago
Levi Bard
8f32b59570
Make the button that expands the publish form differentiable from the button that publishes a post ( #20864 )
2 years ago
Claire
3e40b7ef8d
Change batch account suspension to create a strike ( #20897 )
2 years ago
Chris Johnson
5573d1db4e
Add maskable icon support for Android ( #20904 )
...
* Add maskable icon support for Android
* Update manifest_serializer.rb
* Fix linting issue
2 years ago
nyura123dev
c18c565cb3
Fix safari explore disappearing tabs ( #20917 )
...
* fix disappearing Explore tabs on Safari
* fix lint
Co-authored-by: nyura <nyura@hidden.com>
2 years ago
Daniel Axtens
e61dc520ae
Add 'private' to Cache-Control, match Rails expectations ( #20608 )
...
Several controlers set quite intricate Cache-Control headers in order to
hopefully not be cached by any intermediate proxies or local caches. Unfortunately,
these headers are processed by ActionDispatch::HTTP::Cache in a way that squashes
and discards any values set alongside no-store other than private:
8015c2c2cf/actionpack/lib/action_dispatch/http/cache.rb (L207-L209)
We want to preserve no-store on these responses, but we might as well remove
parts that are going to be dropped anyway. As many of the endpoints in these
controllers are private to a particular user, we should also add "private",
which will be preserved alongside no-store.
2 years ago
Eugen Rochko
a021e53791
New Crowdin updates ( #20580 )
...
* New translations en.json (Catalan)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Thai)
* New translations en.yml (Spanish)
* New translations en.yml (Ukrainian)
* New translations en.json (Catalan)
* New translations en.yml (Catalan)
* New translations en.yml (Hungarian)
* New translations en.json (Slovak)
* New translations en.yml (Portuguese, Brazilian)
* New translations en.yml (Asturian)
* New translations simple_form.en.yml (Catalan)
* New translations en.yml (Turkish)
* New translations en.yml (Portuguese, Brazilian)
* New translations en.yml (Thai)
* New translations en.yml (German)
* New translations en.json (German)
* New translations simple_form.en.yml (Thai)
* New translations en.json (Irish)
* New translations en.yml (Norwegian)
* New translations en.yml (German)
* New translations en.json (Romanian)
* New translations en.yml (Danish)
* New translations en.json (Irish)
* New translations en.yml (Irish)
* New translations en.yml (Norwegian)
* New translations en.yml (Russian)
* New translations en.yml (Norwegian Nynorsk)
* New translations simple_form.en.yml (Irish)
* New translations doorkeeper.en.yml (Irish)
* New translations en.yml (Danish)
* New translations en.json (Catalan)
* New translations en.yml (Norwegian)
* New translations en.yml (Scottish Gaelic)
* New translations simple_form.en.yml (Norwegian)
* New translations en.json (Catalan)
* New translations en.json (Portuguese, Brazilian)
* New translations simple_form.en.yml (Portuguese, Brazilian)
* New translations en.yml (Portuguese, Brazilian)
* New translations simple_form.en.yml (Portuguese, Brazilian)
* New translations en.yml (Latvian)
* New translations en.json (Irish)
* New translations en.json (Swedish)
* New translations en.yml (Galician)
* New translations en.json (Latvian)
* New translations en.yml (Latvian)
* New translations en.json (Kabyle)
* New translations en.yml (Welsh)
* New translations en.json (Breton)
* New translations en.json (Kabyle)
* New translations en.yml (Kabyle)
* New translations simple_form.en.yml (Kabyle)
* New translations en.json (Malay)
* New translations simple_form.en.yml (Spanish)
* New translations simple_form.en.yml (Malay)
* New translations activerecord.en.yml (Malay)
* New translations devise.en.yml (Malay)
* New translations doorkeeper.en.yml (Malay)
* New translations en.json (Malay)
* New translations en.yml (Malay)
* New translations en.json (Welsh)
* New translations en.yml (Welsh)
* New translations simple_form.en.yml (Malay)
* New translations simple_form.en.yml (Welsh)
* New translations doorkeeper.en.yml (Welsh)
* New translations activerecord.en.yml (Malay)
* New translations activerecord.en.yml (Welsh)
* New translations devise.en.yml (Welsh)
* New translations doorkeeper.en.yml (Malay)
* New translations en.yml (Dutch)
* New translations en.json (Malay)
* New translations en.yml (Malay)
* New translations en.json (English, United Kingdom)
* New translations en.yml (Welsh)
* New translations simple_form.en.yml (Malay)
* New translations devise.en.yml (Welsh)
* New translations en.yml (German)
* New translations en.yml (Vietnamese)
* New translations en.yml (Malay)
* New translations en.json (Welsh)
* New translations en.yml (Welsh)
* New translations simple_form.en.yml (German)
* New translations simple_form.en.yml (Malay)
* New translations simple_form.en.yml (Welsh)
* New translations doorkeeper.en.yml (Welsh)
* New translations devise.en.yml (Welsh)
* New translations devise.en.yml (Malay)
* New translations en.json (Vietnamese)
* New translations en.yml (Malay)
* New translations en.json (Welsh)
* New translations simple_form.en.yml (German)
* New translations en.yml (Thai)
* New translations en.yml (German)
* New translations en.json (German)
* New translations en.json (Catalan)
* New translations en.json (Welsh)
* New translations simple_form.en.yml (German)
* New translations simple_form.en.yml (Malay)
* New translations devise.en.yml (Thai)
* New translations en.yml (Thai)
* New translations en.json (Thai)
* New translations en.yml (German)
* New translations en.json (German)
* New translations en.json (Catalan)
* New translations en.json (Norwegian)
* New translations en.json (Welsh)
* New translations simple_form.en.yml (German)
* New translations simple_form.en.yml (Norwegian)
* New translations devise.en.yml (Thai)
* New translations en.yml (German)
* New translations en.json (German)
* New translations en.json (Korean)
* New translations en.yml (Korean)
* New translations en.yml (Norwegian)
* New translations simple_form.en.yml (German)
* New translations simple_form.en.yml (Korean)
* New translations en.json (Esperanto)
* New translations en.json (Korean)
* New translations en.yml (Korean)
* New translations en.yml (Norwegian)
* New translations en.json (Welsh)
* New translations simple_form.en.yml (Korean)
* New translations simple_form.en.yml (Norwegian)
* New translations en.json (Korean)
* New translations en.yml (Korean)
* New translations doorkeeper.en.yml (Korean)
* New translations devise.en.yml (Korean)
* New translations en.json (Asturian)
* New translations en.json (Asturian)
* Run `yarn manage:translations`
* Run `bundle exec i18n-tasks normalize`
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2 years ago
Eugen Rochko
496fb46016
Fix wrong color on mentions hidden behind content warning in web UI ( #20724 )
2 years ago
Claire
97ac51901d
Fix nodes order being sometimes mangled when rewriting emoji ( #20677 )
...
* Fix front-end emoji tests
* Fix nodes order being sometimes mangled when rewriting emoji
2 years ago
Claire
c9b53436d7
Fix emoji substitution not applying only to text nodes in backend code ( #20641 )
...
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2 years ago
Claire
bd267f6353
Fix emoji substitution not applying only to text nodes in Web UI ( #20640 )
...
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2 years ago
Claire
088c365559
Fix media metadata being only editable once ( #20665 )
2 years ago
trwnh
72d3607229
Move V2 Filter methods under /api/v2 prefix ( #20622 )
...
* Move V2 Filter methods under /api/v2 prefix
* move over the tests too
2 years ago
Eugen Rochko
2b3b063852
Fix error when invalid domain name is submitted ( #19474 )
...
Fix #19175
2 years ago
Eugen Rochko
0cfead6483
Fix style of username in navigation bar above compose form in web UI ( #20628 )
...
Regression from #20540
2 years ago
Eugen Rochko
8b98bebc17
Fix error when passing unknown filter param in REST API ( #20626 )
...
Fix #19156
2 years ago
Eugen Rochko
2018fe879c
Fix image type not being set after conversion for convertible image types ( #20624 )
2 years ago
Eugen Rochko
3cc5ed3bae
Fix `role_ids` not accepting arrays in admin API ( #20625 )
...
Fix #19157
2 years ago
Eugen Rochko
12b819c78c
Fix rules with same priority being sorted non-deterministically ( #20623 )
2 years ago
Eugen Rochko
ca6df7a68c
Fix dropdown menu on profiles not being accessible on narrow screens in web UI ( #20620 )
2 years ago
Hampton Lintorn-Catlin
277e2590e2
Support UTF-8 Characters in Domains During CSV Import ( #20592 )
...
* Support UTF-8 Characters in Domains During Import
* Update Changelong
2 years ago
Eugen Rochko
72de8402bd
Fix wrong cut-off point for "Read more" in web UI ( #20599 )
2 years ago
Eugen Rochko
c7924acf16
Fix icons having an image role ( #20600 )
2 years ago
trwnh
1b9ad6fb4b
Change in-app links to keep you in-app ( #20540 )
...
* Change in-app links to keep you in-app
* refactor Permalink into Link
* rewrite link hrefs in status content
* please linter
* please linter again
2 years ago
Samuel Kaiser
cb99d425b3
Stick batch table toolbar to the top ( #20442 )
...
Fixes #20441
2 years ago
Claire
4dab1ab637
Fix announcement dates not being validated client-side ( #20577 )
2 years ago
Eugen Rochko
eaf5acca01
New Crowdin updates ( #20476 )
...
* New translations en.json (Galician)
* New translations en.yml (Galician)
* New translations en.json (Japanese)
* New translations en.yml (Czech)
* New translations en.json (Esperanto)
* New translations en.yml (Norwegian)
* New translations en.json (Spanish, Argentina)
* New translations en.json (Latvian)
* New translations en.json (Esperanto)
* New translations en.yml (Esperanto)
* New translations simple_form.en.yml (Esperanto)
* New translations activerecord.en.yml (Russian)
* New translations activerecord.en.yml (Portuguese, Brazilian)
* New translations en.yml (Thai)
* New translations en.json (Thai)
* New translations en.yml (Norwegian)
* New translations en.json (Welsh)
* New translations en.yml (Welsh)
* New translations en.json (Malayalam)
* New translations simple_form.en.yml (Thai)
* New translations simple_form.en.yml (Welsh)
* New translations doorkeeper.en.yml (Welsh)
* New translations activerecord.en.yml (Welsh)
* New translations devise.en.yml (Thai)
* New translations devise.en.yml (Welsh)
* New translations en.yml (Thai)
* New translations en.json (Thai)
* New translations en.yml (German)
* New translations en.json (German)
* New translations en.yml (Irish)
* New translations simple_form.en.yml (German)
* New translations simple_form.en.yml (Thai)
* New translations en.yml (Thai)
* New translations en.json (Esperanto)
* New translations en.yml (Irish)
* New translations en.json (Norwegian)
* New translations en.json (Polish)
* New translations en.yml (Polish)
* New translations en.json (Slovak)
* New translations en.yml (Slovak)
* New translations en.json (Turkish)
* New translations en.yml (Portuguese, Brazilian)
* New translations simple_form.en.yml (Thai)
* New translations en.yml (Chinese Simplified)
* New translations en.yml (Polish)
* New translations en.json (Slovak)
* New translations en.yml (Slovak)
* New translations simple_form.en.yml (Slovak)
* New translations en.json (Thai)
* New translations simple_form.en.yml (Portuguese, Brazilian)
* New translations doorkeeper.en.yml (Esperanto)
* New translations en.json (Norwegian)
* New translations en.json (Finnish)
* New translations en.json (Norwegian)
* New translations simple_form.en.yml (Norwegian)
* New translations en.yml (Thai)
* New translations en.json (Norwegian Nynorsk)
* New translations en.yml (Norwegian Nynorsk)
* New translations simple_form.en.yml (Arabic)
* New translations en.json (German)
* New translations en.json (Dutch)
* New translations en.yml (Greek)
* New translations en.yml (German)
* New translations en.yml (Hungarian)
* New translations en.yml (Hebrew)
* New translations en.yml (Finnish)
* New translations en.yml (Basque)
* New translations en.yml (Frisian)
* New translations en.yml (Danish)
* New translations en.yml (Catalan)
* New translations en.yml (Bulgarian)
* New translations en.yml (Arabic)
* New translations en.yml (Afrikaans)
* New translations en.yml (French)
* New translations en.yml (Romanian)
* New translations en.yml (Spanish)
* New translations en.yml (Czech)
* New translations en.yml (Armenian)
* New translations en.yml (Urdu (Pakistan))
* New translations en.yml (Vietnamese)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Swedish)
* New translations en.yml (Serbian (Cyrillic))
* New translations en.yml (Slovenian)
* New translations en.yml (Thai)
* New translations en.yml (Galician)
* New translations en.yml (Russian)
* New translations en.yml (Icelandic)
* New translations en.yml (Portuguese, Brazilian)
* New translations en.yml (Indonesian)
* New translations en.yml (Persian)
* New translations en.yml (Tamil)
* New translations en.yml (Slovak)
* New translations en.yml (Japanese)
* New translations en.yml (Portuguese)
* New translations en.yml (Polish)
* New translations en.yml (Punjabi)
* New translations en.yml (Norwegian)
* New translations en.yml (Dutch)
* New translations en.yml (Macedonian)
* New translations en.yml (Lithuanian)
* New translations en.yml (Korean)
* New translations en.yml (Georgian)
* New translations en.yml (Italian)
* New translations en.yml (Ukrainian)
* New translations en.yml (Albanian)
* New translations en.yml (Turkish)
* New translations en.yml (Ido)
* New translations en.yml (Chinese Simplified)
* New translations en.yml (Spanish, Argentina)
* New translations en.yml (Spanish, Mexico)
* New translations en.yml (Sorani (Kurdish))
* New translations en.yml (Kannada)
* New translations en.yml (Scottish Gaelic)
* New translations en.yml (Asturian)
* New translations en.yml (Occitan)
* New translations en.yml (Serbian (Latin))
* New translations en.yml (Kurmanji (Kurdish))
* New translations en.yml (Corsican)
* New translations en.yml (Sinhala)
* New translations en.yml (Sardinian)
* New translations en.yml (Sanskrit)
* New translations en.yml (Kabyle)
* New translations en.yml (Taigi)
* New translations en.yml (Silesian)
* New translations en.yml (Standard Moroccan Tamazight)
* New translations en.yml (Burmese)
* New translations en.yml (Cornish)
* New translations en.yml (Breton)
* New translations en.yml (Bengali)
* New translations en.yml (Hindi)
* New translations en.yml (Marathi)
* New translations en.yml (Croatian)
* New translations en.yml (Norwegian Nynorsk)
* New translations en.yml (Kazakh)
* New translations en.yml (Estonian)
* New translations en.yml (Latvian)
* New translations en.yml (Malay)
* New translations en.yml (Malayalam)
* New translations en.yml (Telugu)
* New translations en.yml (English, United Kingdom)
* New translations en.yml (Welsh)
* New translations en.yml (Esperanto)
* New translations en.yml (Uyghur)
* New translations en.yml (Chinese Traditional, Hong Kong)
* New translations en.yml (Tatar)
* New translations en.yml (Igbo)
* New translations en.yml (Chinese Simplified)
* New translations en.yml (Afrikaans)
* New translations en.yml (Korean)
* New translations en.yml (Chinese Traditional)
* New translations en.yml (Thai)
* New translations en.yml (German)
* New translations en.yml (Czech)
* New translations en.yml (Catalan)
* New translations en.yml (Greek)
* New translations en.yml (Italian)
* New translations en.yml (Slovenian)
* New translations en.yml (Swedish)
* New translations simple_form.en.yml (Thai)
* New translations en.yml (Thai)
* New translations en.json (Thai)
* New translations en.yml (Basque)
* New translations en.yml (Norwegian)
* New translations en.yml (Portuguese)
* New translations en.yml (Icelandic)
* New translations en.json (Spanish, Argentina)
* New translations en.yml (Spanish, Argentina)
* New translations en.json (Albanian)
* New translations en.yml (Albanian)
* New translations en.yml (French)
* New translations en.yml (Hebrew)
* New translations en.yml (Italian)
* New translations en.yml (Japanese)
* New translations en.yml (Norwegian)
* New translations en.yml (Polish)
* New translations en.yml (Norwegian Nynorsk)
* New translations en.yml (Esperanto)
* New translations en.yml (German)
* New translations en.json (German)
* New translations en.yml (Hebrew)
* New translations en.yml (Norwegian)
* New translations en.yml (German)
* New translations en.json (Spanish)
* New translations en.yml (Finnish)
* New translations en.json (Norwegian)
* New translations en.yml (Latvian)
* New translations en.yml (Esperanto)
* New translations en.json (German)
* New translations en.json (Esperanto)
* New translations en.yml (Dutch)
* New translations en.yml (Norwegian)
* New translations en.yml (Esperanto)
* New translations en.json (Catalan)
* New translations en.yml (Catalan)
* New translations doorkeeper.en.yml (Catalan)
* Run `yarn manage:translations`
* Run `bundle exec i18n-tasks normalize`
Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2 years ago
Claire
29cddeffaf
Fix saving server registration settings redirecting to branding settings ( #20505 )
2 years ago
Eugen Rochko
bf3b0db357
Fix missing "not recommended" label on "Allow trends without review" ( #20480 )
2 years ago