Skip to content

@Gargron Gargron released this Jan 20, 2018 · 2999 commits to master since this release


Note: This is a release candidate. It is intended to be stable, but not guaranteed.


Improved e-mail digest feature (#6252)

The e-mail digest feature has existed for a long time, but the sending was not automated and had to be triggered by a manual task run. Many admins have not configured a cronjob to run it, and so the feature has never really seen wide use. What is a digest? A digest is sent after 20 days of inactivity, only if the recipient has been mentioned during that period. The digest summarizes the mentions the recipient received.

The digest sending is now part of Sidekiq, therefore no cronjob configuration is necessary anymore. Furthermore, the digest e-mails now have a pretty HTML version as well as the old plain-text one.

HTML e-mail templates for all e-mails (#6256, #6263, #6272, #6301)

All transactional e-mails in Mastodon have been reworked to improve clarity and phrasing. They now have pretty HTML versions as well as the old plain-text ones. The design is responsive and has been tested among a variety of e-mail clients.

Welcome e-mail (#6273)

After activating a new account by confirming the e-mail address, the user will receive a welcome e-mail. This e-mail outlines the first steps and provides some helpful tips.

Home timeline improvement for returning users (#6251)

This is a fix as well as a feature. You might know that Mastodon stops storing the home timeline for users who haven't been online longer than 2 weeks, to use storage and processing power optimally. When a user returns after 2 weeks, the home timeline must be regenerated. This has been somewhat buggy and opaque in the past.

Bugs related to this feature have been fixed. Furthermore, the API of the home timeline was changed in a non-breaking way to return HTTP status code 206 (Partial Content) when the home timeline is in the process of being regenerated. This information will now allow the web UI to display a fancy loading graphic to communicate this process to the user. The web UI will keep refreshing the home timeline until it's done regenerating. This should eliminate the problem of users coming back to seemingly empty timelines.


  • Web UI now supports web share. Supporting browsers can now register the web app as a receiver of share activities from other apps (#6278)
  • The recommended version of Ruby has been upgraded to 2.5.0. There is no rush to upgrade that, however. If you'd like to keep using 2.4.2 and rbenv complains, simply overwrite the value inside the .ruby-version file (#6097)
  • The onboarding (tutorial) modal window has been updated and improved (#6303)


  • Handle sessions that can't be translated (#6245)
  • Fix column headers accessibility (#6199)
  • Add some browsers (#6246)
  • Make columns-area unscrollable when modal opened (#6241)
  • Suppress CSRF token warnings in logs (#6240)
  • Allow attributedTo in a status to be an embedded object (#6238)
  • Fix #6128 - Display unfollow button even if account moved (#6258)
  • Surround mid-text display names with bdi tags (#6257)
  • When must_be_following_dm is on, only notify if recipient dm'ed user (#6283)
  • Fix regeneration marker not expiring (#6290)
  • Replace drawer elephant graphic with a vector image (#6286)
  • Retry delivering toots over ActivityPub for about 2 days (#6298)
  • Fix "tzinfo-data is not present" docker error (#6300)
  • Process mentions and reblogs even from resolved threads (#6299)
  • Do not throw away statuses obtained via websocket when API request finishes (#6302)
  • Make text e-mails consistent with HTML ones in UserMailer (#6291)
  • Fix #6269 - Render LOCAL_DOMAIN as unicode in presentational views (#6305)

Upgrade notes:

Both Docker and non-Docker:

  • This release includes database migrations, that means you need to run RAILS_ENV=production bundle exec rails db:migrate (in Docker: docker-compose run --rm web rails db:migrate).
  • This release includes changes to assets, that means you need to run RAILS_ENV=production bundle exec rails assets:precompile (in Docker: docker-compose run --rm web rails assets:precompile)
  • Run RAILS_ENV=production bundle exec rails mastodon:maintenance:remove_regeneration_markers (in Docker: docker-compose run --rm web rails mastodon:maintenance:remove_regeneration_markers) once to fix a past issue with bugged out home timelines that were supposed to be regenerated

Contributors to this release:


Assets 2
You can’t perform that action at this time.