3.4.0.beta1:デフォルトのトップメニューアイテムに「ホット」表示、新機能インジケーター、投票は絶対数を表示可能に、その他

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

New Features

  • Triage rule can skip posts created via email (775)
  • Single click proofreading (769)
  • LLM Triage support for systemless models. (757)
  • Allow specific groups access to summary feature on PMs (760)
  • Stream other post helper options (745)
  • Make emotion analysis enabled by default (732)

Bug Fixes

  • Malformed message in systemless + inline img scenario (771)
  • Triage’s search_for_text should be case-insensitive (767)
  • UrlEditable must be true for all providers except Bedrock (766)
  • Tool editing code editor resetting on every keypress (765)
  • Mobile composer helper trigger should work on Android and iOS (763)
  • Add original upload markdown on caption failure (762)
  • Clicking on summary links breaks summary (759)
  • Modals in composer helper menu not working (755)
  • Triage-flagged posts didn’t have a score. (752)
  • Prevent AI caption setting from showing unless all criteria is met (753)
  • More robust summary implementation (750)
  • AI helper not being shown on mobile view (749)
  • Gemini 0801 tool calls (748)
  • auto_image_caption not always present for current user. (746)
  • Correctly save provider-specific params for new models. (744)
  • Handle nil reply_to_post in AI Bot event handler (743)
  • LlmModel validations. (742)
  • Add tool support to open ai compatible dialect and vllm (734)
  • Use correct date for cached summary (733)
  • Properly pass errors to client (731)

UX Changes

  • Topic summary UI improvements due to DMenu changes (772)
  • Add dark-light mixin for better visibility in dark themes (764)
  • Style & position AI helper in composer (758)
  • Summary fixed positioning (740)
  • Use stacked line chart for post sentiment (737)
  • Clarify purpose of OpenAI API key setting (739)

discourse-assign

Bug Fixes

  • Prevents column reference “id” is ambiguous (590)

discourse-cakeday

Bug Fixes

  • Move birthdays and anniversaries links to more section (131)

discourse-calendar

Bug Fixes

  • Removes clean title codepath (600)

Performance

  • Removed N*2+1 in availability topic (599)

discourse-chat-integration

New Features

  • Added Power Automate as a new provider (204)
  • Add topic tags changed trigger to chat integration (208)

discourse-data-explorer

New Features

  • Allows CSV file result to be attached in automated PMs (318)

Bug Fixes

  • Fix double validation (314)
  • Fix user_id validation (312)
  • Param should be displayed when the default value is invalid (313)
  • Empty param-inout form should reject submit (309)
  • Use with_deleted only in topic and post (308)
  • Wrong type in category_id param input (304)
  • Create parameter input boxes after save (303)

UX Changes

  • Rewrite date/time param-input using FormKit (316)
  • Use GroupChooser in group_id param input (315)
  • Rewrite param-input using FormKit (307)
  • Using CategoryChooser for param param_input (306)

discourse-deprecation-collector

Bug Fixes

  • Update config reference after a core change (29)

discourse-doc-categories

New Features

  • Report extraneous items on indexes (11)
  • Add report with topics not indexed (9)
  • Add advanced search filter in:docs (8)

UX Changes

  • Add doc icons to sidebar items (10)

discourse-follow

Bug Fixes

  • Update user-profile-secondary outlet usage (122)

discourse-fontawesome-pro

UX Changes

  • Remove discourse-bookmark-clock because there’s no pro alternative (55)

discourse-global-filter

Bug Fixes

  • update_category_stats erroring on bad column lookup (154)

discourse-group-tracker

UX Changes

  • Normalize disabling checkboxes when turning off group tracker (64)

discourse-instant-search

New Features

  • Add tags refinement list and…

Bug Fixes

  • searchType typo, switch to constants
  • Linting
  • Error when opening filters after switching search type
  • “Invalid Date” text appearing after two mins
  • Embeddings should not be fetched again if load more is pressed
  • Hyde/Hybrid/Semantic working
  • .search() call breaks show more results in hits
  • Sort mode persisting results
  • Posts links
  • Broken links

UX Changes

  • Fix highlight dark mode colors
  • Use dimmer highlight color for search highlight
  • Include categories in controller so we can assign category badge colors
  • Lock icon for closed topic results
  • Improve styling and structure for chat results
  • Style post results, add PM envelope to titles
  • Style user results as a table
  • Adjust positioning and styles for search, topic results
  • Topic/PM refinement list and conditional refinements
  • Improve search layout and styles, grid user results

discourse-jira

New Features

  • Add tags to topics based on issue status. (71)
  • New category setting to automatically create a Jira issue. (69)

discourse-livestream

New Features

  • Add relation between TopicChatChannel and Chat::Channel (29)

Bug Fixes

  • Show livestream join message only for topics with livestream chat (30)
  • Moves lookup later (28)

discourse-math

Bug Fixes

  • Adds katex support for chat (88)

discourse-multilingual

Bug Fixes

  • Correctly set type/code on serialize (17)

discourse-policy

Bug Fixes

  • Solve log noise when scoped order is ignored. (134)

Performance

  • Use find_each to avoid memory spikes take 2 (133)
  • Use find_each to avoid memory spikes (132)

discourse-preset-topic-composer

Bug Fixes

  • Add createTopicDisabled check to new topic button (26)

discourse-ratings

Bug Fixes

  • Prevent DestroyOldHiddenPosts from failing when there are orphaned posts (9)
  • Use proper action function (8)

discourse-reactions

Performance

  • Static id for like post action type (305)

discourse-solved

Bug Fixes

  • Don’t allow TL4 users to unconditionally accept solutions (305)

discourse-subscriptions

Bug Fixes

  • Pricing table for one-off purchases (228)

discourse-templates

UX Changes

  • Shortcut help should show lowercase i (81)

discourse-theme-creator

Bug Fixes

  • Ensures user can save theme setting (87)

discourse-topic-voting

New Features

  • Allow order:votes on /filter (204)

Bug Fixes

  • Care for nil counts when ordering (205)

discourse-translator

New Features

  • Add translator error ProblemCheck for Microsoft (161)

Bug Fixes

  • Handle same language translations (164)

All Features and Fixes

New Features

  • Allow showing site text search in selected locale (28453)
  • Allow plugins to specify keyboard shortcuts for hidden toolbar items (28456)
  • Add estimated number of global and EU visitors to the about page (28382)
  • Change default for push_notification_time_window_mins (28431)
  • Unseen feature indicator in admin sidebar (28397)
  • Add system_user_max_attachment_size_kb site setting (28351)
  • Always show full page “New Features” to admins (28383)
  • Allow completely custom score reasons. (28348)
  • Bring plugin:create to core from create-discourse-plugin gem (28350)
  • Add delay to native push notifications (28314)
  • Participating users statistics (28322)
  • Change tags sent in topic_tags_changed trigger in automation plugin (28318)
  • “Hot” replacing “Top” as default in the top menu (28252)
  • Add option to immediately delete stub topics upon merge (28228)
  • Absolute Numbers in Poll (28240)
  • Add live_slots_(start|finish) for Sidekiq perf logging (28260)
  • Added trigger for topic tags changed (28176)

Bug Fixes

  • Endless loading post history (28425)
  • Correctly shortcut format on mac (28556)
  • Respect the End key when last post is already rendered (28524)
  • Allows to manually remove error for virtual fields (28555)
  • Allows selectText to take a scroll position as opt (28554)
  • Destroy draft when clicking the Discard button (28552)
  • Add users to user directory on account activation (28505)
  • Return properly interpolated translations for flags
  • Prevents topic hot scope error on future topics (28545)
  • Prevent group requests from loading infinitely (28544)
  • Prevents exception when showing replacements (28543)
  • Fix incorrect check for required custom fields (28541)
  • Prevent desktop notification callbacks on mobile (28527)
  • When replacing text in composer maintain history (28537)
  • Bookmark reminder was clearing incorrectly (28506)
  • Video uploads sometimes hang indefinitely (28523)
  • Refresh the edit tag section when navigating to another tag (28519)
  • Prevents creating post from impacting the app (28518)
  • Correctly reset form before destroying it (28516)
  • Videos not uploading due to thumbnail generation error (28493)
  • Adds chat-draw-expanded class to body (28490)
  • Trigger user_logged_out event when the user logs out (28482)
  • Hide heading when there’s no custom description (28470)
  • Skip 1:1s when chat search returns users (28464)
  • Ensures href is not set two times (28466)
  • Subfolder account activation (28463)
  • Lost outer context in #each block in hbr (28461)
  • Specify @type arg for the image uploader in the about config area (28460)
  • Write stylesheet cache atomically (28457)
  • Use correct subtitle for Site contact name field (28448)
  • Don’t show silence button on staff users and display similar users (28423)
  • Broken mentioned users with capitalized usernames (28421)
  • Translation overrides didn’t work for search orders (28404)
  • Make poll voter list expansion persistent (28352)
  • Bypass highlighths for long code in auto mode (28399)
  • Make cancel and reset buttons work for file_size_restriction settings (28347)
  • Allow chat sound when notifications are disabled (28385)
  • Delay chat notify watching job (28386)
  • FormKit: Allow 0 in required number input (28368)
  • Don’t show blank space when there’s no banner image (28366)
  • Ensure we dispose of MiniRacer::Context before forking daemons (28361)
  • Serialize Flags instead of PostActionType (28362)
  • Access correct name and description (28353)
  • Set overflow-x to auto to prevent scroll bar from always showing (28294)
  • Do not continue list inside codefence (28346)
  • Correctly render sql checkboxes (28328)
  • Serialize Flags instead of PostActionType (28334)
  • Poll when config is on_close only show results when poll is closed (28299)
  • Poll ranked choice voter list corrupting on expand (28315)
  • Stop injecting uneeded margin (28335)
  • Not hit Redis cache in seeds (28329)
  • Serialize Flags instead of PostActionType (28259)
  • Display new DM button when public channels are disabled (28306)
  • Site setting category titles (28281)
  • Don’t log an error when rendering a 404
  • Flaky flags specs when moving up or down (28272)
  • Unescape URI properly when redirecting to a category
  • Ensure do-not-disturb icon updates correctly (28253)
  • Return additional message types properly
  • Use CheckboxGroup for admin badges form (28239)
  • Limit the number of custom flags to 50 (28221)
  • Backup_restore.rb wants db user from user, not username (28229)
  • Cache all flags multisite-safe (28204)
  • Set sane default for Net::HTTP when processing a request (28141)
  • Ensures tags/categories are present (28230)
  • Don’t clear inline problems when loading admin dashboard (28220)
  • Make the check better for drawer router (28212)
  • Further improvements to // handling (28211)
  • Do not strip // from the middle of URLs in discourse-url (28210)
  • Update do-not-disturb icon in real-time on glimmer header (28200)
  • Poll ranked choice result algo majority check (28191)
  • Update voter information upon remote change (28168)
  • Correct return isForever value (28194)
  • Badge image uploader (28188)
  • Remove chat default channel setting (28170)
  • Video thumbnails for missing videos (28152)
  • System badges can be disabled (28169)
  • Don’t count draft views towards topic view stats (28162)
  • Double reviewable items bug (28161)
  • Move downloading of Maxmind databases to after assets:precompile (28157)
  • Return properly interpolated translations for flag types
  • Perform topics merge in a background thread (28114)
  • Poll: Clickable, hoverable avatars (28121)
  • Race condition in Discourse.cache.fetch (28124)

UX Changes

  • Highlight the chat channel/DM only when chat is expanded (28488)
  • Explain choices priorities (28574)
  • Fix overflow usercard (28558)
  • Flag settings tab to follow UI guidelines (28479)
  • DMenu fixes (28551)
  • Make keyboard shortcut styling more subtle (28522)
  • Centralise DMenu mobile styling + fixes (28469)
  • Adjust software update banner for headerless pages (28496)
  • Don’t use split subcategory color in docked header (28494)
  • Fix textarea height on mobile (28495)
  • Add title token for What’s New admin page (28476)
  • Apply new admin UI guidelines to What’s New (28454)
  • Show topic map in topics without replies by default (28468)
  • Improve mention colors for dark color schemes (28462)
  • Fix restore info link on admin backups page (28452)
  • Apply admin UI guidelines to custom flags (28433)
  • View count in topic map should always be at least 1 (28447)
  • Apply admin interface guidelines to Backups page (28051)
  • Improve mobile view for the new /about page (28406)
  • Omit fav badges count if max is 0 (28402)
  • Do not check for dimensions in video filename (28349)
  • Style reviewables in the user menu when avatars are enabled (28388)
  • Only scrollIntoView if sidebar items are not already visible (28372)
  • Tweak styling for the new /about page (28367)
  • Remove baseline alignment from chat timestamp (28345)
  • Remove poll button bg color to avoid highlight issue (28319)
  • Small topic map improvements and fixes (28215)
  • Set “topics” link in sidebar as active for hot, unseen, and my posts filters (28305)
  • Add sidebar DM list back when public channels are disabled (28301)
  • Add plugin outlet to embeddable hosts (28264)
  • Smaller modal headings, shorter flag mdoal title (28278)
  • Do not delete narrative bot PM when skipping user tips (28265)
  • Change bookmark menu label from “Custom…” to “More options…” (28266)
  • Fix issue with long usernames wrapping in mobile user cards (28256)
  • Fix user profile button wrap, clean up styles (28255)
  • Remove extra margin from flag description links (28251)
  • Break long words to prevent overflow in activity stream (28250)
  • Link edit text to search in badges form (28248)
  • Respect current locale on topic map views date format (28199)
  • Move admin flag form to form-kit (28187)
  • Hide/show preview button title attribute fix (28155)

Performance

  • Ensure suggested topics is only loaded on last page of topic view (28507)
  • Defer button actions to improve interaction-next-paint (INP) (28019)
  • Delete I18n._overrides after they have been applied (28405)
  • Automatically join users to channels more efficiently (28392)
  • Reduce mem allocation of Chat::AutoRemove::HandleCategoryUpdated (28393)
  • Reduce memory footprint of Chat::AutoRemove::HandleCategoryUpdated.call (28381)
  • Reduce memory footprint of Chat::AutoRemove::HandleCategoryUpdated (28332)
  • Do not expire cache when PostActionType is saved (28337)
  • No redis calls when running migrations (28336)
  • Skip reset flag callbacks on seed (28333)

Accessibility

  • Remove redundant tabindex=0 from polls (28320)
  • Add aria-label to avatar link on categories page (28304)
  • Do not skip heading levels in keyboard shortcut modal (28285)
「いいね!」 9