Skip to content

Yimsg 0.1.3

Choose a tag to compare

@github-actions github-actions released this 17 Aug 23:26
64bd701

Yimsg 0.1.3

0.1.3 是一次以前端列表基础设施为主的版本:新增并落地统一的 BoundedList 有界列表组件,把会话、消息、通讯录、群成员、转发、搜索等 13 处列表收敛到同一套分页、滚动与追平实现;同时重构测试分层、补齐独立测试入口,并修复一批移动端与文字渲染问题。

BoundedList 有界列表组件

  • 新增 packages/uikit/src/app/bounded-list/ 组件:调用方只提供「怎么取一页」和「怎么画一行」,分页、窗口裁剪、渲染复用、滚动保持、背景追平、本端写入、选中态、错误态与释放全部由组件负责。
  • 内存与 DOM 是与后端总量无关的常数:渲染行数恒等于 pageSize × maxPages(权威窗口)+ pageSize(本地层上限)+ 调用方钉住的条目数。
  • 采用「权威窗口 + 本地层」模型:本端发送、乐观插入和撤回通过 upsertLocal / removeLocal 立即可见,权威响应落地时不再闪动。
  • 轻通知按身份定向刷新;窗口未追平新鲜端时改为提示条,提示条只表达「有 / 没有」新内容,不再展示会漂移的待追平计数。
  • 会话切换、筛选和关键字变化会作废旧世代请求,旧响应不会覆盖新窗口。
  • 全部 13 处生产列表迁移到该组件:会话列表、消息列表、通讯录好友、待处理 / 已发出好友请求、群成员详情、转发会话与通讯录候选、建群候选、添加群成员候选、提及群成员、会话内消息搜索。
  • 修复历史遗留的 25 条已确认缺陷,并归档到 docs/archive/BoundedList缺陷列表.md;新增 packages/uikit/docs/boundedlist/ 专题文档(导读、功能说明、组件设计、生产集成、测试方案、缺陷列表)。

Web 与 UIKit

  • 修复消息气泡与输入框中文文字顶部被裁切的问题。
  • 优化移动端消息输入区的布局与交互。
  • 会话列表加号按钮改为下拉菜单,建群支持默认群名称;移除会话列表顶部冗余头像入口。
  • 转发弹窗支持直接从通讯录选择联系人。
  • 设置页顶部增加浅蓝渐变导航栏,与联系人页保持一致。

测试与工程

  • 重构测试分层,拆出 unit / integration / E2E / component / performance 五个独立入口(./tools/run_unit_tests.sh 等),./tools/run_all_tests.sh 按 unit → integration → E2E → component 顺序调用,性能门禁保持独立。
  • 新增 BoundedList 浏览器组件用例与性能回归用例,单元测试覆盖率补到 100%。
  • 消除 friends 分页、消息顺序、消息翻页锚点等用例在并行套件下的偶发竞态,隔离并发测试与清理竞态。
  • 增强文档一致性检查工具,补齐其自身的测试用例。

官网

  • 修复官网一键部署 Windows 命令的解压路径错误。

下载

  • Windows x86-64:yimsg-0.1.3-windows-x86_64.zip
  • Linux x86-64:yimsg-0.1.3-linux-x86_64.tar.gz
  • Linux ARM64:yimsg-0.1.3-linux-arm64.tar.gz
  • macOS Apple Silicon:yimsg-0.1.3-macos-arm64.tar.gz

每个发行包包含 yimsgyimsg-cliyimsg-agent、完整 Web 产物、配置示例、中英文快速开始和许可证文件。请使用 SHA256SUMS.txt 校验下载内容。