about summary refs log tree commit diff
path: root/config
diff options
context:
space:
mode:
authorThibaut Girka <thib@sitedethib.com>2019-01-02 13:45:18 +0100
committerThibaut Girka <thib@sitedethib.com>2019-01-02 15:36:53 +0100
commit571d219bb917cefcca7419a0ad4e3889689d5f6a (patch)
tree6ab91adcb2c164fd027708e58f5fb96c52474007 /config
parentb300948526d967aaf5608c93546ee0d54940c0ef (diff)
parent66436d08959998be20c6c6bf631177d8c1f3e0d1 (diff)
Merge branch 'master' into glitch-soc/merge-upstream
Conflicts manually resolved:
- app/services/post_status_service.rb
- config/locales/simple_form.pl.yml
- config/routes.rb
- config/webpack/loaders/sass.js
- config/webpack/shared.js
- package.json
- yarn.lock
Diffstat (limited to 'config')
-rw-r--r--config/initializers/rack_attack.rb4
-rw-r--r--config/locales/ar.yml22
-rw-r--r--config/locales/ca.yml1
-rw-r--r--config/locales/co.yml3
-rw-r--r--config/locales/cs.yml9
-rw-r--r--config/locales/cy.yml1
-rw-r--r--config/locales/da.yml1
-rw-r--r--config/locales/de.yml3
-rw-r--r--config/locales/devise.en.yml1
-rw-r--r--config/locales/doorkeeper.cs.yml2
-rw-r--r--config/locales/el.yml3
-rw-r--r--config/locales/en.yml32
-rw-r--r--config/locales/eo.yml20
-rw-r--r--config/locales/es.yml1
-rw-r--r--config/locales/eu.yml1
-rw-r--r--config/locales/fa.yml1
-rw-r--r--config/locales/fi.yml1
-rw-r--r--config/locales/fr.yml3
-rw-r--r--config/locales/gl.yml3
-rw-r--r--config/locales/he.yml1
-rw-r--r--config/locales/hi.yml1
-rw-r--r--config/locales/hu.yml1
-rw-r--r--config/locales/id.yml1
-rw-r--r--config/locales/io.yml1
-rw-r--r--config/locales/it.yml1
-rw-r--r--config/locales/ja.yml1
-rw-r--r--config/locales/ka.yml1
-rw-r--r--config/locales/ko.yml3
-rw-r--r--config/locales/ms.yml1
-rw-r--r--config/locales/nl.yml3
-rw-r--r--config/locales/no.yml1
-rw-r--r--config/locales/oc.yml3
-rw-r--r--config/locales/pl.yml1
-rw-r--r--config/locales/pt-BR.yml1
-rw-r--r--config/locales/pt.yml1
-rw-r--r--config/locales/ru.yml1
-rw-r--r--config/locales/simple_form.fr.yml2
-rw-r--r--config/locales/simple_form.oc.yml2
-rw-r--r--config/locales/simple_form.pl.yml4
-rw-r--r--config/locales/simple_form.sk.yml4
-rw-r--r--config/locales/sk.yml3
-rw-r--r--config/locales/sr-Latn.yml1
-rw-r--r--config/locales/sr.yml1
-rw-r--r--config/locales/sv.yml1
-rw-r--r--config/locales/th.yml1
-rw-r--r--config/locales/tr.yml1
-rw-r--r--config/locales/uk.yml1
-rw-r--r--config/locales/zh-CN.yml1
-rw-r--r--config/locales/zh-HK.yml1
-rw-r--r--config/locales/zh-TW.yml1
-rw-r--r--config/routes.rb5
-rw-r--r--config/webpack/loaders/sass.js11
-rw-r--r--config/webpack/production.js15
-rw-r--r--config/webpack/shared.js9
54 files changed, 110 insertions, 89 deletions
diff --git a/config/initializers/rack_attack.rb b/config/initializers/rack_attack.rb
index 8756b8fbf..35302e37b 100644
--- a/config/initializers/rack_attack.rb
+++ b/config/initializers/rack_attack.rb
@@ -57,6 +57,10 @@ class Rack::Attack
     req.authenticated_user_id if req.post? && req.path.start_with?('/api/v1/media')
   end
 
+  throttle('throttle_api_sign_up', limit: 5, period: 30.minutes) do |req|
+    req.ip if req.post? && req.path == '/api/v1/accounts'
+  end
+
   throttle('protected_paths', limit: 25, period: 5.minutes) do |req|
     req.ip if req.post? && req.path =~ PROTECTED_PATHS_REGEX
   end
diff --git a/config/locales/ar.yml b/config/locales/ar.yml
index 84de592d9..49ee567f3 100644
--- a/config/locales/ar.yml
+++ b/config/locales/ar.yml
@@ -120,6 +120,7 @@ ar:
       followers: المتابِعون
       followers_url: عنوان رابط المتابِعين
       follows: يتابع
+      header: الرأسية
       inbox_url: رابط صندوق الوارد
       ip: عنوان الإيبي
       location:
@@ -150,6 +151,7 @@ ar:
       push_subscription_expires: انتهاء الاشتراك ”PuSH“
       redownload: تحديث الصورة الرمزية
       remove_avatar: حذف الصورة الرمزية
+      remove_header: حذف الرأسية
       resend_confirmation:
         already_confirmed: هذا المستخدم مؤكد بالفعل
         send: أعد إرسال رسالة البريد الالكتروني الخاصة بالتأكيد
@@ -168,7 +170,6 @@ ar:
       shared_inbox_url: رابط الصندوق المُشترَك للبريد الوارد
       show:
         created_reports: البلاغات التي أنشأها هذا الحساب
-        report: التقرير
         targeted_reports: التقريرات التي أُنشِأت ضد هذا الحساب
       silence: سكتهم
       silenced: تم كتمه
@@ -245,6 +246,7 @@ ar:
       config: الإعداد
       feature_deletions: الحسابات المحذوفة
       feature_invites: روابط الدعوات
+      feature_profile_directory: دليل الحسابات
       feature_registrations: التسجيلات
       feature_relay: المُرحّل الفديرالي
       features: الميّزات
@@ -608,7 +610,13 @@ ar:
     changes_saved_msg: تم حفظ التعديلات بنجاح !
     copy: نسخ
     save_changes: حفظ التغييرات
-    validation_errors: هناك شيء ليس على ما يُرام! يُرجى معاينة الأخطاء الـ %{count} التالية
+    validation_errors:
+      few: هناك شيء ما ليس على ما يرام! يُرجى مراجعة الأخطاء الـ %{count} أدناه
+      many: هناك شيء ما ليس على ما يرام! يُرجى مراجعة الأخطاء الـ %{count} أدناه
+      one: هناك شيء ما ليس على ما يرام! يُرجى مراجعة الخطأ أدناه
+      other: هناك شيء ما ليس على ما يرام! يُرجى مراجعة الأخطاء الـ %{count} أدناه
+      two: هناك شيء ما ليس على ما يرام! يُرجى مراجعة الأخطاء الـ %{count} أدناه
+      zero: هناك شيء ما ليس على ما يرام! يُرجى مراجعة الأخطاء الـ %{count} أدناه
   imports:
     preface: بإمكانك استيراد بيانات قد قُمتَ بتصديرها مِن مثيل خادوم آخَر، كقوائم المستخدِمين الذين كنتَ تتابِعهم أو قُمتَ بحظرهم.
     success: تم تحميل بياناتك بنجاح وسيتم معالجتها في الوقت المناسب
@@ -702,7 +710,7 @@ ar:
           billion: B
           million: M
           quadrillion: Q
-          thousand: K
+          thousand: ألف
           trillion: T
           unit: ''
   pagination:
@@ -804,7 +812,13 @@ ar:
         zero: فيديوهات
     boosted_from_html: تم إعادة ترقيته مِن %{acct_link}
     content_warning: 'تحذير عن المحتوى : %{warning}'
-    disallowed_hashtags: 'يحتوي على أحد الوسوم الممنوعة: %{tags}'
+    disallowed_hashtags:
+      few: 'يحتوي على وسوم غير مسموح بها: %{tags}'
+      many: 'يحتوي على وسوم غير مسموح بها: %{tags}'
+      one: 'يحتوي على وسم غير مسموح به: %{tags}'
+      other: 'يحتوي على وسوم غير مسموح بها: %{tags}'
+      two: 'يحتوي على وسوم غير مسموح بها: %{tags}'
+      zero: 'يحتوي على وسوم غير مسموح بها: %{tags}'
     language_detection: اكتشاف اللغة تلقائيا
     open_in_web: إفتح في الويب
     over_character_limit: تم تجاوز حد الـ %{max} حرف المسموح بها
diff --git a/config/locales/ca.yml b/config/locales/ca.yml
index ed8af23e8..518f3f781 100644
--- a/config/locales/ca.yml
+++ b/config/locales/ca.yml
@@ -152,7 +152,6 @@ ca:
       shared_inbox_url: URL de la safata d'entrada compartida
       show:
         created_reports: Informes creats per aquest compte
-        report: informe
         targeted_reports: Informes realitzats sobre aquest compte
       silence: Silenci
       silenced: Silenciat
diff --git a/config/locales/co.yml b/config/locales/co.yml
index 9b94e84a6..47c094f43 100644
--- a/config/locales/co.yml
+++ b/config/locales/co.yml
@@ -104,6 +104,7 @@ co:
       followers: Abbunati
       followers_url: URL di l’abbunati
       follows: Abbunamenti
+      header: Intistatura
       inbox_url: URL di l’inbox
       ip: IP
       location:
@@ -134,6 +135,7 @@ co:
       push_subscription_expires: Spirata di l’abbunamentu PuSH
       redownload: Mette à ghjornu i ritratti
       remove_avatar: Toglie l’avatar
+      remove_header: Toglie l'intistatura
       resend_confirmation:
         already_confirmed: St’utilizatore hè digià cunfirmatu
         send: Rimandà un’e-mail di cunfirmazione
@@ -152,7 +154,6 @@ co:
       shared_inbox_url: URL di l’inbox spartuta
       show:
         created_reports: Signalamenti creati da stu contu
-        report: Signalamentu
         targeted_reports: Signalamenti creati contr’à stu contu
       silence: Silenzà
       silenced: Silenzatu
diff --git a/config/locales/cs.yml b/config/locales/cs.yml
index 506b7ca24..f7b1fbef0 100644
--- a/config/locales/cs.yml
+++ b/config/locales/cs.yml
@@ -108,6 +108,7 @@ cs:
       followers: Sledovatelé
       followers_url: URL sledovatelů
       follows: Sledovaní
+      header: Hlavička
       inbox_url: URL přijatých zpráv
       ip: IP
       location:
@@ -138,6 +139,7 @@ cs:
       push_subscription_expires: Odebírání PuSH expiruje
       redownload: Obnovit avatar
       remove_avatar: Odstranit avatar
+      remove_header: Odstranit hlavičku
       resend_confirmation:
         already_confirmed: Tento uživatel je již potvrzen
         send: Znovu odeslat potvrzovací e-mail
@@ -156,7 +158,6 @@ cs:
       shared_inbox_url: URL sdílené schránky
       show:
         created_reports: Nahlášení vytvořené z tohoto účtu
-        report: nahlášení
         targeted_reports: Nahlášení vytvořena o tomto účtu
       silence: Utišit
       silenced: Utišen/a
@@ -603,7 +604,7 @@ cs:
     validation_errors:
       few: Něco ještě není úplně v pořádku! Prosím zkontrolujte %{count} chyby níže
       one: Něco ještě není úplně v pořádku! Prosím zkontrolujte chybu níže
-      other: Něco není úplně v pořádku! Prosím zkontrolujte %{count} pochybení níže
+      other: Něco ještě není úplně v pořádku! Prosím zkontrolujte %{count} chyb níže
   imports:
     preface: Můžete importovat data, která jste exportoval/a z jiné instance, jako například seznam lidí, které sledujete či blokujete.
     success: Vaše data byla úspěšně nahrána a nyní budou zpracována v daný čas
@@ -656,9 +657,9 @@ cs:
       body: Zde najdete stručný souhrn zpráv, které jste zmeškal/a od vaší poslední návštěvy %{since}
       mention: "%{name} vás zmínil/a v:"
       new_followers_summary:
-        few: Navíc jste získal/a %{count} nové sledovatele, zatímco jste byl/a pryč! Hurá!
+        few: Navíc jste získal/a %{count} nové sledovatele, zatímco jste byl/a pryč! Skvělé!
         one: Navíc jste získal/a jednoho nového sledovatele, zatímco jste byl/a pryč! Hurá!
-        other: Taktéž jste získal/a %{count} nových sledovatelů, zatímco jste byl/a pryč! Vynikající!
+        other: Navíc jste získal/a %{count} nových sledovatelů, zatímco jste byl/a pryč! Úžasné!
       subject:
         few: "%{count} nová oznámení od vaší poslední návštěvy \U0001F418"
         one: "1 nové oznámení od vaší poslední návštěvy \U0001F418"
diff --git a/config/locales/cy.yml b/config/locales/cy.yml
index 9f8144ff2..af37278e2 100644
--- a/config/locales/cy.yml
+++ b/config/locales/cy.yml
@@ -142,7 +142,6 @@ cy:
       shared_inbox_url: URL Mewnflwch wedi ei rannu
       show:
         created_reports: Adroddiadau a grewyd gan y cyfri hwn
-        report: adrodd
         targeted_reports: Adroddiadau am y cyfri hwn
       silence: Tawelu
       silenced: Tawelwyd
diff --git a/config/locales/da.yml b/config/locales/da.yml
index f989549d7..074a774f0 100644
--- a/config/locales/da.yml
+++ b/config/locales/da.yml
@@ -149,7 +149,6 @@ da:
       shared_inbox_url: Link til delt indbakke
       show:
         created_reports: Anmeldelser oprettet af denne konto
-        report: anmeld
         targeted_reports: Anmeldelser fra denne konto
       silence: Dæmp
       silenced: Dæmpet
diff --git a/config/locales/de.yml b/config/locales/de.yml
index 00d1d17e5..18d157e4f 100644
--- a/config/locales/de.yml
+++ b/config/locales/de.yml
@@ -104,6 +104,7 @@ de:
       followers: Folger
       followers_url: URL des Folgenden
       follows: Folgt
+      header: Header
       inbox_url: Posteingangs-URL
       ip: IP-Adresse
       location:
@@ -134,6 +135,7 @@ de:
       push_subscription_expires: PuSH-Abonnement läuft aus
       redownload: Avatar neu laden
       remove_avatar: Profilbild entfernen
+      remove_header: Header entfernen
       resend_confirmation:
         already_confirmed: Diese:r Benutzer:in wurde bereits bestätigt
         send: Bestätigungsmail erneut senden
@@ -152,7 +154,6 @@ de:
       shared_inbox_url: Geteilter Posteingang URL
       show:
         created_reports: Meldungen durch dieses Konto
-        report: Meldung
         targeted_reports: Meldungen über dieses Konto
       silence: Stummschalten
       silenced: Stummgeschaltet
diff --git a/config/locales/devise.en.yml b/config/locales/devise.en.yml
index 20938e47b..bd0642b25 100644
--- a/config/locales/devise.en.yml
+++ b/config/locales/devise.en.yml
@@ -18,6 +18,7 @@ en:
     mailer:
       confirmation_instructions:
         action: Verify email address
+        action_with_app: Confirm and return to %{app}
         explanation: You have created an account on %{host} with this email address. You are one click away from activating it. If this wasn't you, please ignore this email.
         extra_html: Please also check out <a href="%{terms_path}">the rules of the instance</a> and <a href="%{policy_path}">our terms of service</a>.
         subject: 'Mastodon: Confirmation instructions for %{instance}'
diff --git a/config/locales/doorkeeper.cs.yml b/config/locales/doorkeeper.cs.yml
index 352b31895..b9e9bc034 100644
--- a/config/locales/doorkeeper.cs.yml
+++ b/config/locales/doorkeeper.cs.yml
@@ -72,7 +72,7 @@ cs:
       index:
         application: Aplikace
         created_at: Autorizováno
-        date_format: "%d.%m.%Y %H:%M:%S"
+        date_format: "%d. %m. %Y %H:%M:%S"
         scopes: Rozsahy
         title: Vaše autorizované aplikace
     errors:
diff --git a/config/locales/el.yml b/config/locales/el.yml
index 4c9a549c6..9f2da4c73 100644
--- a/config/locales/el.yml
+++ b/config/locales/el.yml
@@ -104,6 +104,7 @@ el:
       followers: Ακόλουθοι
       followers_url: URL ακολούθων
       follows: Ακολουθεί
+      header: Επικεφαλίδα
       inbox_url: URL εισερχομένων
       ip: IP
       location:
@@ -134,6 +135,7 @@ el:
       push_subscription_expires: Η εγγραφή PuSH λήγει
       redownload: Ανανέωση αβατάρ
       remove_avatar: Απομακρυσμένο αβατάρ
+      remove_header: Αφαίρεση επικεφαλίδας
       resend_confirmation:
         already_confirmed: Ήδη επιβεβαιωμένος χρήστης
         send: Επανάληψη αποστολής email επιβεβαίωσης
@@ -152,7 +154,6 @@ el:
       shared_inbox_url: URL κοινόχρηστων εισερχομένων
       show:
         created_reports: Αναφορές από αυτόν το λογαριασμό
-        report: καταγγελία
         targeted_reports: Αναφορές για αυτόν το λογαριασμό
       silence: Αποσιώπησε
       silenced: Αποσιωπημένοι
diff --git a/config/locales/en.yml b/config/locales/en.yml
index dfce60d77..8395c59fe 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -84,14 +84,15 @@ en:
       by_domain: Domain
       change_email:
         changed_msg: Account email successfully changed!
-        current_email: Current Email
-        label: Change Email
-        new_email: New Email
-        submit: Change Email
-        title: Change Email for %{username}
+        current_email: Current email
+        label: Change email
+        new_email: New email
+        submit: Change email
+        title: Change email for %{username}
       confirm: Confirm
       confirmed: Confirmed
       confirming: Confirming
+      deleted: Deleted
       demote: Demote
       disable: Disable
       disable_two_factor_authentication: Disable 2FA
@@ -99,8 +100,8 @@ en:
       display_name: Display name
       domain: Domain
       edit: Edit
-      email: E-mail
-      email_status: E-mail Status
+      email: Email
+      email_status: Email status
       enable: Enable
       enabled: Enabled
       feed_url: Feed URL
@@ -109,7 +110,9 @@ en:
       follows: Follows
       header: Header
       inbox_url: Inbox URL
+      invited_by: Invited by
       ip: IP
+      joined: Joined
       location:
         all: All
         local: Local
@@ -136,7 +139,7 @@ en:
       protocol: Protocol
       public: Public
       push_subscription_expires: PuSH subscription expires
-      redownload: Refresh avatar
+      redownload: Refresh profile
       remove_avatar: Remove avatar
       remove_header: Remove header
       resend_confirmation:
@@ -154,22 +157,22 @@ en:
         user: User
       salmon_url: Salmon URL
       search: Search
-      shared_inbox_url: Shared Inbox URL
+      shared_inbox_url: Shared inbox URL
       show:
-        created_reports: Reports created by this account
-        report: report
-        targeted_reports: Reports made about this account
+        created_reports: Made reports
+        targeted_reports: Reported by others
       silence: Silence
       silenced: Silenced
       statuses: Statuses
       subscribe: Subscribe
       suspended: Suspended
       title: Accounts
-      unconfirmed_email: Unconfirmed E-mail
+      unconfirmed_email: Unconfirmed email
       undo_silenced: Undo silence
       undo_suspension: Undo suspension
       unsubscribe: Unsubscribe
       username: Username
+      warn: Warn
       web: Web
     action_logs:
       actions:
@@ -296,6 +299,9 @@ en:
         create: Add domain
         title: New e-mail blacklist entry
       title: E-mail blacklist
+    followers:
+      back_to_account: Back To Account
+      title: "%{acct}'s Followers"
     instances:
       account_count: Known accounts
       domain_name: Domain
diff --git a/config/locales/eo.yml b/config/locales/eo.yml
index 24cba67c3..8e30ed679 100644
--- a/config/locales/eo.yml
+++ b/config/locales/eo.yml
@@ -48,6 +48,7 @@ eo:
       other: Sekvantoj
     following: Sekvatoj
     joined: Aliĝis je %{date}
+    last_active: laste aktiva
     link_verified_on: Proprieto de ĉi tiu ligilo estis kontrolita je %{date}
     media: Aŭdovidaĵoj
     moved_html: "%{name} moviĝis al %{new_profile_link}:"
@@ -114,6 +115,7 @@ eo:
       media_attachments: Ligitaj aŭdovidaĵoj
       memorialize: Ŝanĝi al memoro
       moderation:
+        active: Aktiva
         all: Ĉio
         silenced: Silentigitaj
         suspended: Haltigitaj
@@ -150,7 +152,6 @@ eo:
       shared_inbox_url: URL de kunhavigita leterkesto
       show:
         created_reports: Signaloj kreitaj de ĉi tiu konto
-        report: signalo
         targeted_reports: Signaloj kreitaj de ĉi tiu konto
       silence: Kaŝi
       silenced: Silentigita
@@ -227,6 +228,7 @@ eo:
       config: Agordado
       feature_deletions: Forigo de kontoj
       feature_invites: Invitaj ligiloj
+      feature_profile_directory: Profilujo
       feature_registrations: Registriĝoj
       feature_relay: Federacia ripetilo
       features: Funkcioj
@@ -368,6 +370,9 @@ eo:
       preview_sensitive_media:
         desc_html: Antaŭvido de ligiloj en aliaj retejoj montros bildeton eĉ se la aŭdovidaĵo estas markita kiel tikla
         title: Montri tiklajn aŭdovidaĵojn en la antaŭvidoj de OpenGraph
+      profile_directory:
+        desc_html: Permesi al uzantoj esti troveblaj
+        title: Ebligi la profilujon
       registrations:
         closed_message:
           desc_html: Montrita sur la hejma paĝo kiam registriĝoj estas fermitaj. Vi povas uzi HTML-etikedojn
@@ -427,6 +432,12 @@ eo:
       last_delivery: Lasta livero
       title: WebSub
       topic: Temo
+    tags:
+      hide: Kaŝi de la profilujo
+      name: Kradvorto
+      title: Kradvortoj
+      unhide: Montri en la profilujo
+      visible: Videbla
     title: Administrado
   admin_mailer:
     new_report:
@@ -505,6 +516,13 @@ eo:
     success_msg: Via konto estis sukcese forigita
     warning_html: La forigo de la enhavo estas certa nur por ĉi tiu aparta nodo. Enhavo, kiu estis disvastigita verŝajne lasos spurojn. Eksterretaj serviloj kaj serviloj, kiuj ne abonas viajn ĝisdatigojn ne ĝisdatigos siajn datumbazojn.
     warning_title: Disponebleco de disvastigita enhavo
+  directories:
+    directory: Profilujo
+    explanation: Malkovru uzantojn per iliaj interesoj
+    explore_mastodon: Esplori %{title}
+    people:
+      one: "%{count} personoj"
+      other: "%{count} personoj"
   errors:
     '403': Vi ne havas la rajton por vidi ĉi tiun paĝon.
     '404': La paĝo, kiun vi serĉas, ne ekzistas.
diff --git a/config/locales/es.yml b/config/locales/es.yml
index ceb63eb7a..404dfbb7c 100644
--- a/config/locales/es.yml
+++ b/config/locales/es.yml
@@ -150,7 +150,6 @@ es:
       shared_inbox_url: URL de bandeja compartida
       show:
         created_reports: Reportes hechos por esta cuenta
-        report: reportar
         targeted_reports: Reportes hechos sobre esta cuenta
       silence: Silenciar
       silenced: Silenciado
diff --git a/config/locales/eu.yml b/config/locales/eu.yml
index 6d39a6533..819e22b26 100644
--- a/config/locales/eu.yml
+++ b/config/locales/eu.yml
@@ -152,7 +152,6 @@ eu:
       shared_inbox_url: Partekatutako sarrera ontziaren URL-a
       show:
         created_reports: Kontu honek sortutako txostenak
-        report: salatu
         targeted_reports: Kontu honek egindako salaketak
       silence: Isilarazi
       silenced: Isilarazita
diff --git a/config/locales/fa.yml b/config/locales/fa.yml
index c24465236..d8f89a91b 100644
--- a/config/locales/fa.yml
+++ b/config/locales/fa.yml
@@ -150,7 +150,6 @@ fa:
       shared_inbox_url: نشانی صندوق ورودی مشترک
       show:
         created_reports: گزارش‌ها از طرف این حساب
-        report: گزارش
         targeted_reports: گزارش‌ها دربارهٔ این حساب
       silence: بی‌صدا
       silenced: بی‌صداشده
diff --git a/config/locales/fi.yml b/config/locales/fi.yml
index e210a490c..b48635e21 100644
--- a/config/locales/fi.yml
+++ b/config/locales/fi.yml
@@ -129,7 +129,6 @@ fi:
       shared_inbox_url: Jaetun saapuvan postilaatikon osoite
       show:
         created_reports: Tämän tilin luomat raportit
-        report: raportti
         targeted_reports: Tästä tilistä tehdyt raportit
       silence: Hiljennä
       statuses: Tilat
diff --git a/config/locales/fr.yml b/config/locales/fr.yml
index 96542347d..b38e9f8e4 100644
--- a/config/locales/fr.yml
+++ b/config/locales/fr.yml
@@ -104,6 +104,7 @@ fr:
       followers: Abonné⋅e⋅s
       followers_url: URL des abonné·e·s
       follows: Abonnements
+      header: Entête
       inbox_url: URL d’entrée
       ip: Adresse IP
       location:
@@ -134,6 +135,7 @@ fr:
       push_subscription_expires: Expiration de l’abonnement PuSH
       redownload: Rafraîchir les avatars
       remove_avatar: Supprimer l’avatar
+      remove_header: Supprimer l'entête
       resend_confirmation:
         already_confirmed: Cet·te utilisateur·ice est déjà confirmé·e
         send: Renvoyer un courriel de confirmation
@@ -152,7 +154,6 @@ fr:
       shared_inbox_url: URL de la boite de réception partagée
       show:
         created_reports: Signalements créés par ce compte
-        report: signalement
         targeted_reports: Signalements créés visant ce compte
       silence: Masquer
       silenced: Silencié
diff --git a/config/locales/gl.yml b/config/locales/gl.yml
index 06c26e8cc..30e475f98 100644
--- a/config/locales/gl.yml
+++ b/config/locales/gl.yml
@@ -104,6 +104,7 @@ gl:
       followers: Seguidoras
       followers_url: URL das seguidoras
       follows: Segue
+      header: Cabeceira
       inbox_url: URL da Caixa de entrada
       ip: IP
       location:
@@ -134,6 +135,7 @@ gl:
       push_subscription_expires: A suscrición PuSH caduca
       redownload: Actualizar avatar
       remove_avatar: Eliminar avatar
+      remove_header: Eliminar cabeceira
       resend_confirmation:
         already_confirmed: Este usuario ya está confirmado
         send: Reenviar el correo electrónico de confirmación
@@ -152,7 +154,6 @@ gl:
       shared_inbox_url: URL da caixa de entrada compartida
       show:
         created_reports: Informes creados por esta conta
-        report: informar
         targeted_reports: Informes feitos sobre esta conta
       silence: Acalar
       silenced: Acalada
diff --git a/config/locales/he.yml b/config/locales/he.yml
index 8f651052a..f45afe3a1 100644
--- a/config/locales/he.yml
+++ b/config/locales/he.yml
@@ -120,7 +120,6 @@ he:
       shared_inbox_url: תיבה משותפת לדואר נכנס
       show:
         created_reports: דיווחים מאת חשבון זה
-        report: דו"ח
         targeted_reports: דיווחים נגד חשבון זה
       silence: השתקה
       statuses: הודעות
diff --git a/config/locales/hi.yml b/config/locales/hi.yml
new file mode 100644
index 000000000..0967ef424
--- /dev/null
+++ b/config/locales/hi.yml
@@ -0,0 +1 @@
+{}
diff --git a/config/locales/hu.yml b/config/locales/hu.yml
index ab93ba12d..4fa74228d 100644
--- a/config/locales/hu.yml
+++ b/config/locales/hu.yml
@@ -118,7 +118,6 @@ hu:
       shared_inbox_url: Bejövő üzenetek URL keresése
       show:
         created_reports: Ezen fiók által létrehozott jelentések
-        report: jelentés
         targeted_reports: Jelentések ezzel a fiókkal kapcsolatban
       silence: Némítás
       statuses: Tülkök
diff --git a/config/locales/id.yml b/config/locales/id.yml
index e18207e24..5cc928823 100644
--- a/config/locales/id.yml
+++ b/config/locales/id.yml
@@ -62,7 +62,6 @@ id:
       salmon_url: URL Salmon
       show:
         created_reports: Laporan yang dibuat oleh akun ini
-        report: laporan
         targeted_reports: Laporan yang dibuat tentang akun ini
       silence: Diam
       statuses: Status
diff --git a/config/locales/io.yml b/config/locales/io.yml
index f52f2bc80..358ce4ca9 100644
--- a/config/locales/io.yml
+++ b/config/locales/io.yml
@@ -52,7 +52,6 @@ io:
       salmon_url: Salmon URL
       show:
         created_reports: Reports created by this account
-        report: report
         targeted_reports: Reports made about this account
       silence: Silence
       statuses: Statuses
diff --git a/config/locales/it.yml b/config/locales/it.yml
index 8f62f34e3..cc23b8cf7 100644
--- a/config/locales/it.yml
+++ b/config/locales/it.yml
@@ -150,7 +150,6 @@ it:
       shared_inbox_url: URL Inbox Condiviso
       show:
         created_reports: Rapporti creati da questo account
-        report: segnala
         targeted_reports: Rapporti che riguardano questo account
       silence: Silenzia
       silenced: Silenziato
diff --git a/config/locales/ja.yml b/config/locales/ja.yml
index 7706358a3..c7096e6f2 100644
--- a/config/locales/ja.yml
+++ b/config/locales/ja.yml
@@ -154,7 +154,6 @@ ja:
       shared_inbox_url: Shared Inbox URL
       show:
         created_reports: このアカウントで作られたレポート
-        report: レポート
         targeted_reports: このアカウントについてのレポート
       silence: サイレンス
       silenced: サイレンス済み
diff --git a/config/locales/ka.yml b/config/locales/ka.yml
index 7cb767452..21e01c8c9 100644
--- a/config/locales/ka.yml
+++ b/config/locales/ka.yml
@@ -139,7 +139,6 @@ ka:
       shared_inbox_url: გაზიარებული ინბოქსის ურლ
       show:
         created_reports: ამ ანგარიშის მიერ შექმნილი რეპორტები
-        report: რეპორტი
         targeted_reports: ამ ანგარიშზე მიღებული რეპორტები
       silence: სიჩუმე
       statuses: სტატუსები
diff --git a/config/locales/ko.yml b/config/locales/ko.yml
index 7ba1df97b..9ac1cd6b9 100644
--- a/config/locales/ko.yml
+++ b/config/locales/ko.yml
@@ -104,6 +104,7 @@ ko:
       followers: 팔로워 수
       followers_url: 팔로워 URL
       follows: 팔로잉 수
+      header: 헤더
       inbox_url: 수신함 URL
       ip: IP
       location:
@@ -134,6 +135,7 @@ ko:
       push_subscription_expires: PuSH 구독 기간 만료
       redownload: 아바타 업데이트
       remove_avatar: 아바타 지우기
+      remove_header: 헤더 삭제
       resend_confirmation:
         already_confirmed: 이 사용자는 이미 확인되었습니다
         send: 다시 확인 이메일
@@ -152,7 +154,6 @@ ko:
       shared_inbox_url: 공유된 inbox URL
       show:
         created_reports: 이 계정에서 제출된 신고
-        report: 신고
         targeted_reports: 이 계정에 대한 신고
       silence: 침묵
       silenced: 침묵 됨
diff --git a/config/locales/ms.yml b/config/locales/ms.yml
index c361371fe..7c6148e3b 100644
--- a/config/locales/ms.yml
+++ b/config/locales/ms.yml
@@ -150,7 +150,6 @@ ms:
       shared_inbox_url: URL Peti Masuk Berkongsi
       show:
         created_reports: Laporan yang dicipta oleh akaun ini
-        report: laporan
         targeted_reports: Laporan yang dicipta berkaitan akaun ini
       silence: Senyap
       silenced: Disenyapkan
diff --git a/config/locales/nl.yml b/config/locales/nl.yml
index 43a57424b..84d8099bc 100644
--- a/config/locales/nl.yml
+++ b/config/locales/nl.yml
@@ -104,6 +104,7 @@ nl:
       followers: Volgers
       followers_url: Volgers-URL
       follows: Volgt
+      header: Omslagfoto
       inbox_url: Inbox-URL
       ip: IP
       location:
@@ -134,6 +135,7 @@ nl:
       push_subscription_expires: PuSH-abonnement verloopt op
       redownload: Avatar vernieuwen
       remove_avatar: Avatar verwijderen
+      remove_header: Omslagfoto verwijderen
       resend_confirmation:
         already_confirmed: Deze gebruiker is al bevestigd
         send: Verzend bevestigingsmail opnieuw
@@ -152,7 +154,6 @@ nl:
       shared_inbox_url: Gedeelde inbox-URL
       show:
         created_reports: Door dit account aangemaakte rapportages
-        report: gerapporteerd
         targeted_reports: Over dit account aangemaakte rapportages
       silence: Negeren
       silenced: Genegeerd
diff --git a/config/locales/no.yml b/config/locales/no.yml
index 230e6b3f0..a446fa1f6 100644
--- a/config/locales/no.yml
+++ b/config/locales/no.yml
@@ -118,7 +118,6 @@
       shared_inbox_url: Delt Innboks URL
       show:
         created_reports: Rapporter laget av denne kontoen
-        report: rapport
         targeted_reports: Rapporter laget om denne kontoen
       silence: Målbind
       statuses: Statuser
diff --git a/config/locales/oc.yml b/config/locales/oc.yml
index bf5d420f6..707877542 100644
--- a/config/locales/oc.yml
+++ b/config/locales/oc.yml
@@ -104,6 +104,7 @@ oc:
       followers: Seguidors
       followers_url: URL dels seguidors
       follows: Abonaments
+      header: Bandièra
       inbox_url: URL de recepcion
       ip: IP
       location:
@@ -134,6 +135,7 @@ oc:
       push_subscription_expires: Fin de l’abonament PuSH
       redownload: Actualizar los avatars
       remove_avatar: Supriir l’avatar
+      remove_header: Levar la bandièra
       resend_confirmation:
         already_confirmed: Aqueste utilizaire es ja confirmat
         send: Tornar mandar lo corrièl de confirmacion
@@ -152,7 +154,6 @@ oc:
       shared_inbox_url: URL de recepcion partejada
       show:
         created_reports: Rapòrts creat per aqueste compte
-        report: rapòrt
         targeted_reports: Rapòrts faches tocant aqueste compte
       silence: Silenci
       silenced: Rescondut
diff --git a/config/locales/pl.yml b/config/locales/pl.yml
index 77bb7b839..41a54a8c1 100644
--- a/config/locales/pl.yml
+++ b/config/locales/pl.yml
@@ -160,7 +160,6 @@ pl:
       shared_inbox_url: Adres udostępnianej skrzynki
       show:
         created_reports: Zgłoszenia tego użytkownika
-        report: zgłoszeń
         targeted_reports: Zgłoszenia dotyczące tego użytkownika
       silence: Wycisz
       silenced: Wyciszono
diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml
index a62fc83b6..dff73e990 100644
--- a/config/locales/pt-BR.yml
+++ b/config/locales/pt-BR.yml
@@ -152,7 +152,6 @@ pt-BR:
       shared_inbox_url: URL da caixa de entrada compartilhada
       show:
         created_reports: Denúncias criadas por esta conta
-        report: relatórios
         targeted_reports: Denúncias feitas sobre esta conta
       silence: Silenciar
       silenced: Silenciado
diff --git a/config/locales/pt.yml b/config/locales/pt.yml
index 4c23c9cf4..a67223069 100644
--- a/config/locales/pt.yml
+++ b/config/locales/pt.yml
@@ -118,7 +118,6 @@ pt:
       shared_inbox_url: URL da caixa de entrada compartilhada
       show:
         created_reports: Relatórios gerados por esta conta
-        report: relatórios
         targeted_reports: Relatórios feitos sobre esta conta
       silence: Silêncio
       statuses: Status
diff --git a/config/locales/ru.yml b/config/locales/ru.yml
index a9a02caf8..3b81c9ebc 100644
--- a/config/locales/ru.yml
+++ b/config/locales/ru.yml
@@ -155,7 +155,6 @@ ru:
       shared_inbox_url: URL общих входящих
       show:
         created_reports: Жалобы, отправленные этим аккаунтом
-        report: жалоба
         targeted_reports: Жалобы на этот аккаунт
       silence: Глушение
       statuses: Статусы
diff --git a/config/locales/simple_form.fr.yml b/config/locales/simple_form.fr.yml
index c7cdcfe08..4637dc0a3 100644
--- a/config/locales/simple_form.fr.yml
+++ b/config/locales/simple_form.fr.yml
@@ -77,7 +77,7 @@ fr:
         setting_display_media_default: Défaut
         setting_display_media_hide_all: Masquer tout
         setting_display_media_show_all: Montrer tout
-        setting_expand_spoilers: Toujours développer les pouëts marqués d’un avertissement de contenu
+        setting_expand_spoilers: Toujours développer les pouets marqués d’un avertissement de contenu
         setting_hide_network: Cacher votre réseau
         setting_noindex: Demander aux moteurs de recherche de ne pas indexer vos informations personnelles
         setting_reduce_motion: Réduire la vitesse des animations
diff --git a/config/locales/simple_form.oc.yml b/config/locales/simple_form.oc.yml
index 3ceed0ed4..8260d81e0 100644
--- a/config/locales/simple_form.oc.yml
+++ b/config/locales/simple_form.oc.yml
@@ -68,7 +68,7 @@ oc:
         phrase: Senhal o frasa
         setting_aggregate_reblogs: Agropar los partatges dins lo flux d’actualitat
         setting_auto_play_gif: Lectura automatica dels GIFS animats
-        setting_boost_modal: Afichar una fenèstra de confirmacion abans de partejar un estatut
+        setting_boost_modal: Mostrar una fenèstra de confirmacion abans de partejar un estatut
         setting_default_language: Lenga de publicacion
         setting_default_privacy: Confidencialitat dels tuts
         setting_default_sensitive: Totjorn marcar los mèdias coma sensibles
diff --git a/config/locales/simple_form.pl.yml b/config/locales/simple_form.pl.yml
index 23dd04481..1a15c5942 100644
--- a/config/locales/simple_form.pl.yml
+++ b/config/locales/simple_form.pl.yml
@@ -15,9 +15,11 @@ pl:
         irreversible: Filtrowane wpisy znikną bezpowrotnie, nawet gdy filtr zostanie usunięty
         locale: Język interfejsu, wiadomości e-mail i powiadomieniach push
         locked: Musisz akceptować prośby o śledzenie
+        password: Użyj co najmniej 8 znaków
         phrase: Zostanie wykryte nawet, gdy znajduje się za ostrzeżeniem o zawartości
         scopes: Wybór API, do których aplikacja będzie miała dostęp. Jeżeli wybierzesz nadrzędny zakres, nie musisz wybierać jego elementów.
         setting_default_language: Język Twoich wpisów może być wykrywany automatycznie, ale nie zawsze jest to dokładne
+        setting_display_media_show_all: Zawsze pokazuj zawartość multimedialną jako wrażliwą
         setting_hide_network: Informacje o tym, kto Cię śledzi i kogo śledzisz nie będą widoczne
         setting_noindex: Wpływa na widoczność strony profilu i Twoich wpisów
         setting_skin: Zmienia wygląd używanej odmiany Mastodona
@@ -66,6 +68,8 @@ pl:
         setting_default_privacy: Widoczność wpisów
         setting_default_sensitive: Zawsze oznaczaj zawartość multimedialną jako wrażliwą
         setting_delete_modal: Pytaj o potwierdzenie przed usunięciem wpisu
+        setting_display_media_hide_all: Ukryj wszystko
+        setting_display_media_show_all: Pokaż wszystko
         setting_favourite_modal: Pytaj o potwierdzenie przed dodaniem do ulubionych
         setting_hide_network: Ukryj swoją sieć
         setting_noindex: Nie indeksuj mojego profilu w wyszukiwarkach internetowych
diff --git a/config/locales/simple_form.sk.yml b/config/locales/simple_form.sk.yml
index bbc95abb7..63403fe03 100644
--- a/config/locales/simple_form.sk.yml
+++ b/config/locales/simple_form.sk.yml
@@ -19,7 +19,7 @@ sk:
         password: Zadaj aspoň osem znakov
         phrase: Zhoda sa nájde nezávisle od toho, či je text napísaný, veľkými, alebo malými písmenami, či už v tele, alebo v hlavičke
         scopes: Ktoré API budú povolené aplikácii pre prístup. Ak vyberieš vrcholný stupeň, nemusíš už potom vyberať po jednom.
-        setting_aggregate_reblogs: Neukazuj nové povýšenia pre hlášky, ktoré už boli len nedávno povýšené (týka sa iba nanovo získaných povýšení)
+        setting_aggregate_reblogs: Neukazuj nové vyzdvihnutia pre hlášky, ktoré už boli len nedávno povýšené (týka sa iba nanovo získaných vyzdvihnutí)
         setting_default_language: Jazyk tvojích príspevkov môže byť zistený automaticky, ale nieje to vždy presné
         setting_display_media_default: Skryť médiá označené ako citlivé
         setting_display_media_hide_all: Vždy ukryť všetky médiá
@@ -66,7 +66,7 @@ sk:
         otp_attempt: Dvoj-faktorový overovací (2FA) kód
         password: Heslo
         phrase: Kľúčové slovo, alebo fráza
-        setting_aggregate_reblogs: Zoskupuj povýšenia v časovej osi
+        setting_aggregate_reblogs: Zoskupuj vyzdvihnutia v časovej osi
         setting_auto_play_gif: Automaticky prehrávaj animované GIFy
         setting_boost_modal: Zobrazuj potvrdzovacie okno pred povýšením
         setting_default_language: Píšeš v jazyku
diff --git a/config/locales/sk.yml b/config/locales/sk.yml
index ef212f50e..31f735e19 100644
--- a/config/locales/sk.yml
+++ b/config/locales/sk.yml
@@ -108,6 +108,7 @@ sk:
       followers: Sledujúci
       followers_url: URL sledujúcich
       follows: Sledovania
+      header: Hlavička
       inbox_url: URL prijatých správ
       ip: IP
       location:
@@ -138,6 +139,7 @@ sk:
       push_subscription_expires: PuSH odoberanie expiruje
       redownload: Obnoviť avatar
       remove_avatar: Odstrániť avatár
+      remove_header: Odstráň hlavičku
       resend_confirmation:
         already_confirmed: Tento užívateľ už je potvrdený
         send: Znovu odoslať potvrdzovací email
@@ -156,7 +158,6 @@ sk:
       shared_inbox_url: URL zdieľanej schránky
       show:
         created_reports: Reportované týmto používateľom
-        report: report
         targeted_reports: Nahlásenia pre tento účet
       silence: Stíšiť
       silenced: Utíšení
diff --git a/config/locales/sr-Latn.yml b/config/locales/sr-Latn.yml
index 93ba091cb..62ad744f3 100644
--- a/config/locales/sr-Latn.yml
+++ b/config/locales/sr-Latn.yml
@@ -118,7 +118,6 @@ sr-Latn:
       shared_inbox_url: Adresa deljenog sandučeta
       show:
         created_reports: Prijave koje je napravio ovaj nalog
-        report: prijava
         targeted_reports: Prijave napravljene o ovom nalogu
       silence: Ućutkaj
       statuses: Statusi
diff --git a/config/locales/sr.yml b/config/locales/sr.yml
index 9ca5e412b..8dc869c8f 100644
--- a/config/locales/sr.yml
+++ b/config/locales/sr.yml
@@ -158,7 +158,6 @@ sr:
       shared_inbox_url: Адреса дељеног сандучета
       show:
         created_reports: Пријаве које је направио овај налог
-        report: пријава
         targeted_reports: Пријаве направљене о овом налогу
       silence: Ућуткај
       silenced: Ућуткан
diff --git a/config/locales/sv.yml b/config/locales/sv.yml
index 706e4c570..79040b46c 100644
--- a/config/locales/sv.yml
+++ b/config/locales/sv.yml
@@ -130,7 +130,6 @@ sv:
       shared_inbox_url: Delad inkorg URL
       show:
         created_reports: Anmälningar som skapats av det här kontot
-        report: anmäla
         targeted_reports: Anmälningar gjorda om detta konto
       silence: Tystnad
       statuses: Status
diff --git a/config/locales/th.yml b/config/locales/th.yml
index 42d52af26..1a1ffae3b 100644
--- a/config/locales/th.yml
+++ b/config/locales/th.yml
@@ -61,7 +61,6 @@ th:
       salmon_url: Salmon URL
       show:
         created_reports: รายงานที่ถูกสร้างโดย แอคเคาท์นี้
-        report: รายงาน
         targeted_reports: รายงานเกี่ยวกับแอคเคาท์นี้
       silence: ปิดเสียง
       statuses: สถานะ
diff --git a/config/locales/tr.yml b/config/locales/tr.yml
index 486210af6..aae1549f7 100644
--- a/config/locales/tr.yml
+++ b/config/locales/tr.yml
@@ -60,7 +60,6 @@ tr:
       salmon_url: Salmon Linki
       show:
         created_reports: Bu hesap tarafından gelen şikayetler
-        report: şikayet
         targeted_reports: Bu hesaba gelen şikayetler
       silence: Sustur
       statuses: Durumlar
diff --git a/config/locales/uk.yml b/config/locales/uk.yml
index f6d14c854..b3fc4cd36 100644
--- a/config/locales/uk.yml
+++ b/config/locales/uk.yml
@@ -135,7 +135,6 @@ uk:
       shared_inbox_url: URL спільного вхідного кошика
       show:
         created_reports: Скарги створені цим аккаунтом
-        report: скарга
         targeted_reports: Скарги щодо цього аккаунту
       silence: Глушення
       statuses: Статуси
diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml
index 2c1005a9a..d03bf1217 100644
--- a/config/locales/zh-CN.yml
+++ b/config/locales/zh-CN.yml
@@ -141,7 +141,6 @@ zh-CN:
       shared_inbox_url: 公用收件箱(Shared Inbox)URL
       show:
         created_reports: 这个帐户提交的举报
-        report: 个举报
         targeted_reports: 针对这个帐户的举报
       silence: 隐藏
       statuses: 嘟文
diff --git a/config/locales/zh-HK.yml b/config/locales/zh-HK.yml
index c03946f0a..35b774120 100644
--- a/config/locales/zh-HK.yml
+++ b/config/locales/zh-HK.yml
@@ -130,7 +130,6 @@ zh-HK:
       shared_inbox_url: 公共收件箱(Shared Inbox)URL
       show:
         created_reports: 此用戶所提舉報的紀錄
-        report: 舉報
         targeted_reports: 此用戶被舉報的紀錄
       silence: 靜音
       statuses: 文章
diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml
index d6a7abea9..5e209d2ff 100644
--- a/config/locales/zh-TW.yml
+++ b/config/locales/zh-TW.yml
@@ -135,7 +135,6 @@ zh-TW:
       shared_inbox_url: 公共收件箱 (Shared Inbox) URL
       show:
         created_reports: 這個使用者提交的檢舉
-        report: 檢舉
         targeted_reports: 針對這個使用者的檢舉
       silence: 靜音
       statuses: 嘟文
diff --git a/config/routes.rb b/config/routes.rb
index 26566dfbc..cd0692817 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -95,6 +95,8 @@ Rails.application.routes.draw do
       resources :follows, only: :index, controller: :following_accounts
       resources :blocks, only: :index, controller: :blocked_accounts
       resources :mutes, only: :index, controller: :muted_accounts
+      resources :lists, only: :index, controller: :lists
+      resources :domain_blocks, only: :index, controller: :blocked_domains
     end
 
     resource :two_factor_authentication, only: [:show, :create, :destroy]
@@ -194,6 +196,7 @@ Rails.application.routes.draw do
       resource :reset, only: [:create]
       resource :action, only: [:new, :create], controller: 'account_actions'
       resources :statuses, only: [:index, :show, :create, :update, :destroy]
+      resources :followers, only: [:index]
 
       resource :confirmation, only: [:create] do
         collection do
@@ -348,7 +351,7 @@ Rails.application.routes.draw do
         resources :relationships, only: :index
       end
 
-      resources :accounts, only: [:show] do
+      resources :accounts, only: [:create, :show] do
         resources :statuses, only: :index, controller: 'accounts/statuses'
         resources :followers, only: :index, controller: 'accounts/follower_accounts'
         resources :following, only: :index, controller: 'accounts/following_accounts'
diff --git a/config/webpack/loaders/sass.js b/config/webpack/loaders/sass.js
index 920d5350f..5a96096bd 100644
--- a/config/webpack/loaders/sass.js
+++ b/config/webpack/loaders/sass.js
@@ -1,16 +1,10 @@
 const MiniCssExtractPlugin = require('mini-css-extract-plugin');
-const { env } = require('../configuration.js');
 
 module.exports = {
   test: /\.s?css$/i,
   use: [
     MiniCssExtractPlugin.loader,
-    {
-      loader: 'css-loader',
-      options: {
-        minimize: env.NODE_ENV === 'production',
-      },
-    },
+    'css-loader',
     {
       loader: 'postcss-loader',
       options: {
@@ -21,6 +15,9 @@ module.exports = {
       loader: 'sass-loader',
       options: {
         includePaths: ['app/javascript'],
+        fiber: require('fibers'),
+        implementation: require('sass'),
+        sourceMap: true,
       },
     },
   ],
diff --git a/config/webpack/production.js b/config/webpack/production.js
index 30147cfe3..d37e11792 100644
--- a/config/webpack/production.js
+++ b/config/webpack/production.js
@@ -3,6 +3,7 @@
 const merge = require('webpack-merge');
 const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
 const CompressionPlugin = require('compression-webpack-plugin');
+const zopfli = require('@gfx/zopfli');
 const sharedConfig = require('./shared.js');
 const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
 const OfflinePlugin = require('offline-plugin');
@@ -10,16 +11,6 @@ const { publicPath } = require('./configuration.js');
 const path = require('path');
 const { URL } = require('url');
 
-let compressionAlgorithm;
-try {
-  const zopfli = require('node-zopfli');
-  compressionAlgorithm = (content, options, fn) => {
-    zopfli.gzip(content, options, fn);
-  };
-} catch (error) {
-  compressionAlgorithm = 'gzip';
-}
-
 let attachmentHost;
 
 if (process.env.S3_ENABLED === 'true') {
@@ -69,7 +60,9 @@ module.exports = merge(sharedConfig, {
 
   plugins: [
     new CompressionPlugin({
-      algorithm: compressionAlgorithm,
+      algorithm(input, compressionOptions, callback) {
+        return zopfli.gzip(input, compressionOptions, callback);
+      },
       test: /\.(js|css|html|json|ico|svg|eot|otf|ttf)$/,
     }),
     new BundleAnalyzerPlugin({ // generates report.html and stats.json
diff --git a/config/webpack/shared.js b/config/webpack/shared.js
index 58eab4b4c..938bab9f5 100644
--- a/config/webpack/shared.js
+++ b/config/webpack/shared.js
@@ -4,7 +4,7 @@ const webpack = require('webpack');
 const { basename, dirname, join, relative, resolve } = require('path');
 const { sync } = require('glob');
 const MiniCssExtractPlugin = require('mini-css-extract-plugin');
-const ManifestPlugin = require('webpack-manifest-plugin');
+const AssetsManifestPlugin = require('webpack-assets-manifest');
 const { env, settings, core, flavours, output, loadersDir } = require('./configuration.js');
 const localePacks = require('./generateLocalePacks');
 
@@ -100,10 +100,9 @@ module.exports = {
     new MiniCssExtractPlugin({
       filename: env.NODE_ENV === 'production' ? '[name]-[contenthash].css' : '[name].css',
     }),
-    new ManifestPlugin({
-      publicPath: output.publicPath,
-      writeToFileEmit: true,
-      filter: file => !file.isAsset || file.isModuleAsset,
+    new AssetsManifestPlugin({
+      publicPath: true,
+      writeToDisk: true,
     }),
   ],