RGJ reported that disabling AI embeddings after removing all models triggers an error ai_embeddings_enabled: Set 'ai embeddings selected model' first instead of allowing the toggle off. sam was asked to investigate. read more
Jagster proposed that the AI translator should translate summaries as well as titles, noting untranslated summaries hamper global reach. nat responded on prioritization. read more
NateDhaliwal found he cannot edit theme translations in Theme Creator; saving throws a “requested URL or resource could not be found” error. sam suggested suppressing the UI. read more
Lhc_fl highlighted that word_count based on spaces fails for CJK languages, proposing a character-count fallback or using cppjieba for segmenting. sam kicked off the discussion on char-count heuristics. read more
LG1 struggled to send mail via Namecheap Private Email SMTP; NateDhaliwal recommended Mailgun/SES and pointed to the email troubleshooting guide. read more
kuaza asked how to replace a forked Discourse repo with an existing installation; pfaffman explained providing error details and yml sections speeds plugin help. read more
rlauriston’s failing update due to a missing data container was resolved by recreating containers and restoring backups per pfaffman’s step-by-step. read more
jesus2099 reported that Firefox for Android 142 blanks the screen when typing; tobiaseigen walked through safe-mode and plugin/component isolation steps. read more
Add … option to Discourse Reactions
After feedback on emoji support, martin merged an experimental feature under the discourse_reactions_experimental_allow_any_emoji setting, letting admins enable any reaction. read more
How would you improve the Discourse iOS App Experience? pmusaraj proposed toggles for “Hot Topics” and site URLs on iOS home screens to clean up the layout and achieve consistent row heights. read more
“footnote[1] has extra spaces around itself, which looks not nice…” lilydjwg reported unwanted gaps around footnotes (footnote); chapoi confirmed a fix in PR #34515. read more
Upload images in chat can’t show normally when using S3 CDN sam submitted PR #34507 to clean up ProseMirror comments for chat uploads, and j.jaffeux reviewed the changes. read more
Modal input fields cause page jump to top in topic Don uncovered an iOS-only Glimmer Post Stream bug where focusing a modal scrolls back to post 1; sam is investigating unintended event bubbling. read more
Impossible to disable AI embeddings when models have been removed Roman examined the Discourse AI validator logic (no checks on disable), and the team now prevents deletion of the active embedding model. read more
Trouble sending mail via Namecheap Private Email (SMTP) LG1 discovered DigitalOcean blocks ports 25/465/587; NateDhaliwal recommended Mailgun on port 2525 or a REST API alternative. read more
哪些免费的邮件服务器可以用于Discourse
用户 Lhc_fl 建议 Brevo(每日300封免费),并指出将端口改为2525可成功连接。 read more
Whispers disappear from display, not from the database patrickemin saw whispers vanish when the post-voting plugin was enabled; Canapin guided debugging steps, revealing an intermittent cook/display mismatch. read more
How to enforce a required tag for topic creation in a specific category via theme JS S.AAKASH_MUTHIAH wanted client-side validation for a mandatory tag; chapoi showed how to set up a #tag-group and require it in the category settings. read more
#THEME_COMPONENT
Discourse Graph (Plotly) Embed NateDhaliwal released a component for embedding Plotly graphs via a wrap button in the composer toolbar; subsequent icon tweaks addressed display issues. read more
#SITE_MANAGEMENT
Creating a banner to display at the top of your site awesomerobot fixed banner rendering and site text customization in PR #34523. read more
“Quote whole post” button location sb56637 asked to move “Quote whole post” back to the main composer row; nat highlighted the new post menu site setting for reordering post actions. read more
How to see if form toolkit data is dirty? pfaffman explored callback.isDirty in the Discourse toolkit for conditional save-button enabling and is requesting guidance on the Ember API. read more
In Announcements, j.jaffeux rolled out a major update to the Discourse Calendar, migrating from fullcalendar 4 to fullcalendar 6 for cleaner URLs, event previews, and performance boosts.
Theme component Don launched the Custom Topic Sort Order Button, a new theme component adding a Sort by dropdown near Create Topic for easier sorting on mobile and hidden headers. Moin proposed a PR to add more sort options like op_likes (post 2).
Support
A theme developer hit Error 422 running discourse_theme watch . due to a missing about.json, leading to advice on API key scopes and file validity from chapoi and awesomerobot (discussion).
Support
Users discovered that PM replies by email sometimes bypass signature and history stripping on Outlook mobile. Tips on adding the -- separator and cross-client testing helped isolate the mobile bug (details; solution).
Support
A request for listing all topics by a specific user was solved by using created_by:USERNAME in:first or group:groupname in:first search filters, as demonstrated in this resolved thread.
Dev Ethsim2 refined his Python ICS→Discourse sync script, adding namespace priority, UID hashing, tag sanitization, deterministic ordering, and safe post updates—Cathyy01 verified the fixes (changelog; feedback).
UX
Moin reported poor contrast when tags and categories render white text over colored banners, prompting suggestions to match badge styles and improve readability (thread).
Support
A user couldn’t find the hidden entry blocked period setting; Moin pointed to Cooldown minutes after hiding posts, closing the loop (answered).
#Site feedback
Community members debated refining the UX category definition—agreeing it should cover friction in functioning features and minor QoL improvements, while serious breakages go under Bug (discussion; proposal).
Installation
dylanb asked for upgrade best practices from 3.2.0.beta4-dev to 3.5. pfaffman recommended spinning up a test server, migrating via rsync, and updating to PostgreSQL 15 first (guide; PG15 update).
Bug
patrickemin’s use of the User Field Prompt theme component yielded a blank page in the rich text editor; console errors pointed to missing composer support on Theme Creator (report; error log).
Support
Forum owners noticed their site thumbnail missing from the Discover list due to a screenshot timeout. awesomerobot manually added the image to restore visibility (fix).
Announcements
The Discourse Calendar plugin was upgraded to fullcalendar 6, generating feedback on single-URL support, time-zone quirks, title wrapping in month view, and requests for an agenda view (update; feedback).
Bug
A long-press emoticon selector bug surfaced on one Android/Firefox combination. sam confirmed the issue as Firefox-only and tagged it pr-welcome for community fixes (details; confirmation).
Feature
ice.d proposed a Profile Report feature to flag parts of user profiles (avatar, bio, username) with structured moderator workflows; responses highlighted abuse risks and suggested existing flag categories or watched words as alternatives (proposal; response).
chapoi guided on the discourse_theme watch 422 error, advising global API key scope checks (380502/2).
j.jaffeux clarified URL format support for fullcalendar 6 (380311/5) and merged an HTML entities fix for chat (376865/2).
sam confirmed the Firefox-Android emoticon long-press bug (380580/2) and added the pr-welcome tag.
awesomerobot highlighted checking ~/.discourse_theme for theme CLI issues (380502/6) and manually uploaded the site screenshot for Discover (380467/2).
tobiaseigen advised on email signature separators for PM stripping (380465/5) and led the UX vs. bug tagging discussion (378121/13).
lindsey provided an update on upcoming [wrap]-token support in the rich text editor (379830/11).
Enjoy your sorted topics and language-switched days—may your filters always find the first post and your drop-downs never stick around!
Is Docker image discourse/discourse considered safe and production-ready? david marked the new discourse/discourse image as experimental and encouraged sticking with the standard install. read more
List of all unanswered questions Lilly outlined UI filters and advised using the Data Explorer or batch Rails scripts for forums with millions of topics. read more
Twitter/X links not unfurling correctly tobiaseigen diagnosed onebox failures on the Free X Dev plan and suggested a fallback to plain links when embedding isn’t configured. read more
Discourse Calendar updated to use fullcalendar 6 j.jaffeux improved calendar navigation with clean URLs and addressed UX feedback on default date views. read more
Managing Images in AI context sam kicked off a discussion on the best way to present markdown-embedded images to LLMs, weighing in-text vs. appended payload approaches. read more
#Developer Guides
Write end-to-end system specs for the Discourse user interface merefield hit failures in UI spec tests; pmusaraj recommended full test DB reset and reseeding to resolve missing ColorScheme. read more
Plugin devcontainer config for GitHub Codespaces Alteras shared a Codespaces devcontainer setup that auto-clones Discourse core around a plugin for instant development environments. read more
Update an Existing Discourse forum to match new website PrinceJJPablo described a dev-to-live workflow for header and authentication sync; interest was shown by pfaffman and jahan_gagan. read more
SEO for AI: How Community Content Wins in New Search
The Discourse blog highlighted the rise of zero-click search and AI summaries cutting traditional link clicks by half. read more
Provide more actionable error messages when tagging in the wrong category rokejulianlockhart suggested that tags errors guide users to valid categories instead of a generic “disallowed” notice. read more
Topic List Previews (TLP) merefield offered CSS tweaks to ensure long avatar lists in tiled previews render at a consistent 34px size. read more
#Site Management
Content Localization - Manual and Automatic with Discourse AI Jagster asked how to trigger on-demand translations for older topics beyond default time limits, boosting legacy content reach. read more
sam announced the integration of Gemini Flash 2.5 Image in Discourse (ai), complete with commit details and a demo video demonstrating its speed and power read more
A deep dive into the new Language switcher and language content feature (content-localization) uncovered UI quirks when posting in French, German, and auto-translated AI summaries discussion
messiaslima showcased DisCorkie, a Discord-style forum app, and debated promotion strategies with the community read more
Users sought best practices for LCP (Largest Contentful Paint) improvements under the default Horizon theme without ads suggestions
A solution to missing H1 tags in the NOJS version of topic pages was verified, ensuring better SEO for crawled content details
Community members compared strategies for major upgrades, weighing waiting periods on tests-passed vs. stable branches and CI checklists best practices
Clarifications on version: stable behavior in Unboxing Discourse 3.5 assured that sites stick on the stable branch until official releases, with security patches in between read more
Inconsistent plugin settings: RGJ highlighted that Discourse AI and Gamification surface their settings under a Settings tab, whereas Calendar and Fingerprint hide theirs in Installed plugins, leading to confusion in the admin UI (view topic, see also related discussion) Plugin#settings
Category permissions checkboxes misaligned when localized: tvavrda observed that translated headers push checkboxes out of place in the permissions table and proposed centering them for consistency (view topic, see bug report) localization
Re-order the groups list alphabetically: Richie suggested sorting groups by @name rather than full name to keep ordering stable across interface languages (view topic, related: 233101/4) groups
Too little space for inputs when editing sidebar section: NateDhaliwal reported that icon inputs in the custom sidebar editor are cramped—icon, title, and trash icon need balanced padding (view topic) sidebar
Only some threads are unabled for viewing: MOD_ForoMusculo found that certain topics render empty while others load fine; nat recommended testing in safe mode and disabling plugins one by one (view topic, nat’s reply)
Tags auf noindex,follow setzen: jan2 wants tags crawled but not indexed by search engines; community recommendations are pending on the best practice (view topic) seotags
Replies via email not counted as posts?: ToddZ noticed emailed replies show a “Replies Posted” count of 0, affecting badges; the conversation refers back to a 2021 note on the via_email flag in the database (view topic, see 198641/4) badgesemailusers
Internal Server Error when previewing digest emails: xkhalid ran into a 500 error when his interface language was Arabic; Moin reproduced it and traced it to non-ASCII numerals in the date picker (view topic, repro steps) emailactivity-summary
Rich Text editor breaks white-space in code blocks: rimelek found that the new rich text composer sometimes collapses line breaks and indentation; per1234 pointed to a related bug on multi-line inline formatting (view topic, see 378678) composermarkdowncode
OP of warnings not highlighted with Staff Color: littleD reported that on v3.5.0.beta9, moderator warnings no longer use the staff-colored background for the OP, possibly a regression (view topic) moderationUX
temporarily_closed_due_to_flags notice not in server’s locale: littleD observed that the autogenerated “Topic temporarily closed” message uses each user’s locale instead of the server’s, hinting at a missing I18n.with_locale wrapper (view topic) #flags#i18n
Enabling push notifications does not actually subscribe if consent is required: justinm discovered that after Notification.requestPermission, subscribePushNotification() is never called, so users see “enabled” without actually receiving pushes (view topic, see code) push-notifications
Discourse Calendar updated to use fullcalendar 6: hellekin chimed in on the August 26 announcement, noting that leading zeroes guarantee correct sorting but apologized for bikeshedding on pure numeric ordering (view announcement) calendar-and-event
In #HOSTING, Murffy shared a detailed step-by-step guide on installing Discourse on an OVH VPS in How to Install Discourse on an OVH VPS, prompting follow-up questions about transactional email compatibility and firewall setup. #debiandocker
In UX, community members exchanged tips on customizing group order in Re-order the groups list, with ice.d demonstrating how to adjust the “about your site” page listings via the admin dashboard. groups
#Content_Localization & #Automatic_Translations (Bug, #Site_feedback, Feature, Community)
A flurry of discussion on content localization addressed quoting glitches in translated posts by natbug report, calls for an author opt-out from automatic translations by tvavrdafeature request, proposals for multi-language display preferences by natsuggestion, and broad community feedback on AI-driven translation quality thread.
#Calendar & events (Announcements, calendar-and-event, Support, Bug)
The Discourse Calendar saw major updates with max-attendees support by j.jaffeuxrelease notes, the migration to FullCalendar 6 upgrade, a markdown wrap parsing error breaking embeds bug, missing event borders and colors in month-view support, locale-based date misparsing blocking event creation report, and discussions on post-level events not showing up details.
#AI_Features & #Bugs (ai, Bug, Support)
AI-powered tools encountered hiccups: an AI translation progress chart misreported disabled status debugging, hidden helper-model settings caused confusion clarify, LLM-based tagger threw a NoMethodErrorsupport, and the Forum Researcher bot surfaced unexpected errors bug report.
Supportmobile
Android PWA users found their bottom navigation bar stuck white on dark themes; dax led the troubleshooting discussion.
Feature
Plugin authors proposed specifying minimum/maximum Discourse versions for compatibility to prevent breakages read more.
Feature
Moderators requested the ability to flag personal messages as warnings after sending, streamlining review workflows read more.
Feature
Long-standing event topics on limiting attendees resurfaced as community members tested capacity controls on older posts read more.
BugUX
After deleting a topic, users saw the delete icon reappear instead of the restore option, complicating recovery read more.
Bugpost-votingwhispers
Whispers became invisible in post-voting categories, leading to calls for clearer UI or conditional disabling read more.
Bugask-discourse ask.discourse.org’s sidebar mis-classified yesterday’s messages as “Today,” exposing mismatches between last_posted_at and human-readable grouping read more.
Supportcomposerios
The iOS native app hid the Submit button when composing new topics, triggering cross-device bug hunts read more.
Supportbadges
Admins struggled with badges auto-reissuing for old likes and sought Rails-console workarounds to revoke them read more.
Featuretopic-filter
A request for an in:pinned-globally filter surfaced to help locate global pins in long topic lists read more.
Support
A community PR fixed the chat upload bug by correcting file-transfer handling in chat messages read more.
Bug
A “Malformed version number” error in the plugin review pages was quickly fixed by david via an upstream API cleanup read more.
nat spearheaded quoting-translation fixes in 381138/1 and multi-language display preferences in 381116/1, debugged the AI translation chart in 380858/1, and closed the original content-localization announcement in 370000/37.
j.jaffeux rolled out max-attendees support for events in the calendar plugin 381205/1.
martin merged the chat upload fix 379253/13 and dug into composer email-template errors 380984/9.
dax advanced troubleshooting on the Android PWA bottom bar color issue 381137/2.
david resolved the malformed version number error in /review & /plugin381186/2.
tobiaseigen checked follow-up actions for the Forum Researcher bot error 368980/14.
pento merged a watched-words invite-response fix 380920/17.
Rendering ‘TypeError’ with theme components after update piffy and Don encountered critical console errors (syscall null‐reads, weak map key invalid) after pulling commit 2f398db9, breaking the “Modern Category + Group Boxes” and avatar components. read more
Opening long inline reply causes page to go blank on scroll (desktop) NateDhaliwal reported that expanding a lengthy inline reply scrolls until the screen goes entirely white, effectively locking the interface. read more
Viewing email templates in WYSIWYG composer causes an error (composeremail-templates) martin shared a stack trace when loading email template previews in the rich‐text composer and submitted a PR (#34668) to address the crash. read more
After deleting a topic, the delete button shows up instead of the restore button (UX) Moin spotted that once you delete a topic, the UI still offers a delete icon instead of a restore option, obscuring reversible actions. read more
Forum navbar is repeating Headless discovered that after a rebuild the top navigation bar duplicated across pages. awesomerobot walked through safe-mode testing, plugin isolation, and theme component previews to isolate the culprit. read more
Using AI to tag and categorize forum posts (ai) simon proposed leveraging semantic embeddings for tag suggestions, and awesomerobot ran multi-day experiments on Meta showing promising but imperfect auto-tagging. read more
Use local email server/sendmail for outgoing emails (email) MichaIng wants to bypass SMTP submission overhead by invoking sendmail inside the container. The thread covers Ruby delivery methods, DISCOURSE_SMTP_* settings, and postfix pickup. read more
Choosing the first day of the week in the calendar (calendar-and-event) j.jaffeux announced a new site setting (pull request #34670) to let admins pick Monday, Sunday, or Saturday as the calendar start. read more
Discourse Calendar updated to use fullcalendar 6 (calendar-and-event)
Users on mobile reported the year view always resets to January. The team acknowledges this inconvenience and plans refinements. read more
Forum not working after update – what’s missing? wenqin’s forum broke post-update with migration errors. Moin pointed out deprecated plugins in app.yml, and nat asked for full logs to pinpoint the failure before a successful rebuild. read more
Push notifications for iPhone and Android apps Judith demoed the discourse-fcm-notifications plugin, which uses Firebase to direct push alerts into custom mobile apps, offering deeper integration than Pushover. read more
Syncing iCal/ICS feeds into Discourse (calendar-and-eventrest-api) Ethsim2 documented an ics_to_discourse.py script that syncs events idempotently by UID, preserves manual edits, strips hidden markers, and uses bypass_bump to avoid noisy bumps. read more
#Self-Hosting
Set up reply by email with POP3 polling (emailhow-to) Canapin argues that the mail-receiver approach outperforms Gmail polling, with near-instant fetch rates and fewer credential hurdles for self-hosted instances. read more
Give plugin versions for minimum and maximum Discourse versions elmuerte and merefield debated whether plugins can meaningfully declare a max_version given rapid core updates, deprecations, and the practicality of exhaustive CI testing. read more
Thoughts on automated AI translation (content-localization) sam, Moin, and others weighed AI’s pros/cons on Meta, discussing labeling translations, opt-out flags, and whether multilingual threads enhance or dilute discussion. read more
tpetrov proposed tracking API-driven read events (topic/post JSON GETs, searches) and surfacing an “API Usage” dashboard alongside Site Traffic as a new Feature, citing the rise of programmatic consumption and integration with MCP users. He noted it could be implemented via a Data Explorer query using the API. read more
ThunderThighs and others noted that custom emoji cannot be selected on iPhone (Bugpr-welcomereactions); communities “would go nuts” waiting for an iOS fix and sam confirmed it’s on the roadmap over the next four weeks. read more
featheredtoast spotted inconsistent error highlighting in the signup form: blank password fields show an error without highlighting and short passwords produce no feedback (Bugsignup). read more
iHiD reported an OAuth redirect loop when embedding GitHub issue bodies in new-topic URLs, ending in a generic error; featheredtoast traced it to missing URL encoding of slashes and hash symbols in the redirect logic (Bugoauth). read more
RGJ discovered the #Tag / #TagGroup CSV import silently fails because find_by_name is case-sensitive while validation is case-insensitive, suggesting an ILIKE query to avoid Validation failed: Name has already been taken. read more
NateDhaliwal showed that opening “More” in the sidebar with a half-screen composer obscures popup elements and dramatically increases sidebar height (BugUX), complete with a video demo. read more
wenqin’s forum broke after an upgrade—errors about missing pg commands and repeated rebuilds—and nat walked through rerunning ./launcher rebuild app to complete the PostgreSQL upgrade, pointing at the logs here and rebuild instructions here. read more
Tealk asked if automatic bumping counts as a last post to prevent auto-close in a category, and chapoi pointed to prior discussion showing that bumps indeed stop auto-close timers (Support). read more
wenqin also sought advice on exporting and restoring backups after a failed update; NateDhaliwal highlighted that backups live in /var/discourse/shared/standalone/backups, and can be triggered via ./launcher run app discourse backup or Docker exec commands. read more | backup guide
Moin dug into theme object settings and asked if %{base_path} works in object setting descriptions after experimenting with locale YML files, following earlier PRs on theme setting links. read more
Ethsim2 updated the ICS importer to log when the reset-bump-date fallback is invoked and noted it requires staff API keys; MachineScholar reminded that a Data Explorer query could fetch the last comment directly via API and shared fallback details here. read more
gilles chimed in on the recent Discourse Calendar update that now uses FullCalendar 6 and suggested adding seat-reservation counts per event (calendar-and-event). read more
tonninseteli asked how to reimport deprecated Android KitKat blob emoji, noting user frustration since their 2017 removal and seeking any existing import packages (emoji). read more
sweet_Girl asked how to replicate a forum’s look, and chapoi laid out the topic-list-previews component, custom category boxes, the big carousel beta, gamification plugin, Poppins font, and palette tweaks in How can I make my forum look like this one? Read more.
NateDhaliwal experimented with selecting text to wrap in code blocks but hit a snag locating postModel.save(), now exploring this.args.outletArgs.data.editPost() in Editing posts using a Theme Component Read more.
hellekin proposed cross-instance quoting via ActivityPub-style transclusion to embed source attribution across forums in Discourse Transclusion (Quote across Discourse instances)read more.
ondrej suggested bulk selection for personal messages to streamline inbox management (bulk-actions, personal-messages) in Expand bulk select to personal messages for non staff usersread more.
nathank advocated for richer event oneboxes that surface date, time, and description by hooking into calendar cards (onebox, calendar-and-event) in Better Oneboxes for Eventsread more.
elmuerte outlined a GitHub Actions workflow to auto-retest plugins on Discourse core updates, proposing compatibility badges for transparency (staff-experience, dev-xp) in Give Plugin versions for minimum and maximum discourse versionread more.
sunjam and hellekin revisited email tagging syntax, weighing the brittleness of +address schemes versus a tags: header (email, pr-welcome) in Add tags by emailread more.
saish asked how to configure custom homepages without JavaScript, and awesomerobot walked through enabling "custom-homepage": true and adjusting preferences in How to replace/override homepage templateread more.
emonunix opened best practices for zero-downtime Discourse maintenance, with pfaffman recommending multi-container or blue/green deploys and merefield highlighting migration strategies in How to Perform Major Discourse Maintenance with Minimal Downtime?read more.
patrickemin couldn’t find the ellipsis menu for hidden post actions, and Moin showed how to restore it by adjusting “post menu” settings in Ellipsis button no longer visible for posts actions (solved) read more.
pnorman reported old-browser redirects breaking content, and david confirmed topics should display behind the banner, requesting screenshots in Link for old browsers doesn’t work on old browsersread more.
Nick_Stager saw duplicate banners on subcategories with the category-banners plugin, and awesomerobot pushed a fix to hide the default heading in Seeing two banners for subcategoriesread more.
RGJ found that setting the Locale_Detector LLM to “none” ignores default model settings in Default LLM model is required prior to enabling “Chat”? (content-localization) read more.
saish built a custom composer but ran into lag with <select> loading and linked editors; community experts weighed in on isolating tag-chooser and decoupling d-editor in Custom composer – Issue with tag-chooser and d-editorread more.
chapoi explained why the fixed tag is preferred in Bug workflows during Enable the solution plugin for the Bug categoryview post.
awesomerobot guided saish on custom-homepage modifiers in How to replace/override homepage templateview post, advised AntiMetaman on spam strategies in Anti Spam Recommendations for Forum?view post, and helped viswanatha debug LLM persona issues in Custom LLMs-Job exceptionview post.
david confirmed content rendering behind the unsupported-browser banner in Link for old browsers doesn’t work on old browsersview post.
tobiaseigen chimed in on cross-instance quoting in Cross-Discourse Quotingview post.
j.jaffeux shared a theme component demo to prevent modal input page jumps in Modal input fields cause page jump to top of the pageview post.
supermathie dug into favicon mismatches across multisite roots using curl examples in How to use .ico favicons correctly in Discourse multisite?view post.
Roman recommended switching to a tool-enabled persona for forum searches in Custom LLMs-Job exceptionview post.
tshenry updated the Theme component for category previews and teased a fix in Category Previewsview post.
After all that quoting, deployment magic, and theme tinkering, even our metaphorical puppies get a well-deserved break—stay pawsome!
dubwoc kicked off a discussion on keeping Discourse APIs stable after upgrades in the API change process? thread, triggering advice on stricter deprecation notices and staging tests. read more
Canapin and MichaIng revisited default emoji sets in the emoji update discussion Emojis update, debating Twemoji defaults vs. legacy Twitter sets and reset-button behaviors. read more
A user ran into an OIDC Error due to expired client keys; screwballs confirmed that renewing the keys fixed the problem in post 3.
pfaffman asked how to add includeSubDomains to the Strict-Transport-Security header in SSL configs; the community is investigating why his Nginx changes in app.yml aren’t applied (details).
昊毅_周 shared a clever approach for embedding hundreds of AVIF images via a Zfile private cloud drive, enabling on-demand previews and a “Read online” link (https://openttc.com/t/topic/8) in Discourse posts (post 6).
MentalNomad reported that replies break when the Discourse Encrypt plugin is enabled after the latest update; toggling it off restores functionality, illustrating deprecated plugin incompatibility (see plugin deprecation discussion at 107918 and error report post 1).
j.jaffeux kicked off work on the much-requested Ability to search messages in chat (feature topic) to bring chat closer in line with modern messaging apps.
On iOS Firefox, donaldsoncd noticed apostrophes in bookmarked post titles showing as isn%rsquo;t; Lilly reproduced this across browsers with screenshots, confirming HTML entities aren’t decoded in the bookmarks menu (post 1).
seanblue pointed out that the new dynamic poll feature wording implies editing existing options resets votes—instead it only allows adding or removing options; he suggested updating the text in post 1 (CC sam).
#Site feedback
Ethsim2 flagged a glitch where the system bot replied “I’m sorry, but I can’t comply with that” in a Daily Summary; ondrej confirmed summaries can misbehave. Further discussion is ongoing in Daily summary feedback and Weekly summary feedback, with the original report at post 1.
sam weighed in on SEO for AI: How Community Content Wins in New Search, arguing that human-curated forums will outlast AI trolls and reduce duplicate support tickets (insights in post 8).
Moin merged the Custom Topic Sort Order Button enhancements, adding new sort options—likes on the first post, number of posters, category ID, and vote count—with icons defined in post 11 and confirmed in post 12.
hellekin reported that the Rich Text Editor discards calendar events unless in Markdown mode; j.jaffeux acknowledged the bug and promised support in an upcoming release (post 1, post 2).
selase asked for repro steps on a tag-watching bug where tags remain watched even after permissions revert; detailed scenarios were shared between admin and non-admin views (post 3, post 4).
#Developer Guides
nick.schneble and merefield updated the Install Discourse on macOS for development guide, now recommending PostgreSQL 14+ (or 15/16) with pgvector via Homebrew plus ImageMagick, helping newcomers avoid migration errors (post 397, post 398).
#Site Management
In the auto responder automation thread, aidanheerdegen asked which %%KEY%% template variables are available for group PM triggers; the discussion in post 11 built on the original setup in post 1.
strk asked if LDAP‐authenticated users could earn badges automatically in LDAP badge?, and pfaffman suggested mapping LDAP groups to badge flair via a primary group setting.
Yasushi_SHOJI received “Cloudflare proxy detected” emails after moving DNS in Cloudflare proxy detected? and asked how to suppress those alerts on hosted Discourse.
rlauriston ran into limits when uploading multiple files from an iPhone in File upload issue, prompting discussion on adjusting the simultaneous uploads setting for trust level 2 users.
JoBrown wondered if Discourse suits a 20 K-member org in Non profit Member organisations, and Lilly emphasized defining clear goals, target members, and migration rationale.
The official account shared tips on making your Q&A more discoverable by AI in How to Optimize Community Content for AI Discovery, reminding us that well-structured discussions can become trusted sources.
In Discourse Chatbot , users compared GPT-5’s reasoning quality and latency vs GPT-4 o, with merefield noting speed trade-offs and 37Rb reporting mixed RAG performance.
Differences between Categories and sub-Categories? RichardTE asked about internal distinctions between a #Category and a #sub-Category in Discourse view initial post. nolo explained that access settings follow a hierarchy and sub-categories cannot be more permissive than their parent details. Moin added that parent categories aggregate child topics by default, with filters available to hide subcategories more.
“Who’s Online” Plug-In missing? donaldsoncd noticed the official Plugin didn’t appear under “Unlock this plugin” on managed hosting report. Moin traced this to the plugin directory’s Enterprise listing omissions and linked to the full official plugins list explanation.
Cannot save category security settings when adding custom group Adri found that adding a custom group in Admin → Categories → Security failed to persist on save problem. Moin reproduced the behavior and noted the UI should clarify that “everyone” renders extra groups redundant reproduce.
Cloudflare proxy detected? Yasushi_SHOJI asked if a missing orange cloud on Cloudflare could be the culprit for proxy issues query. pfaffman confirmed that disabling the proxy and checking DNS CNAMEs resolves false positives solution.
YouTube issues after update Carleas reported that youtu.be links stopped oneboxing and /shorts/ URLs remained unparsed post-update issue.
They also hit a permissions error when toggling the Lazy Videos plugin details.
How to add custom X-TAGS header to digest emails emonunix wants to tag outgoing weekly digests with X-TAGS: Digest for Netcore analytics question.
Community members are exploring dynamic header injection via site settings and plugin hooks discussion.
Age prompt for NSFW categories eisammy requested an age-verification step for #nsfw categories to comply with new EU/UK laws request. RGJ suggested the policy plugin with add-users-to-group="over18" plus #category-lockdown for title visibility suggestion.
Flagged chat messages can disappear silently from the review queue a_lilian noticed that chat retention settings purge flagged message history, losing moderator logs report. ondrej agreed this design might need reconsideration to keep flag records intact follow-up.
Poll plugin refers to missing SiteSetting.poll_create_allowed_groups_map pfaffman encountered an undefined method error during a phpBB3 import, pointing at an obsolete SiteSetting call error.
The fix may involve migrating to SiteSetting.poll_create_allowed_groups splitting logic read more.
Category Moderators can not turn topics into wikis Steradiant discovered category moderators lose the ability to convert posts to wikis after the global edit window lapses issue. Moin reviewed trust-level and group-based wiki permissions, marking this as a possible feature request details.
Modernizing inline script tags for templates & JS API cogdog showed how to migrate <script type="text/discourse-plugin"> snippets to the new apiInitializer pattern in theme JS example.
Managing group membership via authentication bsoares opened a PR for discourse-openid-connect to map OIDC groups to Discourse groups and seeks guidance on tests/docs proposal.
Category Restrictor plugin Steradiant reported missing icons after installing Category Restrictor; RGJ pushed a rebuild with updated assets update.
#Sysadmins
Watched words to block recent spam attack pfaffman traced a spam vector to watched words not applying on edits, reducing their protective value analysis. mcdanlj proposed drafting a detailed spec for watched-words behavior on edits to make the feature more robust discussion.
Moin clarified plugin directory listings for the “Who’s Online” plugin details.
Moin reproduced and explained the custom-group permission quirk in category security see.
Moin reviewed wiki-conversion permissions for category moderators and linked to trust-level docs read.
pfaffman advised on docker image cleanup vs. uploaded content storage guide.
pfaffman confirmed Cloudflare orange cloud checks for proxy detection tip.
pfaffman diagnosed the Poll plugin import error and proposed a SiteSetting update fix.
RGJ recommended the policy plugin for NSFW age gating and configuration details strategy.
RGJ merged the icon-fix for Category Restrictor in the plugin’s latest build changelog.
ondrej weighed in on chat flag retention design and flag-history importance thread.
Canapin added background links on URL scheme handling in user profile websites context.
With containers cleaned, flags retained, and categories tamed, our forum pups are snoozing soundly—see you tomorrow for more sniffing around meta.discourse.org!
NateDhaliwal introduced a new banner tool allowing admins to feature a user’s avatar, stats, and a reason for highlighting them in the Discourse Featured User component read more.
A CSS quirk in Topic Cards was spotted by jrgong, who outlined a missing btn no-text class around edit-history and expand-quote buttons, sparking a quick discussion on theming fixes read more.
zhang_zhiyuan asked how to fetch the total user count via the API; Lilly recommended /admin/users/list/active.json and linked to the official docs and Data Explorer tips in the thread on 想得到活跃的用户——通过 APIread more.
TethysPlex reported that repeatedly clicking the “expand reply” button can duplicate the same content—an odd front-end behavior under Issues with repetitive replies on expand button clickread more.
uckelman detailed a redirect failure when using Discourse Connect as an SSO provider, seeking clues on why the forum login page no longer returns to the original URL under Discourse Connect provider redirect after login not workingread more.
tyronejv and GrahamM debugged the AI translation backfill feature, sharing logs, scheduler tips, and a final solution involving OpenAI organization settings read more.
heaving_year4v discovered that unsupported browsers on iOS 15.8 fail to render HTML-only content as promised, calling out the bug in Html-only version for unsupported browsers not showing message contentread more.
mcdanlj requested the ability to flag edits for TL0 users through the approval queue, sparking a feature-request discussion under Send edits of approved posts back to approval queueread more.
Ethsim2 proposed clarifying documentation about how staged users’ Watching status doesn’t carry over when posts are moved, in Doc clarification: notification behaviour for staged users when posts are movedread more.
In Prepend https:// to Web Site in Profile, AJCxZ0 thanked responders after realizing the solution involved referencing another profile-field guide read more.
cmahns shared how a nonprofit uses Discourse for an 82K±member internal forum, leveraging the Docs feature and post-signatory workflows in Non profit Member organisationsread more.
#Site feedback
torgeirl explored where to find a comprehensive release notes / changelog for Discourse core changes and default-setting updates, leading to pointers toward Announcements and GitHub tags read more.
kiefferr praised the Discourse AI Persona upload support, while noting a minor link-access bug in the chatbot’s reply that led to an “access denied” error read more.
#Extras
Ethsim2 ran through detailed behaviour notes on how ics_to_discourse.py determines event uniqueness and update flow via hidden UID markers in ICS → Discourse Importerread more.
Steve_John raised an issue with the custom composer where the tag-chooser and d-editor integration wasn’t loading tags, prompting initial feedback from the developer community read more.
Lilly gave a to Nate’s new theme in Discourse Featured Usertopic and helped others install it read more.
Lilly recommended the /admin/users/list/active.json endpoint and shared the Data Explorer tip in 想得到活跃的用户——通过 APItopic to clarify how to retrieve total user counts read more.
Stay curious, keep posting, and remember: our community never sleeps—even when our puppies do!
Watched word regular expression crash (regex, watched-words): RGJ demonstrated that enabling regex for watched words with a lone * breaks topic creation with a RegexpError [#382417/1]. pfaffman suggested pre-validating expressions and adding error handling [#382417/2]. read more
Group owners can’t remove ownership (groups): Steradiant highlighted that owners lack a direct “remove owner” button and can only rescind ownership by removing membership [#382433/1]. read more
Category moderators unable to mark posts as wikis (wiki-posts, category-moderators): Steradiant found it counterintuitive that moderators can edit others’ posts indefinitely but cannot toggle the wiki status for those posts [#382239/3]. read more
Preventing spam bot attacks (spam): awesomerobot pointed to our spam prevention guide and shared refined regex patterns for phone numbers (e.g., \b\d{3}[-.\s]\d{3}[-.\s]\d{4}\b) [#382459/2], [#382459/4].
HTML-only version not showing content: awesomerobot reproduced the issue on iOS and suggested updating browser detection for static views [#382376/2], and david confirmed the fix via a PR #34792 [#382376/4].
Confusion over flagged post notifications: asa struggled to see flags from a test user until they realized special IDs can hide flags from admins [#382422/1], with Moin providing diagnostic steps [#382422/3]. read more
Turning off emails to deleted spammers (email): Richie wants to suppress deletion emails for verified spam accounts [#382412/1], and Moin discovered that deleting via admin profile (not review queue) avoids the notification [#382412/3].
Chat channel settings hidden (chat): dsims couldn’t find the cog to close/delete channels until awesomerobot noted the UI change and we need to update the Chat topic accordingly [#382454/3].
Custom X-TAGS header in digest emails (email): emonunix asked about tagging digest mails for analytics; selase confirmed only global custom headers are supported out-of-the-box [#382241/2]. read more
Designate group owners as category moderators (groups, category-moderators): Steradiant proposed auto-assigning group owners as category mods to reduce group sprawl [#382445/1]. read more
DiscoTOC missing TOC button (official, disco-toc): murphyke found the TOC option invisible under Safari’s gear menu despite it being installed; Moin pointed to a previous issue on menu scrolling [#111143/468]. read more
#Sysadmins
Step-by-step Discourse migration to R2 & Cloudflare (migrations, s3, cloudflare): hel_Sinki shared a detailed runbook covering DB backups, R2 buckets, and cutover best practices [#382491/1]. read more
Permissions error with ./launcher rebuild app: uckelman hit file permission issues on Fedora 42 and learned --privileged is required due to root-owned shared volumes [#382462/2]. read more
Anonymized user logged back in (new-feature, anonymization): A community member found their anonymized account reactivated with a password; pangalacticstrawboss is seeking a secure remedy [#86929/65].
Automatic line breaks for large inline images: ばこん requested auto-wrapping text after images to improve readability in posts [#382432/1], with NateDhaliwal and ばこん discussing potential theme-based solutions [#382432/2].
awesomerobot reinforced spam defenses in How to prevent an influx of spam bots and refined the regex ([#382459/4]), reproduced the HTML-only content issue in [#382376/2], and clarified chat UI changes in [#382454/3].
selase diagnosed the deletion-email bug in [#382411/4], explained missing helpers in the Poll plugin at [#382193/2], and scoped digest headers in [#382241/2].
david verified and linked the fix for the HTML-only content issue in [#382376/4].
Looks like we’ve reined in spam bots, squashed hash bugs, and charted migration seas — time for a virtual treat!