Discourse 2.7.0.beta2 Release Notes

New features in 2.7.0.beta2

:warning: Rebuild required. The rebuild will update package versions to latest, and must be completed if the site has not be been rebuilt from the command line in the last week.

:warning: Database version upgrade. The rebuild will upgrade your site’s database to PostgreSQL 13. Please review PostgreSQL 13 update for full details, especially if on a storage constrained server.

Add English (UK) as locale

Do you spell defense with a ‘c’? Catalog with a `ue’? Put a ‘y’ in tire or add a ‘u’ to color? Good news, Discourse now has support for English (UK). So enjoy your holiday with your fizzy drink and biscuit, go for a run in your trainers, and cozy up to the fire in your flat with your nice warm jumper. I’ll be over here trying to figure out what I just typed :smiley:.

Find something in a translation not quite right? Visit https://translate.discourse.org to help contribute to English (UK) and our many other languages.

Site text customization language selector

Previously, an admin would need to ensure their interface language was set to the relevant language in their user profile before overriding any of their site texts. For multi-lingual communities, this could mean excessive bouncing back and forth between their profile and the text customization pages. We now include a language selector at the top of the customization page:

Do Not Disturb mode

Do Not Disturb is here! Disable notifications and emails so you can concentrate on what you’re working on. Do Not Disturb can be enabled for a set period of time or until the next day. You can also set your Notification Schedule to automatically enable Do Not Disturb each day. This can be done in User Preferences → Notifications. For more details, see Do not disturb mode.

Accessibility Improvements

Discourse recently underwent an accessibility audit “Lightning assessment.” This looked at key parts of Discourse to ensure they meet Level AA of the Web Content Accessibility Guidelines. Improvements to Discourse based on this audit have been made, and will continue to be done over the next few beta releases.

Use logo small for the system user’s avatar

The system user on a site will now use small logo from site settings instead of the generic gear. This gives a more site specific look and feel when system actions are taken, or automatic PMs sent. Sites that wish to override this can disable the use_site_small_logo_as_system_avatar site setting.

Enable inline Onebox for all domains by default

Discourse has long supported Oneboxing. Paste a link on its own line and Discourse will attempt to pull the site logo, title, and description for the link source, or display a preview of the linked image or inline video player. But did you know Discourse also supports inline Oneboxing? Paste a link within a paragraph and the link will be replaced by the title automatically. For example, paste https://en.wikipedia.org/wiki/Main_Page and it’ll display as Wikipedia, the free encyclopedia.

Optional filtered replies view

Disabled by default, sites can enable the enable filtered replies view site setting to change the way replies are viewed in the post stream. When used, the post stream is refreshed with only the replies in the current conversation marked as visible.

Category group moderation improvements

Category moderators can now edit topic titles, as well as list/unlist topics.

Other features of note

  • Allow disabling self-deletions of posts
  • Replace -> with → when the markdown typographer is enabled
  • Include post number in inline Onebox titles
  • Increase maximum watched word length from 50 to 100 chars
  • Non-staff users can use shared drafts

Even more!

But wait, there’s more! We do our best to highlight new features and changes for you, but there’s always too many changes to detail. For a full list of new features, bug fixes, UX improvements, and more, be sure to review the Additional Features and Fixes listed below.


Plugin improvements

Many plugins

  • Bug fix
    • We’ve patched numerous bugs in many of our plugins
  • Translations
    • We’ve updated the translations in many of our plugins


  • Improve contributors detection


  • Support Instagram TV links
  • Display section title when URL contains fragment

WP Discourse

  • Now maintained by Angus and the Pavilion team
  • Use direct db r/w for values used and updated in publication logic
    • Adds get_post_meta_from_db and add_post_meta_to_db, which are direct substitutes for get_post_meta and add_post_meta that read and write directly to and from the db instead of using the wordpress object cache as first port of call.
    • Like the prior usage of add_post_meta, add_post_meta_to_db enforces uniqueness.
    • These new methods have only been applied to the meta value both used AND updated in the publish logic, i.e. discourse_post_id.
  • Update @wordpress/scripts to 12.1.0
  • State should not be initialized if postType is not allowed
  • Add option to enable/disable direct db usage
  • Formatting changes for the PHP codesniffer

Chat Integration

  • Add support for Webex Teams

Canned Replies

  • Hide hyperlink and calender buttons in editor


  • Show assigned user on search results

Code Review

  • Set API Key site setting as secret, requires click to display
  • Allow disablingt of automatic followup approval
  • Use default branch instead of ‘master’


  • Silently auto close solved topic


  • Add coupon support

Additional Features and Fixes

Click to expand

New Features

  • Give user menu icons alt attributes
  • Replace single dash arrows when the typographer is enabled.
  • Reason to reject user signup
  • IMAP detect spammed email and delete associated Discourse topic
  • Log when a group is deleted.
  • Add before-groups-index-container outlet
  • Warn admins when installing a theme that’s already installed
  • Disable post deletions by setting max_post_deletions to zero…
  • Add dash warning for using S3 without CDN
  • Introduce skip_auto_delete_reply_likes site setting
  • Explicitly ban outlier traffic sources in robots.txt
  • Special shortcut for searching for own posts
  • Adds support for the WEBP image format
  • Allow plugins to show custom HTML via renderTags
  • Allow plugins to preload custom data on search
  • Allow plugins to register demon processes
  • Allow IP anonymization via admin user controller API
  • Automatically disable slow mode.
  • Support for GitHub Codespaces development
  • Link to text customization when editing system badges
  • Adds back button to theme editor
  • Add after-topic-list-body plugin-outlet
  • Reviewed by filter.
  • Silently close topic

Bug Fixes

  • Embedded comments should only return regular posts
  • Show the fallback locale warning when both settings are enabled.
  • Change default for IncomingEmail#created_via to 0 (unknown) and make NOT NULL
  • I18n couldn’t find translations.
  • Allow max_redemptions_limit to be 1
  • Polish lang label
  • Don’t try to focus on a missing element
  • Support for single use invite links
  • Always show overriden colors filter
  • Remove rendering UX from ember models
  • Unescape emoji when pg headlines is used for search result blurb.
  • Do not email group user with user_private_message notification
  • Make sure login required skipped for confirm new email routes
  • CurrentUser was missing appEvents
  • Add Retry-Header to rate limited responses
  • Do not test bookmark rate limiter message
  • Do not process pop3 mails >` 1 week old
  • Add bookmark limits
  • Check for user presence before granting badge
  • Allow users to opt-out of using the site’s small logo as the system user avatar.
  • Acceptance/bookmarks test date issue
  • Make sure current user timezone is used for bookmark reminders from post dates
  • Remove migrate_from_s3 task that silently corrupts data
  • TopicTrackingState was initialized after Site
  • Url:refresh triggered when query params change
  • Stop incorrect emailing of group email from PostAlerter
  • Prevent users from converting the default theme to a component
  • IMAP post alerter race condition and code improvements
  • Render fancy title correctly in composer
  • Render topic fancy title in review queue
  • Make category change work with shared drafts
  • Prevents debouncing and query to override each other
  • Use ImageMagick to detect animated images
  • Safari iOS page title and url regression when sharing
  • Users can remove themselves from a PM even if they can still access it through a group.
  • Use the same time moment for related Redis calls in rate limiter
  • Sliding window end time in rate limiter
  • Make category slugs lowercase
  • Do not downsize or crop GIF images
  • Discobot exception when site_contact_username is promoted
  • Publish DND ends_at updates in httpdate format
  • Hiding a post should not trigger the duplicate check
  • Show unassigned component warning when installing multiple components successively
  • Reset theme install modal state on close
  • Hidden tags returned in extras of tags index json
  • Always truncate uncomplete emojis in excerpts
  • Broken emojis in topic excerpt
  • Do not include URL query in auto-generated CSP header
  • Don’t error topic RSS when posts are deleted
  • Don’t count HTML comments when calculating reply length.
  • Tab key should autocomplete like enter key does
  • Recurring was not working for some cases (eg: hours and unit >` 1)
  • Fix bg color of header on published page
  • Hide notification count on document title in Do Not Disturb
  • Validate type when picking an avatar.
  • Group SMTP email improvements
  • Inline Onebox should use encoding from Content-Type header when present
  • Prevents autocompoete of username to appear on right
  • Ensures defined expired_in is passed from write to write_entry
  • Correctly set scroll position when viewing a tag’s topic list.
  • Increase inventory lag for s3 to 2 days
  • Ensures recurring works when setting a start date in future
  • S3 CDN warning was showing wrong warning message
  • The title attribute of the diversity scales was incorrect
  • User destroyer spec
  • When the user is deleted anonymise category post
  • Show all topic statuses on full page search.
  • Use Redis replica host and port
  • Allow for final sigma in suggested usernames
  • Don’t enqueue imported users when there’re multiple custom fields.
  • Disallow zero-width and other non-printing characters in tags
  • Handle badge grant for deleted badge
  • Search topic title headline being truncated.
  • Missing PG topic title headline when pg headlines is enabled.
  • Autoplay videos must always be muted
  • Show restricted tags in bulk select
  • Re-run remove flag and queued post web hook migrations.
  • Make find_by_slug_path work with default slugs
  • Clear in-process theme cache after clearing DB cache
  • Missing default notification level on group creation
  • Scroll to the last position when navigating back to the tag topic list.
  • Bypass AnonymousCache for /srv/status route.
  • No email when the category is muted and mailing list is on
  • Do not forbid tags in /new-topic on mobile
  • Clear WordWatcher cache after topic_spec
  • Show quote replies when filtering
  • Show correct avatar in post stream bar
  • Users without shared drafts access can still have access to the category.
  • Make Oneboxer#apply insert block Oneboxes correctly
  • Show retina avatars on Chrome
  • Posts with Staff Colors were excluded from the group activity
  • Show ‘New’ filter when ‘none’ subcategory set
  • Normalize links by converting them to lower case
  • Build correct topic list filter
  • Logout redirect should only be /login for login_required sites
  • Use sql_fragment instead of sanitize_sql_array
  • notify_file_change was outputting a command to vim
  • Correct tracking when mute all categories
  • Don’t raise an error if a custom emoji image was deleted
  • Only block local edits for git-sourced themes
  • Prevent error when primary email is missing
  • Missing translation
  • Only cache reports with exceptions for 1 minute
  • Prevent usage of composer-action-undefined CSS class
  • Replace Vimeo iframes with a link in emails
  • Avoid clock skew issues when logging in with Google
  • Allow for cateogry edit routes of unknown depth
  • Remove custom ‘error’ action on build-category-route/discovery
  • Actually error when topic timer time is in the past
  • Removes extra slashes from URL
  • Generate correct prev and next topics page URL
  • Correct casing of whitelisted SVG elements
  • Restore dismissing the first notification
  • Local dates showed incorrect timezones with extra whitespace
  • Follow open in new tab site setting for bio links
  • Stop category 404s from breaking the router
  • Hide user id when hide_email_address_taken
  • Adjust reviewable menu placement on mobile
  • Include locale in cache key for not_found_topics
  • Use CDN for custom emojis
  • Group#flair_url must be a real URL
  • Do not replace smiling_face by slight_smile
  • Trigger an event when a post is bookmarked.
  • Stop using duplicate composer button ID
  • Correct link in the notification about moved post
  • Load .js files from plugins in qunit testing env
  • On invite redemption only update pending ReviewableUser record
  • URL encode tag name
  • Show/hide ignored users preferences
  • Don’t error-index category job when missing category

UX Changes

  • Fallback locale warning improvements.
  • Use uniform style for tag counts
  • Text customization for different languages.
  • Show a warning on the category edit page when category style is none and colors are disabled.
  • Stop attempts to convert the default theme to a component by removing button
  • Ellipsis hamburger menu link text when overflowing
  • Add space between links and text in labels
  • Improve color scheme choices in user prefs
  • Refactor topic list nav
  • Autocomplete suggestions should be unselected by default
  • Allow quick access profile content to scroll
  • Allows to copy/paste a list of | separated values in sk
  • Transition to edit URL when adding a category
  • Move do not disturb to profile panel
  • Text overflow user-{primary,secondary}-navigation
  • Move reply filter button on mobile
  • Adjust default menu width
  • Blend header colors
  • Don’t wrap menu text under icon
  • Add title attribute to watched word input
  • Make theme install modal more responsive
  • When input placeholders are too long, truncate with ellipsis
  • Remove timeline from print view, fix header in crawler view
  • Tweaks to filtered replies
  • Show required indication consistently on signup
  • Fix unreachable buttons on menus in Safari iOS
  • Add full date title to fps-result date
  • Makes sk components full width on users admin page
  • When requiring user fields at signup, also mark default fields as required
  • Fix invite checkbox width issue


  • Improve cook_url performance for topic thumbnails
  • Optimize homepage and topic performance
  • Add indexes to speed up profile pages
  • Run user merging task in a background job.