Add the PreSendingAdvice to AOP.
Make Json::Value as a SQL parameters type.
Add the int type for the Row index parameter.
Add SSL_CONF_cmd support.
Add the setCustomStatusCode method.
Fix sync_wait/co_future use-after-free.
Add the AccessLogger plugin.
Make AsyncTask only destruct when the coroutine reaches end of executions.
Add Drogon test framework.
Improve WebSocket mask handling.
Add minimal server side examples.
Optimize HttpControllersRouter for cases where regex is not needed.
Create controller instances after running instead of after being called.
Move resolverPtr when destroying an HttpClientImpl object.
Modify the way to create sqlite3 client.
Fix a bug when a network failure occurs on Redis connections.
Fix a bug of string_view for MSVC.
Fix 'build.sh -tshared'.
Fix compiler warnings.
Fix CacheMap crash in CI tests.
Published by an-tao over 3 years ago
Add option to set default handler.
Add the setTimeout() method to the DbClient class and the RedisClient class.
Add the validateCert parameter to the newWebSocketClient method.
A few mini changes to drogon_ctl command.
Improve the MultiPartParser class.
Add GNU -Werror & fix warnings.
Enhancements on files part.
Add version/soversion to shared library.
Disallow coroutines to be resolved as plain subroutine handlers.
Send the content-length header even if the body(POST,PUT,OPTIONS,PATCH) is empty.
Use make_exception_ptr instead of throw/catch when possible.
Remove duplicated inclusion.
Print error before terminating in AsyncTask.
Allow users to override drogon Find modules.
Use two-phase construction for the DbClientImpl and the RedisClientImpl.
Add support 'select ' for redis.
Fix a bug of the Transaction class.
Copy CoroMapper.h to installation location.
Remove the related request from the buffer if it's not sent after the timeout.
Fix ORM with SQLite3 not compiling on Arch Linux.
Fix an error when constructing RedisClientImpl objects.
Fix coroutine frame leak upon assigning to awaitable.
Set running flag to true before installing plugins.
Fix double free in coroutine exception handling.
Published by an-tao over 3 years ago
Published by an-tao over 3 years ago
Add option to disable signal handling.
Added newFileResponse Support for buffers in memory.
Add a method to HttpRequest to set the user_agent header.
Catch exceptions thrown by handlers.
Add convert method to models.
Add Arch Dockerfile.
Add Redis support.
Print error and exit when IP parsing failed in server startup.
Use a canonical way of calling max() function on Windows.
Remove an assertion statement in the HttpClientImpl class.
Send ping messages by default for WebSockets.
Use canonical cmake logic for cross-compilation.
set make job count to the number of threads in GitHub Actions workflow.
Use lambda instead of std::bind in HttpServer.
Add exports macro to allow Shared Library with hidden symbols by default.
Remove repeated class names on relationships from the model generator.
Fix compile warnings in SQL client.
Fix compilation errors for the TimeFilter example.
Fix build.sh missing nproc error in build for macOS.
Fix a bug when creating sqlite3 models.
Fix two building corner cases, CMake quality of life improvements.
Add CoroMapper to models' friends.
Published by an-tao over 3 years ago
Published by marty1885 over 3 years ago
Add coroutine support.
Add default value interface to SqlBinder for MySQL and PostgreSQL.
Support SNI in the HttpClient class.
Validate certificate in HttpClient.
HttpRequest: add a feature to avoid URL encoding of the path.
Handle cross-compiling properly.
Lowercase all HTTP headers, add webp and avif types.
Modify FindMySQL.cmake
Fix an error in the HttpClient class when a response has no content-length.
Return 404 or 405 responses correctly.
Fix compilation errors on vs2019.
Fix stack use after scope error in client_example.
Fix the error when the SSL handshake fails.
Note: an-tao is still the author. But marty1885 starts the draft and didn't expect it's his name.
Fix brotli link order.
Fix cmake with drogonctl cross-compilation.
sqlite3: Insert into stmtsMap_ as string_view.
Fix some bugs when creating models via drogon_ctl.
Fix an error in sqlite3 ORM generator.
Fix an error with missing composite key to sqlite3 ORM generator.
Remove the use of std::filesystem to adapt to old compilers.
Add github actions.
Serve wasm files with the correct MIME type.
Fix error when receiving response without content-length header.
Fix a stack-overflow error when high concurrency happening on sqlite3.
Fix MinGW ORM building by enabling htonll and ntohll.
Modify the WebSocketTest controller to create a simple chat room.
Add support for OpenBSD.
Return 400 if the content-length is invalid.
Don't send content type in a 304 response.
Add the reuse_port option to app() interface.
Add the 'std::optional' support in the SqlBinder class and the Session class.
Add implicit page resolving capability.
Fix failing to connect to DB if parameters contains spaces.
Fix a CMAKE bug when SHARED and EXAMPLES are on.
Fix the HttpServer::isWebSocket method.
Find mariadb client library correctly on Ubuntu 20.04.
Fix a bug when creating sqlite3 database models.
Fix a bug in the Mapper::insertFuture method.
Disable TLS1.0/1.1 on HTTPS by default.
Use explicit lambda capture lists.
Modify the procedure of the app().run() method.
Support namespaces when creating view source files.
Add --path-to-namespace option to drogon_ctl for creating views.
Add the Host and Sec-WebSocket-Version headers when connecting to a websocket server.
Fix an issue of simple_reverse_proxy when handling chunked transfer-encoding.
Fix a bug when losting connection to MySQL server during query.
Remove the expired std::iterator template.
Fix a bug when creating models in some special cases.
Modify methods related to headers.
Remove the expired std::iterator template.
Add getListeners() method to the HttpAppFramework class.
Remove the useless method stat() from the PluginBase class.
Add ConfigLoader::ConfigLoader(const Json::Value &data).
Add support for status code 418.
Modify session handling.
Modify the FileUpload.csp in simple_example to avoid CORS.
remove execution permission on /tmp/drogon.lock.
Modify parseContentType function.
Modify the docker file to build release version in docker.
Set session to requests for websockets.
Modify parseContentType function.
Change the return value type of the mktime() function in models.
Fix compilation warning of sprintf function.
Fix a bug when saving uploaded files on Windows.
Fix a mysql issue when connections are lost.
Resolve an issue when sending big files (>=2gB) on Windows.
Fix boost::string_view compilation error of MysqlConnection class.
Set the response Access-Control-Allow-Headers header correctly for CORS.
Fix a bug in drogon_ctl when creating a model, that causes to write source files multiple times.
Add a method to disable unicode escaping in json string.
Add a timeout parameter when sending HTTP requests.
Add the getJsonError method.
Remove the restriction on the location of layout tags in views.
Add a way to set the character set when creating DbClient objects.
Make GET
as the only method for accessing static files.
Modify the 404 pages generator.
Modify the DbClient class.
Optimize the HttpResponse class.
Properly handle chunked encoding requests.
Destroy DNS resolver of HttpClient in the correct thread.
Add the header to resolve build errors in VS2017.
Published by an-tao over 4 years ago
Add a new joinpoint of AOP for modification on each HTTP response.
Add a method for the TERM signal handling.
Add getContextRef method to the WebSocketConnection class.
Create a class template for publish subscribe pattern.
Add contribution recommendations.
Send a close message when closing a web socket connection.
Add additional formats for getHttpDate function.
Make app().run() method callable on a non-main thread.
Add digest filter in examples.
Use string_view to parse multipart/form-data requests.
Fix building of ORM on FreeBSD.
Fix a Mysql connection error on Windows.
Fix a bug in ListenerManager::getIOLoop().
Fix the count() method of Mysql ORM.
Fix a compilation issue on windows.
Fix model generation for PostgreSQL primary keys.
Fix a bug with quoted column names in sqlite3 databases.
Add causal profiling with coz
Add filters on static file locations
Pass data from view to its layout container
Add additional HttpStatusCodes and implement a custom error handler
Modify drogon_ctl to show more compilation information
Fix a bug in drogon_ctl (when size of a line is larger than buffer size)
Fix a connection bug of mariadb clients
Modify the Attributes interface of the HttpRequest class
Add the getHomePage() method to HttpAppFramework
Support br compression files
Update Content-Type support for PDF
Add support for MSVC 2015
Optimize the rendering of HTTP responses
Update the Dynamic Views Loading, add the layout
tag
Graceful shutdown
Fix error when finding the jsoncpp library
Fix the 'many to many' relationship in ORM
Fix a bug when creating json responses
Fix a bug on filters with WebSocketControllers
Fix a fatal bug in the MysqlConnection class
Fix crash with partial matched url
Fix null jsonObject from newHttpJsonRequest
Add support for regular expressions when routing
Add location configuration for static resources
Port drogon to Windows
Support 'password' keyword in configuration files
Remove get_version.sh
Modify dynamic view loading algorithm, add 'layout' tag for view generation.
Fix an issue of out-of-range (#334)
Fix a bug in views generation (#341)
Add some unit tests (based on gtest)
Add a reverse proxy example
Make a patch to support the ossp UUID library
Make shared linking possible
Add the drogon::OStringStream class
Optimize ORM
Modify singleton logic of DrClassMap
Fix an error in the batch mode of libpq
Fix an error when clients use HTTP1.0