xref: /curl/docs/DEPRECATE.md (revision 7b12c36c)
1<!--
2Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
3
4SPDX-License-Identifier: curl
5-->
6
7# Items to be removed from future curl releases
8
9If any of these deprecated features is a cause for concern for you, please
10email the
11[curl-library mailing list](https://lists.haxx.se/listinfo/curl-library)
12as soon as possible and explain to us why this is a problem for you and
13how your use case cannot be satisfied properly using a workaround.
14
15## TLS libraries without 1.3 support
16
17curl drops support for TLS libraries without TLS 1.3 capability after May
182025.
19
20It requires that a curl build using the library should be able to negotiate
21and use TLS 1.3, or else it is not good enough.
22
23As of May 2024, the libraries that need to get fixed to remain supported after
24May 2025 are: BearSSL and Secure Transport.
25
26## Hyper
27
28Hyper is an alternative HTTP backend for curl. It uses the hyper library and
29could in theory be used for HTTP/1, HTTP/2 and even HTTP/3 in the future with
30curl.
31
32The original plan and goal was that we would add this HTTP alternative (using
33a memory-safe library) and that users could eventually build and use libcurl
34exactly as previously but with parts of the core being more memory-safe.
35
36The hyper implementation ran into some snags and 10-15 tests and HTTP/2
37support have remained disabled with hyper. For these reasons, hyper support
38has remained tagged EXPERIMENTAL.
39
40It is undoubtedly hard work to fix these remaining problems, as they typically
41require both rust and C knowledge in addition to deep HTTP familiarity. There
42does not seem to be that many persons interested or available for this
43challenge. Meanwhile, there is little if any demand for hyper from existing
44(lib)curl users.
45
46Finally: having support for hyper in curl has a significant cost: we need to
47maintain and develop a lot of functionality and tests twice to make sure
48libcurl works identically using either HTTP backend.
49
50The only way to keep hyper support in curl is to give it a good polish by
51someone with time, skill and energy to spend on this task.
52
53Unless a significant overhaul has proven to be in progress, hyper support is
54removed from curl in January 2025.
55
56## Past removals
57
58 - Pipelining
59 - axTLS
60 - PolarSSL
61 - NPN
62 - Support for systems without 64-bit data types
63 - NSS
64 - gskit
65 - MinGW v1
66 - NTLM_WB
67 - space-separated `NOPROXY` patterns
68