版本:2.7.x(Latest)新特性
- 新增gdes包,用于DES加密/加密算法处理;
- 新增gkafka包,kafka的golang客户端;
- 新增gpool对象复用池,比较于标准库的sync.Pool更加灵活强大,可自定义对象的缓存时间、创建方法、销毁方法( http://gf.johng.cn/686654))
- 完成网络通信gtcp/gudp包的重构,并进行了大量的改进工作,新增了详尽的开发文档及示例代码( http://gf.johng.cn/494382))
- 增加gring并发安全环,标准库container/ring包的并发安全版本,并做了易用性的封装( http://gf.johng.cn/686655))
- gtime包新增了自定义日期格式话的支持,格式化语法类似PHP的date语法( http://gf.johng.cn/494387))
- gdb增加调试模式特性,使用SetDebug方法实现,在调试模式下可以获取详细的SQL执行记录,增加了详细的开发文档及示例代码( http://gf.johng.cn/702801))
- gdb增加查询缓存特性,使用Cache方法实现,增加了详细的开发文档及示例代码( http://gf.johng.cn/702801))
- ghttp.Server路由功能增加字段匹配规则特性,支持如:
/order/list/{page}.html
动态路 由规则特性( http://gf.johng.cn/702766))
- gpage分页包增加分页URL规则生成模板特性,内部可使用
{.page}
变量指定页码位置( http://gf.johng.cn/716438))
- 增加gmap.Map对象,这是gmap.InterfaceInterfaceMap的别名;
新功能
- gdb增加MaxIdleConnCount/MaxOpenConnCount/MaxConnLifetime三项配置,并增加SetMaxConnLifetime方法;
- ghttp.Client增加HTTP账号密码设置功能(SetBasicAuth);
- glog新增对系统换行符号的自适配调整(\n|\r\n);
- 增加glog控制台调试模式打印开关(SetDebug);
- gcfg增加SetFileName方法设置默认读取的配置文件名称;
- gcfg/gjson/gparser包新增Int8/16/32/64,Uint8/16/32/64方法;
- 增加gzip方法的封装(Zip/Unzip);
- gview增加模板变量分隔符设置方法SetDelimiters;
- ghttp.Response增加Writef、Writefln方法;
功能改进
- 改进gfilepool文件指针池设计;改进gfile文本内容写入,增加指针池使用
- gdb包增加调试模式特性,并支持在调试模式下获得已执行的SQL列表结果
- 改进gproc进程间通信机制,增加进程消息分组特性,并限定队列大小
- gdb结果方法处理增加ToXml/ToJson方法
- gregx包名修改为gregex
- 改进gtime.StrToTime方法,新增对常见标准时间日期的自动转换,以及对时区的自动识别支持, 并调整gconv,gvalid对该包的引用
- 增加对字符集转换的封装,gxml包中使用新增的字符集转换包来做处理
- ghttp.Server.EnableAdmin页面Restart接口支持GET参数newExeFilePath支持
- ghttp.Server平滑重启机制增加可自定义重启可执行文件路径,特别是针对windows系统特别有用(因为windows下不支持可执行文件覆盖更新)
- 改进ghttp.Server静态文件检索设计,增加开发环境时的main包源码目录查找机制;改进gcfg/gview的main包源码目录查找机制
- 优化gcache设计,LRU特性非默认开启;优化gtype/gcache基准测试脚本;新增gregx基准测试脚本,改进设计,提升性能
- gfile包增加GoRootOfBuild方法,用于获取编译时的GOROOT数值;并改进glog包中backtrace的GOROOT路径过滤处理;
- 改进grpool代码质量,并改进对池化goroutine数量的限制设计
- 改进gdb.Map/List及g.Map/List的类型定义,改用别名特性以便支持原生类型输入(map/slice),并修复gdb.Model.Update方法参数处理问题
- 调整ghttp包示例代码目录结构,增加ghttp.Client自定义Header方法,ghttp.Cookie增加Map方法用于获得客户端提交的所有cookie值,构造成map返回
- 删除gcharset中的getcharset方法
- 去掉gmap中常用的基本数据类型转换获取方法
- 改进gconv.String方法,当无法使用基本类型进行字符串转换时,使用json.Marshal进行转换
- gvalid.CheckObject方法名称修改为gvalid.CheckStruct
问题修复
- 修正gstr.IsNumeric错误
- 修复当xml中encoding字符集为非UTF-8字符集时报错的问题
- 修正gconv包float32->float64精度问题
- 修复gpage包分页计数问题
- 修复gdb批量数据Save错误
- 去掉gpool中math.MAXINT64常量的使用,以修复int64到int类型的转换错误,兼容32位系统
- 修正ghttp包没有使用Server仍然初始化相关异步goroutine的问题