Discourse 版本 2.5

重点

代号

开始日期

2020 年 2 月 26 日

发布日期

2020 年 6 月 24 日

66 个赞

新功能

  • 添加用户名称后的插件出口 (#10113)
  • 在选择可选择的头像之前检查其是否存在 (#10032)
  • 移除已弃用的上传 URL 站点设置。
  • jForum 导入脚本
  • 不在“谁喜欢”中显示被静音/忽略的用户
  • 允许在发布的页面中包含页眉/页脚 (#10067)
  • 添加 before_email_send 事件
  • 允许永久忽略用户 (#10074)
  • 允许发布的页面公开 (#10053)
  • 新增每个分类上方的分类列表插件出口 (#10037)
  • 在将来日期输入选择器中添加“现在”选项(默认隐藏)(#10047)
  • 创建投票时允许多个组参与投票
  • 在未读/新消息中包含标签
  • 改进对多个电子邮件地址的 UX 支持 (#9691)
  • 可重复使用的邀请链接 (#9813)
  • 支持通过 rake 进行批量标记时追加 (#9978)
  • 新增用于更新 first_post_created_at 列的 rake 任务
  • 添加 uploads:batch_migrate_from_s3 任务以限制一次迁移的帖子总数 (#9933)
  • 默认列表过滤器的分类设置。(#9975)
  • 白名单主题仓库模式(实验性)
  • 新增徽章页面标题下的插件出口 (#9936)
  • 通知管理员关于旧凭据的问题 (#9918)
  • 即使对于旧帖子也下载远程图像 (#9925)
  • 可选择允许在主题跟踪状态中包含标签
  • 为私人主题显示详细的 404 页面 (#9894)
  • 通知管理员关于旧凭据的问题 (#9854)
  • 当组成员资格被接受时发送私人消息 (#9822)
  • 添加设置以禁用 S3 存储桶中自动安装 CORS 规则 (#9872)
  • 标签的永久链接
  • 默认列表过滤器的分类设置。
  • 当原始帖子重新烘焙时更新主题摘要 (#9852)
  • 添加主题摘要最大长度站点设置 (#9847)
  • 移除 ‘flag’ 网络钩子,改用 ‘reviewable’ 网络钩子
  • 移除 ‘queued post’ 网络钩子,改用 ‘reviewable’ 网络钩子
  • 添加同站 Cookie ‘None’ 选项以实现跨域系统 (#9374)
  • 在客户端插件 API 中公开 Composer.serializeToTopic
  • 延长允许的下载持续时间
  • 为单个 SVG 图标添加端点 (#9765)
  • 添加结构化数据以遵循 Google 指南 (#9764)
  • 引入仅限员工的覆盖密钥用于 discourse-presence。
  • 支持应用快捷菜单 (#9749)
  • 为标签页面添加 noindex 头 (#9748)
  • 允许对用户 API 密钥进行参数认证 (#9742)
  • 允许插件注册回调以忽略 DraftSequence。
  • 默认规范 URL (#9738)
  • 将 revisor 实例传递给 post_edited DiscourseEvent。
  • 为徽章、组和 /my 页面添加 noindex 头 (#9736)
  • 让 Google 索引页面以便其可以移除它们
  • 如果 robots 被禁用,则添加 no_index 头
  • 按插件过滤设置 (#9692)
  • 收紧忘记密码的速率限制规则
  • 从“热门”主题列表中排除被静音的分类。
  • 可选择在发送提醒时删除书签 (#9637)
  • 导出分类时包含分类位置 (#9658)
  • Reddit 视频 onebox
  • Facebook 视频 onebox
  • 为话题包含优化后的缩略图 (#9215)
  • Nokogumbo (#9577)
  • 无条件地每天至少通知一次编辑
  • 在用户的通知页面添加全部/未读/已读过滤器 (#9535)
  • 为无法发帖的用户原因添加分类横幅 (#9576)
  • 允许限制仪表板中可见的报告和标签页 (#9598)
  • 添加设置以控制 S3 调用中的 Expect 头
  • 对爬虫和旧浏览器视图的更多改进
  • 当本地登录被禁用时,允许通过管理员 API 创建用户 (#9587)
  • 改进爬虫视图
  • 在 user_archive CSV 导出中添加 user_profile (#9571)
  • 重新设计 discourse-presence 以在客户端跟踪状态。(#9487)
  • 允许使用主题/插件为发布的页面设置样式 (#9570)
  • 支持 SSO 网站和位置覆盖
  • 可选择在卡片中显示用户的本地时间 (#9527)
  • 点击任意位置时关闭第一条通知 (#9525)
  • 阻止电子邮件时优先阻止规范地址
  • 不在被静音的话题中显示新/未读通知 (#9482)
  • 对象存储的数字海洋空间兼容性
  • 当引用被忽略的用户时,为 <aside> 引用块添加类 (#9511)
  • 使报告过滤器可重用 (#9444)
  • 管理 UI 用于合并两个用户。(#9509)
  • 将带提醒的书签推广为核心功能 (#9369)
  • 为代码块添加复制按钮 (#9451)
  • 在 user_badges 中添加 created_at 列 (#9463)
  • 改进 RSS 订阅源的渲染
  • 从帖子编辑书签提醒并添加显式删除按钮 (#9455)
  • 导出组的 rake 任务 (#9450)
  • 用户可被忽略六个月。(#9446)
  • 允许编辑书签提醒 (#9437)
  • 用提醒时间装饰话题级别的书签按钮 (#9426)
  • 在主题设置中为 upload 格式添加支持。
  • 添加 user_session_refreshed 触发器 (#9412)
  • 将“稍后今天”的书签截止时间延长至下午 5 点 (#9419)
  • 强制执行规范电子邮件站点设置
  • 新增站点设置 embed_unlisted (#9391)
  • 插件支持转译常规 .js 文件 (#9398)
  • 添加审核后可见帖子用户后的插件出口 (#9397)
  • 用户获得徽章时的网络钩子和事件
  • 向不支持的浏览器显示 noscript 视图 (#9373)
  • 支持将话题作为页面发布 (#9364)
  • 为主话题和建议话题添加屏幕阅读器地标
  • 默认在 iOS 上启用离线浏览和全屏 PWA
  • 在数据库中哈希用户 API 密钥 (#9344)
  • 书签键盘快捷键 (#9318)
  • 书签提醒类型更改和错误修复 (#9329)
  • 允许管理员禁用自助账户删除
  • 为用户书签列表添加懒加载 (#9317)
  • 高优先级书签提醒通知 (#9290)
  • 添加设置 auto_approve_email_domains 以自动批准用户 (#9323)
  • 在用户目录中显示“最后更新时间”
  • 允许多个自定义表情符号组 (#9308)
  • 通过主题 CLI 更新子主题组件的选项。
  • 更严格的用户存在规则
  • 邀请代码不区分大小写
  • 允许插件排除向导步骤 (#9275)
  • 在指令模态框中列出搜索菜单快捷键 (#9273)
  • 使用 J/K 浏览搜索结果 (#9264)
  • 当标志被处理时取消分配审核队列话题
  • 在“已投票”投票中向创建者显示投票
  • 在 N 天后自动删除话题的回复。(#9209)
  • Google 日历不支持 iCalendar 中的 URL,添加备用描述
  • 书签提醒的 iCalendar 订阅源
  • 在分类列表中降低被静音分类的优先级 (#9226)
  • 在用户摘要中显示被拒绝的帖子数量 (#9204)
  • 可选的全局邀请代码用于账户注册
  • 添加启用桌面提醒的书签站点设置 (#9198)
  • 支持类似 Gravatar 的自定义服务 (#9137)
  • 允许更大的最大帖子长度
  • MVP 书签带提醒的用户列表更改 (#8999)
  • 允许为书签提醒设置自定义日期和时间 (#9185)
  • 为基于时间的和桌面书签提醒发送通知 (#9071)
  • 允许主题在其 about.json 文件中指定修饰符 (#9097)
  • 在视频标记中对帖子上传提供更广泛的支持 (#9152)
  • 批准可疑用户现在默认为 true。已移除可疑用户列表 (#9151)
  • 改进键盘快捷键帮助模态框 (#9143)
  • 添加 embed_set_canonical_url 设置 (#9134)
  • 添加站点设置以禁用分阶段用户清理
  • 在起草处罚时防止意外取消 (#9129)
  • 新增用于同时加载多个用户卡的路线 (#9078)
  • 在起草处罚时防止意外取消 (#9105)
  • 使用 SSL 连接到 Redis 的选项
  • 将 /go/ 视为服务器端路由
  • 在主题元数据中添加子主题组件。
  • 允许为报告添加描述链接 (#9065)
  • 在 iOS PWA 上启用服务工作者
  • 始终在 /safe-mode 路线上禁用自定义 (#9052)
  • 无条件跳过搜索控制器的索引
  • 如果话题已关闭,则自动归档组消息。(#9046)
11 个赞

BUG FIXES

  • Properly invalidate inline oneboxes when rebaking
  • Ensures moderation history is accessible from topic/post admin menu (#10118)
  • Use correct URL for unsubscribe (#10077)
  • Skip category notification_level unless scoped
  • Add migration to delete tracking state for staged users (#10083)
  • Use Discourse.system_user when we need a placeholder admin (#9781)
  • Advanced tutorial errors when all categories are secured (#10111)
  • Bump onebox for twitch video and clips embedding fix.
  • Prevent typing “#” when showing “Jump to…”
  • Onebox local topic when using slug-less URL
  • Use ActionDispatch::Http::ContentDisposition for uploads content-disposition (#10108)
  • TurboTests::Runner not failing on errors.
  • Use a mutex when reseting column information while seeding.
  • multisite:migrate failing to properly seed data.
  • These tests are broken
  • Don’t raise an exception if we can’t update the user on demotion
  • Use raw content when checking for watched words to flag (#10104)
  • Pass local scope variable to inner function
  • Hide PM tags if the site setting is disabled (#10089)
  • Fix select kit size (#10094)
  • Improve admin permalink UX (#10101)
  • Do not attempt to pull_hotlinked on emoji images when CDN enabled (#10091)
  • A variable name typo
  • Delete PostUploads on Post deletion (#10090)
  • Handle heroku style HTTP_X_REQUEST_START (#10087)
  • Handle invalid URLs gracefully when pulling hotlinked images
  • Do not attempt to pull_hotlinked on emoji images when CDN enabled
  • Guardian#can_remove_allowed_users? shouldn’t break for ownerless topics
  • Do not incorrectly add topic bookmark on Escape (#10088)
  • Do not change tracked categories for staged users (#10076)
  • Allow multiple hyphens in host (#10078)
  • Added spec for multiple hyphens
  • A much nicer error message if you can’t ignore/mute a user
  • Hide the post history for TL4 (#10065)
  • Do not show Add or Change buttons if email is not editable (#10068)
  • Show unconfirmed emails too when checking emails (#10062)
  • Muted/Ignore should prevent PMs regardless of case sensitivity
  • Cleanup migrations with timestamps in the future
  • Restore missing translation keys
  • Do not send staff welcome message if user already has role
  • Prevent producing “undefined” strings (#10042)
  • Thread safety issues with multisite:migrate and SeedFu.
  • Select-kit components not being hidden.
  • Add attachment content-disposition for all non-image files (#10058)
  • Add table name to topic view query (#10052)
  • Allow plugins to provide test directories with transpiled .js
  • Allow opening FAQ in a new tab (#10039)
  • Restoring backup from PG12 could fail on PG10
  • Ensure users can confirm new emails using security keys
  • Fill acting_user field instead of target_user in history
  • Secondary_emails, unconfirmed_emails, group_users are private fields
  • Change version of incorrect datetime migration (#10051)
  • Do not count youtube thumbnail when counting post images (#10049)
  • Keep onebox styling in edit history
  • Check for inviter group permissions at the time of redeeming invite
  • Process /invites/ route from server side only
  • Get correct right/left offset for topic progress bar on compose
  • Load I18n first in show_confirm_new_email page
  • Hide bootbox after a negative answer (#10028)
  • Allows PM owner to remove any user if >`= TL2 (#10036)
  • Do not migrate backups in the new prefix
  • Preload readonly mode attribute seperately.
  • Improvements and fixes to the image downsizing script (#9950)
  • Incorrect usage of count and exist? typo
  • Download images that currently above the limit (If the image size limit is decreased, then there was no way to resize those images that now fall outside the allowed size range)
  • Allow users to add emails which were deleted before
  • Show tag count for existing tags (#9892)
  • Prevents emoji in links to appear as large emojis (#10027)
  • Ignore Redis readonly errors in RateLimiter#rollback!.
  • Present correct new/unread counts when filtered by tag
  • Use include-subcategories filter in report export (#10007)
  • MigrateInviteRedeemedDataToInvitedUsers should be normal migration (#10013)
  • Return 400 when invalid topic_id is provided when creating invite.
  • Flaky post_alerter_spec.rb because of missing order (#10000)
  • Prevent re-flagging when we have reviewed flags before (#10010)
  • Don’t call cooked decorators in composer if cooked is unchanged
  • Add attributes of params to topic findOpts.
  • Allow merging users when email domains are restricted
  • Don’t show create topic suggestion to users who can’t
  • Emoji autocomplete triggering incorrectly
  • Change bookmark name “name” attr to disable autocomplete
  • Enforce maximum of 100 years on all site settings counted in days (#9991)
  • Update minimum required tag when switching categories in composer
  • Don’t override category text color in dropdown
  • Restore stream position in safari (#9993)
  • Reply notifications should not appear as edited (#9965)
  • Ensures edit-category-setting is correctly casting boolean (#9999)
  • Redirects containing Unicode usernames didn’t work
  • (getURL "") was not working with the i18n helper
  • Use short_path of flair upload to get signed url for secure media.
  • Service Worker URL was broken
  • Client side /my/ redirects were appending extra slash
  • Base import script was not updating first_post_created_at column
  • Rescue from readonly errors when looking up auth tokens.
  • Inline error when converting html to markdown
  • get-url is required for server side code
  • Prevents false boolean param to be filtered as non existant (#9968)
  • Hide rss feed & json if a user profile is hidden.
  • EmailValidator needs to validate format of email.
  • Broken MessageFormat string
  • If creating a flag for a watched word, include the reason
  • Prevent clipping user mentions (#9962)
  • Do not destroy $.fileupload element (#9888)
  • Staff users can bypass tag validation rule (#9924)
  • Catch NoMethodError during precompile_css too (#9940)
  • Digest frequency issue on user creation
  • Only render group card if user title is from group (#9946)
  • Support exporting reports which reference topics (#9957)
  • Correct the misalignment of popover arrows (#9947)
  • Don’t change the button height when spinner appears
  • Restore the ability to rebake posts in deleted topics (#9951)
  • Handle files removed between glob and mtime
  • z helper doesn’t resolve inside calc
  • Topic-admin-popup-menu was overflowing on small screens (#9944)
  • Support IRIs (unicode URIs) when pulling hotlinked images (#9928)
  • Pull hotlinked images even when edited by system users (#9890)
  • Invalidate database theme cache when hostname changes (#9908)
  • Pins down highlight.js to the last commit of the v9 tree (#9921)
  • Don’t rerender whole users page while typing on input.
  • Muted tags removed topics with no tags from counts
  • Don’t raise an exception if a topic cannot be retrieved (#9906)
  • Allows to define label/title properties for display instead of name
  • Sending messages to groups with non-lowercase names
  • Broken query if upload id is missing (#9900)
  • Allows to have custom emoji translation without static file (#9893)
  • Add X-Robots-Tag header for check_xhr-covered GET actions, too (#9868)
  • Don’t send digests to users with no primary email
  • Correctly set values and defaults for group-form-interaction-fields (#9891)
  • When destroying a draft always ensure saving is done
  • Opening cancel draft dialog broke autosave
  • Pass current_user to TopicQuery in for categories_and_top_topics (#9885)
  • Updates variables for HTML to use em instead of px in font-size (#9883)
  • Wizard fails to start when default_theme_id is -1
  • Wizard previews if color step is excluded (#9881)
  • XML files could be detected as SVG files
  • Document.activeElement can be null on IE11 (#9880)
  • rescue_from doesn’t bubble up.
  • Makes focust text area after complete more resilient (#9879)
  • Improve image downsizing script (#9549)
  • Support more upload url formats
  • Use the process_post_#{id} mutex
  • Avoid rebaking twice
  • Also process deleted posts
  • Returns false if the upload url is an invalid mailto link (#9877)
  • Send PM as group owner
  • Copyedit for the dominating topic warning
  • Concurrency bug when creating topic thumbnails
  • Don’t responde with error 500 if domain is invalid when adding automatic membership domain (#9655)
  • Do not allow tag with name ‘none’ (#9867)
  • Properly ban non human users from draft system
  • Include lazyYT-container in cooked post HTML (#9870)
  • Documentation was using incorrect function (#9876)
  • Email Styles were evaluated out of order
  • When creating new PM username/groupname should be case-insensitive
  • No need for downcasing second time
  • Skip onceoff job for groups with invalid flair URL.
  • Do not fallback to flair_url column
  • Keep composer title and reply when switching to PM (#9851)
  • Destroying a user failed when it had title
  • Group card not showing if user can’t see its members.
  • Call getURL method explicitly to prevent this context override.
  • Double Button Alignment Mobile (#9862)
  • Better cross browser topic footer buttons alignment (#9860)
  • We don’t create a Post object if the queued post gets rejected. We need to count review items directly. (#9856)
  • Live reloading of css in development (#9859)
  • Remove access control post FK from uploads (#9853)
  • Tag input says tags are optional when they’re required
  • Allow GitHub app client_id to be used for OAuth configuration
  • Ensures category chooser is case insensitive (#9850)
  • Adds missing tags to published page header (#9835)
  • Badge granter was disabled by default.
  • Sidekiq is using _forim_session (#9825)
  • Show staff counters if the rejected posts count is the only value to show (#9845)
  • Requests were not being logged correctly
  • Path should be addon not app
  • Allow deprecation to work with Ember CLI
  • Select-kit was in the wrong place
  • Update default_template.html
  • guidFor is not part of Ember.Object
  • Do not parameterize tag_id (#9839)
  • Don’t blow up when trying to parse invalid or non-ASCII URLs (#9838)
  • Emit web hooks for flags
  • Do not set a default value for web hooks with no events
  • Migrations should not fail when db is part migrated
  • Switch discobot to pull avatar from gravatar.
  • Purge all associated data on user delete
  • S3 store has_been_uploaded? was not taking into account s3 bucket path (#9810)
  • Restoring backups could fail for database dumps >` 8GiB
  • Check backtrace and backtrace_locations before trying to print an error
  • Description for ‘uncategorized’ category was blank
  • Show a useful message when starting a plugin fails without a backtrace
  • GroupArchivedMessage belongs to Group, not User
  • Applies flex on topic-footer-main-buttons (#9829)
  • Join bookmarks migration on users to avoid missing user records
  • Randomize file name when created from fixtures (#9731)
  • Use /tmp/pid folder to keep fixture files
  • Bump rack version from 2.0.8 to 2.2.2 (#9811)
  • Restoring backup didn’t clear cached translation overrides
  • Reverting multiple translation overrides didn’t clear cache
  • Improves and fixes a regression with category-selector (#9821)
  • More resilient/consistent date-picker loading (#9817)
  • Ensure no image downloads during topic thumbnail serialization
  • Allows to remove a topic timer with delete_replies as type (#9800)
  • Ensures hide is called when card is destroyed (#9814)
  • Do not remove stop words when using English locale
  • Extract reset_last_seen_cache! in user_spec (#9808)
  • Switching composer action does not refresh composer actions content (#9791)
  • Component was still used by data explorer
  • Include plugin CSS assets when previewing themes
  • Displays a title on sk header if no selected name (#9794)
  • Correct plugin api version bump.
  • Use CDN URLs for topic thumbnails
  • Allow post migrations using #change to carry out unsafe migration
  • Always return 0 for non-human user current DraftSequence.
  • WebAPK minting was broken due to shortcut icons
  • Randomly failing user_spec (#9754)
  • Workaround WebAPK server bug with images without sizes
  • Don’t compute draft for bots on categories index route
  • Apply code quoting with no syntax highlighting (#9784)
  • Use proper icons for App shortcut menu
  • Run cookie tests only after logging in
  • Allow lazy-yt thumbnails to fetched by pull_hotlinked_images
  • Deleting old migration
  • Don’t compute draft for (ro)bots :robot: in topics list
  • Specific email error for replies to digest emails (#9770)
  • Detect Wayback Machine using user agent (#9777)
  • Load locale first in wizard app
  • Update mini racer to correct heap dumps
  • Never save draft while it is saving
  • Don’t publish typing presence if composer isn’t opened.
  • Prevent Safari from scrolling when closing composer
  • Prevents SvgSprite.bundle to query ThemeField two times (#9762)
  • Composer presence shows user as editing when replying.
  • Throttle typing function in discourse-presence.
  • Change /bookmarks URL back to topic list and add bookmark poster avatars (#9759)
  • Handle missing provider return sso url
  • Prevent column name conflicts in reviewable code (#9753)
  • Ensures preview is correctly computing timezone for current user (#9758)
  • Add type to shortcut menu icons
  • Don’t raise an exception if a TopicLink cannot be created
  • Add missing rss routes to parameter api whitelist
  • Show Settings button if plugin has settings (#9728)
  • Saving drafts unconditionally increases sequence
  • Remove unnecessary forward slashes in regex
  • Add tabindex=-1 on tabLoc post links
  • Improve mobile footer nav accessibility
  • Sets a title for notifications button (#9745)
  • Multiple schema.org improvements
  • Title should attempt to fallback to label before name (#9739)
  • Handle a deleted topic in thumbnail generation
  • Show category name in badge preview on edit (#9726)
  • Prevents rendering topic-category if empty (#9720)
  • Stop clearing title by mistake
  • Default to blank title on open
  • Resolve issues with Next Monday for bookmarks not working in certain locales (#9737)
  • CurrentUser now must be passed to resolveTimezone and user card local time issues (#9734)
  • ESC to dismiss empty draft topic composer
  • Bookmark Modal Input (#9707)
  • Support transpiling js in plugins with a root admin folder
  • Some adjustment for the UI of the table
  • Don’t trigger user_updated event for bot users.
  • Remove deprecated URI.escape (#9697)
  • Do not allow null options for bookmark manager
  • Migration to set column NOT NULL for delete_when_reminder_sent on bookmarks (#9696)
  • Incorrect CSS class
  • Parenthesis were wrong, resulting in an always true expression (#9690)
  • preload-store was removed
  • Improves positioning of sk in mobile when inside a modal (#9657)
  • Show the Bookmark button for PM topics (#9659)
  • Improve topic timeline calculation logic
  • Correct edit notification username for PMs (#9649)
  • Using the default_locale in locale fallbacks caused problems
  • Make can_invite_to_forum robust against plugin interference (#9644)
  • Displays poll’s close date in local time (#9656)
  • Preload-store was moved
  • End date of ranges in html preview was incorrect (#9654)
  • Change user digest email total unread notification calculation (#9648)
  • Discobot has not been created with our custom avatar.
  • Preserve code blocks when quoting (#9632)
  • Flaky tests. Due to CSS transitions opacity might not be 0 yet.
  • Fixes wrapping of buttons with larger buttons
  • Avoid using a temporary table in image url database migration
  • Resolve Schema.org validation issues
  • Apply sameWidth from 450px screen width
  • Pre-select Later Today on bookmark edit if the time is the same (#9636)
  • PostgreSQL fallback was broken due to Rails masking exception (#9633)
  • Improve digest email styling on Outlook 2016 (#9626)
  • Reverts to use an observer to support loading more notifications (#9628)
  • Shows filter if there’s no notifications to show after filter
  • Do not use cached settings during theme compilation
  • Clear theme caches after database transaction has committed
  • Missing edit notifications in some rare cases
  • Do not apply only-emoji margin for excluded cases (#9619)
  • Unassign user titles when a badge is deleted (#9573)
  • Save bookmark reminder on tap unless custom (#9611)
  • An <a> with a target of _blank wants a new window (#9607)
  • Ensures an anonymous shortcut fn can be used globally (#9605)
  • Bookmark UI tweaks (#9604)
  • Do not raise error if ‘class’ attribute is not found.
  • Change base importer to create new Bookmark records (#9603)
  • The muted message should be sent after edit (#9593)
  • Sprockets was broken when node_modules was present
  • Server-side HtmlToMarkdown improvements (#9586)
  • Better detection of hidden elements when converting HTML to Markdown
  • Take into account the ‘allowed_href_schemes’ site setting when converting HTML <a> to Markdown
  • Added support for ‘mailto:’ scheme when converting <a> from HTML to Markdown
  • Added support for <img> dimensions when converting from HTML to Markdown
  • Added support for <dl>, <dd> and <dt> when converting from HTML to Markdown
  • Added support for multilines emphases, strongs and strikes when converting from HTML to Markdown
  • Added support for <acronym> when converting from HTML to Markdown
  • Rename all instances of bookmarkWithReminder to just bookmark (#9579)
  • Temporarily disable event listener for dismissing the first notification
  • Ensures widget dropdown doesn’t overflow document (#9590)
  • Make lazyYT crawler-friendly
  • Hide browser update notice in print view
  • Enter selected link with ‘o’ on full page search
  • S3 rake task can ignore yarn.lock
  • Copyedit for “You were logged out” modal (#9584)
  • Correctly hides timeline scroller for short posts (#9581)
  • Ensures card cloak is removed (#9582)
  • Discourse-presence breaks composer for users.
  • Correctly account for direct replies with presence
  • Change bookmarks-with-reminders URL back to bookmarks for user activity (#9566)
  • Remove timezone in brackets from user card (#9567)
  • Do not save bookmark if close (X) on modal is clicked (#9541)
  • Error customizing text for badges from plugins
  • Makes tracking shortcuts working when tracking button is not visible (#9575)
  • Improves tag-list setting (#9574)
  • Include default notification level in category serializer (#9572)
  • Improve clearing store cache (#9568)
  • Published pages couldn’t be routed from inside discourse (#9569)
  • Avoid exception when rendering a poll in a trashed post
  • Remove unsuppored rake task
  • Topic user bookmarked column logic was not correct (#9563)
  • CurrentUser might be undefined (#9555)
  • Local time not updating between user cards (#9564)
  • Keep scroll position when minimizing composer in iOS
  • Correctly shows no bookmark message (#9548)
  • Improves bookmark shortcut reliability and other minor issues (#9547)
  • Only show the review page to users that can see it. Do not publish the reviewable count update message to everyone. (#9556)
  • Add additional checks for automatic theme script CSP
  • Apply category priority for empty query (#9516)
  • Use absolute URL for YouTube thumbnail images.
  • Raise a 4xx error instead of a 5xx if draft data is invalid
  • Do not override all title elements with page title
  • Reenable draft check modal and fix focus on iOS for PMs
  • Removes inheriting as it’s too random and can be very hard to track (#9542)
  • Make sure new user narrative returns toggleBookmark promise
  • Copying image markdown for secure media loading full image (#9488)
  • Site settings dropdown can be 440px width (#9539)
  • Removes rounding correction as it can be in either direction (#9538)
  • Do not set title attribute on header-topic-info widget (#9533)
  • Inner content of a row could have no max-width and be very large (#9532)
  • Update GitHub screen_name on login via GitHub
  • Fails gracefully if :scope is not handled by a browser (#9529)
  • Prevents constant composer reloading (#9528)
  • Don’t throw 500 for invalid website url input
  • Ignore removed column
  • Multisite spec was failing in parallel environment
  • Composer problem on the categories page (#9508)
  • Don’t log an error to logster if a topic could not be updated.
  • Copy button was displayed on quoted codeblock (#9514)
  • Handle sub-sub-category paths without an id
  • Caret icon should inherit its color (#9513)
  • Differentiate sk outline handling on single/multi (#9512)
  • Use absolute url for /user_avatar/ links
  • If bookmarking discobot posts, skip the reminder modal (#9505)
  • Make sure reminder_type is parsed on bookmark update (#9503)
  • Properly add ‘two-rows’ class to header-topic-info container (#9497)
  • Improve selector for copy codeblock button (#9493)
  • Only confirm bookmark delete if a reminder has been set (#9484)
  • Reject invalid Category slugs (#9473)
  • PublishedPages error responses
  • TopicsController error responses (There was an issue of two separate Topic instances for the same record. This makes sure there’s only one up-to-date instance.)
  • Make InlineUploads handle more URL formats (#9467)
  • When category or tag is muted, update user (#9456)
  • Temporarily compatibility for Evented on a Topic Route
  • Set category description to first posts cooked value (#9478)
  • Concurrency issues with making topic embedded posts visible
  • Don’t make topics visible unless the posts are regular
  • Allow embed updates of just the title
  • Embedded topics couldn’t update their titles
  • An opts hash was not, in fact, optional :slight_smile:
  • Wizard was creating duplicate Light theme if Light was selected (#9464)
  • Restore to S3 didn’t work without env variables
  • Infinite loop in migrate_to_s3 rake task
  • Prevents custom emoji to show double colons and set background img (#9471)
  • Set user timezone on password reset login (#9461)
  • Do not raise an error if the post action type is nil (#9458)
  • Stops bookmark keybaod event to be propagated into modal (#9457)
  • Topic title in search contains data-topic-id (#9435)
  • Flaky groups_controller_spec (#9439)
  • Template-lint uses strict rel-noopener rule which requires noreferrer (#9449)
  • Abort emit_web_hook_event job cleanly if web hook was deleted (#9445)
  • Reviewable score JS was in the wrong folder
  • Keyboard navigation fixes in setup wizard (#9413)
  • Don’t demote users to TL2 when default trust level is 3
  • Ensures keyboard event is not propagated when using c shortcut (#9441)
  • Reopen sidekiq log files after rotation (#9429)
  • Makes topic-list-item decorator work on mobile (#9433)
  • Minor bookmark with reminder issue cleanup (#9436)
  • Google groups import changed login URL (#9432)
  • Attempts to listen more reliably to scopedCategoryId changes (#9431)
  • Only apply bold font on topic lists (#9396)
  • Remove word boundary regex (\b) for search result highlights. (#9338)
  • Add short_path to upload_serializer (#9417)
  • Allows custom groups updates to be reflected without recompilation (#9421)
  • Toggle bookmark for topic was not working after cancelling the modal (#9418)
  • Include subcategories in ‘posts’ report (#9410)
  • Remove invalid background (#9406)
  • Show today’s date on /users page period chooser
  • Ensures toolbar is updated on composer action change (#9402)
  • Missing timezone guess on email session login (#9404)
  • Use correct command line attribute for gifsicle while scale down the gif.
  • Adds values/entries/NodeList.forEach/before polyfills for iOS 9.3 (#9401)
  • Detect more unsupported browsers
  • Ensure first post is loaded before trying to bookmark topic (#9382)
  • WCAG-AA compliant topic list heatmap colors
  • Labels for modal close and dismiss-error buttons
  • Add index on user_api_keys.key_hash (#9387)
  • Ensure .gap width does not exceed window width
  • Quoting posts (#9378)
  • Correctly attribute quotes when using Reply button
  • Correctly attribute quotes when using replyAsNewTopic
  • Allow quoting a quote
  • Correctly mark quotes as “full”
  • Don’t try to create a quote if it’s empty
  • Prevent low score flags from auto-closing a topic if the reviewable default visibility is higher than low (#9375)
  • Respect automatic group membership when sso changes email
  • Redirect /my/*path to /login-preferences on client side
  • Widen modal on desktop
  • Exclude private messages from TL3 requirements
  • Reset gravatar cache by adding random param to URL (#9370)
  • Fix untitled/long links extending out box
  • CSV Exports were throwing errors with invalid dates
  • Include pending queued users regardless of their score (#9372)
  • Show topic level bookmark with reminder modal (#9336)
  • Revert inadvertently removed css class (#9360)
  • Add category hashtags support for sub-sub categories.
  • Prevents registering multiple topic-notifications-button:changed (#9356)
  • When loading drafts set the topic
  • Remove date from bookmark reminder non-English translations (#9354)
  • Guardian always got user but sometimes it is anonymous (#9342)
  • Ensure category_id is an integer
  • Topic.time_to_first_response should include sub-sub-categories (#9349)
  • Limit personal message participants when converting from topic (#9343)
  • Check active themes for all requests
  • Do not attempt to deselect tags if filter is not empty (#9345)
  • Jobs/delete_replies: Add Time+Duration, not Time+Time #9314
  • Move total rows count & load more URL inside meta.
  • Allows color-input to set hex and color names through input (#9339)
  • Track links in onebox body if it’s same as header link.
  • Default to light theme in wizard so that previews are displayed
  • Show today’s date on /top page period chooser
  • JQuery deprecation warning (#9331)
  • Removing a timer with duration doesn’t work.
  • Set null high_priority columns to false in high priority notification migration (#9335)
  • Replace default welcome topic post with new value from wizard
  • Restore failed if schema contained objects not owned by the current DB user
  • FlagSockpuppets should not flag a post if a post of that user was already rejected by staff (#9328)
  • Ninja edit for replies not working
  • Correctly load drafts based of id
  • Staged users getting user_linked and user_quoted emails
  • Bypass serviceworker cache for auth routes
  • The correct action for group-member-dropdown is now actOnGroup (#9320)
  • When a post is moved copy notifications level (#9311)
  • When switching reply type update options
  • Do not save draft while it is loading
  • Error when changing a topic’s category and creating a tag
  • Makes clicking and displaying date picker more reliable (#9302)
  • Ensures mini-tag-chooser display min tags req if no selection (#9303)
  • Prevents rendering empty timeline-controls (#9304)
  • Correctly take category/group filters into csv export (#9300)
  • Prevents exception when clicking component title above ace editor (#9309)
  • Allows adapters to define a custom primaryKey (#9254)
  • Allow invite email field to be blank for invite tokens
  • Get_size_from_image_sizes should return [width, height] or nil (#9298)
  • Quoting a nested quote should preserve original post info.
  • Custom SQL with a trailing comment might break BadgeGranter SQL (#9285)
  • Check for presence of name before normalizing
  • Keep date object (#9292)
  • Narrative bot not working for bookmarks with reminders (#9289)
  • Ensure wiki editor is assigned consistently
  • Auto redirect had invalid extension
  • Broken transpilation
  • nil != false
  • Mbox import failed if no tags were configured
  • The migrate_to_s3 rake task couldn’t find the AWS SDK
  • Importing with pgbouncer failed
  • Groups filtering input was causing a full page reload (#9282)
  • Perform crop using user-specified image sizes (#9224)
  • Perform crop using user-specified image sizes
  • Use correct spacing in emails with code (#9274)
  • Display small post actions when embedding a topic (#9278)
  • First pass to improve efficiency of secure uploads rake task (#9284)
  • Change secure media to encompass attachments as well (#9271)
  • Allow JS transpilation
  • Resolver wasn’t being set properly
  • Use 1 column instead of 4 for permalink destination (#9260)
  • Ensures we have a date object in date-time-input (#9276)
  • TopicEmbed#absolutize_urls was trying to modify a frozen string
  • Word boundary regex (\b) not working in Unicode languages. (#9163)
  • Fix image optimization pipeline (#9257)
  • Do not use original filename to extract the original filename
  • Ensures search-menu is not briefly showing previous results (#9272)
  • User-selector was not excluding currentUser (#9266)
  • Race conditions in search menu (#9262)
  • Prevent scheduled publishing to deleted category
  • Improve user timezone saving (#9230)
  • Check for permalinks before showing the 404 page
  • Wizard tests were missing
  • Respect prioritize_username_in_ux setting on /about page
  • Middle click was reading every notifications (#9252)
  • Backfill topic timer duration (#9249)
  • Correctly remove authentication_data cookie on oauth login flow
  • Post edited webhook does not reflect updated topic title
  • Permalinks should redirect to category URL including the ID
  • Correctly remove authentication_data cookie on oauth login flow (#9238) (#9251)
  • Moderators should be able to review flagged PMs since this has always been like this
  • Don’t fail if the test environment doesn’t support Webauthn
  • Include entire slug path in permalinks
  • Add support for sub-sub category slugs in search
  • Allow CSP to work correctly for non-default hostnames/schemes (#9180)
  • Update email_digests user option when default_email_digest_frequency updated.
  • Show the envelope icon when the flagged post is a PM. Flagged PM must be exclusively reviewed by admins (#9232)
  • Fix a PostgreSQL error when a draft was concurrently created
  • Use the new duration attribute in set_or_create_timer method.
  • Correctly remove authentication_data cookie on oauth login flow (#9238)
  • N1 issues for bookmark list (#9236)
  • Use id instead of elementId in hbs file
  • Improve HTML to Markdown conversion (#9231)
  • Condense line codes in emails (#9225)
  • Prevent mobile bookmark modal cutoff
  • Theme-javascripts using incorrect subfolder setting
  • Broken computing of userHasTimezone in bookmark modal and missing tap-tile templates for regular users (#9229)
  • Remote themes Github link should go to custom branch #9184
  • Consistency to show mute/ignore menu in user profile
  • Don’t display webhooks for inactive plugins (#9206)
  • Dismiss notifications on middle click (#9098)
  • Add basePath to link for “no timezone” in bookmark modal
  • Improve bookmark modal on mobile and bookmark sync rake task (#9221)
  • Sync-alt is used on composer draft indicator
  • Use delete_all_posts_max to improve consistency when using the delete button from the admin view (#9194)
  • Show time input in poll builder (#9128)
  • Check for existence of post before creating notification
  • Bookmark reminders and improvements changes (#9213)
  • Ensure show_short URLs handle secure uploads using multisite (#9212)
  • Fix html response in development after ApplicationController reload
  • Plugins may have relative symlinks
  • RANDOM_PASSWORD not working rake admin:create
  • Method from Telligent import script was deleted by accident
  • Ignore suspect users that were migrated or users who were created more than six months ago (#9205)
  • Failed to restore backups from versions without translation overrides
  • Remove parent tag from tag group
  • Make sure bookmark serializer works with deleted topics + posts (#9195)
  • Add topic deleted check to email/sender (#9166)
  • Prevents i18n helper to return a SafeString (#9191)
  • Notification emails with attachments are incorrectly structured
  • Enter submits form for hyperlink insert modal (#9190)
  • Prevents crash when to be unescaped emoji is not a string (#9189)
  • Differentiates flag-modal and flag-modal-body (#9187)
  • Show topic progress on iPad when portrait-oriented (#9181)
  • When must_approve_users is enabled, we don’t want to send suspect users to the review queue. Only non-approved users should be sent. Provide a migration to auto-approve every problematic review item (#9179)
  • Missing constant in SMF2 importer (#9178)
  • Typo on draft save
  • ContactPicker was not setting invite input on topics
  • Featured_topic.fancy_title was rendered without emojis (#9176)
  • Some errors and clean up in confirm-new-email
  • Various fixes to support posts with no user (#8877)
  • Last ip address could point at wrong ip
  • Ensures category exists for hideParent in categoryBadgeHTML (#9161)
  • Throw error when removing a user from group fails (#9162)
  • Don’t break the private key when writing it out during theme import
  • Throttles topic tracking shortcut and enforces topic id (#9159)
  • Preserve TopicCreator’s timestamp resolution (#9158)
  • Correctly checks if component is in modal (#9157)
  • Ensures pinned-options header is showing correct state (#9156)
  • Set current user timezone when saving profile timezone (#9155)
  • Incorrect message when logging in via email
  • Error message for 403 when featuring topic on profile (#9149)
  • Preserve PostCreator’s created_at resolution (#9140)
  • Use bio_excerpt when checking for presence (#9148)
  • Removes legacy refreshQueryWithoutTransition (#9145)
  • Import script might have skipped some users due to missing ORDER BY.
  • Ensure category and tags can be changed from reviewable (#9139)
  • Embarassing algoriths typo ->` algorithms for security keys (#9126)
  • Check if auth token exists before revocation (#9095)
  • Prevent race condition when post processing post (#8819)
  • Tolerate quotes with no username and no title
  • Import posts of missing users from phpbb3 (#9085)
  • Prevent avatar flair image from repeating on user/group cards
  • Allows to define placement strategy of select-kit body (#9109)
  • Uses only global allow_uncategorized_topics for category drop (#9130)
  • Correctly format select options for group poll by fields (#9131)
  • Allow quoting from a closed topic while writing a reply
  • Show a nicer error if name/code missing for TOTP/Security Keys (#9124)
  • Don’t allow people to clear the upload bucket while it’s enabled
  • Use destroy_all instead of delete_all for shared drafts
  • Do not raise an error when in:all search is performed by anon (#9113)
  • Clobbering plugin files on startup is problematic
  • Don’t optimize icons during db:migrate when restoring backup
  • Allows to select the action when agreeing with penalty (#9099)
  • Migrating uploads to S3 could miss files
  • Under concurrent usage booting rails could cause plugin corruption
  • Use full URL for secure attachments when secure media enabled (#9037)
  • Stop infinite lookup-urls issue for video/audio on page (#9096)
  • We need to skip users with associated reviewables when auto-approving (#9080)
  • Allow users to create polls in PMs with non human users (#9055)
  • Add aria-labels to topic list items (#9048)
  • Topics should honor auto-close when published to category (#8963)
  • Prevents click on sk header to bubble (#9084)
  • Restoring with disable_emails: false didn’t work anymore
  • Google Groups scraper failed to login
  • Make FooterNav work with PWAs on iPadOS
  • Ensures category url of category drop is built using slug and id (#9069)
  • Sync preload key format for category topic lists
  • Ignore secure-media-uploads for miniprofiler (#9070)
  • Prettier on iframed-html component (#9062)
  • When appending tags to restricted category posts, we need to pass the category id, or it won’t work. (#9020)
  • Prevnets loading to show during debouncing (#9060)
  • Bulk badge awards should work even if the CSV has nil values
  • Skip poll tutorial if user cannot create polls (#9058)
  • Prevents row click event to be caught by filter input event (#9059)
  • Skip ‘invited’ small action if user is in an invited group (#9056)
  • Polyfill Promise for IE11 (#9057)
  • Downloaded image URLs incorrectly replaced in post raw. (#9014)
7 个赞

UX 变更

  • 默认将 YouTube 嵌入内容设为全宽 (#10106)
  • 修复模态框边距过紧的问题
  • 在移动端的超链接模态框结果中包含类别名称
  • 样式化视频元素,显示描述 (#10040)
  • 改进帖子历史模态框中的“撤销”标签 (#10038)
  • 将背景颜色也应用到 iPad 应用
  • 改进主题置顶管理员模态框的布局
  • 为移动端的用户列表添加底部内边距
  • 更改移动端上折叠草稿的 z-index
  • 添加简单列表设置类型 (#9970)
  • 确保 select-kit 始终一致地隐藏
  • 防止设备错误计算全屏编辑器的高度
  • 调整移动端上的主题管理菜单 (#9945)
  • 移除键盘元素(kbd)的盒阴影,统一样式 (#9948)
  • 修复仪表板标签页上的边框半径伪影 (#9949)
  • 移除“启用通知”按钮后的句号
  • 修复管理员/自定义/颜色中的输入框对齐
  • 将主题管理菜单定位在扳手图标旁边 (#9932)
  • 使用户面板内的菜单链接标题更具灵活性
  • 改进通知菜单中图标的对齐方式 (#9934)
  • 重新定位主题列表前的出口,使其在“顶部”视图也能显示
  • 统一 sk 行内边距和主题管理菜单 (#9920)
  • 重构各种菜单以实现统一 (#9905)
  • 从高级搜索页面移除 in:unpinned 过滤器 (#9911)
  • 修复向导主页步骤中的活动列显示
  • 移除编辑私信按钮
  • 使主题定时器的选中日期时间对齐更加一致
  • 如果用户被永久封禁,则不显示封禁日期 (#9895)
  • 选择自动完成选项后保持输入框焦点
  • 不显示冗余的用户数量
  • 在 +member_count 和“更多”之间添加间距
  • 将“优先级”重命名为“分数”用于排序 (#9846)
  • 使用“图标选择器”和“图片上传器”字段设置群组徽章 (#9779)
  • 移除实时主题预览功能,改用刷新 (#9798)
  • 个人资料链接标题使用“用户名”而非“用户名”
  • 为个人资料链接添加标题
  • 移动端横幅/警告样式更加一致,清理 CSS
  • 在移动端将可标记私信的第一条帖子编辑功能移至下拉菜单 (#9840)
  • 移除私信书签和分享按钮中的文本
  • 将“编辑消息”重命名为“编辑”
  • 移除类别徽章文本的粗体样式
  • 改进主题通知按钮的加载行为 (#9832)
  • 更改主题通知级别时提供视觉反馈 (#9831)
  • 移除通知按钮的箭头
  • 允许安全媒体 URL 在短时间内被缓存
  • 仅在主题页脚按钮的下拉选择框中显示箭头 (#9816)
  • 允许下拉选择框显示箭头 (#9803)
  • 在可用时获取更高分辨率的 YouTube 缩略图
  • 编辑类别时聚焦类别名称 (#9795)
  • 点击复制按钮后显示已复制的文本 (#9793)
  • 创建新主题时改进编辑器操作图标
  • 如果主题回复数受限,在 TL3 报告中添加符号
  • 不使用小型 onebox 图片作为帖子/主题图片
  • 限制 iOS 模态框键盘变化仅适用于编辑器
  • 引入编辑帖子时的编辑器操作
  • 不要禁用“创建账户”按钮,并为必填字段显示错误消息 (#9643)
  • 修复“疯狂的爱”徽章描述中的硬编码值
  • 改进站点设置验证消息的显示
  • 移除 del 和 ins 元素的下划线
  • 防止时间轴与主题页脚按钮重叠
  • 改进横幅和警告关闭按钮的对齐与一致性
  • 修复 iOS 键盘可见时的模态框定位
  • 调整管理员菜单以适应较短(横向)视口
  • 移除 Reddit onebox 描述的顶部内边距
  • 移除粗体以弱化已访问主题中的类别名称
  • 修复用户活动页面的时间对齐
  • 添加带前缀的属性,使 Firefox 也能在代码中使用 4 空格制表符
  • 尝试通过 sk 更好地利用可用空间 (#9639)
  • 书签移除微调 (#9635)
  • 改进第二因素 UI (#9526)
  • 查看已审核项目或所有内容时,默认按 created_at 排序 (#9601)
  • 更改用户合并按钮的标签和图标
  • 浏览主题组件时折叠额外文件 (#9610)
  • 显示关于额外文件和上传者的信息 (#9595)
  • 为小部件下拉标题添加 title 属性 (#9597)
  • 在编辑器中显示未列出详情时添加边距
  • 改进 discobot 随机提及的复制文本
  • 通过移除额外包装器修复仪表板版本面板宽度
  • 无法翻译投票图表类型
  • 右对齐通知项时间,调整移动端空间,整合
  • 改进移动端编辑器切换按钮的间距
  • 用 discourse-no-entry 替换已关闭主题的图标
  • 尝试用 X 代替反斜杠作为已关闭主题图标
  • 重构日期时间输入范围 (#9524)
  • 不要在移动端尝试将 sk 设为全宽 (#9520)
  • 从群组模型中删除 automatic_membership_retroactive 列 (#9430)
  • 为重新打开主题添加 comment-plus 图标
  • 在所有非管理员用户个人资料中显示“合并”按钮
  • 改进 sk 组件中的 outline 支持 (#9510)
  • 将锁定主题的“锁”图标替换为“评论删除”图标
  • 修复损坏的图片占位符样式
  • 在 iOS 上启动编辑器时设置焦点 (#9443)
  • 向导字体大小 (#9448)
  • 防止类别下拉菜单中的计数换行,限制移动端宽度
  • 改进已发布页面的头像分辨率 (#9405)
  • 为 onebox 应用默认背景颜色 (#9407)
  • 将 HTML 转换为 Markdown 时剥离 base64 图片 URL
  • 说明“总结此主题”设置的行为
  • 调整 noscript 页脚导航
  • 显示范围时展示完整日期时间 (#9386)
  • 确保显示日期时使用时区而非 localTimezone
  • 显示时区时不带前缀以减少噪音 (#9383)
  • 重新设计书签提醒模态框
  • 如果未选择样式,则移除类别上的颜色 (#9346)
  • 移除触摸设备上的“作为链接分享”回退方案 (#9332)
  • 使用颜色变量作为快捷键的背景
  • 在菜单标题中换行非常长的单词
  • 微调用户目录“最后更新时间”的样式 (#9322)
  • 改进移动端表情符号布局的自定义 (#9319)
  • 为最新主题列表添加徽章样式
  • 确保在日期表单中 ESC 键正常工作 (#9299)
  • 修复带硬件键盘的 iPad 上的编辑器位置
  • 改进 select-kit 标签中图标的间距
  • 改进移动端上的日期时间输入 (#9291)
  • 尽可能使批量选择菜单切换相对于主包装器对齐
  • 禁止在“默认标签”站点设置选择器中创建标签
  • 显示更好的错误图片
  • 在类别路由主题列表项中显示头像徽章 (#9197)
  • 在移动端用户菜单中增大个人资料面板的点击区域
  • 热键 K 可选择部分帖子
  • 禁用已删除帖子的突出显示动画
  • 移除用户或更改所有者时刷新群组成员列表
  • 改进 /review 页面上可疑用户的复制文本
  • 在 iOS 上移除“实时通知”用户个人资料部分
  • 使用 mod+p 代替 ctrl+p 和 command+p 来打印主题 (#9202)
  • 改进可疑用户功能的复制文本 (#9201)
  • 改进 select-kit 标签中图标的间距
  • 尊重 prioritize_username_in_ux 设置以用于用户头像标题
  • 添加对颜色设置类型的支持 (#9016)
  • 类别设置模态框(标签选项卡)的输入调整
  • 尝试增加移动端弹出菜单的点击区域 (#9038)
  • 允许“主题和帖子太少”通知的正确复数形式 (#8947)
  • 在搜索结果中区分私信和主题 (#8933)
  • 防止显示投票者时出现跳动 (#9054)

安全变更

  • 使通过 slug 查找主题符合 SiteSetting.detailed_404 (#9898)
  • 主题嵌入使用 FinalDestination
  • 重定向前缺少安全检查
  • 重新添加意外回退的提交:
  • 确保 embed_url 包含有效的 http(s) URI
  • 自定义电子邮件样式中的 ERB 执行
  • 更新 jQuery 至 3.5.0 (#9708)
  • 更新 onebox 以添加 rel=“noopener”
  • 确保用户可以看到群组及其成员
  • 加载书签元数据时尊重主题权限
  • 加载草稿元数据时尊重主题权限
  • 防止访问其他用户的书签列表
  • 对邀请邮件添加更多限制
  • 确保邀请 JSON API 与 UX 一致

性能

  • 改进批量导入中索引的加载
  • 改进批量导入中 imported_ids 的加载
  • 全局启用 bootsnap
  • 缓存 PrettyText 实例以渲染编辑器预览 (#9987)
  • 将元素传递给 resolveAllShortUrl 函数,而不是文本选择器 (#9988)
  • 在 JavaScript 应用中正确记忆 baseUri 值 (#9986)
  • 限制搜索频率,并为搜索结果添加匿名缓存 (#9969)
  • 添加 FORCE_BOOTSNAP 环境变量
  • 获取 Web 清单时将查询次数从 3 次减少到 1 次
  • 检查存在性时使用更高效的查询
  • 避免在 loadScript 中遍历 DOM
  • 从书签中移除外键 (#9837)
  • 确保在上下文中运行完整 GC
  • 解构 topic_reply_count (#9769)
  • 避免创建主题链接时的竞态条件
  • 避免重复执行相同的查询
  • 获取机器人用户的草稿序列时避免访问数据库
  • 更改表时减少独占锁定
  • 将头像获取移至 discobot 证书的劫持中
  • 向管理员用户发布时移除数据库查询
  • 重构 decorateCooked 以在分离的 DOM 中运行 (#9517)
  • 停止触发多余的 onSelectionChange
  • 改进 Safari 中的懒加载性能
  • 默认启用新用户卡片路由 (#9442)
  • 缓存 Category.subcategory_ids (#9350)
  • 加速多站点迁移
  • 存储大量上传文件的 S3 备份速度较慢
  • 允许预加载用户的“最近阅读时间”(#9076)
  • 允许用户序列化器利用预加载的自定义字段 (#9074)
  • 加载时允许传递现有的用户字段 ID 列表 (#8970)
  • 改进类别主题列表的性能
11 个赞