http2: remove stream dependency tracking

The HTTP/2 feature is deprecated, few servers implement it and our
implementation is complicated by its state management. Make the two
CURLOPT_* involved a nop and deprecate them.

Closes #21723
This commit is contained in:
Stefan Eissing 2026-05-22 09:11:41 +02:00 committed by Daniel Stenberg
parent 2056498625
commit bfbff7852f
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
9 changed files with 34 additions and 130 deletions

View file

@ -1165,11 +1165,12 @@ Redirect stderr to another stream. See CURLOPT_STDERR(3)
## CURLOPT_STREAM_DEPENDS
This HTTP/2 stream depends on another. See CURLOPT_STREAM_DEPENDS(3)
**Deprecated option** This HTTP/2 stream depends on another. See
CURLOPT_STREAM_DEPENDS(3)
## CURLOPT_STREAM_DEPENDS_E
This HTTP/2 stream depends on another exclusively. See
**Deprecated option** This HTTP/2 stream depends on another exclusively. See
CURLOPT_STREAM_DEPENDS_E(3)
## CURLOPT_STREAM_WEIGHT

View file

@ -44,6 +44,10 @@ an error. It must be another easy handle, and it also needs to be a handle of
a transfer that is about to be sent over the same HTTP/2 connection for this
option to have an actual effect.
Since version 8.21.0 setting this option no longer has an effect. HTTP/2
stream dependencies were introduced in RFC 7540 and then later deprecated
in RFC 9113.
# DEFAULT
NULL
@ -69,6 +73,10 @@ int main(void)
}
~~~
# DEPRECATED
Deprecated since 8.21.0.
# %AVAILABILITY%
# RETURN VALUE

View file

@ -47,6 +47,10 @@ an error. It must be another easy handle, and it also needs to be a handle of
a transfer that is about to be sent over the same HTTP/2 connection for this
option to have an actual effect.
Since version 8.21.0 setting this option no longer has an effect. HTTP/2
stream dependencies were introduced in RFC 7540 and then later deprecated
in RFC 9113.
# DEFAULT
NULL
@ -72,6 +76,10 @@ int main(void)
}
~~~
# DEPRECATED
Deprecated since 8.21.0.
# %AVAILABILITY%
# RETURN VALUE

View file

@ -882,8 +882,8 @@ CURLOPT_SSLKEYPASSWD 7.9.3 7.17.0
CURLOPT_SSLKEYTYPE 7.9.3
CURLOPT_SSLVERSION 7.1
CURLOPT_STDERR 7.1
CURLOPT_STREAM_DEPENDS 7.46.0
CURLOPT_STREAM_DEPENDS_E 7.46.0
CURLOPT_STREAM_DEPENDS 7.46.0 8.21.0
CURLOPT_STREAM_DEPENDS_E 7.46.0 8.21.0
CURLOPT_STREAM_WEIGHT 7.46.0
CURLOPT_SUPPRESS_CONNECT_HEADERS 7.54.0
CURLOPT_TCP_FASTOPEN 7.49.0