* Support zstd also via pkg-config
It doesn't always provide cmake config
* Find zstd with pkg-config also in non-required case
Code by @sum01, slightly modified
afunix.h uses types declared in winsock2.h, and so has to be included
after it. Including afunix.h first will result in a somewhat unhelpful
compilation error:
error C3646: 'sun_family': unknown override specifier
Signed-off-by: Piotr Stankiewicz <piotr.stankiewicz@docker.com>
* Add zstd support
* Add zstd to CI tests
* Use use zstd cmake target instead of ZSTD. Use cmake variable for found packages
* Add missing comment for HTTPLIB_REQUIRE_ZSTD
* Fix test.yaml rebase error
* Use zstd::libzstd target
* Add include and library paths to ZSTD args
* Run clang-format
* Add zstd to httplibConfig.cmake.in
By making the random engine thread_local, each thread now has its own
independent random sequence, ensuring safe concurrent access.
Additionally, using an immediately invoked lambda expression to
initialize the engine eliminates the need for separate static seed
variables.
* Wrap poll()/WSAPoll() in a function
Instead of using a macro for poll() on Windows, which breaks when the
implementation is compiled separately, add a detail::poll_wrapper()
function that dispatches to either ::poll() or ::WSAPoll().
* Build compiled library on Windows
Redirect tests fail using httpbin.org or nghttp2.org/httpbin. The
location header value contains a string representation of a Python byte
string (e.g., b'http://www.google.com/'), which results in a 404 error.
* Revert "Fix typo in meson.build (#2070)"
This reverts commit 5c0135fa5d7e059f5dd4c3a1a8a2d767d30ac491.
* Revert "build(meson): automatically use poll or select as needed (#2067)"
This reverts commit 2b5d1eea8d7e9f881ac4be04ce31df782b26b6a9.
* Revert "Make poll() the default (#2065)"
This reverts commit 6e73a63153e936e753211a5608acf336fb848a37.
* Remove select() and use poll()
- Replace is_readable() with wait_readable() and is_writable() with
wait_writable() in the Stream interface.
- Implement a new is_readable() function with semantics that more
closely reflect its name. It returns immediately whether data is
available for reading, without waiting.
- Update call sites of is_writable(), removing redundant checks.
* server_certificate_verifier extended to reuse built-in verifier
* code cleanup and SSLVerifierResponse enum clarification as per @falbrechtskirchinger comment
* cleanup
* clang-format
* change local var verification_status_ declaration to auto
* change local var verification_status_ to verification_status
* clang-format
* clang-format
---------
Co-authored-by: UrosG <uros@ub330.net>
Add include_httplib.cc to the main test executable (already done in
Makefile), and add include_windows_h.cc to the main test executable on
Windows to test if including windows.h conflicts with httplib.h.
* Add workflow_dispatch with Google Test filter
Add the workflow_dispatch trigger to the test.yaml workflow. Includes an
input for an optional Google Test filter pattern.
* Add OS selection to workflow_dispatch
* Fix wording