Changelog History
Page 3
-
v3.1.3 Changes
April 05, 2020๐ Changelog
โ Added
- โ Add ability to filter audit log in admin UI (Gargron)
- โ Add titles to warning presets in admin UI (Gargron)
- โ Add option to include resolved DNS records when blacklisting e-mail domains in admin UI (Gargron)
- โ Add ability to delete files uploaded for settings in admin UI (ThibG)
- โ Add sorting by username, creation and last activity in admin UI (ThibG)
- โ Add explanation as to why unlocked accounts may have follow requests in web UI (ThibG)
- โ Add link to bookmarks to dropdown in web UI (mayaeh)
- โ Add support for links to statuses in announcements to be opened in web UI (ThibG, ThibG)
- โ Add tooltips to audio/video player buttons in web UI (ariasuni)
- โ Add submit button to the top of preferences pages (guigeekz)
- โ Add specific rate limits for posting, following and reporting (Gargron, Gargron)
- 300 posts every 3 hours
- 400 follows or follow requests every 24 hours
- 400 reports every 24 hours
- โ Add federation support for the "hide network" preference (ThibG)
- โ Add
--skip-media-remove
option totootctl statuses remove
(tateisu)
๐ Changed
- ๐ Change design of polls in web UI (Sasha-Sorokin, ThibG)
- ๐ Change status click areas in web UI to be bigger (ariasuni)
- ๐ Change
tootctl media remove-orphans
to work for all classes (Gargron) - ๐ Change local media attachments to perform heavy processing asynchronously (Gargron)
- ๐ Change video uploads to always be converted to H264/MP4 (Gargron, ThibG, ThibG)
- ๐ Change video uploads to enforce certain limits (Gargron)
- Dimensions smaller than 1920x1200px
- Frame rate at most 60fps
- ๐ Change the tooltip "Toggle visibility" to "Hide media" in web UI (ariasuni)
- ๐ Change description of privacy levels to be more intuitive in web UI (ariasuni)
- ๐ Change GIF label to be displayed even when autoplay is enabled in web UI (koyuawsmbrtn)
- ๐ Change the string "Hide everything from โฆ" to "Block domain โฆ" in web UI (ThibG, mayaeh)
- ๐ Change wording of media display preferences to be more intuitive (ariasuni)
๐ Deprecated
POST /api/v1/media
โPOST /api/v2/media
(Gargron)
๐ Fixed
- Fix
tootctl media remove-orphans
ignoringPAPERCLIP_ROOT_PATH
(Gargron) - ๐ Fix returning results when searching for URL with non-zero offset (Gargron)
- ๐ Fix pinning a column in web UI sometimes redirecting out of web UI (Gargron)
- ๐ Fix background jobs not using locks like they are supposed to (Gargron)
- ๐ Fix content warning being unnecessarily cleared when hiding content warning input in web UI (ThibG)
- ๐ Fix "Show more" not switching to "Show less" on public pages (ThibG)
- ๐ Fix import overwrite option not being selectable (noellabo)
- ๐ Fix wrong color for ellipsis in boost confirmation dialog in web UI (ariasuni)
- ๐ Fix unnecessary unfollowing when importing follows with overwrite option (noellabo)
- ๐ Fix 404 and 410 API errors being silently discarded in web UI (ThibG)
- ๐ Fix OCR not working on Safari because of unsupported worker-src CSP (ThibG)
- ๐ Fix media not being marked sensitive when a content warning is set with no text (ThibG)
- ๐ Fix crash after deleting announcements in web UI (codesections, ThibG)
- ๐ Fix bookmarks not being searchable (Kjwon15, noellabo)
- ๐ Fix reported accounts not being whitelisted from further spam checks when resolving a spam check report (ThibG)
- ๐ Fix web UI crash in single-column mode on prehistoric browsers (ThibG)
- ๐ Fix some timeouts when searching for URLs (ThibG)
- ๐ Fix detailed view of direct messages displaying a 0 boost count in web UI (ThibG)
- ๐ Fix regression in โEdit mediaโ modal in web UI (ThibG)
- ๐ Fix public posts from silenced accounts not being changed to unlisted visibility (ThibG)
- ๐ Fix error when searching for URLs that contain the mention syntax (ThibG)
- ๐ Fix text area above/right of emoji picker being accidentally clickable in web UI (ariasuni)
- ๐ Fix too large announcements not being scrollable in web UI (ThibG)
- ๐ Fix
tootctl media remove-orphans
crashing when encountering invalid media (ThibG) - ๐ Fix installation failing when Redis password contains special characters (ThibG)
- ๐ Fix announcements with fully-qualified mentions to local users crashing web UI (ThibG)
๐ Security
- ๐ Fix re-sending of e-mail confirmation not being rate limited (Gargron)
โฌ๏ธ Upgrade notes
โฌ๏ธ > 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
๐ณ Non-Docker only:
- โฌ๏ธ The recommended Ruby version has been bumped to 2.6.6. You can upgrade, or you can continue using the old version by overwriting the .ruby-version file with e.g. 2.6.5 or 2.6.1 which were recommended previously
- Install dependencies:
bundle install
andyarn install
๐ณ Both Docker and non-Docker:
- Run database migrations:
- Non-Docker:
RAILS_ENV=production bundle exec rails db:migrate
- Docker:
docker-compose run --rm web rails db:migrate
๐ฑ 2. Precompile the assets: - Non-Docker:
RAILS_ENV=production bundle exec rails assets:precompile
- Docker: The assets are already precompiled during the build step
- Non-Docker:
- Restart all Mastodon processes
-
v3.1.2 Changes
February 27, 2020๐ Changelog
โ Added
- โ Add
--reset-password
option totootctl accounts modify
(ThibG) - โ Add source-mapped stacktrace to error message in web UI (ThibG)
๐ Fixed
- ๐ Fix dismissing an announcement twice raising an obscure error (ThibG)
- ๐ Fix misleading error when attempting to re-send a pending follow request (ThibG)
- ๐ Fix backups failing when files are missing from media attachments (ThibG)
- ๐ Fix duplicate accounts being created when fetching an account for its key only (ThibG)
- ๐ Fix
/web
redirecting to/web/web
in web UI (ThibG) - ๐ Fix previously OStatus-based accounts not being detected as ActivityPub (ThibG)
- ๐ Fix account JSON/RSS not being cacheable due to wrong mime type comparison (ThibG)
- ๐ Fix old browsers crashing because of missing
finally
polyfill in web UI (ThibG) - ๐ Fix account's bio not being shown if there are no proofs/fields in admin UI (ThibG)
- ๐ Fix sign-ups without checked user agreement being accepted through the web form (ThibG)
- ๐ Fix non-x64 architectures not being able to build Docker image because of hardcoded Node.js architecture (SaraSmiseth)
- ๐ Fix invite request input not being shown on sign-up error if left empty (ThibG)
- ๐ Fix some migration hints mentioning GitLab instead of Mastodon (saper)
๐ Security
- ๐ Fix leak of arbitrary statuses through unfavourite action in REST API (Gargron)
โฌ๏ธ Upgrade notes
๐ณ Non-Docker only:
- Install dependencies:
bundle install
andyarn install
๐ณ Both Docker and non-Docker:
๐ฑ 1. Precompile the assets:
- Non-Docker:
RAILS_ENV=production bundle exec rails assets:precompile
- Docker: The assets are already precompiled during the build step
- Restart all Mastodon processes
- โ Add
-
v3.1.1 Changes
February 10, 2020๐ Changelog
๐ This release fixes an issue during the
bundle install
step that appeared in v3.1.0 due to a dependency being yanked from the package repository. For all other notes, please see v3.1.0 -
v3.1.0 Changes
February 09, 2020๐ Changelog
โ Added
- โ Add bookmarks (ThibG, Gargron, Gomasy)
- โ Add announcements (Gargron, Gargron, Gargron, Gargron, Gargron, Gargron, Gargron, Gargron, Gargron, Gargron, ThibG, ThibG, Gargron, ThibG, ThibG)
- โ Add number animations in web UI (Gargron, Gargron)
- โ Add
kab
,is
,kn
,mr
,ur
to available locales (Gargron, BoFFire, Gargron) - โ Add profile filter category (ThibG)
- โ Add ability to add oneself to lists (ThibG)
- โ Add hint how to contribute translations to preferences page (Sasha-Sorokin)
- โ Add signatures to statuses in archive takeout (noellabo)
- โ Add support for
magnet:
andxmpp
links (ThibG, ThibG) - โ Add
follow_request
notification type (ThibG) - โ Add ability to filter reports by account domain in admin UI (ThibG)
- โ Add link to search for users connected from the same IP address to admin UI (ThibG)
- โ Add link to reports targeting a specific domain in admin view (ThibG)
- โ Add support for EventSource streaming in web UI (BenLubar)
- โ Add hotkey for opening media attachments in web UI (ThibG, Kjwon15)
- โ Add relationship-based options to status dropdowns in web UI (Gargron, ThibG, Gargron)
- โ Add support for submitting media description with
ctrl
+enter
in web UI (ThibG) - โ Add download button to audio and video players in web UI (NimaBoscarino)
- โ Add setting for whether to crop images in timelines in web UI (duxovni)
- โ Add support for
Event
activities (tcitworld) - โ Add basic support for
Group
actors (noellabo) - Add
S3_OVERRIDE_PATH_STYLE
environment variable (Gargron) - Add
S3_OPEN_TIMEOUT
environment variable (tateisu) - โ Add
LDAP_MAIL
environment variable (madmath03) - Add
LDAP_UID_CONVERSION_ENABLED
environment variable (madmath03) - โ Add
--remote-only
option totootctl emoji purge
(ThibG) - โ Add
tootctl media remove-orphans
(Gargron, Gargron) - โ Add
tootctl media lookup
command (irlcatgirl) - โ Add cache for OEmbed endpoints to avoid extra HTTP requests (Gargron)
- โ Add support for KaiOS arrow navigation to public pages (nolanlawson)
- โ Add
discoverable
to accounts in REST API (trwnh) - โ Add admin setting to disable default follows (ArisuOngaku)
- โ Add support for LDAP and PAM in the OAuth password grant strategy (ntl-purism, Gargron)
- ๐ Allow support for
Accept
/Reject
activities with a non-embedded object (puckipedia) - โ Add "Show thread" button to public profiles (Sasha-Sorokin)
๐ Changed
- Change
last_status_at
to be a date, not datetime in REST API (ThibG) - ๐ Change followers page to relationships page in admin UI (Gargron, Gargron)
- ๐ Change reported media attachments to always be hidden in admin UI (Gargron, ThibG)
- ๐ Change string from "Disable" to "Disable login" in admin UI (nileshkumar)
- ๐ Change report page structure in admin UI (Sasha-Sorokin)
- ๐ Change swipe sensitivity to be lower on small screens in web UI (umonaca)
- ๐ Change audio/video playback to stop playback when out of view in web UI (Gargron)
- ๐ Change media description label based on upload type in web UI (ThibG)
- ๐ Change large numbers to render without decimal units in web UI (noellabo)
- ๐ Change "Add a choice" button to be disabled rather than hidden when poll limit reached in web UI (ThibG, hinaloe)
- ๐ Change
tootctl statuses remove
to keep statuses favourited or bookmarked by local users (ThibG, Gomasy) - โก๏ธ Change domain block behavior to update user records (fast) before deleting data (slower) (ThibG)
- ๐ Change behaviour to strip audio metadata on uploads (hugogameiro)
- ๐ Change accepted length of remote media descriptions from 420 to 1,500 characters (ThibG)
- ๐ Change preferences pages structure (Sasha-Sorokin, mayaeh, Sasha-Sorokin, Sasha-Sorokin, Sasha-Sorokin, Sasha-Sorokin)
- ๐ Change format of titles in RSS (devkral)
- ๐ Change favourite icon animation from spring-based motion to CSS animation in web UI (ThibG)
- ๐ Change minimum required Node.js version to 10, and default to 12 (Shleeble, mkody, Shleeble)
- ๐ Change spam check to exempt server staff (ThibG)
- ๐ Change to fallback to to
Create
audience whenobject
has no defined audience (ThibG) - ๐ Change Twemoji library to 12.1.3 in web UI (koyuawsmbrtn)
- ๐ Change blocked users to be hidden from following/followers lists (ThibG)
- ๐ Change signature verification to ignore signatures with invalid host (Gargron)
โ Removed
๐ Fixed
- ๐ Fix some translatable strings being used wrongly (Sasha-Sorokin, Sasha-Sorokin, Sasha-Sorokin, mayaeh)
- ๐ Fix headline of public timeline page when set to local-only (ykzts)
- ๐ Fix space between tabs not being spread evenly in web UI (Sasha-Sorokin, Sasha-Sorokin, Sasha-Sorokin)
- ๐ Fix interactive delays in database migrations with no TTY (Gargron)
- ๐ Fix status overflowing in report dialog in web UI (ThibG)
- ๐ Fix unlocalized dropdown button title in web UI (Sasha-Sorokin)
- ๐ Fix media attachments without file being uploadable (Gargron)
- ๐ Fix unfollow confirmations in profile directory in web UI (ThibG)
- ๐ Fix duplicate
description
meta tag on accounts public pages (ThibG) - ๐ Fix slow query of federated timeline (notozeki)
- ๐ Fix not all of account's active IPs showing up in admin UI (Gargron, Gargron)
- ๐ Fix search by IP not using alternative browser sessions in admin UI (Gargron)
- ๐ Fix โX new itemsโ not showing up for slow mode on empty timelines in web UI (ThibG)
- ๐ Fix OEmbed endpoint being inaccessible in secure mode (Gargron)
- ๐ Fix proofs API being inaccessible in secure mode (Gargron)
- ๐ Fix Ruby 2.7 incompatibilities (ThibG, ThibG, Shleeble, zunda)
- ๐ Fix invalid poll votes being accepted in REST API (ThibG)
- ๐ Fix old migrations failing because of strong migrations update (ThibG, ThibG)
- ๐ Fix reuse of detailed status components in web UI (ThibG)
- ๐ Fix base64-encoded file uploads not being possible in REST API (Gargron, Gargron)
- ๐ Fix error due to missing authentication call in filters controller (Gargron)
- ๐ Fix uncaught unknown format error in host meta controller (Gargron)
- ๐ Fix URL search not returning private toots user has access to (ThibG, ThibG)
- ๐ Fix cache digesting log noise on status embeds (Gargron)
- ๐ Fix slowness due to layout thrashing when reloading a large set of statuses in web UI (panarom, panarom, Gargron)
- ๐ Fix error when fetching followers/following from REST API when user has network hidden (Gargron)
- ๐ Fix IDN mentions not being processed, IDN domains not being rendered (Gargron, Gargron, Gargron)
- ๐ Fix error when searching for empty phrase (Gargron)
- ๐ Fix backups stopping due to read timeouts (chr-1x)
- ๐ Fix batch actions on non-pending tags in admin UI (ThibG)
- Fix sample
SAML_ACS_URL
,SAML_ISSUER
(orlea) - ๐ Fix manual scrolling issue on Firefox/Windows in web UI (ThibG)
- ๐ Fix archive takeout failing if total dump size exceeds 2GB (scd31, Gargron)
- ๐ Fix custom emoji category creation silently erroring out on duplicate category (ThibG)
- ๐ Fix link crawler not specifying preferred content type (ThibG)
- ๐ Fix featured hashtag setting page erroring out instead of rejecting invalid tags (ThibG)
- ๐ Fix tooltip messages of single/multiple-choice polls switcher being reversed in web UI (acid-chicken)
- ๐ Fix typo in help text of
tootctl statuses remove
(trwnh) - ๐ Fix generic HTTP 500 error on duplicate records (Gargron)
- ๐ Fix old migration failing with new status default scope (ThibG)
- ๐ Fix errors when using search API with no query (Gargron, trwnh)
- ๐ Fix poll options not being selectable via keyboard in web UI (ThibG)
- ๐ Fix conversations not having an unread indicator in web UI (Gargron)
- ๐ Fix lost focus when modals open/close in web UI (ThibG)
- ๐ Fix pending upload count not being decremented on error in web UI (ThibG)
- ๐ Fix empty poll options not being removed on remote poll update (ThibG)
- ๐ Fix OCR with delete & redraft in web UI (ThibG)
- ๐ Fix blur behind closed registration message (ThibG)
- ๐ Fix OEmbed discovery not handling different URL variants in query (Gargron)
- ๐ Fix link crawler crashing on
<a>
tags withouthref
(ThibG) - ๐ Fix whitelisted subdomains being ignored in whitelist mode (noiob)
- ๐ Fix broken audit log in whitelist mode in admin UI (ThibG)
- ๐ Fix unread indicator not honoring "Only media" option in local and federated timelines in web UI (ThibG)
- ๐ Fix error when rebuilding home feeds (dariusk)
- ๐ Fix relationship caches being broken as result of a follow request (ThibG)
- ๐ Fix more items than the limit being uploadable in web UI (ThibG)
- ๐ Fix various issues with account migration (ThibG)
- ๐ Fix filtered out items being counted as pending items in slow mode in web UI (ThibG)
- ๐ Fix notification filters not applying to poll options (ThibG)
- ๐ Fix notification message for user's own poll saying it's a poll they voted on in web UI (ykzts)
- ๐ Fix polls with an expiration not showing up as expired in web UI (noellabo)
- ๐ Fix volume slider having an offset between cursor and slider in Chromium in web UI (ThibG)
- ๐ Fix Vagrant image not accepting connections (shrft)
- ๐ Fix batch actions being hidden on small screens in admin UI (ThibG)
- ๐ Fix incoming federation not working in whitelist mode (ThibG)
- ๐ Fix error when passing empty
source
param toPUT /api/v1/accounts/update_credentials
(jglauche) - ๐ Fix HTTP-based streaming API being cacheable by proxies (BenLubar)
- ๐ Fix users being able to register while
tootctl self-destruct
is in progress (Kjwon15) - ๐ Fix microformats detection in link crawler not ignoring
h-card
links (nightpool) - ๐ Fix outline on full-screen video in web UI (hinaloe)
- ๐ Fix TLD domain blocks not being editable (ThibG)
- ๐ Fix Nanobox deploy hooks (danhunsaker)
- ๐ Fix needlessly complicated SQL query when performing account search amongst followings (ThibG)
- ๐ Fix favourites count not updating when unfavouriting in web UI (NimaBoscarino)
- ๐ Fix occasional crash on scroll in Chromium in web UI (hinaloe)
- ๐ Fix intersection observer not working in single-column mode web UI (panarom)
- ๐ Fix voting issue with remote polls that contain trailing spaces (ThibG)
- ๐ Fix dynamic elements not working in pgHero due to CSP rules (ykzts)
- ๐ Fix overly verbose backtraces when delivering ActivityPub payloads (zunda)
- ๐ Fix rendering
<a>
withouthref
when scheme unsupported (Gargron) - ๐ Fix unfiltered params error when generating ActivityPub tag pagination (Gargron)
- ๐ Fix malformed HTML causing uncaught error (Gargron)
- ๐ Fix native share button not being displayed for unlisted toots (ThibG)
- ๐ Fix remote convertible media attachments (e.g. GIFs) not being saved (Gargron)
- ๐ Fix account query not using faster index (abcang)
- ๐ Fix error when sending moderation notification (renatolond)
๐ Security
- ๐ Fix OEmbed leaking information about existence of non-public statuses (Gargron)
- ๐ Fix password change/reset not immediately invalidating other sessions (Gargron)
- ๐ Fix settings pages being cacheable by the browser (Gargron)
โฌ๏ธ Upgrade notes
โฌ๏ธ > 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
๐ณ Non-Docker only:
- โฌ๏ธ The minimum supported Node.js version has been bumped from 8 to 10. To upgrade Node.js, run
curl -sL https://deb.nodesource.com/setup_10.x | bash -
and thenapt install nodejs
- Install dependencies:
bundle install
andyarn install
๐ณ Both Docker and non-Docker:
- Run database migrations:
- Non-Docker:
RAILS_ENV=production bundle exec rails db:migrate
- Docker:
docker-compose run --rm web rails db:migrate
๐ฑ 2. Precompile the assets: - Non-Docker:
RAILS_ENV=production bundle exec rails assets:precompile
- Docker: The assets are already precompiled during the build step
- Non-Docker:
- Restart all Mastodon processes
Troubleshooting
โฌ๏ธ If you have problems accessing the Sidekiq dashboard after upgrading, log out and log back in.
Translators
- Sveinn รญ Felli (Icelandic)
- taicv (Vietnamese)
- Daniele Lira Mereb (Portuguese, Brazilian)
- แฆแแขแตแซ (Spanish, Argentina)
- Michal Stanke (Czech)
- Miguel Mayol (Spanish; Catalan)
- Imre Kristoffer Eilertsen (Norwegian)
- Peterandre (Norwegian Nynorsk; Norwegian)
- Danial Behzadi (Persian)
- Ivรกns (Galician)
- enolp (Asturian)
- ButterflyOfFire (Kabyle; Arabic; French)
- arshat (Kazakh)
- Ramdziana F Y (Indonesian)
- tolstoevsky (Russian)
- Sasha Sorokin (Russian; Vietnamese; Swedish; French; Danish; German; Korean; Ukrainian)
- YubaWissin (Kabyle)
- Oฤuz Ersen (Turkish)
- Xosรฉ M. (Galician; Spanish)
- Emanuel Pina (Portuguese)
- Thai Localization (Thai)
- Evert Prants (Estonian)
- Jeong Arm (Korean; Esperanto; Japanese)
- ๅๅฎๅ (Chinese Simplified)
- vishnuvaratharajan (Tamil)
- Geoflly Adonias (Portuguese, Brazilian)
- spla (Catalan; Spanish)
- Masoud Abkenar (Persian)
- Taloran (Norwegian Nynorsk)
- Akarshan Biswas (Bengali)
- Alessandro Levati (Italian)
- Emyn Nant Nefydd (Welsh)
- Marek ฤฝach (Slovak)
- ThibG (French; Icelandic)
- Bertil Hedkvist (Swedish)
- Roby Thomas (Malayalam)
- Bharat Kumar (Hindi)
- lamnatos (Greek)
- christalleras (Norwegian Nynorsk)
- ariasuni (Esperanto; French)
- Osoitz (Basque)
- Mathias B. Vagnes (Norwegian)
- dashersyed (Urdu)
- Acolyte (Ukrainian)
- Jeroen (Dutch)
- Conight Wang (Chinese Simplified)
- Damjan Dimitrioski (Macedonian)
- Diluns (Occitan)
- jaranta (Finnish)
- Isis (Swedish)
- Aditoo17 (Czech)
- borys_sh (Ukrainian)
- Jess Rafn (Danish)
- Tiago Epifรขnio (Portuguese)
- norayr (Armenian)
- jmontane (Catalan)
- Alix Rossi (Corsican)
- Arunmozhi (Tamil)
- Balรกzs Meskรณ (Hungarian)
- PPNplus (Thai)
- FรฉdiQuรฉbec (French)
- ๐ Marcin Mikoลajczak (Polish)
- marzuquccen (Kabyle)
- koyu (German)
- Zoltรกn Gera (Hungarian)
- cybergene (Japanese)
- ๐ Laura (Polish)
- andruhov (Ukrainian; Russian)
- Sam Tux (Bengali)
- ๆฃฎใฎๅญใชในใฎใใผใณใฎๅคงๅ้บ (Japanese)
- Kinshuk Sunil (Hindi)
- Ullas Joseph (Malayalam)
- Roboron (Spanish)
- ๐ Stasiek Michalski (Polish)
- Yu-Pai Liu (Chinese Traditional)
- Amarin Cemthong (Thai)
- Rikard Linde (Swedish)
- Tagomago (Spanish; French)
- Ryo (Korean)
- carolinagiorno (Portuguese, Brazilian)
- Rajarshi Guha (Bengali)
- Yi-Jyun Pan (Chinese Traditional)
- EPEMA (German)
- Dewi (Breton; French)
- Parthan S Ramanujam (Tamil)
- Maya Minatsuki (Japanese)
- Kasper Nymand (Danish)
- Saederup92 (Danish)
- d5Ziif3K (Ukrainian)
- Ram varma (Tamil)
- Hrach Mkrtchyan (Armenian)
- kekkepikkuni (Tamil)
- oorsutri (Tamil)
- Nithin V (Tamil)
- Guillaume Turchini (French)
- Ganesh D (Marathi)
- arethsu (Swedish)
- Sokratis Alichanidis (Greek)
- Pedro Henrique (Portuguese, Brazilian)
- Tejas Harad (Marathi)
- ฯ๏ญโโ๏ญฮฑ (Spanish)
- Vasanthan (Tamil)
- Goudarz Jafari (Persian)
- manukp (Malayalam)
- earth dweller (Marathi)
- meijerivoi (Finnish)
- essaar (Tamil)
- ใใใผใญ (Japanese)
- valarivan (Tamil)
- Miro Rauhala (Finnish)
- Ivan T. (Chinese Traditional, Hong Kong)
- ๐ Karol Kosek (Polish)
- Bottle (Tamil)
- Cutls (Japanese)
- serubeena (Swedish)
- gowthamanb (Tamil)
- Arttu Ylhรคvuori (Finnish)
- Ali Demirtaล (Turkish)
- SKELET (Danish)
- enipra (Armenian)
- Balรกzs Meskรณ (Hungarian)
- diazepan (Spanish, Argentina)
- ybardapurkar (Marathi)
- rasheedgm (Kannada)
- Navjot Singh (Hindi)
- Ozai (German)
- ALEM FARID (Kabyle)
- se7entime (Indonesian)
- Siddhartha Sarathi Basu (Bengali)
- Steven Tappert (German)
- Rhys Harrison (Esperanto)
- turtle836 (German)
- Guru Prasath Anandapadmanaban (Tamil)
- Daniel Dimitrov (Bulgarian)
- GatoOscuro (Spanish)
- Lamin (Japanese)
- Feruz Oripov (Russian)
- frumble (German)
- tykayn (French)
- hg6 (Hindi)
- Malik Mann (German)
- padulafacundo (Spanish)
- Belkacem Mohammed (Kabyle)
- cenegd (Chinese Simplified)
- Gargron (German; Galician)
- Hinaloe (Japanese)
- Muha Aliss (Turkish)
- AmazighNM (Kabyle)
- parnikkapore (Thai)
- Jothipazhani Nagarajan (Tamil)
- sabri (Spanish; Spanish, Argentina)
- hallomaurits (Dutch)
- mynameismonkey (Welsh)
- liffon (Swedish)
- Vanege (Esperanto)
- Daniel M. (Catalan)
- Swati Sani
- ็กซ้ ธ้ถ (Japanese)
- Jaz-Michael King (Welsh)
- Kk (Kannada)
- Shrinivasan T (Tamil)
- Ray (Spanish)
- Zinkokooo (Basque)
- SusVersiva (Catalan)
- Vikatakavi (Kannada)
- Sahak Petrosyan (Armenian)
- tsundoker (Malayalam)
- Selyan Slimane AMIRI (Kabyle)
- prabhjot (Hindi)
- Livingston Samuel (Tamil)
- Ricardo Colin (Spanish)
- ralozkolya (Georgian)
- Anoop (Malayalam)
- Aymeric (French)
- Samir Tighzert (Kabyle)
- Trond Boksasp (Norwegian)
- koppe-pan (Japanese)
- Miquel Sabatรฉ Solร (Catalan)
- Sais Lakshmanan (Tamil)
- Matias Lavik (Norwegian Nynorsk)
- Mohammad Adnan Mahmood (Arabic)
- Amith Raj Shetty (Kannada)
- smedvedev (Russian)
- mikel (Spanish)
-
v3.1.0.rc2 Changes
January 28, 2020Note: This is a release candidate. It is intended to be stable, but not guaranteed.
๐ Changelog
๐ This release candidate fixes an issue during the
bundle install
step that sneaked into v3.1.0rc1. For all other notes, please see v3.1.0rc1 -
v3.1.0.rc1 Changes
January 28, 2020Note: This is a release candidate. It is intended to be stable, but not guaranteed.
๐ Changelog
โ Added
- โ Add bookmarks (ThibG, Gargron, Gomasy)
- โ Add announcements (Gargron, Gargron, Gargron, Gargron, Gargron, Gargron, Gargron, Gargron, Gargron, Gargron, ThibG, ThibG, Gargron, ThibG, ThibG)
- โ Add number animations in web UI (Gargron, Gargron)
- โ Add
kab
,is
,kn
,mr
,ur
to available locales (Gargron, BoFFire, Gargron) - โ Add profile filter category (ThibG)
- โ Add ability to add oneself to lists (ThibG)
- โ Add hint how to contribute translations to preferences page (Sasha-Sorokin)
- โ Add signatures to statuses in archive takeout (noellabo)
- โ Add support for
magnet:
andxmpp
links (ThibG, ThibG) - โ Add
follow_request
notification type (ThibG) - โ Add ability to filter reports by account domain in admin UI (ThibG)
- โ Add link to search for users connected from the same IP address to admin UI (ThibG)
- โ Add link to reports targeting a specific domain in admin view (ThibG)
- โ Add support for EventSource streaming in web UI (BenLubar)
- โ Add hotkey for opening media attachments in web UI (ThibG, Kjwon15)
- โ Add relationship-based options to status dropdowns in web UI (Gargron, ThibG, Gargron)
- โ Add support for submitting media description with
ctrl
+enter
in web UI (ThibG) - โ Add download button to audio and video players in web UI (NimaBoscarino)
- โ Add setting for whether to crop images in timelines in web UI (duxovni)
- โ Add support for
Event
activities (tcitworld) - โ Add basic support for
Group
actors (noellabo) - Add
S3_OVERRIDE_PATH_STYLE
environment variable (Gargron) - Add
S3_OPEN_TIMEOUT
environment variable (tateisu) - โ Add
LDAP_MAIL
environment variable (madmath03) - Add
LDAP_UID_CONVERSION_ENABLED
environment variable (madmath03) - โ Add
--remote-only
option totootctl emoji purge
(ThibG) - โ Add
tootctl media remove-orphans
(Gargron, Gargron) - โ Add
tootctl media lookup
command (irlcatgirl) - โ Add cache for OEmbed endpoints to avoid extra HTTP requests (Gargron)
- โ Add support for KaiOS arrow navigation to public pages (nolanlawson)
- โ Add
discoverable
to accounts in REST API (trwnh) - โ Add admin setting to disable default follows (ArisuOngaku)
- โ Add support for LDAP and PAM in the OAuth password grant strategy (ntl-purism)
- ๐ Allow support for
Accept
/Reject
activities with a non-embedded object (puckipedia)
๐ Changed
- Change
last_status_at
to be a date, not datetime in REST API (ThibG) - ๐ Change followers page to relationships page in admin UI (Gargron, Gargron)
- ๐ Change reported media attachments to always be hidden in admin UI (Gargron, ThibG)
- ๐ Change string from "Disable" to "Disable login" in admin UI (nileshkumar)
- ๐ Change report page structure in admin UI (Sasha-Sorokin)
- ๐ Change swipe sensitivity to be lower on small screens in web UI (umonaca)
- ๐ Change audio/video playback to stop playback when out of view in web UI (Gargron)
- ๐ Change media description label based on upload type in web UI (ThibG)
- ๐ Change large numbers to render without decimal units in web UI (noellabo)
- ๐ Change "Add a choice" button to be disabled rather than hidden when poll limit reached in web UI (ThibG, hinaloe)
- ๐ Change
tootctl statuses remove
to keep statuses favourited or bookmarked by local users (ThibG, Gomasy) - โก๏ธ Change domain block behavior to update user records (fast) before deleting data (slower) (ThibG)
- ๐ Change behaviour to strip audio metadata on uploads (hugogameiro)
- ๐ Change accepted length of remote media descriptions from 420 to 1,500 characters (ThibG)
- ๐ Change preferences pages structure (Sasha-Sorokin, mayaeh, Sasha-Sorokin, Sasha-Sorokin, Sasha-Sorokin, Sasha-Sorokin)
- ๐ Change format of titles in RSS (devkral)
- ๐ Change favourite icon animation from spring-based motion to CSS animation in web UI (ThibG)
- ๐ Change minimum required Node.js version to 10, and default to 12 (Shleeble, mkody, Shleeble)
- ๐ Change spam check to exempt server staff (ThibG)
- ๐ Change to fallback to to
Create
audience whenobject
has no defined audience (ThibG) - ๐ Change Twemoji library to 12.1.3 in web UI (koyuawsmbrtn)
- ๐ Change blocked users to be hidden from following/followers lists (ThibG)
โ Removed
๐ Fixed
- ๐ Fix some translatable strings being used wrongly (Sasha-Sorokin, Sasha-Sorokin, Sasha-Sorokin, mayaeh)
- ๐ Fix headline of public timeline page when set to local-only (ykzts)
- ๐ Fix space between tabs not being spread evenly in web UI (Sasha-Sorokin, Sasha-Sorokin, Sasha-Sorokin)
- ๐ Fix interactive delays in database migrations with no TTY (Gargron)
- ๐ Fix status overflowing in report dialog in web UI (ThibG)
- ๐ Fix unlocalized dropdown button title in web UI (Sasha-Sorokin)
- ๐ Fix media attachments without file being uploadable (Gargron)
- ๐ Fix unfollow confirmations in profile directory in web UI (ThibG)
- ๐ Fix duplicate
description
meta tag on accounts public pages (ThibG) - ๐ Fix slow query of federated timeline (notozeki)
- ๐ Fix not all of account's active IPs showing up in admin UI (Gargron, Gargron)
- ๐ Fix search by IP not using alternative browser sessions in admin UI (Gargron)
- ๐ Fix โX new itemsโ not showing up for slow mode on empty timelines in web UI (ThibG)
- ๐ Fix OEmbed endpoint being inaccessible in secure mode (Gargron)
- ๐ Fix proofs API being inaccessible in secure mode (Gargron)
- ๐ Fix Ruby 2.7 incompatibilities (ThibG, ThibG, Shleeble, zunda)
- ๐ Fix invalid poll votes being accepted in REST API (ThibG)
- ๐ Fix old migrations failing because of strong migrations update (ThibG, ThibG)
- ๐ Fix reuse of detailed status components in web UI (ThibG)
- ๐ Fix base64-encoded file uploads not being possible in REST API (Gargron, Gargron)
- Fix resource_owner_from_credentials in Doorkeeper initializer (Gargron)
- ๐ Fix error due to missing authentication call in filters controller (Gargron)
- ๐ Fix uncaught unknown format error in host meta controller (Gargron)
- ๐ Fix URL search not returning private toots user has access to (ThibG, ThibG)
- ๐ Fix cache digesting log noise on status embeds (Gargron)
- ๐ Fix slowness due to layout thrashing when reloading a large set of statuses in web UI (panarom, panarom, Gargron)
- ๐ Fix error when fetching followers/following from REST API when user has network hidden (Gargron)
- ๐ Fix IDN mentions not being processed, IDN domains not being rendered (Gargron)
- ๐ Fix error when searching for empty phrase (Gargron)
- ๐ Fix backups stopping due to read timeouts (chr-1x)
- ๐ Fix batch actions on non-pending tags in admin UI (ThibG)
- Fix sample
SAML_ACS_URL
,SAML_ISSUER
(orlea) - ๐ Fix manual scrolling issue on Firefox/Windows in web UI (ThibG)
- ๐ Fix archive takeout failing if total dump size exceeds 2GB (scd31, Gargron)
- ๐ Fix custom emoji category creation silently erroring out on duplicate category (ThibG)
- ๐ Fix link crawler not specifying preferred content type (ThibG)
- ๐ Fix featured hashtag setting page erroring out instead of rejecting invalid tags (ThibG)
- ๐ Fix tooltip messages of single/multiple-choice polls switcher being reversed in web UI (acid-chicken)
- ๐ Fix typo in help text of
tootctl statuses remove
(trwnh) - ๐ Fix generic HTTP 500 error on duplicate records (Gargron)
- ๐ Fix old migration failing with new status default scope (ThibG)
- ๐ Fix errors when using search API with no query (Gargron, trwnh)
- ๐ Fix poll options not being selectable via keyboard in web UI (ThibG)
- ๐ Fix conversations not having an unread indicator in web UI (Gargron)
- ๐ Fix lost focus when modals open/close in web UI (ThibG)
- ๐ Fix pending upload count not being decremented on error in web UI (ThibG)
- ๐ Fix empty poll options not being removed on remote poll update (ThibG)
- ๐ Fix OCR with delete & redraft in web UI (ThibG)
- ๐ Fix blur behind closed registration message (ThibG)
- ๐ Fix OEmbed discovery not handling different URL variants in query (Gargron)
- ๐ Fix link crawler crashing on
<a>
tags withouthref
(ThibG) - ๐ Fix whitelisted subdomains being ignored in whitelist mode (noiob)
- ๐ Fix broken audit log in whitelist mode in admin UI (ThibG)
- ๐ Fix unread indicator not honoring "Only media" option in local and federated timelines in web UI (ThibG)
- ๐ Fix error when rebuilding home feeds (dariusk)
- ๐ Fix relationship caches being broken as result of a follow request (ThibG)
- ๐ Fix more items than the limit being uploadable in web UI (ThibG)
- ๐ Fix various issues with account migration (ThibG)
- ๐ Fix filtered out items being counted as pending items in slow mode in web UI (ThibG)
- ๐ Fix notification filters not applying to poll options (ThibG)
- ๐ Fix notification message for user's own poll saying it's a poll they voted on in web UI (ykzts)
- ๐ Fix polls with an expiration not showing up as expired in web UI (noellabo)
- ๐ Fix volume slider having an offset between cursor and slider in Chromium in web UI (ThibG)
- ๐ Fix Vagrant image not accepting connections (shrft)
- ๐ Fix batch actions being hidden on small screens in admin UI (ThibG)
- ๐ Fix incoming federation not working in whitelist mode (ThibG)
- ๐ Fix error when passing empty
source
param toPUT /api/v1/accounts/update_credentials
(jglauche) - ๐ Fix HTTP-based streaming API being cacheable by proxies (BenLubar)
- ๐ Fix users being able to register while
tootctl self-destruct
is in progress (Kjwon15) - ๐ Fix microformats detection in link crawler not ignoring
h-card
links (nightpool) - ๐ Fix outline on full-screen video in web UI (hinaloe)
- ๐ Fix TLD domain blocks not being editable (ThibG)
- ๐ Fix Nanobox deploy hooks (danhunsaker)
- ๐ Fix needlessly complicated SQL query when performing account search amongst followings (ThibG)
- ๐ Fix favourites count not updating when unfavouriting in web UI (NimaBoscarino)
- ๐ Fix occasional crash on scroll in Chromium in web UI (hinaloe)
- ๐ Fix intersection observer not working in single-column mode web UI (panarom)
- ๐ Fix voting issue with remote polls that contain trailing spaces (ThibG)
- ๐ Fix dynamic elements not working in pgHero due to CSP rules (ykzts)
- ๐ Fix overly verbose backtraces when delivering ActivityPub payloads (zunda)
๐ Security
- ๐ Fix OEmbed leaking information about existence of non-public statuses (Gargron)
- ๐ Fix password change/reset not immediately invalidating other sessions (Gargron)
- ๐ Fix settings pages being cacheable by the browser (Gargron)
โฌ๏ธ Upgrade notes
โฌ๏ธ > 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
๐ณ Non-Docker only:
- โฌ๏ธ The minimum supported Node.js version has been bumped from 8 to 10. To upgrade Node.js, run
curl -sL https://deb.nodesource.com/setup_10.x | bash -
and thenapt install nodejs
- Install dependencies:
bundle install
andyarn install
๐ณ Both Docker and non-Docker:
- Run database migrations:
- Non-Docker:
RAILS_ENV=production bundle exec rails db:migrate
- Docker:
docker-compose run --rm web rails db:migrate
๐ฑ 2. Precompile the assets: - Non-Docker:
RAILS_ENV=production bundle exec rails assets:precompile
- Docker: The assets are already precompiled during the build step
- Non-Docker:
- Restart all Mastodon processes
Translators
TBA
-
v3.0.2 Changes
February 27, 2020๐ Changelog
๐ Security
- ๐ Fix leak of arbitrary statuses through unfavourite action in REST API (Gargron)
โฌ๏ธ Upgrade notes
Because this is a backport, it is not available with
git pull
. Usegit fetch && git checkout v3.0.2
๐ณ Both Docker and non-Docker:
- Restart all Mastodon processes
-
v3.0.1 Changes
October 09, 2019๐ Changelog
โ Added
- โ Add
tootctl media usage
command (Gargron) - โ Add admin setting to auto-approve trending hashtags (Gargron, Gargron)
๐ Changed
- ๐ Change
tootctl media refresh
to skip already downloaded attachments (Gargron)
โ Removed
- โ Remove auto-silence behaviour from spam check (Gargron)
- โ Remove HTML
lang
attribute from individual statuses in web UI (Gargron) - โ Remove fallback to long description on sidebar and meta description (Gargron)
๐ Fixed
- ๐ Fix preloaded JSON-LD context for identity not being used (Gargron)
- ๐ Fix media editing modal changing dimensions once the image loads (Gargron)
- ๐ Fix not showing whether a custom emoji has a local counterpart in admin UI (Gargron)
- ๐ Fix attachment not being re-downloaded even if file is not stored (Gargron)
- ๐ Fix old migration trying to use new column due to default status scope (Gargron)
- ๐ Fix column back button missing for not found accounts (trwnh)
- ๐ Fix issues with tootctl's parallelization and progress reporting (Gargron, Gargron)
- ๐ Fix existing user records with now-renamed
pt
locale (Gargron) - ๐ Fix hashtag timeline REST API accepting too many hashtags (Gargron)
- ๐ Fix
GET /api/v1/instance
REST APIs being unavailable in secure mode (Gargron) - ๐ Fix performance of home feed regeneration and merging (Gargron)
- ๐ Fix ffmpeg performance issues due to stdout buffer overflow (hugogameiro)
- ๐ Fix S3 adapter retrying failing uploads with exponential backoff (Gargron)
- ๐ Fix
tootctl accounts cull
advertising unused option flag (Kjwon15)
โฌ๏ธ Upgrade notes
โฌ๏ธ > 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
๐ณ Non-Docker only:
- Install dependencies:
bundle install
andyarn install
๐ณ Both Docker and non-Docker:
- Run the database migrations:
- Non-Docker:
RAILS_ENV=production bundle exec rails db:migrate
- Docker:
docker-compose run --rm web rails db:migrate
๐ฑ 2. Precompile the assets: - Non-Docker:
RAILS_ENV=production bundle exec rails assets:precompile
- Docker: The assets are already precompiled during the build step
- Non-Docker:
- Restart all Mastodon processes
Translators
- oษนสuส (Spanish, Argentina)
- Ramdziana F Y (Indonesian)
- Oguz Ersen (Turkish)
- koyu (German)
- Osoitz (Basque)
- ButterflyOfFire (Arabic; French)
- ฯฮนโโฮนฮฑะผโฟ (Spanish)
- lamnatos (Greek)
- christalleras (Norwegian Nynorsk)
- Aditoo17 (Czech)
- cybergene (Japanese)
- Berrahed (Swedish)
- Xosรฉ M. (Galician)
- ๐ Stasiek Michalski (Polish)
- Cutls (Japanese)
- Maya Minatsuki (Japanese)
- Jeong Arm (Esperanto; Korean; Japanese)
- Zoltรกn Gera (Hungarian)
- Thai Localization (Thai)
- Masoud Abkenar (Persian)
- FรฉdiQuรฉbec (French)
- Sasha Sorokin (Russian)
- borys_sh (Ukrainian)
- Marek ฤฝach (Slovak)
- ThibG (French)
- Jeroen (Dutch)
- Sokratis Alichanidis (Greek)
- spla (Catalan)
- Alix Rossi (Corsican)
- Malik Mann (German)
- Saederup92 (Danish)
- Diluns (Occitan)
- frumble (German)
- Roboron (Spanish)
- liffon (Swedish)
- PifyZ (French)
- ็กซ้ ธ้ถ (Japanese)
- Rikard Linde (Swedish)
- Tagomago (Spanish)
- โ Add
-
v3.0.0 Changes
October 03, 2019๐ฅ Breaking changes
- โ Remove OStatus support
- Please use ActivityPub instead
- โ Remove deprecated REST API
GET /api/v1/search
API- Please use
GET /api/v2/search
instead
- Please use
- โ Remove deprecated REST API
GET /api/v1/statuses/:id/card
- Please use the
card
attribute on statuses instead
- Please use the
- โ Remove deprecated REST API
POST /api/v1/notifications/dismiss?id=:id
- Please use
POST /api/v1/notifications/:id/dismiss
instead
- Please use
- โ Remove deprecated REST API
GET /api/v1/timelines/direct
- Please use
GET /api/v1/conversations
instead
- Please use
๐ Changelog
โ Added
- โ Add "not available" label to unloaded media attachments in web UI (Gargron, Gargron)
- โ Add profile directory to web UI (Gargron, mayaeh)
- Add profile directory opt-in federation
- Add profile directory REST API
- โ Add special alert for throttled requests in web UI (ThibG)
- โ Add confirmation modal when logging out from the web UI (ThibG)
- โ Add audio player in web UI (Gargron, Gargron, Gargron, ThibG, Gargron)
- โ Add autosuggestions for hashtags in web UI (Gargron, ThibG, Gargron, Gargron, Gargron)
- โ Add media editing modal with OCR tool in web UI (Gargron, Gargron, ThibG, ThibG, Gargron, Gargron, Gargron)
- โ Add indicator of unread notifications to window title when web UI is out of focus (Gargron, Gargron)
- โ Add indicator for which options you voted for in a poll in web UI (ThibG)
- โ Add search results pagination to web UI (Gargron, ThibG)
- โ Add option to disable real-time updates in web UI ("slow mode") (Gargron, ykzts, ThibG, Gargron, ThibG)
- โ Add option to disable blurhash previews in web UI (ThibG)
- โ Add native smooth scrolling when supported in web UI (ThibG)
- โ Add scrolling to the search bar on focus in web UI (Kjwon15)
- โ Add refresh button to list of rebloggers/favouriters in web UI (Gargron)
- โ Add error description and button to copy stack trace to web UI (Gargron)
- โ Add search and sort functions to hashtag admin UI (mayaeh, Gargron, mayaeh)
- โ Add setting for default search engine indexing in admin UI (brortao)
- โ Add account bio to account view in admin UI (ThibG)
- โ Add option to include reported statuses in warning e-mail from admin UI (Gargron, Gargron, Gargron, Gargron, mayaeh)
- โ Add number of pending accounts and pending hashtags to dashboard in admin UI (Gargron)
- โ Add account migration UI (Gargron, noellabo, noellabo, noellabo, noellabo)
- โ Add table of contents to about page (Gargron, ykzts, ykzts, Kjwon15)
- โ Add password challenge to 2FA settings, e-mail notifications (Gargron)
- โ Add optional public list of domain blocks with comments (ThibG, ThibG, Gargron)
- โ Add an RSS feed for featured hashtags (noellabo)
- โ Add explanations to featured hashtags UI and profile (Gargron)
- โ Add hashtag trends with admin and user settings (Gargron, Gargron, Gargron, Gargron, Gargron, mayaeh, Gargron, Gargron, Gargron, Gargron, Gargron, Gargron, ThibG, Sasha-Sorokin, Gargron, Gargron)
- Add hashtag usage breakdown to admin UI
- Add batch actions for hashtags to admin UI
- Add trends to web UI
- Add trends to public pages
- Add user preference to hide trends
- Add admin setting to disable trends
- โ Add categories for custom emojis (Gargron, Gargron, Gargron, highemerly)
- Add custom emoji categories to emoji picker in web UI
- Add
category
to custom emojis in REST API - Add batch actions for custom emojis in admin UI
- โ Add max image dimensions to error message (raboof)
- โ Add aac, m4a, 3gp, amr, wma to allowed audio formats (Gargron, umonaca)
- โ Add search syntax for operators and phrases (Gargron)
- โ Add REST API for managing featured hashtags (noellabo)
- โ Add REST API for managing timeline read markers (Gargron)
- โ Add
exclude_unreviewed
param toGET /api/v2/search
REST API (Gargron) - โ Add
reason
param toPOST /api/v1/accounts
REST API (Gargron) - โ Add ActivityPub secure mode (Gargron, ThibG, ThibG)
- โ Add HTTP signatures to all outgoing ActivityPub GET requests (Gargron, ThibG)
- โ Add support for ActivityPub Audio activities (ThibG)
- โ Add ActivityPub actor representing the entire server (ThibG, rtucker, ThibG, Gargron)
- โ Add whitelist mode (Gargron, mayaeh)
- โ Add config of multipart threshold for S3 (ykzts, ykzts)
- โ Add health check endpoint for web (ykzts, ykzts)
- โ Add HTTP signature keyId to request log (Gargron)
- Add
SMTP_REPLY_TO
environment variable (hugogameiro) - โ Add
tootctl preview_cards remove
command (mayaeh) - โ Add
tootctl media refresh
command (Gargron) - โ Add
tootctl cache recount
command (Gargron) - โ Add option to exclude suspended domains from
tootctl domains crawl
(dariusk) - โ Add parallelization to
tootctl search deploy
(noellabo) - โ Add soft delete for statuses for instant deletes through API (Gargron, Gargron)
- โ Add rails-level JSON caching (Gargron, Gargron)
- โ Add request pool to improve delivery performance (Gargron, ykzts)
- โ Add concurrent connection attempts to resolved IP addresses (ThibG)
- โ Add index for remember_token to improve login performance (abcang)
- โ Add more accurate hashtag search (Gargron, Gargron, Gargron)
- โ Add more accurate account search (Gargron, Gargron)
- โ Add a spam check (Gargron, Gargron, ThibG)
- โ Add new languages (Gargron)
- Breton
- Spanish (Argentina)
- Estonian
- Macedonian
- New Norwegian
- โ Add NodeInfo endpoint (Gargron, Gargron)
๐ Changed
- ๐ Change conversations UI (Gargron)
- ๐ Change dashboard to short number notation (noellabo, noellabo)
- ๐ Change REST API
GET /api/v1/timelines/public
to require authentication when public preview is off (ThibG) - ๐ Change REST API
POST /api/v1/follow_requests/:id/(approve|reject)
to return relationship (ThibG) - ๐ Change rate limit for media proxy (ykzts)
- ๐ Change unlisted custom emoji to not appear in autosuggestions (Gargron)
- ๐ Change max length of media descriptions from 420 to 1500 characters (Gargron, ThibG)
- ๐ Change deletes to preserve soft-deleted statuses in unresolved reports (Gargron)
- ๐ Change tootctl to use inline parallelization instead of Sidekiq (Gargron)
- ๐ Change account deletion page to have better explanations (Gargron, Gargron)
- ๐ Change hashtag component in web UI to show numbers for 2 last days (Gargron, Gargron, Gargron)
- ๐ Change OpenGraph description on sign-up page to reflect invite (Gargron)
- ๐ Change layout of public profile directory to be the same as in web UI (Gargron)
- ๐ Change detailed status child ordering to sort self-replies on top (ThibG)
- ๐ Change window resize handler to switch to/from mobile layout as soon as needed (ThibG)
- ๐ Change icon button styles to make hover/focus states more obvious (ThibG)
- ๐ Change contrast of status links that are not mentions or hashtags (ThibG)
- ๐ Change hashtags to preserve first-used casing (Gargron, Gargron, Gargron, Gargron, Gargron)
- ๐ Change unconfirmed user login behaviour (Gargron, ThibG, Gargron)
- ๐ Change single-column mode to scroll the whole page (Gargron, Gargron, Gargron, ThibG, Gargron, Gargron, ThibG, Gargron)
- ๐ Change
tootctl accounts follow
to only work with local accounts (angristan) - ๐ Change Dockerfile (Shleeble, ykzts, Shleeble)
- ๐ Change supported Node versions to include v12 (abcang)
- ๐ Change Portuguese language from
pt
topt-PT
(Gargron) - ๐ Change domain block silence to always require approval on follow (ThibG)
- ๐ Change link preview fetcher to not perform a HEAD request first (Gargron)
- ๐ Change
tootctl domains purge
to accept multiple domains at once (Gargron)
โ Removed
- โ Remove OStatus support (Gargron, Gargron, Gargron, ThibG, ThibG)
- โ Remove Atom feeds and old URLs in the form of
GET /:username/updates/:id
(Gargron) - โ Remove WebP support (angristan)
- โ Remove deprecated config options from Heroku and Scalingo (ykzts)
- โ Remove deprecated REST API
GET /api/v1/search
API (Gargron) - โ Remove deprecated REST API
GET /api/v1/statuses/:id/card
(Gargron) - โ Remove deprecated REST API
POST /api/v1/notifications/dismiss?id=:id
(Gargron) - โ Remove deprecated REST API
GET /api/v1/timelines/direct
(Gargron)
๐ Fixed
- ๐ Fix manifest warning (ykzts)
- ๐ Fix admin UI for custom emoji not respecting GIF autoplay preference (ThibG)
- ๐ Fix page body not being scrollable in admin/settings layout (Gargron)
- ๐ Fix placeholder colors for inputs not being explicitly defined (Gargron)
- ๐ Fix incorrect enclosure length in RSS (tsia)
- ๐ Fix TOTP codes not being filtered from logs during enabling/disabling (Gargron)
- ๐ Fix webfinger response not returning 410 when account is suspended (Gargron)
- ๐ Fix ActivityPub Move handler queuing jobs that will fail if account is suspended (Gargron)
- ๐ Fix SSO login not using existing account when e-mail is verified (Gargron)
- ๐ Fix web UI allowing uploads past status limit via drag & drop (Gargron)
- ๐ Fix expiring polls not being displayed as such in web UI (ThibG)
- ๐ Fix 2FA challenge and password challenge for non-database users (Gargron, Gargron)
- ๐ Fix profile fields overflowing page width in web UI (Gargron)
- ๐ Fix web push subscriptions being deleted on rate limit or timeout (Gargron)
- ๐ Fix display of long poll options in web UI (ThibG, ThibG)
- ๐ Fix search API not resolving URL when
type
is given (Gargron) - ๐ Fix hashtags being split by ZWNJ character (Gargron)
- ๐ Fix scroll position resetting when opening media modals in web UI (Gargron)
- ๐ Fix duplicate HTML IDs on about page (ThibG)
- ๐ Fix admin UI showing superfluous reject media/reports on suspended domain blocks (ThibG)
- ๐ Fix ActivityPub context not being dynamically computed (ThibG)
- ๐ Fix Mastodon logo style on hover on public pages' footer (ThibG)
- ๐ Fix height of dashboard counters (ThibG)
- ๐ Fix custom emoji animation on hover in web UI directory bios (ThibG)
- ๐ Fix non-numbers being passed to Redis and causing an error (Gargron)
- ๐ Fix error in REST API for an account's statuses (Gargron)
- ๐ Fix uncaught error when resource param is missing in Webfinger request (Gargron)
- ๐ Fix uncaught domain normalization error in remote follow (Gargron)
- ๐ Fix uncaught 422 and 500 errors (Gargron, Gargron)
- ๐ Fix uncaught parameter missing exceptions and missing error templates (Gargron)
- ๐ Fix encoding error when checking e-mail MX records (Gargron)
- ๐ Fix items in StatusContent render list not all having a key (ThibG)
- ๐ Fix remote and staff-removed statuses leaving media behind for a day (Gargron)
- ๐ Fix CSP needlessly allowing blob URLs in script-src (ThibG)
- ๐ Fix ignoring whole status because of one invalid hashtag (Gargron)
- ๐ Fix hidden statuses losing focus (ThibG)
- ๐ Fix loading bar being obscured by other elements in web UI (Gargron)
- ๐ Fix multiple issues with replies collection for pages further than self-replies (ThibG)
- ๐ Fix blurhash and autoplay not working on public pages (Gargron)
- ๐ Fix 422 being returned instead of 404 when POSTing to unmatched routes (Gargron, Gargron)
- ๐ Fix client-side resizing of image uploads (ThibG)
- ๐ Fix short number formatting for numbers above million in web UI (Gargron)
- ๐ Fix ActivityPub and REST API queries setting cookies and preventing caching (ThibG, ThibG, ThibG, ThibG)
- ๐ Fix some emojis in profile metadata labels are not emojified. (kedamaDQ)
- ๐ Fix account search always returning exact match on paginated results (Gargron)
- ๐ Fix acct URIs with IDN domains not being resolved (Gargron)
- ๐ Fix admin dashboard missing latest features (Gargron)
- ๐ Fix jumping of toot date when clicking spoiler button (ariasuni)
- ๐ Fix boost to original audience not working on mobile in web UI (ThibG)
- ๐ Fix handling of webfinger redirects in ResolveAccountService (ThibG)
- ๐ Fix URLs appearing twice in errors of ActivityPub::DeliveryWorker (Gargron)
- ๐ Fix support for HTTP proxies (ThibG)
- ๐ Fix HTTP requests to IPv6 hosts (ThibG)
- ๐ Fix error in ElasticSearch index import (mayaeh)
- ๐ Fix duplicate account error when seeding development database (ysksn)
- ๐ Fix performance of session clean-up scheduler (abcang)
- ๐ Fix older migrations not running (zunda)
- ๐ Fix URLs counting towards RTL detection (ahangarha)
- ๐ Fix unnecessary status re-rendering in web UI (ThibG)
- ๐ Fix http_parser.rb gem not being compiled when no network available (petabyteboy)
- ๐ Fix muted text color not applying to all text (trwnh)
- ๐ Fix follower/following lists resetting on back-navigation in web UI (Gargron)
- ๐ Fix n+1 query when approving multiple follow requests (abcang)
- ๐ Fix records not being indexed into ElasticSearch sometimes (Gargron)
- ๐ Fix needlessly indexing unsearchable statuses into ElasticSearch (Gargron)
- ๐ Fix new user bootstrapping crashing when to-be-followed accounts are invalid (ThibG)
- ๐ Fix featured hashtag URL being interpreted as media or replies tab (Gargron)
- ๐ Fix account counters being overwritten by parallel writes (Gargron)
๐ Security
- ๐ Fix performance of GIF re-encoding and always strip EXIF data from videos (Gargron)
โฌ๏ธ Upgrade notes
โฌ๏ธ > 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
๐ณ Non-Docker only:
- โฌ๏ธ The recommended Ruby version has been bumped to 2.6.5. You can upgrade, or you can continue using the old version by overwriting the
.ruby-version
file with e.g.2.6.1
or2.5.3
which were recommended previously - Install dependencies:
bundle install
andyarn install
๐ณ Both Docker and non-Docker:
๐ 1. Run the pre-deployment database migrations by specifying the
SKIP_POST_DEPLOYMENT_MIGRATIONS=true
environment variable:- Non-Docker:
SKIP_POST_DEPLOYMENT_MIGRATIONS=true RAILS_ENV=production bundle exec rails db:migrate
- Docker:
docker-compose run --rm -e SKIP_POST_DEPLOYMENT_MIGRATIONS=true web rails db:migrate
๐ฑ 2. Precompile the assets: - Non-Docker:
RAILS_ENV=production bundle exec rails assets:precompile
- Docker: The assets are already precompiled during the build step
- Restart all Mastodon processes
- Clear cache:
- Non-Docker:
RAILS_ENV=production bin/tootctl cache clear
- Docker:
docker-compose run --rm web bin/tootctl cache clear
๐ 5. Now that the new code is running, we can finish the database migrations. This will run the post-deployment ones: - Non-Docker:
RAILS_ENV=production bundle exec rails db:migrate
- Docker:
docker-compose run --rm web rails db:migrate
- Restart all Mastodon processes
- If you are using ElasticSearch, there are new indices to be deployed ( this step is likely to take a considerable amount of time , so running it through
screen
ortmux
is advisable):
- Non-Docker:
RAILS_ENV=production bin/tootctl search deploy
- Docker:
docker-compose run --rm web bin/tootctl search deploy
Translators
- Zoltรกn Gera (Hungarian)
- Kristijan Tkalec (Slovenian)
- Evert Prants (Estonian)
- borys_sh (Ukrainian)
- Muha Aliss (Turkish)
- ๅๅฎๅ (Chinese Simplified)
- oษนสuส (Spanish, Argentina)
- Jeong Arm (Korean; Esperanto; Japanese)
- ButterflyOfFire (French; Arabic)
- Roboron (Spanish)
- Osoitz (Basque)
- Ramdziana F Y (Indonesian)
- Alix Rossi (Corsican; French)
- Aditoo17 (Czech)
- Masoud Abkenar (Persian)
- koyu (German)
- spla (Catalan)
- Maya Minatsuki (Japanese)
- Oguz Ersen (Turkish)
- Xosรฉ M. (Galician)
- Jeroen (Dutch)
- ๐ Marek ฤฝach (Slovak; Polish)
- d5Ziif3K (Ukrainian)
- Thai Localization (Thai)
- lamnatos (Greek)
- Diluns (Occitan)
- atarashiako (Chinese Simplified)
- ๐ 101010 (Polish)
- Yi-Jyun Pan (Chinese Traditional)
- silkevicious (Italian)
- FรฉdiQuรฉbec (French)
- Jaz-Michael King (Welsh)
- tykayn(French)
- Alessandro Levati (Italian)
- carolinagiorno (Portuguese, Brazilian)
- taoxvx (Danish)
- shioko (Chinese Simplified)
- Emyn Nant Nefydd (Welsh)
- Sasha Sorokin (Russian)
- Tiago Epifรขnio (Portuguese)
- dxwc (Bengali)
- liffon (Swedish)
- Evgeny Petrov (Russian)
- Vanege (Esperanto)
- Johan Schiff (Swedish)
- kat (Ukrainian; Russian)
- oti4500 (Hungarian; Ukrainian)
- Juan Josรฉ Salvador Piedra (Spanish)
- diazepan (Spanish)
- SHeija (Finnish)
- christalleras (Norwegian Nynorsk)
- Jack R (Spanish)
- Saederup92 (Danish)
- sabri (Spanish)
- ๐ Stasiek Michalski (Polish)
- Dewi (Breton; French)
- ariasuni (French; Esperanto)
- AW Unad (Indonesian)
- cybergene (Japanese)
- Andrea Lo Iacono (Italian)
- Ray (Spanish)
- Unmual (Spanish)
- Ryo (Korean)
- juanda097 (Spanish)
- Anunnakey (Macedonian)
- Cutls (Japanese)
- ruine (Japanese)
- MadeInSteak (Finnish)
- Sokratis Alichanidis (Greek)
- dragnucs2 (Arabic)
- frumble (German)
- erikstl (Esperanto)
- Rikard Linde (Swedish)
- PPNplus (Thai)
- EPEMA YT (German)
- Rhys Harrison (Esperanto)
- KEINOS (Japanese)
- JzshAC (Chinese Simplified)
- Rintan1 (Japanese)
- hiphipvargas (Portuguese)
- Ch. (Korean)
- tctovsli (Norwegian Nynorsk)
- ๐ vjasiegd (Polish)
- SamitiMed (Thai)
- umelard (Hebrew)
- ็กซ้ ธ้ถ (Japanese)
- Adriรกn Lattes (Spanish)
- Hinaloe (Japanese)
- Renato "Lond" Cerqueira (Portuguese, Brazilian)
- ๐ Marcin Mikoลajczak (Polish)
- filippodb (Italian)
- ๆฃฎใฎๅญใชในใฎใใผใณใฎๅคงๅ้บ (Japanese)
- Sahak Petrosyan (Armenian)
- Marcepanek_ (Polish)
- Daniel Dimitrov (Bulgarian)
- Hugh Liu (Chinese Simplified)
- Rakino (Chinese Simplified)
- hussama (Portuguese, Brazilian)
- eichkat3r (German)
- SnDer (Dutch)
- ๐ Karol Kosek (Polish)
- Akarshan Biswas (Bengali)
- Tradjincal (French)
- sergioaraujo1 (Portuguese, Brazilian)
- mmokhi (Persian)
- skaaarrr (German)
- Lukas Fรผlling (German)
- JackXu (Chinese Simplified)
- Zoรฉ Bลle (German)
- Dremski (Bulgarian)
- OpenAlgeria (Arabic)
- waweic (German)
- Benjamin Cobb (German)
- ใใฃใใใใซใผใใ (Japanese)
- Abijeet Patro (Basque)
- โ Remove OStatus support
-
v3.0.0.rc3 Changes
October 03, 2019Note: This is a release candidate. It is intended to be stable, but not guaranteed.
๐ Changelog
โ Added
- โ Add scrolling to the search bar on focus in web UI (Kjwon15)
- โ Add refresh button to list of rebloggers/favouriters in web UI (Gargron)
- โ Add error description and button to copy stack trace to web UI (Gargron)
- โ Add parallelization to
tootctl search deploy
(noellabo) - โ Add new languages (Gargron)
- Breton
- Spanish (Argentina)
- Estonian
- Macedonian
- New Norwegian
- โ Add NodeInfo endpoint (Gargron, Gargron)
๐ Changed
- ๐ Change link preview fetcher to not perform a HEAD request first (Gargron)
- ๐ Change
tootctl domains purge
to accept multiple domains at once (Gargron)
๐ Fixed
- ๐ Fix n+1 query when approving multiple follow requests (abcang)
- ๐ Fix records not being indexed into ElasticSearch sometimes (Gargron)
- ๐ Fix needlessly indexing unsearchable statuses into ElasticSearch (Gargron)
- ๐ Fix new user bootstrapping crashing when to-be-followed accouns are invalid (ThibG)
- ๐ Fix featured hashtag URL being interpreted as media or with_replies (Gargron)
- ๐ Fix account counters being overwritten by parallel writes (Gargron)
๐ Security
- ๐ Fix performance of GIF re-encoding and always strip EXIF data from videos (Gargron)
โฌ๏ธ Upgrade notes
โฌ๏ธ > 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
๐ณ Non-Docker only:
- โฌ๏ธ The recommended Ruby version has been bumped to 2.6.4. You can upgrade, or you can continue using the old version by overwriting the
.ruby-version
file with e.g.2.6.1
or2.5.3
which were recommended previously - Install dependencies:
bundle install
andyarn install
๐ณ Both Docker and non-Docker:
๐ 1. Run the pre-deployment database migrations by specifying the
SKIP_POST_DEPLOYMENT_MIGRATIONS=true
environment variable:- Non-Docker:
SKIP_POST_DEPLOYMENT_MIGRATIONS=true RAILS_ENV=production bundle exec rails db:migrate
- Docker:
docker-compose run --rm -e SKIP_POST_DEPLOYMENT_MIGRATIONS=true web rails db:migrate
๐ฑ 2. Precompile the assets: - Non-Docker:
RAILS_ENV=production bundle exec rails assets:precompile
- Docker: The assets are already precompiled during the build step
- Restart all Mastodon processes
- Clear cache:
- Non-Docker:
RAILS_ENV=production bin/tootctl cache clear
- Docker:
docker-compose run --rm web bin/tootctl cache clear
๐ 5. Now that the new code is running, we can finish the database migrations. This will run the post-deployment ones: - Non-Docker:
RAILS_ENV=production bundle exec rails db:migrate
- Docker:
docker-compose run --rm web rails db:migrate
- Restart all Mastodon processes
- If you are using ElasticSearch, there are new indices to be deployed ( this step is likely to take a considerable amount of time , so running it through
screen
ortmux
is advisable):
- Non-Docker:
RAILS_ENV=production bin/tootctl search deploy
- Docker:
docker-compose run --rm web bin/tootctl search deploy
Translators
- Zoltรกn Gera (Hungarian)
- Kristijan Tkalec (Slovenian)
- Evert Prants (Estonian)
- borys_sh (Ukrainian)
- Muha Aliss (Turkish)
- ๅๅฎๅ (Chinese Simplified)
- Jeong Arm (Korean; Esperanto; Japanese)
- Roboron (Spanish)
- Osoitz (Basque)
- ButterflyOfFire (French; Arabic)
- Alix Rossi (Corsican; French)
- Aditoo17 (Czech)
- Masoud Abkenar (Persian)
- Xosรฉ M. (Galician)
- Koyu Berteon (German)
- Maya Minatsuki (Japanese)
- d5Ziif3K (Ukrainian)
- Thai Localization (Thai)
- ๐ Marek ฤฝach (Slovak; Polish)
- lamnatos (Greek)
- atarashiako (Chinese Simplified)
- ๐ 101010 (Polish)
- Jeroen (Dutch)
- silkevicious (Italian)
- Diluns (Occitan)
- Jaz-Michael King (Welsh)
- spla (Catalan)
- FรฉdiQuรฉbec (French)
- tykayn (French)
- carolinagiorno (Portuguese, Brazilian)
- Alessandro Levati (Italian)
- taoxvx (Danish)
- shioko (Chinese Simplified)
- Yi-Jyun Pan (Chinese Traditional)
- Emyn Nant Nefydd (Welsh)
- Sasha Sorokin (Russian)
- Tiago Epifรขnio (Portuguese)
- dxwc (Bengali)
- liffon (Swedish)
- Vanege (Esperanto)
- kat (Ukrainian; Russian)
- oti4500 (Hungarian; Ukrainian)
- Juan Josรฉ Salvador Piedra (Spanish)
- diazepan (Spanish)
- christalleras (Norwegian Nynorsk)
- Saederup92 (Danish)
- sabri (Spanish)
- ๐ Stasiek Michalski (Polish)
- Dewi (Breton; French)
- oษนสuส (Spanish, Argentina)
- ariasuni (French)
- AW Unad (Indonesian)
- Ray (Spanish)
- Unmual (Spanish)
- Ryo (Korean)
- juanda097 (Spanish)
- ruine (Japanese)
- MadeInSteak (Finnish)
- frumble (German)
- dragnucs2 (Arabic)
- erikstl (Esperanto)
- PPNplus (Thai)
- EPEMA YT (German)
- Rhys Harrison (Esperanto)
- KEINOS (Japanese)
- JzshAC (Chinese Simplified)
- Rintan1 (Japanese)
- hiphipvargas (Portuguese)
- tctovsli (Norwegian Nynorsk)
- SamitiMed (Thai)
- ๐ vjasiegd (Polish)
- Adriรกn Lattes (Spanish)
- Renato "Lond" Cerqueira (Portuguese, Brazilian)
- filippodb (Italian)
- ๐ Marcin Mikoลajczak (Polish)
- ๆฃฎใฎๅญใชในใฎใใผใณใฎๅคงๅ้บ (Japanese)
- Hinaloe (Japanese)
- Sahak Petrosyan (Armenian)
- Daniel Dimitrov (Bulgarian)
- Hugh Liu (Chinese Simplified)
- Rakino (Chinese Simplified)
- SnDer (Dutch)
- eichkat3r (German)
- ๐ Karol Kosek (Polish)
- Akarshan Biswas (Bengali)
- Tradjincal (French)
- sergioaraujo1 (Portuguese, Brazilian)
- mmokhi (Persian)
- Evgeny Petrov (Russian)
- JackXu (Chinese Simplified)
- Zoรฉ Bลle (German)
- Lukas Fรผlling (German)
- Dremski (Bulgarian)
- cybergene (Japanese)
- OpenAlgeria (Arabic)
- ็กซ้ ธ้ถ (Japanese)
- Cutls (Japanese)
- Ch. (Korean)
- skaaarrr (German)
- djoerd (Dutch)
- ใใฃใใใใซใผใใ (Japanese)
- Abijeet Patro (Basque)