Skip to content

v4.2.1

Compare
Choose a tag to compare
@ClearlyClaire ClearlyClaire released this 10 Oct 16:49
· 91 commits to stable-4.2 since this release
74dd325

Mastodon

This is a bugfix release for the 4.2.0 version, if you're installing from an earlier version, please check the 4.2.0 release notes as they contain important information on how to update.

⚠️ We recently released important security updates.

If you don't want or can't update to 4.2.x yet, the security updates are also available for the 4.1.x branch, the 4.0.x branch and the 3.5.x branch.

Changelog

Added

  • Add redirection on /deck URLs for logged-out users (ClearlyClaire)
  • Add support for v4.2.0 migrations to tootctl maintenance fix-duplicates (ClearlyClaire)

Changed

  • Change some worker lock TTLs to be shorter-lived (ClearlyClaire)
  • Change user archive export allowed period from 7 days to 6 days (suddjian)

Fixed

  • Fix clicking on already-opened thread post scrolling to the top of the thread (ClearlyClaire, ClearlyClaire)
  • Fix some remote posts getting truncated (ClearlyClaire)
  • Fix some cases of infinite scroll code trying to fetch inaccessible posts in a loop (ClearlyClaire)
  • Fix Vary headers not being set on some redirects (ClearlyClaire)
  • Fix mentions being matched in some URL query strings (mjankowski)
  • Fix unexpected linebreak in version string in the Web UI (vmstan)
  • Fix double scroll bars in some columns in advanced interface (ClearlyClaire)
  • Fix boosts of local users being filtered in account timelines (ClearlyClaire)
  • Fix multiple instances of the trend refresh scheduler sometimes running at once (ClearlyClaire)
  • Fix importer returning negative row estimates (jgillich)
  • Fix incorrectly keeping outdated update notices absent from the API endpoint (ClearlyClaire)
  • Fix import progress not updating on certain failures (ClearlyClaire)
  • Fix websocket connections being incorrectly decremented twice on errors (ThisIsMissEm)
  • Fix explore prompt appearing because of posts being received out of order (ClearlyClaire)
  • Fix explore prompt sometimes showing up when the home TL is loading (ClearlyClaire)
  • Fix link handling of mentions in user profiles when logged out (ClearlyClaire)
  • Fix filtering audit log for entries about disabling 2FA (ClearlyClaire)
  • Fix notification toasts not respecting reduce-motion (c960657)
  • Fix retention dashboard not displaying correct month (vmstan)
  • Fix tIME chunk not being properly removed from PNG uploads (TheEssem)
  • Fix division by zero in video in bitrate computation code (ClearlyClaire)
  • Fix inefficient queries in “Follows and followers” as well as several admin pages (ClearlyClaire, ClearlyClaire)
  • Fix ActiveRecord using two connection pools when no replica is defined (ClearlyClaire)
  • Fix the search documentation URL in system checks (renchap)

Upgrade notes

To get the code for v4.2.1, use git fetch && git checkout v4.2.1.

As always, make sure you have backups of the database before performing any upgrades. If you are using docker-compose, this is how a backup command might look: docker exec mastodon_db_1 pg_dump -Fc -U postgres postgres > name_of_the_backup.dump

Dependencies

External dependencies have not changed since v4.2.0, the compatible Ruby, PostgreSQL, Node, Elasticsearch and Redis versions are the same, that is:

  • Ruby: 3.0 to 3.2
  • PostgreSQL: 10 or newer
  • Elasticsearch (recommended, for full-text search): 7.x (OpenSearch should also work)
  • LibreTranslate (optional, for translations): 1.3.3 or newer
  • Redis: 4 or newer
  • Node: 16 or newer
  • ImageMagick: 6.9.7-7 or newer

If your uploaded images are broken after the upgrade, it means your installed ImageMagick version is older than the new minimum version (6.9.7-7), for example if you are running Ubuntu 18.04. If this happens, you can find more information and ways to fix it on this page.

Update steps

The following instructions are for updating from 4.2.0.

If you are upgrading directly from an earlier release, please carefully read the upgrade notes for the skipped releases as well, as they often require extra steps such as database migrations.

Non-Docker only:

  1. Install dependencies: bundle install and yarn install --frozen-lockfile
  2. Precompile the assets: RAILS_ENV=production bundle exec rails assets:precompile
  3. Restart all Mastodon processes

Using Docker:

  1. Restart all Mastodon processes