curl / Development / Pending Release Notes
Pending RELEASE-NOTES for the upcoming release
This is work in progress and will change before the release goes public on 2024-11-05.
Changes:
- curl: --create-dirs works for --dump-header as well
- gtls: Add P12 format support
- ipfs: add options to disable
- WebSockets: make support official (non-experimental)
Bugfixes:
- alt-svc: honor data->state.httpwant
- autotools: add support for 'unity' builds, enable in CI
- build: add pytest targets
- build: clarify CA embed is for curl tool, mark default, improve summary
- build: fix cross-compile check for poll with bionic
- build: fix possible `-Wformat-overflow` in lib557
- build: limit arc4random detection to no-SSL configs
- build: show if CA bundle to embed was found
- build: tidy up and improve versioned-symbols options
- build: tidy up deprecation suppression, enable warnings for clang
- checksrc: Added checks for colon operator in ternary expressions
- checksrc: check for spaces around '?', '>' and '<'
- cmake, Makefile.mk: use -isystem for headers, silence BearSSL issues
- cmake/FindNGTCP2: use library path as hint for finding crypto module
- cmake: allow building tests in unity mode
- cmake: delete unused NEED_LBER_H, HAVE_LDAP_H
- cmake: disable default OpenSSL if BearSSL, GnuTLS or Rustls is enabled
- cmake: drop redundant assignments
- cmake: drop redundant zlib var, rename function (internals)
- cmake: expand CURL_USE_PKGCONFIG to non-cross MINGW
- cmake: fix broken dependency chain for cmdline-opts, tidy-ups
- cmake: make `test-ci` target skip building dependencies
- cmake: readd `generate-curl.1` dependency for `src` just in case
- cmake: require quictls (or fork) when using msh3 on non-Windows
- cmake: separate target for examples, optimize CI, fix fallouts
- cmake: sync torture test parallelism with autotools
- configure: catch Apple in more target triplets
- configure: improve help string for some options
- curl: add build options for safe/no CA bundle search (Windows)
- curl_trc: fix build with verbose messages disabled
- curl_url_set.md: document HOST handling when URL is parsed
- CURLMOPT_PIPELINING.md: clarify that CURLPIPE_NOTHING is not default
- docs/cmdline-opts: GnuTLS supports PKCS#11 URI in --cert option
- ftp: fix 0-length last write on upload from stdin
- lib, src, tests: added space around ternary expressions
- lib/cw-out: initialize 'flush_all' directly
- lib/src: white space edits to comply better with code style
- lib: avoid assigning 'result' temporarily
- lib: fix disabled-verbose-strings + enable-debug build warnings
- lib: fix unity builds with BearSSL, MSH3, Quiche, OmniOS
- lib: use bool/TRUE/FALSE properly
- libssh.c: handle EGAINS during proto-connect correctly
- libssh2: use the Curl_* memory functions to avoid memdebug
- multi.c: make stronger check for paused transfer before asserting
- multi.c: warn/assert on stall only without timer
- multi: avoid reading whole struct pointer from pointer
- multi: make multi_handle_timeout use the connect timeout
- negotiate: conditional check around GSS & SSL specific code
- openssl: convert a memcpy to dynbuf use
- openssl: remove two strcpy() calls
- processhelp.pm: improve taskkill calls (Windows)
- quic: use send/recvmmsg when available
- request: on shutdown send, proceed normally on timeout
- runtests.md: suggest a value for -j for torture tests
- runtests: drop unused code for old/classic-mingw support
- select: use poll() if existing, avoid poll() with no sockets
- sendf: add condition to max-filesize check
- singleuse: make `git grep` faster, add Apple `nm` support
- socks_gssapi: switch to dynbuf from buffer with strcpy
- test1035: convert host name back to utf8 as should be
- test1540: add debug logging
- test190: replace %FTPTIME2 with a fixed value
- test2502: add libtest debug tracing
- test504: fix handling on pending connect
- testrun: explicitly set proper IP address for stunnel listen/connect
- tests/valgrind.pm: fix warnings with no valgrind report to show
- tests: add and use `%PERL` variable to refer to the Perl binary
- tests: add codeset-utf8 as a feature
- tests: add file: tests with existing files
- tests: check http/2 and http/3 server responsiveness
- tests: delete duplicate macro check
- tests: fix `%POSIX_PWD` on native Windows Perl
- tests: fix keyword for test1411
- tests: fix shell quoting on native Windows Perl
- tests: fixup `checkcmd` `PATH` on non-unixy platforms
- tests: improve mqtt server handling
- tests: introduce %CLIENT6IP-NB
- tests: let openssl generate random cert serials
- tests: libtests and unit tests need explicit #include memdebug
- tests: make precheck for HTTP on 127.0.0.1 into a feature
- tests: Only log warnings or worse by default in smbserver
- tests: postcheck is now in verify
- tests: remove all valgrind disable instructions
- tests: remove debug requirement on 38 tests
- tests: remove the %FTPTIME3 variable
- tests: replace `%PWD` with `%FILE_PWD` for `file://`
- tests: replace `%PWD` with `%SSH_PWD` in SCP/SFTP tests
- tests: replace hard-coded `/dev/null` with variable
- tests: simplify `pathhelp.pm`, avoid using external tools
- tests: speed up builds with single-binary test bundles
- tests: testrunner fairness
- tests: testrunner reliability improvements
- tests: use '-4' where needed
- tidy-up: rename CURL_WINDOWS_APP to CURL_WINDOWS_UWP
- tool: support --show-headers AND --remote-header-name
- tool_doswin: simplify; remove unused options and strncpy calls
- unit1660: fix unreachable code warning in no-SSL builds
- url: connection reuse on h3 connections
- urlapi: drop unused header
- vtls: convert Curl_pin_peer_pubkey to use dynbuf
- vtls: convert pubkey_pem_to_der to use dynbuf
- wolfssl: convert malloc + memcpys to dynbuf for cipher string
Contributors:
Aki Sakurai, Baruch Siach, Dan Fandrich, Daniel Stenberg, Denis Goleshchikhin, Deniz Sökmen, dependabot[bot], Gabriel Marin, Ian Spence, Jon Rumsey, Kai Pastor, lomberd2 on github, MacKenzie, Montg0mery on github, Nicolas George, Pavel Kropachev, ralfjunker on github, Rasmus Melchior Jacobsen, Ray Satiro, renovate[bot], Stefan Eissing, Tal Regev, Tatsuhiro Tsujikawa, Testclutch, Venkat Krishna R, Viktor Szakats, vvb2060 on github