3.3.0.beta3: Video thumbnails, Site setting confirmation, Faster access to plugin settings, and more

New features in v3.3.0.beta3

Video thumbnails

When uploading or linking a video, the composer will now show a thumbnail image in
the composer preview.

The image shows video being added to a post and the associated thumbnail in the composer preview.

Site setting confirmation

Many site settings will now see a confirmation dialogue popping up confirming the changes made.

Faster access to plugin settings

Plugins with related site settings will now show a settings button on the plugins page for faster navigation.

Improved moderation flags

Admins can now enable, disable, and reorder moderation flags.

This image displays a list of moderation flags with toggle buttons to enable or disable them, and menus to reorder them.

Improved navigation for mobile

The menus have been changed with more spacing for easier touch targets when on mobile.

Updated field requirements

Admins can now set user field requirements for new and existing community members

Security updates

This release includes fixes for these security issues reported by our community and HackerOne.

17 Likes

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-adplugin

Bug Fixes

  • Show non-restricted ads instead of not showing ads at all (213)

discourse-ai

New Features

  • Custom user defined tools (677)
  • Store provider-specific parameters. (686)
  • Allow select claude-3-5 for native tools (682)
  • LLM presets for model creation (681)
  • Support for Claude 3.5 Sonnet via AWS Bedrock (680)
  • Allow access to private topics if tool permits (673)
  • Optional tool detail blocks (662)
  • Anthropic function calling (654)
  • Add native Cohere tool support (655)
  • Improved tooling (651)
  • Restrict public sharing on login required sites (649)
  • Add support for all vision models (646)
  • Add aspect ratio support to DallE 3 (647)
  • Allow deleting custom LLMs. (643)
  • Auto image captions (637)
  • Improve logging by including llm name (640)
  • Use DBreadcrumbsItem in admin UI (631)
  • Test LLM configuration (634)
  • Add support for contextualizing a DM to a bot (627)
  • JavaScript evaluation tool (630)
  • Set endpoint credentials directly from LlmModel. (625)
  • Safeguard to avoid over triage (626)

Bug Fixes

  • Disabled chat breaks ai-chat-summarization (697)
  • Info not working, not suppressing hidden tags from report (696)
  • Use base64 encoded images in AI Image Caption via LLaVa (693)
  • Never provide tools with invalid UTF-8 strings (692)
  • Move the bot user toggling to the controller. (688)
  • When creating an llm we were not creating user (685)
  • Make sure LlmEnumerator always return value hashes using symbols (684)
  • SRV warning should not trigger on brand new LLM (679)
  • Typo when excluding personas from enabled bot list (671)
  • Display search correctly, bug when stripping XML (668)
  • Dall E / Artist broken when tool_details is disabled (667)
  • Do not mark column read only so certain deployments work (663)
  • Summarize is not working remove for now (661)
  • Use new report color keys defined in discourse/discourse#27240 (660)
  • Switch off native tools on Anthropic Claude Opus (659)
  • AI Bot Shared Conversation didn’t respect CDN / Subfolder (657)
  • Remove doubled up breadcrumb in persona UI (650)
  • Include_usage is not available in the Azure API. (648)
  • Move image caption group check logic to server side (645)
  • Reply broken when auto caption is enabled (642)
  • Amend incorrect translation keys (639)
  • Correct gemini streaming implementation (632)
  • Unresponsive post buttons due to Ask AI highlight (635)

UX Changes

  • Improve composer suggestion button layout (678)
  • Show image caption button on image hover (670)
  • QoL impromevements to the admin LLM models page. (674)
  • Improve appearance of attributed quote when sharing (665)
  • Hide AI preferences page completely if no settings for user (644)
  • Suppress “this is a warning” (636)
  • Follow plugin user interface UI guidelines. (628)

discourse-antivirus

Bug Fixes

  • Avoid deprecated replace_flag API (57)

discourse-assign

UX Changes

  • Smaller avatar size in button to prevent height change (576)

discourse-authentication-validations

New Features

  • Add value validation regex (13)

discourse-bbcode

Bug Fixes

  • Add new entry to .discourse-compatibility (67)
  • BBCode parsing specs (63)

discourse-calendar

Bug Fixes

  • BBCode parsing specs (575)
  • Move misplaced error translation (574)
  • Delete future holidays on region change (571)

UX Changes

  • Update mobile event styling (581)
  • Fix extra space and wrapping in topic lists (578)
  • Always wrap new dot and date onto same line (577)

discourse-category-experts

UX Changes

  • Add Space between ‘Close’ and checkbox for ‘Ask a category expert to respond’ (145)

discourse-chat-integration

Bug Fixes

  • Move chat integration problem check message to correct locale key (201)
  • Move GroupMe error message to server side translations (196)
  • Add missing dummy translations for tests (195)

discourse-code-review

UX Changes

  • Truncate long notification labels (213)

discourse-custom-topic-lists

New Features

  • Add markdown to banner description (15)
  • Add show on dropdown option to custom topic lists (10)

Bug Fixes

  • Add htmlSafe rendering to custom topic lists banner description (14)
  • Typo from merge (13)
  • Add check to ensure anon users still can enter site (6)

UX Changes

  • Refactor css classes to be easier to overwrite (16)
  • Make sure dropdown is always last (11)
  • Append description to query field (9)
  • Rename bannerLabel property to description (8)
  • Rename path property to slug (7)
  • Move custom-topic-lists-banner to above-main-container (4)
  • Add body class to list template (3)

Accessibility

  • Update labels for dropdown and sidebar (12)

discourse-data-explorer

Bug Fixes

  • Use correct label for column header (297)
  • Bookmarking group reports (291)

discourse-encrypt

Bug Fixes

  • Use new ‘should_add_attachments’ plugin modifier (323)
  • Add_attachments signature (322)

discourse-gamification

New Features

  • Handle user merging event (145)
  • Use DBreadcrumbsItem in admin UI (137)

Bug Fixes

  • Update post_created scoring (114)

UX Changes

  • Fixed the missing translation issue of “Rank” (146)

discourse-group-tracker

Bug Fixes

  • Track_posts_with_priority group setting shows when track_posts setting not selected (60)
  • Jump targets inside a topic list when using priority groups (55)

discourse-kolide

Bug Fixes

  • Add new entry to .discourse-compatibility (96)
  • BBCode tag parser (93)

discourse-lazy-videos

UX Changes

  • Avoid onebox CSS overriding youtube video height (15)

discourse-livestream

UX Changes

  • Fix margin and padding on desktop (23)
  • Update mobile styling and header icons (22)
  • Remove iframe styling overrides (20)

discourse-math

New Features

  • Add support for multilingual mathjax (84)

discourse-policy

Bug Fixes

  • Add new entry to .discourse-compatibility (129)
  • BBCode parsing specs (125)

discourse-post-voting

Bug Fixes

  • Add missing flag auto-silence reason translation (200)

discourse-preset-topic-composer

New Features

  • Add highlight to dropdown options (18)
  • Add tagGroups to button_types_json_schema (2)

Bug Fixes

  • Tag synonyms should work (15)
  • Tag groups with / are now being fetched correctly (10)
  • Adjust schema to options editor not loose inputs (9)
  • Fetching url for tags required a first / (7)
  • Composer keeps values re entering composer (6)
  • Label changing when select category (5)

UX Changes

  • Change booleans to use checkboxes (12)
  • Add selection indicator to composer preset (11)
  • Add tagGroups to defaults (8)
  • Move error message to the bottom of the composer (4)

Security Changes

  • Bring list of presets to backend (14)

discourse-prometheus-alert-receiver

New Features

  • Update topic_assignee and topic_group_assignee annotations (84)

discourse-reactions

Bug Fixes

  • Couldn’t select text after dismissing a reaction (296)
  • N1 in post action extension (292)
  • Reactions doubled up as like if no longer enabled (289)

discourse-salesforce

Bug Fixes

  • Add Rails 7+ compatibility
  • Move Salesforce API calls to background job. (79)

discourse-solved

Bug Fixes

  • When deleting users with solved posts (297)
  • Show the solved filter on tags (296)

discourse-subscriptions

Bug Fixes

  • Add missing transaction error translation (214)
  • Campaign banner should link to pricing table when enabled (212)

discourse-theme-creator

Bug Fixes

  • Ensures stop sharing is working (82)

discourse-topic-noindex

Bug Fixes

  • Add a check for when getting topics with only slugs (15)

discourse-topic-voting

UX Changes

  • Improved alignment for title voting (189)

discourse-translator

Bug Fixes

  • Don’t error out on deleted users (149)

All Features and Fixes

New Features

  • Only count topic views for explicit/deferred tracked views (27533)
  • Created edit and delete flags (27484)
  • Add WebHookEventsDailyAggregate report page (27573)
  • New ‘should_add_email_attachments’ plugin modifier
  • Add WebHookEventsDailyAggregate (27542)
  • User fields required for existing users - Part 2 (27172)
  • Add Untranslated filter to admin text customization (27555)
  • Add JavaScript mode to ace (27586)
  • Smarter list editing in DEditor (27563)
  • Enable list keyboard shortcuts on filter route (27551)
  • Support Spotify Onebox (27540)
  • Introduce site settings which require confirmation (27315)
  • Add hidden site setting to list ‘unsafe-none’ COOP referrers (27510)
  • Optional 2FA enforcement (27506)
  • Capture 28 day interval request stats (27471)
  • Add tag_group option in /filter (27427)
  • Show my threads from muted chat channels (27468)
  • Chat drawer navigation improvement (27419)
  • Align with /filter and allow multiple category search (27440)
  • Use basic HTML table if it can’t be converted to Markdown
  • Add Filter for Webhook Events by Status (27332)
  • Use new topic bulk actions dropdown on search page (27303)
  • Load chat channel settings within drawer (27346)
  • The ability to change the order of flags (27269)
  • Allow site admin to mark a user’s password as expired (27314)
  • Expand the admin sidebar when filtering (27312)
  • Allow “move to inbox” and “move to archive” for private messages using new bulk topic dropdown (27236)
  • Add “s3_uploads” option to “discourse backup” script
  • Show video thumbnail in composer (27233)
  • Admin can disable flags (27171)
  • Add Uyghur language (27183)
  • Topic_view_stats table with daily fidelity (27197)
  • Add agree and edit (27088)
  • Implement new required options in admin user fields UI (27079)
  • Add bulk action to bookmark (26856)
  • Allow to bulk delete chat messages (26586)
  • Use the new plugin show route from the plugin list (27097)
  • Introduce DBreadcrumbs components (27049)
  • Extend PM recipient bulk imports (27063)
  • Extend embeddable hosts with Individual tags and author assignments (26868)
  • Filter with CategoryDrop on category page (26689)
  • Redirect /faq, /rules, /conduct to /guidelines (27592)
  • Show chat and message buttons on your own profile (27600)
  • Use ‘moderators’ instead of ‘staff’ (27572)
  • Improve alignment of extra PM info in header (27594)
  • Revert chat footer changes partially (27591)
  • Remove default use of quaternary color, update nav pill styles (27502)
  • Remove the link from the title; add external icon; style adjustment (27571)
  • Increase spacing mobile menus (27554)
  • Remove tertiary color from non-link elements (27565)
  • Fix chat drawer z-index (27568)
  • Remove or replace button transitions with variable (27527)
  • Hide the error tooltip when focusing the topic title (27531)
  • Add new preview links to Popular Themes (27518)
  • Add min-height to preview image wrapper to give controls space (27523)
  • Vertical alignment for lighbox-wrapper (27520)
  • Fix user bookmark list keyboard focus state (27515)
  • Move user-cards above composer (27491)
  • Always show image preview controls, improve spacing (27489)
  • Remove padding to fix mobile thread date pinning (27470)
  • Highlight “no subcategories” as active dropdown option (27478)
  • Replace “all subcategories” with “remove filter”, reorder tag dropdown (27473)
  • Make tag filter color consistent with category filters (27474)
  • Rename FAQ to Guidelines (27451)
  • Update “all tags” to “remove filter” for tag breadcrumb dropdown (27424)
  • Add active highlight for breadcrumb navigation (27422)
  • Restrict mobile tooltip width to prevent horizontal overflow (27420)
  • Improve login modal on very narrow screens in desktop mode (27405)
  • Allow cooked local-dates to wrap (27404)
  • Show message and chat buttons on hidden profiles (27326)
  • Make chat drawer settingspage full height (27385)
  • Create space for new topics banner on new, unread (27374)
  • Improve topic timeline date titles (27351)
  • Streamline reset password page (27341)
  • Move users link to the top of the admin sidebar (27339)
  • Prevent twitter like/retweet counts from wrapping (27333)
  • Fix only-emoji size in user-stream excerpts (27330)
  • Add space between revision avatar and username (27329)
  • Fix mobile read state alignment (27323)
  • Use regular reset-password flow for expired passwords (27316)
  • Improve search result consistency (27289)
  • Constrain width of chat transcripts in posts (27288)
  • Keep recent search items on same line as icon (27280)
  • Keep recent search items on same line as icon (27264)
  • Contain background for deleted small actions (27263)
  • Adjust category badge size for new default font-size (27262)
  • Show shortcut for admin sidbar filter (27258)
  • Minor categories reorder fixes (27249)
  • Chat footer unread indicator (27244)
  • Change consolidated pageview experimental report colors (27240)
  • Implement new top-level nav on admin plugin pages (27126)
  • Hide ‘same site cookies’ site setting (27230)
  • Add illustrations for empty chat list + split into tabs on drawer (26910)
  • Make sticky avatars behavior consistent (27223)
  • Add text-overflow for channel members list (27208)
  • Also plays notification sounds in group channels (27176)
  • Reduces idle time to 0 on chat (27158)
  • Add space to following list (27154)
  • Add ellipsis to usernames in topic post map (PMs) (27137)
  • Disable plugin list settings button for some plugins (27124)
  • Reset idle on tab focus (27139)
  • Clean up email preference layout (27136)
  • Group membership PMs thread (26974)
  • Removes blinking indicator while streaming message (27131)
  • Change admin sidebar expand/collapse all icon (27120)
  • Update px spacing to em for proportionality (27108)
  • Switch post action buttons to inline-flex to avoid extra whitespace (27110)
  • Search context box too dark (27109)
  • Shorten duration of bookmark toasties (27085)
  • Increase base font-size to 16px (27087)

Security Changes

  • Don’t allow suspending staff users via other_user_ids param
  • Avoid the use of Object#send in Onebox::Engine::StandardEmbed
  • Fix Stored-dom XSS via Facebook Oneboxes
  • Update reviewable user serializer payload
  • Add FastImage SSRF safe freedom patch

Performance

  • Eager load field causing N+1 issue (27626)
  • Cache hostname in DiscourseLogstashLogger (27442)
  • Avoid excessive object creations in watched words (27354)
  • Fix performance of chat email notifications
  • PostTiming.pretend_read to not update TopicUser cache columns (27201)

Accessibility

  • Add aria-label to menu tabs (27071)
9 Likes