about summary refs log tree commit diff
path: root/config/application.rb
AgeCommit message (Collapse)Author
2023-04-14Merge remote-tracking branch 'glitch/main' HEAD mainStarfall
2023-04-03Change root Chewy strategy to emit a warning instead of erroring out in ↵Claire
production mode (#24327)
2023-03-16Add cache headers to static files served through Rails (#24120)Eugen Rochko
2023-02-02Address check-i18n warnings (#23313)Nick Schonning
* Address check-i18n warnings * Add language names to language helpers
2023-01-17Merge remote-tracking branch 'glitch/main'Starfall
2022-12-15Add Western Frisian support (#18602)Yamagishi Kazutoshi
2022-12-13Merge remote-tracking branch 'glitch/main'Starfall
2022-12-07enable be locale (#22022)Mikhail Paulyshka
It already has 80+% completion, which is enough for everyday use. Test instance runs on https://meowstodon.net/
2022-11-28Merge remote-tracking branch 'glitch/main'Starfall
2022-11-27Remove support for Ruby 2.6 (#21477)Claire
As pointed out by https://github.com/mastodon/mastodon/pull/21297#discussion_r1028372193 at least one of our dependencies already dropped support for Ruby 2.6, and we had removed Ruby 2.6 tests from the CI over a year ago (#16861). So stop advertising Ruby 2.6 support, bump targeted version, and drop some compatibility code.
2022-11-10Merge remote-tracking branch 'glitch/main'Starfall
- Remove Helm charts - Lots of conflicts with our removal of recommended settings and custom icons
2022-11-10Fix `mailers` queue not being used for mailers (#20274)Eugen Rochko
Regression since Rails 6.1
2022-08-26Merge remote-tracking branch 'glitch/main'Starfall
2022-08-13Remove Rack::Deflater (#17937)gol-cha
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
2022-07-25Merge remote-tracking branch 'glitch/main'Starfall
2022-07-05Add customizable user roles (#18641)Eugen Rochko
* Add customizable user roles * Various fixes and improvements * Add migration for old settings and fix tootctl role management
2022-06-06Merge remote-tracking branch 'glitch/main'Starfall
2022-05-18Change search indexing to use batches to minimize resource usage (#18451)Eugen Rochko
2022-04-29Merge remote-tracking branch 'glitch/main'Starfall
2022-04-28Fix single Redis connection being used across all threads (#18135)Eugen Rochko
* Fix single Redis connection being used across all Sidekiq threads * Fix tests
2022-04-26Merge remote-tracking branch 'glitch/main'Starfall
2022-04-08Fix cookies secure flag being set when served over Tor (#17992)Eugen Rochko
2022-04-08Merge remote-tracking branch 'glitch/main'Starfall
2022-04-01fix: `s3_force_single_request` not parsed (#17922)Holger
2022-03-22Merge remote-tracking branch 'glitch/main'Starfall
2022-03-17Fix wrong language code for Kurdish languages (#17812)Claire
2022-02-13Merge remote-tracking branch 'glitch/main'Starfall
Not at all sure where the admin UI is going to display English language names now but OK.
2022-02-08Add global `locale` param (#17464)Eugen Rochko
- Remove the session-based locale stickyness
2022-01-31Merge branch 'glitchsoc'Starfall
2021-10-18Add S3_FORCE_SINGLE_REQUEST env var to work around S3 compatibility issues ↵Claire
(#16866) Fixes #16822
2021-10-14Add Northern Kurdish locale as requested by translator. It already has a ↵gunchleoc
project started on Crowdin. (#16548)
2021-09-29Switch from unmaintained paperclip to kt-paperclip (#16724)Claire
* Switch from unmaintained paperclip to kt-paperclip * Drop some compatibility monkey-patches not required by kt-paperclip * Drop media spoof check monkey-patching It's broken with kt-paperclip and hopefully it won't be needed anymore * Fix regression introduced by paperclip 6.1.0 * Do not rely on pathname to call FastImage * Add test for ogg vorbis file with cover art * Add audio/vorbis to the accepted content-types This seems erroneous as this would be the content-type for a vorbis stream without an ogg container, but that's what the `marcel` gem outputs, so… * Restore missing for_as_default method * Refactor Attachmentable concern and delay Paperclip's content-type spoof check Check for content-type spoofing *after* setting the extension ourselves, this fixes a regression with kt-paperclip's validations being more strict than paperclip 6.0.0 and rejecting some Pleroma uploads because of unknown extensions. * Please CodeClimate * Add audio/vorbis to the unreliable set It doesn't correspond to a file format and thus has no extension associated.
2021-09-13Fix some Rails frameworks being unnecessarily loaded (#16725)Claire
Saves about 10MiB of memory usage at boot
2021-06-08Merge branch 'glitch'Starfall
Conflicts: yarn.lock: caniuse-lite has been outdated in upstream for awhile, and we fixed it a few weeks ago in our fork
2021-05-20New Crowdin updates (#16269)Eugen Rochko
* New translations en.yml (Kazakh) [ci skip] * New translations en.json (Kazakh) [ci skip] * New translations doorkeeper.en.yml (Norwegian Nynorsk) [ci skip] * New translations activerecord.en.yml (Norwegian Nynorsk) [ci skip] * New translations simple_form.en.yml (Norwegian Nynorsk) [ci skip] * New translations en.yml (Norwegian Nynorsk) [ci skip] * New translations en.json (Norwegian Nynorsk) [ci skip] * New translations doorkeeper.en.yml (Croatian) [ci skip] * New translations en.json (Malayalam) [ci skip] * New translations doorkeeper.en.yml (Scottish Gaelic) [ci skip] * New translations simple_form.en.yml (Malayalam) [ci skip] * New translations activerecord.en.yml (Sardinian) [ci skip] * New translations en.yml (Kabyle) [ci skip] * New translations en.json (Kabyle) [ci skip] * New translations en.yml (Sanskrit) [ci skip] * New translations en.json (Sanskrit) [ci skip] * New translations doorkeeper.en.yml (Sardinian) [ci skip] * New translations simple_form.en.yml (Sardinian) [ci skip] * New translations activerecord.en.yml (Kabyle) [ci skip] * New translations en.yml (Sardinian) [ci skip] * New translations en.json (Sardinian) [ci skip] * New translations doorkeeper.en.yml (Corsican) [ci skip] * New translations activerecord.en.yml (Corsican) [ci skip] * New translations simple_form.en.yml (Corsican) [ci skip] * New translations en.yml (Corsican) [ci skip] * New translations doorkeeper.en.yml (Sorani (Kurdish)) [ci skip] * New translations simple_form.en.yml (Kabyle) [ci skip] * New translations doorkeeper.en.yml (Kabyle) [ci skip] * New translations simple_form.en.yml (Sorani (Kurdish)) [ci skip] * New translations en.json (Silesian) [ci skip] * New translations activerecord.en.yml (Standard Moroccan Tamazight) [ci skip] * New translations simple_form.en.yml (Standard Moroccan Tamazight) [ci skip] * New translations en.yml (Standard Moroccan Tamazight) [ci skip] * New translations en.json (Standard Moroccan Tamazight) [ci skip] * New translations en.yml (Silesian) [ci skip] * New translations en.json (Ido) [ci skip] * New translations en.yml (Taigi) [ci skip] * New translations en.json (Taigi) [ci skip] * New translations doorkeeper.en.yml (Ido) [ci skip] * New translations simple_form.en.yml (Ido) [ci skip] * New translations en.yml (Ido) [ci skip] * New translations activerecord.en.yml (Sorani (Kurdish)) [ci skip] * New translations en.yml (Sorani (Kurdish)) [ci skip] * New translations activerecord.en.yml (Malayalam) [ci skip] * New translations activerecord.en.yml (Sinhala) [ci skip] * New translations en.yml (Kannada) [ci skip] * New translations en.json (Kannada) [ci skip] * New translations en.yml (Cornish) [ci skip] * New translations en.json (Cornish) [ci skip] * New translations doorkeeper.en.yml (Sinhala) [ci skip] * New translations simple_form.en.yml (Sinhala) [ci skip] * New translations en.yml (Sinhala) [ci skip] * New translations en.json (Sinhala) [ci skip] * New translations doorkeeper.en.yml (Breton) [ci skip] * New translations activerecord.en.yml (Breton) [ci skip] * New translations simple_form.en.yml (Breton) [ci skip] * New translations en.yml (Breton) [ci skip] * New translations en.json (Breton) [ci skip] * New translations doorkeeper.en.yml (Malayalam) [ci skip] * New translations en.json (Sorani (Kurdish)) [ci skip] * New translations en.yml (Occitan) [ci skip] * New translations doorkeeper.en.yml (Serbian (Latin)) [ci skip] * New translations activerecord.en.yml (Serbian (Latin)) [ci skip] * New translations simple_form.en.yml (Serbian (Latin)) [ci skip] * New translations en.yml (Serbian (Latin)) [ci skip] * New translations en.json (Serbian (Latin)) [ci skip] * New translations doorkeeper.en.yml (Occitan) [ci skip] * New translations activerecord.en.yml (Occitan) [ci skip] * New translations simple_form.en.yml (Occitan) [ci skip] * New translations en.json (Occitan) [ci skip] * New translations doorkeeper.en.yml (Asturian) [ci skip] * New translations activerecord.en.yml (Asturian) [ci skip] * New translations simple_form.en.yml (Asturian) [ci skip] * New translations en.yml (Asturian) [ci skip] * New translations en.json (Asturian) [ci skip] * New translations en.json (Spanish, Mexico) [ci skip] * New translations activerecord.en.yml (Scottish Gaelic) [ci skip] * New translations simple_form.en.yml (Scottish Gaelic) [ci skip] * New translations en.yml (Scottish Gaelic) [ci skip] * New translations en.yml (Spanish, Mexico) [ci skip] * New translations simple_form.en.yml (Icelandic) [ci skip] * New translations doorkeeper.en.yml (Spanish, Argentina) [ci skip] * New translations en.yml (Norwegian) [ci skip] * New translations en.json (Norwegian) [ci skip] * New translations doorkeeper.en.yml (Dutch) [ci skip] * New translations activerecord.en.yml (Dutch) [ci skip] * New translations simple_form.en.yml (Dutch) [ci skip] * New translations en.yml (Dutch) [ci skip] * New translations en.json (Dutch) [ci skip] * New translations activerecord.en.yml (Norwegian) [ci skip] * New translations en.yml (Macedonian) [ci skip] * New translations en.json (Macedonian) [ci skip] * New translations en.yml (Lithuanian) [ci skip] * New translations en.json (Lithuanian) [ci skip] * New translations doorkeeper.en.yml (Korean) [ci skip] * New translations simple_form.en.yml (Norwegian) [ci skip] * New translations doorkeeper.en.yml (Norwegian) [ci skip] * New translations simple_form.en.yml (Korean) [ci skip] * New translations activerecord.en.yml (Russian) [ci skip] * New translations simple_form.en.yml (Russian) [ci skip] * New translations en.yml (Russian) [ci skip] * New translations doorkeeper.en.yml (Portuguese) [ci skip] * New translations activerecord.en.yml (Portuguese) [ci skip] * New translations simple_form.en.yml (Portuguese) [ci skip] * New translations en.yml (Portuguese) [ci skip] * New translations doorkeeper.en.yml (Polish) [ci skip] * New translations en.json (Punjabi) [ci skip] * New translations activerecord.en.yml (Polish) [ci skip] * New translations simple_form.en.yml (Polish) [ci skip] * New translations en.yml (Polish) [ci skip] * New translations en.yml (Punjabi) [ci skip] * New translations activerecord.en.yml (Korean) [ci skip] * New translations en.yml (Korean) [ci skip] * New translations en.json (Slovak) [ci skip] * New translations doorkeeper.en.yml (Finnish) [ci skip] * New translations simple_form.en.yml (Hungarian) [ci skip] * New translations en.yml (Hungarian) [ci skip] * New translations doorkeeper.en.yml (Hebrew) [ci skip] * New translations activerecord.en.yml (Hebrew) [ci skip] * New translations simple_form.en.yml (Hebrew) [ci skip] * New translations en.yml (Hebrew) [ci skip] * New translations en.json (Hebrew) [ci skip] * New translations activerecord.en.yml (Finnish) [ci skip] * New translations doorkeeper.en.yml (Hungarian) [ci skip] * New translations simple_form.en.yml (Finnish) [ci skip] * New translations en.yml (Finnish) [ci skip] * New translations en.json (Finnish) [ci skip] * New translations doorkeeper.en.yml (Basque) [ci skip] * New translations activerecord.en.yml (Basque) [ci skip] * New translations simple_form.en.yml (Basque) [ci skip] * New translations en.yml (Basque) [ci skip] * New translations en.json (Armenian) [ci skip] * New translations en.yml (Japanese) [ci skip] * New translations doorkeeper.en.yml (Georgian) [ci skip] * New translations activerecord.en.yml (Georgian) [ci skip] * New translations simple_form.en.yml (Georgian) [ci skip] * New translations en.yml (Georgian) [ci skip] * New translations en.json (Georgian) [ci skip] * New translations doorkeeper.en.yml (Japanese) [ci skip] * New translations activerecord.en.yml (Japanese) [ci skip] * New translations simple_form.en.yml (Japanese) [ci skip] * New translations en.yml (Armenian) [ci skip] * New translations doorkeeper.en.yml (Italian) [ci skip] * New translations activerecord.en.yml (Italian) [ci skip] * New translations simple_form.en.yml (Italian) [ci skip] * New translations en.yml (Italian) [ci skip] * New translations doorkeeper.en.yml (Armenian) [ci skip] * New translations activerecord.en.yml (Armenian) [ci skip] * New translations simple_form.en.yml (Armenian) [ci skip] * New translations doorkeeper.en.yml (Russian) [ci skip] * New translations en.yml (Slovak) [ci skip] * New translations activerecord.en.yml (Spanish, Argentina) [ci skip] * New translations en.json (Portuguese, Brazilian) [ci skip] * New translations doorkeeper.en.yml (Icelandic) [ci skip] * New translations activerecord.en.yml (Icelandic) [ci skip] * New translations en.yml (Icelandic) [ci skip] * New translations doorkeeper.en.yml (Galician) [ci skip] * New translations activerecord.en.yml (Galician) [ci skip] * New translations simple_form.en.yml (Portuguese, Brazilian) [ci skip] * New translations en.yml (Portuguese, Brazilian) [ci skip] * New translations activerecord.en.yml (Portuguese, Brazilian) [ci skip] * New translations en.json (Urdu (Pakistan)) [ci skip] * New translations doorkeeper.en.yml (Persian) [ci skip] * New translations simple_form.en.yml (Spanish, Argentina) [ci skip] * New translations en.yml (Spanish, Argentina) [ci skip] * New translations doorkeeper.en.yml (Tamil) [ci skip] * New translations activerecord.en.yml (Tamil) [ci skip] * New translations simple_form.en.yml (Tamil) [ci skip] * New translations en.yml (Tamil) [ci skip] * New translations en.json (Tamil) [ci skip] * New translations activerecord.en.yml (Persian) [ci skip] * New translations doorkeeper.en.yml (Portuguese, Brazilian) [ci skip] * New translations simple_form.en.yml (Persian) [ci skip] * New translations en.yml (Persian) [ci skip] * New translations doorkeeper.en.yml (Indonesian) [ci skip] * New translations activerecord.en.yml (Indonesian) [ci skip] * New translations simple_form.en.yml (Indonesian) [ci skip] * New translations en.yml (Indonesian) [ci skip] * New translations en.yml (Urdu (Pakistan)) [ci skip] * New translations doorkeeper.en.yml (Chinese Traditional) [ci skip] * New translations simple_form.en.yml (Slovak) [ci skip] * New translations simple_form.en.yml (Albanian) [ci skip] * New translations en.json (Swedish) [ci skip] * New translations doorkeeper.en.yml (Serbian (Cyrillic)) [ci skip] * New translations activerecord.en.yml (Serbian (Cyrillic)) [ci skip] * New translations simple_form.en.yml (Serbian (Cyrillic)) [ci skip] * New translations en.yml (Serbian (Cyrillic)) [ci skip] * New translations en.json (Serbian (Cyrillic)) [ci skip] * New translations doorkeeper.en.yml (Albanian) [ci skip] * New translations activerecord.en.yml (Albanian) [ci skip] * New translations en.yml (Albanian) [ci skip] * New translations simple_form.en.yml (Swedish) [ci skip] * New translations doorkeeper.en.yml (Slovenian) [ci skip] * New translations activerecord.en.yml (Slovenian) [ci skip] * New translations simple_form.en.yml (Slovenian) [ci skip] * New translations en.yml (Slovenian) [ci skip] * New translations en.json (Slovenian) [ci skip] * New translations doorkeeper.en.yml (Slovak) [ci skip] * New translations activerecord.en.yml (Slovak) [ci skip] * New translations en.yml (Swedish) [ci skip] * New translations activerecord.en.yml (Swedish) [ci skip] * New translations activerecord.en.yml (Chinese Traditional) [ci skip] * New translations doorkeeper.en.yml (Ukrainian) [ci skip] * New translations simple_form.en.yml (Chinese Traditional) [ci skip] * New translations en.yml (Chinese Traditional) [ci skip] * New translations doorkeeper.en.yml (Chinese Simplified) [ci skip] * New translations activerecord.en.yml (Chinese Simplified) [ci skip] * New translations simple_form.en.yml (Chinese Simplified) [ci skip] * New translations en.yml (Chinese Simplified) [ci skip] * New translations activerecord.en.yml (Ukrainian) [ci skip] * New translations doorkeeper.en.yml (Swedish) [ci skip] * New translations simple_form.en.yml (Ukrainian) [ci skip] * New translations en.yml (Ukrainian) [ci skip] * New translations doorkeeper.en.yml (Turkish) [ci skip] * New translations activerecord.en.yml (Turkish) [ci skip] * New translations simple_form.en.yml (Turkish) [ci skip] * New translations en.yml (Turkish) [ci skip] * New translations doorkeeper.en.yml (Standard Moroccan Tamazight) [ci skip] * New translations en.yml (Vietnamese) [ci skip] * New translations en.yml (Vietnamese) [ci skip] * New translations en.json (Vietnamese) [ci skip] * New translations en.yml (Vietnamese) [ci skip] * New translations en.json (Italian) [ci skip] * New translations devise.en.yml (Italian) [ci skip] * New translations en.json (Czech) [ci skip] * New translations en.yml (Czech) [ci skip] * New translations doorkeeper.en.yml (Czech) [ci skip] * New translations en.json (Czech) [ci skip] * New translations en.yml (Czech) [ci skip] * New translations doorkeeper.en.yml (Czech) [ci skip] * New translations en.yml (Czech) [ci skip] * New translations en.json (Chinese Simplified) [ci skip] * New translations en.yml (Scottish Gaelic) [ci skip] * New translations simple_form.en.yml (Scottish Gaelic) [ci skip] * New translations en.yml (Scottish Gaelic) [ci skip] * New translations en.json (Thai) [ci skip] * New translations en.yml (Thai) [ci skip] * New translations doorkeeper.en.yml (Thai) [ci skip] * New translations en.yml (Scottish Gaelic) [ci skip] * New translations simple_form.en.yml (Scottish Gaelic) [ci skip] * New translations activerecord.en.yml (Scottish Gaelic) [ci skip] * New translations doorkeeper.en.yml (Scottish Gaelic) [ci skip] * New translations en.json (Thai) [ci skip] * New translations en.json (Thai) [ci skip] * New translations simple_form.en.yml (Thai) [ci skip] * New translations activerecord.en.yml (Thai) [ci skip] * New translations en.json (Thai) [ci skip] * i18n-tasks normalize * yarn manage:translations * Fix normalization and enable es-MX
2021-05-11Merge branch 'glitch'Starfall
2021-05-07Fix older migrations on Ruby 3 (#16174)Claire
2021-05-06Add Ruby 3.0 support (#16046)Claire
* Fix issues with POSIX::Spawn, Terrapin and Ruby 3.0 Also improve the Terrapin monkey-patch for the stderr/stdout issue. * Fix keyword argument handling throughout the codebase * Monkey-patch Paperclip to fix keyword arguments handling in validators * Change validation_extensions to please CodeClimate * Bump microformats from 4.2.1 to 4.3.1 * Allow Ruby 3.0 * Add Ruby 3.0 test target to CircleCI * Add test for admin dashboard warnings * Fix admin dashboard warnings on Ruby 3.0
2021-05-05Fix media processing getting stuck on too much stdin/stderr (#16136)Eugen Rochko
* Fix media processing getting stuck on too much stdin/stderr See thoughtbot/terrapin#5 * Remove dependency on paperclip-av-transcoder gem * Remove dependency on streamio-ffmpeg gem * Disable stdin on ffmpeg process
2021-04-22Add af, gd and si locales (#16090)Eugen Rochko
* Add af, gd and si locales * i18n-tasks normalize * Fix inconsistent interpolations Co-authored-by: GunChleoc <fios@foramnagaidhlig.net> Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2021-04-12Remove dependency on pluck_each gem (#16012)Eugen Rochko
2021-04-02Merge branch 'glitch'Starfall
2021-03-24Update Mastodon to Rails 6.1 (#15910)Claire
* Update devise-two-factor to unreleased fork for Rails 6 support Update tests to match new `rotp` version. * Update nsa gem to unreleased fork for Rails 6 support * Update rails to 6.1.3 and rails-i18n to 6.0 * Update to unreleased fork of pluck_each for Ruby 6 support * Run "rails app:update" * Add missing ActiveStorage config file * Use config.ssl_options instead of removed ApplicationController#force_ssl Disabled force_ssl-related tests as they do not seem to be easily testable anymore. * Fix nonce directives by removing Rails 5 specific monkey-patching * Fix fixture_file_upload deprecation warning * Fix yield-based test failing with Rails 6 * Use Rails 6's index_with when possible * Use ActiveRecord::Cache::Store#delete_multi from Rails 6 This will yield better performances when deleting an account * Disable Rails 6.1's automatic preload link headers Since Rails 6.1, ActionView adds preload links for javascript files in the Links header per default. In our case, that will bloat headers too much and potentially cause issues with reverse proxies. Furhermore, we don't need those links, as we already output them as HTML link tags. * Switch to Rails 6.0 default config * Switch to Rails 6.1 default config * Do not include autoload paths in the load path
2021-03-19Use more robust hook for loading timestamp_id function into database (#15919)Claire
2021-03-19Prepare Mastodon for zeitwerk autoloader (#15917)Claire
* Prepare Mastodon for zeitwerk autoloader (Rails 6) Add inflections and rename/move a few classes. In particular, app/lib/exceptions.rb and app/lib/sanitize_config.rb were manually loaded while still in autoload paths. * Add inflection for Url → URL
2021-02-21Merge remote-tracking branch 'glitchsoc/main' into mainStarfall
2021-02-11Drop dependency on secure_headers, fix response headers (#15712)Claire
* Drop dependency on secure_headers, use always_write_cookie instead * Fix cookies in Tor Hidden Services by moving configuration to application.rb * Instead of setting always_write_cookie at boot, monkey-patch ActionDispatch
2021-02-11Fix obsolete digitalocean.rake file breaking rake tasks (#15618)Claire
2021-01-13Merge branch 'glitch' into mainStarfall
2021-01-10Optimize map { ... }.compact calls (#15513)luigi
* Optimize map { ... }.compact using Enumerable#filter_map, supported since Ruby 2.7 * Add poyfill for Enumerable#filter_map