233f0fb1b8
Refactor setting socket options ( #2053 )
...
Add detail::set_socket_opt() and detail::set_socket_opt_time() to avoid
repetition of platform-specific code.
2025-02-14 22:40:24 -05:00
03cf43ebaa
Release v0.19.0
v0.19.0
2025-02-14 14:42:29 -05:00
3c4b96024f
Don't run CI twice (on push AND pull request)
2025-02-14 14:19:54 -05:00
d74e4a7c9c
Removed incomplete API compatibility check scripts.
2025-02-14 14:10:06 -05:00
bfa2f735f2
ci: add abidiff workflow ( #2054 )
...
This CI workflow checks ABI compatibility between the pushed commit and
the latest tagged release, helping preventing accidental ABI breaks.
Helps with https://github.com/yhirose/cpp-httplib/issues/2043
2025-02-14 14:06:35 -05:00
b6ab8435d7
Improve ABI check tool on macOS
2025-02-12 12:49:20 -05:00
39a64fb4e7
Fix ABI compatibility tool on macOS
2025-02-11 18:40:39 -05:00
d7c14b6f3a
Add API compatibility check tool
2025-02-11 17:49:33 -05:00
1880693aef
Dropped Visual Studio 2015 support
2025-02-11 11:22:46 -05:00
dd20342825
Don't run CI twice (on push AND pull request) ( #2049 )
2025-02-11 06:55:13 -05:00
a268d65c4f
Fix check for URI length to prevent incorrect HTTP 414 errors ( #2046 )
2025-02-10 21:46:38 -05:00
b397c768e4
Unify select_read() and select_write() ( #2047 )
2025-02-10 18:15:19 -05:00
8e22a7676a
Remome 'global timeout' to 'max timeout'
2025-02-10 18:07:30 -05:00
8a7c536ad5
Fix #2034 ( #2048 )
...
* Fix #2034
* Fix build error
* Adjust threshold
* Add temporary debug prints
* Adjust threshhold
* Another threshold adjustment for macOS on GitHub Actions CI...
* Performance improvement by avoiding unnecessary chrono access
* More performance improvement to avoid unnecessary chrono access
2025-02-10 06:51:07 -05:00
8aad481c69
Fix test.yaml problem
2025-02-08 23:37:41 -05:00
5814e121df
Release v0.18.7
v0.18.7
2025-02-08 15:53:35 -05:00
7adbccbaf7
Refine when content is expected ( #2044 )
...
Consider Content-Length and Transfer-Encoding headers when determining
whether to expect content. Don't handle the HTTP/2 connection preface
pseudo-method PRI.
Fixes #2028 .
2025-02-08 15:51:52 -05:00
eb10c22db1
Add unit test for #609
2025-02-08 10:17:09 -05:00
708f860e3a
Fix #2042
2025-02-06 05:56:31 -05:00
eb30f15363
Release v0.18.6
v0.18.6
2025-02-05 19:14:20 -05:00
4941d5b56b
Fix #2033 ( #2039 )
2025-02-05 12:46:33 -05:00
9bbb4741b4
Run clang-format ( #2037 )
2025-02-02 22:32:33 -05:00
282f2feb77
Add a unit test
2025-02-01 22:11:15 -05:00
60a1f00618
Support building httplib.h on OpenVMS x86 systems ( #2031 )
...
Modify for OpenVMS x86 C++. Make tests on OpenVMS currently not supported due to no cmake support.
Changes tested on OpenVMS clang C++ and Fedora & GCC
2025-01-28 18:44:22 -05:00
9104054ca5
Fix README example
2025-01-27 13:37:16 -05:00
d69f144a99
Update httplib.h ( #2030 )
...
fix 'max'
2025-01-26 08:50:10 -05:00
929dfbd348
Update copyright year
2025-01-20 00:32:10 -05:00
3047183fd9
Update README
2025-01-20 00:02:02 -05:00
ef5e4044f1
Update README
2025-01-19 23:46:12 -05:00
3779800322
Release v0.18.5
v0.18.5
2025-01-17 17:38:03 -05:00
986a20fb7d
Resolve #2017 ( #2022 )
...
* Resolve #2017
* Fix warning
* Update README
2025-01-17 17:37:07 -05:00
8311e1105f
Fix Windows build problem
2025-01-16 23:26:04 -05:00
ba6845925d
Fix #2014
2025-01-16 23:10:58 -05:00
343a0fc073
Fix #2011
2025-01-16 21:38:45 -05:00
54f8a4d0f3
Release v0.18.4
v0.18.4
2025-01-16 01:00:25 -05:00
9c36aae4b7
Fix HTTP Response Splitting Vulnerability
2025-01-16 00:04:33 -05:00
b766025a83
clangformat
2025-01-16 00:03:10 -05:00
9b5f76f833
Fix #2012
2024-12-27 17:19:23 -05:00
d647f484a4
fix:set_file_content with range request return 416. ( #2010 )
...
Co-authored-by: fenlog <bakurise@qq.com >
2024-12-24 09:38:59 -05:00
8794792baa
Treat out-of-range last_pos as the end of the content ( #2009 )
...
RFC-9110 '14.1.2. Byte Ranges':
A client can limit the number of bytes requested without knowing the
size of the selected representation. If the last-pos value is absent,
or if the value is greater than or equal to the current length of the
representation data, the byte range is interpreted as the remainder of
the representation (i.e., the server replaces the value of last-pos
with a value that is one less than the current length of the selected
representation).
https://www.rfc-editor.org/rfc/rfc9110.html#section-14.1.2-6
2024-12-23 13:14:36 -05:00
b85768c1f3
Fix #2005
2024-12-16 17:43:50 -05:00
e6d71bd702
Add a unit test for Issue #2004
2024-12-12 18:15:22 -05:00
258992a160
Changed to use non-blocking socket in is_ssl_peer_could_be_closed
2024-12-03 19:26:08 -05:00
a7bc00e330
Release v0.18.3
v0.18.3
2024-12-03 06:33:00 -05:00
11a40584e9
Fix #1998
2024-12-03 00:38:20 -05:00
3e86bdb4d8
Fix #1997 ( #2001 )
2024-12-03 00:11:29 -05:00
c817d65695
Fix casting uint64_t to size_t for 32-bit builds ( #1999 )
2024-12-02 11:09:52 -05:00
51dee793fe
Release v0.18.2
v0.18.2
2024-11-29 20:49:50 -05:00
457fc4306e
Fix #1993
2024-11-29 20:46:48 -05:00
4f5b003e76
Fix #1992
2024-11-28 20:40:38 -05:00