Version: 2.10.x(Latest) On this page
New Features/Improvements
Refactored and improved glog module:
Removed all locks in the log module, redesigned as lock-free for improved execution performance
Added asynchronous output feature for log content: https://goframe.org/os/glog/async
Added support for Json format in log output content: https://goframe.org/os/glog/json
Added Flags feature support including file line number printing, custom time format, and asynchronous output control: https://goframe.org/os/glog/flags
Added Writer interface support for developers to customize log functionality extensions or integrate with third-party services/modules: https://goframe.org/os/glog/writer
Changed method name SetStdPrint to SetStdoutPrint
Changed chain method name StdPrint to Stdout
Deprecated *fln log output methods, *f methods now support automatic line breaks
Added more chain method supports: https://goframe.org/os/glog/chain
Refactored and improved gmap module:
Added support for more data formats: HashMap/ListMap/TreeMap
Simplified type names, e.g., gmap.StringInterfaceMap simplified to gmap.StrAnyMap
Improved Map/Keys/Values methods for better performance
Renamed BatchSet/BatchRemove to Sets/Removes
Added more functional method supports: https://goframe.org/container/gmap/index
Improved gtime time module:
Added and improved more class PHP time format support
Added more functional methods, such as FormatTo/LayoutTo, etc.
See development documentation: https://goframe.org/os/gtime/index
Improved gdb database module:
Added support for data conversion for inherited structures: https://goframe.org/database/gdb/senior
Added GetLastSql method to get the most recent executed SQL statement in debug mode
Other detailed improvements
Improved gtcp communication module:
Improved gconv type conversion module
Renamed gconv.TimeDuration conversion method to gconv.Duration
Added gconv.StructDeep and gconv.MapDeep methods, supporting recursive conversion
See development documentation: https://goframe.org/util/gconv/struct
Improved ghttp module:
Added http/https field to the log output: https://goframe.org/net/ghttp/logs
Added ghttp.Server.SetKeepAlive setting method to enable/disable KeepAlive feature
Added ghttp.Request.GetUrl method to get the current full URL request address
ghttp.Client client supports the developer's custom Transport attribute, ghttp.Client.Post method supports browser mode: https://goframe.org/net/ghttp/client
Added gtree tree data structure container support: https://goframe.org/container/gtree/index
Improved gudp communication module, please refer to the development documentation for details: https://goframe.org/net/gudp/index
Improved gcfg configuration management module, all Get* methods add default value support: https://goframe.org/os/gcfg/index
gredis module added DoVar/ReceiveVar methods to facilitate developer's flexible data format conversion of execution results: https://goframe.org/database/gredis/index
gcache module BatchSet/BatchRemove method names changed to Sets/Removes
Improved gjson/gparser modules, adding more methods: https://goframe.org/encoding/gjson/index
Improved gfile.MainPkgPath method to support different platform development environments;
Improved grpool coroutine pool module for enhanced execution performance: https://goframe.org/os/grpool/index
Improved TryCatch method, by default suppressing and ignoring errors when Catch parameter is not provided
Improved gmlock module, added TryLockFunc/TryRLockFunc methods, and added TryLockFunc/TryRLockFunc methods for gmlock.Mutex advanced mutex lock object
Removed gvar.VarRead interface type support
Bug Fixes
Resolved conflicts when using gdb module with other third-party ORM modules concurrently;
Fixed detailed logic issues in the gcron.AddOnce method;
Fixed incorrect empty property validation in the internal empty module IsEmpty method;
Fixed concurrency safety issue in gview template engine;
Fixed SESSION initialization expiration time issue in ghttp.Server;