From 08d2a9f2a31d27ddcf0e37d12da938bb7a4afb19 Mon Sep 17 00:00:00 2001 From: AI Engineer Date: Sun, 21 Jun 2026 10:13:28 +0800 Subject: [PATCH] =?UTF-8?q?feat(id):=20=E5=85=B7=E5=90=8D=E5=8C=96=20JS=20?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=E5=B9=B6=E5=8A=A8=E6=80=81=E5=8C=85=E8=A3=B9?= =?UTF-8?q?=E9=94=99=E8=AF=AF=EF=BC=88by=20AI=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 5 +++++ go.mod | 8 ++++---- js_export.go | 32 +++++++++++++++++--------------- 3 files changed, 26 insertions(+), 19 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8f88311..9aa0ce6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # Changelog: @go/id +## v1.5.4 (2026-06-21) +- **重构与错误堆栈支持**: + - 重构 `js_export.go`,将 `Make` 匿名包装闭包改为包级具名函数 `jsMake`。 + - 升级 `encoding` 依赖至 v1.5.4,`jsmod` 依赖至 v1.5.3,`rand` 依赖至 v1.5.3,`cast` 依赖至 v1.5.3。 + ## v1.5.3 (2026-06-11) - **版本对齐**: 基础设施全局对齐 v1.5.3。 diff --git a/go.mod b/go.mod index 0cbea85..18daa58 100644 --- a/go.mod +++ b/go.mod @@ -3,9 +3,9 @@ module apigo.cc/go/id go 1.25.0 require ( - apigo.cc/go/encoding v1.5.3 - apigo.cc/go/jsmod v1.5.2 - apigo.cc/go/rand v1.5.2 + apigo.cc/go/encoding v1.5.4 + apigo.cc/go/jsmod v1.5.3 + apigo.cc/go/rand v1.5.3 ) -require apigo.cc/go/cast v1.5.2 +require apigo.cc/go/cast v1.5.3 diff --git a/js_export.go b/js_export.go index 48f999c..aecac4f 100644 --- a/js_export.go +++ b/js_export.go @@ -8,20 +8,22 @@ import ( func init() { jsmod.Register("id", map[string]any{ - "Make": func(size int, forDB *string) string { - dbType := "" - if forDB != nil { - dbType = strings.ToLower(*forDB) - } - - switch dbType { - case "mysql": - return DefaultIDMaker.GetForMysql(size) - case "postgres", "pg", "pgsql": - return DefaultIDMaker.GetForPostgreSQL(size) - default: - return DefaultIDMaker.Get(size) - } - }, + "Make": jsMake, }) } + +func jsMake(size int, forDB *string) string { + dbType := "" + if forDB != nil { + dbType = strings.ToLower(*forDB) + } + + switch dbType { + case "mysql": + return DefaultIDMaker.GetForMysql(size) + case "postgres", "pg", "pgsql": + return DefaultIDMaker.GetForPostgreSQL(size) + default: + return DefaultIDMaker.Get(size) + } +}