mORMot2 Daily每日上游提交速读

脚本引擎过期时间保留完整分钟范围

一行算术修复避免较大的 TThreadSafeManager.EngineExpireTimeOutMinutes 在换算为毫秒时溢出。Windows SChannel server 在证书 store 中无法选出证书时,exception 现在也会包含底层系统错误。配置了超长生命周期的脚本引擎 pool 应采用第一项修复;TLS 变更仅改进诊断。

要点

  • 采用 upstream head 5a1509b805bcdc7f239c683bd0e68ab9700c1247,即 build 2.4.17189。
  • EngineExpireTimeOutMinutes 现在用 Int64 完成分钟到毫秒的乘法,避免较大设置发生 32-bit 溢出。
  • SChannel 证书查找失败时,ESChannel 现在包含 Windows 错误文本与代码,不再只有通用消息。

升级建议

如果 EngineExpireTimeOutMinutes 换算后的毫秒数可能超过 32-bit 范围,请升级到 head 5a1509b805bcdc7f239c683bd0e68ab9700c1247 的 build 2.4.17189。无需迁移:public property 仍使用 cardinal 分钟值,仅 setter 算术发生变化。Windows SChannel 部署还可利用更详细的 ESChannel 消息诊断证书 store 故障。

版本号2.4.17187 → 2.4.17189
提交2
行数+6 -6
阅读1 分钟

2 条中的 2 条 · 上游 2 次提交

# 条目 类别 单元
1 中 较长的脚本引擎过期设置不再溢出 mormot.script.core 的 TThreadSafeManager.SetEngineExpireTimeOutMinutes 现在先把 Value 转为 Int64,再乘以 MilliSecsPerMin。结果仍存入现有 Int64 字段 fEngineExpireTimeOutTix。 修复 mormot.script.core 5a1509b8+3-3

script: fixed TThreadSafeManager.EngineExpireTimeOutMinutes

影响

使用较大分钟值的 Delphi/FPC backend 现在会保留预期引擎生命周期,不再存储回绕后的毫秒间隔。240 分钟等常见生产值不变,也无需源码迁移。

公开 API

  • TThreadSafeManager.EngineExpireTimeOutMinutesbehaviour-changed — 较大的 cardinal 分钟值现在使用 64-bit 乘法换算。

Arnaud Bouchez · 13:04 UTC · 在 GitHub 上查看该提交 →

2 低 SChannel 证书查找失败会显示 Windows 错误 mormot.net.sock.windows 的 TSChannelNetTls.AfterBind 在 CertFindCertificateInStore 返回 nil 后改用 RaiseLastError,不再调用通用 ESChannel.Create。exception 仍为 ESChannel,并新增操作名、Windows 错误文本与数字代码。 杂项 mormot.net.sock.windows 258c48f4+3-3

net: try to identify SChannel TLS issue on PRISM

影响

Windows Delphi/FPC SChannel server 在找不到可用证书时仍会 bind 失败;只有诊断细节变化。成功的 TLS 设置与非 Windows TLS backend 不受影响。

Arnaud Bouchez · 13:02 UTC · 在 GitHub 上查看该提交 →

上游活动 每日提交数 · 最近 60 天
提交977
活跃天数44/60
最忙一天2026-09-30
峰值60
2026-08-15: 0 commits2026-08-16: 0 commits2026-08-17: 0 commits2026-08-18: 0 commits2026-08-19: 0 commits2026-08-20: 0 commits2026-08-21: 0 commits2026-08-22: 0 commits2026-08-23: 0 commits2026-08-24: 0 commits2026-08-25: 0 commits2026-08-26: 0 commits2026-08-27: 26 commits2026-08-28: 11 commits2026-08-29: 10 commits2026-08-30: 1 commit2026-08-31: 23 commits2026-09-01: 0 commits2026-09-02: 20 commits2026-09-03: 29 commits2026-09-04: 35 commits2026-09-05: 13 commits2026-09-06: 0 commits2026-09-07: 0 commits2026-09-08: 23 commits2026-09-09: 10 commits2026-09-10: 17 commits2026-09-11: 23 commits2026-09-12: 14 commits2026-09-13: 9 commits2026-09-14: 7 commits2026-09-15: 4 commits2026-09-16: 24 commits2026-09-17: 26 commits2026-09-18: 21 commits2026-09-19: 59 commits2026-09-20: 13 commits2026-09-21: 5 commits2026-09-22: 34 commits2026-09-23: 17 commits2026-09-24: 57 commits2026-09-25: 22 commits2026-09-26: 26 commits2026-09-27: 0 commits2026-09-28: 2 commits2026-09-29: 19 commits2026-09-30: 60 commits2026-10-01: 26 commits2026-10-02: 30 commits2026-10-03: 32 commits2026-10-04: 15 commits2026-10-05: 1 commit2026-10-06: 26 commits2026-10-07: 37 commits2026-10-08: 27 commits2026-10-09: 35 commits2026-10-10: 33 commits2026-10-11: 9 commits2026-10-12: 11 commits2026-10-13: 35 commits
2026-08-152026-10-13