@Gargron Gargron released this Sep 3, 2017 · 2005 commits to master since this release

Assets 2


ActivityPub is a new federated web protocol. From this release onward it is the primary protocol of Mastodon. We will remain compatible with OStatus for the foreseeable future, but version 2.0 of Mastodon will stop sending private toots over it. After installation, accounts in the database will slowly start upgrading. One of the immediate and obvious perks of this new protocol is more complete conversation views on every instance (presuming all participants are upgraded). For more, see this blog post.


  • During Docker build: Use multiple cores in bundler and make (#4544)
  • Web perf: Cache status height (#4439)
  • Fixes to the about page (#4554, #4548, #4682)
  • Add missing content type on throttled responses (#4558)
  • Add coalesce option to avatar and header convert processor (#4552)
  • Add missing @ to the onboarding modal (#4560)
  • Add missing scroll to top to some column headers (#4563)
  • Add favourited toot to favourites column (#4562)
  • Remove toot from favorites column when unfavorited (#4597)
  • Fix emoji picker scrollbar style (#4572)
  • Extend Devise remember_me longevity to 1 year instead of 2 weeks (#4587)
  • Fix search (regression from #4589) (#4594)
  • Fix require_user! behavior when not logged in (#4604)
  • Don't send Link header when prev and next links are empty (#4633)
  • Re-add missing token authorization for /api/v1/verify_credentials (#4650)
  • Refactored streaming connections (#4645)
  • Do not try to re-subscribe to unsubscribed accounts (#4653)
  • Fix visual line-break glitch with .invisible parts of links (#4655)
  • Increase contrast in landing pages (#4567)
  • Periodically remove expired PuSH subscribers (#4654)
  • Disable babel-loader cache when in development environment (#4684)
  • Don't load Roboto webfont when system font is used in the app (#4591)
  • Automatically authorize pending incoming follow requests after unlocking account (#4658)
  • Adjust RTL styles (#4712)
  • Do not scroll the columns area due to redirection (#4541)
  • Remove unnecessary indices (#4738)
  • Add close tag of iframe for OEmbed response (#4745)
  • Docker: Update to Alpine 3.6 (#4747)
  • Make first use less overwhelming with browser permissions: Ask for desktop notifications after 1 minute, ask to register protocol handler after 5 minutes (#4760)
  • Use system's default font (when selected) on non web UI pages too (#4553)
  • Link previews storage and fetching reworked/optimized (#4642)
  • Fix text position of "sensitive content" spoiler in Safari (Mac/iPhone) (#4570)
  • Make "unfollow" remove pending outgoing follow requests too (#4781)
  • Validate presence of data in imports (#4782)


  • πŸŽ†πŸŽ‡ ActivityPub πŸŽ‡πŸŽ†
  • Include the stats from the /about/more page in API response about instance (#4074)
  • Add protocol handler. Mastodon can now respond to URLs that begin with web+mastodon://, e.g. specially crafted "follow me" buttons would automatically open your correct instance from any webpage (#4511)
    • web+mastodon://follow? opens follow dialog for alice
    • web+mastodon://share?text=Lorem+ipsum opens new toot dialog with preset text "Lorem ipsum"
  • Redesign public profiles. Add no-replies, with-replies, only-media filters (#4608, #4711, #4713)
  • Developer UI for OAuth applications (#2758, #4664, #4671)
  • Add Mastodon::Source.url for forks (#4643)
  • Pinned statuses (#4675, #4690)
  • Update status embeds with better URLs, better design, branded follow button using protocol handler (#4742)
  • "Embed" modal in web UI (#4748, #4759, #4773)

Upgrade notes:

Non-Docker only:

  • Dependency updates: bundle install and yarn install

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)

Contributors to this release: