GoFrame v1.10.0 release, Go application development framework

v1.10.0

You gferwait too long, compared with the previous Published in the past has been more than two months, this time GFalso constantly iterative improvement, more details of the proposed ballpark, the following is release log.

In addition, GoFramealso participated in the 2019 China's most popular open source software selection vote, tomorrow is over, welcome to GFvote ah: https://www.oschina.net/project/top_cn_2019  page can vote, micro-channel can also vote .

New features

  1. Web ServerNew features:
  2. SessionIncrease the variety of built-in Storageimplementation:
  3. Increasing log component singleton object, configuration management and optimization:
  4. Commonly used containercontainers increased JSONdata format Marshal/ UnMarshalinterface:
  5. New guuidmodules for general UUIDgeneration: https://goframe.org/util/guuid/index

Improvements

net

  1. ghttp
    • Improved processing performance request process;
    • ServerIncreased Loggerconfiguration log object;
    • ServerOpen a GetRouterMapmethod for obtaining a list of current service routing information so that developers can more easily achieve custom permissions management;
    • ServerConfiguration management optimization;
    • ClientClient object a lot of improvements;
    • ClientClient object to increase multi-file upload function;
    • RequestObject addition GetErrormethod, the current process for obtaining an error;
    • RequestAdd a separate view objects and view objects variable binding function, such that each request may independently manage the view, the view may be switched by the object request object middleware. By default, the function is turned off, is used when the view resolution Serverview of the subject object;
    • Alterations Responseobject CORSfunction;
    • Increase Response.WriteTplDefaultmethod for parsing and return to the default template content;
    • Means adding more test cases;
    • Other improvements;
  2. gipv4/gipv6
    • Some improvements;
  3. gtcp/gudp
    • Some improvements;

database

  1. gdb
    • A lot of detail improvements;
    • Removing the query data is null sql.ErrNoRowserror return, reservation Struct/ Structs/ ScanThe method of operation of the error data returned is empty;
    • When debug mode is turned on, SQL output statements is complete with improved parameters of SQL, for reference only;
    • WhereA method for increasing the gmapdata type support, comprising the sequential ListMap/ TreeMapand the like;
    • Query caching method Cacheof cache time parameter type is changed to time.Duration;
    • Modify Record/ Resultdata type name conversion method, conversion method is marked as old deprecated;
    • Record/ ResultResults Type increasing IsEmptymethod for determining whether the result set is empty;
    • RecordIncreasing type GMapmethods, is converted to a query record gmaptype;
    • Increase Option/ OptionOmitEmptymethod for filtering the input parameters, including Dataparameters and Whereparameters: https://goframe.org/database/gdb/empty
    • Add Field Remedy FieldsEx: https://goframe.org/database/gdb/senior
    • Increase logging feature: https://goframe.org/database/gdb/senior
    • Improved configuration management database: https://goframe.org/database/gdb/config
    • Increase the number of unit testing;
  2. gredis

os

  1. gcache
    • Note: the parameter from the cache valid time interface{}adjustment type to time.Durationtype, and therefore is no longer compatible with previous intparameter type, in order to guarantee better performance;
  2. gfcache
    • Since the gcachecache time change component type parameter, a time parameter of the assembly thus be changed to time.Durationtype;
  3. gcfg
    • Increasing Availablemethod for determining configuration is valid;
  4. gfile
    • Increasing Chdirmethod for working directory;
  5. gtime
    • Increasing the JSONdata format Marshal/ UnMarshalinterface;

container

  1. gmap
    • Increasing MapStrAnymethod for a common maptype of conversion;
    • Increasing MapCopymethod for the underlying mapdata replication;
    • Increasing FilterEmptymethod for mapa null filter;
    • Increase Pop/ Popsmethod for random return mapdata items (and remove);
    • Increasing Replacemethod, for a given mapdata covering the underlying mapitems;
    • Improve unit testing;
    • Other improvements;
  2. garray
    • Increasing the Interfacesconversion method, return []interface{}type;
    • To increase the sorted array SetComparatormethod custom modifications comparator;
    • Improve unit testing;
    • Other improvements;
  3. glist
    • Increase NewFrommethod, based on the given []interface{}creation chain variable;
    • Increasing Joinmethod for the linked list item given string is a string return connection;
    • Improve unit testing;
    • Other improvements;
  4. gset
    • Increase AddIfNotExistFunc/ AddIfNotExistFuncLockmethods;
    • Improve unit testing;
    • Other improvements;
  5. gtree
    • Increasing Replacemethod for updating an existing tree data items;
    • Other improvements;
  6. gtype
    • Some details of the improvements, not an exhaustive list;
    • Perfect benchmark testing, unit testing;
  7. gvar
    • Increase Ints/ Uintstype conversion;
    • Other improvements;

crypto

  1. gmd5
    • Small detail improvements;
  2. gsha1
    • Small detail improvements;

text

  1. gstr
    • Improved SplitAndTrimmethods, the SplitAndTrimSpacemark deprecated;
    • Increase TrimStrmethod;
    • Improve unit testing;
    • Other improvements;

debug

  1. gdebug
    • Increase CallerFileLineShort/ FuncPath/ FuncNamemethod;
    • Other improvements;

encoding

  1. gbase64
    • Increase EncodeToString/ EncodeFile/ EncodeFileToString/ DecodeToStringmethod;
    • Improve unit testing;
  2. gjson
    • Improve unit testing;

frame

  1. g/gins

util

  1. gconv
    • Improved performance optimization type conversion portion;
    • Increase Uints/ SliceUinttype conversion;
    • Increase UnsafeStrToBytes/ UnsafeBytesToStrperformance type conversion;
    • Increased MapStrAnysupport for interface method for a common maptype of conversion;
    • Other improvements;
  2. gvalid
    • Check function to improve the recognition of Chinese identity card number;
    • Increase the luhncheck function bank card number;
  3. grand
    • Some performance improvements;

Bug Fix

  1. Resolved WebSocketwhen closing hijackederror issues: https://github.com/gogf/gf/issues/381
  2. Memory footprint to address the problem of large file static file serving;
  3. Repair front Nginxafter case of default Cookiedomain setup issues;
  4. Repair gconv.Structthe property is []structconverted to a space-time properties of the input parameters and failures: https://github.com/gogf/gf/issues/405
  5. Some other fixes;

 

 

GF(Go Frame)It is a modular, high-performance, production-level Go application development framework. It provides a common core development components, such as: cache, log, file, time, queues, arrays, collections, strings, timer, command line, file lock, lock memory, object pooling, connection pooling, resource management, data correction inspection, data encoding, file monitoring, regular tasks, database ORM, TCP / UDP component, process management / communication, concurrency-safe container and so on. And provides a series of Web services development of core components, such as: Router, Cookie, Session, Middleware, service registration, configuration management, template engine, etc., supports a warm restart, hot update, multi-domain, multi-port, multi-service, HTTPS, Rewrite and other characteristics.

Feature

  • The modular, loosely coupled design;
  • Module rich, out of the box;
  • Detailed development documentation and examples;
  • Improve the local cultural support;
  • We are committed to the general scheme of the project;
  • More suitable for corporate and team use;
  • Please consult the documentation and source code;

installation

go get -u -v github.com/gogf/gf

Recommended use  go.mod:

require github.com/gogf/gf latest

limit

golang version> = 1.10

Architecture

File

Development documents: https://goframe.org

Interface Documentation: https://godoc.org/github.com/gogf/gf

use

package main

import (
    "github.com/gogf/gf/frame/g"
    "github.com/gogf/gf/net/ghttp"
)

func main() {
    s := g.Server()
    s.BindHandler("/", func(r *ghttp.Request) {
        r.Response.Write("Hello World")
    })
    s.Run()
}

更多..

协议

GF 使用非常友好的 MIT 开源协议进行发布,永久100%开源免费。

 

 

 

 

 

 

Guess you like

Origin www.oschina.net/news/111866/goframe-1-10-0-released