v4.2.10
Warning
This release is an important security release fixing a major security issue.
A corresponding security release is available for the 4.1.x branch.
Note
If you are using nightly builds, do not use this release but update to nightly.2024-07-05-security
or newer instead. If you are on the main
branch, update to the latest commit.
Changelog
Security
- Fix incorrect permission checking on multiple API endpoints (GHSA-58x8-3qxw-6hm7)
- Fix incorrect authorship checking when processing some activities (CVE-2024-37903, GHSA-xjvf-fm67-4qc3)
- Fix ongoing streaming sessions not being invalidated when application tokens get revoked (GHSA-vp5r-5pgw-jwqx)
- Update dependencies
Added
- Add yarn version specification to avoid confusion with Yarn 3 and Yarn 4
Changed
- Change preview cards generation to skip unusually long URLs (oneiros)
- Change search modifiers to be case-insensitive (Gargron)
- Change
STATSD_ADDR
handling to emit a warning rather than crashing if the address is unreachable (timothyjrogers) - Change PWA start URL from
/home
to/
(ClearlyClaire)
Removed
- Removed dependency on
posix-spawn
(ClearlyClaire)
Fixed
- Fix scheduled statuses scheduled in less than 5 minutes being immediately published (danielmbrasil)
- Fix encoding detection for link cards (oneiros)
- Fix
/admin/accounts/:account_id/statuses/:id
for edited posts with media attachments (ClearlyClaire) - Fix duplicate
@context
attribute in user archive export (ClearlyClaire)
Upgrade notes
To get the code for v4.2.10, use git fetch && git checkout v4.2.10
.
Note
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
Important
Mastodon is now performing stricter checks to prevent client IP address spoofing. This means that if one of your reverse proxy is not on Mastodon's local network, you will need to set TRUSTED_PROXY_IP
accordingly, listing the IP address of every trusted reverse-proxy (including local network ones). See the documentation for more information.
Dependencies
With the exception of Ruby's recommended version, 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
Update steps
Tip
The charlock_holmes
gem may fail to build on some systems with recent versions of gcc
.
If you run into such an issue, try BUNDLE_BUILD__CHARLOCK_HOLMES="--with-cxxflags=-std=c++17" bundle install
.
The following instructions are for updating from 4.2.9.
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:
- Install dependencies:
bundle install
andyarn install --frozen-lockfile
- Restart all Mastodon processes
Using Docker:
- Restart all Mastodon processes