Releases: drogonframework/drogon
v1.9.11
API changes list
- Add a new overload for execSqlCoro.
 
Changed
- 
Do not write to source directory during build.
 - 
Improve Postgres connection stability.
 - 
Add handleFatalError in handleClosed.
 - 
Add -o|--output option to drogon_ctl create models.
 - 
Add qrcode for WeChat official account to the README file.
 - 
Support for iOS compiling.
 - 
Add cors example to demonstrate cross-origin support in drogon.
 - 
Add support for continuation frame in WebSocketMessageParser.
 - 
Add RawParameter API to pass raw SQL parameters.
 - 
Upgrade Windows image and re-enable tests on Windows.
 
Fixed
- 
Fix a bug in isAutoCreationClass.
 - 
Fix CI on MacOS.
 - 
Fix issue with precision loss of double-type parameters in ORM inputs.
 
v1.9.10
API changes list
- Add setConnectionCallback.
 
Changed
- 
ORM:Avoid unnecessary copies when returning search results.
 - 
Improve the zh-TW README translation.
 - 
Make quit function thread safe.
 - 
Added path_exempt in AccessLogger plugin config to exclude desired paths.
 
Fixed
- 
Fix the issue in view generation by including the missing header file.
 - 
Fix ci: codespell.
 
v1.9.9
API changes list
- Added Partitioned flag for cookies.
 
Changed
- 
Update FindFilesystem.cmake to check for GNU instead of GCC for CMAKE_CXX_COMPILER_ID.
 - 
Update README.
 - 
Chore(workflow/cmake.yml): upgrade macos runner.
 - 
Add emptiness check to the LogStream &operator<< with std::string_view.
 
Fixed
- 
Fix a bug in plugin Redirector.
 - 
Fix CMAKE issues mentioned in #2144 and a linking problem which manifest with gcc12.3 when building with shared libs.
 - 
Fix: Remove dependency on locales being installed on the system.
 
v1.9.8
API changes list
- 
Add in-place base64 encode and decode.
 - 
Add check the client connection status.
 
Changed
- 
Add Hodor whitelists.
 - 
Include exception header for std::exception_ptr.
 - 
Add support for escaped identifiers in Postgresql.
 - 
Remove content-length header from 101 Switching Protocols response.
 - 
Remove websocketResponseTest from windows shared library env.
 - 
Optimize query params and allow for empty values.
 - 
Replace rejection sampling and remove use of rand().
 - 
Add sending customized http requests to drogon_ctl.
 
Fixed
- 
Fix coroutine continuation handle.
 - 
Fix some bugs in plugin PromExporter.
 - 
Fix a bug after removing content-length header in some responses.
 
v1.9.7
API changes list
- 
Add coroutine mutex.
 - 
Add requestsBufferSize function.
 - 
Refine SQLite3 error types with new exception handling.
 - 
Add a new method to reload SSL files on the fly.
 
Changed
- 
Allow MultiPartParser to be movable.
 - 
Add quotes to the table name in the ORM generator.
 - 
Change stoi to stoul in the Field class.
 - 
Modernize cookies.
 - 
Change a log level.
 
Fixed
- Use correct libraries when compiling statically.
 
v1.9.6
API changes list
- 
Add setsockopt to HttpServer.
 - 
Support request stream.
 
Changed
- 
Allow MultiPartParser to parse PATCH requests.
 - 
Add an example of prometheus.
 - 
Delay parsing json for HttpClient.
 - 
Update README.md.
 
Fixed
- 
Fix some compilation warnings.
 - 
Fix typo in yaml config.
 
v1.10.0-beta.2 - HTTP/2 client beta release 2
This is a BETA RELEASE of our HTTP/2 client. As it is difficult for us to test our client against all possible situations. The beta release is meant for people to experiment and try our HTTP/2 client and report what does and does not work. This beta branch is synced with our main branch at least once per (beta) release.
Please help us test our HTTP/2 implementation. Open an issue and tag @marty1885 if you found any.
Comment on our compatibility tracker if you like. This allows us to gather a list of known working sites :)
BR, Martin Chang
Fixes
- Fix underflow in our client's HTTP/2 flow control
- In practice, this fixes server disconnecting due to client sending too much data at once when there's a large body
 
 
Changes
- Merge with latest 
master - Revised stream resumption logic to avoid edge cases leading to larger then necessary latency
 - Better filtering for HTTP smuggling/desync
 - Proactively send buffered HTTP/2 frames to reduce reallocation
 
Limitations
Please open an issue if you need any of them.
- No H2C (HTTP/2 over cleartext) support
 - Technically supports handling server push. But no API to expose it to the user yet
 - Does not support setting HTTP request dependency and priority
 - Does not support trailers
 
v1.9.5
API changes list
- 
Fix an error in the yaml format config file.
 - 
Support postgresql connection options.
 - 
Add regex support for websocket controller.
 - 
Add the registerMiddleware method.
 
Changed
- 
Add the conan badge to readme files.
 - 
Install gcc in ci.
 - 
Intention to present an alternative to improve the performance of a method in models.
 
Fixed
- 
Fix an error in the yaml format config file.
 - 
Fix CI on Windows.
 - 
Fix some spelling errors.
 
v1.10.0-beta.1 - HTTP/2 client beta release 1
This is a BETA RELEASE of our HTTP/2 client. As it is difficult for us to test our client against all possible situations. The beta release is meant for people to experiment and try our HTTP/2 client and report what does and does not work. This beta branch is synced with our main branch at least once per (beta) release.
Please help us test our HTTP/2 implementation. Open an issue and tag @marty1885 if you found any.
Comment on our compatibility tracker if you like. This allows us to gather a list of known working sites :)
BR, Martin Chang
Fixes
- Fix bad request when request path is empty
 - Fix bad encoding/decoding when the server requests HPACK buffer size change
 
Changes
- Merge with latest 
master 
Limitations
Please open an issue if you need any of them.
- No H2C (HTTP/2 over cleartext) support
 - Technically supports handling server push. But no API to expose it to the user yet
 - Does not support setting HTTP request dependency and priority
 - Does not support trailers
 
v1.10.0-beta.0 - HTTP/2 client beta release 0
This is a BETA RELEASE of our HTTP/2 client. As it is difficult for us to test our client against all possible situations. The beta release is meant for people to experiment and try our HTTP/2 client and report what does and does not work. This beta branch is synced with our main branch at least once per (beta) release.
Please help us test our HTTP/2 implementation. Open an issue and tag @marty1885 if you found any.
Comment on our compatibility tracker if you like. This allows us to gather a list of known working sites :)
BR, Martin Chang
Changed
- Add HTTP/2 Client
 
API changes
- New enum for HTTP/2 
Version::kHttp2 HttpRequest::setVersion()deprecated and has no affect.- HTTP version in client is no longer controlled by 
req->setVersion()but withnewHttpClient(...., DESIRED_HTTP_VERSION)- It is more of a suggestion then requirement. The client negotiates and selects the highest supported one.
 
 
Limitations
Please open an issue if you need any of them.
- No H2C (HTTP/2 over cleartext) support
 - Technically supports handling server push. But no API to expose it to the user yet
 - Does not support setting HTTP request dependency and priority
 - Does not support trailers