Skip to content

v1.0.4

Choose a tag to compare

@EthanCodeCraft EthanCodeCraft released this 22 Jun 15:35

v1.0.4 — DX & Docs Release

定位:开发体验与文档改进,无破坏性 API 变更。对应体检报告 #25/#27/#28/#29/#30。

完整变更说明见 CHANGELOG.md


✨ Added

CLI 多模板(#28)

xlgo new 新增 --template 参数,支持三种脚手架模板:

xlgo new myapp --template minimal     # 轻量 HTTP,无 MySQL/Redis 依赖
xlgo new myapp --template api         # 标准业务 API,含分层目录(默认)
xlgo new myapp --template fullstack   # 全组件,NewFullStack 一键启用
模板 说明 适用场景
minimal 仅 logger + health + 示例路由,目录最小化 第一次接触 xlgo、纯 HTTP 服务
api handler/model/repository/service 分层 + MySQL/Redis/JWT 配置 标准业务 API(默认)
fullstack NewFullStack 全组件 + Swagger + Storage 全功能应用

examples/ 目录(#29)

新增两个可运行示例,帮助快速上手:

  • examples/minimal/ — 50 行可跑,不依赖外部服务
    go run ./examples/minimal
  • examples/full/ — MySQL + Redis + JWT + user CRUD 完整示例(登录发 token、认证路由、创建/查询用户)
  • examples/README.md — 运行说明与接口文档

docs/ 文档结构(#30)

  • 新增 docs/ 目录,docs/plans/ 归档历史规划与体检报告
  • 新增 docs/README.md 文档索引
  • 归档:Version_Update_Plan_v1.0.2.mdVersion_v1.0.2_report.md、早期 report.md(→ v2.0-review.md
  • CHANGELOG.md / GUIDE.md 按惯例保留在仓库根目录

🔄 Changed

模块路径文档改进(#25)

经评估保留 xlgo-core 模块路径——-core 后缀反映这是 xlgo 多产品系列(xlgo-core / xlgo-orm / xlgo-ai ...)的核心产品,不去掉。模块路径(github.com/EthanCodeCraft/xlgo-core)与包名(xlgo)不同是 Go 惯例(cf. github.com/gin-gonic/gin → 包名 gin)。

改进文档说明,消除新用户 go mod tidy 撞墙的困惑:

  • README 快速开始新增「模块路径与包名」小节,给出完整 import 示例:
    import xlgo "github.com/EthanCodeCraft/xlgo-core"
  • CLAUDE.md Import Path Note 措辞明确化,说明 module path / package name / -core 语义

Without* Option 定位文档化(#27)

经调研 Without* 系列 Option 有真实用例(测试覆盖「先开再关」语义 + NewFullStack 后排除单项),不删除、不标 Deprecated,改为文档化其定位:

  • app.go WithoutLogger 注释说明:Without* 主要用于 NewFullStack / RunFullStack 启用全部组件后排除个别项
  • README 用法示例:xlgo.NewFullStack(xlgo.WithoutSwaggerRoutes()) 全组件但关 Swagger

升级说明

v1.0.4 无破坏性变更,从 v1.0.3 升级只需:

go get github.com/EthanCodeCraft/xlgo-core@v1.0.4
go mod tidy

Full Changelog: v1.0.3...v1.0.4