3.1.0.beta3:搜索优化、可调整大小的聊天抽屉、新的API范围等

3.1.0.beta3 中的新功能

搜索优化

我们通过新的优化改进了搜索功能。有关完整详细信息,请参阅链接主题!

可调整大小的聊天抽屉

我们已更新聊天抽屉,使其可以调整大小。要调整抽屉的大小,请用鼠标抓住左上角并调整到您满意为止。抽屉的大小将存储在设备上,并在您将来访问 Discourse 时被记住。

Kapture 2023-02-03 at 00 52 13

其他聊天改进

我们一直在不断迭代聊天功能。在此测试版中,我们增加了对内联音频播放器的支持,以及对频道 slug 的编辑(仅限管理员)。我们还为聊天标题图标添加了一个新的用户偏好设置。用户可以配置以下选项:

  • 所有新消息(默认)- 这将保留现有行为,即频道中的所有新消息都会在图标上显示一个蓝点
  • 直接消息和提及 - 仅当您收到直接消息或被提及时,图标上才会显示绿点,蓝点永远不会显示
  • 从不 - 永远不要在聊天图标上显示任何点,适合那些
    想要激光聚焦的人

新的 API 范围

我们添加了额外的 API 范围,以允许开发人员确保他们生成的 API 密钥只能在特定端点上工作。新的 API 范围包括:

  • 列出类别中的主题
  • 列出、添加和删除组成员
  • 列出、创建、删除和更新组
  • 删除主题或帖子
  • 列出标签
  • 更新主题状态

macOS Ventura 上的推送通知

我们通过 service workers 为 macOS 添加了对推送通知的支持。这在 Ventura 及更高版本中得到支持。我们预计苹果将在今年晚些时候在 iPhone 和 iPad 上为 iOS 添加对推送通知的支持。

插入日期/时间改进

您知道您可以将日期/时间插入帖子中,它会自动以用户的时区显示吗?下面我插入了日期 2023-03-01,下午 12:30 EDT。加利福尼亚的用户将看到上午 9:30,而德国的用户将看到下午 5:30。

2023-03-01T17:30:00Z

要快速将当前时间添加到编辑器中,用户可以键入以下内容:

  • 在 Windows/Linux 上:Ctrl + Shift + .
  • 在 macOS 上: + Shift + .
23 个赞

还有更多!

但等等,还有更多!我们尽力为您突出显示新功能和变更,但变更总是多到无法一一详述。有关新功能、错误修复、用户体验改进等的完整列表,请务必查看下方列出的“其他功能和修复”。

安全更新

此测试版包含 9 项安全修复,针对由我们的社区和 HackerOne 报告的问题。

插件改进

discourse-antivirus

错误修复
  • 防止与 ClamAV 通信时发生死锁。
  • 改进不同场景下的扫描和错误处理。

discourse-assign

错误修复
  • 缺少操作图标
  • 搜索结果中的 N+1 查询
  • 用户搜索使用与默认值相同的限制
用户体验变更
  • 首帖中的分配消息更清晰
  • 修复核心变更后的状态对齐
  • 改进群组分配的自定义图标
  • 移除分配标签中的空白
  • 为私密分配的小帖子添加类

discourse-calendar

错误修复
  • 禁用重复事件的邀请通知
  • 为提醒添加向后兼容性

discourse-chat-integration

错误修复
  • Slack 线程始终使用父 thread_ts

discourse-data-explorer

错误修复
  • 特殊属性无法工作
  • 更改报告时清除状态
  • 保存查询更改后保持编辑状态
用户体验变更
  • 减小表格高度

discourse-follow

用户体验变更
  • 移除新用户导航的条件,移除旧导航

discourse-github

用户体验变更
  • 更新徽章图标

discourse-group-tracker

错误修复
  • 跳转到首帖(pre-glimmer)

discourse-kolide

错误修复
  • 使用「cursor」分页参数从 API 获取所有记录。
  • (File|Dir).exists? 已弃用

discourse-math

错误修复
  • 防止强制将内联 span 转换为块级元素

discourse-policy

新功能
  • 创建策略时输入预设的接受文本

discourse-prometheus-alert-receiver

错误修复
  • 以 UTC 显示时间戳
  • 确保正确显示结束时间
用户体验变更
  • 确保本地日期弹出窗口不被裁剪
  • 仅在需要时显示水平滚动条
  • 改进小宽度屏幕上的行为

discourse-reactions

错误修复
  • 修复滚动条始终可见的问题
  • 修复宽度
用户体验变更
  • 调整样式
  • 更新反应徽章图标

discourse-salesforce

新功能
  • 添加新的站点设置以设置案例来源。
用户体验变更
  • 删除字符串中不必要的逗号

discourse-solved

新功能
  • 添加 API 作用域
错误修复
  • 为已解决的通知添加标题
用户体验变更
  • 微调「解决方案」按钮设计

discourse-spoiler-alert

无障碍性
  • 屏幕阅读器应在展开后朗读悬念内容

discourse-translator

新功能
  • 支持 Microsoft 提供商的自定义端点

discourse-yearly-review

安全变更
  • 当用户被匿名化时更新旧用户名。

docker_manager

新功能
  • 恢复很久以前丢失的 ps 自动刷新
  • 在管理导航中添加「升级」选项卡
  • 升级过渡后刷新页面
错误修复
  • 移除 Ruby 内存标志
  • d-icon 参数使用不当
  • 将 find repos 改为类方法
  • 将 find_repos 设为公开
  • 对话框服务的使用
  • 仓库状态链接
  • 支持 git 子模块插件
  • 语法错误
用户体验变更
  • CSS 清理
  • 恢复并调整动画进度条
  • 改进非必需升级横幅的 CSS
  • 使 upgrade-show 标题更易于翻译
  • 改进标题
  • 修复导航选项卡样式
  • 更新「升级」按钮样式
  • 微调某些样式

其他功能和修复

点击展开

新功能

  • 建议主题自定义的钩子
  • 仅在消息通知面板中列出关注的群组消息
  • 可配置自动顶起冷却时间
  • 禁用新建主题按钮的工具提示
  • 从编辑标签同义词页面添加新标签
  • 允许自定义侧边栏部分中的外部链接
  • 聊天头部图标指示器偏好设置
  • 使用 Rails 5 环境变量记录到 STDOUT
  • 更新主题/评论嵌入参数
  • 为列出类别中的主题添加 API 作用域
  • 添加更多 API 作用域
  • 为群组端点添加 API 作用域
  • 添加字数统计及超出最大值的指示器
  • 推出新的搜索优化
  • 使用功能检测在 iOS 上显示推送通知
  • 带有线程初始骨架的聊天侧边栏
  • 添加在编辑器中插入当前时间的快捷键
  • 如果没有上传内容,则创建仅 SQL 备份
  • 在后台自动创建聊天线程
  • 支持在 JSON Schema 字段类型中折叠数组部分
  • 允许嵌入视图包含标题
  • 允许 DTooltip 交互
  • 聊天上传的内联音频播放器
  • 可调整大小的聊天抽屉
  • 在用户搜索中使用相似度
  • 隐藏设置 prioritize_exact_search_title_match
  • 允许限制搜索索引中的重复项
  • 为 Apple 设备启用服务工作者
  • 将元数据用户结果移至列表底部
  • 隐藏站点设置以禁用搜索前缀匹配
  • 允许编辑频道 slug
  • 限制每秒匿名搜索次数
  • 为主题状态添加单独的 API 作用域

错误修复

  • 当频道中禁用频道范围的提及邮件时,不发送邮件
  • 主题时间线中的最新帖子 created_at 未更新
  • 更新用户表的 LoadMore 选择器
  • default_list_filter = none 导航和预加载
  • 针对 NULL category.topic_id 的 TopicQuery
  • 主题时间线摘要主题按钮损坏
  • 匿名用户无法加载提及具有结束日期用户状态的主题
  • 头像上传错误
  • 删除常规类别后欢迎主题横幅仍显示
  • 确保编辑的消息正确重新装饰
  • 更一致的滚动到底部
  • 使用 default_list_filter 时标签下拉菜单不工作
  • 确保新类别记录上定义了 form_template_ids
  • 提高未读状态精度
  • 审查 q 问题
  • 不为表情符号/头像发送图像尺寸
  • 确保新类别记录上定义了 required_tag_group
  • 向聊天上传多个文件可能导致取消
  • UploadReference 按 UploadSecurity 的平局决胜符排序
  • 验证前设置外部标志
  • Firefox 上粘性日期损坏
  • 更精确的未读消息检测
  • 在多个会话中正确同步当前用户消息
  • 当用户已存在且电子邮件地址被隐藏时显示适当的错误
  • 不从群组私信向被暂停的用户发送邮件
  • 新用户草稿上不显示无限加载状态
  • 名称包含空格时的部分链接类
  • 匿名 FAQ 链接到外部 URL
  • 处理类别设置相对时间选择器中的空值
  • 修剪邀请电子邮件字段中的空白
  • 防止鼠标悬停获得 sk 行的焦点
  • 删除安全密钥无法工作
  • 访问已加载的回复时不刷新
  • 正确 uploads 类型主题设置的默认值
  • 泄漏回调以同步状态
  • 创建新类别时主题跟踪状态计数不正确
  • 如果 URL 中的用户名并非全小写,则使用默认的收件箱标签
  • 防止重复反应
  • 防止在需要登录且启用了聊天的站点上抛出异常
  • #present → `#presence 在 TopicRetriever 中的拼写错误
  • 非作者将自己从私信中移除时未创建小型操作
  • 允许 Google Maps 单框中的缩放级别使用浮点数
  • 不在私信草稿上设置 categoryId
  • 重新计算信任级别无法工作
  • 仅在站点设置启用时,在 search_user 结果中显示已批准的用户
  • 在 ensure_consistency 任务期间将 TopicUser 表中的发帖作者标记为 true
  • 代码块中的复制 & 全屏按钮编辑
  • :frowning: 的自动补全失败
  • 不对类别文本描述转义斜杠
  • 修正 admin-embeddable-host 中的问题
  • 修正 admin-styles-editor 中的问题 (#20435)
  • 使用类别描述作为侧边栏链接标题
  • 修正 admin-theme-editor 中的问题
  • 确保普通用户可以删除他们的私信
  • 快速编辑对包含某些字符的内容不工作
  • 频道创建模态框中选择自动加入时出现空白对话框
  • Firefox 中带有 hashtag SVG 的文本选择被破坏
  • 通过查询参数将导航菜单覆盖为「legacy」不工作
  • 添加对 Europe/Kyiv 时区的支持
  • 允许通过 GlobalSetting 更改默认的 2 秒 DNS 查询超时
  • 错误的插值键
  • 不不必要地排队 update_post_uploads_secure_status
  • Glimmer 组件参数访问
  • 正确更新 _subscribedTo* 属性
  • 允许在类别只读对话框中使用 HTML
  • 正确将用户信息数据添加到消息序列化器
  • 聊天成员用户卡片渲染在视图外
  • 移除不必要的 footer-nav-height 减法
  • 确保暂存消息设置频道 ID
  • 正确计算 iPad 底部导航高度
  • 移除抽屉中存储的滚动位置
  • 通过关联已删除主题的键取消订阅
  • 修正 DiscourseHub 上的侧边栏和聊天高度
  • 在自定义类型中不为 linkTitle 回退到原始实现
  • 确保 chat-message 随模型重新计算
  • 聊天 shift+选择消息的回归问题
  • 正确打开频道信息
  • 主聊天出口网格中溢出的聊天内容
  • 16 位图像的主色调不工作
  • 在模态取消事件上重置管理主题控制器
  • 恢复部分线程 CSS
  • 不通知被抑制类别的管理员
  • 编辑自定义部分标题
  • 类别设置迁移在 ‘’ 整数上失败
  • 当 tl4_delete_posts_and_topics 设置时匿名错误
  • 正确监听聊天通知
  • 完成术语时考虑光标漂移
  • IconPicker 选项仅显示可用图标
  • 用翻译替换硬编码字符串
  • 聊天的用户自动补全抛出错误
  • 为 sidebar_section_link 添加索引
  • 停止 YouTube 在向上滚动时自动播放
  • 当帖子排队时返回有效的 JSON
  • 更改 YT 图像的类名
  • 隐藏添加部分按钮
  • 改进用户自定义部分
  • 在外层容器上应用最大高度
  • 确保不存在的用户/群组卡片不会卡住
  • 从 S3 重定向下载备份可能失败
  • 如果帖子已被审查,则移除操作按钮
  • 确保 ColorScheme#resolve 对缺失颜色回退到基础颜色
  • 设置用户状态时避免竞态条件
  • 修复水平溢出组件中的拖拽
  • 在非子文件夹安装中使用 / 作为 webmanifest 中的 start_url
  • Android 上自动补全显示在键盘下方
  • 删除聊天消息时删除关联的通知
  • 在聊天中搜索表情符号时允许键盘导航
  • 子子类别的类别标签并非总能找到
  • 降低已归档主题的优先级
  • 域搜索对 URL 无法正常工作
  • 正确过滤预填值的输入
  • 添加对 PG 14 及以上版本的支持
  • Glimmer 主题时间线上的后退按钮操作和位置
  • 聊天中表情符号自动补全的「更多」按钮不工作
  • 更好的相似用户搜索建议排序
  • 在用户菜单路由器查找中使用 username_lower
  • 将用户名更新扩展到自我提及
  • 加载可审查列表时同步用户的可审查计数
  • 搜索索引重复解析器匹配过于严格
  • 键盘焦点上的表情符号预览显示错误的预览
  • 更新自动静默私信给管理员的旗帜 URL
  • 恢复重置编辑器值时的值检查
  • 纠正隐藏用户选择器中头像的回归问题
  • 用 rtlcss 替换 R2 gem 以生成 RTL CSS
  • 允许编辑未持久化的配色方案颜色
  • 类别权限变更未创建日志
  • 当 data-original-href 缺失时的 Vimeo iframe URL
  • 重写通用站点策略默认值
  • 获取 429 时不 spam 存在请求
  • 调用 LazyYT 时聊天中禁用导致错误
  • 更新书签主题复制
  • 添加对多个 TikTok 宽高比的支持
  • 使用 popper 处理卡片
  • 在单框中保留头像大小
  • 修正 chat-notification-manager 中的各种错误
  • 截断现有用户状态至 100 个字符
  • 替换基础 URL 前验证资产 URL
  • 日期模态框中时区选择器的更好 UX
  • 拦截抽屉模式中的旧频道 URL
  • 速率限制搜索的系统规范失败
  • 将用户状态限制为 100 个字符
  • 确保软删除的主题可以被删除
  • 修复从邀请自己获取徽章的问题
  • 移除指向包含不当内容站点的链接
  • 在用户搜索中使用指定的限制选项
  • 确保 API 请求从不返回 anon-cached 值

用户体验变更

  • 为搜索一致性将 JPEG 改为 JPG
  • 改进旧浏览器的菜单面板高度回退
  • 改进安全模式复制文本
  • 避免溢出裁剪降部
  • 一些管理主题列表样式调整
  • 改进 discourse_connect_url 的站点设置描述
  • 群组用户表下拉菜单和边框的位置
  • 微调最后访问/日期分隔符
  • 修复聊天回复溢出
  • 确保头部徽标具有尺寸,样式清理
  • 修复顶部嵌入回复和帖子通知的宽度
  • 新用户表格的样式改进
  • 移除视觉聊天消息暂存效果
  • 移除旧的群组目录模板和 CSS
  • 使最后访问不那么显眼
  • 修复约 1260px 宽度断点处的横幅重叠问题
  • 为新导航更新用户聊天偏好链接
  • 当存在草稿时,将侧边栏中的「我的帖子」链接切换为「我的草稿」
  • 跳过将链接类型的关注词应用于用户自定义字段
  • 更新徽章图标
  • 修复图片聊天消息中的大型单框头像
  • 修复移动主题列表上的标签和类别点击
  • 仅当导航可滚动时允许滚动抓取
  • 用户徽章微调
  • 恢复更宽的搜索下拉菜单宽度
  • 高亮变量更新
  • 发布新的用户个人资料导航以兼容侧边栏
  • 仅对内容应用骨架动画
  • 为用户页面添加 h1 标签
  • 徽章页面样式更新
  • 移除按钮的固定宽度
  • 当使用 enable_sidebar 查询参数时隐藏汉堡下拉菜单
  • 包含频道列表中的过度滚动
  • 将垂直管理插件导航移至水平溢出导航
  • 防止聊天中的滚动传播到父级
  • UI 中的用户状态限制处理
  • 捕获工具提示中的边缘情况
  • 更新聊天草稿图标颜色
  • 样式编辑
  • 修复从私信中移除用户的悬停样式
  • 为头部图标添加透明边框
  • 当用户被暂停时隐藏用户卡片上的聊天按钮
  • 警告群组删除的后果
  • 允许侧边栏在低至 768px 时内联显示
  • 修复令人困惑的错误消息
  • 为字符串添加缺失的反引号
  • 为表单操作添加弹性对齐
  • 轻松在管理徽章列表中切换徽章
  • 改进键盘快捷键模态框的布局
  • 修复 timeline-handle 定位
  • 实现随机和自动生成的骨架
  • 允许抽屉占据大部分高度空间
  • 允许标签在移动设备上在类别下换行
  • 按 slug 而非标题对公共频道排序
  • 为回复位置显示完整主题标题
  • 为高亮提及 span 应用相同样式
  • 将数据导出移至新用户导航的偏好设置页面
  • 为 glimmer-topic-timeline 全屏视图添加过渡
  • ISTKSTJST 添加时区别名
  • 从现有颜色计算缺失的悬停/选中颜色
  • 弹性水平表单控件
  • 移除聊天特定的字体声明
  • 在全页模式下恢复聊天图标上的 URL
  • 改进文本的表情符号对齐
  • 高亮变量重构
  • 为 permanently_delete_post_revisions 添加员工操作日志文本

性能

  • 移除从侧边栏发起的私信主题跟踪状态请求
  • 聊天实时面板的各种性能改进
  • 减少加载更多过去消息区域的高度
  • 在聊天实时面板上应用优化
  • 跳过 mini_profiler 的元数据路由
  • 加载自定义侧边栏部分时预加载可链接项
  • 为 ReindexSearch 作业添加索引以加速
  • 重构滑入菜单大小调整以提高性能
  • 移除 ember-link-component-extension 以启用 Glimmer LinkTo
  • 移除自定义 Sidebar::SectionLinkTo 实现
  • 将用户提示和叙述移至每用户 messagebus 频道
  • /tags 上具有多个类别标签的 N+1 查询

无障碍性

  • 允许头部徽标/标题根据需要隐藏
  • 头部图标应为按钮而非链接
  • 为头部通知计数添加 aria-label
  • 共享标签需要在输入上具有对应的 ID
  • 为嵌入的跳转链接添加 aria-label
  • 帖子编辑历史按钮的 Aria-label
  • 为主题地图展开添加 aria 标签
  • 历史模态模式切换需要 aria-labels
  • 嵌入帖子需要披露小部件属性
  • 帖子头像不应可聚焦
  • 为书签名称输入添加可访问标签
19 个赞