Skip to content

v2.3.0-beta.2 (Build 26F02)

Pre-release
Pre-release

Choose a tag to compare

@tuyangJs tuyangJs released this 19 Jun 12:11
  • YAML 存储 API 扩展

    • 新增 yaml_set_str / yaml_get_str:强制字符串类型存储与读取
    • 新增 yaml_get_all:读取整个 YAML 文件内容
    • 新增 yaml_has:检查指定路径是否存在
    • 新增 yaml_delete / yaml_clear / yaml_delete_file:路径删除、文件清空、文件删除
    • 新增 yaml_keys:列出指定路径下的所有 key
    • 新增 yaml_len:返回数组长度或对象 key 数量
  • YAML 路径语法增强

    • yaml_get / yaml_set 支持数组下标语法 [N]
    • yaml_get 支持两阶段查询:buffer 不足时返回所需字节数(含 NUL)
  • 窗口事件拦截

    • drag-drop Enter 事件支持同步拦截,宿主返回非空指针拒绝拖拽
    • drag-drop Drop 事件支持同步消费,宿主返回非空指针表示已处理
    • Over / Leave 保持异步通知
    • 无回调注册时行为不变(兼容现有逻辑)
  • IPC 通信优化

    • invoke 与广播消息共用发送路径,减少重复封装
    • 前端消息入口收敛到统一 dispatcher,取消多入口分发
    • 高频小事件合并发送:微任务批处理 flush,减少调度开销
    • 外部 jade.invoke / jade.on 调用方式不变,旧消息形态继续兼容
  • NTP时间获取

    • 新增 jade_time_now API,获取当前网络时间戳(UTC毫秒),北京时间需+8H
  • 修复 YAML 中间节点覆盖问题:非映射且非空时返回 -2,不再覆盖

  • 修复 YAML 序列化失败时清空文件的问题:失败返回 -1,不写盘

  • 修复 YAML 非原子写入:改用临时文件 + rename,Windows 下增加重试

  • 修复 YAML 无文件锁问题:使用 CreateFileW + LockFileEx

  • 修复 YAML CString NUL 截断问题:失败时返回 -1

  • yaml_get / yaml_set 返回值新增负数错误码语义

    • -1 IO 错误 / -2 类型不匹配 / -3 目标已存在 / -4 格式解析失败
  • yaml_set 自动解析数值与布尔类型,yaml_set_num / yaml_set_bool 合并到 yaml_set

  • 迁移 serde_yamlserde_yml

  • jade.invoke 路径优化,预期提升 5% ~ 20%

  • 广播消息路径收敛,预期提升 20% ~ 60%

  • 高频小事件合并发送,消息数减少约 50% ~ 90%

收益最明显的场景:多窗口广播、高频状态同步、日志/进度/拖拽类小消息、大量连续触发的 UI 事件。\n\n---\n本版本的文档参考在 beta 目录中