Releases: beego/beego
Releases · beego/beego
Release v2.0.1
When we release v2.0.0, something wrong and then we re-release v2.0.0.
But the checksum in sum.golang.cn is immutable, so we release this version
Release v2.0.0
Refactor
- Support the new project structure. We split the whole framework into four parts:
1.1 server: including web module.
1.2 client: including ORM, cache, httplib modules.
1.3 task: supporting timed tasks and other cyclic tasks.
1.4 core: including validation, config, logs and admin modules. - Add
adapter
module which is used to reduce the effort of upgrading Beego from v1.x to v2.x - Add
context.Context
forcache
,httplib
,session
,task
,ORM
modules' API. - Add
error
as a return value forcache
,httplib
,session
,task
. Now users are able to know more info about what happen inside Beego. - Decouple modules from each other. All modules only depend on
core
package. - Support tracing, metrics in ORM, web, httplib modules.
- Introduce
filter-chain
patter to support AOP.
Feature:
- Allow Healthcheck endpoint return JSON for Kubernetes. 4055
- Support
ClientAuth
for TLS. 4116 orm.RawSeter
supportsorm.Fielder
. 4191- Add a new MySQL operator for strict case-sensitive query. 4198
- Using
filter-chain
pattern inorm
module. Support opentracing and prometheus by using filter. 4141 - Support
prometheus
filter forhttplib
module. 4145 - Add additional options to redis session prov. 4137
- Support default value filter for
orm
module. 4156 - Add methods
Unmarshaler
,Sub
,OnChange
forConfiger
module. 4175 - Custom Log Formatter. 4174, 4179, 4188
- Support the time precision for time.Time type. 4186
- Support
etcd
in Config module. 4195 - Optimize rawSet.QueryRows to avoid many unnecessary calls to parseStructTag. 4210
- Allow users to ignore some table when run ORM commands. 4211
- PostgresQueryBuilder 4205
- Provides a powerful
LogFormatter
implementation PatternLogFormatter.4229 - Support custom ES index name. 4233
- Support multiple web servers. 4234
- Support toml config. 4262
- Using unmarshaler to parse config in web module. 4266
- Add MaxUploadFile to provide more safety uploading control. 4275
- Support using json string to init session. 4277
- Support global instance for config module. 4278
Fix:
- Fix reconnection bug in logs/conn.go. 4056
- Return 413 when request payload too large. 4058
- Fix
index out of range
in session module whenlen(sid) < 2
. 4068 - Fix concurrent issue of context/input Query method. 4066
- Allow using environment variable to specific the config file. 4111
- XSRF add secure and http only flag. 4126
- Fix temporary create failed on Windows 4244
- Fix:return error after inserting data when primary key is string. 4150
- Fix the bug that Fielder's SetRaw is not called when calling orm.Raw() to query from database. 4160
- Fix: return error when calling
InsertOrUpdate
is successful with string primary key. 4158 - Fix the problem that the nested structure of queryRow() cannot assign values 4173
- Empty field in validator.Error when label struct tag is not declared. 4225
- Fix deadlock in task module. 4246
- Fix: form entity too large casue run out of memory. 4272
Doc:
v2.0.0-beta
Refactor
- Support the new project structure.
- Add
adapter
module which is used to adapt v1.x to v2.x. - Add
context.Context
forcache
,httplib
,session
,task
,orm
modules' API. - Add
error
as a return value forcache
,httplib
,session
,task
. - Decouple modules from each other. All modules only depend on
core
package.
Feature:
- Allow Healthcheck endpoint return JSON for Kubernetes (Experimental). 4055
- Support
ClientAuth
for TLS. 4116 orm.RawSeter
supportorm.Fielder
. 4191- Add a new MySQL operator for strict case sensitive query. 4198
- Using
filter-chain
pattern inorm
module. Support opentracing and prometheus by using filter. 4141 - Support
prometheus
filter forhttplib
module. 4145 - Add additional options to redis session prov. 4137
- Support default value filter for
orm
module. 4156 - Add methods
Unmarshaler
,Sub
,OnChange
forConfiger
module. 4175 - Custom Log Formatter. 4174, 4179, 4188
- Implement the time precison for time.Time type. 4186
- Support
etcd
. 4195 - Optimize rawSet.QueryRows to avoid many unnecessary calls to parseStructTag. 4210
- Allow users to ignore some table when run orm commands. 4211
- PostgresQueryBuilder 4205
- Provides a quick format method by PatternLogFormatter struct. 4229
- Support custom ES index name. 4233
18 Support multiple web server. 4234 - Support toml config. 4262
- Using unmarshaler to parse config in web module. 4266
- Add MaxUploadFile to provide more safety uploading control. 4275
- Support using json string to init session. 4277
- Support global instance for config module. 4278
Fix:
- Fix reconnection bug in logs/conn.go. 4056
- Return 403 when request payload too large. 4058
- Fix race condition for Prepare Statement cache. 4061
- Fix
index out of range
in session module whenlen(sid) < 2
. 4068 - Fix concurrent issue of context/input Query method. 4066
- Allow using environment variable to specific the config file. 4111
- XSRF add secure and http only flag. 4126
- Fix temporary create failed on Windows 4244
- Session: adds CookieSameSite to ManagerConfig. 4226
- Make stmt cache smaller to avoid
too many statement
error. 4261 - Fix:return error after inserting data when primary key is string. 4150
12.Fix the bug that Fielder's SetRaw is not called when calling orm.Raw() to query from database. 4160 - Fix: return error when calling
InsertOrUpdate
is successful with string primary key. 4158 - Fix the problem that the nested structure of queryRow() cannot assign values 4173
- Empty field in validator.Error when label struct tag is not declared. 4225
- Fix deadlock in task module. 4246
- Fix: form entity too large casue run out of memory. 4272
Doc:
v1.12.3
Feature:
- Allow Healthcheck endpoint return JSON for Kubernetes. 4055
- Support
ClientAuth
for TLS. 4116 orm.RawSeter
supportorm.Fielder
. 4191- Add a new MySQL operator for strict case sensitive query. 4198
Fix:
- Fix reconnection bug in logs/conn.go. 4056
- Return 403 when request payload too large. 4058
- Fix race condition for Prepare Statement cache. 4061
- Fix
index out of range
in session module whenlen(sid) < 2
. 4068 - Fix concurrent issue of context/input Query method. 4066
- Allow using environment variable to specific the config file. 4111
- XSRF add secure and http only flag. 4126
- Fix temporary create failed on Windows 4244
- Session: adds CookieSameSite to ManagerConfig. 4226
- Make stmt cache smaller to avoid
too many statement
error. 4261
Doc:
- Fix typo. 4251
v1.12.2
- Fix old process didn't exist when graceful restart in beego 1.12.0 #4005
- Enhance: Print stack while orm abnormally exit #3743
- Enhance: Replacing lock with read lock in
GetMapData
#3803 - Fix: Get the real location of the log directory if the path is symbolic path #3818
- Fix: Cache, context, session: add lock to fix inconsistent field protection #3922
- Fix: Encoded url(with slash) router mismatch problem #3943
- Fix:
genRouterCode
method generate wrong codes #3981 - Enhance: Using LRU algorithm, ignoring big file and using max cache size to reduce the memory usage of file cache #3984
- Fix: Set max DB connections #3985
- Fix: SQLite don't support
SELECT ... FOR UPDATE
#3992 - Enhance: Add
Transfer-Encoding
header in httplib'sPostFile
method #3993 - Enhance: Support bit operation in ORM #3994
- Fix:
net/http Middleware
set via RunWithMiddleware or App.Run(middleware) doesn't work when "BConfig.Listen.Graceful" is set to true #3995 - Fix: Empty field in validator.Error when label struct tag is not declared #4001
- Fix:
panic: send on closed channel
after closing logger #4004 - Enhance: Store RouterPattern before filter execute #4007
- Fix: Using HTMLEscapeString in adminui.go to avoid XSS attack #4018
- Fix: Process not closed when graceful set to true #4005
- Enhance: Use
scan
instead ofkeys
in redis #4016 - Feature: Support prometheus #4021
- Fix: Can't create more than max_prepared_stmt_count statements #4025
- Enhance: Support more mobile number pattern #4027
- Fix: Can't set section name #4027
- Fix:
strings.Repeat
panic inorm/db.go
#4032 - Enhance: Make redis client idle timeout configurable #4033
v1.12.1
v1.10.0
- Update log.go add GetLevel Function to Log #2970
- Fix a typo "conflict" #2971
- Bug on private fields #2978
- Fix access log console unexpected '\n' at end of each log. #2976
- Fix Documentation for HTTP status codes descriptions. #2992
- Redis cache: make MaxIdle configurable #3004
- Update: Fix migration generate SQL #3017
- Handle pointer validation #3046
- Fix the issue TaseCase TestFormatHeader_0 is failed #3066
- Fix BEEGO_RUNMODE #3064
- Swagger: Allow example values with different types, allow example for enum. #3085
- Fix the bug: unable to add column with ALTER TABLE #2999
- Set default Beego RunMode to production #3076
- Fix typo #3103
- In dev mode, template parse error cause program lock #3126
- Amend a very minor typo in a variable name #3115
- When log maxSize set big int,FileWrite Init fail #3109
- Change github.com/garyburd/redigo to newest branch github.com/gomodul… #3100
- ExecElem.FieldByName as local variable #3039
- Allow log prefix #3145
- Refactor yaml config for support multilevel #3127
- Create redis_cluster.go #3175
- Add field comment on create table #3190
- Update: use PathEscape replace QueryEscape #3200
- Update gofmt #3206
- Update: Htmlquote Htmlunquote #3202
- Add 'FOR UPDATE' support for querySet #3208
- Debug stringsToJSON #3171
- Fix defaut value bug, and add config for maxfiles #3185
- Fix: correct MaxIdleConnsPerHost value to net/http default 100. #3230
- Fix: When multiply comment routers on one func #3217
- Send ErrNoRows if the query returns zero rows ... in method orm_query… #3247
- Fix typo #3245
- Add session redis IdleTimeout config #3239
- Fix the wrong status code in prod #3226
- Add method to set the data depending on the accepted #3182
- Fix Unexpected EOF bug in staticfile #3152
- Add code style for logs README #3146
- Fix response http code #3142
- Improve access log #3141
- Auto create log dir #3105
- Html escape before display path, avoid xss #3022
- Acquire lock when access config data #3250
- Fix orm fields SetRaw function error judge problem #2985
- Fix template rendering with automatic mapped parameters (see #2979) #2981
- Fix the model can not be registered correctly on Ubuntu 32bit #2997
- Feature/yaml #3181
- Feature/autocert #3249
v1.9.2
v1.9.0
- Fix the new repo address for casbin #2654
- Fix cache/memory fatal error: concurrent map iteration and map write #2726
- AddAPPStartHook func modify #2724
- Fix panic: sync: negative WaitGroup counter #2717
- incorrect error rendering (wrong status) #2712
- validation: support int64 int32 int16 and int8 type #2728
- validation: support required option for some struct tag valids #2741
- Fix big form parse issue #2725
- File log add RotatePerm #2683
- Fix Oracle placehold #2749
- Supported gzip for req.Header has
Content-Encoding: gzip
#2754 - Add new Database Migrations #2744
- Beego auto generate sort ControllerComments #2766
- added statusCode and pattern to FilterMonitorFunc #2692
- fix the bugs in the "ParseBool" function in the file of config.go #2740
v1.8.3
- Trim required string. #2365
- Add an authorization plugin that supports ACL, RBAC based on casbin #2620
- Fix sqllite delete filter #2636
- Swagger support security setting #2640
- Automatic param router #2586
- Allow o.Raw(sql).QueryRows(&container) nested #2637
- Fix form parse timestamp format #2652
- Fix for xsrf panic error #2315