Repository navigation
Releases
v0.50.0
Release of oekit/pkg v0.50.0(annotated tag,由 release_train 门禁后打点)。
变更记录
- feat: 下沉 sse 游标回放应答器(订阅先于回放去重+心跳注释帧+游标窗口,#483)与 canon 策略面规范形指纹(canonical→版本哈希+facet diff,#484)。BREAKING:摘除产品域两件 licensx(#486)/webhook IM 载荷(#485)——v0.49.0 曾随 tag 发出,现改道 yi-nology/gopkg(revert #508),0.x 阶段直接摘除,依赖方改接 yi-nology/gopkg。
关联问题单:pkg#483、pkg#484、pkg#485、pkg#486。
v0.49.0
Release of oekit/pkg v0.49.0(annotated tag,由 release_train 门禁后打点)。
变更记录
- fix: 审计单批量收口——cron 契约四单:ConstantDelay/Delay/RandomSchedule 直构兜底「严格晚于入参」+构造器拒非正延迟(#468,#469)、RoundDuration 负精度 panic+整数算术防 float64 丢精度(#470)、WrapSchedule 补 NewWrapSchedule(#471);timex:NDateBefore 负 n 拒绝(#472)、ConvertTimezone 对齐 Date2Stamp 的 DST 前跳锚定口径(#473)、三函数补本机时区声明(#493)、SpecSchedule 零值 Location 回落 time.Local(#494);container:Queue 压缩分支/Ring.Take 补清零(#474,#475)、Map/Slice 零值声明与实现对齐(#476)、Set.Clone 措辞(#492);strmap 包文档拉链式措辞(#477);config:yaml \u 代理对合并+孤立拒绝(#478)、required 切片 len==0 同裁决(#479)、yaml float 补 OverflowFloat(#480)、parseEnvTag default 吞段显式报错(#488);mathx Unstable 零值声明(#490);slicex ToMap 语义声明+ToMapStrict(#491);procx Windows keep/literal 归一(#489);httpjson 新增 ClearRetryAfter 按尝试作废原语(#496)。feat: 下沉提案七单——auditchain append-only 审计哈希链(#481)、webhook Forwarder 游标外发+RFC5424(#482)、sse 游标回放应答器(#483)、canon 策略面规范形指纹(#484)、webhook IM 载荷构造器(企微/钉钉/飞书)(#485)、licensx Ed25519 license 签发/验签(#486)、tokenx HMAC 签名能力令牌(#487)
关联问题单:pkg#468、pkg#469、pkg#470、pkg#471、pkg#472、pkg#473、pkg#474、pkg#475、pkg#476、pkg#477、pkg#478、pkg#479、pkg#480、pkg#488、pkg#489、pkg#490、pkg#491、pkg#492、pkg#493、pkg#494、pkg#496、pkg#481、pkg#482、pkg#483、pkg#484、pkg#485、pkg#486、pkg#487。
v0.48.0
v0.47.1
Release of oekit/pkg v0.47.1(annotated tag,由 release_train 门禁后打点)。
变更记录
- fix(timex): EndOfMinute/EndOfHour 改「下一周期起点 −1ns」——非整小时 DST 位移时区(Lord Howe/Macquarie 30 分钟回拨)不再与相邻周期重叠(#418)。头注释不变量新增第三条(不重叠),适用域扩至全部 DST 时区。
关联问题单:pkg#418。
v0.47.0
Release of oekit/pkg v0.47.0(annotated tag,由 release_train 门禁后打点)。
变更记录
- 29 单修复批(#383-#408 清单 18 + 批3 九单 + #412/#413):errors.Errorf 兼容恢复(#405/#401,stdlib 缺失语义原样+Deprecated 迁移指引)、resumable/bufiox 溢出双修(#406/#407/#408)、urlguard 写面哨兵(#390)、jsonrepair 导出哨兵(#384)、pack 构造期校验(#389)、timex int64 2038(#388)、mathx 随机源统一 math/rand/v2(#386)、bloomx 热路径零分配(#385)、WrapSchedule 零值哨兵(#383)、singleflighttest 元测试三件套(#394)等。
v0.46.0
Release of oekit/pkg v0.46.0(annotated tag,由 release_train 门禁后打点)。
变更记录
-
- feat(config): 导出 SetFromString/DurationType——「字符串按 reflect.Kind 解析落位」的全矩阵唯一原语(core#129 治本侧:oekit/core/config 的 setScalarFromString 平行实现改引后删除);内部实现零改动、行为零变化
- feat(reflectx): 新增反射原语包——DeepCopyValue/DeepCopy 深拷贝唯一实现(core#102 指针环防护 + core#84 struct 先整块拷贝保未导出字段、可 Set 引用字段逐一递归替换的强语义),core/config 与 pkg/pagination 两份平行实现收敛于此(core#130 治本侧)
- refactor(pagination): deepCopyItem 改走 reflectx.DeepCopy,删除本地 deepCopyValue/deepCopyVisited/structCopyPlan;含未导出字段的 struct 其导出引用字段由共享变深拷贝(快照隔离只紧不松);nil 接口元素不再 panic
v0.45.0
Release of oekit/pkg v0.45.0(annotated tag,由 release_train 门禁后打点)。
变更记录
- 单源收敛十一单 + 双契约单源新增:convert 两套 any→int64/bool 开关收敛 OK 变体单源(#255 式漂移治本,#371)+ AppendStrings 改内建 append(#379);cache 惰性删除块单源 lazyDeleteExpired + Get/GetEx 收敛 getHit 内核(#373)、世代写入路径 putEntryLocked 单源并按职责拆 local_load/local_sweep(#374);cron parseRange normalize 钩子收敛三份范围+步长逻辑、splitStep 唯一步长切分(#375);webhook 构造期校验收敛 mustHMACAlgo/mustSecret(#376);timex ParseFirst 单行委托 ParseFirstInLocation(#377);urlguard 拨号面两处 %w 补链 + 内置拒绝导出哨兵 ErrBlockedRange/ErrBlockedDomain/ErrExoticLiteral + 缺省 Guard 缓存(#380)+ CIDR 清单导出跨仓单源 BlockedCIDRSpecs/IsBlockedIP/ParseCIDRList(core#132 pkg 侧);jsonrepair 终态错误双 %w 保留两路链(#382);errors 新增 panic 收编单源 PanicError/Recovered(error 身份不丢+goroutine 栈+panic 值类型,cache/singleflight 转换点改用,全矩阵 wave 2 消费,#381);pagination 快照深拷贝同步 core#102 指针环防护(core#130 pkg 侧);新增 distlock 后端中立契约包(Locker 接口两仓并集 + 哨兵集以 redisx 文案为基准 + WithLock WithoutCancel 释放纪律,etcdx#123 治本侧,redisx/etcdx 波次消费);Go 地板抬至 1.26.0。BREAKING:删除零引用的 errors.Errorf(#378)——普通错误包装统一 stdlib fmt.Errorf("%w"),本包只留 stdlib 没有的能力(Wrap kv/Recovered/MultiError 等)
关联问题单:pkg#371、pkg#373、pkg#374、pkg#375、pkg#376、pkg#377、pkg#378、pkg#379、pkg#380、pkg#381、pkg#382。
v0.44.0
v0.43.0
Release of oekit/pkg v0.43.0(annotated tag,由 release_train 门禁后打点)。
变更记录
- 五单审计收口:Checker 构造期 fail-fast + 刷新 WithoutCancel 不传染(#356 #352);SingleFlightCache 注入路径不合并、Refresh 分键(#353);Ring 逻辑序归基防 32 位回绕(#354);cache/pack/urlguard 裸 Option 改名 CheckerOption/WriterOption/GuardOption(#355)
关联问题单:pkg#356、pkg#352、pkg#353、pkg#354、pkg#355。
v0.42.0
Release of oekit/pkg v0.42.0(annotated tag,由 release_train 门禁后打点)。
变更记录
-
- fix(httpjson): parseRetryAfter 乘法前判上界——超大 Retry-After 溢出成毫秒级穿透 5 分钟可信闸的口子堵死(#343)
-
- feat(config): 静态配置加载管线——yaml(自研子集 parser,零三方依赖)→env 覆盖→缺省→MultiError 汇总校验 + Redact 路径脱敏 fail-loud(#329)
-
- feat(tarx): 防御式解包三件套——Scan/Write 奇偶同口径、Extract 穿越/设备类拒收、WithManifest sha256 清单+VerifyManifest 指名篡改(#326)
-
- test(stringx): TruncRunes/TruncBytes 永不产出非法 UTF-8 的穷举证据(#327 证据收口——能力自 v0.34.0 已在)
关联问题单:pkg#343、pkg#329、pkg#326、pkg#325、pkg#328、pkg#327。