curl 8.13.0

Welcome to another curl release.

Download it here.

Release presentation

I will do a live-streamed curl 8.13.0 release presentation on Twitch at 08:00 UTC (10:00 CEST)

Numbers

the 266th release
12 changes
48 days (total: 9,875)

305 bugfixes (total: 11,786)
499 commits (total: 34,782)
0 new public libcurl function (total: 96)
1 new curl_easy_setopt() option (total: 307)

1 new curl command line option (total: 268)
71 contributors, 37 new (total: 3,379)
41 authors, 16 new (total: 1,358)
0 security fixes (total: 164)

Changes

  • curl: new write-out variable ‘tls_earlydata’
  • curl: –url supports a file with URLs
  • curl: add ’64dec’ function for base64 decoding
  • IMAP: add CURLOPT_UPLOAD_FLAGS and –upload-flags
  • add CURLFOLLOW_OBEYCODE and CURLFOLLOW_FIRSTONLY
  • gnutls: set priority via –ciphers
  • OpenSSL/quictls: support TLSv1.3 early data
  • wolfSSL: support TLSv1.3 early data
  • rustls: add support for CERTINFO
  • rustls: add support for SSLKEYLOGFILE
  • rustls: support ECH w/ DoH lookup for config
  • rustls: support native platform verifier

Records

This release broke the old project record and is the first release ever to contain more than 300 bugfixes since the previous release. There were so many bugfixes landed that I decided to not even list my favorites in this blog post the way I have done in the past. Go read the full changelog, or watch the release video to see me talk about some of them.

Another project record broken in this release is the amount commits merged into the repository since the previous release: 501.