Discourse 2.2.0.beta7 Release Notes

New features in 2.2.0.beta7

TL4 users can reset bump date

In August we added the ability for staff to reset the date of the last bump. Now TL4 users will also have access to reset the bump date - helping them help staff keep the forum well organized.

Show a blurry preview when lazy loading images

Continuing our work from beta6 to improve image loading, we now display a blurred, low-res preview of the image while it’s loading, so you don’t just see a grey box.

Display avatars of PM recipients in small topic header when scrolling down

Ever started replying to a PM, and then realize you don’t know who you’re talking to? We now show user avatars as well as group names below the topic title when scrolled down so you always know who’s in the PM.



Don’t create PM for successful automatic backups

Did you know that the system user on Discourse PM’s itself every time an automatic backup is run successfully? You didn’t? No problem. We think it’s kind of odd that the system was telling itself that a backup was successful, so we’ve stopped that.
Admins will still receive a PM for unsuccessful backups.

Move posts to new/existing PM

As a site moderator I move posts from one topic into a new topic all the time. It helps me handle off topic digressions. However, this only worked for public topics, not personal/group messages. Now you can select and move replies within a message to a new (or existing) PM.

Improved S3 upload/backup handling

Discourse supports uploads and backups stored on AWS S3 out of the box. We previously supported reusing an existing S3 bucket, but this caused unwanted side effects - like showing all gz files within the bucket on the backups list, or issues loading the dashboard. To prevent this we now prevent the reuse of an existing bucket, and require a new empty bucket to be created for Discourse.

UX/CSS Improvements

We’re always working to improve Discourse’s default layout, and fix issues as we find then. In this beta, we:

  • Fixed alignment of categories and tags in topic lists
  • Gave header a bit of padding on narrow screens
  • Removed unnecessary margin in header tag wrapper
  • Added missing wizard icons
  • Added reports dashboard tab, new layout, report descriptions

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.

Security Updates

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

  • Users can pick non-avatar uploads.

Plugin improvements

Staff Notes

  • Bug Fix: Staff notes icon still appears when emoji are disabled.


  • Bug Fix: Staff notes icon still appears when emoji are disabled.


  • Bug Fix: handle mixed-case group names correctly


  • Support YouTube rel parameter

Push Notifications

  • Bug Fix: “prefer push on desktop” preference wasn’t editable

Data Explorer

  • New default queries
    • Top 50 Largest Uploads
    • Most active lurkers and inactive users
  • Bug fix


  • Multiple bug fixes
  • Validate posts within calendar topics
  • Add support for recurring events
  • Better timezone support

Chat integration

  • Support Matrix option for plain text instead of notice

Docker Manager

  • Simplify link to changes on GitHub
  • Update UX

OpenID Connect

  • Support latest version of ruby-jwt

Auto Deactivate

  • Show correct number of days when logging deactivation reason

Invite Tokens

  • Allow invite tokens to bypass email verification when redeeming invite

Yearly Review

  • Initial Release
    • More details to be released shortly

Additional Features and Fixes

Click to expand

New Features

  • Introduce lossy color optimization on resized pngs
  • Poll’s min can be 0.
  • Add Top Uploads report
  • Invalidate broken images cache on Rebuild HTML action
  • Allow for custom excerpt BBCODE
  • Support YouTube rel parameter
  • Don’t create PM for successful automatic backups
  • Add /conduct as an alias for /guidelines
  • Remove full quote only if first paragraph
  • Improve backup stats on admin dashboard

Bug Fixes

  • Polls didn’t work in imported posts
  • Make test less fragile.
  • Pass all necessary options in migrate_to_s3 rake task.
  • Quote selection in IE11
  • Validate poll arguments.
  • Validate number poll.
  • Fix URL to user profile.
  • Show error msg on grant badge if message available from backend
  • Calendar range was too wide
  • Reports issues with ie11
  • Composer css fixes for ie11
  • Uses flex: 1 0 0; instead of flex: 1; for better browser compat
  • Better left/right positioning in select-kit components
  • Less fancy pages computation for browser compatibility
  • RouteToTag mini-fix for IE11
  • Limit previous IE SVG click event fix
  • Recurrence was not applied when selected in the form
  • Optimize collapse/expand select-kit codepath
  • Remove storage_stats from the list of reports, too specific
  • Delete dataset doesn’t work on safari
  • Dates should also store recurring
  • Hashtags should work for non-english characters
  • Don’t use Redis#keys in production.
  • Validate YAML before save to avoid race condition
  • Do not raise error if most liked user is deleted
  • Hide group membership request button for existing members
  • Gfycat oneboxing
  • Show popup before bulk invite
  • Resetting bump date shouldn’t fail when first post is hidden
  • Narrative bot should ignore action on deleted post
  • Subfolder path is missing in category permalinks after slug update
  • Workaround for Edge issue with clicks on SVGs
  • Raises an error if q param is empty in search page
  • Use one-way binding to prevent unnecessary updates in site.periods
  • Use correct post object when logging exception
  • Skip adding sso diagnostics if sso object is nil
  • Copy old status to new poll.
  • Bypass draft check when switching to shared draft.
  • Hide emails on admin user list for moderators
  • Move sso provider into its own class so it doesn’t interfere with sso client
  • Use CDN for logos and icons.
  • Preserve github fragment URL
  • Ensure that multisite s3 uploads are tombstoned correctly
  • Ensure that multisite uploads are tombstoned into the correct paths
  • Broken spec
  • Allow sending test e-mails to any email address when disable_email is set to non-staff
  • Disable multipart backup uploads to S3
  • Font tag resulted in wrong email trimming
  • Weird mixture of line breaks resulted in wrong email trimming
  • Enabling readonly mode should clear anon cache as well.
  • Rescue errors in job.
  • Properly reset controller of admin-user-index.
  • Strip remote url before import.
  • Adusts select-kit position even if not expanded
  • Ensures nothing is triggering rendering loop in after render
  • Clear anon cache when disabling readonly mode.
  • Switch recently readonly mdoe cache to a DistributedCache.
  • Use new key for delete topic to make it lowercased as all other buttons label around it
  • Create CORS rule on S3 only before a backup upload
  • Makes more resilient select-kit positioning
  • Consistency about our response for invalid user id in Admin::UsersController.
  • Clear the site_contact_username setting if the user’s staff privileges are revoked
  • Use find_by_id method to prevent record not found exception

UX Changes

  • Add group name next to PM recipient avatar
  • Show generic message when reloading ‘activation email resent’ page
  • Improves help text for admin and wizard logo settings
  • Improves flags-status report
  • New site setting to define activity metrics displayed on dashboard
  • Show lazy loaded images while they are downloading
  • Switch placeholder to an SSH url if importing a private theme
  • Use new FA5 icons on Backups tab
  • Change default date range of dashboard trending search report to a month
  • Improve dashboard report title copy


  • New ‘migrate_to_s3’ rake task
  • Automatic upload size calculation not persisted
  • Eradicate N+1 queries from the theme admin page