Release v1.16.0
✨ Features
-
Application will now gracefully shutdown to prevent data loss during application termination
All the processes (go-routines) will be awaited to finish before shutting down. Currently, the timeout for shutdown is30 seconds. Will be making it configurable in upcoming release. -
Enhanced query parameter handling to support multiple values
Previously, only a single value was supported for query params withParam(key string) stringmethod. Now, added another methodParams(key string) []stringwhich returns array of values passed for given query param.
Example:If URL is - http://order-service/orders?id=123,234 - http://order-service/orders?id=123&id=234 Then ctx.Params("id") will return ["123", "234"] -
Enhanced security with SSL support for PostgreSQL connections
Default certificates can now be used as SSL, by configuringDB_SSL_MODEasrequire.
Currently this is only supported with PostgreSQL. Custom certificates and other DBs will be supported in future releases.
🛠 Enhancements
-
Improved logging for tracer configs validation
Tracing is only enabled whenbothTRACE_EXPORTER and TRACER_URL are provided, so added error logs if any one of them is provided and the other is missing.
-
Improved tracing with OpenTelemetry protocol integration
Tracing can now be configured as otel protocol by configuringTRACE_EXPORTERasotlp, and providingTRACER_URL.
🐞 Fixes
- Resolved panic caused by passing non-pointer objects in AddRESTHandlers method
App was panicking while initialising if the argument is passed by value toAddRESTHandlersmethod. Since, the method only accepts arguments passed by reference, added validations and error log instead of panic.