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
discourse-activity-pub
Bug Fixes
- Manually scheduling posts should only be possible with First Post (63)
- Ensure process transaction errors are logged (60)
discourse-ai
New Features
- Allow excluding tags and categories from LLM report (447)
- Add support for new OpenAI embedding models (445)
- Support gpt-4-0125 which was just released (443)
- Setting to control per post embeddings (439)
- Even smoother streaming (420)
Bug Fixes
- Add table name to remove ambiguous column reference in SQL (449)
- Include provider in automation models (446)
- Typo in Automation::AVAILABLE_MODELS (442)
- Automatic embeddings index could fail if it existed in the backup schema (441)
- Misconfigured OpenAI API for embeddings shouldn’t spam logs (440)
- Don’t try to generate embeddings of posts in deleted topics (433)
- Typo (432)
- Truncate content for sentiment/toxicity classification (431)
- Always ensure
#generategets a valid input (427) - Scrub invalid prompts when truncating (426)
- Clean unicode usernames when adding messages through prompt’s contrstuctor (425)
- Set ivfflat.probes using topic count, not post count (421)
UX Changes
- Validations to LLM-backed features (except AI Bot) (436)
- Start progress dot animation instantly if it’s the only content (437)
discourse-akismet
Bug Fixes
- Do not run job if the plugin is absent (114)
discourse-animated-avatars
Bug Fixes
- Avoid accessing/mutating internal SafeString properties (25)
discourse-calendar
New Features
- Support upcomingDays parameter on the upcoming events list (524)
Bug Fixes
- Convert emoji to unicode on event title (530)
- SafeString conversion under latest Ember (535)
- Update Malaysia holidays for 2024 (527)
discourse-code-review
New Features
- Add a keyboard shortcut to approve commits (204)
discourse-data-explorer
New Features
- Allow topic URL without post number for post_id param (275)
discourse-jira
Bug Fixes
- Typo (58)
discourse-oauth2-basic
Bug Fixes
- Do not attempt to fetch user JSON if URL is not set (94)
discourse-post-voting
Bug Fixes
- Customize New Button Compatibility with Post Voting Plugin (186)
- Correct
can_flag_post_voting_comments?(187)
discourse-prometheus
New Features
- Add
databaselabel toactive_record_connections_count(84)
Performance
- Avoid hammering the database with pg sequence check queries (83)
discourse-topic-voting
Bug Fixes
- Render votes RSS feed (180)
All Features and Fixes
New Features
- Support silent internal links (25472)
- Mobile Chat Notification Badges (25438)
- Display last message on mobile (25384)
- Add option to sort topic query result via plugin. (25349)
- Enable passkeys by default (25340)
- Trigger app event for click tracking (25381)
- Add support for custom site name in Open Graph metadata (25373)
- Save/retrieve scroll position in chat channel (25336)
- Implements dates separators for threads (25335)
- Allow users to DM groups in chat (25189)
- Add hot as a homepage option (25325)
- Improvements to hot algorithm (25295)
- Experiment with hot sort order (25274)
- Mobile Chat Footer Redesign (25161)
- Add username header to global-rate-limited responses (25265)
- Allow sorting group members by custom field via API (25061)
- Option to sort user and group private messages. (25146)
- Prefer topic_embed’s cached content when summarizing (25190)
- Add loading spinner on categories page (25171)
Bug Fixes
- Chat messages exporter (25461)
- Hide ‘My Threads’ if no followed channels have threads (25470)
- Make long thread titles readable (25456)
- Do not show quote copy button to anon (25471)
- Missing ampersand in input class selector (25464)
- Avoid flash-of-unstyled-content in Safari with bug workaround (25462)
- Allows to translate yesterday (25446)
- Global selector needed to avoid clicks registering on other elements (25445)
- Remove excess margin after title (25444)
- Export csv file failed message (25443)
- Deprecate NumberField, use
<input>instead (25434) - Auto-populate group field in invite modal on group route (25431)
- Set allowUncategorized SelectKit option (25440)
- Remove css that should not have been added (25425)
- Computed property override error for webhook.categories (25418)
- Allow
categoryto be set ontopicmodel instances (25416) - FinalDestination::HTTP: validate address argument (25407)
- Use site setting to show my threads chat footer tab (25277)
- Renders channels-list wrapper only once (25383)
- Minor bookmark issues (25358)
- Allow sanitized-HTML in GH issues and categories oneboxes. (25374)
- Clear db_backup_port default value
- Radar chart not widely available. (25368)
- Search escape handler should be on keydown (25364)
- User-tips regression in #25361 (25367)
- Ignore invalid images when shrinking uploads (25346)
- User group check should return true for system user for auto groups (25357)
- Correctly save scroll position in channel (25345)
- Correctly exclude muted channels from thread unreads (25339)
- Fixed a bug where keyboard on ios was broken (25338)
- Ensures active message is cleared on threads opening (25337)
- Localize text in github oneboxes (25327)
- Rake task executed wrong method (25323)
- Account for moderators in group to TL mapping (25326)
- Errors when loading My Threads and Channel Threads (25310)
- Prevent popup when thread count request fails (25308)
- Allow staff to change group members visibility level for automatic groups (25281)
- “Action Logs” button on user admin page (25300)
- Set channels tab as default on mobile chat footer (25296)
- Correctly support safe-area-inset-bottom in footer (25276)
- Use category hashtag instead of link in guidelines_topic.body (25253)
- Update global rate limiter keys/messages to clarify user vs ip (25264)
- Trigger search app event being triggered multiple times (25250)
- Use getter and setter for computed properties (25259)
- Enforce proper max for clean_orphan_uploads_grace_period_hours (25235)
- Set microdata schema for topic on missing first post (25195)
- Exclude empty posts from microdata schema for topic (25198)
- Ensure consistent
datePublishedon follow-up pages in topic microdata schema (25130) - Admin sidebar on mobile was still showing forum panel (25236)
- Admin sidebar fixes and custom link registration (25200)
- Respect creation date when paginating group activity posts (24993)
- Delete topicNotificationLevel from transformed post before creatingRecord in post widget (25229)
- Convert the route to Ember Octane to fix the dependency issue. (25221)
- Don’t use joins to filter (24904)
- Hide deprecated site setting that was missed out (25220)
- Logs api scope not working (25215)
- Do not show themes list filter unless there are 10+ items (25202)
- Serialize categories when viewing a topic (25206)
- Chat summary email link in subfolder setups (25188)
- Correctly rewrite script/link tags in the proxy (25204)
- Incorrect admin sidebar setting migration (25192)
- Hide deprecated site settings that were missed out before (25180)
- Refactor calling of timed backup deletion
UX Changes
- Add bg style to input field type number (25460)
- Improve mobile table editor button location (25426)
- Fix and improve topic title badge spacing (25441)
- Chat >` channel info: show member count on tab (25439)
- Overflow fix for add participants to PM on mobile (25437)
- Improve featured link positioning in topic titles (25427)
- Simplify education message layout on empty /new route (25412)
- Fix spacing for about page headings (25410)
- Add spacing in new topic draft text - timestamp (25403)
- Add “filter for more” to icon picker (25263)
- Remove legacy option copy in nav menu setting (25382)
user.account_possessivewas impossible to translate (25331)- Hide draft post notice on mobile chat (25297)
- Show the SSO options when creating an account on mobile (25260)
- Chat composer dropdown styling mobile (25244)
- Adjust onebox styles for chat, title line-height (25249)
- Cleaning up some invite page styles (25247)
- Remove lock icon positioning (25241)
- Chat header size and alignments (25239)
- Change chat back button to btn-transparent (25184)
- Ensure links styled as buttons don’t get visited color (25199)
- Remove specific href styling (25183)
- Add max width for c-navbar on mobile to prevent horizontal scroll (25182)
- Add title attr to thread titles (25178)
- Fix review queue category and tag alignment, whitespace (25166)
Security Changes
- Properly escape user content within
<noscript>
Performance
- Eliminate some slow CSS selectors (25392)
- Better query performance for user avatar consistency check. (25342)
- Avoid loading the whole record when we only need id (25301)
- Skip validations when hotlinked images are replaced in posts
- Prefer subquery instead of two queries (25167)
Accessibility
- Show focus state in user PM topic list (25313)
- Allow keyboard users to scroll help modal (25226)
- Add role=“button” to composer cancel button (25228)
- Add
describedbyassociations in create account modal (25227) - Fix sidebar toggle icon color contrast (25225)
- Better contrast for lightbox overlay links (25208)