Beego v2.0.0-beta Release Notes

Release Date: 2020-11-07 // 7 months ago
  • ♻️ Refactor

    👍 1. Support the new project structure.

    1. Add adapter module which is used to adapt v1.x to v2.x.
    2. Add context.Context for cache, httplib, session, task, orm modules' API.
    3. Add error as a return value for cache, httplib, session, task. 📦 5. Decouple modules from each other. All modules only depend on core package.

    🔋 Feature:

    1. Allow Healthcheck endpoint return JSON for Kubernetes (Experimental). 4055 👍 2. Support ClientAuth for TLS. 4116 👍 3. orm.RawSeter support orm.Fielder. 4191
    2. Add a new MySQL operator for strict case sensitive query. 4198 👍 5. Using filter-chain pattern in orm module. Support opentracing and prometheus by using filter. 4141 👍 6. Support prometheus filter for httplib module. 4145
    3. Add additional options to redis session prov. 4137 0️⃣ 8. Support default value filter for orm module. 4156
    4. Add methods Unmarshaler, Sub, OnChange for Configer module. 4175 🌲 10. Custom Log Formatter. 4174, 4179, 4188
    5. Implement the time precison for time.Time type. 4186 👍 12. Support etcd. 4195 ⚡️ 13. Optimize rawSet.QueryRows to avoid many unnecessary calls to parseStructTag. 4210
    6. Allow users to ignore some table when run orm commands. 4211
    7. PostgresQueryBuilder 4205
    8. Provides a quick format method by PatternLogFormatter struct. 4229 👍 17. Support custom ES index name. 4233
      🌐 18 Support multiple web server. 4234 👍 18. Support toml config. 4262 📜 19. Using unmarshaler to parse config in web module. 4266
    9. Add MaxUploadFile to provide more safety uploading control. 4275 👍 21. Support using json string to init session. 4277 👍 22. Support global instance for config module. 4278

    🛠 Fix:

    🔊 1. Fix reconnection bug in logs/conn.go. 4056 🛰 2. Return 403 when request payload too large. 4058

    1. Fix race condition for Prepare Statement cache. 4061
    2. Fix index out of range in session module when len(sid) < 2. 4068
    3. Fix concurrent issue of context/input Query method. 4066
    4. Allow using environment variable to specific the config file. 4111
    5. XSRF add secure and http only flag. 4126 🏁 8. Fix temporary create failed on Windows 4244
    6. Session: adds CookieSameSite to ManagerConfig. 4226
    7. Make stmt cache smaller to avoid too many statement error. 4261
    8. 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 ⚡️ 12. Fix: return error when calling InsertOrUpdate is successful with string primary key. 4158
    9. Fix the problem that the nested structure of queryRow() cannot assign values 4173
    10. Empty field in validator.Error when label struct tag is not declared. 4225
    11. Fix deadlock in task module. 4246
    12. Fix: form entity too large casue run out of memory. 4272

    Doc:

    1. Fix typo. 4251, 4135, 4107

Previous changes from v1.12.3

  • 🔋 Feature:

    1. Allow Healthcheck endpoint return JSON for Kubernetes. 4055 👍 2. Support ClientAuth for TLS. 4116 👍 3. orm.RawSeter support orm.Fielder. 4191
    2. Add a new MySQL operator for strict case sensitive query. 4198

    🛠 Fix:

    🔊 1. Fix reconnection bug in logs/conn.go. 4056 🛰 2. Return 403 when request payload too large. 4058

    1. Fix race condition for Prepare Statement cache. 4061
    2. Fix index out of range in session module when len(sid) < 2. 4068
    3. Fix concurrent issue of context/input Query method. 4066
    4. Allow using environment variable to specific the config file. 4111
    5. XSRF add secure and http only flag. 4126 🏁 8. Fix temporary create failed on Windows 4244
    6. Session: adds CookieSameSite to ManagerConfig. 4226
    7. Make stmt cache smaller to avoid too many statement error. 4261

    Doc:

    1. Fix typo. 4251