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
Animated Avatars
New Features
- Make gifsicle an optional dependency
- Pause animations on blur
Bug Fixes
- Crop when gifsicle is installed
- Alias method ordering
Assign
New Features
- Improves random assign to assign to a post
Bug Fixes
- Add missing notification title
- New notification type needs one more i18n string
- New notification type needs some i18n string
- Reuse topic query method to find group topics
UX Changes
- Topic list refactor
Zendesk
Bug Fixes
- Creating ticket spec
Discourse Chat
Features
- Limit unique emoji reactions to 30 per message
- Insert link with shortcut in composer
- Remove move to topic
- Deleting chat channels
- Include reactions in archive chat quotes
- Settings for minimum message length & disabling attachments
- Close/open chat channel
- New setting to define default emoji reactions
- Retry failed archive
- Block duplicate messages sensitivity setting
- Chat channel archiving
- Auto-focus composer on key press in full page
- Add chat_default_channel_id site setting
- Allow use of
[chat]
bbcode within chat messages - Add chat keyboard shortcuts to help modal
- Auto silence users from flags
- Chat channel statuses
- Auto-silence users who exceed rate limit
- Quick silence button for staff, and block silenced users from interacting w/ chat
- Uses upload filename for reply to excerpt if message is empty
- Allow using
[quote]
bbcode in chat messages - Highlight code blocks for chat messages
- Infinite scrolling downwards
- Add simple composer shortcuts
- Notify chat message users on quote
- Rate limit message sending with btn to re-send
- Chat quoting
Bug Fixes
- Pasting a link with active text selection was broken
- DOM operations should happen after render
- Ensures chat-composer-details uses available space
- Ensures editing is cancelled on channel change
- Do not autofocus chat when ? pressed
- Clipboard copy chat quotes breaks on Safari
- Don’t error when user no longer exists
- Incorrectly ignoring sticky scrolling after fetching messages
- Ensures only one msg-action on mobile
- Only return open channels for quick selector
- We were comparing user object and id
- Displays unread-indicator only when needed
- Use similar styles for chat-emoji-avatar as chat-user-avatar
- Use system user for archive topics and posts
- Use correct chat_allow_uploads setting
- Show last 3 used emojis for recent reactions
- Moves unread indicator to chat-channel-title
- Ensures tc-reply-display is taking using necessary space
- Use dedicated emoji store in chat only for reactions.
- Clear unread when channel archived
- Autocapitalize sentences on mobile
- Full-page don’t capture space button
- Chat channel selector was broken for incoming webhooks.
- Guardian can_rebake? was breaking core post rebake endpoint
- Improvements to archiving tool
- Archive channel refinements
- This would always evaluate to true
- Convert emojis to unicode in push notifications
- Locale nesting for chat_default_channel_id site setting
- Move channel settings button to channel browse list
- Revert chat-composer keyUp to keyDown event
- Show deleted messages if can moderate
- Ability to tab to and press enter on chat header
- Ensures body is not scrolled when inserting channel list
- Ensure online flair is shown correctly on replies
- Preserve uploads with associated ChatUpload
- Ability to react to previously staged message
- New DM erroring on create because of canModifyMessages
- Don’t expand deleted messages on scroll up
- Focus in composer after ‘edit message’ button is clicked
- Always use dark color for background on upload
- Upload in use callback returned from method
- Block more UI while previewing channel
- Don’t create errored chat message from webhook event
- User’s reactions are correctly marked as
reacted
UX Changes
- Center channel title on mobile
- Much more specific chat mention notifications
- Reduces is-online circle width
- Implements presence indicator as a circle instead of bubble
- Chat notification consistency
- Revert margin changes to .chat-channel-title
- Re-apply channels margin on mobile.
- Improves behavior of the icon when chat is visible
- Restyle browse channels page
- Adjust styles, remove leave chat button
- Add visual element when dragging files to upload into chat
- Expand target area for chat uploads
- Remove the alert gap on more alert types
- Small padding fix
- Fix style inconsistencies in chat quoting
- Minor fixes for font, width, and icon adjustments
Performance
- Removes two unnecessary enclosing divs for each message
- Remove n+1 for in_reply_to messages
Accessibility
- Add role region and aria labels to important regions of chat
Voting
Bug Fixes
- Add second order by column to preserve order while paging.
BBB
Bug Fixes
- Compatibility fix after a core change
Calendar
New Features
- Adds holiday flair to chat
- Adds support for timezone (recurring and non recurring)
- Adds a currently away report
Bug Fixes
- Ensures client is sending UTC to backend
- Missing translation for currently away report
- Apply latest holidays definitions
- Ensures custom fields are reloaded in the spec
- Fix hidden calendar weeks on month view
- Remove arrow even if there is no whitespace around it
- Validates the recurrence
Solved
Bug Fixes
- Intializer regression
- Refresh custom fields and removes dup fabricator
Encrypt
Bug Fixes
- Check signature using crypto primitives
- Do not error when there is no
currentRouteName
- Update “Generate paper keys” instruction clarity
UX Changes
- Minor composer button style updates
Kolide
New Features
- Update user alert PM content after a device is destroyed.
- Assign device owner from Discourse group alert PM.
Bug Fixes
-
Content-Type
header is required for PUT methods on Kolide API.
Code Review
Bug Fixes
- Allow deleted topics to be imported again
- Validate code_review_default_parent_category setting
- Show error if plugin is not configured
- Escape Git trailers before replacing links
- Do not reuse GraphQL clients
RSS polling
Bug Fixes
- Fail fast if user is nil
Subscriptions
Bug Fixes
- Ensure sidebar class is removed when component destroyed
Cakeday
Bug Fixes
- Don’t disable birthday emojis when cakeday is disabled.
Zoom
Bug Fixes
- Compatibility fix after a core change
Reactions
Bug Fixes
- Always fetch users for each reaction when changed
- Remove duplicated code
Accessibility
- Ensures focus on reaction button is clearly visible
Automation
New Features
- Implements post field
- Adds support for args when using %%REPORT%%
- Allows to insert reports using placeholders syntax
- Adds support for zapier webhook script
- Matches topic title in auto-responder script
Bug Fixes
- GroupField can be destroyed mid-init
- Followup to #b17235b breaking form
- Do not parse date if not start_date/end_date
- Ensures we don’t stop at first empty results
- Prevents automation to run when not needed in few cases
- Ensures we don’t crash if url is not given
UX Changes
- Adds default state when no automation have been created yet
- Correctly describes key as being evaluated as a regex
- Show caret when selecting script on new automation
- Makes clear changing script/trigger will also save new state
Performance
- Prevents unnecessary work in auto-responder asap
Docs
Bug Fixes
- Remove reference to share-popup
Chat Integration
Bug Fixes
- Use correct identifier in transcript thread hint
- Use correct copy for ‘all categories’
Additional Features and Fixes
Click to expand
New Features
- Let reviewables override the score type title.
- Update push notification icons
- Enable canonical url indexing
- Use canonical links in posts.rss feed
- Add nofollow to RSS alternate link in topics and categories
- Add new site setting list type with name and values
- Use Postgres unaccent to ignore accents
- Return geoname IDs from MaxMindDb
- Add ENV to control themes:update errors
- Replace share post popup with share modal
- Disable indexing of non-canonical pages by default
- Add settings to scale daily flags limit
- Use new topic-chooser for invite modal
Bug Fixes
- Do not raise if title cannot be crawled
- Ensure all/none subcategory filters work correctly with tags
- Issue 404 for invalid
/tags/c/...
routes - Add replaceAll to browser-detect
- Staff should not be able to PM groups that “Nobody” can message
- When using Ember CLI, plugin admin code was not being loaded in tests
- Reset last sent for existent bookmarks
- Ember test imports, again
- Ember test entries in discourse-loader
- Show bookmark options by default when editing
- Remove racing requests for admin users
- Skip ember-cli build memory optimisation for multiple rake tasks
- Always include the first poster when converting to PM
- Do not run Ember CLI chunk files through babel twice
- J/K post stream navigation inconsistencies
- Return nil when RetrieveTitle.crawl fails
- Update topic route id param
- Invalidate site settings cache in all instances
- Update group inbox notifications on archive/unarchive
- Apply onebox blocked domain checks on every redirect
- Buggy jump-to-post on Firefox
- Include engine mount path for API scopes added by plugins
- Allow admins to change user ignore list
- Only display the first listed price
- Make reply-ids public by fixing a typo
- Show 404 html on /posts/:id/raw and /p/:id
- Update and rebake uses of the old centralized avatar service
- Prevents self-reference to discoveryTopics from discoveryTopics
- Better 0 file size detection and logging
- Support new layout on Amazon product pages
- IOS do not have working push notifications yet
- Save email rejection error class names for incoming email logs
- Correctly notifies subscribers with post_action_destroyer
- Calculate docking - include offset of main
- Indirectly muted categories for topic-tracking-state
- Minor indentation fix for fullscreen code
- Setting emoji filter from initial autocomplete
- Make sure html_raw is hoisted in custom markdown cook function
- On mobile, overflow on post controls if there are many buttons
- Respect the cooldown window when editing a flagged topic.
- New indirectly muted category
- Avoid validations when destroying posts
- Move selectable_avatars_mode_validator_spec to new directory
- Use the category’s text-only description in the category-chooser
- Sanitize parameters provided to user actions
- Dev subfolder session cookies
- Don’t warn on empty .discourse-compatibility
- Don’t advance draft sequence when editing topic title
- Respect text direction inside quotes
- Show invite button if users can be invited
- Show links with 0 clicks in top links section
- Allow none category if default is none
- Use fresh theme setting values when compiling stylesheets
- Ensure category/tag classes are added and removed correctly
- Conform EmailLog#bounce_error_code to RFC
- Increase FinalDestination MAX_REQUEST_SIZE_BYTES
- Count clicks on links with query params
- ReplyByEmailAddressValidator should leverage EmailAddressValidator
- Update
can_see_members
attribute after leaving a group. - Handle
nil
values inDistributedCache#defer_get_set
- Don’t accept accents in slug if generation_method == ‘ascii’
- Load short upload URLs only once
- Unable to filter user directory when sorted by user field.
- Do not increase invite count for current user
- Redis may not be availiable on Redis initializer
- Tag show - hide no topics footer until there are no topics
- Post migration to fix custom emojis with secure URL
- Update application_helper logic now that Ember CLI is default
- Ensure theme JavaScript cache get consistent SHA1 digest
UX Changes
- Styling changes to global banner
- Hide group avatar flair block if it’s empty
- Tweak the “new” badge size, position, color
- Allow d-editor to be shrunk
- Print view always shows 0 votes, hide it
- Fix misaligned avatar
- Add description to the 2FA page when adding new admins
- Differentiate ‘emails disabled’ notice for ‘yes’ and ‘non-staff’
- Remove loading spinner from emoji picker
- Change color functions to match original primary, tertiary functions
- Improve timeline touch hit areas
- Add discourse-follow to official plugin list
- Display post count badge even when user has only two posts.
- Fix alignment on full page search
- Styleguide changes & color variable additions
- Change styling of admin bulk invite button
- Add ‘update’ to theme error message
- Prevent user menu overflow on tiny screens
- Control whitespace on categories topic list
- Use autocomplete=“off” for date-picker
- Improve default_code_lang copy
Performance
- Fix n+1 for categories + featured topics
- Avoid following links in topic RSS feeds
- Only subscribe to
/new
when logged in - Perform all cached counting in background
- Bump message_bus to 4.2
- Use a shared message for replies to tracked topics
- Load all common passwords in one go
- Reduce anon_polling_interval to match long_polling_interval
- Bump message_bus to 4.1
- Skip running ‘auto_leave’ during every PresenceChannel method
- Introduce site/global emoji cache
- Reduce number of EXPIRE calls from CachedCounting
- Use Redis
SET EX GET
instead of LUA script for counting - Terminate
rake
process duringember build
- Update ember-auto-import and webpack
Accessibility
- Focus last viewed topic in topic lists
- Use dynamic type scaling on iOS devices