docs: add CURLOPT type change history, drop casts where present

Some CURLOPT constants defined in the curl public headers were initially
enums (= ints), or macros with bare numeric values. Recent curl releases
upgraded them to `long` constants, to make them pass correctly to
`curl_easy_setop()` by default, i.e. without requiring a `(long)` cast.

This patch drops such casts from the examples embedded in the docs. At
the same time it documents which curl release made them `long` types,
to keep them useful when working with previous libcurl versions.

Also:
- drop a `(long)` cast that was never necessary.
- CURLOPT_ALTSVC_CTRL.md: bump local copy of macros to long.
- test1119: make it ignore symbols ending with an underscore, to skip
  wildcard, e.g. `**CURLAUTH_***`.

Closes #18130
This commit is contained in:
Viktor Szakats 2025-08-01 12:49:40 +02:00
parent d1da9543f8
commit d01d2ec9f1
No known key found for this signature in database
GPG key ID: B5ABD165E2AEF201
37 changed files with 188 additions and 37 deletions

View file

@ -114,7 +114,7 @@ sub checkmanpage {
while(s/\W(CURL(AUTH|E|H|MOPT|OPT|SHOPT|UE|M|SSH|SSLBACKEND|HEADER|FORM|FTP|PIPE|MIMEOPT|GSSAPI|ALTSVC|PROTO|PROXY|UPART|USESSL|_READFUNC|_WRITEFUNC|_CSELECT|_FORMADD|_IPRESOLVE|_REDIR|_RTSPREQ|_TIMECOND|_VERSION)_[a-zA-Z0-9_]+)//) {
my $s = $1;
# skip two "special" ones
if($s !~ /^(CURLE_OBSOLETE|CURLOPT_TEMPLATE)/) {
if($s !~ /(^(CURLE_OBSOLETE|CURLOPT_TEMPLATE))|_$/) {
push @manrefs, "$1:$m:$line";
}
}