Commit Graph

1905 Commits

Author SHA1 Message Date
Eyal Niv
1765223755
Fix CMAKE issues mentioned in #2144 and a linking problem which manifest with gcc12.3 when building with shared libs (#2208) (#2213)
Some checks failed
Build & Test / macos (13) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:11], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:11], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:12], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:12], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:13], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:13], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:14], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:14], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:15], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:15], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:16], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:16], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:17], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:17], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ feature:coroutines ver:13], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:10], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:10], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:11], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:11], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:12], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:12], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:13], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:13], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:9], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:9], STATIC) (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
codespell / codespell (push) Has been cancelled
C++ / format (push) Has been cancelled
C++ / cpplint (push) Has been cancelled
* Respect find_package QUIET

* Add policy_max to cmake_minimum_required
Avoid deprecation warning introduced by cmake 3.31

* Add missing DROGON_EXPORT
2024-11-26 22:53:09 +08:00
hanhuayin
71b6d57cae
Update FindFilesystem.cmake to check for GNU instead of GCC for CMAKE_CXX_COMPILER_ID (#2211)
Some checks failed
Build & Test / macos (13) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:11], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:11], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:12], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:12], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:13], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:13], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:14], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:14], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:15], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:15], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:16], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:16], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:17], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:17], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ feature:coroutines ver:13], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:10], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:10], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:11], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:11], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:12], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:12], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:13], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:13], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:9], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:9], STATIC) (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
codespell / codespell (push) Has been cancelled
C++ / format (push) Has been cancelled
C++ / cpplint (push) Has been cancelled
This patch fixes a build issue encountered in our Amazon Linux 2 environment when integrating Drogon alongside other dependencies. The issue occurred because the filesystem check failed to compile when the compiler ID was set to "GNU", due to missing -std=c++17 flag. The existing CXX_FILESYSTEM_HAVE_FS check was looking for "GCC" instead of "GNU". "GNU" is the correct identifier for gcc according to CMake documentation (see https://cmake.org/cmake/help/latest/variable/CMAKE_LANG_COMPILER_ID.html).

Interestingly, this issue only manifested when Drogon was integrated alongside other dependencies. When Drogon was the sole project added to our build, compilation proceeded without error.
2024-11-25 16:15:21 +08:00
Tanglong3bf
882c1d9ecd
fix a bug in plugin Redirector. (#2198)
Some checks are pending
Build & Test / macos (13) (push) Waiting to run
Build & Test / ubuntu (map[cxx:clang++ ver:11], SHARED) (push) Waiting to run
Build & Test / ubuntu (map[cxx:clang++ ver:11], STATIC) (push) Waiting to run
Build & Test / ubuntu (map[cxx:clang++ ver:12], SHARED) (push) Waiting to run
Build & Test / ubuntu (map[cxx:clang++ ver:12], STATIC) (push) Waiting to run
Build & Test / ubuntu (map[cxx:clang++ ver:13], SHARED) (push) Waiting to run
Build & Test / ubuntu (map[cxx:clang++ ver:13], STATIC) (push) Waiting to run
Build & Test / ubuntu (map[cxx:clang++ ver:14], SHARED) (push) Waiting to run
Build & Test / ubuntu (map[cxx:clang++ ver:14], STATIC) (push) Waiting to run
Build & Test / ubuntu (map[cxx:clang++ ver:15], SHARED) (push) Waiting to run
Build & Test / ubuntu (map[cxx:clang++ ver:15], STATIC) (push) Waiting to run
Build & Test / ubuntu (map[cxx:clang++ ver:16], SHARED) (push) Waiting to run
Build & Test / ubuntu (map[cxx:clang++ ver:16], STATIC) (push) Waiting to run
Build & Test / ubuntu (map[cxx:clang++ ver:17], SHARED) (push) Waiting to run
Build & Test / ubuntu (map[cxx:clang++ ver:17], STATIC) (push) Waiting to run
Build & Test / ubuntu (map[cxx:g++ feature:coroutines ver:13], STATIC) (push) Waiting to run
Build & Test / ubuntu (map[cxx:g++ ver:10], SHARED) (push) Waiting to run
Build & Test / ubuntu (map[cxx:g++ ver:10], STATIC) (push) Waiting to run
Build & Test / ubuntu (map[cxx:g++ ver:11], SHARED) (push) Waiting to run
Build & Test / ubuntu (map[cxx:g++ ver:11], STATIC) (push) Waiting to run
Build & Test / ubuntu (map[cxx:g++ ver:12], SHARED) (push) Waiting to run
Build & Test / ubuntu (map[cxx:g++ ver:12], STATIC) (push) Waiting to run
Build & Test / ubuntu (map[cxx:g++ ver:13], SHARED) (push) Waiting to run
Build & Test / ubuntu (map[cxx:g++ ver:13], STATIC) (push) Waiting to run
Build & Test / ubuntu (map[cxx:g++ ver:9], SHARED) (push) Waiting to run
Build & Test / ubuntu (map[cxx:g++ ver:9], STATIC) (push) Waiting to run
CodeQL / Analyze (cpp) (push) Waiting to run
codespell / codespell (push) Waiting to run
C++ / format (push) Waiting to run
C++ / cpplint (push) Waiting to run
2024-11-16 15:04:57 +08:00
dependabot[bot]
8541e67143
Bump docker/login-action from 1 to 3 (#2197)
Some checks failed
Build & Test / macos (13) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:11], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:11], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:12], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:12], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:13], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:13], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:14], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:14], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:15], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:15], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:16], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:16], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:17], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:clang++ ver:17], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ feature:coroutines ver:13], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:10], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:10], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:11], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:11], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:12], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:12], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:13], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:13], STATIC) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:9], SHARED) (push) Has been cancelled
Build & Test / ubuntu (map[cxx:g++ ver:9], STATIC) (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
codespell / codespell (push) Has been cancelled
C++ / format (push) Has been cancelled
C++ / cpplint (push) Has been cancelled
Bumps [docker/login-action](https://github.com/docker/login-action) from 1 to 3.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v1...v3)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-02 09:48:46 +08:00
antao
6d9ecb8d8d Bump version to 1.9.8 2024-10-27 14:31:56 +08:00
fantasy-peak
23c561f072
Add check the client connection status (#2191) 2024-10-25 16:08:03 +08:00
Tanglong3bf
284d14b8ca
Fix some bugs in plugin PromExporter. (#2189) 2024-10-21 09:51:34 +08:00
fantasy-peak
ca2210331d
Add sending customized http requests to drogon_ctl (#2186) 2024-10-17 10:47:04 +08:00
Martin Chang
3fce70b535
Replace rejection sampling and remove use of rand() (#2180) 2024-10-10 13:45:46 +08:00
An Tao
bf1fc03bff
Fix lint (#2181) 2024-10-09 18:20:29 +08:00
an-tao
5225bb3295 Update trantor and add docker actions 2024-10-09 16:45:19 +08:00
An Tao
ac0a1b873e
Fix a bug after removing content-length header in some responses (#2176) 2024-10-02 16:42:40 +08:00
Muhammad
912f1d803c
Optimize query params and allow for empty values (#2171) 2024-09-26 15:47:58 +08:00
An Tao
13d7148764
Remove websocketResponseTest from windows shared library env (#2170) 2024-09-25 20:16:40 +08:00
Chad Barth
b0c5331bc1
Remove content-length header from 101 Switching Protocols response (#2164) 2024-09-25 17:52:41 +08:00
Christopher T
c9f5754423
Add support for escaped identifiers in Postgresql (#2167) 2024-09-23 16:00:50 +08:00
an-tao
31fb18fb46 Update trantor 2024-09-20 16:22:09 +08:00
toge
f918ead0ae
include exception header for std::exception_ptr (#2159) 2024-09-19 10:11:04 +08:00
Muhammad
fee34095a2
Add Hodor whitelists (#2154) 2024-09-19 09:56:11 +08:00
Omar Mohamed Khallaf
2911a7c08a
Fix coroutine continuation handle (#2163)
Using coroutines directly by the user e.g. declaring a function with
drogon::Task<> return type, will have it's continuation set to nullptr.

Returning nullptr causes a segfault and it must be checked before
returning e.g. the snippet form https://en.cppreference.com/w/cpp/coroutine/noop_coroutine

```cpp
struct final_awaiter
{
    std::coroutine_handle<>
        await_suspend(std::coroutine_handle<promise_type> h) noexcept
    {
        // final_awaiter::await_suspend is called when the execution of the
        // current coroutine (referred to by 'h') is about to finish.
        // If the current coroutine was resumed by another coroutine via
        // co_await get_task(), a handle to that coroutine has been stored
        // as h.promise().previous. In that case, return the handle to resume
        // the previous coroutine.
        // Otherwise, return noop_coroutine(), whose resumption does nothing.

        if (auto previous = h.promise().previous; previous)
            return previous;
        else
            return std::noop_coroutine();
    }
};
```

This commit default initializes the continuation handle to no op coroutine and
avoids the check.

Signed-off-by: Omar Mohamed <mohamed.omar67492@gmail.com>
2024-09-19 09:52:51 +08:00
Muhammad
1b4653577f
Revert original path to its initial behavior (#2157) 2024-09-17 11:54:33 +08:00
Muhammad
bbcad71458
Add in-place base64 encode and decode (#2153) 2024-09-14 09:57:07 +08:00
Muhammad
beec858eba
Partially revert commit 93d8fb425d (#2156) 2024-09-13 17:34:23 +08:00
Muhammad
93d8fb425d
Fix forwarding with space in url by encoding (#2155) 2024-09-13 09:46:06 +08:00
antao
73406d1225 Bump version to 1.9.7 2024-09-10 23:12:02 +08:00
Ponder
6bafdf30fd
Feature: TcpServer hot reload SSL file (#2150) 2024-09-10 11:38:56 +08:00
元路
59919f33ef
Refine SQLite3 error types with new exception handling (#2145)
Signed-off-by: yuanlu <2573580691@qq.com>
2024-09-06 15:37:09 +08:00
an-tao
1326205483 Change a log level 2024-08-23 11:34:50 +08:00
Omar Mohamed Khallaf
80ec7d9211
Use correct libraries when compiling statically (#2136)
When compiling statically, cmake pulls shared libraries as dependencies
for drogon e.g. libpq.so instead of libpq.a. This causes linkage errors
when compiling the whole program.

The flag USE_STATIC_LIBS_ONLY should set the CMAKE_FIND_LIBRARY_SUFFIXES
to the appropriate suffix on different platforms, thus find_* commands
find the right library.
2024-08-22 15:46:47 +08:00
fantasy-peak
5b5d1906bf
Add requestsBufferSize function (#2124) 2024-08-14 11:15:33 +08:00
Muhammad
206ef0d881
Modernize cookies (#2112) 2024-08-08 22:23:28 +08:00
fantasy-peak
c46f149c2c
Add coroutine mutex (#2095) 2024-08-08 15:17:06 +08:00
Bohdan Tsehelnyk
0546032edc
change stoi to stoul (#2115) 2024-08-06 17:16:06 +08:00
Bohdan Tsehelnyk
f743cfd4d1
add quotes (#2116) 2024-08-06 17:15:01 +08:00
Muhammad
500d44faac
Allow MultiPartParser to be movable (#2107) 2024-07-23 11:52:52 +03:00
antao
e786907478 Bump version to 1.9.6 2024-07-20 23:35:17 +08:00
Nitromelon
5d4523a3a6
Support request stream (#2055) 2024-07-03 11:31:39 +08:00
fantasy-peak
dfacd1b454
Add setsockopt to HttpServer (#2086) 2024-07-02 10:04:56 +08:00
Chuck
85b918f9e9
Update README.md (#2080)
A few minor typos.
2024-06-21 10:04:11 +08:00
fantasy-peak
7b8d0085b1
Delay parsing json for HttpClient (#2077) 2024-06-20 00:09:08 +08:00
An Tao
f6913f6328 Add an example of prometheus (#2076) 2024-06-19 14:13:15 +08:00
Martin Chang
a2f759e4cd
Update trantor (#2074) 2024-06-17 18:59:57 +08:00
Nitromelon
ad2b7e13e1
Fix typo in yaml config. (#2069) 2024-06-15 10:27:51 +08:00
An Tao
b04dfd7f96
Fix some compilation warnings (#2066) 2024-06-13 17:11:03 +08:00
Muhammad
de5a4a5f57
Allow MultiPartParser to parse PATCH requests (#2062) 2024-06-09 18:46:57 +03:00
An Tao
8bdb9b2fa6
Bump version to 1.9.5 (#2057) 2024-06-08 20:31:23 +08:00
fantasy-peak
0a889e921d
Add registerMiddleware (#2052) 2024-06-04 17:05:52 +08:00
TYUTthelastone
9a96a20c6e
Add regex support for websocket controller (#1779) 2024-06-04 11:27:00 +08:00
Nitromelon
f37a1d036f
Fix pg client name; Add testcase. (#2043) 2024-05-29 00:23:43 +08:00
Nitromelon
c4c95918bf
Fix wrong parameter order. (#2040) 2024-05-27 19:10:05 +08:00