#
5cefda1b |
| 05-Sep-2024 |
Viktor Szakats |
build: tidy up deprecation suppression, enable warnings for clang Suppress deprecation warnings the closest to the deprecated code, using `CURL_IGNORE_DEPRECATION()`. Then drop build-spe
build: tidy up deprecation suppression, enable warnings for clang Suppress deprecation warnings the closest to the deprecated code, using `CURL_IGNORE_DEPRECATION()`. Then drop build-specific suppressions, and file-wide ones. The latter is not compatible with Unity mode. Also replace manual suppressions with a macro to apply to all compilers with deprecation warning support. Also enable deprecation warnings for clang. - curl/curl.h: enable deprecation warnings for clang. - docs/examples: stop setting `CURL_DISABLE_DEPRECATION` with autotools. Suppression moved to C-level earlier. Syncs with cmake. Follow-up to 5fc61a37c1b177cefbc11dc9f5eef7b2a14538da #14123 - tests/http/clients: stop setting `CURL_DISABLE_DEPRECATION` in autotools. If it becomes necessary in the future, it can be done in C via the macro. Syncs with cmake. - lib1545: stop setting `CURL_DISABLE_DEPRECATION` in autotools. Drop guard from test source. Follow-up to 0f103600731f7e08637017ef4df67a194e0d6711 #12444 - libtest, unit: replace `CURL_DISABLE_DEPRECATION` with `CURL_IGNORE_DEPRECATION()`. - docs/examples: replace pragmas with `CURL_IGNORE_DEPRECATION()`. Closes #14789
show more ...
|
#
e512fbfa |
| 22-Aug-2024 |
Viktor Szakats |
printf: fix mingw-w64 format checks Change mingw-w64 printf format checks in public curl headers to use `__MINGW_PRINTF_FORMAT` instead of `gnu_printf`. This syncs the format checker
printf: fix mingw-w64 format checks Change mingw-w64 printf format checks in public curl headers to use `__MINGW_PRINTF_FORMAT` instead of `gnu_printf`. This syncs the format checker with format string macros published via `curl/system.h`. (Also disable format checks for mingw-w64 older than 3.0.0 (2013-09-20) and classic-mingw, which do not support this macro.) This fixes bogus format checker `-Wformat` warnings in 3rd party code using curl format strings with the curl printf functions, when using mingw-w64 7.0.0 (2019-11-10) and older (with GCC, MSVCRT). It also allows to delete two workaounds for this within curl itself: - setting `-D__USE_MINGW_ANSI_STDIO=1` for mingw-w64 via cmake and configure for `docs/examples` and `tests/http/clients`. Ref: c730c8549b5b67e7668ca5d2cd82c3cc183e125d #14640 The format check macro is incompatible (depending on mingw-w64 version and configuration) with the C99 `%z` (`size_t`) format string used internally by curl. To work around this problem, override the format check style in curl public headers to use `gnu_printf`. This is compatible with `%z` in all mingw-w64 versions and allows keeping the C99 format strings internally. Also: - lib/ws.c: add missing space to an error message. - docs/examples/ftpgetinfo.c: fix to use standard printf. Ref: #14643 (take 1) Follow-up to 3829759bd042c03225ae862062560f568ba1a231 #12489 Closes #14703
show more ...
|
#
3af75e18 |
| 26-Aug-2024 |
Daniel Stenberg |
configure: remove USE_EXPLICIT_LIB_DEPS Added a long time ago for something that libtool should handle for us. Closes #14697
|
#
c730c854 |
| 21-Aug-2024 |
Viktor Szakats |
build: make `CURL_FORMAT_CURL_OFF_T[U]` work with mingw-w64 <=7.0.0 Add tweak for mingw-w64 when building tests/http/client programs to avoid a bogus `-Wformat` warning when using mingw-
build: make `CURL_FORMAT_CURL_OFF_T[U]` work with mingw-w64 <=7.0.0 Add tweak for mingw-w64 when building tests/http/client programs to avoid a bogus `-Wformat` warning when using mingw-w64 v7.0.0 or older. The warning is bogus because these programs use curl's `printf()` implementation that is guaranteed to support that format spec. Add this for both CMake and autotools. (But only CMake is CI tested with an old toolchain.) Apply the workaround to `docs/examples`, and fix an example to use curl's `printf()` with `CURL_FORMAT_CURL_OFF_T`. Reintroduce curl `printf()` calls into `tests/http/client`, via #14625. Also restore large number masks to a printf, changed earlier in #14382. Follow-up to 232302f88a152a1d1722da9f69c383a766528918 #14382 Ref: https://github.com/curl/curl/pull/14625#issuecomment-2302361737 Closes #14640
show more ...
|
#
d222dbe7 |
| 09-Aug-2024 |
Viktor Szakats |
build: tidy up internal macro names for `libcurl.pc` Rename internal macros to match their `libcurl.pc` metadata counterpart. Also apply these to the `curl-config.in` template.
build: tidy up internal macro names for `libcurl.pc` Rename internal macros to match their `libcurl.pc` metadata counterpart. Also apply these to the `curl-config.in` template. - `CPPFLAG_CURL_STATICLIB` -> `LIBCURL_PC_CFLAGS` - `LIBCURL_LIBS` -> `LIBCURL_PC_LIBS_PRIVATE` - `LIBCURL_NO_SHARED` -> `LIBCURL_PC_LIBS` Closes #14476
show more ...
|
#
232302f8 |
| 04-Aug-2024 |
Viktor Szakats |
cmake: add Linux CI job, fix pytest with cmake - extend existing Linux workflow with CMake support. Including running pytest the first time with CMake. - cmake: generate `test
cmake: add Linux CI job, fix pytest with cmake - extend existing Linux workflow with CMake support. Including running pytest the first time with CMake. - cmake: generate `tests/config` and `tests/http/config.ini`. Required for pytest tests. Uses basic detection logic. Feel free to take it from here. Also dump config files in a CI step for debugging purposes. - cmake: build `tests/http/clients` programs. - fix portability issues with `tests/http/clients` programs. Some of them use `getopt()`, which is not supported by MSVC. Fix the rest to compile in CI (old-mingw-w64, MSVC, Windows). - GHA/linux: add CMake job matching an existing autotools one. - GHA/linux: test `-DCURL_LIBCURL_VERSIONED_SYMBOLS=ON` in the new CMake job. - reorder testdeps to build server, client tests first and then libtests and units, to catch errors in the more complex/unique sources earlier. - sort list in `tests/http/clients/Makefile.inc`. Closes #14382
show more ...
|
#
2572e133 |
| 27-Apr-2023 |
Dan Fandrich |
tests/http: fix out-of-tree builds Add both lib/ directories (src & build) to the search path so curl_setup.h and its dependencies can be found. Followup-to acd82c8b Re
tests/http: fix out-of-tree builds Add both lib/ directories (src & build) to the search path so curl_setup.h and its dependencies can be found. Followup-to acd82c8b Ref: #11006 Closes #11036
show more ...
|
#
acd82c8b |
| 26-Apr-2023 |
Stefan Eissing |
tests/http: more tests with specific clients - Makefile support for building test specific clients in tests/http/clients - auto-make of clients when invoking pytest - added test_09_0
tests/http: more tests with specific clients - Makefile support for building test specific clients in tests/http/clients - auto-make of clients when invoking pytest - added test_09_02 for server PUSH_PROMISEs using clients/h2-serverpush - added test_02_21 for lib based downloads and pausing/unpausing transfers curl url parser: - added internal method `curl_url_set_authority()` for setting the authority part of a url (used for PUSH_PROMISE) http2: - made logging of PUSH_PROMISE handling nicer Placing python test requirements in requirements.txt files - separate files to base test suite and http tests since use and module lists differ - using the files in the gh workflows websocket test cases, fixes for we and bufq - bufq: account for spare chunks in space calculation - bufq: reset chunks that are skipped empty - ws: correctly encode frames with 126 bytes payload - ws: update frame meta information on first call of collect callback that fills user buffer - test client ws-data: some test/reporting improvements Closes #11006
show more ...
|