about summary refs log tree commit diff
path: root/lib
AgeCommit message (Collapse)Author
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-06-03Merge branch 'main' into glitch-soc/merge-upstreamClaire
2021-06-03Update emoji codepoint mappings to v13.1 (#16352)Claire
2021-06-03Bump version to 3.4.1 (#16350)Eugen Rochko
2021-06-02Fix migration script not being able to run if it fails midway (#16312)Claire
* Fix migration script not being able to run if it fails midway * Fix old migration script * Fix old migration script * Refactor CorruptionError
2021-06-02Fix account deletion sometimes failing because of optimistic locks (#16317)Claire
* Fix account deletion sometimes failing because of optimistic locks In some rare occasions[1], deleting accounts would fail with a `StaleObjectError` exception. Indeed, account deletion manually sets the `AccountStat` values without handling cases where the optimistic locking on `AccountStat` would fail. To my knowledge, with the rewrite of account counters in #15913, the `DeleteAccountService` is now the only place that changes the counters in a way that is not atomic. Since in this specific case, we do not care about the previous values of the account counters, it appears we don't need locking at all for this table anymore. [1]: https://discourse.joinmastodon.org/t/account-cant-be-deleted/3602 * Bump MAX_SUPPORTED_VERSION in maintenance script
2021-06-01Fix `tootctl search deploy` on Ruby 3 (#16346)Claire
Fixes #16344
2021-05-17Merge branch 'glitch'Starfall
2021-05-17Merge branch 'main' into glitch-soc/merge-upstreamClaire
Conflicts: - `README.md`: our READMEs are entirely different and upstream's has been updated. Kept our README.
2021-05-16Bump version to 3.4.0 (#16239)Eugen Rochko
2021-05-16Add more checks to `repo:check_locales_files` (#16249)Eugen Rochko
2021-05-12Update fix-duplicates maintenance script to support latest migrations (#16231)Claire
* Update maintenance script to support latest database migrations * Update Account#merge_with!
2021-05-12Merge branch 'main' into glitch-soc/merge-upstreamClaire
2021-05-11Fix animated GIF generates animated thumbnail (#16216)rinsuki
2021-05-11Merge branch 'glitch'Starfall
2021-05-10Bump version to 3.4.0rc2 (#16206)Eugen Rochko
2021-05-09Merge branch 'main' into glitch-soc/merge-upstreamClaire
2021-05-09Add a Redis environment variable for sidekiq (#16188)Takeshi Umeda
2021-05-08Bump version to 3.4.0rc1 (#16053)Eugen Rochko
2021-05-07Merge branch 'main' into glitch-soc/merge-upstreamClaire
- `app/views/statuses/_simple_status.html.haml`: Small markup change in glitch-soc, on a line that has been modified by upstream. Ported upstream changes.
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 redownload worker retrying on unexpected response codes (#16111)Eugen Rochko
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-05-05Fix how to change connection pool for rails 6 (#16158)Takeshi Umeda
* Fix how to change connection pool for rails 6 * Fix to match the code elsewhere
2021-04-29Fix cache redis not being used (#16131)Takeshi Umeda
2021-04-27Fix typo in db.rake (#16126)Ikko Ashimine
occured -> occurred
2021-04-20Merge branch 'main' into glitch-soc/merge-upstreamClaire
Conflicts: - `README.md`: Upstream updated copyright year, we don't mention it so kept our version. - `app/controllers/admin/dashboard_controller.rb`: Not really a conflict, upstream change (removing the spam checker) too close to glitch-soc changes. Ported upstream changes. - `app/models/form/admin_settings.rb`: Same. - `app/services/remove_status_service.rb`: Same. - `app/views/admin/settings/edit.html.haml`: Same. - `config/settings.yml`: Same. - `config/environments/production.rb`: Not a real conflict, upstream added a default HTTP header, but we have extra headers in glitch-soc. Added the header.
2021-04-13Add border to 🚲 emoji (#16035)Claire
2021-04-12Remove dependency on pluck_each gem (#16012)Eugen Rochko
2021-04-11Fix DB connection pool settings in CLI (#15983)abcang
2021-04-05Merge branch 'main' into glitch-soc/merge-upstreamClaire
2021-04-02Merge branch 'glitch'Starfall
2021-03-31Fix DB connection pool settings in CLI (#15983)abcang
2021-03-31Merge branch 'main' into glitch-soc/merge-upstreamClaire
2021-03-24tootctl emoji import: case insensitive duplicate check (#15738)Stanislas
2021-03-24Merge branch 'main' into glitch-soc/merge-upstreamClaire
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-24Change mastodon:setup to not call assets:precompile in docker (#13942)Claire
It appears assets are built during image build, and they shouldn't need to be rebuilt, since we now have reproducible builds.
2021-03-19Merge branch 'main' into glitch-soc/merge-upstreamClaire
2021-03-19Improve account counters handling (#15913)Claire
* Improve account counters handling * Use ActiveRecord::Base::sanitize_sql to pass values instead of interpolating them Keep using string interpolation for `key` as it is safe and using “ActiveRecord::Base::sanitize_sql_hash_for_assignment” would require stitching bits of SQL in a way that is not more easily checked for safety. * Add migration hook to catch PostgreSQL versions earlier than 9.5
2021-03-19Remove MySQL-specific code from Mastodon::MigrationHelpers (#15924)Claire
Mastodon::MigrationHelpers has been forked from Gitlab a long time ago, but Mastodon has never supported using a MySQL database. Removing MySQL support from Mastodon::MigrationHelpers makes it a little easier to maintain. In particular, it removes code that would need updating with Rails 6.
2021-03-19Change deduplication order of tootctl maintenance fix-duplicates (#15923)Claire
Hopefully fixes #15922 Also update support up to latest database schema version
2021-03-19Further preparation for Rails 6 (#15916)Claire
* Use ActiveRecord::Result#to_ary instead of deprecated to_hash They do the same thing, and to_hash has been removed from Rails 6.1 * Explicitly name polymorphic indexes to workaround a bug in Rails 6.1 cf. https://github.com/rails/rails/issues/41693 * Fix incorrect usage of “foreign_key” in migration script * Use `ActiveModel::Errors#delete` instead of deprecated clear method * Fix link headers tests on Rails 6.1 Rails 6.1 adds values to the Link header by default, thus it is not a LinkHeader object anymore. Fix the test to parse the Link header instead of assuming it is a LinkHeader.
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-03-17Prepare Mastodon for Rails 6 (#15911)Claire
* Fix misuse of foreign_type * Fix use of removed "add_template_helper" * Use response.media_type instead of response.content_type in tests * Fix CSV export controller test on Rails 6 Rails 6 sets a "filename*" field in the Content-Disposition header to explicitly encode the filename as UTF-8. This changes checks the first part of the Content-Disposition header so it matches in both Rails 5 and Rails 6. * Fix emoji formatting with Rails 6 * Make emoji output more idiomatic and robust * Switch from redis-rails gem to built-in Rails redis cache storage
2021-03-04Merge remote-tracking branch 'glitchsoc/main' into mainStarfall
2021-03-02Merge branch 'main' into glitch-soc/merge-upstreamClaire
Conflicts: - `app/validators/status_length_validator.rb`: Upstream changes too close to glitch-soc MAX_CHARS changes, but not a real conflict. Applied upstream changes. - `package.json`: glitch-soc-only dependency textually too close to a dependency updated upstream, not a real conflict. Applied upstream changes.
2021-03-01Add borders to 📱 and 📲 emojis (#15794)Claire