GoFrame v2.5 版本发布,企业级 Golang 开发框架
大家好啊,GoFrame
框架今天发布了 v2.5.0
正式版本啦!👏👏👏👏
本次版本主要是对已有功能组件以及开发工具上的改进工作。其中,开发工具新增了 gf gen ctrl
命令,以规范化定义、开发 API 接口,增加控制器、SDK 的代码生成提高开发效率,以解决 Golang
工程开发中接口层面的规范和效率问题,详情请参考:接口规范 - gen ctrl。其他变更内容请参考以下 change log
。Enjoy!
🍺🍺🍺🍺🍺🍺🍺🍺
Github ChangeLog
:github.com/gogf/gf/rel…
完整代码变更: v2.4.0...v2.5.0,感谢本次所有的贡献开发者:
功能改进
gdb
gi18n
gclient
ghttp
goai
gsel
glog
gtag
gutil
gvalid
社区组件
contrib/registry/polaris
组件在多个服务端时的负载均衡问题。contrib/drivers/pgsql
在 TableFields
返回的 Index
字段序号统一从
开始。contrib/nosql/redis
新增用户配置项支持。contrib/rpc/grpcx
组件,grpcx.Server
新增 Endpoints
配置项支持,用于自定义服务注册发现的地址。contrib/sdk/httpclient
组件,用于本次版本新增的 gf gen ctrl
命令生成的 HTTP SDK
代码文件依赖库。contrib/trace/otlpgrpc
及 contrib/trace/otlphttp
组件,用以实现基于 OpenTelemetry
的链路跟踪统一对接组件。开发工具
新增 gf gen ctrl
命令,用于编译 api
定义目录,自动生成规范的 controller
、HTTP SDK
代码:接口规范 - gen ctrl
改进 gf gen dao
命令,新增 TypeMapping
特性,开发者可自定义数据表字段类型与生成的 Go
实体数据结构属性类型映射,并且可以方便引入第三方包类型(如 decimal
包以支持高精度类型):数据规范 - gen dao
改进 gf gen enums
命令,其中的 Prefix
参数改为 Prefixes
,以支持多个生成枚举类型的包前缀指定:枚举维护 - gen enums
改进 gf gen service
命令:
- 生成的
service
文件中,增加方法注释生成。 - 当生成的
service
文件中存在import
冲突时,自动生成import alias
。
改进命令行封装,暴露 gfcmd.Command
类型,便于开发者可以继承扩展自定义命令行功能。
改进 gf docker
命令,将构建文件参数设置为非必须(考虑兼容),未来将会只用于 Docker
构建,不再耦合二进制构建功能。如果有完整构建需求,建议未来结合 gf build
功能共同使用。并更新项目工程模板的 make image
命令,使用 gf build+gf docker
命令实现。
改进 gf init
命令,修复在部分场景下初始化项目覆盖已存在的.git/.gitignore
目录及文件问题或权限报错问题。
改进 gf up
命令,修复在部分场景下的框架版本更新问题,以及在 windows
系统下的下载安装问题。
改进 gf version
命令,修复在部分场景下的框架版本识别问题。
修复 gf gen pbentity
命令,生成的 proto
文件实体数据结构的 float32/float64/[]byte
类型修改为 float/double/bytes
类型。
改进开发工具,部分命令可以不用显示配置 importPrefix
参数,如:gf gen dao/service