2.9.0.beta6: Whisper Improvements, Loading Splash Screen, Security Fix, and more

New features in 2.9.0.beta6

Whispers now support groups

Whispers are a great way for staff to communicate within a topic, without their post becoming public. Staff might share their thoughts on how to reply to a post, or discuss with each other whether to close a topic.

Historically, whispers were a staff-only features. Users needed to be admins or moderators to see (and post) whispers. Now, using the whispers allowed groups site setting, additional groups can be granted permission to whisper.

Whisper example. Staff view on the left, with whisper visible in italics. Anonymous view on the right.

Loading splash screen

For users with less powerful devices, or low bandwidth, the initial page load may take a few seconds. Discourse now displays a splash screen, rather than a blank white page, so users know something is happening.


Security Updates

This beta includes 1 security fix for issues reported by our community and HackerOne.

  • Validate email constraints when trying to redeem an invite

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


New Features

  • Update Google language mapping

RSS Polling

Bug Fixes

  • Don’t attempt to import topics with invalid categories.


New Features

  • Allows note to be edited

Bug Fixes

  • Fix a bug where a note change was ending in a full blown whisper
  • Don’t reuse assign note when reassigning
  • Ensure that assignee is participant of pm


Bug Fixes

  • Correct the table markdown


New Features

  • Allow excluding groups from leaderboards


Bug Fixes

  • Use activerecord’s none method instead of returning empty array.

Chat Integration

Bug Fixes

  • Don’t send nil user.name for MS Teams


Bug Fixes

  • Set Discourse consistent styles on Stripe card element
  • Import script confirmation flag logic


UX Changes

  • Disable the plugin by default


New Features

  • New script to append last edited by detail in post content.


New Features

  • Info screen
  • Add unsubscribe link in chat email summaries.

Bug Fixes

  • Sidebar channels should be shown at all time
  • Correctly displays unread indicator in titles
  • Correctly orders name/username using ascending order
  • Memberships query shouldnt list inactive/staged/suspended
  • Switch back to global presence
  • Isolated mode was not showing channels list
  • Channel title height without sidebar
  • Limits title padding
  • Replaces emojis in title of info screen
  • Prevents textarea to overflow modal on mobile
  • Progress bar was out drawer
  • Show hovering when sidebar is on as well
  • The create channel’s security settings link should work with nested categories
  • Ensures onebox date is linking to message id
  • Typo in the chat_channel subject translation
  • Ensures msg actions stay in live-pane
  • Ensures a new channel always starts with unread 1
  • Clean up deleted chat message bookmarks
  • Do not list bookmarks of trashed messages
  • Don’t include old messages in chat email summaries
  • Correctly place the retention reminder
  • Codeblock sizing (message and transcript)
  • Ensures chat-channel before rendering chat-live-pane
  • Properly wrap super-wide transcript oneboxes
  • Chat quote interfering with oneboxes

UX Changes

  • Prevents ipad to autofocus filter input
  • Adds slightly more padding to title with sidebar
  • Prevents autofocus on mobile
  • Remove discrepant styling from actions in composer
  • Improve summary email subjects.
  • Allows to refresh only notifications and not full page

Security Changes

  • Ensure chat message lookup checks for channel access


New Features

  • Support equation labelling and referencing in KaTeX (more mathjax compatibility)


New Features

  • Add Indonesia holidays

Bug Fixes

  • Stable core still needs a 6.1 migration
  • Optimize performance of UnescapeEventName migration on large sites
  • Bring back missing regions

UX Changes

  • Tiny css fix


Bug Fixes

  • Publish mark-as-spam message to all current subscribers

Data Explorer

New Features

  • Bookmarkable QueryGroups.

Additional Features and Fixes

Click to expand

New Features

  • Store sidebar section display state in local storage
  • Decouple category/tag presence in sidebar from notifi level
  • Validate tags in WatchedWords
  • User status emoji
  • New/unread messages count in experimental sidebar
  • Custom unsubscribe options
  • Expand messages filter links when viewing private messages.
  • Add Croatian language
  • Add messages section links to experimental sidebar.
  • Log the SMTP response in EmailLog
  • Change auto tracking to require 5 minutes vs 4

Bug Fixes

  • Max value for SiteSetting.delete_removed_posts_after
  • Add clearfix back for admin contents
  • Keep unique post checks separate for PMs vs topics
  • Uploading large files (>5GB) failed whenenable_direct_s3_uploads` is enabled
  • Didn’t delete upload stub when a new upload is created
  • Markdown handling failed on empty attribute value
  • Fix bulk_invite flaky tests
  • Improve mixcloud oneboxing
  • Defer removing the splash screen until the window load event fires take 3
  • Skip the window load event for now
  • Defer removing the splash screen until the window load event fires take 2
  • Remove splash screen in no-js view take 2
  • Reverts #17225 & #17223
  • Uninitialized class variable error in sidekiq
  • Typo in log_thread
  • Defer removing the splash screen until the window load event fires
  • Remove splash screen in no-js view
  • Use first supported type item when JSON-LD returns array
  • Use bookmarkable pattern for bookmark cleanup
  • In [DELETE] /admin/user/:id.json, parse boolean block_* parameter correctly
  • DarkMode availiability detection was broken
  • 99999 is not a valid TCP port
  • Tag groups were not visible to allowed group members
  • Remove leftover uses of ember_jquery
  • Defer scripts on theme-tests route
  • Quoting local dates bbcode regeneration
  • Link to “recently used devices” in suspicious_login email notification
  • Precompile admin-plugins.js (#17154)
  • Add wizard.js to ember-cli assets
  • Precompile start-discourse.js
  • Stop logging blank and invalid CSP reports
  • Skip invalid values in site setting upload references migration
  • Add missing pluralization rules for Bosnian
  • Extra-locale merging didn’t account for fallbacks
  • Double selecting replies
  • Wizard css was overriding some of core css
  • Make watched words uploads work as intended
  • JSON Schema editor layout issue with subarrays
  • Ensure presence endpoints don’t break the session
  • Ensure emoji is inserted in the correct location
  • Handle sites with more than 1 JSON-LD element
  • Whisper available when reply to topic
  • Allow all subdomains of localhost in development
  • NavItem and Composer prop overriding was broken
  • Rake tasks related to uploads were broken
  • Remove tags from experimental sidebar on notification level changed

UX Changes

  • Reduces splash animation delay
  • Core adjustments and styles for the experimental sidebar
  • Update color on arrow tippy box
  • Change copy for user-selector placeholder
  • Update topics stats automatically
  • Allow more mobile topic elements to be tapped
  • Truncate long category names in sidebar
  • Makes splash setting visible
  • Splash screen v1 improvements
  • Improve group page grid sizes
  • Introduces a splash screen behind a hidden site setting
  • Change wording for ‘regular’ categories to ‘normal’
  • Skip special paste handling in email-group-user-chooser when maximum is 1
  • Remove extra whitespace in github onebox


  • Remove server plugin outlet for post
  • Remove total for time to first response report.