- V 1.5.52 2022-07-09(最新版本)
- V 1.5.51 2022-06-19
- V 1.5.50 2022-06-09
- V 1.5.49 2022-05-04
- V 1.5.48 2022-04-29
- V 1.5.47 2022-04-18
- V 1.5.46 2022-03-31
- V 1.5.45 2022-03-22
- V 1.5.44 2022-02-27
- V 1.5.42 2022-02-10
- V 1.5.40 2022-01-25
- V 1.5.32 2021-12-29
- V 1.5.31 2021-12-20
- V 1.5.30 2021-11-28
- V 1.5.29 2021-11-15
- V 1.5.28 2021-10-07
- V 1.5.27 2021-09-18
- V 1.5.26 2021-09-13
- V 1.5.25 2021-09-13
- V 1.5.24 2021-09-03
- V 1.5.23 2021-08-06
- V 1.5.22 2021-08-04
- V 1.5.21 2021-07-16
- V 1.5.20 2021-06-18
- V 1.5.17 2021-06-06
- V 1.5.16 2021-05-28
- V 1.5.15 2021-05-11
- V 1.5.14 2021-04-28
- V 1.5.13 2021-04-27
- V 1.5.12 2021-04-20
- V 1.5.11 2021-04-02
- V 1.5.10 2021-03-23
- V 1.5.00 2021-03-10
V 1.5.52 2022-07-09(最新版本)
bug修复:
- 1.修复rabbitmq消费者端在linux系统会导致cpu单个核100%占用的情况。
- 2.老版本修复方式,使用
app/utils/rabbitmq
目录全量覆盖老版本同目录即可.
V 1.5.51 2022-06-19
- 1.修正全局
Golobal
单词拼写错误. 2.需要特别注意的是:
config/gorm_v2.yml
文件中,单词IsInitGolobalGormMysql
修正为:IsInitGlobalGormMysql
, 因此使用新版本编译后的软件,如果有旧的配置文件,必须及时更新.V 1.5.50 2022-06-09
1.token相关的所有错误码统一为401.
- 2.增加从上下文获取user_id的快捷函数,方便token鉴权下接口使用.
- 3.全新的 GinSkeleton-Admin2 发布.
V 1.5.49 2022-05-04
- 更新
- 1.更新全部依赖包至最新版本。
V 1.5.48 2022-04-29
- BUG 修复
- 1.修复验证码存在的线程安全问题(只有在并发场景才有此bug)。
V 1.5.47 2022-04-18
- 细节完善
- 1.gorm hook完善细节:在开发者通过 gorm:”column:自定义字段” 时,也能自动给created_at和updated_at函数赋值。
- 2.精简部分代码.
-
V 1.5.46 2022-03-31
细节完善
- 1.rabbitmq 消息队列客户端掉线重连成功后,含有回调函数的旧协程及时释放.
- 2.rabbitmq 消息队列相关的单元测试更新.
V 1.5.45 2022-03-22
- 细节完善
- 1.gorm 相关的回调函数增强条件判断, 加强程序严谨性。
- 2.自带数据库文件更新, 给字段设置了默认值.
V 1.5.44 2022-02-27
- 更新
- 1.
token
缓存到redis
逻辑加强严谨性. - 2.与第一条相关的
postgresql
、sqlserver
备份文件更新.
V 1.5.42 2022-02-10
- bug修复 : 受影响版本 ≥ V 1.5.40 .
- 1.数据库连接没有及时释放的bug, 在高并发场景下容易导致系统卡住.
2.增量更新方式:
app/model/user.go 145行 函数 OauthCheckTokenIsOk 整体替换原有函数
V 1.5.40 2022-01-25
新增
- 1.用户
token
缓存到redis
功能,如果项目使用了redis
, 请直接在 config/config.yml 文件中设置Token.IsCacheToRedis = 1
- 2.项目初始化时增加设置信任代理服务器ip列表,gin(v1.7.7)新增功能,详情参见相关配置项说明.
- 更新
- 1.配置文件缓存时加锁,避免开发者频繁注册时,程序出现提示。
- 2.用户token鉴权时,如果开启了redis缓存功能,优先查询redis.
- 3.users_for_postgresql 、users_for_sqlserver 文件同步更新 .
- 4.所有底层依赖包更新至最新版.
V 1.5.32 2021-12-29
- 更新
- 1.gorm 查询时,调整 created_at、updated_at 字段默认格式为
yyyy-mm-dd H:i:s (2021-12-29 11:20:00)
格式,不再需要手动转换,通俗地说,这两个字段在数据存储为datetime
,在 go 定义为 string 类型,查询后不需要任何转换。 - 2.gorm 批量新增时支持自动给切片的中的created_at、updated_at字段赋值。
V 1.5.31 2021-12-20
更新
1.错误日志记录时同时记录调用链信息。
2.rabbitmq
消息队列增加消息延迟发送功能.
3.关于rabbitmq
消息延迟使用请参考新版在线文档.
4.老版本最快升级方式:
4.1app/utils/rabbitmq
目录内的内容全部替换原有项目.
4.2 消息发送函数send
多一个延迟参数.
4.3 配置文件:config/config.yml
文件RabbitMq
项新增延迟交换机名称:DelayedExchangeName
V 1.5.30 2021-11-28
新增
1.引入表单参数验证器全局自动翻译器,简化代码书写,提升开发效率.- 更新
1.按照gin官方提示,当程序切换到生产模式时,对gin的路由进行二次封装、异常恢复中间件自定义重写,release模式经过并发测试可以获得5%的性能提升.
1.1 当配置文件(config/config.yml)中的键AppDebug
设置为false
时,gin 路由默认启用release
模式,并且不会记录接口访问日志,生产环境请使用nginx
代理,也方便实现负载均衡.
2.其他更新主要是一些细节:文档、程序注释方面.
V 1.5.29 2021-11-15
- 新增
1.多源数据库操作文档.
2.在cli
模式执行操作数据库命令时支持created_at
和updated_at
字段自动赋值.
3.gorm v2
接入层utils
增加Create
函数的参数类型非指针时拦截检查逻辑, 避免发生panic
,该函数官方没有针对数据类型做安全检查.
4.gorm v2
接入层utils
增加Save、Update
函数的参数类型非指针时拦截检查逻辑,以便支持gorm
的所有回调函数.
5.为了完美支持第4条功能,今后开发者使用gorm
函数Create 、Save、Update
时请统一传递指针类型的参数, 如果老项目直接合并ginskeleton
的代码, 原来调用Save、Update
函数的参数需要手动修改为指针类型. - 更新
1.验证码控制器文件单词拼写错误修正.
2.路由中的一些注释更新.
3.所有依赖包更新至最新版,与gorm
包相关的接入层(utils)日志部分也同步更新.
V 1.5.28 2021-10-07
- 更新
1.文档更新,增加复杂表单参数提交的处理示例文档,文档其他完善更新.
2.解决项目在linux
环境启动时,如果public
目录内有从windows
环境复制过来的软连接无法删除的问题.
3.token
刷新路由与其他路由逻辑分离. - 漏洞修复:
1.≤ V1.5.24
包括此版本token
认证中间件存在被恶意构造特殊token
绕过的风险,请尽快升级到最新版.
1.1 升级方法:使用最新的app/http/middleware/authorization/auth.go
替换V1.5.24
以及之前的版本同位置代码即可.
V 1.5.27 2021-09-18
- 更新
1.app/model/users.go
中,操作数据库的函数参数,个别使用了float64
,全部统一为int
系列,避免给开发者带来不必要的困扰.
V 1.5.26 2021-09-13
- 更新
1.精简合并代码.
V 1.5.25 2021-09-13
- 新增
1.cli命令模式增加简单示例,方便新用户快速上手,相关位置:./command/demo_simple/. - 更新
1.过期token刷新逻辑增加延期时间范围,方便已经处于过期时间范围内的token刷新换取新token.
2.交叉编译部分完善常用编译参数说明.
V 1.5.24 2021-09-03
- 修复
1.图形验证码逻辑:如果没有使用本系统封装的验证码中间件,而是直接调用了自定义验证逻辑部分代码,则一直提示没有获取验证码信息. - 更新
1.编译部分,增加编译时参数的选项说明.
2.websocket 完善文档使用说明.
3.在安装有360软件的机器上本项目启动失败,增加提示原因.
V 1.5.23 2021-08-06
- 修复
1.postgresql文件app/model/users_for_postgres.txt
中一处bug,登陆后,登陆次数+1时sql语句报错. - 更新
1.为http://github.com/casbin/gorm-adapter
依赖包提交pr,由于官方已经合并,此包更新至最新版,解决postgresql创建索引报错的bug.
V 1.5.22 2021-08-04
- 新增
1.项目部署方案.
2.mysql主从同步快速部署方案.
3.新增redis执行结果常用转换函数.
4.新增postgresql数据库demo,至此,主线版本已经全面支持 mysql、sqlserver、postgresql数据库. - 更新
1.项目依赖的所有包更新至最新版.
2.项目使用文档.
V 1.5.21 2021-07-16
- 更新
1.项目依赖的所有包更新至最新版.
2.项目日志对接到 elk 日志管理中心,增加docker-compose.yml
集成环境快速部署脚本,详情参见常用开发模块第 13 项.
3.增加项目部署文档.
V 1.5.20 2021-06-18
- 更新
1.表单参数验证器示例代码更新,提供了更加紧凑的书写示例代码,相关示例文档同步更新.
2.一个用户同时允许最大在线的token, 查询时优先按照 expires_at 倒序排列,便于不同系统间对接时,那种长久有效的token不会被”踢”下线.
3.command 命令示例 demo 调整为按照子目录创建 cli 命令,方便更清晰地组织更多的 command 命令代码.
4.nginx 部署文档优化,在nginx处理请求时,相关的静态资源直接由nginx拦截响应,提升响应速度,这样 go 程序将更专注于处于api接口请求.
5.自带的 mysql 数据库创建脚本字段 last_login_ip , 设置默认值为 ‘’ .
V 1.5.17 2021-06-06
- 新增、更新
1.sqlserver 数据库对应的用户模型,参见 app/model/users_for_sqlserver.txt.
2.更新 database/db_demo_sqlserver.sql 数据库、表创建命令.
修复
1.修正常量定义处日期格式单词书写错误问题.
V 1.5.16 2021-05-28
- 新增
1.增加验证码中间件以及使用介绍.
V 1.5.15 2021-05-11
- 完善
1.文件上传后自动创建目录时,目录权限由(0666)调整为:os.ModePerm,解决可能遇到的权限问题 .
2.cobra 文档增加创建子命令的示例链接.
V 1.5.14 2021-04-28
- 完善
1.更新 rabbitMq 排版
2.更新 websocket 文档
V 1.5.13 2021-04-27
- 完善
1.表单参数验证器注册文件拆分为:api、web,当项目较大时,尽可能保持逻辑清晰、简洁.
3.完善细节,避免mysql 函数 FROM_UNIXTIME 参数最大只能支持21亿的局限.
3.核心依赖包升级至最新版.
V 1.5.12 2021-04-20
- 完善
1.app/model/users 增加注释,主要是主线版本操作数据库大量使用了原生sql,注释主要增加了 gorm_v2 自带语法操作数据库的链接地址.
2.代码中涉及到的分页语法(limit offset,limit),参数 offset,limit 统一调整为 int 型,解决mysql8.x系列高版本的数据库不支持浮点型的问题.
V 1.5.11 2021-04-02
- 变更
1.app/model/BaseModel 文件中,UseDbConn 函数名首字符调整为大写,方便创建更多的子级目录. - 更新
1.日志(nginx 的access.log)对接到 ELK 日志管理中心,相关文档更新,增加了ip转 经纬度功能,方便展示用户在世界地图的分布.
2.针对上一条,补充了日志展示的整体效果图
V 1.5.10 2021-03-23
- 完善
1.form表单参数验证器完成验证后, 自动为上下文绑定三个键:created_at、updated_at、deleted_at ,相关值均为请求时的日期时间.
2.baseModel 中 created_at、updated_at 修改为 string 类型,方便从上下文自动绑定对应的键值到 model .
3.用户每次登录后,tb_users 表,登陆次数字段+1 .
4.nginx 部署文档修正一处缺少单引号的错误.
5.gorm 操作数据库精华版文档更新.
6.删除其他小部分无关代码.
7.增加自动创建连接功能,只为更好地处理静态资源.
8.文件上传代码配置项增加部分参数,代码同步升级.
9.GinSkeleton-Admin 系统同步发布.
V 1.5.00 2021-03-10
- 新增
1.为即将发布的 GinSkeleton-Admin 系统增加了基础支撑模块:casbin模块、gorm_v2 操作精华版文档,参见常用开发模块列表.
2.token模块引用的部分常量值调整到配置文件.
3.调整token校验中间件和casbin中间件名称.
4.主线版本本次更新并不是很多,今后主线版本将依然保持简洁,后续的新功能模块都将以包的形式引入和调用.
5.更多企业级的功能将在后续推出的 GinSkeleton-Admin 展现,欢迎关注本项目,反馈使用意见.