New Features
- Added a concurrency-safe high-performance task timer module
gtimer
, similar to Java'sTimer
, but more powerful. It is implemented with a flexible and efficient hierarchical timing wheel design and can manage millions of scheduled tasks.gtimer
is one of the core modules of theGoFrame
framework, with unit test coverage of93.6%
: https://goframe.org/os/gtimer/index - Refactored the
gcron
scheduled task module using the task timergtimer
, removing reliance on the third-party packagegithub.com/robfig/cron
.gcron
now supports singleton pattern scheduled tasks: https://goframe.org/os/gcron/index#; - The
gconv
type conversion module now supports conversion of pointer properties withinstruct
structures: https://goframe.org/util/gconv/struct; gform
has added a feature to automatically recognize database types, which is very useful when the query results need to be returned injson
format: https://goframe.org/database/orm/indexTravis CI
has added support for automated testing on the386
architecture (currently supports both386
andamd64
);
New Functions
- The
ghttp
module addsExit
,ExitAll
, andExitHook
methods for HTTP request flow control: https://goframe.org/net/ghttp/service/object; - The
grand
module addsMeet/MeetProb
methods for random probability-based judgments and adds alias methodsN/Str/Digits/Letters
; - The
gvalid
data/form validation module adds support for validating16X
and19X
phone numbers;
Function Improvements
gform
sets the default database connection poolCONN_MAX_LIFE
parameter value to30
seconds;- Improved the
glist
module, boosting performance by about20%
and adding several linked list operation methods; - Enhanced the
gqueue
module, increasing performance by about50%
and adding support forselect
syntax with the use ofQueue.C
: https://goframe.org/container/gqueue/index; - Improved the
gmlock
memory lock module and completed unit test cases: https://goframe.org/os/gmlock/index; - Improved all concurrency-safe container modules, changing the non-required parameter
safe...bool
tounsafe...bool
for concurrency safety control; - Enhanced the
gpool
object reuse module to support concurrency safety; - Updated third-party dependencies for the
gkafka
module; - Completed unit test cases for the
ghttp
module;
Bug Fix
- Fixed the issue where the file pointer was not closed when operating on files in the
gmd5
module; - Fixed the issue where expired cache items were not deleted in the
gcache
module; - Other fixes;