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 4 security fixes for issues reported by our community and HackerOne.
Re-adds accidentally reverted commit:
Ensure embed_url contains valid http(s) uri
ERB execution in custom Email Style
Updates juqery to 3.5.0
Plugin improvements
Many Plugins
Add rubocop-discourse
Bug fixes
We’ve patched numerous bugs in many of our plugins
Assign notifications are now high priorty - use green notification icon instead of blue
Display assigned avatar in button and dropdown
Subscriptions
Use models to store data
This enables the plugin to show only subscription information which was generated on Discourse. Subscription data storage is limited to the external identifiers Stripe generates so we can interact with the API.
Zoom
Add option to use join url instead of SDK
Add ability to update title/date of past webinar entries
Voting
Move archived votes when merging topics
Code Review
Add option to default mute new categories created by the plugin
Add option to set a parent category for new categories created by the plugin
Discourse Hub App (Android and iOS)
Adds support for new high-priority notifications (i.e. bookmarks with reminders)
Improves button accessibility
Fixes an issue with a blank screen in some rare cases when returning to app from background
Additional Features and Fixes
Click to expand
New Features
Add setting to disable automatic CORS rule install in S3 buckets
Permalinks for tags
Category setting for default list filter.
Update the topic excerpt when the OP is rebaked
Add topic excerpt max length site setting
Add same site cookie ‘None’ option to make cross domain systems possible
Expose Composer.serializeToTopic in client side plugin api.
Extend duration allowed for download
Add endpoint for individual SVG icons
Add structured data to follow Google’s guidelines
Introduce a staff only override key for discourse-presence.
Add noindex header to tags pages
Allow parameter authentication for UserApiKeys
Allow plugins to register a callback to ignore DraftSequence.
Default canonical URL
Pass instance of revisor to post_edited DiscourseEvent.
Add noindex header to badges, groups, and /my pages
Let Google index pages so it can remove them
Add no_index header if robots is disabled
Filter settings by plugin
Tighten rate limiting rules for forgot password
Exclude muted categories from the “top” topics list.
Optionally delete bookmark when reminder sent
Include category position when exporting categories
Reddit video onebox
Facebook video onebox
Nokogumbo
Bug Fixes
Improve image downsizing script
returns false if the upload url is an invalid mailto link
Copyedit for the dominating topic warning
Concurrency bug when creating topic thumbnails
Don’t responde with error 500 if domain is invalid when adding automatic membership domain
Do not allow tag with name ‘none’
Properly ban non human users from draft system
Include lazyYT-container in cooked post HTML
Documentation was using incorrect function
Email Styles were evaluated out of order
When creating new PM username/groupname should be case-insensitive
No need for downcasing second time
Skip onceoff job for groups with invalid flair URL.
Do not fallback to flair_url column
Keep composer title and reply when switching to PM
Destroying a user failed when it had title
Group card not showing if user can’t see its members.
Call getURL method explicitly to prevent this context override.