v1.4rc1
Pre-release
Pre-release
This is a release candidate. Upgrade at your own risk.
Fixes:
- Fix boost icon: center vertically (#2690)
- Fix to completely hide NSFW-tagged images (#2724)
- Fix width of .confirmation-modal on narrow screens (#2743)
- Always respond with 200 to PuSH payloads (#2733)
- Language improvements, replace whatlanguage with CLD (#2753, #2949)
- Handle out-of-order deletes for statuses (#2734)
- Replace best_in_place editor on admin settings page (#2789)
- Performance: Delete records in smaller transaction (#2802)
- More robust PuSH subscription refreshes (#2799)
- Use Twitter::Extractor for creating links (#2502)
- Performance: Optimize follower_accounts and following_accounts (#2820)
- Performance: Fix slow query in notifications api (#2851)
- Performance: Add asynchronous emojione-picker (code-splitting) (#2863)
- Fix a aspect ratio for the embedded video (#2872)
- Fix local fonts and change font-face values (#2877)
- Add content-type in pubsubhubhub request header (#2943)
- Disabled auto focus on toot form when search results are shown. (#2942)
- Performance: Add
account_id DESC
to optimize PrecomputeFeedService (#2967) - Send HEAD request ahead of GET when fetching URL previews (#2972)
- Fix mention regex to support unicode (#2420)
- When avatar/header are missing, do not include the missing file into Atom (#2988)
- Accept own ID for remote follow with and without preceding @ (#2991)
- Delete associated notifications when a status is deleted (#2994)
- Trim long usernames in public follower/following lists (#2993)
- Fix not rejecting remote URIs when parsing out local IDs (#3012)
- Prepend reblogs' wrapper content with "RT @original_author", (#3013)
- Do not cancel PuSH subscriptions after encountering "permanent" error (#3046)
- Do not override ctrl/cmd+click on permalinks (#3073)
- Hide signup path unless the instance allows registration. (#3055)
- Performance: Optimize Status#permitted_for 24x (#3069)
- Performance: Improve Account#triadic_closures (#3079)
- Performance: Make faster ProcessFeedService (#3080)
- Enable to handle app immediately after closing modal (#3082)
- Performance: Make .column-collapse animation simple (#3086)
- Resolve preview cards for remote statuses as well as local ones (#3088)
- Do not hardcode the exclamation in "toot!", wrap it in an extra locale key (#3089)
- Performance: Avoid useless renders (#3141)
- Performance: Improvements (#3168)
- Run processes in Docker as non-root user (#3159)
- Performance: Use joins for account properties (#3167)
- Performance: Remove unnecessary div (#3172)
- Performance: Faster boot time (#3176)
- Replace mastodon:media:clear and mastodon:feeds:clear rake tasks with sidekiq scheduler (#3180)
- Add boop sounds in Vorbis format (#2963)
- Focus tab of Mastodon when clicking notification (#2989)
Features:
- Filter out languages from public timelines based on preferences (#2361, #3175)
- Admins can disable 2FA for users (#2584)
- Webpack (#2617)
- Show boosted user's avatar (#2518)
- Show emoji shortname in a tooltip (#2784)
- Decode IDN URLs in PreviewCard (#2781)
- When streaming API is disconnected, poll home/notifications (#2776)
- Replace ws with uws (#2807)
- Sidekiq dashboard displays scheduled tasks (#2898)
- Add
<ostatus:conversation />
to Atom feeds (#3016) - Make direct statuses stand out more (#3025)
- Ability to mute notifications for an entire conversation (#3017)
- Admins can filter accounts based on username/display name/e-mail/IP (#2968)
- Ability to hide all content from a domain (#2381)
- Media gallery view on profiles (#3120)
Upgrade notes:
Non-Docker only:
- This release switches the minimum supported Node.js version from 4 to 6
- Three additional system packages are required:
pkg-config libprotobuf-dev protobuf-compiler
- Dependency updates:
bundle install
andyarn install
Docker-only:
- Processes inside Docker no longer run as root. Existing installations will require you to change directory ownership of the uploads volume to a different UID/GID: something like
sudo chown -R 991:991 public/system
(the default UID/GID of the new in-Docker user is 991/991)
Both Docker and non-Docker:
- If you have
CDN_HOST
set, make sure it contains the protocol part (http://
orhttps://
), if it does not, adjust it before doing the next step - 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
) - Generated assets now live under public/packs instead of public/assets. This is mostly irrelevant but might affect some custom proxying configurations.
- 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
)
Contributors to this release:
@AA4ch1
@abcang
@akihikodaki
@Aldarone
@alpaca-tc
@ayumin
@beatrix-bitrot
@BoFFire
@bzg
@dikky1218
@docjkl
@esetomo
@Gargron
@gentarok
@geta6
@haoyayoi
@harukasan
@h-izumi
@jackjennings
@jeroenpraat
@Jnsll
@kaniini
@loomchild
@m4sk1n
@marrus-sh
@masarakki
@mikoim
@mjankowski
@nolanlawson
@ozcanzaferayan
@Pangoraw
@pfm-eyesightjp
@potato4d
@Quent-in
@ramlmn
@rch850
@rkarabut
@rtucker
@salvadorpla
@seefood
@sorin-davidoi
@sossii
@stephenburgess8
@sterbfly
@treby
@unarist
@Wonderfall
@xqus
@yhirano55
@yiskah
@ykzts
@yookoala
@znz
@zunda