[Daniel's week] January 26, 2024

Daniel Stenberg daniel at haxx.se
Fri Jan 26 18:34:26 CET 2024


Hello friends.

Another week ended. Lots of activity!

## Ten years WFH

Earlier this month I celebrated ten years working full time from home. At the
same desk. My work place even mostly look the same as it did back then [7]. In
a week or so I also celebrate five years working for wolfSSL, which is then
longer than I previously worked for Mozilla. I did not complete full five
years there.

I can't imagine ever going back to work in an office.

## curldown

I merged my two big documentation reformatting PRs this week and wrote a blog
post about it [1]. It caused some follow-up tweaks and then additional work on
cleaning them up further with more CI jobs to check for "bad words" etc; for
example I want us to use easy-to-read English so we avoid contractions, and I
want us to use consistent wording and spelling on things like "email" and
"hostname" we now have CI jobs that go red when we make such mistakes.

## OpenSSL QUIC

Stefan continued and there is an ongoing communication with the OpenSSL
project in a discussion thread [2] in their GitHub domain. I think the short
summary would say that OpenSSL have fixed several bugs that they intend to
include in their next release - which unfortunately is not planned to ship
until April.

Currently the list of their fixes does not completely cover the API needs we
have identified for doing QUIC effectively. The current setup more or less
requires curl to do periods of busy-looping to not risk stalling, which of
course is not acceptable behavior in a transfer library.

Stefan also ran some benchmark comparisons on three different curl HTTP/3
backends [3], and the OpenSSL QUIC stack stands out in a negative way. When
doing many parallel streams, it is significantly slower than the
alternatives. Then we need to also remember that *all* HTTP/3 solutions are
already significantly slower than doing HTTP/2 or HTTP/1 on the same hardware.

## Test work

Dan Fandrich has been engaged to work on two test related projects to improve
curl and how the testing in CI jobs works. I will try to write up a separate
detailed blog post about that soon.

## download buffer

Stefan and I kicked off a little side-mission this week: to get rid of most of
the use of the general download buffer in libcurl. The generic buffer has been
abused for all sorts of secondary purposes just because there was an existing
buffer present there. We are now cleaning that up, with the expressed goal to
*only* use it for downloading data. Ultimately we should be able to manage
with just *one* buffer independently of number of concurrent transfers, which
of course will become a pretty major memory usage improvement, seeing as
currently every transfer alive has its own download buffer allocated.

I doubt we manage to land all of these cleanups before the pending release,
but we are doing good progress so this is likely to happen. It is just not
sure exactly when.

## curl distros meeting

I have been emailing back and forth with some curl package maintainers at a
few Linux distribution and this week I made the plans official [4]: we plan to
run a curl distribution online meeting in March 2024. The idea is to get as
many curl distro people and as many curl project maintainers as possible
together and then discuss what we all can do to help each other more and
better. To the benefit of curl users everywhere of course.

If you work on packaging curl for a distro or similar, please consider
joining. Also: consider telling me you are coming so that we can prepare
better.

## curl up

The annual curl developers and users conference "curl up" [5] that we have run
virtually the last few years is coming back with an in-person physical version
in 2024.

The date is set for the weekend of May 4-5. Mark your calendar.

We have not yet nailed down in exactly which European city it will take
place. I will make sure to do his within the next few weeks.

If you want to help out in the planning in any capacity, let me know.

## keyboard

After having used my new keyboard for a month I posted my blog post about it
[6]. Somehow there is always people interested!

## c-ares

c-ares 1.26.0 was released and I uploaded it [8] Friday afternoon when I
thought I had already taken weekend. Because I forgot to do it earlier.

## CNA

This week we made our first CVE allocation by ourselves as CNA [9]. We have
one security advisory pending to be announced in sync with the pending release
next week. Severity low.

## FOSDEM

FOSDEM eventually posted the full schedule for the main track as well this
week so now you can find information about both my talks on their site. My
post [10] is updated with all details, including two time slots for when I
intend to hang out in the wolfSSL booth in case you want to come and talk. Or
just pick up curl stickers.

## Coming up

- get slides in order for my FOSDEM talks
- curl 8.6.0 release on Wednesday
- release video live on twitch on Wednesday

## Links

[1] = https://daniel.haxx.se/blog/2024/01/23/curl-docs-format-evolution/
[2] = https://github.com/openssl/openssl/discussions/23339
[3] = https://github.com/icing/blog/blob/main/curl-h3-performance.md
[4] = https://daniel.haxx.se/blog/2024/01/25/coming-a-curl-distros-meeting/
[5] = https://github.com/curl/curl-up/wiki
[6] = https://daniel.haxx.se/blog/2024/01/24/logitech-g915-tkl/
[7] = https://daniel.haxx.se/workplace.html
[8] = https://c-ares.org/
[9] = https://daniel.haxx.se/blog/2024/01/16/curl-is-a-cna/
[10] = https://daniel.haxx.se/blog/2024/01/08/my-upcoming-fosdem-2024/


-- 

  / daniel.haxx.se


More information about the daniel mailing list