Merge pull request #2309 from ClearlyClaire/glitch-soc/merge-upstream Merge upstream changes
322 files changed, 8744 insertions(+), 14206 deletions(-) A .github/workflows/build-container-image.yml D .github/workflows/build-image.yml M .github/workflows/build-nightly.yml A .github/workflows/build-push-pr.yml A .github/workflows/build-releases.yml A .github/workflows/crowdin-download.yml A .github/workflows/crowdin-upload.yml A .github/workflows/test-image-build.yml M .haml-lint_todo.yml M Gemfile.lock M app/javascript/mastodon/locales/af.json M app/javascript/mastodon/locales/an.json M app/javascript/mastodon/locales/ar.json M app/javascript/mastodon/locales/ast.json M app/javascript/mastodon/locales/be.json M app/javascript/mastodon/locales/bg.json M app/javascript/mastodon/locales/bn.json M app/javascript/mastodon/locales/br.json M app/javascript/mastodon/locales/bs.json M app/javascript/mastodon/locales/ca.json M app/javascript/mastodon/locales/ckb.json M app/javascript/mastodon/locales/co.json M app/javascript/mastodon/locales/cs.json M app/javascript/mastodon/locales/cy.json M app/javascript/mastodon/locales/da.json M app/javascript/mastodon/locales/de.json M app/javascript/mastodon/locales/el.json M app/javascript/mastodon/locales/en-GB.json M app/javascript/mastodon/locales/eo.json M app/javascript/mastodon/locales/es-AR.json M app/javascript/mastodon/locales/es-MX.json M app/javascript/mastodon/locales/es.json M app/javascript/mastodon/locales/et.json M app/javascript/mastodon/locales/eu.json M app/javascript/mastodon/locales/fa.json M app/javascript/mastodon/locales/fi.json M app/javascript/mastodon/locales/fo.json M app/javascript/mastodon/locales/fr-QC.json M app/javascript/mastodon/locales/fr.json M app/javascript/mastodon/locales/fy.json M app/javascript/mastodon/locales/ga.json M app/javascript/mastodon/locales/gd.json M app/javascript/mastodon/locales/gl.json M app/javascript/mastodon/locales/he.json M app/javascript/mastodon/locales/hi.json M app/javascript/mastodon/locales/hr.json M app/javascript/mastodon/locales/hu.json M app/javascript/mastodon/locales/hy.json M app/javascript/mastodon/locales/id.json M app/javascript/mastodon/locales/ig.json M app/javascript/mastodon/locales/io.json M app/javascript/mastodon/locales/is.json M app/javascript/mastodon/locales/it.json M app/javascript/mastodon/locales/ja.json M app/javascript/mastodon/locales/ka.json M app/javascript/mastodon/locales/kab.json M app/javascript/mastodon/locales/kk.json M app/javascript/mastodon/locales/kn.json M app/javascript/mastodon/locales/ko.json M app/javascript/mastodon/locales/ku.json M app/javascript/mastodon/locales/kw.json M app/javascript/mastodon/locales/la.json M app/javascript/mastodon/locales/lt.json M app/javascript/mastodon/locales/lv.json M app/javascript/mastodon/locales/mk.json M app/javascript/mastodon/locales/ml.json M app/javascript/mastodon/locales/mr.json M app/javascript/mastodon/locales/ms.json M app/javascript/mastodon/locales/my.json M app/javascript/mastodon/locales/nl.json M app/javascript/mastodon/locales/nn.json M app/javascript/mastodon/locales/no.json M app/javascript/mastodon/locales/oc.json M app/javascript/mastodon/locales/pa.json M app/javascript/mastodon/locales/pl.json M app/javascript/mastodon/locales/pt-BR.json M app/javascript/mastodon/locales/pt-PT.json M app/javascript/mastodon/locales/ro.json M app/javascript/mastodon/locales/ru.json M app/javascript/mastodon/locales/sa.json M app/javascript/mastodon/locales/sc.json M app/javascript/mastodon/locales/sco.json M app/javascript/mastodon/locales/si.json M app/javascript/mastodon/locales/sk.json M app/javascript/mastodon/locales/sl.json M app/javascript/mastodon/locales/sq.json M app/javascript/mastodon/locales/sr-Latn.json M app/javascript/mastodon/locales/sr.json M app/javascript/mastodon/locales/sv.json M app/javascript/mastodon/locales/szl.json M app/javascript/mastodon/locales/ta.json M app/javascript/mastodon/locales/tai.json M app/javascript/mastodon/locales/te.json M app/javascript/mastodon/locales/th.json M app/javascript/mastodon/locales/tr.json M app/javascript/mastodon/locales/tt.json M app/javascript/mastodon/locales/ug.json M app/javascript/mastodon/locales/uk.json M app/javascript/mastodon/locales/ur.json M app/javascript/mastodon/locales/uz.json M app/javascript/mastodon/locales/vi.json M app/javascript/mastodon/locales/zgh.json M app/javascript/mastodon/locales/zh-CN.json M app/javascript/mastodon/locales/zh-HK.json M app/javascript/mastodon/locales/zh-TW.json M app/lib/request.rb M app/views/admin/accounts/index.html.haml M app/views/admin/reports/actions/preview.html.haml M app/views/admin/reports/show.html.haml M app/views/admin/settings/shared/_links.html.haml A app/views/auth/registrations/_session.html.haml M app/views/auth/registrations/_sessions.html.haml M app/views/auth/registrations/edit.html.haml M app/views/settings/login_activities/_login_activity.html.haml M app/views/settings/preferences/appearance/show.html.haml M app/views/statuses/_poll.html.haml M config/i18n-tasks.yml M config/locales/activerecord.ar.yml M config/locales/activerecord.be.yml M config/locales/activerecord.bg.yml M config/locales/activerecord.ca.yml M config/locales/activerecord.cy.yml M config/locales/activerecord.da.yml M config/locales/activerecord.de.yml M config/locales/activerecord.en-GB.yml M config/locales/activerecord.eo.yml M config/locales/activerecord.es-AR.yml M config/locales/activerecord.es-MX.yml M config/locales/activerecord.es.yml M config/locales/activerecord.et.yml M config/locales/activerecord.fa.yml M config/locales/activerecord.fi.yml M config/locales/activerecord.fo.yml M config/locales/activerecord.fr-QC.yml M config/locales/activerecord.fr.yml M config/locales/activerecord.fy.yml M config/locales/activerecord.gd.yml M config/locales/activerecord.gl.yml M config/locales/activerecord.he.yml M config/locales/activerecord.hu.yml M config/locales/activerecord.is.yml M config/locales/activerecord.it.yml M config/locales/activerecord.ja.yml M config/locales/activerecord.ko.yml M config/locales/activerecord.my.yml M config/locales/activerecord.nl.yml M config/locales/activerecord.pl.yml M config/locales/activerecord.pt-BR.yml M config/locales/activerecord.pt-PT.yml M config/locales/activerecord.sa.yml M config/locales/activerecord.sl.yml M config/locales/activerecord.sq.yml M config/locales/activerecord.sr-Latn.yml M config/locales/activerecord.sr.yml M config/locales/activerecord.th.yml M config/locales/activerecord.tr.yml M config/locales/activerecord.tt.yml M config/locales/activerecord.uk.yml M config/locales/activerecord.vi.yml M config/locales/activerecord.zh-CN.yml M config/locales/activerecord.zh-TW.yml M config/locales/af.yml M config/locales/ar.yml M config/locales/ast.yml M config/locales/be.yml M config/locales/bg.yml M config/locales/bn.yml M config/locales/br.yml M config/locales/bs.yml M config/locales/ca.yml M config/locales/cs.yml M config/locales/cy.yml M config/locales/da.yml M config/locales/de.yml M config/locales/devise.ast.yml M config/locales/devise.bg.yml M config/locales/devise.ca.yml M config/locales/devise.de.yml M config/locales/devise.es-AR.yml M config/locales/devise.es.yml M config/locales/devise.fi.yml M config/locales/devise.fy.yml M config/locales/devise.gl.yml M config/locales/devise.hu.yml M config/locales/devise.ko.yml M config/locales/devise.th.yml M config/locales/devise.tt.yml M config/locales/devise.uk.yml M config/locales/devise.zh-CN.yml M config/locales/devise.zh-TW.yml M config/locales/doorkeeper.bg.yml M config/locales/doorkeeper.de.yml M config/locales/doorkeeper.eo.yml M config/locales/doorkeeper.fa.yml M config/locales/doorkeeper.fy.yml M config/locales/doorkeeper.ko.yml M config/locales/doorkeeper.tt.yml M config/locales/doorkeeper.zh-CN.yml M config/locales/doorkeeper.zh-TW.yml M config/locales/el.yml M config/locales/en-GB.yml M config/locales/eo.yml M config/locales/es-AR.yml M config/locales/es-MX.yml M config/locales/es.yml M config/locales/et.yml M config/locales/eu.yml M config/locales/fa.yml M config/locales/fi.yml M config/locales/fo.yml M config/locales/fr-QC.yml M config/locales/fr.yml M config/locales/fy.yml M config/locales/ga.yml M config/locales/gd.yml M config/locales/gl.yml M config/locales/he.yml M config/locales/hi.yml M config/locales/hr.yml M config/locales/hu.yml M config/locales/hy.yml M config/locales/ig.yml M config/locales/is.yml M config/locales/it.yml M config/locales/ja.yml M config/locales/ka.yml M config/locales/kab.yml M config/locales/kn.yml M config/locales/ko.yml M config/locales/kw.yml M config/locales/lt.yml M config/locales/lv.yml M config/locales/mk.yml M config/locales/ml.yml M config/locales/mr.yml M config/locales/my.yml M config/locales/nl.yml M config/locales/nn.yml M config/locales/no.yml M config/locales/oc.yml M config/locales/pl.yml M config/locales/pt-BR.yml M config/locales/pt-PT.yml M config/locales/ro.yml M config/locales/ru.yml M config/locales/sa.yml M config/locales/simple_form.ar.yml M config/locales/simple_form.ast.yml M config/locales/simple_form.be.yml M config/locales/simple_form.bg.yml M config/locales/simple_form.ca.yml M config/locales/simple_form.cy.yml M config/locales/simple_form.da.yml M config/locales/simple_form.de.yml M config/locales/simple_form.en-GB.yml M config/locales/simple_form.eo.yml M config/locales/simple_form.es-AR.yml M config/locales/simple_form.es-MX.yml M config/locales/simple_form.es.yml M config/locales/simple_form.et.yml M config/locales/simple_form.eu.yml M config/locales/simple_form.fa.yml M config/locales/simple_form.fi.yml M config/locales/simple_form.fo.yml M config/locales/simple_form.fr-QC.yml M config/locales/simple_form.fr.yml M config/locales/simple_form.fy.yml M config/locales/simple_form.gd.yml M config/locales/simple_form.gl.yml M config/locales/simple_form.he.yml M config/locales/simple_form.hu.yml M config/locales/simple_form.is.yml M config/locales/simple_form.it.yml M config/locales/simple_form.ja.yml M config/locales/simple_form.ko.yml M config/locales/simple_form.my.yml M config/locales/simple_form.nl.yml M config/locales/simple_form.nn.yml M config/locales/simple_form.no.yml M config/locales/simple_form.pl.yml M config/locales/simple_form.pt-BR.yml M config/locales/simple_form.pt-PT.yml M config/locales/simple_form.sl.yml M config/locales/simple_form.sq.yml M config/locales/simple_form.sr-Latn.yml M config/locales/simple_form.sr.yml M config/locales/simple_form.sv.yml M config/locales/simple_form.th.yml M config/locales/simple_form.tr.yml M config/locales/simple_form.tt.yml M config/locales/simple_form.uk.yml M config/locales/simple_form.vi.yml M config/locales/simple_form.zh-CN.yml M config/locales/simple_form.zh-TW.yml M config/locales/sk.yml M config/locales/sl.yml M config/locales/sq.yml M config/locales/sr-Latn.yml M config/locales/sr.yml M config/locales/sv.yml M config/locales/szl.yml M config/locales/ta.yml A config/locales/tai.yml M config/locales/te.yml M config/locales/th.yml M config/locales/tr.yml M config/locales/tt.yml M config/locales/ug.yml M config/locales/uk.yml M config/locales/ur.yml M config/locales/uz.yml M config/locales/vi.yml M config/locales/zgh.yml M config/locales/zh-CN.yml M config/locales/zh-TW.yml M crowdin.yml D spec/controllers/api/v1/bookmarks_controller_spec.rb D spec/controllers/api/v1/mutes_controller_spec.rb D spec/controllers/api/v1/timelines/public_controller_spec.rb A spec/requests/api/v1/bookmarks_spec.rb A spec/requests/api/v1/mutes_spec.rb A spec/requests/api/v1/timelines/public_spec.rb