New Features

  1. Completed the refactoring of gform to improve scalability, and fixed some detail issues, and improved unit test cases ( https://goframe.org/database/orm/index);
  2. Added group routing feature for WebServer route registration ( https://goframe.org/net/ghttp/group);
  3. Added Rewrite routing feature to WebServer ( https://goframe.org/net/ghttp/static);
  4. Added automatic recognition of the development environment at runtime;
  5. Added Travis CI for automated building/testing;

New Functions

  1. Improved WebServer static file service functionality, added SetStaticPath/AddStaticPath methods ( https://goframe.org/net/ghttp/static);
  2. Added Filter chaining method to gform for filtering non-table field key-value pairs in parameters ( https://goframe.org/database/orm/linkop);
  3. Added Data method to gcache for obtaining all cache data items;
  4. Added GetConn method to gredis for obtaining native Redis connection objects;

Function Improvements

  1. Improved the Where method of gform to support slice type parameters and more conveniently support in operation queries ( https://goframe.org/database/orm/linkop);
  2. Improved gproc inter-process communication data structure, expanded pid field from 16bit to 24bit;
  3. Improved gconv/gmap/garray, added several operation methods;
  4. Improved the date built-in function in the gview template engine, printing the current system time when the given timestamp is empty;
  5. Improved the gview template engine to display empty when the printed variable does not exist (default standard library shows <no value>);
  6. Improved WebServer by removing HANGUP signal monitoring to avoid abnormal exit issues when running through nohup;
  7. Enhanced gcache performance and improved benchmark tests;

Bug Fixes

  1. Fixed cache resource contention issue when gcache is closed with non-LRU features, and fixed return value issue of doSetWithLockCheck internal method;
  2. Fixed random number bit overflow issue in grand.intn internal method on the x86 architecture;
  3. Fixed byte length overflow issue caused by automatic matching of Int method in gbinary targeting []byte parameter length;
  4. Fixed Go variable encoding issue in gjson due to official standard library json not supporting map[interface{}]* types;
  5. Fixed data race issue in some methods of garray, and fixed binary search sorting issue;
  6. Fixed parameter retrieval issue in ghttp.Request.GetVar method;
  7. Resolved gform database connection pool not working problem;